Plume/po/plume/ru.po

842 lines
16 KiB
Plaintext
Raw Normal View History

2018-11-05 19:18:46 +01:00
msgid ""
msgstr ""
"Project-Id-Version: plume\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-06-15 16:33-0700\n"
2019-04-19 14:59:03 +02:00
"PO-Revision-Date: 2019-04-18 06:16\n"
"Last-Translator: Ana Gelez (AnaGelez)\n"
"Language-Team: Russian\n"
"Language: ru_RU\n"
2018-11-05 19:18:46 +01:00
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
2019-04-19 14:59:03 +02:00
"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"
"X-Generator: crowdin.com\n"
"X-Crowdin-Project: plume\n"
"X-Crowdin-Language: ru\n"
"X-Crowdin-File: /master/po/plume/plume.pot\n"
# src/template_utils.rs:68
msgid "{0} commented on your article."
2019-04-19 14:59:03 +02:00
msgstr ""
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:69
msgid "{0} is subscribed to you."
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:70
msgid "{0} liked your article."
2019-04-19 14:59:03 +02:00
msgstr "{0} понравился вашей статье."
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:71
msgid "{0} mentioned you."
2019-04-19 14:59:03 +02:00
msgstr "{0} упомянул вас."
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:72
msgid "{0} boosted your article."
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:108
msgid "{0}'s avatar"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
# src/routes/blogs.rs:70
msgid "To create a new blog, you need to be logged in"
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/routes/blogs.rs:109
Big refactoring of the Inbox (#443) * Big refactoring of the Inbox We now have a type that routes an activity through the registered handlers until one of them matches. Each Actor/Activity/Object combination is represented by an implementation of AsObject These combinations are then registered on the Inbox type, which will try to deserialize the incoming activity in the requested types. Advantages: - nicer syntax: the final API is clearer and more idiomatic - more generic: only two traits (`AsActor` and `AsObject`) instead of one for each kind of activity - it is easier to see which activities we handle and which one we don't * Small fixes - Avoid panics - Don't search for AP ID infinitely - Code style issues * Fix tests * Introduce a new trait: FromId It should be implemented for any AP object. It allows to look for an object in database using its AP ID, or to dereference it if it was not present in database Also moves the inbox code to plume-models to test it (and write a basic test for each activity type we handle) * Use if let instead of match * Don't require PlumeRocket::intl for tests * Return early and remove a forgotten dbg! * Add more tests to try to understand where the issues come from * Also add a test for comment federation * Don't check creation_date is the same for blogs * Make user and blog federation more tolerant to errors/missing fields * Make clippy happy * Use the correct Accept header when dereferencing * Fix follow approval with Mastodon * Add spaces to characters that should not be in usernames And validate blog names too * Smarter dereferencing: only do it once for each actor/object * Forgot some files * Cargo fmt * Delete plume_test * Delete plume_tests * Update get_id docs + Remove useless : Sized * Appease cargo fmt * Remove dbg! + Use as_ref instead of clone when possible + Use and_then instead of map when possible * Remove .po~ * send unfollow to local instance * read cover from update activity * Make sure "cc" and "to" are never empty and fix a typo in a constant name * Cargo fmt
2019-04-17 19:31:47 +02:00
msgid "A blog with the same name already exists."
2019-04-19 14:59:03 +02:00
msgstr ""
Big refactoring of the Inbox (#443) * Big refactoring of the Inbox We now have a type that routes an activity through the registered handlers until one of them matches. Each Actor/Activity/Object combination is represented by an implementation of AsObject These combinations are then registered on the Inbox type, which will try to deserialize the incoming activity in the requested types. Advantages: - nicer syntax: the final API is clearer and more idiomatic - more generic: only two traits (`AsActor` and `AsObject`) instead of one for each kind of activity - it is easier to see which activities we handle and which one we don't * Small fixes - Avoid panics - Don't search for AP ID infinitely - Code style issues * Fix tests * Introduce a new trait: FromId It should be implemented for any AP object. It allows to look for an object in database using its AP ID, or to dereference it if it was not present in database Also moves the inbox code to plume-models to test it (and write a basic test for each activity type we handle) * Use if let instead of match * Don't require PlumeRocket::intl for tests * Return early and remove a forgotten dbg! * Add more tests to try to understand where the issues come from * Also add a test for comment federation * Don't check creation_date is the same for blogs * Make user and blog federation more tolerant to errors/missing fields * Make clippy happy * Use the correct Accept header when dereferencing * Fix follow approval with Mastodon * Add spaces to characters that should not be in usernames And validate blog names too * Smarter dereferencing: only do it once for each actor/object * Forgot some files * Cargo fmt * Delete plume_test * Delete plume_tests * Update get_id docs + Remove useless : Sized * Appease cargo fmt * Remove dbg! + Use as_ref instead of clone when possible + Use and_then instead of map when possible * Remove .po~ * send unfollow to local instance * read cover from update activity * Make sure "cc" and "to" are never empty and fix a typo in a constant name * Cargo fmt
2019-04-17 19:31:47 +02:00
2019-04-19 14:59:03 +02:00
# src/routes/blogs.rs:172
msgid "You are not allowed to delete this blog."
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/routes/blogs.rs:217
msgid "You are not allowed to edit this blog."
2019-04-19 14:59:03 +02:00
msgstr ""
2019-04-19 14:59:03 +02:00
# src/routes/blogs.rs:262
msgid "You can't use this media as a blog icon."
2019-04-19 14:59:03 +02:00
msgstr ""
2019-04-19 14:59:03 +02:00
# src/routes/blogs.rs:280
msgid "You can't use this media as a blog banner."
2019-04-19 14:59:03 +02:00
msgstr ""
2019-04-19 14:59:03 +02:00
# src/routes/likes.rs:51
msgid "To like a post, you need to be logged in"
msgstr ""
2018-11-05 19:18:46 +01:00
# src/routes/notifications.rs:29
msgid "To see your notifications, you need to be logged in"
msgstr ""
2019-04-19 14:59:03 +02:00
# src/routes/posts.rs:93
msgid "This post isn't published yet."
msgstr "Этот пост ещё не опубликован."
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/routes/posts.rs:122
msgid "To write a new post, you need to be logged in"
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/routes/posts.rs:140
msgid "You are not an author of this blog."
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/routes/posts.rs:147
msgid "New post"
msgstr "Новый пост"
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/routes/posts.rs:192
msgid "Edit {0}"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/routes/posts.rs:630
msgid ""
"Couldn't obtain enough information about your account. Please make sure your "
"username is correct."
msgstr ""
2019-04-19 14:59:03 +02:00
# src/routes/reshares.rs:51
msgid "To reshare a post, you need to be logged in"
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/routes/session.rs:181
msgid "Password reset"
2019-04-19 14:59:03 +02:00
msgstr ""
2019-04-19 14:59:03 +02:00
# src/routes/session.rs:182
msgid "Here is the link to reset your password: {0}"
msgstr ""
2019-04-19 14:59:03 +02:00
# src/routes/session.rs:259
msgid "Your password was successfully reset."
msgstr ""
2019-04-19 14:59:03 +02:00
# src/routes/session.rs:263
msgid "Sorry, but the link expired. Try again"
msgstr ""
2019-04-19 14:59:03 +02:00
# src/routes/user.rs:136
msgid "To access your dashboard, you need to be logged in"
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/routes/user.rs:244
msgid "To subscribe to someone, you need to be logged in"
msgstr ""
2019-04-19 14:59:03 +02:00
# src/routes/user.rs:344
msgid "To edit your profile, you need to be logged in"
msgstr ""
msgid "Plume"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Menu"
msgstr "Меню"
msgid "Search"
2019-04-19 14:59:03 +02:00
msgstr "Поиск"
2018-11-05 19:18:46 +01:00
msgid "Dashboard"
msgstr "Панель управления"
2018-11-05 19:18:46 +01:00
msgid "Notifications"
msgstr "Уведомления"
msgid "Log Out"
msgstr "Выйти"
msgid "My account"
msgstr "Мой аккаунт"
msgid "Log In"
msgstr "Войти"
msgid "Register"
msgstr "Зарегистрироваться"
msgid "About this instance"
msgstr "Об этом узле"
msgid "Source code"
msgstr "Исходный код"
msgid "Matrix room"
msgstr "Комната в Matrix"
msgid "Administration"
msgstr "Администрирование"
msgid "Welcome to {}"
2018-11-05 19:18:46 +01:00
msgstr ""
msgid "Latest articles"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Your feed"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Federated feed"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Local feed"
msgstr "Локальная лента"
2018-11-05 19:18:46 +01:00
msgid "Administration of {0}"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Instances"
msgstr "Узлы"
2018-11-05 19:18:46 +01:00
msgid "Configuration"
msgstr "Конфигурация"
2018-11-05 19:18:46 +01:00
msgid "Users"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Unblock"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Block"
msgstr "Заблокировать"
2018-11-05 19:18:46 +01:00
msgid "Ban"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "All the articles of the Fediverse"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Articles from {}"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Nothing to see here yet. Try subscribing to more people."
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:217
msgid "Name"
msgstr "Имя"
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:220
msgid "Optional"
msgstr "Не обязательно"
2018-11-05 19:18:46 +01:00
msgid "Allow anyone to register here"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
Big refactoring of the Inbox (#443) * Big refactoring of the Inbox We now have a type that routes an activity through the registered handlers until one of them matches. Each Actor/Activity/Object combination is represented by an implementation of AsObject These combinations are then registered on the Inbox type, which will try to deserialize the incoming activity in the requested types. Advantages: - nicer syntax: the final API is clearer and more idiomatic - more generic: only two traits (`AsActor` and `AsObject`) instead of one for each kind of activity - it is easier to see which activities we handle and which one we don't * Small fixes - Avoid panics - Don't search for AP ID infinitely - Code style issues * Fix tests * Introduce a new trait: FromId It should be implemented for any AP object. It allows to look for an object in database using its AP ID, or to dereference it if it was not present in database Also moves the inbox code to plume-models to test it (and write a basic test for each activity type we handle) * Use if let instead of match * Don't require PlumeRocket::intl for tests * Return early and remove a forgotten dbg! * Add more tests to try to understand where the issues come from * Also add a test for comment federation * Don't check creation_date is the same for blogs * Make user and blog federation more tolerant to errors/missing fields * Make clippy happy * Use the correct Accept header when dereferencing * Fix follow approval with Mastodon * Add spaces to characters that should not be in usernames And validate blog names too * Smarter dereferencing: only do it once for each actor/object * Forgot some files * Cargo fmt * Delete plume_test * Delete plume_tests * Update get_id docs + Remove useless : Sized * Appease cargo fmt * Remove dbg! + Use as_ref instead of clone when possible + Use and_then instead of map when possible * Remove .po~ * send unfollow to local instance * read cover from update activity * Make sure "cc" and "to" are never empty and fix a typo in a constant name * Cargo fmt
2019-04-17 19:31:47 +02:00
msgid "Short description"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Markdown syntax is supported"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Long description"
msgstr "Длинное описание"
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:217
msgid "Default article license"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Save these settings"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "About {0}"
msgstr ""
2018-11-05 19:18:46 +01:00
Big refactoring of the Inbox (#443) * Big refactoring of the Inbox We now have a type that routes an activity through the registered handlers until one of them matches. Each Actor/Activity/Object combination is represented by an implementation of AsObject These combinations are then registered on the Inbox type, which will try to deserialize the incoming activity in the requested types. Advantages: - nicer syntax: the final API is clearer and more idiomatic - more generic: only two traits (`AsActor` and `AsObject`) instead of one for each kind of activity - it is easier to see which activities we handle and which one we don't * Small fixes - Avoid panics - Don't search for AP ID infinitely - Code style issues * Fix tests * Introduce a new trait: FromId It should be implemented for any AP object. It allows to look for an object in database using its AP ID, or to dereference it if it was not present in database Also moves the inbox code to plume-models to test it (and write a basic test for each activity type we handle) * Use if let instead of match * Don't require PlumeRocket::intl for tests * Return early and remove a forgotten dbg! * Add more tests to try to understand where the issues come from * Also add a test for comment federation * Don't check creation_date is the same for blogs * Make user and blog federation more tolerant to errors/missing fields * Make clippy happy * Use the correct Accept header when dereferencing * Fix follow approval with Mastodon * Add spaces to characters that should not be in usernames And validate blog names too * Smarter dereferencing: only do it once for each actor/object * Forgot some files * Cargo fmt * Delete plume_test * Delete plume_tests * Update get_id docs + Remove useless : Sized * Appease cargo fmt * Remove dbg! + Use as_ref instead of clone when possible + Use and_then instead of map when possible * Remove .po~ * send unfollow to local instance * read cover from update activity * Make sure "cc" and "to" are never empty and fix a typo in a constant name * Cargo fmt
2019-04-17 19:31:47 +02:00
msgid "Home to <em>{0}</em> people"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Who wrote <em>{0}</em> articles"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "And are connected to <em>{0}</em> other instances"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Administred by"
msgstr "Администрируется"
2018-11-05 19:18:46 +01:00
msgid "Runs Plume {0}"
msgstr "Работает на Plume {0}"
2018-11-05 19:18:46 +01:00
#, fuzzy
msgid "Follow {}"
msgstr "Подписаться"
#, fuzzy
msgid "Log in to follow"
msgstr "Войдите, чтобы продвигать посты"
msgid "Enter your full username handle to follow"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Edit your account"
msgstr "Редактировать ваш аккаунт"
msgid "Your Profile"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid ""
"To change your avatar, upload it to your gallery and then select from there."
msgstr ""
msgid "Upload an avatar"
2019-04-19 14:59:03 +02:00
msgstr ""
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:217
msgid "Display name"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:217
2018-11-05 19:18:46 +01:00
msgid "Email"
msgstr "Электронная почта"
msgid "Summary"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Update account"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Danger zone"
msgstr "Опасная зона"
msgid "Be very careful, any action taken here can't be cancelled."
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Delete your account"
msgstr "Удалить ваш аккаунт"
2018-11-05 19:18:46 +01:00
msgid "Sorry, but as an admin, you can't leave your own instance."
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "Your Dashboard"
msgstr "Ваша панель управления"
msgid "Your Blogs"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "You don't have any blog yet. Create your own, or ask to join one."
msgstr ""
msgid "Start a new blog"
msgstr "Начать новый блог"
msgid "Your Drafts"
msgstr "Ваши черновики"
msgid "Your media"
msgstr "Ваши медиафайлы"
msgid "Go to your gallery"
msgstr "Перейти в вашу галерею"
msgid "Create your account"
msgstr "Создать аккаунт"
2018-11-05 19:18:46 +01:00
msgid "Create an account"
msgstr "Создать новый аккаунт"
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:217
2018-11-05 19:18:46 +01:00
msgid "Username"
msgstr "Имя пользователя"
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:217
msgid "Password"
msgstr "Пароль"
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:217
2018-11-05 19:18:46 +01:00
msgid "Password confirmation"
msgstr "Подтверждение пароля"
msgid ""
"Apologies, but registrations are closed on this particular instance. You "
"can, however, find a different one."
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Articles"
msgstr "Статьи"
2018-11-05 19:18:46 +01:00
msgid "Subscribers"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "Subscriptions"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Atom feed"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Recently boosted"
msgstr "Недавно продвинутые"
2018-11-05 19:18:46 +01:00
msgid "Admin"
msgstr "Администратор"
2018-11-05 19:18:46 +01:00
msgid "It is you"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Edit your profile"
msgstr "Редактировать ваш профиль"
2018-11-05 19:18:46 +01:00
msgid "Open on {0}"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Unsubscribe"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Subscribe"
msgstr ""
2018-11-05 19:18:46 +01:00
Big refactoring of the Inbox (#443) * Big refactoring of the Inbox We now have a type that routes an activity through the registered handlers until one of them matches. Each Actor/Activity/Object combination is represented by an implementation of AsObject These combinations are then registered on the Inbox type, which will try to deserialize the incoming activity in the requested types. Advantages: - nicer syntax: the final API is clearer and more idiomatic - more generic: only two traits (`AsActor` and `AsObject`) instead of one for each kind of activity - it is easier to see which activities we handle and which one we don't * Small fixes - Avoid panics - Don't search for AP ID infinitely - Code style issues * Fix tests * Introduce a new trait: FromId It should be implemented for any AP object. It allows to look for an object in database using its AP ID, or to dereference it if it was not present in database Also moves the inbox code to plume-models to test it (and write a basic test for each activity type we handle) * Use if let instead of match * Don't require PlumeRocket::intl for tests * Return early and remove a forgotten dbg! * Add more tests to try to understand where the issues come from * Also add a test for comment federation * Don't check creation_date is the same for blogs * Make user and blog federation more tolerant to errors/missing fields * Make clippy happy * Use the correct Accept header when dereferencing * Fix follow approval with Mastodon * Add spaces to characters that should not be in usernames And validate blog names too * Smarter dereferencing: only do it once for each actor/object * Forgot some files * Cargo fmt * Delete plume_test * Delete plume_tests * Update get_id docs + Remove useless : Sized * Appease cargo fmt * Remove dbg! + Use as_ref instead of clone when possible + Use and_then instead of map when possible * Remove .po~ * send unfollow to local instance * read cover from update activity * Make sure "cc" and "to" are never empty and fix a typo in a constant name * Cargo fmt
2019-04-17 19:31:47 +02:00
msgid "{0}'s subscriptions"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "{0}'s subscribers"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Respond"
msgstr "Ответить"
2018-11-05 19:18:46 +01:00
msgid "Are you sure?"
msgstr ""
msgid "Delete this comment"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "What is Plume?"
msgstr "Что такое Plume?"
msgid "Plume is a decentralized blogging engine."
msgstr "Plume это децентрализованный движок для блоггинга."
2018-11-05 19:18:46 +01:00
Big refactoring of the Inbox (#443) * Big refactoring of the Inbox We now have a type that routes an activity through the registered handlers until one of them matches. Each Actor/Activity/Object combination is represented by an implementation of AsObject These combinations are then registered on the Inbox type, which will try to deserialize the incoming activity in the requested types. Advantages: - nicer syntax: the final API is clearer and more idiomatic - more generic: only two traits (`AsActor` and `AsObject`) instead of one for each kind of activity - it is easier to see which activities we handle and which one we don't * Small fixes - Avoid panics - Don't search for AP ID infinitely - Code style issues * Fix tests * Introduce a new trait: FromId It should be implemented for any AP object. It allows to look for an object in database using its AP ID, or to dereference it if it was not present in database Also moves the inbox code to plume-models to test it (and write a basic test for each activity type we handle) * Use if let instead of match * Don't require PlumeRocket::intl for tests * Return early and remove a forgotten dbg! * Add more tests to try to understand where the issues come from * Also add a test for comment federation * Don't check creation_date is the same for blogs * Make user and blog federation more tolerant to errors/missing fields * Make clippy happy * Use the correct Accept header when dereferencing * Fix follow approval with Mastodon * Add spaces to characters that should not be in usernames And validate blog names too * Smarter dereferencing: only do it once for each actor/object * Forgot some files * Cargo fmt * Delete plume_test * Delete plume_tests * Update get_id docs + Remove useless : Sized * Appease cargo fmt * Remove dbg! + Use as_ref instead of clone when possible + Use and_then instead of map when possible * Remove .po~ * send unfollow to local instance * read cover from update activity * Make sure "cc" and "to" are never empty and fix a typo in a constant name * Cargo fmt
2019-04-17 19:31:47 +02:00
msgid "Authors can manage multiple blogs, each as its own website."
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid ""
"Articles are also visible on other Plume instances, and you can interact "
"with them directly from other platforms like Mastodon."
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Read the detailed rules"
msgstr "Прочитать подробные правила"
2018-11-05 19:18:46 +01:00
msgid "None"
msgstr "Нет"
msgid "No description"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "View all"
msgstr "Показать все"
msgid "By {0}"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Draft"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Your query"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Advanced search"
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:305
msgid "Article title matching these words"
msgstr ""
msgid "Title"
msgstr "Заголовок"
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:305
msgid "Subtitle matching these words"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Subtitle - byline"
2019-04-19 14:59:03 +02:00
msgstr ""
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:305
msgid "Content matching these words"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Body content"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:305
msgid "From this date"
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:305
msgid "To this date"
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:305
msgid "Containing these tags"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Tags"
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:305
msgid "Posted on one of these instances"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Instance domain"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:305
msgid "Posted by one of these authors"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Authors"
2018-11-05 19:18:46 +01:00
msgstr ""
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:305
msgid "Posted on one of these blogs"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Blog title"
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:305
msgid "Written in this language"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Language"
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:305
msgid "Published under this license"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "Article license"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "Search result for \"{0}\""
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Search result"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "No result for your query"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "No more results for your query"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Reset your password"
msgstr ""
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:217
msgid "New password"
2019-04-19 14:59:03 +02:00
msgstr ""
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:217
msgid "Confirmation"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "Update password"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "Check your inbox!"
msgstr ""
msgid ""
"We sent a mail to the address you gave us, with a link to reset your "
"password."
msgstr ""
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:217
msgid "E-mail"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "Send password reset link"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "Log in"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:217
msgid "Username, or email"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Interact with {}"
msgstr ""
#, fuzzy
msgid "Log in to interact"
msgstr "Войдите, чтобы отмечать понравившиеся посты"
msgid "Enter your full username to interact"
msgstr ""
msgid "Publish"
msgstr "Опубликовать"
msgid "Classic editor (any changes will be lost)"
msgstr ""
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:217
msgid "Subtitle"
msgstr "Подзаголовок"
2018-11-05 19:18:46 +01:00
msgid "Content"
msgstr "Содержимое"
2018-11-05 19:18:46 +01:00
msgid ""
"You can upload media to your gallery, and then copy their Markdown code into "
"your articles to insert them."
msgstr ""
msgid "Upload media"
2019-04-19 14:59:03 +02:00
msgstr ""
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:217
msgid "Tags, separated by commas"
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:217
msgid "License"
msgstr ""
2018-11-05 19:18:46 +01:00
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:225
msgid "Leave it empty to reserve all rights"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Illustration"
msgstr "Иллюстрация"
msgid "This is a draft, don't publish it yet."
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "Update"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Update, or publish"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "Publish your post"
msgstr ""
msgid "Written by {0}"
msgstr ""
msgid "Edit"
msgstr "Редактировать"
msgid "Delete this article"
msgstr "Удалить эту статью"
msgid "All rights reserved."
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "This article is under the {0} license."
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "One like"
msgid_plural "{0} likes"
msgstr[0] "Один лайк"
msgstr[1] "{0} лайка"
msgstr[2] "{0} лайков"
2019-04-19 14:59:03 +02:00
msgstr[3] ""
2018-11-05 19:18:46 +01:00
msgid "I don't like this anymore"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "Add yours"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "One boost"
Big refactoring of the Inbox (#443) * Big refactoring of the Inbox We now have a type that routes an activity through the registered handlers until one of them matches. Each Actor/Activity/Object combination is represented by an implementation of AsObject These combinations are then registered on the Inbox type, which will try to deserialize the incoming activity in the requested types. Advantages: - nicer syntax: the final API is clearer and more idiomatic - more generic: only two traits (`AsActor` and `AsObject`) instead of one for each kind of activity - it is easier to see which activities we handle and which one we don't * Small fixes - Avoid panics - Don't search for AP ID infinitely - Code style issues * Fix tests * Introduce a new trait: FromId It should be implemented for any AP object. It allows to look for an object in database using its AP ID, or to dereference it if it was not present in database Also moves the inbox code to plume-models to test it (and write a basic test for each activity type we handle) * Use if let instead of match * Don't require PlumeRocket::intl for tests * Return early and remove a forgotten dbg! * Add more tests to try to understand where the issues come from * Also add a test for comment federation * Don't check creation_date is the same for blogs * Make user and blog federation more tolerant to errors/missing fields * Make clippy happy * Use the correct Accept header when dereferencing * Fix follow approval with Mastodon * Add spaces to characters that should not be in usernames And validate blog names too * Smarter dereferencing: only do it once for each actor/object * Forgot some files * Cargo fmt * Delete plume_test * Delete plume_tests * Update get_id docs + Remove useless : Sized * Appease cargo fmt * Remove dbg! + Use as_ref instead of clone when possible + Use and_then instead of map when possible * Remove .po~ * send unfollow to local instance * read cover from update activity * Make sure "cc" and "to" are never empty and fix a typo in a constant name * Cargo fmt
2019-04-17 19:31:47 +02:00
msgid_plural "{0} boosts"
2019-04-19 14:59:03 +02:00
msgstr[0] ""
msgstr[1] ""
msgstr[2] ""
msgstr[3] ""
2018-11-05 19:18:46 +01:00
msgid "I don't want to boost this anymore"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Boost"
msgstr "Продвинуть"
2018-11-05 19:18:46 +01:00
msgid ""
"{0}Log in{1}, or {2}use your Fediverse account{3} to interact with this "
"article"
msgstr ""
msgid "Comments"
2019-04-19 14:59:03 +02:00
msgstr ""
2019-04-19 14:59:03 +02:00
# src/template_utils.rs:217
msgid "Content warning"
msgstr "Предупреждение о контенте"
2018-11-05 19:18:46 +01:00
msgid "Your comment"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Submit comment"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "No comments yet. Be the first to react!"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Invalid CSRF token"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid ""
"Something is wrong with your CSRF token. Make sure cookies are enabled in "
"you browser, and try reloading this page. If you continue to see this error "
"message, please report it."
msgstr ""
"Что-то не так с вашим CSRF-токеном. Убедитесь что в вашем браузере включены "
"cookies и попробуйте перезагрузить страницу. Если вы продолжите видеть это "
"сообщение об ошибке, сообщите об этом."
2018-11-05 19:18:46 +01:00
msgid "Page not found"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "We couldn't find this page."
msgstr "Мы не можем найти эту страницу."
msgid "The link that led you here may be broken."
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "The content you sent can't be processed."
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Maybe it was too long."
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "You are not authorized."
msgstr "Вы не авторизованы."
2018-11-05 19:18:46 +01:00
msgid "Internal server error"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Something broke on our side."
msgstr "Произошла ошибка на вашей стороне."
2018-11-05 19:18:46 +01:00
msgid "Sorry about that. If you think this is a bug, please report it."
msgstr ""
"Приносим извинения. Если вы считаете что это ошибка, пожалуйста сообщите о "
"ней."
2018-11-05 19:18:46 +01:00
msgid "Edit \"{}\""
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "Description"
msgstr "Описание"
msgid ""
"You can upload images to your gallery, to use them as blog icons, or banners."
msgstr ""
msgid "Upload images"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "Blog icon"
msgstr ""
msgid "Blog banner"
msgstr ""
msgid "Update blog"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "Be very careful, any action taken here can't be reversed."
msgstr ""
msgid "Permanently delete this blog"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "New Blog"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Create a blog"
msgstr "Создать блог"
2018-11-05 19:18:46 +01:00
msgid "Create blog"
msgstr "Создать блог"
2018-11-05 19:18:46 +01:00
msgid "{}'s icon"
msgstr ""
msgid "New article"
msgstr "Новая статья"
msgid "There's one author on this blog: "
msgid_plural "There are {0} authors on this blog: "
2019-04-19 14:59:03 +02:00
msgstr[0] ""
msgstr[1] ""
msgstr[2] ""
msgstr[3] ""
2018-11-05 19:18:46 +01:00
msgid "No posts to see here yet."
msgstr "Здесь пока нет постов."
msgid "Articles tagged \"{0}\""
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "There are currently no articles with such a tag"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
#, fuzzy
msgid "I'm from this instance"
msgstr "Об этом узле"
msgid "I'm from another instance"
msgstr ""
# src/template_utils.rs:225
msgid "Example: user@plu.me"
msgstr ""
#, fuzzy
msgid "Continue to your instance"
msgstr "Настроить ваш узел"
2018-11-05 19:18:46 +01:00
msgid "Upload"
msgstr "Загрузить"
msgid "You don't have any media yet."
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Content warning: {0}"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "Delete"
msgstr "Удалить"
msgid "Details"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Media upload"
msgstr "Загрузка медиафайлов"
msgid "Useful for visually impaired people, as well as licensing information"
2019-04-19 14:59:03 +02:00
msgstr ""
msgid "Leave it empty, if none is needed"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "File"
msgstr "Файл"
msgid "Send"
msgstr "Отправить"
msgid "Media details"
msgstr "Детали медиафайла"
2018-11-05 19:18:46 +01:00
msgid "Go back to the gallery"
msgstr "Вернуться в галерею"
2018-11-05 19:18:46 +01:00
msgid "Markdown syntax"
2019-04-19 14:59:03 +02:00
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Copy it into your articles, to insert this media:"
msgstr ""
2018-11-05 19:18:46 +01:00
msgid "Use as an avatar"
2019-04-19 14:59:03 +02:00
msgstr ""