An account whose Stalwart role manages accounts now finds Administration in the account menu. It lists, searches, creates and edits accounts -- display name, other addresses, role, storage limit -- sets a new password, and deletes, each offered only when the role holds the matching permission. The server keeps the permissions list from GET /api/account, which it already called for the edition and threw the rest away. Everything else is JMAP x:Account, x:Domain and x:Role calls through the existing /api/jmap proxy, so nothing new is stored and Stalwart decides every call. Stalwart checks a grant against the caller's permissions but not a password change or a delete, so an account that outranks the viewer is shown read-only. Your own password is changed in Settings, which re-seals the session; changing it here would strand it. The mock server gains a directory behind the same permission names, with MOCK_ROLE choosing admin, tenant-admin, helpdesk or user. 68 new strings, translated in all nine catalogues; strings falling back to English stay at 16.
1487 lines
140 KiB
TypeScript
1487 lines
140 KiB
TypeScript
import type { Catalog } from "@/lib/i18n";
|
||
|
||
/**
|
||
* Russian — generated by AI, and not reviewed by a native speaker.
|
||
*
|
||
* First of Phase 2, and the first catalogue where the plural machinery earns
|
||
* its keep: Russian needs three forms where English has two, and choosing
|
||
* between them is not a question about the number 1. `plural()` was built
|
||
* around `Intl.PluralRules` for exactly this, and the entries below are the
|
||
* first real use of `few` and `many` rather than a test fixture.
|
||
*
|
||
* Marked Beta, with the report link doing the job a native speaker would. A
|
||
* missing string renders its English source, so deleting a bad entry is a
|
||
* valid fix.
|
||
*
|
||
* ── Decisions this file is consistent about ──────────────────────────────
|
||
*
|
||
* Register: **вы**, lowercase, which is the neutral polite address every
|
||
* Russian interface uses. Capitalised «Вы» is correspondence style — it reads
|
||
* as a letter addressed to one person, not as software — and using it here
|
||
* would be a small, constant wrongness on every screen. This follows the
|
||
* formal-address decision the other languages took, and in Russian it costs
|
||
* nothing: it is simply what software says.
|
||
*
|
||
* Most of the interface avoids the question anyway, because Russian UI
|
||
* convention is the infinitive for actions — «Удалить», «Ответить» — rather
|
||
* than an imperative addressed at the reader.
|
||
*
|
||
* Terminology, fixed once so it cannot drift:
|
||
*
|
||
* Inbox Входящие Archive (verb) архивировать
|
||
* Drafts Черновики Delete удалить
|
||
* Sent Отправленные Move to переместить в
|
||
* Deleted Items Корзина Reply ответить
|
||
* Junk / Spam Спам Reply all ответить всем
|
||
* Folder Папка Forward переслать
|
||
* Label Ярлык Star отметить
|
||
* Conversation Цепочка Read / unread прочитано / непрочитано
|
||
* Message Письмо Settings Настройки
|
||
* Attachment Вложение Signature Подпись
|
||
* Contact Контакт Identity Профиль отправителя
|
||
*
|
||
* «Письмо» rather than «сообщение» for a mail message: it is what Russian mail
|
||
* clients call one, and «сообщение» reads as a chat message. «Ярлык» for
|
||
* label, which is Gmail's word in Russian — the same rule as French, Spanish
|
||
* and Portuguese, and a fifth answer to it.
|
||
*
|
||
* Product names are never translated: ihasmail, Stalwart, JMAP, Sieve, vCard.
|
||
*/
|
||
export const catalog: Catalog = {
|
||
strings: {
|
||
// ── Administration: accounts ───────────────────────────────────
|
||
"Change your own password in {settings}.": "Свой пароль можно изменить в разделе {settings}.",
|
||
"Administration": "Администрирование",
|
||
"Directory": "Каталог",
|
||
"User": "Пользователь",
|
||
"Administrator": "Администратор",
|
||
"Custom role": "Особая роль",
|
||
"New account": "Новая учётная запись",
|
||
"The people who sign in to mail on the domains you manage.": "Люди, которые входят в почту на доменах, которыми вы управляете.",
|
||
"Search by name or address": "Поиск по имени или адресу",
|
||
"Search accounts": "Поиск учётных записей",
|
||
"No accounts match": "Нет подходящих учётных записей",
|
||
"No accounts yet": "Учётных записей пока нет",
|
||
"Nothing on your domains matches “{query}”.": "На ваших доменах нет совпадений с «{query}».",
|
||
"Open {address}": "Открыть {address}",
|
||
"{from}–{to} of {total}": "{from}–{to} из {total}",
|
||
"Previous page": "Предыдущая страница",
|
||
"Next page": "Следующая страница",
|
||
"Storage": "Хранилище",
|
||
"Groups": "Группы",
|
||
"{used} · no limit": "{used} · без ограничения",
|
||
"Profile": "Профиль",
|
||
"Domain": "Домен",
|
||
"No domains are available to create an account on.": "Нет доменов, на которых можно создать учётную запись.",
|
||
"Sign-in": "Вход",
|
||
"Other addresses": "Другие адреса",
|
||
"Not in any group": "Не состоит ни в одной группе",
|
||
"You can't change your own role.": "Нельзя изменить собственную роль.",
|
||
"Only roles whose permissions you hold yourself are offered. On an account inside a tenant, Administrator means administrator of that tenant.": "Предлагаются только роли, все разрешения которых есть у вас самих. Для учётной записи внутри арендатора «Администратор» означает администратора этого арендатора.",
|
||
"Limit in GB": "Ограничение в ГБ",
|
||
"No limit": "Без ограничения",
|
||
"This account has permissions yours doesn't, so you can view it but not change it.": "У этой учётной записи есть разрешения, которых нет у вашей, поэтому её можно просматривать, но не изменять.",
|
||
"Your role lets you view accounts but not change them.": "Ваша роль позволяет просматривать учётные записи, но не изменять их.",
|
||
"This account has permissions yours doesn't.": "У этой учётной записи есть разрешения, которых нет у вашей.",
|
||
"You can't delete the account you're signed in with.": "Нельзя удалить учётную запись, под которой вы вошли.",
|
||
"Create account": "Создать учётную запись",
|
||
"An account needs an address.": "Учётной записи нужен адрес.",
|
||
"Created {address}": "Учётная запись {address} создана",
|
||
"Saved {address}": "Учётная запись {address} сохранена",
|
||
"Generate a password": "Сгенерировать пароль",
|
||
"Pass it on some way other than email to this address.": "Передайте его любым способом, кроме письма на этот адрес.",
|
||
"This account has no password. It may sign in through a directory or single sign-on.": "У этой учётной записи нет пароля. Возможно, вход выполняется через каталог или единый вход.",
|
||
"Set a new password…": "Задать новый пароль…",
|
||
"{name} will be signed out of every app and device using the old password.": "Для {name} будет выполнен выход во всех приложениях и на всех устройствах, где используется старый пароль.",
|
||
"New password set for {address}": "Новый пароль для {address} задан",
|
||
"Set password": "Задать пароль",
|
||
"Remove {address}": "Удалить {address}",
|
||
"New address": "Новый адрес",
|
||
"another name": "другое имя",
|
||
"Mail to these addresses is delivered to this account. Changes apply when you save.": "Письма на эти адреса доставляются в эту учётную запись. Изменения вступят в силу после сохранения.",
|
||
"Deletes the mailbox and everything in it.": "Удаляет почтовый ящик и всё его содержимое.",
|
||
"Delete account…": "Удалить учётную запись…",
|
||
"Delete {address}?": "Удалить {address}?",
|
||
"This deletes the mail, calendars, contacts and files in this account. The server removes them in the background, and it can't be undone.": "Будут удалены почта, календари, контакты и файлы этой учётной записи. Сервер удалит их в фоновом режиме, отменить это нельзя.",
|
||
"Type {address} to confirm": "Введите {address} для подтверждения",
|
||
"Delete account": "Удалить учётную запись",
|
||
"Deleted {address}": "Учётная запись {address} удалена",
|
||
"The server did not say whether the account was created.": "Сервер не сообщил, создана ли учётная запись.",
|
||
"The mail server refused this. Your role may not allow it.": "Почтовый сервер отклонил это действие. Возможно, ваша роль его не допускает.",
|
||
"The mail server refused this: {reason}": "Почтовый сервер отклонил это действие: {reason}",
|
||
"That address is already in use on this server, as an account, a list or an alias.": "Этот адрес уже используется на сервере — учётной записью, списком или псевдонимом.",
|
||
"One of the chosen domain, role or group can't be used for this account.": "Выбранный домен, роль или группу нельзя использовать для этой учётной записи.",
|
||
"Your organisation has reached the number of accounts it is allowed.": "Ваша организация достигла допустимого числа учётных записей.",
|
||
"Something still depends on this, so the server kept it.": "От этого ещё что-то зависит, поэтому сервер это сохранил.",
|
||
"This account no longer exists. Someone may have deleted it.": "Этой учётной записи больше нет. Возможно, её кто-то удалил.",
|
||
"The password was not accepted: {reason}": "Пароль не принят: {reason}",
|
||
"The password was not accepted.": "Пароль не принят.",
|
||
"The mail server rejected a value: {reason}": "Почтовый сервер отклонил значение: {reason}",
|
||
"The mail server rejected a value.": "Почтовый сервер отклонил значение.",
|
||
"Go to folder…": "Перейти к папке…",
|
||
"Set for everyone here. You cannot change this.": "Задано для всех здесь. Изменить нельзя.",
|
||
"Export iCAL file": "Экспортировать файл iCAL",
|
||
"Could not export this calendar: {error}": "Не удалось экспортировать этот календарь: {error}",
|
||
// ── Actions ────────────────────────────────────────────────────────
|
||
"Archive": "Архивировать",
|
||
"Archive (e)": "Архивировать (e)",
|
||
"Delete": "Удалить",
|
||
"Delete (#)": "Удалить (#)",
|
||
"Reply": "Ответить",
|
||
"Reply (r)": "Ответить (r)",
|
||
"Reply all": "Ответить всем",
|
||
"Forward": "Переслать",
|
||
"Move to…": "Переместить в…",
|
||
"Move to (v)": "Переместить в (v)",
|
||
"Move to folder": "Переместить в папку",
|
||
"Move here": "Переместить сюда",
|
||
"Mark as read": "Отметить как прочитанное",
|
||
"Mark as read (Shift+I)": "Отметить как прочитанное (Shift+I)",
|
||
"Mark as unread": "Отметить как непрочитанное",
|
||
"Mark as unread (Shift+U)": "Отметить как непрочитанное (Shift+U)",
|
||
"Mark all as read": "Отметить всё как прочитанное",
|
||
"Mark all as read, incl. subfolders": "Отметить всё как прочитанное, включая вложенные папки",
|
||
"Star": "Отметить",
|
||
"Labels": "Ярлыки",
|
||
"Labels (l)": "Ярлыки (l)",
|
||
"Label as": "Присвоить ярлык",
|
||
"Label…": "Ярлык…",
|
||
"Compose": "Написать",
|
||
"Compose message": "Написать письмо",
|
||
"Send": "Отправить",
|
||
"Send at": "Отправить в",
|
||
"Cancel send": "Отменить отправку",
|
||
"Schedule send": "Отложить отправку",
|
||
"Save": "Сохранить",
|
||
"Save & activate": "Сохранить и включить",
|
||
"Save & close (Esc)": "Сохранить и закрыть (Esc)",
|
||
"Save as template": "Сохранить как шаблон",
|
||
"Save draft now": "Сохранить черновик сейчас",
|
||
"Cancel": "Отмена",
|
||
"Close": "Закрыть",
|
||
"Done": "Готово",
|
||
"Continue": "Продолжить",
|
||
"Edit": "Изменить",
|
||
"Edit…": "Изменить…",
|
||
"Rename": "Переименовать",
|
||
"Remove": "Убрать",
|
||
"Restore": "Восстановить",
|
||
"Retry": "Повторить",
|
||
"Reload": "Перезагрузить",
|
||
"Refresh": "Обновить",
|
||
"Copy": "Копировать",
|
||
"Copy email address": "Копировать адрес",
|
||
"Download": "Скачать",
|
||
"Download all": "Скачать всё",
|
||
"Download (.eml)": "Скачать (.eml)",
|
||
"Download latest as .eml": "Скачать последнее в .eml",
|
||
"Upload": "Загрузить",
|
||
"Upload files…": "Загрузить файлы…",
|
||
"Print": "Печать",
|
||
"Print conversation": "Напечатать цепочку",
|
||
"Undo (Ctrl+Z)": "Отменить (Ctrl+Z)",
|
||
"Redo": "Вернуть",
|
||
"Dismiss": "Закрыть",
|
||
"Discard changes": "Отменить изменения",
|
||
"Discard draft": "Удалить черновик",
|
||
"Duplicate": "Дублировать",
|
||
"Validate": "Проверить",
|
||
"Revoke": "Отозвать",
|
||
"Turn off": "Отключить",
|
||
"Clear": "Очистить",
|
||
"Clear selection": "Снять выделение",
|
||
"Clear custom colour": "Убрать свой цвет",
|
||
"Select": "Выбрать",
|
||
"Select all": "Выбрать всё",
|
||
"Unsubscribe": "Отписаться",
|
||
"Share…": "Поделиться…",
|
||
"Stop sharing": "Закрыть доступ",
|
||
"Open": "Открыть",
|
||
"Open in new tab": "Открыть в новой вкладке",
|
||
"Open in calendar": "Открыть в календаре",
|
||
"Back": "Назад",
|
||
"Back (u)": "Назад (u)",
|
||
"Back to list": "Назад к списку",
|
||
"Back to my files": "Назад к моим файлам",
|
||
"Go back to the list": "Вернуться к списку",
|
||
"Next": "Далее",
|
||
"Previous": "Назад",
|
||
"More": "Ещё",
|
||
"More actions": "Другие действия",
|
||
"More options": "Другие параметры",
|
||
"Move up": "Вверх",
|
||
"Move down": "Вниз",
|
||
"Drag to reorder": "Перетащите, чтобы изменить порядок",
|
||
"Right-click for options": "Правая кнопка мыши — параметры",
|
||
|
||
// ── Mail ───────────────────────────────────────────────────────────
|
||
"Mail": "Почта",
|
||
"Message": "Письмо",
|
||
"Messages": "Письма",
|
||
"Message body": "Текст письма",
|
||
"Message headers": "Заголовки письма",
|
||
"Message size": "Размер письма",
|
||
"Message-ID": "Message-ID",
|
||
"Original message": "Исходное письмо",
|
||
"Delete this message": "Удалить это письмо",
|
||
"New message to this address": "Новое письмо на этот адрес",
|
||
"Conversation view": "Показывать цепочками",
|
||
"Draft": "Черновик",
|
||
"Unread": "Непрочитанные",
|
||
"Unread only": "Только непрочитанные",
|
||
"All mail": "Вся почта",
|
||
"Sender": "Отправитель",
|
||
"Sender domain": "Домен отправителя",
|
||
"Recipients": "Получатели",
|
||
"From": "От",
|
||
"To": "Кому",
|
||
"Cc": "Копия",
|
||
"Bcc": "Скрытая копия",
|
||
"Subject": "Тема",
|
||
"Subject (optional)": "Тема (необязательно)",
|
||
"Body": "Текст",
|
||
"Body text": "Обычный текст",
|
||
"Attach files": "Прикрепить файлы",
|
||
"Attach from Files": "Прикрепить из Файлов",
|
||
"Remove attachment": "Убрать вложение",
|
||
"Has attachment": "Есть вложение",
|
||
"Has the words": "Содержит слова",
|
||
"Header name": "Имя заголовка",
|
||
"Show headers": "Показать заголовки",
|
||
"Show original": "Показать исходник",
|
||
"Show details": "Показать подробности",
|
||
"Show images": "Показать изображения",
|
||
"Remote images": "Внешние изображения",
|
||
"Remote images are blocked to protect your privacy.": "Внешние изображения заблокированы, чтобы защитить вашу приватность.",
|
||
"Always from {email}": "Всегда от {email}",
|
||
"This looks like a mailing list.": "Похоже, это рассылка.",
|
||
"This folder is empty": "Папка пуста",
|
||
"This folder is empty.": "Папка пуста.",
|
||
"Delete all spam now": "Удалить весь спам сейчас",
|
||
"Deleting spam is permanent — it does not go to Deleted Items first.": "Удаление спама необратимо — он не попадает сначала в корзину.",
|
||
"Keep in Inbox": "Оставить во входящих",
|
||
"Newer (k)": "Новее (k)",
|
||
"Older (j)": "Старее (j)",
|
||
"Open the next (older) conversation": "Открыть следующую цепочку (более старую)",
|
||
"Open the previous (newer) conversation": "Открыть предыдущую цепочку (более новую)",
|
||
"Loading conversation…": "Загрузка цепочки…",
|
||
"Important": "Важное",
|
||
"Unverified": "Не проверено",
|
||
"Priority": "Приоритет",
|
||
"High": "Высокий",
|
||
"Normal": "Обычный",
|
||
"Low": "Низкий",
|
||
"to {recipients}": "кому: {recipients}",
|
||
"From: {sender}": "От: {sender}",
|
||
"Waiting on the server — goes out {when}.": "Ожидает на сервере — будет отправлено {when}.",
|
||
"Scheduled — click to clear the schedule": "Отложено — нажмите, чтобы отменить",
|
||
"Nothing scheduled": "Ничего не отложено",
|
||
"The message waits on the server, so it goes out whether or not ihasmail is open.": "Письмо ждёт на сервере и будет отправлено независимо от того, открыт ihasmail или нет.",
|
||
"This server holds a message for up to {span}.": "Этот сервер удерживает письмо до {span}.",
|
||
"Date and time to send": "Дата и время отправки",
|
||
"Undo send window": "Время на отмену отправки",
|
||
"Read receipt requested": "Запрошено уведомление о прочтении",
|
||
"The sender asked for a read receipt.": "Отправитель запросил уведомление о прочтении.",
|
||
"Request read receipt": "Запросить уведомление о прочтении",
|
||
"Always request read receipts": "Всегда запрашивать уведомление о прочтении",
|
||
"Receipt": "Уведомление",
|
||
"Never send one": "Никогда не отправлять",
|
||
"Not this time": "Не в этот раз",
|
||
"It would go to {address}, which is not where the message came from.": "Оно ушло бы на {address}, а письмо пришло не оттуда.",
|
||
"Use {action} for the complete raw message.": "{action} — полное исходное сообщение.",
|
||
|
||
// ── Folders, calendar, contacts, files ─────────────────────────────
|
||
"Folder": "Папка",
|
||
"Folders": "Папки",
|
||
"Folder options": "Параметры папки",
|
||
"New folder": "Новая папка",
|
||
"New subfolder": "Новая вложенная папка",
|
||
"Open subfolders of {name}": "Открыть вложенные папки «{name}»",
|
||
"Delete folder": "Удалить папку",
|
||
"No matching folders": "Подходящих папок нет",
|
||
"No subfolders here.": "Здесь нет вложенных папок.",
|
||
"Type a folder name…": "Введите имя папки…",
|
||
"+ New folder…": "+ Новая папка…",
|
||
"Create, rename and hide folders.": "Создание, переименование и скрытие папок.",
|
||
"Show unsubscribed (hidden) folders": "Показывать неподписанные (скрытые) папки",
|
||
"Storage: {used} of {total} used.": "Хранилище: занято {used} из {total}.",
|
||
"{used} of {total}": "{used} из {total}",
|
||
|
||
"Calendar": "Календарь",
|
||
"My calendars": "Мои календари",
|
||
"New calendar": "Новый календарь",
|
||
"Calendar options": "Параметры календаря",
|
||
"Calendar & contacts": "Календарь и контакты",
|
||
"Calendar is not available": "Календарь недоступен",
|
||
"Event": "Событие",
|
||
"New event": "Новое событие",
|
||
"Create event…": "Создать событие…",
|
||
"(new event)": "(новое событие)",
|
||
"New all-day event": "Новое событие на весь день",
|
||
"Add title": "Добавить название",
|
||
"Add location": "Добавить место",
|
||
"Add to calendar": "Добавить в календарь",
|
||
"Add to my calendar": "Добавить в мой календарь",
|
||
"Remove from calendar": "Убрать из календаря",
|
||
"Remove from my calendar": "Убрать из моего календаря",
|
||
"All day": "Весь день",
|
||
"all-day": "весь день",
|
||
"Starts": "Начало",
|
||
"Starts (optional)": "Начало (необязательно)",
|
||
"Ends": "Окончание",
|
||
"Ends (optional)": "Окончание (необязательно)",
|
||
"Day": "День",
|
||
"Week": "Неделя",
|
||
"Month": "Месяц",
|
||
"Agenda": "Список",
|
||
"Today": "Сегодня",
|
||
"Go to day": "Перейти к дню",
|
||
"Go to week": "Перейти к неделе",
|
||
"Previous month": "Предыдущий месяц",
|
||
"Next month": "Следующий месяц",
|
||
"Does not repeat": "Не повторяется",
|
||
"Daily": "Ежедневно",
|
||
"Every weekday": "По будням",
|
||
"Yearly": "Ежегодно",
|
||
"Custom…": "Свой вариант…",
|
||
"Weekly on {weekday}": "Еженедельно, {weekday}",
|
||
"Monthly on day {day}": "Ежемесячно, {day}-го числа",
|
||
"Repeat every": "Повторять каждые",
|
||
"Repeat until": "Повторять до",
|
||
"after N times": "после N раз",
|
||
"on date": "до даты",
|
||
"never": "никогда",
|
||
"day(s)": "дн.",
|
||
"week(s)": "нед.",
|
||
"month(s)": "мес.",
|
||
"year(s)": "г.",
|
||
"Reminders": "Напоминания",
|
||
"Add reminder": "Добавить напоминание",
|
||
"Remove reminder": "Убрать напоминание",
|
||
"Default reminder": "Напоминание по умолчанию",
|
||
"At time of event": "В момент события",
|
||
"5 minutes before": "За 5 минут",
|
||
"10 minutes before": "За 10 минут",
|
||
"15 minutes before": "За 15 минут",
|
||
"30 minutes before": "За 30 минут",
|
||
"1 hour before": "За 1 час",
|
||
"1 day before": "За 1 день",
|
||
"15 minutes": "15 минут",
|
||
"30 minutes": "30 минут",
|
||
"45 minutes": "45 минут",
|
||
"1 hour": "1 час",
|
||
"1.5 hours": "1,5 часа",
|
||
"2 hours": "2 часа",
|
||
"Default event length": "Длительность события по умолчанию",
|
||
"Default view": "Вид по умолчанию",
|
||
"Guests": "Участники",
|
||
"Add guests by name or email": "Добавить участников по имени или адресу",
|
||
"Send invitation emails to guests": "Отправлять участникам приглашения по почте",
|
||
"Going?": "Придёте?",
|
||
"Yes": "Да",
|
||
"No": "Нет",
|
||
"Maybe": "Возможно",
|
||
"Confirmed": "Подтверждено",
|
||
"Tentative": "Под вопросом",
|
||
"Cancelled": "Отменено",
|
||
"organizer": "организатор",
|
||
"Organizer: {name}": "Организатор: {name}",
|
||
"Free": "Свободен",
|
||
"Busy": "Занят",
|
||
"Free/busy": "Занятость",
|
||
"Show as": "Показывать как",
|
||
"Count all events as busy": "Считать все события занятостью",
|
||
"Only events I'm attending": "Только события, где я участвую",
|
||
"Don't include in availability": "Не учитывать в занятости",
|
||
"Meeting link": "Ссылка на встречу",
|
||
"No events in the next 60 days.": "В ближайшие 60 дней событий нет.",
|
||
"Working hours": "Рабочее время",
|
||
"Working hours start": "Начало рабочего времени",
|
||
"Working hours end": "Конец рабочего времени",
|
||
"Colour categories": "Цветовые категории",
|
||
"Category": "Категория",
|
||
"No category": "Без категории",
|
||
"New category": "Новая категория",
|
||
"Delete category": "Удалить категорию",
|
||
"Manage categories…": "Управление категориями…",
|
||
"Use category color": "Цвет категории",
|
||
"Use calendar color": "Цвет календаря",
|
||
"Use the default colour": "Цвет по умолчанию",
|
||
"+{n} more": "+{n}",
|
||
|
||
"Contacts": "Контакты",
|
||
"Contacts are not available": "Контакты недоступны",
|
||
"New contact": "Новый контакт",
|
||
"Edit contact": "Изменить контакт",
|
||
"Select a contact": "Выберите контакт",
|
||
"All contacts": "Все контакты",
|
||
"Search contacts": "Поиск по контактам",
|
||
"Search contacts to add…": "Найдите контакты, чтобы добавить…",
|
||
"Loading contacts…": "Загрузка контактов…",
|
||
"Add to contacts": "Добавить в контакты",
|
||
"Add to my contacts": "Добавить в мои контакты",
|
||
"Remove from my contacts": "Убрать из моих контактов",
|
||
"Address book": "Адресная книга",
|
||
"Address books": "Адресные книги",
|
||
"All address books": "Все адресные книги",
|
||
"My address books": "Мои адресные книги",
|
||
"New address book": "Новая адресная книга",
|
||
"No address books yet.": "Адресных книг пока нет.",
|
||
"Choose from address books": "Выбрать из адресных книг",
|
||
"Export all contacts": "Экспортировать все контакты",
|
||
"Export address book": "Экспортировать эту адресную книгу",
|
||
"Import contacts…": "Импортировать контакты…",
|
||
"Contact options": "Параметры контактов",
|
||
"Address book options": "Параметры адресной книги",
|
||
"Email group": "Написать группе",
|
||
"Email everyone": "Написать всем",
|
||
"Members": "Участники",
|
||
"Members ({count})": "Участники ({count})",
|
||
"Group": "Группа",
|
||
"· group": "· группа",
|
||
"Person": "Человек",
|
||
"First name": "Имя",
|
||
"Last name": "Фамилия",
|
||
"Middle name": "Отчество",
|
||
"More name fields": "Другие поля имени",
|
||
"Nickname": "Псевдоним",
|
||
"Prefix": "Обращение",
|
||
"Suffix": "Суффикс",
|
||
"Dr.": "Д-р",
|
||
"Jr.": "Мл.",
|
||
"Display name": "Отображаемое имя",
|
||
"Job title": "Должность",
|
||
"Organization": "Организация",
|
||
"Company": "Компания",
|
||
"Birthday": "День рождения",
|
||
"Notes": "Заметки",
|
||
"Website": "Сайт",
|
||
"Phone": "Телефон",
|
||
"Add phone": "Добавить телефон",
|
||
"Add email": "Добавить адрес",
|
||
"Add address": "Добавить почтовый адрес",
|
||
"Address": "Адрес",
|
||
"Street": "Улица",
|
||
"City": "Город",
|
||
"State / Region": "Область / регион",
|
||
"Postal code": "Индекс",
|
||
"Country": "Страна",
|
||
"Change photo": "Сменить фото",
|
||
"Remove photo": "Убрать фото",
|
||
"Updated {date}": "Обновлено {date}",
|
||
"Modified": "Изменено",
|
||
"Search names and addresses": "Поиск по именам и адресам",
|
||
"Add a person or group…": "Добавить человека или группу…",
|
||
"Choose recipients": "Выбрать получателей",
|
||
"Available to add": "Можно добавить",
|
||
"vCard": "vCard",
|
||
"vCard attachment": "Вложение vCard",
|
||
|
||
"Files": "Файлы",
|
||
"My files": "Мои файлы",
|
||
"File storage is not available": "Хранилище файлов недоступно",
|
||
"Drag files here or use Upload.": "Перетащите файлы сюда или нажмите «Загрузить».",
|
||
"Shared": "Общий доступ",
|
||
"Shared with me": "Доступные мне",
|
||
"Nothing is shared with you.": "Вам ничего не открыли.",
|
||
"Not shared with anyone yet.": "Доступ пока никому не открыт.",
|
||
"Check for new shares": "Проверить новые",
|
||
"Shared files are copied to your account when attached.": "При вложении общие файлы копируются в вашу учётную запись.",
|
||
"Viewer": "Чтение",
|
||
"Editor": "Изменение",
|
||
"Size": "Размер",
|
||
"Add files": "Добавить файлы",
|
||
"Minimize": "Свернуть",
|
||
|
||
// ── Settings ───────────────────────────────────────────────────────
|
||
"Settings": "Настройки",
|
||
"All settings": "Все настройки",
|
||
"Sections": "Разделы",
|
||
"General": "Общие",
|
||
"Appearance": "Внешний вид",
|
||
"Make ihasmail yours.": "Настройте ihasmail под себя.",
|
||
"Reading": "Чтение",
|
||
"Reading pane": "Область чтения",
|
||
"Right of the list": "Справа от списка",
|
||
"Below the list": "Под списком",
|
||
"Hidden (open full width)": "Скрыта (открывать во всю ширину)",
|
||
"Off (open messages full width)": "Выключена (письма во всю ширину)",
|
||
"Off": "Выключено",
|
||
"Composing": "Написание",
|
||
"Default format": "Формат по умолчанию",
|
||
"Rich text (HTML)": "Форматированный текст (HTML)",
|
||
"Plain text": "Обычный текст",
|
||
"Quote original message in replies": "Цитировать исходное письмо в ответах",
|
||
"Place signature above quoted text": "Ставить подпись над цитатой",
|
||
"Attachment reminder": "Напоминание о вложении",
|
||
"Warn when the message mentions an attachment but none is attached.": "Предупреждать, если письмо упоминает вложение, но его нет.",
|
||
"Spell check while typing": "Проверять орфографию при вводе",
|
||
"Confirm before deleting": "Спрашивать перед удалением",
|
||
"Show message snippets": "Показывать начало письма",
|
||
"Preview the first line of each message in the list.": "Показывать первую строку каждого письма в списке.",
|
||
"Show sender avatars": "Показывать аватары отправителей",
|
||
"Group messages from the same thread together.": "Объединять письма одной цепочки.",
|
||
"After archiving or deleting": "После архивирования или удаления",
|
||
"Ask before showing (recommended)": "Спрашивать перед показом (рекомендуется)",
|
||
"Always (all messages)": "Всегда (все письма)",
|
||
"Show automatically from my contacts": "Автоматически для моих контактов",
|
||
"Immediately when opened": "Сразу при открытии",
|
||
"After 2 seconds": "Через 2 секунды",
|
||
"After 5 seconds": "Через 5 секунд",
|
||
"Never automatically": "Никогда автоматически",
|
||
"When someone requests a read receipt": "Когда запрашивают уведомление о прочтении",
|
||
"Ask me on each message": "Спрашивать для каждого письма",
|
||
"5 seconds": "5 секунд",
|
||
"8 seconds": "8 секунд",
|
||
"15 seconds": "15 секунд",
|
||
"30 seconds": "30 секунд",
|
||
"Locale": "Регион",
|
||
"Language": "Язык",
|
||
"Interface language": "Язык интерфейса",
|
||
"Language & region": "Язык и регион",
|
||
"Date format": "Формат даты",
|
||
"Time format": "Формат времени",
|
||
"Time zone": "Часовой пояс",
|
||
"Week starts on": "Неделя начинается с",
|
||
"Monday": "Понедельник",
|
||
"Saturday": "Суббота",
|
||
"Sunday": "Воскресенье",
|
||
"12-hour clock (6:23 PM)": "12-часовой формат (6:23 PM)",
|
||
"24-hour clock (18:23)": "24-часовой формат (18:23)",
|
||
"Browser default ({zone})": "Как в браузере ({zone})",
|
||
"Default ({zone})": "По умолчанию ({zone})",
|
||
"Automatic ({example})": "Автоматически ({example})",
|
||
"Automatic ({locale})": "Автоматически ({locale})",
|
||
"Automatic": "Автоматически",
|
||
"Preview: {example}": "Пример: {example}",
|
||
"Dates, times and month names follow this choice.": "Даты, время и названия месяцев следуют этому выбору.",
|
||
"Your mail server reports {name} ({tag}).": "Ваш почтовый сервер сообщает {name} ({tag}).",
|
||
"Your mail server does not report a locale, so the browser's is used.": "Ваш почтовый сервер не сообщает язык, поэтому используется язык браузера.",
|
||
"Dates": "Даты",
|
||
"Date": "Дата",
|
||
"Time": "Время",
|
||
"When": "Когда",
|
||
"Then": "Затем",
|
||
"then": "затем",
|
||
"Theme": "Тема",
|
||
"Accent color": "Акцентный цвет",
|
||
"Color": "Цвет",
|
||
"Colour": "Цвет",
|
||
"Text color": "Цвет текста",
|
||
"Density & text": "Плотность и текст",
|
||
"Display density": "Плотность отображения",
|
||
"Comfortable": "Свободная",
|
||
"Cozy (default)": "Средняя (по умолчанию)",
|
||
"Compact": "Плотная",
|
||
"Text size": "Размер текста",
|
||
"Font size": "Размер шрифта",
|
||
"Small": "Мелкий",
|
||
"Medium": "Средний",
|
||
"Large": "Крупный",
|
||
"Huge": "Очень крупный",
|
||
"Sidebar": "Боковая панель",
|
||
"Show labels in the sidebar": "Показывать ярлыки на боковой панели",
|
||
"Collapse sidebar to icons": "Свернуть боковую панель до значков",
|
||
"Apply the theme to messages too": "Применять тему и к письмам",
|
||
"Apply it even to mail that styles itself": "Применять даже к письмам с собственным оформлением",
|
||
"Most marketing and receipt mail sets a colour somewhere, so the setting above leaves nearly all of it on a white card. With this on, the theme is forced over the sender's own colours: backgrounds they laid the message on are dropped, while buttons and coloured banners are kept so their text stays readable. Some mail will not survive it intact, which is why it is separate.": "Почти в каждом рекламном письме и чеке где-нибудь задан цвет, поэтому настройка выше оставляет почти все такие письма на белой карточке. С этой настройкой тема накладывается поверх цветов отправителя: фон, на котором свёрстано письмо, убирается, а кнопки и цветные плашки сохраняются, чтобы текст на них оставался читаемым. Некоторые письма это не переживут без потерь — поэтому настройка отдельная.",
|
||
"Swiping": "Жесты смахивания",
|
||
"Swipe left": "Смахнуть влево",
|
||
"Swipe right": "Смахнуть вправо",
|
||
"Backup": "Резервная копия",
|
||
"Export settings": "Экспорт настроек",
|
||
"Import settings": "Импорт настроек",
|
||
"Settings imported": "Настройки импортированы",
|
||
"Invalid settings file": "Неверный файл настроек",
|
||
"Reset to defaults": "Сбросить к значениям по умолчанию",
|
||
"Default mail app": "Почтовая программа по умолчанию",
|
||
"Documentation": "Документация",
|
||
"About ihasmail": "О программе ihasmail",
|
||
"About": "О программе",
|
||
"Server": "Сервер",
|
||
"Server capabilities": "Возможности сервера",
|
||
"Accounts": "Учётные записи",
|
||
"Account": "Учётная запись",
|
||
"Max upload": "Максимальная загрузка",
|
||
"{size} MB": "{size} МБ",
|
||
"KB": "КБ",
|
||
"Image privacy proxy": "Прокси приватности изображений",
|
||
"enabled": "включён",
|
||
"disabled": "выключен",
|
||
"Enabled": "Включено",
|
||
"active": "активен",
|
||
"hidden": "скрыта",
|
||
"connected": "подключено",
|
||
"reconnecting…": "переподключение…",
|
||
"AGPL-3.0 source": "Исходный код AGPL-3.0",
|
||
|
||
// ── Identities, templates, filters ─────────────────────────────────
|
||
"Identities & signatures": "Профили отправителя и подписи",
|
||
"Add identity": "Добавить профиль",
|
||
"Delete identity": "Удалить профиль",
|
||
"Make default": "Сделать основным",
|
||
"Default": "Основной",
|
||
"Show when composing": "Показывать при написании",
|
||
"Hide when composing": "Скрывать при написании",
|
||
"Signature": "Подпись",
|
||
"Your signature…": "Ваша подпись…",
|
||
"Reply-To": "Обратный адрес",
|
||
"Reply-To (optional)": "Обратный адрес (необязательно)",
|
||
"Reply-To: {addresses}": "Обратный адрес: {addresses}",
|
||
"Replies go to…": "Ответы приходят на…",
|
||
"Set a Reply-To address": "Указать обратный адрес",
|
||
"{email} is now your default identity": "{email} теперь ваш основной профиль",
|
||
"Templates": "Шаблоны",
|
||
"New template": "Новый шаблон",
|
||
"Delete template": "Удалить шаблон",
|
||
"Insert template": "Вставить шаблон",
|
||
"Template text…": "Текст шаблона…",
|
||
"Subject: {subject}": "Тема: {subject}",
|
||
"Filters & rules": "Фильтры и правила",
|
||
"Filters unavailable": "Фильтры недоступны",
|
||
"Rules": "Правила",
|
||
"Rule name": "Название правила",
|
||
"New rule": "Новое правило",
|
||
"Delete rule": "Удалить правило",
|
||
"No filters yet": "Фильтров пока нет",
|
||
"Add condition": "Добавить условие",
|
||
"Remove condition": "Убрать условие",
|
||
"Add action": "Добавить действие",
|
||
"Remove action": "Убрать действие",
|
||
"all of the following match": "выполняются все условия",
|
||
"any of the following match": "выполняется любое из условий",
|
||
"contains": "содержит",
|
||
"does not contain": "не содержит",
|
||
"is": "равно",
|
||
"is not": "не равно",
|
||
"matches (wildcards * ?)": "совпадает с (шаблоны * ?)",
|
||
"does not match": "не совпадает с",
|
||
"matches regex": "совпадает с регулярным выражением",
|
||
"does not match regex": "не совпадает с регулярным выражением",
|
||
"exists": "существует",
|
||
"does not exist": "не существует",
|
||
"is larger than": "больше чем",
|
||
"is smaller than": "меньше чем",
|
||
"Stop processing more rules": "Прекратить обработку остальных правил",
|
||
"keep copy": "оставить копию",
|
||
"Forward to": "Переслать на",
|
||
"Reject with message": "Отклонить с сообщением",
|
||
"Scripts": "Скрипты",
|
||
"Scripts (advanced)": "Скрипты (для опытных)",
|
||
"Script name": "Название скрипта",
|
||
"New script": "Новый скрипт",
|
||
"Delete script": "Удалить скрипт",
|
||
"Sieve source": "Исходный код Sieve",
|
||
"Preview generated Sieve script": "Посмотреть созданный скрипт Sieve",
|
||
"Start with rules": "Начать с правил",
|
||
"Switch to rules?": "Перейти к правилам?",
|
||
"Create filter": "Создать фильтр",
|
||
"Filter messages like this": "Фильтровать похожие письма",
|
||
"Filter messages like this…": "Фильтровать похожие письма…",
|
||
"Also apply to existing messages in": "Применить и к письмам в",
|
||
"keyword (e.g. $important, work)": "ключевое слово (например, $important, work)",
|
||
"Other header…": "Другой заголовок…",
|
||
"Out of office": "Автоответ об отсутствии",
|
||
"Auto-reply enabled": "Автоответ включён",
|
||
|
||
// ── Security, sessions, notifications ──────────────────────────────
|
||
"Security & sessions": "Безопасность и сеансы",
|
||
"Password": "Пароль",
|
||
"Your password": "Ваш пароль",
|
||
"Current password": "Текущий пароль",
|
||
"New password": "Новый пароль",
|
||
"Confirm new password": "Подтвердите новый пароль",
|
||
"Current code": "Текущий код",
|
||
"Code from your authenticator": "Код из приложения-аутентификатора",
|
||
"Two-factor authentication": "Двухфакторная аутентификация",
|
||
"Turn off two-factor authentication": "Отключить двухфакторную аутентификацию",
|
||
"Your password alone will be enough to sign in again.": "Для входа снова будет достаточно одного пароля.",
|
||
"App passwords": "Пароли приложений",
|
||
"New app password for": "Новый пароль приложения для",
|
||
"Your new app password": "Ваш новый пароль приложения",
|
||
"Secret": "Секрет",
|
||
"Thunderbird on my laptop": "Thunderbird на ноутбуке",
|
||
"Active webmail sessions": "Активные сеансы веб-почты",
|
||
"Sign out": "Выйти",
|
||
"Sign out here": "Выйти здесь",
|
||
"Sign out all other sessions": "Завершить все остальные сеансы",
|
||
"Signed in as": "Вход выполнен как",
|
||
"This is my own device": "Это моё личное устройство",
|
||
"this device": "это устройство",
|
||
"Device": "Устройство",
|
||
"IP": "IP",
|
||
"Last active": "Последняя активность",
|
||
"Created": "Создан",
|
||
"Expires": "Истекает",
|
||
"Status": "Состояние",
|
||
"Online": "В сети",
|
||
"Reason": "Причина",
|
||
"Type": "Тип",
|
||
"Email or username": "Адрес или имя пользователя",
|
||
"Use your usual address as the username.": "В качестве имени пользователя укажите свой обычный адрес.",
|
||
"Fast, friendly webmail. Your mailbox, your way.": "Быстрая и удобная веб-почта. Ваш ящик — по-вашему.",
|
||
|
||
"Notifications": "Уведомления",
|
||
"Notifications are blocked in your browser settings.": "Уведомления заблокированы в настройках браузера.",
|
||
"Not supported in this browser.": "Не поддерживается в этом браузере.",
|
||
"Desktop notifications while ihasmail is open": "Системные уведомления, пока ihasmail открыт",
|
||
"Notify me even when ihasmail is closed": "Уведомлять, даже когда ihasmail закрыт",
|
||
"Play a sound for new mail": "Звук при новом письме",
|
||
"Test notification": "Проверить уведомление",
|
||
"Background notifications are on": "Фоновые уведомления включены",
|
||
"The tab title and favicon always show your unread Inbox count.": "Заголовок вкладки и значок всегда показывают число непрочитанных во входящих.",
|
||
"Live updates are delivered via JMAP push ({state}).": "Обновления в реальном времени приходят через JMAP push ({state}).",
|
||
"Shows a system notification when new mail arrives in your Inbox while the tab is in the background.": "Показывает системное уведомление, когда во входящие приходит письмо, а вкладка в фоне.",
|
||
|
||
// ── Editor, search, shortcuts, misc ────────────────────────────────
|
||
"Formatting": "Форматирование",
|
||
"Formatting options": "Параметры форматирования",
|
||
"Remove formatting": "Убрать форматирование",
|
||
"Bold (Ctrl+B)": "Полужирный (Ctrl+B)",
|
||
"Italic (Ctrl+I)": "Курсив (Ctrl+I)",
|
||
"Underline (Ctrl+U)": "Подчёркнутый (Ctrl+U)",
|
||
"Strikethrough": "Зачёркнутый",
|
||
"Highlight": "Выделение цветом",
|
||
"Bulleted list": "Маркированный список",
|
||
"Numbered list": "Нумерованный список",
|
||
"Increase indent": "Увеличить отступ",
|
||
"Decrease indent": "Уменьшить отступ",
|
||
"Align left": "По левому краю",
|
||
"Align right": "По правому краю",
|
||
"Center": "По центру",
|
||
"Quote": "Цитата",
|
||
"Code block": "Блок кода",
|
||
"Normal text": "Обычный текст",
|
||
"Insert link (Ctrl+K)": "Вставить ссылку (Ctrl+K)",
|
||
"Insert image": "Вставить изображение",
|
||
"Link": "Ссылка",
|
||
"List": "Список",
|
||
"Emoji": "Эмодзи",
|
||
"Write your message…": "Напишите письмо…",
|
||
"Search": "Поиск",
|
||
"Search mail": "Поиск по почте",
|
||
"Advanced search": "Расширенный поиск",
|
||
"Keyboard shortcuts": "Сочетания клавиш",
|
||
"Keyboard shortcuts (?)": "Сочетания клавиш (?)",
|
||
"Shortcuts": "Сочетания",
|
||
"Go to": "Перейти",
|
||
"Menu": "Меню",
|
||
"Close menu": "Закрыть меню",
|
||
"Options": "Параметры",
|
||
"Send options": "Параметры отправки",
|
||
"Name": "Имя",
|
||
"Email": "Адрес",
|
||
"Email address": "Адрес электронной почты",
|
||
"Description": "Описание",
|
||
"Location": "Место",
|
||
"Visibility": "Видимость",
|
||
"Private": "Личное",
|
||
"Work": "Работа",
|
||
"Loading…": "Загрузка…",
|
||
"None": "Нет",
|
||
"optional": "необязательно",
|
||
"Always show": "Всегда показывать",
|
||
"to": "кому",
|
||
"Received": "Получено",
|
||
"In-Reply-To": "In-Reply-To",
|
||
"References": "References",
|
||
"Add label / keyword": "Добавить ярлык или ключевое слово",
|
||
"Manage labels": "Управление ярлыками",
|
||
"Create “{name}”": "Создать «{name}»",
|
||
"Type a name to create your first label.": "Введите название, чтобы создать первый ярлык.",
|
||
"New label": "Новый ярлык",
|
||
"Delete label": "Удалить ярлык",
|
||
"Large attachments may be rejected by some servers": "Некоторые серверы отклоняют большие вложения",
|
||
"Images are stored in your Files (folder “ihasmail”) and embedded when you send.": "Изображения хранятся в ваших Файлах (папка «ihasmail») и вставляются при отправке.",
|
||
"Thanks for your message. I'm away until … and will reply when I'm back.": "Спасибо за письмо. Я отсутствую до … и отвечу после возвращения.",
|
||
"Automatically reply to people who email you while you're away. Each sender gets at most one reply.": "Автоматически отвечать тем, кто напишет вам во время отсутствия. Каждый отправитель получит не больше одного ответа.",
|
||
"Sort incoming mail automatically. Rules run on the server (Sieve), so they work for every client you use.": "Автоматически сортировать входящую почту. Правила выполняются на сервере (Sieve), поэтому работают во всех клиентах.",
|
||
"Canned responses you can insert into any message from the composer's template button.": "Готовые ответы, которые можно вставить в любое письмо кнопкой шаблонов в редакторе.",
|
||
"Create a rule to move newsletters to a folder, flag important senders, or forward mail.": "Создайте правило, чтобы складывать рассылки в папку, отмечать важных отправителей или пересылать почту.",
|
||
"Advanced: manage raw Sieve scripts. Only one script can be active at a time.": "Для опытных: работа со скриптами Sieve напрямую. Одновременно активен только один скрипт.",
|
||
"Only part of your filter script arrived.": "Скрипт фильтрации получен не полностью.",
|
||
"Your active script “{name}” was written by hand.": "Ваш активный скрипт «{name}» написан вручную.",
|
||
"Another script (“{name}”) is active. Saving rules here will activate the “ihasmail” script instead.": "Активен другой скрипт («{name}»). Если сохранить правила здесь, вместо него включится скрипт «ihasmail».",
|
||
"“{name}” will be deactivated (not deleted) and a new “ihasmail” script will take over.": "«{name}» будет отключён (не удалён), а его место займёт новый скрипт «ihasmail».",
|
||
"Sieve filtering is not available for this account.": "Фильтрация Sieve недоступна для этой учётной записи.",
|
||
"Sieve filtering is not enabled for this account.": "Фильтрация Sieve не включена для этой учётной записи.",
|
||
"Vacation responses are not available for this account.": "Автоответы об отсутствии недоступны для этой учётной записи.",
|
||
"This account does not have the JMAP calendars capability.": "У этой учётной записи нет возможности JMAP «календари».",
|
||
"This account does not have the JMAP contacts capability.": "У этой учётной записи нет возможности JMAP «контакты».",
|
||
"This account does not have the JMAP file storage capability.": "У этой учётной записи нет возможности JMAP «хранилище файлов».",
|
||
|
||
// ── Labels held in constants, translated where they render ─────────
|
||
"Add": "Добавить",
|
||
"Create subfolders": "Создавать вложенные папки",
|
||
"Dark": "Тёмная",
|
||
"Light": "Светлая",
|
||
"Match system": "Как в системе",
|
||
"Day.Month.Year": "День.Месяц.Год",
|
||
"Day/Month/Year": "День/Месяц/Год",
|
||
"Month/Day/Year": "Месяц/День/Год",
|
||
"Year-Month-Day (ISO 8601)": "Год-Месяц-День (ISO 8601)",
|
||
"Edit all": "Изменять всё",
|
||
"Edit contents": "Изменять содержимое",
|
||
"Edit own": "Изменять своё",
|
||
"Flag": "Отмечать",
|
||
"Mark read": "Отмечать прочитанным",
|
||
"Private props": "Личные свойства",
|
||
"Read": "Читать",
|
||
"Read events": "Читать события",
|
||
"RSVP": "Отвечать на приглашения",
|
||
"See free/busy": "Видеть занятость",
|
||
"Share": "Открывать доступ",
|
||
"Write": "Писать",
|
||
"Live updates connected": "Обновления в реальном времени подключены",
|
||
"Live updates reconnecting…": "Переподключение обновлений в реальном времени…",
|
||
"Live updates off — checking periodically instead": "Обновления в реальном времени выключены — идёт периодическая проверка",
|
||
"Mark as read / unread": "Отметить как прочитанное / непрочитанное",
|
||
"Star / unstar": "Отметить / снять отметку",
|
||
"Report spam / not spam": "Пометить как спам / не спам",
|
||
"Report spam": "Пометить как спам",
|
||
"Not spam": "Не спам",
|
||
"Nothing": "Ничего",
|
||
"Later today": "Сегодня позже",
|
||
"Tomorrow morning": "Завтра утром",
|
||
"Tomorrow afternoon": "Завтра днём",
|
||
"Monday morning": "В понедельник утром",
|
||
"Open draft": "Открыть черновик",
|
||
"Undo": "Отменить",
|
||
"Deleted Items": "Корзина",
|
||
"Choose a date": "Выберите дату",
|
||
"Choose a date and time": "Выберите дату и время",
|
||
"Pick date and time…": "Выбрать дату и время…",
|
||
"After": "После",
|
||
"Before": "До",
|
||
|
||
// ── Folder names shown for a JMAP role (see lib/mailboxName.ts) ────
|
||
"folder\u0004Inbox": "Входящие",
|
||
"folder\u0004Archive": "Архив",
|
||
"folder\u0004Drafts": "Черновики",
|
||
"folder\u0004Sent": "Отправленные",
|
||
"folder\u0004Deleted Items": "Корзина",
|
||
"folder\u0004Junk Mail": "Спам",
|
||
"folder\u0004Important": "Важное",
|
||
"folder\u0004All mail": "Вся почта",
|
||
"share sheet\u0004Share": "Поделиться",
|
||
"share sheet\u0004Share…": "Поделиться…",
|
||
"folder": "папка",
|
||
"“{name}” moved into “{parent}”": "«{name}» перемещена в «{parent}»",
|
||
"“{name}” moved to the top level": "«{name}» перемещена на верхний уровень",
|
||
"Could not move “{name}”: {reason}": "Не удалось переместить «{name}»: {reason}",
|
||
"Delete “{name}”?": "Удалить «{name}»?",
|
||
"Rename folder": "Переименовать папку",
|
||
"Search: {query}": "Поиск: {query}",
|
||
"No conversation selected": "Цепочка не выбрана",
|
||
"No message selected": "Письмо не выбрано",
|
||
"Drop here for the top level": "Перетащите сюда, чтобы вынести на верхний уровень",
|
||
|
||
// ── Longer prose ───────────────────────────────────────────────────
|
||
"Search mail (from:, to:, subject:, has:attachment, is:unread, in:, before:, after:)": "Поиск по почте (from:, to:, subject:, has:attachment, is:unread, in:, before:, after:)",
|
||
"Settings → Filters & rules": "Настройки → Фильтры и правила",
|
||
"Open the Mail view to see all shortcuts.": "Откройте раздел «Почта», чтобы увидеть все сочетания клавиш.",
|
||
"Gmail-style shortcuts are always on. Press {key} anywhere to see this list.": "Сочетания клавиш в стиле Gmail всегда включены. Нажмите {key} в любом месте, чтобы увидеть этот список.",
|
||
"Select a conversation to read it here · Press {key} for shortcuts": "Выберите цепочку, чтобы прочитать её здесь · {key} — сочетания клавиш",
|
||
"Select a message to read it here · Press {key} for shortcuts": "Выберите письмо, чтобы прочитать его здесь · {key} — сочетания клавиш",
|
||
"Tip: press {key} on a conversation to apply labels. Search with {operator}.": "Совет: нажмите {key} на цепочке, чтобы присвоить ярлыки. Ищите через {operator}.",
|
||
"A fast, friendly, open-source webmail for {server}, built on JMAP.": "Быстрая и удобная веб-почта с открытым кодом для {server}, построенная на JMAP.",
|
||
"Defaults for the calendar views and new events.": "Значения по умолчанию для видов календаря и новых событий.",
|
||
"Replies will go to this address instead of the From address": "Ответы будут приходить на этот адрес, а не на адрес отправителя",
|
||
"Replies to mail sent from this identity go here instead of the From address.": "Ответы на письма из этого профиля приходят сюда, а не на адрес отправителя.",
|
||
"New identities must use an address this account is allowed to send from (aliases configured on the server).": "Новый профиль должен использовать адрес, с которого этой учётной записи разрешено отправлять (псевдонимы настраиваются на сервере).",
|
||
"Not offered when composing. It still receives mail, and you can still send from it by showing it again.": "Не предлагается при написании письма. Адрес по-прежнему принимает почту, и с него снова можно отправлять, если показать его обратно.",
|
||
"Each identity is a sender address with its own name, Reply-To and signature. The default identity is preselected when you compose; set a Reply-To when replies should go somewhere other than the From address.": "Каждый профиль — это адрес отправителя со своим именем, обратным адресом и подписью. Основной профиль подставляется при написании письма; укажите обратный адрес, если ответы должны приходить не на адрес отправителя.",
|
||
"This signature is larger than the server's {limit}-byte limit. ihasmail will keep the full version in your Files and store a short text fallback on the server — other mail clients will see the plain-text version.": "Эта подпись больше серверного предела в {limit} байт. ihasmail сохранит полную версию в ваших Файлах, а на сервере оставит короткий текстовый вариант — другие почтовые клиенты увидят именно его.",
|
||
"Outlook-style categories you can assign to events from the right-click menu or the event editor. The category name is stored on the event, so it syncs to other clients.": "Категории в стиле Outlook, которые можно присваивать событиям через контекстное меню или редактор события. Название категории хранится в самом событии и синхронизируется с другими клиентами.",
|
||
"Plain-text mail already follows the theme. With this on, HTML mail that brings no colours of its own does as well, instead of sitting on a white card. Messages that style themselves are left exactly as the sender designed them.": "Письма в обычном тексте уже следуют теме. С этой настройкой ей следуют и HTML-письма без собственных цветов, а не показываются на белом фоне. Письма с собственным оформлением остаются ровно такими, какими их задумал отправитель.",
|
||
"This is separate from {setting} in General, which decides how dates, times and numbers are written. You can read an English interface with German dates, or the other way round.": "Это не то же самое, что {setting} в разделе «Общие», где задаётся, как пишутся даты, время и числа. Можно читать английский интерфейс с русскими датами — или наоборот.",
|
||
"On a touchscreen, drag a message sideways to act on it. Each direction can do one thing, or nothing. These follow your account, so a phone and a tablet agree; a mouse ignores them and keeps dragging messages into folders instead.": "На сенсорном экране смахните письмо в сторону, чтобы выполнить над ним действие. Каждое направление может делать что-то одно — или ничего. Настройка привязана к учётной записи, поэтому телефон и планшет ведут себя одинаково; мышь её игнорирует, и письма по-прежнему перетаскиваются в папки.",
|
||
"This screen has no touchscreen, so nothing here changes what it does. Your phone or tablet will pick these up.": "У этого экрана нет сенсорного ввода, поэтому здесь ничего не изменится. Настройку подхватят телефон или планшет.",
|
||
"Holding a message selects it, and holding a folder opens its menu. Pull the top of the message list down to check for new mail.": "Долгое нажатие на письме выделяет его, а на папке — открывает её меню. Потяните список писем вниз, чтобы проверить почту.",
|
||
"A receipt tells whoever asked that this address is live and when the message was read, and the sender chooses where it goes — so there is no automatic option. Bulk mail, mailing lists and anything marked auto-submitted are never offered one at all.": "Уведомление сообщает запросившему, что адрес действующий и когда письмо было прочитано, а отправитель сам выбирает, куда его отправить, — поэтому автоматического варианта нет. Для массовых рассылок, списков рассылки и всего помеченного как отправленное автоматически оно не предлагается вовсе.",
|
||
"This browser cannot register apps for {scheme} links. Safari, in particular, has no such API — you can still make ihasmail the default from your operating system if you install it as an app.": "Этот браузер не умеет регистрировать программы для ссылок {scheme}. В частности, в Safari нет такого интерфейса — но ihasmail всё равно можно сделать программой по умолчанию средствами операционной системы, установив его как приложение.",
|
||
"Registering for {scheme} links requires a secure (HTTPS) connection.": "Для регистрации ссылок {scheme} нужно защищённое соединение (HTTPS).",
|
||
"Open {scheme} links — in web pages, documents and other apps — in ihasmail instead of a desktop mail client. Your browser will ask you to confirm, and you can change it later in its own settings (Chrome: Settings › Privacy and security › Site settings › Protocol handlers; Firefox: Settings › General › Applications).": "Открывать ссылки {scheme} — на веб-страницах, в документах и других программах — в ihasmail, а не в почтовой программе на компьютере. Браузер попросит подтверждение, и позже это можно изменить в его настройках (Chrome: Настройки › Конфиденциальность и безопасность › Настройки сайтов › Обработчики протоколов; Firefox: Настройки › Основные › Приложения).",
|
||
"Requested in this browser. Whether it took effect is up to the browser — check its settings if mail links still open elsewhere.": "Запрошено в этом браузере. Сработало ли это, решает он сам — проверьте его настройки, если почтовые ссылки по-прежнему открываются в другом месте.",
|
||
"For a system-wide default, install ihasmail as an app first (in Chrome: the install icon in the address bar). Your operating system can then offer ihasmail directly wherever it asks which mail app to use.": "Чтобы задать программу по умолчанию для всей системы, сначала установите ihasmail как приложение (в Chrome — значок установки в адресной строке). После этого операционная система сможет предлагать ihasmail везде, где спрашивает, какой почтовой программой воспользоваться.",
|
||
"Needs a browser with the Push API and a mail server that publishes a push key.": "Нужен браузер с Push API и почтовый сервер, публикующий push-ключ.",
|
||
"Your mail server delivers these straight to your browser, so they arrive with no ihasmail tab open, naming the sender and subject. Your browser still has to be running — if you quit it completely, notifications wait and arrive when you open it again.": "Почтовый сервер доставляет их прямо в браузер, поэтому они приходят без открытой вкладки ihasmail и содержат отправителя и тему. Браузер при этом должен быть запущен: если закрыть его полностью, уведомления подождут и придут при следующем запуске.",
|
||
"Your mail server can wake this browser, but will not include the sender or subject. Your browser still has to be running.": "Почтовый сервер может разбудить этот браузер, но не сообщит отправителя и тему. Браузер при этом должен быть запущен.",
|
||
"This is what a new-mail notification looks like.": "Так выглядит уведомление о новом письме.",
|
||
"You're signed in as {user}. Your password is never stored in the browser; the server keeps it encrypted per-session for talking to Stalwart.": "Вы вошли как {user}. Пароль никогда не хранится в браузере: сервер держит его в зашифрованном виде на время сеанса, чтобы общаться со Stalwart.",
|
||
"App passwords are managed by your mail administrator.": "Паролями приложений управляет ваш почтовый администратор.",
|
||
"Changing your password signs out your other webmail sessions. Any app passwords keep working.": "Смена пароля завершает остальные сеансы веб-почты. Пароли приложений продолжают работать.",
|
||
"This account has two-factor authentication on. ihasmail can't sign you in with a code yet, so signing in on another device needs an app password — or you can turn two-factor authentication off here.": "Для этой учётной записи включена двухфакторная аутентификация. ihasmail пока не умеет входить по коду, поэтому для входа на другом устройстве нужен пароль приложения — либо двухфакторную аутентификацию можно отключить здесь.",
|
||
"A separate password for a mail app or device, which you can revoke on its own. App passwords skip two-factor codes, so they keep working in apps that can't ask for one.": "Отдельный пароль для почтовой программы или устройства, который можно отозвать по отдельности. Пароли приложений обходят двухфакторные коды и поэтому работают там, где запросить код невозможно.",
|
||
"Copy it into {name} now — it isn't shown again.": "Скопируйте его в {name} сейчас — больше он не показывается.",
|
||
"No other users found in the directory, so nobody new can be added. Sharing already in place is listed below and can still be removed.": "В каталоге не найдено других пользователей, поэтому добавить некого. Уже открытый доступ перечислен ниже, и его по-прежнему можно закрыть.",
|
||
"Stalwart does not publish its version number to mail clients, so ihasmail reports the edition where the server gives one. ihasmail requires 0.16 or newer, and sign-in refuses anything older.": "Stalwart не сообщает почтовым клиентам номер версии, поэтому ihasmail показывает редакцию, если сервер её называет. ihasmail требует версию 0.16 или новее, и вход с более старой не выполняется.",
|
||
"It {damage}, so the rules in it can't be shown or edited — saving what did arrive would write it back over the rest. Reload the page to try again. Your rules are still on the server; nothing here has changed them.": "Он {damage}, поэтому правила в нём нельзя показать или изменить: сохранение полученной части затёрло бы остальное. Перезагрузите страницу и попробуйте снова. Ваши правила остаются на сервере, здесь их ничто не меняло.",
|
||
"The visual rule editor only manages scripts it created. You can edit the script in the {tab} tab, or start fresh with rules (the existing script will be kept but deactivated).": "Визуальный редактор правил работает только со скриптами, которые создал сам. Скрипт можно изменить на вкладке {tab} или начать заново с правил (существующий скрипт сохранится, но будет отключён).",
|
||
"Your filter script {damage}, so only part of it arrived. Adding a rule would write that part back over the whole thing. Reload the page and try again.": "Ваш скрипт фильтрации {damage}, поэтому получена только его часть. Добавление правила затёрло бы этой частью весь скрипт. Перезагрузите страницу и попробуйте снова.",
|
||
"Your filter script couldn't be read just now, so adding a rule would risk overwriting it. Reload the page and try again.": "Скрипт фильтрации сейчас не удалось прочитать, поэтому добавление правила рискует его перезаписать. Перезагрузите страницу и попробуйте снова.",
|
||
"Your active Sieve script was written by hand, so rules can't be added automatically. Open {where} to edit the script or switch to managed rules.": "Ваш активный скрипт Sieve написан вручную, поэтому правила нельзя добавить автоматически. Откройте {where}, чтобы изменить скрипт или перейти к управляемым правилам.",
|
||
"Only languages ihasmail has been translated into appear here, so this list grows as translations land rather than ahead of them — a language offered without strings behind it would leave the page claiming to be in a language it is not.": "Здесь показаны только языки, на которые ihasmail переведён, поэтому список растёт вместе с переводами, а не опережает их: язык без текстов заставил бы страницу утверждать, что она написана на языке, которым не является.",
|
||
"tell us about it": "сообщите нам",
|
||
"This translation was generated by AI and has not been checked by a native speaker, so it is marked Beta until somebody who speaks it signs it off. Anything that reads wrongly is worth reporting — {report}.": "Этот перевод сделан ИИ и не проверен носителем языка, поэтому помечен как Beta до тех пор, пока кто-нибудь его не подтвердит. Обо всём, что звучит неправильно, стоит сообщить — {report}.",
|
||
"ihasmail's own version is the date of the commit it was built from, followed by where that commit came from: {example} was built from a commit dated the 30th of August 2026 that arrived through pull request 129. A commit that did not come through one carries its short SHA instead — {sha}. The version deliberately says nothing about Stalwart; what this build needs from the server is the line above.": "Собственная версия ihasmail — это дата коммита, из которого он собран, и указание, откуда этот коммит взялся: {example} собран из коммита от 30 августа 2026 года, пришедшего через pull request 129. Коммит, пришедший иначе, несёт вместо этого короткий SHA — {sha}. Версия намеренно ничего не сообщает о Stalwart; то, что этой сборке нужно от сервера, указано строкой выше.",
|
||
|
||
// ── Composer status, calendar title ────────────────────────────────
|
||
"New message": "Новое письмо",
|
||
"New mail": "Новое письмо",
|
||
"Could not do that — open ihasmail and try again": "Не удалось — откройте ihasmail и повторите попытку",
|
||
"Sending…": "Отправка…",
|
||
"Saving…": "Сохранение…",
|
||
"Error": "Ошибка",
|
||
"Saved {when}": "Сохранено {when}",
|
||
"Unsaved": "Не сохранено",
|
||
"Agenda from {date}": "Расписание с {date}",
|
||
|
||
// ── Toasts, dialogs and computed labels (second extraction pass) ───
|
||
"(no subject)": "(без темы)",
|
||
"(skipped: {actions})": "(пропущено: {actions})",
|
||
"Activate": "Включить",
|
||
"Add a contact or import a vCard file.": "Добавьте контакт или импортируйте файл vCard.",
|
||
"Added to your calendar": "Добавлено в ваш календарь",
|
||
"All events in this calendar will be deleted.": "Все события этого календаря будут удалены.",
|
||
"All occurrences": "Все повторения",
|
||
"An occurrence cannot be moved to another calendar on its own": "Отдельное повторение нельзя перенести в другой календарь",
|
||
"Anything signed in with this password stops working immediately.": "Всё, что вошло с этим паролем, сразу перестанет работать.",
|
||
"App password revoked": "Пароль приложения отозван",
|
||
"Applies to every date in the series.": "Применяется ко всем датам серии.",
|
||
"Applies to this date only.": "Применяется только к этой дате.",
|
||
"Apply to series": "Применить ко всей серии",
|
||
"Applying filter to existing messages…": "Фильтр применяется к существующим письмам…",
|
||
"Attachments are still uploading": "Вложения ещё загружаются",
|
||
"Calendar saved": "Календарь сохранён",
|
||
"Categorised as {name}": "Назначена категория «{name}»",
|
||
"Category cleared": "Категория снята",
|
||
"Change this event?": "Изменить это событие?",
|
||
"Choose a calendar": "Выберите календарь",
|
||
"Choose an address book": "Выберите адресную книгу",
|
||
"Colour updated": "Цвет изменён",
|
||
"Contact created": "Контакт создан",
|
||
"Contact deleted": "Контакт удалён",
|
||
"Contact saved": "Контакт сохранён",
|
||
"Copied": "Скопировано",
|
||
"Copy of {title}": "Копия: {title}",
|
||
"Could not cancel: {error}": "Не удалось отменить: {error}",
|
||
"Could not copy": "Не удалось скопировать",
|
||
"Could not copy the address": "Не удалось скопировать адрес",
|
||
"Could not empty folder: {error}": "Не удалось очистить папку: {error}",
|
||
"Could not load source: {error}": "Не удалось загрузить исходный текст: {error}",
|
||
"Could not share: {error}": "Не удалось поделиться: {error}",
|
||
"Could not mark as read: {error}": "Не удалось отметить как прочитанное: {error}",
|
||
"Could not save draft: {error}": "Не удалось сохранить черновик: {error}",
|
||
"Could not save filter: {error}": "Не удалось сохранить фильтр: {error}",
|
||
"Could not save filters: {error}": "Не удалось сохранить фильтры: {error}",
|
||
"Could not send the receipt: {error}": "Не удалось отправить уведомление о прочтении: {error}",
|
||
"Could not sign in.": "Не удалось войти.",
|
||
"Could not store image: {error}": "Не удалось сохранить изображение: {error}",
|
||
"Could not update labels: {error}": "Не удалось обновить метки: {error}",
|
||
"Could not update the Scheduled folder: {error}": "Не удалось обновить папку «Отложенные»: {error}",
|
||
"Could not update: {error}": "Не удалось обновить: {error}",
|
||
"Create": "Создать",
|
||
"Create an address book first": "Сначала создайте адресную книгу",
|
||
"Custom colour removed": "Свой цвет снят",
|
||
"Deactivate": "Выключить",
|
||
"Delete failed: {error}": "Не удалось удалить: {error}",
|
||
"Delete forever": "Удалить безвозвратно",
|
||
"Delete script “{name}”?": "Удалить сценарий «{name}»?",
|
||
"Delete this event?": "Удалить это событие?",
|
||
"Delete this identity?": "Удалить этот профиль отправителя?",
|
||
"Delete {name}?": "Удалить {name}?",
|
||
"Deleted": "Удалено",
|
||
"Deletes the whole series. This cannot be undone.": "Удаляет всю серию. Отменить это будет нельзя.",
|
||
"Did you forget the attachment?": "Не забыли вложение?",
|
||
"Discard": "Не сохранять",
|
||
"Discard this draft?": "Удалить этот черновик?",
|
||
"Edit calendar": "Изменить календарь",
|
||
"Edit event": "Изменить событие",
|
||
"Edit identity": "Изменить профиль отправителя",
|
||
"Edit template": "Изменить шаблон",
|
||
"End must be after start": "Окончание должно быть позже начала",
|
||
"Event duplicated": "Событие продублировано",
|
||
"Everything inside it goes too.": "Всё, что внутри, тоже будет удалено.",
|
||
"Filter created": "Фильтр создан",
|
||
"Filter created — it will run on new mail": "Фильтр создан — он будет работать для новых писем",
|
||
"Filter saved": "Фильтр сохранён",
|
||
"Filter saved — it will run on new mail": "Фильтр сохранён — он будет работать для новых писем",
|
||
"Filter saved, but applying it failed: {error}": "Фильтр сохранён, но применить его не удалось: {error}",
|
||
"Filters saved": "Фильтры сохранены",
|
||
"Folder changed, but its filter rules could not be updated: {error}": "Папка изменена, но её правила фильтрации обновить не удалось: {error}",
|
||
"Folder created": "Папка создана",
|
||
"Folder deleted": "Папка удалена",
|
||
"Folder name": "Имя папки",
|
||
"Folder name (use / for a subfolder, e.g. Work/Invoices)": "Имя папки (/ создаёт вложенную папку, например Работа/Счета)",
|
||
"Folder name (use / for subfolders, e.g. Work/Invoices)": "Имя папки (/ создаёт вложенные папки, например Работа/Счета)",
|
||
"Folder “{name}” created": "Папка «{name}» создана",
|
||
"Forwarded": "Переслано",
|
||
"Hand to the server, held until {when} (Ctrl+Enter)": "Передать серверу и удержать до {when} (Ctrl+Enter)",
|
||
"Hide": "Скрыть",
|
||
"Hide quoted text": "Скрыть цитируемый текст",
|
||
"Hide this from the compose picker": "Не предлагать при написании",
|
||
"Identity saved": "Профиль отправителя сохранён",
|
||
"Images in signatures need the Files feature, which this account doesn't have.": "Для изображений в подписи нужны «Файлы», которых у этой учётной записи нет.",
|
||
"Invalid address: {address}": "Неверный адрес: {address}",
|
||
"Invalid username or password.": "Неверное имя пользователя или пароль.",
|
||
"It belongs to a change that was applied to this and all later occurrences, which the server will only edit as a whole. Apply to the entire series instead?": "Она относится к изменению, применённому к этому и всем последующим повторениям, а сервер правит такое изменение только целиком. Применить ко всей серии?",
|
||
"Label name": "Название метки",
|
||
"Larger than {size} MB limit": "Больше предела в {size} МБ",
|
||
"Message sent": "Письмо отправлено",
|
||
"Move failed: {error}": "Не удалось переместить: {error}",
|
||
"Move “{name}”": "Переместить «{name}»",
|
||
"Moved": "Перемещено",
|
||
"Network error. Please check your connection.": "Ошибка сети. Проверьте подключение.",
|
||
"New all-day event on {date}": "Новое событие на весь день {date}",
|
||
"New event at {time}": "Новое событие в {time}",
|
||
"New identity": "Новый профиль отправителя",
|
||
"No Archive folder is set yet.": "Папка архива ещё не задана.",
|
||
"Create one": "Создать",
|
||
"Could not set up an Archive folder: {error}": "Не удалось настроить папку архива: {error}",
|
||
"Role": "Роль",
|
||
"Drafts": "Черновики",
|
||
"Sent": "Отправленные",
|
||
"The server does not allow this role to be changed.": "Сервер не позволяет изменить эту роль.",
|
||
"Folder role updated": "Роль папки обновлена",
|
||
"No contacts yet": "Контактов пока нет",
|
||
"No longer shared": "Общий доступ прекращён",
|
||
"No matches": "Совпадений нет",
|
||
"No new mail in your inbox.": "Новых писем во входящих нет.",
|
||
"No results": "Ничего не найдено",
|
||
"Nothing here": "Здесь пусто",
|
||
"Only Deleted Items and Junk Mail can be emptied.": "Очистить можно только корзину и спам.",
|
||
"Please add at least one recipient": "Добавьте хотя бы одного получателя",
|
||
"Please use an image under 512 KB for signatures.": "Для подписи используйте изображение меньше 512 КБ.",
|
||
"Preview": "Просмотр",
|
||
"Read receipt sent": "Уведомление о прочтении отправлено",
|
||
"Remove attachments that failed to upload first": "Сначала удалите вложения, которые не загрузились",
|
||
"Removed from calendar": "Удалено из календаря",
|
||
"Removes this date and leaves the rest of the series.": "Удаляет эту дату и оставляет остальную серию.",
|
||
"Rename address book": "Переименовать адресную книгу",
|
||
"Rename category": "Переименовать категорию",
|
||
"Replied": "Есть ответ",
|
||
"Report spam (!)": "Пожаловаться на спам (!)",
|
||
"Response sent": "Ответ отправлен",
|
||
"Revoke “{name}”?": "Отозвать «{name}»?",
|
||
"Script has errors": "В сценарии есть ошибки",
|
||
"Script is valid": "Сценарий корректен",
|
||
"Script name is required": "Нужно указать имя сценария",
|
||
"Script saved": "Сценарий сохранён",
|
||
"Send (Ctrl+Enter)": "Отправить (Ctrl+Enter)",
|
||
"Send anyway": "Всё равно отправить",
|
||
"Send cancelled — the message is back in Drafts": "Отправка отменена — письмо вернулось в черновики",
|
||
"Send failed: {error}": "Не удалось отправить: {error}",
|
||
"Send invites": "Отправить приглашения",
|
||
"Send scheduled for {when}": "Отправка запланирована на {when}",
|
||
"Send without a subject?": "Отправить без темы?",
|
||
"Share “{name}”": "Открыть доступ к «{name}»",
|
||
"Sharing updated": "Общий доступ обновлён",
|
||
"Show": "Показать",
|
||
"Show quoted text": "Показать цитируемый текст",
|
||
"Show this in the compose picker": "Предлагать при написании",
|
||
"Sign out other sessions?": "Завершить другие сеансы?",
|
||
"Sign out others": "Завершить другие",
|
||
"Stop sharing “{name}”?": "Закрыть общий доступ к «{name}»?",
|
||
"Switch to {theme}": "Переключить на {theme}",
|
||
"Template": "Шаблон",
|
||
"Template name": "Название шаблона",
|
||
"The contacts in it go too.": "Контакты внутри тоже будут удалены.",
|
||
"The default identity is always offered when composing": "Профиль по умолчанию всегда предлагается при написании",
|
||
"The new passwords don't match": "Новые пароли не совпадают",
|
||
"The server scheduled this for {when}, not the time requested.": "Сервер запланировал это на {when}, а не на запрошенное время.",
|
||
"This date cannot be changed on its own": "Эту дату нельзя изменить отдельно",
|
||
"This occurrence": "Только это повторение",
|
||
"Too many attempts. Please wait a few minutes and try again.": "Слишком много попыток. Подождите несколько минут и попробуйте снова.",
|
||
"Try another search.": "Попробуйте другой запрос.",
|
||
"Try different keywords or filters.": "Попробуйте другие слова или фильтры.",
|
||
"Two-factor authentication is off": "Двухфакторная аутентификация выключена",
|
||
"Undo window: {seconds}s": "Время на отмену: {seconds} с",
|
||
"You're all caught up": "Всё прочитано",
|
||
"Your browser refused the request: {error}": "Браузер отклонил запрос: {error}",
|
||
"Your browser will ask whether to open mail links in ihasmail": "Браузер спросит, открывать ли почтовые ссылки в ihasmail",
|
||
"Your message mentions an attachment, but nothing is attached.": "В письме упомянуто вложение, но ничего не приложено.",
|
||
"event": "событие",
|
||
"Hide password": "Скрыть пароль",
|
||
"Show password": "Показать пароль",
|
||
"Settings reset to defaults": "Настройки сброшены к значениям по умолчанию",
|
||
"Removed. Mail links will open in whatever your browser falls back to.": "Удалено. Почтовые ссылки будут открываться там, куда переключится браузер.",
|
||
"Edit rule": "Изменить правило",
|
||
"Address copied": "Адрес скопирован",
|
||
"Search or create label": "Найдите или создайте метку",
|
||
"New label name": "Название новой метки",
|
||
"That folder no longer exists. Showing your inbox instead.": "Этой папки больше нет. Показаны входящие.",
|
||
"Labels updated": "Метки обновлены",
|
||
"Unsubscribe message prepared — just hit Send": "Письмо об отписке готово — осталось нажать «Отправить»",
|
||
"Maximize": "Развернуть",
|
||
"Full screen": "Во весь экран",
|
||
"Resize panes": "Изменить размер панелей",
|
||
"QR code": "QR-код",
|
||
"Draft discarded": "Черновик удалён",
|
||
"Draft saved": "Черновик сохранён",
|
||
"Emptying folder…": "Папка очищается…",
|
||
"Nothing unread here": "Здесь нет непрочитанного",
|
||
// ── Added after the first translation pass ──────────────────────────
|
||
// Features that shipped after the catalogues were written, so these
|
||
// strings had no entry here and fell back to English. Reported by a
|
||
// native speaker reviewing the German catalogue (#247); every language
|
||
// had the same gap. The keyboard bindings among them register their
|
||
// group and description in English at the call site and are translated
|
||
// at render.
|
||
" and {count} more": " и ещё {count}",
|
||
"10 people or more": "10 человек или больше",
|
||
"20 people or more": "20 человек или больше",
|
||
"5 people or more": "5 человек или больше",
|
||
"50 people or more": "50 человек или больше",
|
||
"A banner on any message whose sender is not on one of your own domains.": "Плашка на каждом письме, отправитель которого не принадлежит одному из ваших доменов.",
|
||
"A calendar of its own, derived from the birthdays already on your contact cards. Nothing is written anywhere — the dates stay on the cards, and an event disappears when the contact does or the birthday is cleared. It can be hidden from the calendar’s own sidebar without turning it off here.": "Отдельный календарь, построенный по дням рождения, которые уже есть в карточках контактов. Никуда ничего не записывается: даты остаются в карточках, а событие исчезает вместе с контактом или после удаления даты рождения. Его можно скрыть на боковой панели календаря, не отключая здесь.",
|
||
"A calendar published at a URL — a timetable, a rota, a public holiday list. It is read-only, refreshed when you open the calendar, and never stored: the events are fetched and kept only for as long as this tab is open.": "Календарь, опубликованный по адресу: расписание, график дежурств, список праздников. Он доступен только для чтения, обновляется при открытии календаря и нигде не сохраняется: события загружаются и хранятся только пока открыта эта вкладка.",
|
||
"A link whose text names one domain and whose destination is another is always flagged, even where the destination is trusted — being trusted is not the same as being the place the text claimed.": "Ссылка, в тексте которой указан один домен, а ведёт она на другой, отмечается всегда, даже если домен назначения доверенный: быть доверенным и быть тем местом, которое обещал текст, — разные вещи.",
|
||
"Actions": "Действия",
|
||
"Added from a message, and removable here — previously the only way to undo one was to find another message from the same sender.": "Добавлено из письма и удаляется здесь: раньше отменить это можно было, только найдя другое письмо того же отправителя.",
|
||
"Added here, or from the dialog when a link is opened. A domain also covers its subdomains.": "Добавляется здесь или в диалоге при открытии ссылки. Домен включает и свои поддомены.",
|
||
"Agenda view": "Список дел",
|
||
"All three start switched off. A client that begins by interrupting is one people learn to click through, and a warning clicked through without reading costs the same attention and buys nothing.": "Все три изначально выключены. Клиент, который начинает с того, что прерывает вас, приучает закрывать предупреждения не читая, а закрытое не глядя предупреждение отнимает столько же внимания и не даёт ничего.",
|
||
"All {n} in {folder} are selected.": "Выбраны все {n} в папке {folder}.",
|
||
"All {n} on this page are selected.": "Выбраны все {n} на этой странице.",
|
||
"Also count these domains as inside": "Считать внутренними также эти домены",
|
||
"Always": "Всегда",
|
||
"Always showing images from": "Всегда показывать изображения от",
|
||
"An image loaded from a sender's server tells them the message was opened, when, and from roughly where. Approved images are fetched by ihasmail's own server rather than the browser, so the sender learns none of those.": "Изображение, загруженное с сервера отправителя, сообщает ему, что письмо открыли, когда и примерно откуда. Разрешённые изображения загружает сервер ihasmail, а не браузер, поэтому отправитель не узнаёт ничего из этого.",
|
||
"Applies to": "Применяется к",
|
||
"Archive and next": "Архивировать и далее",
|
||
"Archive by month": "Архивировать по месяцам",
|
||
"Archive by year": "Архивировать по годам",
|
||
"Archive failed: {error}": "Не удалось архивировать: {error}",
|
||
"Archive to {folder}": "Архивировать в {folder}",
|
||
"Ask before opening a link in a message": "Спрашивать перед открытием ссылки в письме",
|
||
"Ask before sending outside": "Спрашивать перед отправкой наружу",
|
||
"Ask before sending to a large group": "Спрашивать перед отправкой большой группе",
|
||
"Back to the event": "Назад к событию",
|
||
"Before it happens": "Прежде чем это произойдёт",
|
||
"Birthdays": "Дни рождения",
|
||
"By sender": "По отправителю",
|
||
"By subject": "По теме",
|
||
"Choose…": "Выбрать…",
|
||
"Classic": "Классическая",
|
||
"Click to move the event": "Нажмите, чтобы переместить событие",
|
||
"Close without saving?": "Закрыть без сохранения?",
|
||
"Compose as new": "Написать как новое письмо",
|
||
"Compose new message": "Написать новое письмо",
|
||
"Conversation": "Цепочка",
|
||
"Conversation moved to {folder}": "Цепочка перемещена в {folder}",
|
||
"Could not be read": "Не удалось прочитать",
|
||
"Could not import this file: {error}": "Не удалось импортировать этот файл: {error}",
|
||
"Could not load this file.": "Не удалось загрузить этот файл.",
|
||
"Could not read this calendar: {reason}": "Не удалось прочитать этот календарь: {reason}",
|
||
"Could not read winmail.dat. The original is still attached below.": "Не удалось прочитать winmail.dat. Оригинал по-прежнему приложен ниже.",
|
||
"Counts people rather than headers, so one address in To and nine in Cc is a message to ten. Catches a reply-all onto a long thread.": "Считает людей, а не заголовки: один адрес в «Кому» и девять в «Копия» — это письмо десятерым. Ловит ответ всем в длинной цепочке.",
|
||
"Date received": "Дата получения",
|
||
"Date sent": "Дата отправки",
|
||
"Day view": "День",
|
||
"Palettes named after another project are that project's work, used under its own licence; the shades between their published colours are derived, and every one is checked for contrast. The accent colour below still applies over any of them.": "Палитры, названные в честь другого проекта, созданы этим проектом и используются по его собственной лицензии; оттенки между опубликованными цветами выводятся расчётом, и каждый из них проверяется на контраст. Акцентный цвет ниже по-прежнему применяется поверх любой из них.",
|
||
"Earlier": "Раньше",
|
||
"Every folder": "Все папки",
|
||
"Everyone addressed will receive this.": "Это получат все указанные адресаты.",
|
||
"File contents": "Содержимое файла",
|
||
"Filled in when the template is inserted, so you can edit the result before sending. One that cannot be answered yet — a recipient's name on a message you have not addressed — is left in the body as written, rather than becoming a blank.": "Подставляется при вставке шаблона, так что результат можно отредактировать перед отправкой. То, что пока определить нельзя, — например, имя получателя в письме, у которого ещё нет адресата, — остаётся в тексте как написано, а не превращается в пустоту.",
|
||
"Forward as attachment": "Переслать вложением",
|
||
"From the birthdays on your contacts. Nothing is stored.": "По дням рождения из ваших контактов. Ничего не сохраняется.",
|
||
"Go to Calendar": "Перейти к календарю",
|
||
"Go to Contacts": "Перейти к контактам",
|
||
"Go to Drafts": "Перейти к черновикам",
|
||
"Go to Files": "Перейти к файлам",
|
||
"Go to Inbox": "Перейти во «Входящие»",
|
||
"Go to Sent": "Перейти в «Отправленные»",
|
||
"Go to Settings": "Перейти к настройкам",
|
||
"Go to Starred": "Перейти к отмеченным",
|
||
"Import iCAL file…": "Импортировать файл iCAL…",
|
||
"Labels are IMAP keywords stored on your messages, so every other client sees them. Names, colours and nesting are ihasmail’s own and follow your account. Nesting is display only — it rewrites nothing in the mailbox.": "Ярлыки — это ключевые слова IMAP, которые хранятся на письмах, поэтому их видит любой другой клиент. Названия, цвета и вложенность принадлежат самому ihasmail и следуют за вашей учётной записью. Вложенность влияет только на отображение и ничего не переписывает в почтовом ящике.",
|
||
"Largest first": "Сначала большие",
|
||
"Later": "Позже",
|
||
"Light or dark": "Светлая или тёмная",
|
||
"Mark messages from outside": "Отмечать письма извне",
|
||
"Marked as spam": "Помечено как спам",
|
||
"Message order": "Порядок писем",
|
||
"Month view": "Месяц",
|
||
"More ways to send this": "Другие способы отправки",
|
||
"Names the outside recipients and asks, rather than refusing.": "Называет внешних получателей и спрашивает, а не отказывает.",
|
||
"Navigation": "Навигация",
|
||
"Nested under": "Вложено в",
|
||
"Never": "Никогда",
|
||
"Never ask": "Никогда не спрашивать",
|
||
"Newest first": "Сначала новые",
|
||
"Next conversation": "Следующая цепочка",
|
||
"Next period": "Следующий период",
|
||
"No availability information for {who}": "Нет сведений о занятости для {who}",
|
||
"No files inside — it carries only the formatted copy of the message.": "Внутри нет файлов — только форматированная копия письма.",
|
||
"No verdict recorded": "Решение не записано",
|
||
"Nobody here has free/busy on this server, so none of these rows can say whether anyone is free.": "Ни у кого здесь нет сведений о занятости на этом сервере, поэтому ни одна из строк не может сказать, свободен ли кто-либо.",
|
||
"Nothing (top level)": "Ничего (верхний уровень)",
|
||
"Now, on your clock": "Сейчас, по вашим часам",
|
||
"Oldest first": "Сначала старые",
|
||
"Only the beginning is shown — download the file for the rest.": "Показано только начало — скачайте файл, чтобы увидеть остальное.",
|
||
"Only when it has unread mail": "Только при непрочитанных письмах",
|
||
"Open a link to {domain}?": "Открыть ссылку на {domain}?",
|
||
"Open it": "Открыть",
|
||
"Open links to these domains without asking": "Открывать ссылки на эти домены без вопросов",
|
||
"Open, and stop asking about {domain}": "Открыть и больше не спрашивать про {domain}",
|
||
"Opening…": "Открытие…",
|
||
"Ordered by the server over the whole folder, not just the messages loaded so far. Ties always fall back to newest first, so the order never shuffles between two looks at the same folder.": "Сортирует сервер по всей папке, а не только по уже загруженным письмам. При равенстве всегда используется порядок «сначала новые», поэтому между двумя открытиями одной папки порядок не меняется.",
|
||
"Placeholders": "Подстановки",
|
||
"Previous conversation": "Предыдущая цепочка",
|
||
"Previous period": "Предыдущий период",
|
||
"Privacy & safety": "Конфиденциальность и безопасность",
|
||
"Read receipts": "Уведомления о прочтении",
|
||
"Reading, sending, and how dates and times are shown. What reaches a sender lives in Privacy & safety.": "Чтение, отправка и то, как показываются даты и время. То, что доходит до отправителя, — в разделе «Конфиденциальность и безопасность».",
|
||
"Remote content": "Внешнее содержимое",
|
||
"Remove subscription": "Удалить подписку",
|
||
"Remove {domain}": "Удалить {domain}",
|
||
"Rendered": "С оформлением",
|
||
"Save changes": "Сохранить изменения",
|
||
"Save filters": "Сохранить фильтры",
|
||
"Save your changes?": "Сохранить изменения?",
|
||
"Saved": "Сохранено",
|
||
"Select all {n} in {folder}": "Выбрать все {n} в папке {folder}",
|
||
"Send message": "Отправить письмо",
|
||
"Send outside your organisation?": "Отправить за пределы организации?",
|
||
"Send to {count} people?": "Отправить {count} получателям?",
|
||
"Show birthdays from your contacts": "Показывать дни рождения из контактов",
|
||
"Show in the sidebar": "Показывать на боковой панели",
|
||
"Show keyboard shortcuts": "Показать сочетания клавиш",
|
||
"Somebody else saved this file while it was open. Copy your changes, close it, and start again.": "Кто-то другой сохранил этот файл, пока он был открыт. Скопируйте свои изменения, закройте файл и начните заново.",
|
||
"Sort by, in order": "Сортировать по, в этом порядке",
|
||
"Source": "Исходный текст",
|
||
"Spam filter": "Спам-фильтр",
|
||
"Starred": "Отмеченные",
|
||
"Starred first": "Сначала отмеченные",
|
||
"Stay here": "Остаться здесь",
|
||
"Stop trusting {address}": "Больше не доверять {address}",
|
||
"Subscribe to a calendar": "Подписаться на календарь",
|
||
"Subscribed calendar": "Календарь по подписке",
|
||
"Subscribed calendars": "Календари по подписке",
|
||
"Subscribed to {url}": "Оформлена подписка на {url}",
|
||
"That file is no longer there.": "Этого файла больше нет.",
|
||
"That identity's address": "Адрес этого профиля отправителя",
|
||
"The Inbox only": "Только «Входящие»",
|
||
"The message is held in this browser and has not been submitted yet, so taking it back costs nothing.": "Письмо удерживается в этом браузере и ещё не отправлено, поэтому вернуть его ничего не стоит.",
|
||
"The name on the identity you are sending as": "Имя профиля отправителя, от которого вы пишете",
|
||
"The subject already on the message": "Тема, которая уже указана в письме",
|
||
"Their address": "Их адрес",
|
||
"Their first name alone": "Только их имя",
|
||
"Then nothing": "Затем ничего",
|
||
"There is no preview for this kind of file.": "Для файлов такого типа предпросмотра нет.",
|
||
"There is nothing in it to export": "В нём нечего экспортировать",
|
||
"This file is not UTF-8 text, so editing it here would corrupt it — download it instead.": "Это не текст в UTF-8, поэтому правка здесь его испортит — лучше скачайте файл.",
|
||
"This file is too big to show here ({size}) — download it to read it.": "Файл слишком велик, чтобы показать его здесь ({size}) — скачайте его, чтобы прочитать.",
|
||
"This goes to {recipients}{rest}.": "Это уйдёт {recipients}{rest}.",
|
||
"This link does not go where it says": "Эта ссылка ведёт не туда, куда обещает",
|
||
"This message packs its attachments into a winmail.dat, which most clients cannot open.": "Это письмо упаковывает вложения в winmail.dat, который большинство клиентов открыть не могут.",
|
||
"Throw away your changes?": "Отбросить изменения?",
|
||
"Today, in your date format": "Сегодня, в вашем формате даты",
|
||
"Unread first": "Сначала непрочитанные",
|
||
"Read first": "Сначала прочитанные",
|
||
"Unstarred first": "Сначала неотмеченные",
|
||
"Smallest first": "Сначала маленькие",
|
||
"Z to A": "От Я до А",
|
||
"A to Z": "От А до Я",
|
||
"It reads {shown} but goes to {actual}.": "Показано {shown}, но ссылка ведёт на {actual}.",
|
||
"The full address is {href}.": "Полный адрес: {href}.",
|
||
"This message came from {domain}, which is outside your organisation.": "Это письмо пришло с {domain} — за пределами вашей организации.",
|
||
"Unsaved changes": "Несохранённые изменения",
|
||
"View as": "Показывать как",
|
||
"Warnings": "Предупреждения",
|
||
"Week view": "Неделя",
|
||
"What is it called?": "Как это назвать?",
|
||
"What reaches a sender, and what asks before it happens.": "Что доходит до отправителя и что спрашивает, прежде чем это произойдёт.",
|
||
"What you changed here will be lost.": "Изменения, сделанные здесь, будут потеряны.",
|
||
"Who the message is addressed to": "Кому адресовано письмо",
|
||
"Working out what is selected…": "Определяем, что выбрано…",
|
||
"You": "Вы",
|
||
"Your Sieve script has changes that have not been saved.": "В вашем скрипте Sieve есть несохранённые изменения.",
|
||
"Your filter rules have changes that have not been saved.": "В ваших правилах фильтрации есть несохранённые изменения.",
|
||
"Your own identity domains are always inside and do not need listing. A domain here also covers its subdomains.": "Домены ваших собственных профилей отправителя всегда считаются внутренними, их указывать не нужно. Домен, указанный здесь, включает и свои поддомены.",
|
||
"Your own:": "Ваши:",
|
||
"dark mode": "тёмную тему",
|
||
"file": "файл",
|
||
"light mode": "светлую тему",
|
||
"scored {score} against a threshold of {threshold}": "оценка {score} при пороге {threshold}",
|
||
"scored {score}, with no threshold stated": "оценка {score}, порог не указан",
|
||
"this view": "этот раздел",
|
||
"{count} conversations moved to {folder}": "Цепочек перемещено в {folder}: {count}",
|
||
"{count} folders": "Папок: {count}",
|
||
"{name}’s birthday": "День рождения: {name}",
|
||
"{name}’s birthday ({age})": "День рождения: {name} ({age})",
|
||
// ── Third pass ──────────────────────────────────────────────────────
|
||
// Sentences that lib/ and store/ were building in English, and the two
|
||
// swipe labels that reach t() through a variable and so were invisible
|
||
// to a scan for t("literal"). See #259.
|
||
"A read receipt was already sent for this message.": "Уведомление о прочтении для этого письма уже отправлено.",
|
||
"Add star": "Отметить",
|
||
"Could not attach": "Не удалось вложить",
|
||
"Delete forever?": "Удалить навсегда?",
|
||
"Delete?": "Удалить?",
|
||
"No recipients": "Нет получателей",
|
||
"No sending identity available": "Нет доступного профиля отправителя",
|
||
"Pick a date and time.": "Выберите дату и время.",
|
||
"Pick a time at least a minute from now.": "Выберите время не меньше чем через минуту.",
|
||
"Remove star": "Снять отметку",
|
||
"Requested, to {address}. Never sent automatically.": "Запрошено, на {address}. Никогда не отправляется автоматически.",
|
||
"The sender did not request a read receipt.": "Отправитель не запрашивал уведомление о прочтении.",
|
||
"This is bulk or list mail; read receipts for it only confirm the address is live.": "Это массовая или списочная рассылка; уведомление о прочтении лишь подтвердит, что адрес действующий.",
|
||
"This message has not been received, so there is nothing to report.": "Это письмо не было получено, поэтому сообщать не о чем.",
|
||
"This message was sent automatically, so no read receipt is offered.": "Это письмо отправлено автоматически, поэтому уведомление о прочтении не предлагается.",
|
||
"This server will not hold a message longer than {span}.": "Этот сервер не удерживает письмо дольше чем {span}.",
|
||
"Upload failed": "Не удалось загрузить",
|
||
// ── Third pass ──────────────────────────────────────────────────────
|
||
// Sentences that lib/ and store/ were building in English, and the two
|
||
// swipe labels that reach t() through a variable and so were invisible
|
||
// to a scan for t("literal"). See #259.
|
||
"Every {n} {frequency}": "Каждые {n} {frequency}",
|
||
"Monthly": "Ежемесячно",
|
||
"Monthly on day {days}": "Ежемесячно {days}-го числа",
|
||
"Monthly on the {ordinal} {weekday}": "Ежемесячно в {ordinal} {weekday}",
|
||
"Monthly on {weekday}": "Ежемесячно в {weekday}",
|
||
"Weekly": "Еженедельно",
|
||
"Weekly on {days}": "Еженедельно в {days}",
|
||
"add {flag}": "добавить {flag}",
|
||
"always": "всегда",
|
||
"body contains \"{value}\"": "текст содержит \"{value}\"",
|
||
"body does not contain \"{value}\"": "текст не содержит \"{value}\"",
|
||
"delete it": "удалить",
|
||
"fifth": "пятый",
|
||
"first": "первый",
|
||
"forward to {address}": "переслать на {address}",
|
||
"fourth": "четвёртый",
|
||
"keep it": "оставить",
|
||
"last": "последний",
|
||
"mark it read": "пометить прочитанным",
|
||
"move to {folder}": "переместить в {folder}",
|
||
"reject it": "отклонить",
|
||
"remove {flag}": "убрать {flag}",
|
||
"second": "второй",
|
||
"size is over {n} KB": "размер больше {n} КБ",
|
||
"size is under {n} KB": "размер меньше {n} КБ",
|
||
"star it": "отметить",
|
||
"stop": "остановить",
|
||
"third": "третий",
|
||
"{header} address {op} \"{value}\"": "адрес {header} {op} \"{value}\"",
|
||
"{header} {op} \"{value}\"": "{header} {op} \"{value}\"",
|
||
"{rule}, until {date}": "{rule}, до {date}",
|
||
"{tests} → {actions}": "{tests} → {actions}",
|
||
// ── Third pass ──────────────────────────────────────────────────────
|
||
// Sentences that lib/ and store/ were building in English, and the two
|
||
// swipe labels that reach t() through a variable and so were invisible
|
||
// to a scan for t("literal"). See #259.
|
||
// ── Emptying an address book, and deleting a selection (#277) ──
|
||
"This cannot be undone.": "Это действие нельзя отменить.",
|
||
"Some could not be deleted: {error}": "Некоторые не удалось удалить: {error}",
|
||
"It was not deleted": "Контакт не был удалён",
|
||
"Empty address book": "Очистить эту адресную книгу",
|
||
"There is nothing in it to delete": "В ней нечего удалять",
|
||
"Empty “{name}”?": "Очистить «{name}»?",
|
||
"Delete them": "Удалить их",
|
||
"Nothing was deleted": "Ничего не удалено",
|
||
// ── Checking an S/MIME signature, and what may be said about it ──
|
||
"Certificate covers": "Сертификат распространяется на",
|
||
"Details": "Подробности",
|
||
"Earlier messages from this address were signed by {previous}. This one is signed by {current}.": "Прежние письма с этого адреса подписывал {previous}. Это подписано {current}.",
|
||
"Fingerprint": "Отпечаток",
|
||
"Hide details": "Скрыть подробности",
|
||
"Issued by": "Кем выдан",
|
||
"It is signed with OpenPGP, and ihasmail has no way to fetch the sender's public key.": "Письмо подписано OpenPGP, а ihasmail не может получить открытый ключ отправителя.",
|
||
"It uses a signature algorithm ihasmail cannot check yet.": "Использован алгоритм подписи, который ihasmail пока не умеет проверять.",
|
||
"It was made with a certificate belonging to {name}, which does not cover this address.": "Подпись сделана сертификатом, принадлежащим {name}, который не покрывает этот адрес.",
|
||
"Previous fingerprint": "Прежний отпечаток",
|
||
"Signed at": "Подписано",
|
||
"Signed by {name} — the same signer as before.": "Подписано {name} — тот же подписавший, что и раньше.",
|
||
"Signed by {name}, seen here for the first time.": "Подписано {name}, встречается здесь впервые.",
|
||
"Signer": "Подписавший",
|
||
"That can mean a renewed certificate, and it can mean somebody else. Check with them by some other route before trusting it.": "Это может быть обновлённый сертификат, а может быть и другой человек. Прежде чем доверять, свяжитесь с отправителем другим способом.",
|
||
"The certificate has expired.": "Срок действия сертификата истёк.",
|
||
"The certificate is not valid yet.": "Сертификат ещё не действителен.",
|
||
"The message does not match what was signed — it was altered after signing, or damaged on the way.": "Письмо не совпадает с тем, что было подписано — его изменили после подписания или повредили в пути.",
|
||
"The signature carries no certificate that can be read.": "В подписи нет сертификата, который удалось бы прочитать.",
|
||
"The signature could not be read.": "Подпись не удалось прочитать.",
|
||
"The signature does not match the certificate sent with it.": "Подпись не соответствует приложенному сертификату.",
|
||
"The signature is not for this sender.": "Подпись не принадлежит этому отправителю.",
|
||
"The signed part is missing either the message or the signature.": "В подписанной части не хватает либо письма, либо подписи.",
|
||
"The signer has changed.": "Подписавший изменился.",
|
||
"This message is signed, and ihasmail could not check the signature.": "Это письмо подписано, и ihasmail не смог проверить подпись.",
|
||
"This signature does not check out.": "Эта подпись не сходится.",
|
||
"Valid until": "Действует до",
|
||
"a different certificate": "другим сертификатом",
|
||
"an unnamed signer": "неназванным подписавшим",
|
||
"as claimed by the signer": "по словам подписавшего",
|
||
"first seen {date}": "впервые замечен {date}",
|
||
"ihasmail will tell you if a later message from this address is signed by anybody else.": "ihasmail сообщит, если следующее письмо с этого адреса подпишет кто-то другой.",
|
||
"itself, or an issuer it does not name": "самим собой или неназванным издателем",
|
||
"no address": "нет адреса",
|
||
},
|
||
plurals: {
|
||
// ── Administration ────────────────────────────────────────────────
|
||
"{n} accounts": { one: "{n} учётная запись", few: "{n} учётные записи", many: "{n} учётных записей", other: "{n} учётной записи" },
|
||
// ── Third pass ─────────────────────────────────────────────────────
|
||
"Delete {n} items": { one: "Удалить {n} объект", few: "Удалить {n} объекта", many: "Удалить {n} объектов", other: "Удалить {n} объекта" },
|
||
"Delete {n} items?": { one: "Удалить {n} объект?", few: "Удалить {n} объекта?", many: "Удалить {n} объектов?", other: "Удалить {n} объекта?" },
|
||
"Move {n} items": { one: "Переместить {n} объект", few: "Переместить {n} объекта", many: "Переместить {n} объектов", other: "Переместить {n} объекта" },
|
||
"Move {n} items…": { one: "Переместить {n} объект…", few: "Переместить {n} объекта…", many: "Переместить {n} объектов…", other: "Переместить {n} объекта…" },
|
||
"The event runs {n} days longer than this shows.": { one: "Событие длится на {n} день дольше, чем показано здесь.", few: "Событие длится на {n} дня дольше, чем показано здесь.", many: "Событие длится на {n} дней дольше, чем показано здесь.", other: "Событие длится на {n} дня дольше, чем показано здесь." },
|
||
"{n} guests are not on this server, so there is no free/busy to read for them.": { one: "{n} участник не на этом сервере, поэтому сведений о занятости для него нет.", few: "{n} участника не на этом сервере, поэтому сведений о занятости для них нет.", many: "{n} участников не на этом сервере, поэтому сведений о занятости для них нет.", other: "{n} участника не на этом сервере, поэтому сведений о занятости для них нет." },
|
||
"{n} items selected": { one: "Выбран {n} объект", few: "Выбрано {n} объекта", many: "Выбрано {n} объектов", other: "Выбрано {n} объекта" },
|
||
// ── Third pass ─────────────────────────────────────────────────────
|
||
"Every {n} days": { one: "Каждый день", few: "Каждые {n} дня", many: "Каждые {n} дней", other: "Каждые {n} дня" },
|
||
"Every {n} months": { one: "Каждый месяц", few: "Каждые {n} месяца", many: "Каждые {n} месяцев", other: "Каждые {n} месяца" },
|
||
"Every {n} months on day {days}": { one: "Каждый месяц {days}-го числа", few: "Каждые {n} месяца {days}-го числа", many: "Каждые {n} месяцев {days}-го числа", other: "Каждые {n} месяца {days}-го числа" },
|
||
"Every {n} months on the {ordinal} {weekday}": { one: "Каждый месяц в {ordinal} {weekday}", few: "Каждые {n} месяца в {ordinal} {weekday}", many: "Каждые {n} месяцев в {ordinal} {weekday}", other: "Каждые {n} месяца в {ordinal} {weekday}" },
|
||
"Every {n} months on {weekday}": { one: "Каждый месяц в {weekday}", few: "Каждые {n} месяца в {weekday}", many: "Каждые {n} месяцев в {weekday}", other: "Каждые {n} месяца в {weekday}" },
|
||
"Every {n} weeks": { one: "Каждую неделю", few: "Каждые {n} недели", many: "Каждые {n} недель", other: "Каждые {n} недели" },
|
||
"Every {n} weeks on {days}": { one: "Каждую неделю в {days}", few: "Каждые {n} недели в {days}", many: "Каждые {n} недель в {days}", other: "Каждые {n} недели в {days}" },
|
||
"Every {n} years": { one: "Каждый год", few: "Каждые {n} года", many: "Каждые {n} лет", other: "Каждые {n} года" },
|
||
"{rule}, {n} times": { one: "{rule}, {n} раз", few: "{rule}, {n} раза", many: "{rule}, {n} раз", other: "{rule}, {n} раза" },
|
||
// ── Third pass ─────────────────────────────────────────────────────
|
||
"Move {n} messages to Trash?": { one: "Переместить {n} письмо в корзину?", few: "Переместить {n} письма в корзину?", many: "Переместить {n} писем в корзину?", other: "Переместить {n} письма в корзину?" },
|
||
"{n} days": { one: "{n} день", few: "{n} дня", many: "{n} дней", other: "{n} дня" },
|
||
"{n} hours": { one: "{n} час", few: "{n} часа", many: "{n} часов", other: "{n} часа" },
|
||
"Updated {n} contacts, nothing new": { one: "Обновлён {n} контакт, новых нет", few: "Обновлено {n} контакта, новых нет", many: "Обновлено {n} контактов, новых нет", other: "Обновлено {n} контакта, новых нет" },
|
||
"{n} updated": { one: "{n} обновлён", few: "{n} обновлено", many: "{n} обновлено", other: "{n} обновлено" },
|
||
"Updated {n} contacts you already had": { one: "Обновлён контакт, который уже был", few: "Обновлено {n} контакта, которые уже были", many: "Обновлено {n} контактов, которые уже были", other: "Обновлено {n} контакта, которые уже были" },
|
||
"{n} of them look like contacts you already had": { one: "{n} из них похож на контакт, который уже был", few: "{n} из них похожи на контакты, которые уже были", many: "{n} из них похожи на контакты, которые уже были", other: "{n} из них похожи на контакты, которые уже были" },
|
||
"Your administrator changed {n} settings": { one: "Администратор изменил {n} настройку", few: "Администратор изменил {n} настройки", many: "Администратор изменил {n} настроек", other: "Администратор изменил {n} настройки" },
|
||
"Exported {n} events": { one: "Экспортировано {n} событие", few: "Экспортировано {n} события", many: "Экспортировано {n} событий", other: "Экспортировано {n} события" },
|
||
"Imported {n} events": { one: "Импортировано {n} событие", few: "Импортировано {n} события", many: "Импортировано {n} событий", other: "Импортировано {n} события" },
|
||
"Updated {n} events, nothing new": { one: "Обновлено {n} событие, новых нет", few: "Обновлено {n} события, новых нет", many: "Обновлено {n} событий, новых нет", other: "Обновлено {n} события, новых нет" },
|
||
/*
|
||
* Three forms, which is the whole reason plural() takes a map rather than
|
||
* (one, other). Intl.PluralRules picks: 1 is `one`, 2-4 are `few`, 5-20
|
||
* and most others are `many`. English needs none of this and would have
|
||
* shipped "1 писем" without it.
|
||
*/
|
||
"{n} messages": { one: "{n} письмо", few: "{n} письма", many: "{n} писем", other: "{n} письма" },
|
||
"{n} conversations": { one: "{n} цепочка", few: "{n} цепочки", many: "{n} цепочек", other: "{n} цепочки" },
|
||
// Impersonal, so the count needs no agreement at all — which is what
|
||
// Russian interfaces actually do here.
|
||
"{n} selected": { one: "Выбрано: {n}", few: "Выбрано: {n}", many: "Выбрано: {n}", other: "Выбрано: {n}" },
|
||
"{n} messages will be permanently deleted.": { one: "{n} письмо будет удалено безвозвратно.", few: "{n} письма будут удалены безвозвратно.", many: "{n} писем будут удалены безвозвратно.", other: "{n} письма будут удалены безвозвратно." },
|
||
"Signed out {n} other sessions": { one: "Завершён {n} другой сеанс", few: "Завершено {n} других сеанса", many: "Завершено {n} других сеансов", other: "Завершено {n} других сеанса" },
|
||
"applied to {matched} of {n} messages": { one: "применён к {matched} из {n} письма", few: "применён к {matched} из {n} писем", many: "применён к {matched} из {n} писем", other: "применён к {matched} из {n} писем" },
|
||
"Move {n} messages to…": { one: "Переместить {n} письмо в…", few: "Переместить {n} письма в…", many: "Переместить {n} писем в…", other: "Переместить {n} письма в…" },
|
||
"This permanently deletes the folder and its {n} messages.": { one: "Папка и {n} письмо в ней будут удалены безвозвратно.", few: "Папка и {n} письма в ней будут удалены безвозвратно.", many: "Папка и {n} писем в ней будут удалены безвозвратно.", other: "Папка и {n} письма в ней будут удалены безвозвратно." },
|
||
"Added {n} contacts": { one: "Добавлен {n} контакт", few: "Добавлено {n} контакта", many: "Добавлено {n} контактов", other: "Добавлено {n} контакта" },
|
||
"{n} people will lose access. The contacts in it are not affected.": { one: "{n} человек потеряет доступ. Контакты внутри не затрагиваются.", few: "{n} человека потеряют доступ. Контакты внутри не затрагиваются.", many: "{n} человек потеряют доступ. Контакты внутри не затрагиваются.", other: "{n} человека потеряют доступ. Контакты внутри не затрагиваются." },
|
||
"Imported {n} contacts": { one: "Импортирован {n} контакт", few: "Импортировано {n} контакта", many: "Импортировано {n} контактов", other: "Импортировано {n} контакта" },
|
||
"Saved for this date. {names} apply to the whole series and were left unchanged.": { one: "Сохранено для этой даты. {names} относится ко всей серии и осталось без изменений.", few: "Сохранено для этой даты. {names} относятся ко всей серии и остались без изменений.", many: "Сохранено для этой даты. {names} относятся ко всей серии и остались без изменений.", other: "Сохранено для этой даты. {names} относятся ко всей серии и остались без изменений." },
|
||
"{n} people will lose access. Events in it are not affected.": { one: "{n} человек потеряет доступ. События внутри не затрагиваются.", few: "{n} человека потеряют доступ. События внутри не затрагиваются.", many: "{n} человек потеряют доступ. События внутри не затрагиваются.", other: "{n} человека потеряют доступ. События внутри не затрагиваются." },
|
||
"{n} messages could not be deleted": { one: "Не удалось удалить {n} письмо", few: "Не удалось удалить {n} письма", many: "Не удалось удалить {n} писем", other: "Не удалось удалить {n} письма" },
|
||
"({n} deleted first)": { one: "(перед этим удалено: {n})", few: "(перед этим удалено: {n})", many: "(перед этим удалено: {n})", other: "(перед этим удалено: {n})" },
|
||
"Marked {n} messages as read": { one: "{n} письмо отмечено как прочитанное", few: "{n} письма отмечены как прочитанные", many: "{n} писем отмечены как прочитанные", other: "{n} письма отмечены как прочитанные" },
|
||
"in {n} folders": { one: "в {n} папке", few: "в {n} папках", many: "в {n} папках", other: "в {n} папках" },
|
||
"Deleted {n} messages": { one: "Удалено {n} письмо", few: "Удалено {n} письма", many: "Удалено {n} писем", other: "Удалено {n} письма" },
|
||
// ── Emptying an address book, and deleting a selection (#277) ──
|
||
"Delete {n} contacts?": { one: "Удалить {n} контакт?", few: "Удалить {n} контакта?", many: "Удалить {n} контактов?", other: "Удалить {n} контакта?" },
|
||
"Deleted {n} contacts": { one: "Удалён {n} контакт", few: "Удалено {n} контакта", many: "Удалено {n} контактов", other: "Удалено {n} контакта" },
|
||
"{n} contacts will be deleted. This cannot be undone.": { one: "Будет удалён {n} контакт. Это действие нельзя отменить.", few: "Будет удалено {n} контакта. Это действие нельзя отменить.", many: "Будет удалено {n} контактов. Это действие нельзя отменить.", other: "Будет удалено {n} контакта. Это действие нельзя отменить." },
|
||
"{n} were also in other address books and were only removed from this one": { one: "{n} контакт также был в другой адресной книге и удалён только из этой", few: "{n} контакта также были в других адресных книгах и удалены только из этой", many: "{n} контактов также были в других адресных книгах и удалены только из этой", other: "{n} контакта также были в других адресных книгах и удалены только из этой" },
|
||
},
|
||
};
|