mirror of
https://github.com/nimbold/Firelink.git
synced 2026-08-31 21:21:42 +00:00
fix(i18n): refine localized copy
This commit is contained in:
+168
-168
@@ -13,7 +13,7 @@ const ru = {
|
||||
compressed: 'Архивы',
|
||||
documents: 'Документы',
|
||||
pictures: 'Изображения',
|
||||
applications: 'Приложения',
|
||||
applications: 'Программы',
|
||||
other: 'Другое',
|
||||
},
|
||||
folders: 'Папки',
|
||||
@@ -32,7 +32,7 @@ const ru = {
|
||||
continue: 'Продолжить',
|
||||
dismissNotification: 'Закрыть уведомление',
|
||||
queueName: 'Название очереди',
|
||||
addNewQueue: 'Добавить очередь',
|
||||
addNewQueue: 'Добавить новую очередь',
|
||||
startQueue: 'Запустить очередь',
|
||||
pauseQueue: 'Приостановить очередь',
|
||||
renameQueue: 'Переименовать очередь',
|
||||
@@ -55,7 +55,7 @@ const ru = {
|
||||
title: 'Удалить загрузку',
|
||||
confirmationSingle: 'Вы действительно хотите удалить этот элемент из списка? Вы также можете удалить файл с диска.',
|
||||
confirmationMultiple: 'Вы действительно хотите удалить выбранные элементы ({{count}}) из списка? Вы также можете удалить файлы с диска.',
|
||||
errorSummary: 'Успешно удалено: {{succeeded}}, с ошибкой: {{failed}}: {{detail}}',
|
||||
errorSummary: 'Удалено {{succeeded}}, с ошибкой {{failed}}: {{detail}}',
|
||||
remove: 'Удалить',
|
||||
deleteFile: 'Удалить файл',
|
||||
},
|
||||
@@ -68,10 +68,10 @@ const ru = {
|
||||
},
|
||||
downloads: {
|
||||
actions: {
|
||||
moveUp: 'Вверх',
|
||||
moveDown: 'Вниз',
|
||||
pause: 'Пауза',
|
||||
start: 'Старт',
|
||||
moveUp: 'Переместить вверх',
|
||||
moveDown: 'Переместить вниз',
|
||||
pause: 'Приостановить',
|
||||
start: 'Запустить',
|
||||
resume: 'Возобновить',
|
||||
options: 'Параметры',
|
||||
},
|
||||
@@ -108,7 +108,7 @@ const ru = {
|
||||
globalLimitSaved: 'Общее ограничение сохранено: {{value}} {{unit}}',
|
||||
globalLimitDisabled: 'Общее ограничение скорости отключено',
|
||||
saveFailed: 'Не удалось сохранить общее ограничение скорости: {{detail}}',
|
||||
presetAlreadyExists: 'Пресет {{value}} {{unit}} уже существует в быстрых пресетах',
|
||||
presetAlreadyExists: 'Пресет {{value}} {{unit}} уже есть в быстрых пресетах',
|
||||
presetAdded: 'Добавлен быстрый пресет {{value}} {{unit}}',
|
||||
presetRemoved: 'Удалён быстрый пресет {{value}} {{unit}}',
|
||||
},
|
||||
@@ -132,9 +132,9 @@ const ru = {
|
||||
exportButton: 'Экспортировать журнал',
|
||||
logFiles: 'Файлы журнала',
|
||||
localDiagnostics: 'Локальная диагностика:',
|
||||
diagnosticsDescription: 'Сбор диагностики выполняется с вашего согласия, ограничен по объёму и хранится локально. Секретные данные, параметры URL и пути к домашнему каталогу скрываются при отображении и экспорте. Никакие данные не отправляются автоматически.',
|
||||
diagnosticsDescription: 'Сбор диагностики выполняется по желанию, ограничен по объёму и хранится локально. Конфиденциальные данные, параметры URL и пути к домашней папке скрываются при отображении и экспорте. Никакие данные не отправляются автоматически.',
|
||||
noEntries: 'Сохранённых записей журнала пока нет.',
|
||||
disabledDescription: 'Ведение журнала диагностики отключено. Сохранённые логи появятся здесь при их наличии.',
|
||||
disabledDescription: 'Ведение журнала диагностики отключено. Существующие логи поддержки появятся здесь при наличии.',
|
||||
copy: 'Копировать',
|
||||
copied: 'Скопировано в буфер обмена',
|
||||
copyFailed: 'Не удалось скопировать в буфер обмена',
|
||||
@@ -142,29 +142,29 @@ const ru = {
|
||||
exportFailed: 'Не удалось экспортировать журнал: {{detail}}',
|
||||
cleared: 'Журнал очищен',
|
||||
clearFailed: 'Не удалось очистить журнал: {{detail}}',
|
||||
enabled: 'Ведение журнала включено',
|
||||
disabled: 'Ведение журнала отключено',
|
||||
updateFailed: 'Не удалось обновить параметры ведения журнала: {{detail}}',
|
||||
enabled: 'Ведение журнала диагностики включено',
|
||||
disabled: 'Ведение журнала диагностики отключено',
|
||||
updateFailed: 'Не удалось обновить ведение журнала диагностики: {{detail}}',
|
||||
},
|
||||
scheduler: {
|
||||
title: 'Планировщик',
|
||||
running: 'Работает',
|
||||
disabled: 'Планировщик отключен',
|
||||
disabled: 'Планировщик отключён',
|
||||
noScheduledDay: 'Дни выполнения не выбраны',
|
||||
unsavedChanges: 'Несохранённые изменения',
|
||||
runNow: 'Запустить сейчас',
|
||||
pause: 'Приостановить',
|
||||
saveSettings: 'Сохранить настройки',
|
||||
timing: 'Время работы',
|
||||
timing: 'Расписание',
|
||||
startTime: 'Время начала',
|
||||
stopTime: 'Время окончания',
|
||||
timingDescription: 'Если компьютер находится в спящем режиме во время запуска, Firelink запустит выбранные очереди после пробуждения в этот же день, если время окончания ещё не наступило.',
|
||||
timingDescription: 'Если Firelink находится в спящем режиме во время запуска, он запустит выбранные очереди после пробуждения в этот же день, если время окончания ещё не наступило.',
|
||||
runEveryDay: 'Запускать каждый день',
|
||||
queuesToSchedule: 'Очереди для запуска',
|
||||
defaultQueue: 'Очередь по умолчанию',
|
||||
afterCompletion: 'После завершения',
|
||||
afterCompletionDescription: 'Выберите действие после завершения загрузок, запущенных планировщиком.',
|
||||
actionWarning: 'Это действие может прервать работу других программ. Firelink выполнит его сразу после завершения запланированной очереди.',
|
||||
actionWarning: 'Это действие может прервать работу других программ на компьютере. Firelink выполнит его сразу после завершения запланированной очереди.',
|
||||
systemPermissions: 'Системные разрешения',
|
||||
macPermissionDescription: 'Для перехода в спящий режим, перезагрузки и выключения требуется разрешение macOS «Автоматизация» для System Events.',
|
||||
permissionGranted: 'Разрешение «Автоматизация» предоставлено',
|
||||
@@ -173,20 +173,20 @@ const ru = {
|
||||
revokePermission: 'Отозвать разрешение',
|
||||
grantPermission: 'Предоставить разрешение',
|
||||
permissionAvailable: 'Разрешение «Автоматизация» доступно.',
|
||||
permissionMissingDetails: 'Отсутствует разрешение «Автоматизация». Включите Firelink в разделе «Системные настройки» > «Конфиденциальность и безопасность» > «Автоматизация» для System Events.',
|
||||
revokePermissionDetails: 'macOS не позволяет отзывать разрешение «Автоматизация» напрямую из приложения. Отключите доступ к System Events в Системных настройках, затем вернитесь в Firelink.',
|
||||
permissionMissingDetails: 'Отсутствует разрешение «Автоматизация». В Системных настройках откройте раздел «Автоматизация» для System Events и включите Firelink.',
|
||||
revokePermissionDetails: 'macOS не позволяет отзывать разрешение «Автоматизация» напрямую из Firelink. Отключите доступ Firelink к System Events в Системных настройках, затем вернитесь в Firelink.',
|
||||
requestingPermission: 'Запрос разрешения «Автоматизация»…',
|
||||
enablePermissionDetails: 'Включите Firelink в разделе «Системные настройки» > «Автоматизация» для System Events, затем вернитесь в Firelink.',
|
||||
enablePermissionDetails: 'В Системных настройках откройте раздел «Автоматизация» для System Events и включите Firelink, затем вернитесь в Firelink.',
|
||||
systemActions: 'Системные действия',
|
||||
windowsActionsDescription: 'Спящий режим, перезагрузка и выключение используют системные привилегии Windows. При выполнении Firelink сообщит, если действие не удалось.',
|
||||
linuxActionsDescription: 'Спящий режим, перезагрузка и выключение используют системные службы Linux. При выполнении Firelink сообщит, если действие не удалось.',
|
||||
windowsActionsDescription: 'Спящий режим, перезагрузка и выключение используют системные привилегии Windows. Firelink сообщит о любых отклонённых действиях при их запуске; постоянное разрешение заранее не запрашивается.',
|
||||
linuxActionsDescription: 'Спящий режим, перезагрузка и выключение используют системную политику и рабочий стол Linux. Firelink сообщит о любых отклонённых действиях при их запуске; постоянное разрешение заранее не запрашивается.',
|
||||
validationDay: 'Выберите хотя бы один день для планировщика',
|
||||
validationQueue: 'Выберите хотя бы одну очередь для планировщика',
|
||||
validationStopTime: 'Время окончания должно быть позже времени начала',
|
||||
saved: 'Настройки планировщика сохранены',
|
||||
trackingOne: 'Отслеживается 1 запланированная загрузка',
|
||||
trackingMany: 'Отслеживается {{count}} запланированных загрузок',
|
||||
noStartableDownloads: 'В выбранных очередях нет загрузок для запуска',
|
||||
noStartableDownloads: 'В выбранных очередях нет загрузок, которые можно запустить',
|
||||
pausedOne: 'Приостановлена 1 активная загрузка',
|
||||
pausedMany: 'Приостановлено {{count}} активных загрузок',
|
||||
noActiveDownloads: 'Нет активных загрузок',
|
||||
@@ -220,25 +220,25 @@ const ru = {
|
||||
lastError: 'Последняя ошибка',
|
||||
saved: ' (сохранено)',
|
||||
defaultValue: ' (по умолчанию)',
|
||||
savedTooltip: 'Сохранено для этой загрузки. Изменения в Настройках будут применяться только к новым загрузкам.',
|
||||
defaultTooltip: 'Используется значение по умолчанию для новых загрузок.',
|
||||
identityReadOnly: 'Параметры файла доступны только для чтения. Настройки передачи сохранены для повторного скачивания.',
|
||||
transferSettings: 'Настройки передачи можно изменить после приостановки или остановки. Текущие загрузки продолжат использовать существующие параметры.',
|
||||
savedTooltip: 'Сохранено для этой загрузки. Изменения в Настройках будут применяться к новым загрузкам.',
|
||||
defaultTooltip: 'Используется текущее значение по умолчанию для новых загрузок.',
|
||||
identityReadOnly: 'Идентификация файла доступна только для чтения. Настройки передачи сохранены для повторного скачивания.',
|
||||
transferSettings: 'Настройки передачи можно изменить после остановки или приостановки. Текущие загрузки сохраняют свои параметры.',
|
||||
download: 'Загрузка',
|
||||
url: 'URL',
|
||||
fileName: 'Имя файла',
|
||||
saveLocation: 'Папка для сохранения',
|
||||
saveLocation: 'Место сохранения',
|
||||
select: 'Выбрать',
|
||||
perFile: 'на файл',
|
||||
useCurrentDefault: 'По умолчанию ({{count}})',
|
||||
savedPerDownload: 'Индивидуально для загрузки. Настройки по умолчанию применяются к новым загрузкам.',
|
||||
savedPerDownload: 'Сохранено для этой загрузки. Значение из Настроек применяется к новым загрузкам.',
|
||||
limit: 'Ограничение',
|
||||
siteLogin: 'Авторизация на сайте',
|
||||
siteLoginRedownload: 'Авторизация для повторного скачивания',
|
||||
matchingSiteLogin: 'Сохранённые учётные данные',
|
||||
customCredentials: 'Другие учётные данные',
|
||||
matchingSiteLogin: 'Учётные данные сайта',
|
||||
customCredentials: 'Пользовательские учётные данные',
|
||||
noLogin: 'Без авторизации',
|
||||
useSavedLogin: 'Будет использован сохранённый логин, если доступен.',
|
||||
useSavedLogin: 'Будет использован сохранённый логин, если он доступен.',
|
||||
advancedTransfer: 'Дополнительные параметры',
|
||||
advancedTransferRedownload: 'Дополнительные параметры повторного скачивания',
|
||||
checksum: 'Контрольная сумма',
|
||||
@@ -261,7 +261,7 @@ const ru = {
|
||||
stores: {
|
||||
portable: 'портативная папка Firelink',
|
||||
windows: 'Диспетчер учётных данных Windows',
|
||||
linux: 'системное хранилище Linux',
|
||||
linux: 'хранилище учётных данных Linux',
|
||||
macos: 'Связка ключей macOS',
|
||||
system: 'системное хранилище учётных данных',
|
||||
siteCredentials: 'системное хранилище учётных данных',
|
||||
@@ -269,58 +269,58 @@ const ru = {
|
||||
grantLabelPortable: 'Продолжить',
|
||||
grantLabelMacos: 'Предоставить доступ',
|
||||
grantLabelDefault: 'Включить защищённое хранилище',
|
||||
description: 'Firelink использует расширение браузера для перехвата загрузок. Чтобы расширение оставалось привязанным после перезапуска, Firelink сохраняет токен сопряжения в {{pairingStore}}. Сохранённые учётные данные сайтов хранятся в {{siteCredentialStore}}.',
|
||||
portableExplanation: 'Токен сопряжения сохраняется в этой папке. Учётные данные сайтов остаются в системном хранилище; при предоставлении доступа может появиться системный запрос.',
|
||||
macosExplanation: 'macOS может запросить разрешение на доступ к Связке ключей.',
|
||||
defaultExplanation: 'Обычно доступ предоставляется автоматически. Если служба учётных данных недоступна, Firelink покажет ошибку, и расширение останется привязанным только на текущий сеанс.',
|
||||
description: 'Firelink использует расширение браузера для перехвата загрузок. Чтобы расширение оставалось привязанным после перезапуска, Firelink сохраняет токен сопряжения в {{pairingStore}}. Дополнительные учётные данные сайтов хранятся в {{siteCredentialStore}}.',
|
||||
portableExplanation: 'Токен сопряжения переносится вместе с этой папкой. Учётные данные сайтов остаются в системном хранилище; после предоставления доступа может появиться системный запрос.',
|
||||
macosExplanation: 'macOS может показать запрос Связки ключей после предоставления доступа.',
|
||||
defaultExplanation: 'Обычно это происходит незаметно. Если служба учётных данных недоступна, Firelink покажет ошибку здесь, и расширение останется привязанным только на текущий сеанс.',
|
||||
note: 'Примечание:',
|
||||
portableNote: 'В портативном режиме в папке сохраняется только токен сопряжения. Пароли сайтов и учётные данные браузера не копируются.',
|
||||
defaultNote: 'Firelink создаёт только собственную изолированную запись и не имеет доступа к другим вашим паролям.',
|
||||
portableNote: 'В портативном режиме в этой папке сохраняется только токен сопряжения. Пароли сайтов и учётные данные браузера не копируются.',
|
||||
defaultNote: 'Firelink создаёт только собственную изолированную запись учётных данных. Приложение не имеет доступа к другим сохранённым паролям вашей системы.',
|
||||
hint: 'Подсказка:',
|
||||
portableHint: 'Портативный токен сопряжения уже сохранён в этой папке. Вы можете включить хранилище сейчас или нажать «Позже».',
|
||||
defaultHint: 'Если вы нажмёте «Позже», интеграция с браузером будет работать только во время текущего сеанса.',
|
||||
portableHint: 'Портативный токен сопряжения уже сохранён в этой папке. Вы можете включить его здесь или выбрать «Позже».',
|
||||
defaultHint: 'Если вы выберете «Позже», расширение будет работать только во время текущего сеанса.',
|
||||
enableFromSettings: 'Вы можете включить хранилище в любое время в меню «Настройки» > «Интеграции».',
|
||||
later: 'Позже',
|
||||
enabling: 'Включение…',
|
||||
timeout: 'Время ожидания ответа хранилища истекло. Нажмите «Позже» и попробуйте снова.',
|
||||
timeout: 'Время ожидания запроса к хранилищу учётных данных истекло. Вы можете выбрать «Позже» и попробовать снова.',
|
||||
unavailable: 'Хранилище {{store}} недоступно.',
|
||||
accessRequired: 'Предоставьте доступ к хранилищу учётных данных перед созданием нового токена.',
|
||||
accessRequired: 'Предоставьте доступ к хранилищу учётных данных перед повторной генерацией токена сопряжения.',
|
||||
storeUnavailable: 'Доступ к хранилищу учётных данных недоступен.',
|
||||
},
|
||||
app: {
|
||||
loading: 'Загрузка…',
|
||||
settingsSaveFailed: 'Не удалось сохранить настройки. Проверьте права доступа к папке и попробуйте снова.',
|
||||
settingsSaveFailed: 'Не удалось сохранить настройки. Проверьте разрешения хранилища и попробуйте снова.',
|
||||
systemActionCountdown: '{{action}} через 10 секунд.',
|
||||
systemActionCancelled: 'Системное действие отменено, так как есть активные или запланированные загрузки.',
|
||||
systemActionFailed: 'Не удалось выполнить запланированное действие: {{detail}}',
|
||||
systemActionCancelled: 'Системное действие отменено, так как есть активная или запланированная загрузка.',
|
||||
systemActionFailed: 'Не удалось выполнить запланированное системное действие: {{detail}}',
|
||||
downloadCompleteTitle: 'Загрузка завершена',
|
||||
downloadCompleteBody: 'Загрузка {{fileName}} завершена.',
|
||||
unknownFile: 'Файл',
|
||||
downloadFailedTitle: 'Ошибка загрузки',
|
||||
downloadFailedBody: 'Не удалось загрузить {{fileName}}.',
|
||||
initializeDownloadsFailed: 'Не удалось загрузить сохранённый список скачиваний: {{detail}}',
|
||||
extensionDisconnected: 'Расширение браузера отключено, так как токен сопряжения изменился.',
|
||||
initializeDownloadsFailed: 'Не удалось инициализировать сохранённые загрузки: {{detail}}',
|
||||
extensionDisconnected: 'Расширение браузера отключено, так как его токен сопряжения изменился.',
|
||||
copyToken: 'Скопировать токен',
|
||||
integrations: 'Интеграции',
|
||||
copyTokenFailed: 'Не удалось скопировать токен сопряжения: {{detail}}',
|
||||
credentialPersistenceFailed: 'Безопасное сохранение учётных данных недоступно. Сопряжение с браузером работает только в текущем сеансе: {{detail}}',
|
||||
resumeDownloadsFailed: 'Не удалось возобновить загрузки: {{detail}}',
|
||||
updateAvailable: 'Доступна новая версия Firelink {{version}}.',
|
||||
resumeDownloadsFailed: 'Не удалось возобновить сохранённые загрузки: {{detail}}',
|
||||
updateAvailable: 'Доступна Firelink {{version}}.',
|
||||
viewRelease: 'Просмотреть релиз',
|
||||
sleepPreventionFailed: 'Не удалось обновить запрет спящего режима: {{detail}}',
|
||||
schedulerNoQueues: 'В планировщике не выбрано ни одной очереди. Проверьте настройки планировщика.',
|
||||
sleepPreventionFailed: 'Не удалось обновить предотвращение перехода в спящий режим: {{detail}}',
|
||||
schedulerNoQueues: 'В планировщике не выбраны действительные очереди. Обновите настройки планировщика.',
|
||||
schedulerPauseOneFailed: 'Планировщик не смог приостановить 1 загрузку.',
|
||||
schedulerPauseManyFailed: 'Планировщик не смог приостановить {{count}} загрузок.',
|
||||
scheduledIncomplete: 'Не все запланированные загрузки были завершены. Системное действие отменено.',
|
||||
scheduledActionSkippedActive: 'Системное действие пропущено, так как есть активные или запланированные загрузки.',
|
||||
scheduledIncomplete: 'Не все запланированные загрузки были завершены. Системное действие после завершения очереди пропущено.',
|
||||
scheduledActionSkippedActive: 'Запланированное системное действие пропущено, так как есть активная или находящаяся в очереди загрузка.',
|
||||
notificationsDisabled: 'Системные уведомления отключены для Firelink.',
|
||||
notificationsFailed: 'Не удалось настроить уведомления: {{detail}}',
|
||||
},
|
||||
sidebar: {
|
||||
deleteQueueConfirm: 'Удалить очередь «{{name}}»? Незавершённые загрузки будут перемещены в Главную очередь.',
|
||||
deleteQueueConfirm: 'Удалить очередь «{{name}}»? Её незавершённые загрузки будут перемещены в Главную очередь.',
|
||||
deleteQueueFailed: 'Не удалось удалить очередь: {{detail}}',
|
||||
queueNameEmpty: 'Имя очереди не может быть пустым',
|
||||
queueNameExists: 'Очередь с таким именем уже существует',
|
||||
queueNameEmpty: 'Название очереди не может быть пустым',
|
||||
queueNameExists: 'Очередь с таким названием уже существует',
|
||||
startQueueFailed: 'Не удалось запустить очередь: {{detail}}',
|
||||
pauseQueueFailed: 'Не удалось приостановить очередь: {{detail}}',
|
||||
},
|
||||
@@ -339,12 +339,12 @@ const ru = {
|
||||
dateAdded: 'Дата добавления',
|
||||
},
|
||||
columnOptions: {
|
||||
open: 'Параметры столбца: {{column}}',
|
||||
dragToReorder: 'Перетащите, чтобы изменить порядок столбцов',
|
||||
alignContent: 'Положение содержимого',
|
||||
left: 'Слева',
|
||||
open: 'Параметры столбца «{{column}}»',
|
||||
dragToReorder: 'Перетащите для изменения порядка столбцов',
|
||||
alignContent: 'Выравнивание содержимого',
|
||||
left: 'По левому краю',
|
||||
center: 'По центру',
|
||||
right: 'Справа',
|
||||
right: 'По правому краю',
|
||||
resetLayout: 'Сбросить макет столбцов',
|
||||
},
|
||||
addDownload: 'Добавить загрузку',
|
||||
@@ -353,16 +353,16 @@ const ru = {
|
||||
queueEmpty: 'Очередь пуста',
|
||||
noCompletedDownloads: 'Нет завершённых загрузок',
|
||||
noDownloads: 'Нет загрузок',
|
||||
queueEmptyDescription: 'Добавляйте загрузки в эту очередь из меню элементов или окна добавления.',
|
||||
queueEmptyDescription: 'Добавьте загрузки в эту очередь из меню элемента или окна добавления.',
|
||||
completedDescription: 'Завершённые загрузки будут отображаться здесь.',
|
||||
clickToAdd: 'Нажмите кнопку',
|
||||
addButtonOr: 'или',
|
||||
toAddDownloads: 'чтобы добавить загрузки',
|
||||
nonResumableOne: '1 загрузка не поддерживает возобновление. При приостановке её придётся скачивать заново. Вы действительно хотите приостановить?',
|
||||
nonResumableMany: 'Загрузок без поддержки возобновления: {{count}}. При приостановке их придётся скачивать заново. Вы действительно хотите приостановить?',
|
||||
nonResumableOne: '1 загрузка не поддерживает возобновление. Если вы приостановите её, позже придётся начинать скачивание заново. Вы действительно хотите приостановить?',
|
||||
nonResumableMany: '{{count}} загрузок не поддерживают возобновление. Если вы приостановите их, позже придётся начинать скачивание заново. Вы действительно хотите приостановить?',
|
||||
interactionError: '{{message}}: {{detail}}',
|
||||
openFileFailed: 'Не удалось открыть файл',
|
||||
revealFileFailed: 'Не удалось показать файл в папке',
|
||||
openFileFailed: 'Не удалось открыть скачанный файл',
|
||||
revealFileFailed: 'Не удалось показать файл в Finder',
|
||||
pauseFailed: 'Не удалось приостановить загрузку',
|
||||
resumeFailed: 'Не удалось возобновить {{fileName}}',
|
||||
moveManyFailed: 'Не удалось переместить загрузки в очередь',
|
||||
@@ -384,15 +384,15 @@ const ru = {
|
||||
redownload: 'Скачать повторно',
|
||||
copyFilePath: 'Скопировать путь к файлу',
|
||||
properties: 'Свойства',
|
||||
backendRejectedStart: 'Запрос на запуск/возобновление отклонён сервером.',
|
||||
transferActive: 'Нельзя изменять свойства во время загрузки. Сначала приостановите её.',
|
||||
redownloadNotFound: 'Не удалось скачать повторно: загрузка не найдена.',
|
||||
redownloadActive: 'Нельзя повторно скачать загрузку в статусе «{{status}}». Сначала приостановите её или дождитесь завершения.',
|
||||
originalUrlMissing: 'Не удалось скачать повторно: исходный URL отсутствует.',
|
||||
backendRejectedStart: 'Фоновый модуль отклонил запрос на запуск/возобновление.',
|
||||
transferActive: 'Нельзя изменять свойства во время активной передачи. Сначала приостановите её.',
|
||||
redownloadNotFound: 'Невозможно скачать повторно: загрузка не найдена.',
|
||||
redownloadActive: 'Невозможно повторно скачать загрузку в статусе «{{status}}». Сначала приостановите её или дождитесь завершения.',
|
||||
originalUrlMissing: 'Невозможно скачать повторно: исходный URL отсутствует.',
|
||||
pauseBeforeMove: 'Приостановите {{file}} перед перемещением в другую очередь.',
|
||||
},
|
||||
addDownloads: {
|
||||
unknownSize: 'Размер неизвестен',
|
||||
unknownSize: 'Неизвестный размер',
|
||||
unknown: 'Неизвестно',
|
||||
discardSetup: 'Отменить настройку этой загрузки?',
|
||||
speedInvalid: 'Ограничение скорости должно быть больше нуля',
|
||||
@@ -403,22 +403,22 @@ const ru = {
|
||||
updatedOne: 'Обновлена 1 загрузка',
|
||||
updatedMany: 'Обновлено {{count}} загрузок',
|
||||
urlAlreadyQueued: 'URL уже находится в очереди',
|
||||
destinationConflict: 'Другая выбранная загрузка использует ту же папку назначения',
|
||||
destinationConflict: 'Другая выбранная загрузка использует это место назначения',
|
||||
existingDownloadDestination: 'Существующая загрузка Firelink использует эту папку назначения',
|
||||
matchingDownloadFilename: 'Незавершённая загрузка уже использует это имя файла',
|
||||
fileExistsOnDisk: 'Файл уже существует на диске. Переименуйте или пропустите его, чтобы не перезаписать данные.',
|
||||
backendRejectedStart: 'Сервер отклонил запуск загрузки.',
|
||||
fileExistsOnDisk: 'Файл уже существует на диске; переименуйте или пропустите его, чтобы не удалить сторонние данные',
|
||||
backendRejectedStart: 'Фоновый модуль отклонил запуск загрузки.',
|
||||
playlistNoEntries: 'Плейлист не содержит доступных элементов',
|
||||
invalidMediaMetadata: 'Некорректные метаданные медиа или доступные форматы не найдены',
|
||||
noAvailableName: 'Не удалось подобрать свободное имя для {{file}}.',
|
||||
invalidMediaMetadata: 'Некорректные метаданные медиа или форматы не найдены',
|
||||
noAvailableName: 'Не удалось найти доступное имя для {{file}}.',
|
||||
pauseBeforeReplace: 'Приостановите {{file}} перед заменой.',
|
||||
cannotReplace: 'Нельзя заменить {{file}}: файл не относится к загрузкам Firelink.',
|
||||
cannotReplace: 'Невозможно заменить {{file}}: файл не принадлежит загрузке Firelink.',
|
||||
downloadLinks: 'Ссылки для скачивания',
|
||||
pastePlaceholder: 'Вставьте URL-адреса HTTP, HTTPS, FTP или SFTP…\n\nДля загрузки медиа поддерживаются ссылки с YouTube, X, TikTok, Instagram, Reddit и др.',
|
||||
pastePlaceholder: 'Вставьте сюда URL-адреса HTTP, HTTPS, FTP или SFTP…\n\nДля загрузки медиа вставляйте ссылки с YouTube, X, TikTok, Instagram, Reddit и т. д.',
|
||||
playlistSummary: 'Плейлист «{{title}}»: загружено {{loaded}} из {{total}} элементов{{truncated}}{{skipped}}',
|
||||
safeEntryLimit: ' (достигнут лимит)',
|
||||
selectedSummary: 'Выбрано: {{ready}} готовых, {{fallback}} с базовыми данными, {{mediaRetry}} повторных медиа, {{blocked}} заблокированных',
|
||||
clearSelection: 'Сбросить выбор',
|
||||
safeEntryLimit: ' (достигнут безопасный лимит элементов)',
|
||||
selectedSummary: 'Выбрано: {{ready}} готовых, {{fallback}} с резервными данными, {{mediaRetry}} повторов медиа, {{blocked}} заблокировано',
|
||||
clearSelection: 'Очистить выбор',
|
||||
selectAll: 'Выбрать все',
|
||||
refreshMetadata: 'Обновить метаданные',
|
||||
files: 'Файлы',
|
||||
@@ -436,7 +436,7 @@ const ru = {
|
||||
unsafeUrl: 'Небезопасный URL',
|
||||
playlistFailed: 'Ошибка плейлиста',
|
||||
metadataFailed: 'Ошибка метаданных',
|
||||
fallback: 'Базовые данные',
|
||||
fallback: 'Резервный режим',
|
||||
invalid: 'Некорректный',
|
||||
ready: 'Готово',
|
||||
mediaFormat: 'Формат медиа',
|
||||
@@ -444,18 +444,18 @@ const ru = {
|
||||
fetchingMediaStreams: 'Получение медиапотоков…',
|
||||
availableStreams: 'Доступные потоки',
|
||||
availableMediaStreams: 'Доступные медиапотоки',
|
||||
metadataUnavailable: 'Метаданные недоступны. Обновите метаданные перед добавлением.',
|
||||
saveLocation: 'Папка для сохранения',
|
||||
metadataUnavailable: 'Метаданные недоступны. Обновите метаданные перед добавлением этого медиа.',
|
||||
saveLocation: 'Папка сохранения',
|
||||
browse: 'Обзор…',
|
||||
categoryFolders: 'Файлы будут распределены по папкам категорий.',
|
||||
sharedFolder: 'Все выбранные загрузки будут сохранены в эту папку.',
|
||||
dedicatedFolder: 'Сохранить в отдельную папку',
|
||||
sharedFolder: 'Все выбранные загрузки будут использовать эту папку.',
|
||||
dedicatedFolder: 'Сохранить в новую папку',
|
||||
dedicatedFolderName: 'Имя папки',
|
||||
dedicatedFolderDescription: 'Создаёт эту папку внутри каждой автоматической папки категории.',
|
||||
dedicatedFolderManualDescription: 'Создаёт эту папку внутри выбранной папки сохранения.',
|
||||
dedicatedFolderManualDescription: 'Создаёт эту папку внутри выбранного места сохранения.',
|
||||
saveFolderName: 'Имя папки сохранения',
|
||||
dedicatedFolderNameRequired: 'Введите имя папки перед сохранением.',
|
||||
transferSettings: 'Параметры передачи',
|
||||
transferSettings: 'Настройки передачи',
|
||||
connectionsPerFile: 'Соединений на файл',
|
||||
connectionsPerFileAria: 'Соединений на файл',
|
||||
limitSpeedPerFile: 'Ограничить скорость на файл',
|
||||
@@ -466,7 +466,7 @@ const ru = {
|
||||
password: 'Пароль',
|
||||
advancedTransfer: 'Дополнительные параметры',
|
||||
verifyChecksum: 'Проверять контрольную сумму',
|
||||
checksumAlgorithm: 'Алгоритм хеширования',
|
||||
checksumAlgorithm: 'Алгоритм контрольной суммы',
|
||||
expectedDigest: 'Ожидаемый хеш',
|
||||
headers: 'Заголовки',
|
||||
requestHeaders: 'Заголовки запроса',
|
||||
@@ -487,13 +487,13 @@ const ru = {
|
||||
removeUnsafeOne: 'Удалите {{count}} небезопасный URL-адрес перед продолжением.',
|
||||
removeUnsafeFew: 'Удалите {{count}} небезопасных URL-адреса перед продолжением.',
|
||||
removeUnsafeMany: 'Удалите {{count}} небезопасных URL-адресов перед продолжением.',
|
||||
mediaMetadataUnavailableSummaryOne: 'Метаданные недоступны для {{count}} элемента. Обновите метаданные перед добавлением.',
|
||||
mediaMetadataUnavailableSummaryFew: 'Метаданные недоступны для {{count}} элементов. Обновите метаданные перед добавлением.',
|
||||
mediaMetadataUnavailableSummaryMany: 'Метаданные недоступны для {{count}} элементов. Обновите метаданные перед добавлением.',
|
||||
metadataUnavailableFallback: 'Метаданные недоступны. Загрузки можно добавить с базовыми параметрами.',
|
||||
fallbackReadyOne: 'Готово к добавлению: {{ready}} загрузка; для {{failed}} будет использовано имя по умолчанию и неизвестный размер.',
|
||||
fallbackReadyFew: 'Готово к добавлению: {{ready}} загрузки; для {{failed}} будет использовано имя по умолчанию и неизвестный размер.',
|
||||
fallbackReadyMany: 'Готово к добавлению: {{ready}} загрузок; для {{failed}} будет использовано имя по умолчанию и неизвестный размер.',
|
||||
mediaMetadataUnavailableSummaryOne: 'Метаданные медиа недоступны для {{count}} элемента. Обновите метаданные перед добавлением.',
|
||||
mediaMetadataUnavailableSummaryFew: 'Метаданные медиа недоступны для {{count}} элементов. Обновите метаданные перед добавлением.',
|
||||
mediaMetadataUnavailableSummaryMany: 'Метаданные медиа недоступны для {{count}} элементов. Обновите метаданные перед добавлением.',
|
||||
metadataUnavailableFallback: 'Метаданные недоступны. Загрузки всё равно можно добавить с резервными данными.',
|
||||
fallbackReadyOne: 'Готова {{ready}} загрузка; для {{failed}} будет использовано резервное имя файла и неизвестный размер.',
|
||||
fallbackReadyFew: 'Готовы {{ready}} загрузки; для {{failed}} будет использовано резервное имя файла и неизвестный размер.',
|
||||
fallbackReadyMany: 'Готово {{ready}} загрузок; для {{failed}} будет использовано резервное имя файла и неизвестный размер.',
|
||||
readyToAddOne: 'Готово к добавлению: {{count}} загрузка.',
|
||||
readyToAddFew: 'Готово к добавлению: {{count}} загрузки.',
|
||||
readyToAddMany: 'Готово к добавлению: {{count}} загрузок.',
|
||||
@@ -506,7 +506,7 @@ const ru = {
|
||||
locations: 'Папки',
|
||||
siteLogins: 'Учётные данные',
|
||||
power: 'Питание',
|
||||
engine: 'Движки',
|
||||
engine: 'Движок',
|
||||
integrations: 'Интеграции',
|
||||
about: 'О программе',
|
||||
},
|
||||
@@ -530,21 +530,21 @@ const ru = {
|
||||
internalDirectoryFound: 'Каталог _internal найден',
|
||||
pythonRuntimeFound: 'Среда выполнения Python найдена',
|
||||
externalOpenFailed: 'Не удалось открыть {{label}}: {{detail}}',
|
||||
updateUnexpectedResponse: 'Получен неожиданный ответ при проверке обновлений.',
|
||||
updateUntrustedReleaseUrl: 'Проверка обновлений вернула ненадёжный URL.',
|
||||
updateFailed: 'Не удалось проверить обновления: {{detail}}',
|
||||
updateUnexpectedResponse: 'Проверка обновлений вернула неожиданный ответ.',
|
||||
updateUntrustedReleaseUrl: 'Проверка обновлений вернула ненадёжный URL релиза.',
|
||||
updateFailed: 'Ошибка проверки обновлений: {{detail}}',
|
||||
},
|
||||
downloads: {
|
||||
defaultConnections: 'Соединения по умолчанию:',
|
||||
defaultConnectionsDescription: 'Для новых загрузок; существующие элементы сохраняют своё значение',
|
||||
parallelDownloads: 'Параллельные загрузки:',
|
||||
parallelDownloadsDescription: 'Максимальное количество одновременно активных файлов',
|
||||
parallelDownloadsDescription: 'Максимальное число одновременно активных файлов',
|
||||
automaticRetries: 'Автоматические повторы:',
|
||||
automaticRetriesDescription: 'При сбое соединения',
|
||||
systemNotification: 'Показывать системное уведомление по завершении загрузки',
|
||||
systemNotificationDescription: 'Использует системные настройки уведомлений',
|
||||
completionChime: 'Воспроизводить звуковой сигнал в приложении',
|
||||
completionChimeDescription: 'Звук Firelink, независимый от системных уведомлений',
|
||||
systemNotificationDescription: 'Использует настройки уведомлений вашей операционной системы',
|
||||
completionChime: 'Воспроизводить звуковой сигнал завершения в приложении',
|
||||
completionChimeDescription: 'Дополнительный звук Firelink, независимый от системных уведомлений',
|
||||
clipboardLinks: 'Добавлять ссылки из буфера обмена при активации Firelink',
|
||||
clipboardLinksDescription: 'Открывает скопированные поддерживаемые ссылки в окне добавления. По умолчанию отключено.',
|
||||
},
|
||||
@@ -552,7 +552,7 @@ const ru = {
|
||||
language: 'Язык',
|
||||
languageDescription: 'Выберите язык интерфейса Firelink.',
|
||||
sidebarPosition: 'Положение боковой панели',
|
||||
sidebarPositionDescription: 'Выберите расположение боковой панели. В автоматическом режиме зависит от направления текста.',
|
||||
sidebarPositionDescription: 'Выберите, где отображается боковая панель. В автоматическом режиме следует направлению интерфейса.',
|
||||
sidebarPositionAutomatic: 'Автоматически (рекомендуется)',
|
||||
sidebarPositionLeft: 'Слева',
|
||||
sidebarPositionRight: 'Справа',
|
||||
@@ -563,7 +563,7 @@ const ru = {
|
||||
languagePersian: 'Персидский',
|
||||
languageUkrainian: 'Украинский',
|
||||
languageRussian: 'Русский',
|
||||
appTheme: 'Тема оформления',
|
||||
appTheme: 'Тема приложения',
|
||||
theme: 'Тема',
|
||||
ariaLabel: 'Тема приложения',
|
||||
system: 'Системная',
|
||||
@@ -571,7 +571,7 @@ const ru = {
|
||||
dark: 'Тёмная',
|
||||
dracula: 'Dracula',
|
||||
nord: 'Nord',
|
||||
systemAppearance: 'Автоматическое переключение между светлой и тёмной темой {{platform}}.',
|
||||
systemAppearance: 'Системная тема соответствует текущему светлому или тёмному оформлению {{platform}}.',
|
||||
display: 'Отображение',
|
||||
fontSize: 'Размер шрифта',
|
||||
fontSizeDescription: 'Масштабирует список загрузок и компактные элементы управления.',
|
||||
@@ -579,7 +579,7 @@ const ru = {
|
||||
standard: 'Стандартный',
|
||||
large: 'Крупный',
|
||||
listDensity: 'Плотность списка',
|
||||
listDensityDescription: 'Изменяет высоту строк, отступы и масштаб индикаторов.',
|
||||
listDensityDescription: 'Изменяет высоту строк, отступы и масштаб индикатора прогресса.',
|
||||
compact: 'Компактный',
|
||||
comfortable: 'Удобный',
|
||||
relaxed: 'Просторный',
|
||||
@@ -589,15 +589,15 @@ const ru = {
|
||||
menuBarIcon: 'Показывать значок в строке меню',
|
||||
statusIndicatorIcon: 'Показывать значок состояния',
|
||||
systemTrayIcon: 'Показывать значок в системном трее',
|
||||
macosTrayDescription: 'Быстрый доступ из строки меню macOS.',
|
||||
windowsTrayDescription: 'Быстрый доступ из области уведомлений Windows.',
|
||||
linuxTrayDescription: 'Быстрый доступ из системного трея Linux при наличии.',
|
||||
defaultTrayDescription: 'Быстрый доступ из области системного трея.',
|
||||
macosTrayDescription: 'Обеспечивает быстрый доступ из строки меню macOS.',
|
||||
windowsTrayDescription: 'Обеспечивает быстрый доступ из области уведомлений Windows.',
|
||||
linuxTrayDescription: 'Обеспечивает быстрый доступ из трея рабочего стола или области состояния Linux (при наличии).',
|
||||
defaultTrayDescription: 'Обеспечивает быстрый доступ из области системного трея ОС (при наличии).',
|
||||
},
|
||||
network: {
|
||||
proxy: 'Прокси',
|
||||
mode: 'Режим',
|
||||
modeDescription: 'Управляет использованием прокси для новых загрузок.',
|
||||
modeDescription: 'Управляет использованием прокси для новых запросов на загрузку.',
|
||||
noProxy: 'Без прокси',
|
||||
systemProxy: 'Системный прокси',
|
||||
customProxy: 'Собственный прокси',
|
||||
@@ -605,21 +605,21 @@ const ru = {
|
||||
proxyHostDescription: 'Имя хоста, IP-адрес или URL HTTP-прокси.',
|
||||
proxyHostPlaceholder: '127.0.0.1 или http://127.0.0.1',
|
||||
proxyPort: 'Порт прокси',
|
||||
proxyPortDescription: 'Допустимый диапазон: от 1 до 65535.',
|
||||
noProxyDescription: 'Загрузки выполняются напрямую без прокси.',
|
||||
systemProxyDescription: 'Загрузки используют системный прокси {{platform}}. Для скачивания файлов требуется HTTP/HTTPS-прокси, для медиа поддерживается SOCKS.',
|
||||
customProxyDescription: 'Загрузки используют указанный HTTP-прокси для метаданных и скачивания.',
|
||||
invalidCustomProxy: 'Укажите корректный хост и порт HTTP-прокси.',
|
||||
incompleteCustomProxy: 'Введите хост и порт для использования прокси.',
|
||||
checkingSystemProxy: 'Проверка системного прокси…',
|
||||
detectedSystemProxy: 'Обнаружен системный прокси. Для обычных файлов нужен HTTP/HTTPS-прокси, для медиа поддерживается SOCKS.',
|
||||
noSystemProxy: 'Системный прокси не обнаружен. Загрузки будут выполняться напрямую.',
|
||||
systemProxyReadFailed: 'Не удалось прочитать настройки системного прокси. Выберите «Без прокси» или повторите попытку.',
|
||||
proxyPortDescription: 'Допустимый диапазон от 1 до 65535.',
|
||||
noProxyDescription: 'Загрузки игнорируют настроенные прокси.',
|
||||
systemProxyDescription: 'Загрузки используют обнаруженный системный прокси {{platform}}. Для обычных загрузок файлов требуется HTTP- или HTTPS-прокси; для загрузки медиа можно использовать SOCKS.',
|
||||
customProxyDescription: 'Загрузки используют настроенный HTTP-прокси для получения метаданных и движков скачивания.',
|
||||
invalidCustomProxy: 'Введите корректный хост и порт HTTP-прокси, чтобы включить собственный прокси.',
|
||||
incompleteCustomProxy: 'Введите хост и порт прокси, чтобы включить собственный прокси.',
|
||||
checkingSystemProxy: 'Проверка конфигурации системного прокси…',
|
||||
detectedSystemProxy: 'Обнаружен системный прокси. Для обычных загрузок файлов требуется HTTP- или HTTPS-прокси; для загрузки медиа можно использовать SOCKS.',
|
||||
noSystemProxy: 'Подходящий системный прокси не обнаружен. Загрузки будут выполняться без прокси.',
|
||||
systemProxyReadFailed: 'Не удалось прочитать конфигурацию системного прокси. Выберите «Без прокси» или повторите попытку, когда она станет доступна.',
|
||||
identity: 'Идентификация',
|
||||
customUserAgent: 'Собственный User-Agent',
|
||||
userAgentDescription: 'Применяется при получении метаданных и загрузке файлов.',
|
||||
userAgentPlaceholder: 'Оставьте пустым для использования значения по умолчанию',
|
||||
userAgentOverrides: 'Переопределяет заголовок User-Agent. Оставьте пустым для значений по умолчанию.',
|
||||
userAgentDescription: 'Применяется при получении метаданных и работе движков загрузки.',
|
||||
userAgentPlaceholder: 'Оставьте пустым, чтобы использовать значение Firelink по умолчанию',
|
||||
userAgentOverrides: 'Переопределяет исходящий заголовок User-Agent. Оставьте пустым, чтобы использовать значения Firelink по умолчанию.',
|
||||
chromeWindows: 'Chrome (Windows)',
|
||||
chromeMacos: 'Chrome (macOS)',
|
||||
edgeWindows: 'Edge (Windows)',
|
||||
@@ -631,23 +631,23 @@ const ru = {
|
||||
},
|
||||
locations: {
|
||||
baseDownloadFolder: 'Основная папка загрузок',
|
||||
baseDownloadFolderDescription: 'Папки категорий создаются внутри этой папки.',
|
||||
baseDownloadFolderDescription: 'Автоматические папки категорий создаются внутри этой папки.',
|
||||
browse: 'Обзор…',
|
||||
baseFolderCreateFailed: 'Основная папка сохранена, но не удалось создать папки категорий: {{detail}}',
|
||||
baseFolderUpdated: 'Основная папка загрузок обновлена',
|
||||
askWhereToSave: 'Запрашивать папку для сохранения при добавлении загрузок',
|
||||
rememberLastUsedDownloadDirectory: 'Запоминать последнюю использованную папку',
|
||||
rememberLastUsedDownloadDirectoryDescription: 'Использовать последнюю выбранную папку для следующих загрузок до перезапуска приложения.',
|
||||
automaticCategorySubfolders: 'Автоматически раскладывать файлы по папкам категорий',
|
||||
automaticCategorySubfoldersDescription: 'Если отключено, файлы сохраняются непосредственно в основную папку.',
|
||||
categorySubfolders: 'Папки категорий',
|
||||
askWhereToSave: 'Запрашивать место сохранения при добавлении загрузок',
|
||||
rememberLastUsedDownloadDirectory: 'Запоминать последнюю использованную папку загрузки',
|
||||
rememberLastUsedDownloadDirectoryDescription: 'Использовать последнюю папку, выбранную в окне добавления, для следующей загрузки до перезапуска приложения.',
|
||||
automaticCategorySubfolders: 'Автоматически сохранять файлы в подпапки категорий',
|
||||
automaticCategorySubfoldersDescription: 'Если отключено, автоматические загрузки используют основную папку.',
|
||||
categorySubfolders: 'Подпапки категорий',
|
||||
relativeToBase: 'Относительно основной папки',
|
||||
disabled: 'Отключено',
|
||||
categorySubfolder: 'Папка для категории «{{category}}»',
|
||||
customFolder: 'Другая папка',
|
||||
categorySubfolder: 'Подпапка «{{category}}»',
|
||||
customFolder: 'Собственная папка',
|
||||
useAutomatic: 'Автоматически',
|
||||
resetDefaults: 'Сбросить по умолчанию',
|
||||
resetToast: 'Настройки папок сброшены к значениям по умолчанию',
|
||||
resetToast: 'Настройки папок категорий сброшены по умолчанию',
|
||||
},
|
||||
siteLogins: {
|
||||
title: 'Учётные данные сайтов',
|
||||
@@ -656,7 +656,7 @@ const ru = {
|
||||
deleteCredential: 'Удалить учётные данные',
|
||||
deletedCredential: 'Учётные данные удалены',
|
||||
deleteFailed: 'Не удалось удалить учётные данные: {{detail}}',
|
||||
addTitle: 'Добавить логин для сайта',
|
||||
addTitle: 'Добавить учётные данные сайта',
|
||||
urlPattern: 'Шаблон URL:',
|
||||
urlPatternPlaceholder: 'например *.example.com или example.com/downloads',
|
||||
username: 'Имя пользователя:',
|
||||
@@ -665,58 +665,58 @@ const ru = {
|
||||
passwordPlaceholder: 'Пароль',
|
||||
saving: 'Сохранение…',
|
||||
addLogin: 'Добавить логин',
|
||||
urlPatternRequired: 'Укажите шаблон URL.',
|
||||
urlPatternWhitespace: 'Шаблон URL не должен содержать пробелы.',
|
||||
usernameRequired: 'Укажите имя пользователя.',
|
||||
passwordRequired: 'Укажите пароль.',
|
||||
accessBeforeSave: 'Предоставьте доступ к хранилищу учётных данных перед сохранением.',
|
||||
saveFailed: 'Не удалось безопасно сохранить учётные данные.',
|
||||
addedCredential: 'Учётные данные добавлены',
|
||||
urlPatternRequired: 'Требуется указать шаблон URL.',
|
||||
urlPatternWhitespace: 'Шаблон URL не может содержать пробелы.',
|
||||
usernameRequired: 'Требуется указать имя пользователя.',
|
||||
passwordRequired: 'Требуется указать пароль.',
|
||||
accessBeforeSave: 'Предоставьте доступ к хранилищу учётных данных перед сохранением логина сайта.',
|
||||
saveFailed: 'Не удалось безопасно сохранить учётные данные сайта.',
|
||||
addedCredential: 'Добавлены учётные данные сайта',
|
||||
},
|
||||
power: {
|
||||
title: 'Управление питанием',
|
||||
preventSleep: 'Запрещать переход в спящий режим во время активных загрузок',
|
||||
preventSleepDescription: 'Экран может выключаться. Firelink предотвращает только засыпание компьютера во время скачивания.',
|
||||
preventSleep: 'Запрещать спящий режим системы во время активных загрузок',
|
||||
preventSleepDescription: 'Экран всё ещё может выключаться. Firelink предотвращает засыпание устройства только настолько, чтобы завершить активные передачи.',
|
||||
},
|
||||
engine: {
|
||||
title: 'Движки скачивания и медиа',
|
||||
description: 'Результаты проверки сохраняются на время сеанса. «Перепроверить» запускает повторную валидацию.',
|
||||
title: 'Загрузчик медиа и движки',
|
||||
description: 'Успешные результаты используются повторно в течение сеанса приложения. Повторная проверка запускает реальную валидацию заново.',
|
||||
recheck: 'Перепроверить движки',
|
||||
coreDownloader: 'Основной модуль скачивания (aria2)',
|
||||
coreDownloader: 'Основной загрузчик (aria2)',
|
||||
version: 'Версия:',
|
||||
status: 'Статус:',
|
||||
mediaExtractors: 'Экстракторы медиа',
|
||||
browserCookiesSource: 'Источник файлов cookie браузера:',
|
||||
cookieDescription: 'yt-dlp использует куки браузера для доступа к закрытым видео и обхода ограничений. Firelink не сохраняет куки браузера.',
|
||||
cookieDescription: 'yt-dlp читает файлы cookie браузера для обхода ограничений на загрузку видео или доступа к закрытым медиа. Firelink не сохраняет файлы cookie браузера.',
|
||||
none: 'Не использовать',
|
||||
},
|
||||
integrations: {
|
||||
title: 'Подключение расширения браузера',
|
||||
description: 'Перехватывайте загрузки из браузера за 3 простых шага.',
|
||||
description: 'Перехватывайте загрузки прямо из браузера за три простых шага.',
|
||||
portablePairingEnabled: 'Портативное сопряжение включено',
|
||||
pairingTokenPersisted: 'Токен сопряжения сохранён',
|
||||
portablePersistedDescription: 'Токен сопряжения хранится в этой портативной папке Firelink. При перемещении папки сопряжение сохранится.',
|
||||
systemPersistedDescription: 'Токен сопряжения сохранён в системном хранилище и сохранится после перезапуска.',
|
||||
portablePersistedDescription: 'Ваш токен сопряжения хранится в этой портативной папке Firelink и сохранится при перемещении папки. Относитесь к папке как к конфиденциальным данным.',
|
||||
systemPersistedDescription: 'Ваш токен сопряжения сохранён в системном хранилище учётных данных и сохранится после перезапуска.',
|
||||
portablePairingAvailable: 'Доступно портативное сопряжение',
|
||||
credentialStorageNeeded: 'Требуется доступ к хранилищу учётных данных',
|
||||
portableAvailableDescription: 'Токен сопряжения сохранён в портативной папке Firelink. Включите его здесь, чтобы ознакомиться с условиями.',
|
||||
credentialStorageDescription: 'Firelink требуется доступ к системному хранилищу учётных данных для сохранения токена сопряжения между запусками. Без этого расширение будет работать только в текущем сеансе.',
|
||||
portableAvailableDescription: 'Ваш токен сопряжения хранится в этой портативной папке Firelink и сохранится после перезапуска. Включите его здесь, чтобы ознакомиться с предупреждением о портативном хранилище.',
|
||||
credentialStorageDescription: 'Firelink требуется доступ к системному хранилищу учётных данных для безопасного сохранения токена сопряжения между перезапусками приложения. В настоящее время ваше расширение будет оставаться подключённым только на время этого сеанса.',
|
||||
reviewPortablePairing: 'Проверить портативное сопряжение',
|
||||
grantCredentialAccess: 'Предоставить доступ',
|
||||
grantCredentialAccess: 'Предоставить доступ к хранилищу',
|
||||
copyToken: 'Скопировать токен',
|
||||
tokenDescription: 'Этот токен используется для авторизации расширения браузера.',
|
||||
tokenDescription: 'Этот защищённый токен авторизует ваше расширение браузера.',
|
||||
tokenCopied: 'Токен скопирован в буфер обмена!',
|
||||
tokenCopyFailed: 'Не удалось скопировать токен: {{detail}}',
|
||||
pairingTokenRegenerated: 'Токен сопряжения обновлён',
|
||||
regenerateFailed: 'Не удалось обновить токен сопряжения: {{detail}}',
|
||||
getExtension: 'Установить расширение',
|
||||
extensionDescription: 'Установите расширение Firelink Companion для Firefox или браузеров на базе Chromium.',
|
||||
pairingTokenRegenerated: 'Токен сопряжения сгенерирован заново',
|
||||
regenerateFailed: 'Не удалось сгенерировать токен сопряжения заново: {{detail}}',
|
||||
getExtension: 'Получить расширение',
|
||||
extensionDescription: 'Установите Firelink Companion для браузеров Firefox или Chromium.',
|
||||
firefoxAddons: 'Дополнения Firefox',
|
||||
chromiumZip: 'Chromium ZIP',
|
||||
pasteConnect: 'Вставить и подключить',
|
||||
pasteConnectDescription: 'Нажмите на значок Firelink на панели браузера и вставьте скопированный токен.',
|
||||
pasteConnectDescription: 'Нажмите на значок Firelink на панели инструментов браузера и вставьте скопированный токен.',
|
||||
extensionServerStatus: 'Статус сервера расширения:',
|
||||
listening: '● Работает на 127.0.0.1:{{port}}',
|
||||
listening: '● Прослушивание 127.0.0.1:{{port}}',
|
||||
unavailable: '● Сервер недоступен',
|
||||
},
|
||||
about: {
|
||||
@@ -726,19 +726,19 @@ const ru = {
|
||||
description: 'Кроссплатформенный менеджер загрузок для macOS, Windows и Linux.',
|
||||
sourceCode: 'Исходный код',
|
||||
source: 'Исходный код',
|
||||
upToDate: 'У вас установлена последняя версия Firelink ({{version}}).',
|
||||
upToDate: 'У вас установлена актуальная версия Firelink ({{version}}).',
|
||||
updateAvailable: 'Доступна новая версия Firelink {{version}}.',
|
||||
viewRelease: 'Просмотреть релиз',
|
||||
updates: 'Обновления',
|
||||
checkForUpdates: 'Проверить обновления',
|
||||
updateDescription: 'Firelink проверяет наличие новых версий на GitHub.',
|
||||
updateDescription: 'Firelink проверяет наличие новых версий в GitHub Releases.',
|
||||
checking: 'Проверка…',
|
||||
checkNow: 'Проверить сейчас',
|
||||
automaticUpdates: 'Автоматически проверять наличие обновлений',
|
||||
createdBy: 'Разработчик: NimBold',
|
||||
mitLicense: 'Лицензия MIT',
|
||||
credits: 'Благодарности: aria2, yt-dlp, FFmpeg и Deno.',
|
||||
copyright: '© 2026 NimBold. Все права защищены.',
|
||||
copyright: 'Copyright © 2026 NimBold. Все права защищены.',
|
||||
},
|
||||
},
|
||||
status: {
|
||||
|
||||
Reference in New Issue
Block a user