fix(i18n): improve Russian frontend localization (#6640)

This commit is contained in:
Nemu-x 2026-03-27 00:21:13 +03:00 committed by GitHub
parent 2871d1fedd
commit 6ff1e527ee
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 132 additions and 132 deletions

View File

@ -13,22 +13,22 @@
"time": "Время подключения",
"source": "Исходный адрес",
"destination": "IP-адрес назначения",
"destinationPort": "Целевой порт",
"destinationPort": "Порт назначения",
"type": "Тип"
},
"order": {
"default": "Default",
"default": "По умолчанию",
"uploadSpeed": "Скорость загрузки",
"downloadSpeed": "Скорость скачивания"
},
"actions": {
"active": "Active",
"closed": "Closed",
"active": "Активные",
"closed": "Закрытые",
"closeConnection": "Закрыть соединение"
},
"columnManager": {
"title": "Столбцы",
"dragHandle": "Drag handle"
"dragHandle": "Маркер перетаскивания"
}
}
}

View File

@ -1,12 +1,12 @@
{
"page": {
"tooltips": {
"lightweightMode": "LightWeight Mode",
"lightweightMode": "Режим LightWeight",
"manual": "Документация",
"settings": "Настройки главной страницы"
},
"cards": {
"trafficStats": "Статистика по трафику",
"trafficStats": "Статистика трафика",
"networkSettings": "Настройки сети",
"proxyMode": "Режим работы"
},
@ -14,10 +14,10 @@
"cards": {
"profile": "Карточка профиля",
"currentProxy": "Карточка текущего прокси",
"network": "Карточка настроек сети",
"network": "Карточка сети",
"proxyMode": "Карточка режима работы",
"traffic": "Карточка статистики по трафику",
"tests": "Карточка тестов доступности веб-сайтов",
"traffic": "Карточка трафика",
"tests": "Карточка проверки доступности сайтов",
"ip": "Информация об IP",
"clashInfo": "Информация о Clash",
"systemInfo": "Информация о системе"
@ -29,15 +29,15 @@
"components": {
"proxyTun": {
"status": {
"systemProxyEnabled": "Системный прокси включен, ваши приложения будут получать доступ к сети через него",
"systemProxyDisabled": "Системный прокси отключен, большинству пользователей рекомендуется включить эту опцию",
"tunModeServiceRequired": "Режим TUN требует установленную службу Clash Verge",
"tunModeEnabled": "Режим TUN включен, приложения будут получать доступ к сети через виртуальную сетевую карту",
"tunModeDisabled": "Режим TUN отключен"
"systemProxyEnabled": "Системный прокси включён — приложения используют его для доступа в сеть",
"systemProxyDisabled": "Системный прокси отключён — большинству пользователей рекомендуется его включить",
"tunModeServiceRequired": "Режим TUN требует установленной службы Clash Verge",
"tunModeEnabled": "Режим TUN включён — приложения используют виртуальный сетевой интерфейс",
"tunModeDisabled": "Режим TUN отключён"
},
"tooltips": {
"systemProxy": "Разрешить изменение настроек прокси-сервера операционной системы. Если разрешение не удастся, измените настройки прокси-сервера операционной системы вручную",
"tunMode": "Режим TUN может перехватить трафик всех приложений, подходит для приложений, которые не работают в режиме системного прокси."
"systemProxy": "Разрешает изменение системных настроек прокси. Если не удаётся, настройте прокси вручную",
"tunMode": "Режим TUN перехватывает трафик всех приложений и подходит для программ, не работающих через системный прокси"
}
},
"clashInfo": {
@ -45,7 +45,7 @@
"fields": {
"coreVersion": "Версия ядра",
"systemProxyAddress": "Адрес системного прокси",
"mixedPort": "Mixed Port",
"mixedPort": "Смешанный порт",
"uptime": "Время работы",
"rulesCount": "Количество правил"
}
@ -63,10 +63,10 @@
"settings": "Настройки"
},
"badges": {
"adminMode": "Administrator Mode",
"serviceMode": "Режим системной службы",
"adminMode": "Режим администратора",
"serviceMode": "Режим службы",
"sidecarMode": "Пользовательский режим",
"adminServiceMode": "Admin + Service Mode"
"adminServiceMode": "Режим администратора + служба"
}
},
"ipInfo": {
@ -74,32 +74,32 @@
"labels": {
"ip": "IP",
"asn": "ASN",
"isp": "ISP",
"org": "ORG",
"location": "Location",
"timezone": "Timezone",
"autoRefresh": "Автоматическое обновление через",
"unknown": "Unknown"
"isp": "Провайдер",
"org": "Организация",
"location": "Местоположение",
"timezone": "Часовой пояс",
"autoRefresh": "Автообновление через",
"unknown": "Неизвестно"
},
"errors": {
"load": "Не удалось получить данные IP"
"load": "Не удалось получить информацию об IP"
}
},
"currentProxy": {
"title": "Текущий сервер",
"title": "Текущий прокси",
"actions": {
"refreshDelay": "Проверка задержки"
"refreshDelay": "Проверить задержку"
},
"labels": {
"globalMode": "Глобальный режим",
"directMode": "Прямой режим",
"group": "Группа",
"proxy": "Прокси",
"noActiveNode": "Нет активного прокси-узла"
"noActiveNode": "Нет активного прокси"
}
},
"tests": {
"title": "Проверка доступности веб-сайтов"
"title": "Проверка доступности сайтов"
},
"traffic": {
"metrics": {
@ -113,22 +113,22 @@
"download": "Скачивание"
},
"patterns": {
"minutes": "{{time}} Minutes"
"minutes": "{{time}} мин"
}
},
"clashMode": {
"errors": {
"communication": "Core communication error"
"communication": "Ошибка связи с ядром"
},
"labels": {
"rule": "Rule",
"global": "Global",
"direct": "Direct"
"rule": "Правила",
"global": "Глобальный",
"direct": "Прямой"
},
"descriptions": {
"rule": "Автоматически выбирать прокси в зависимости от правил",
"global": "Перенаправлять все сетевые запросы через выбранный прокси",
"direct": "Подключение к интернету без прокси"
"rule": "Автоматический выбор прокси в зависимости от правил",
"global": "Весь трафик проходит через выбранный прокси",
"direct": "Подключение напрямую без прокси"
}
}
}

View File

@ -12,12 +12,12 @@
"settings": "Настройки"
},
"menu": {
"reorderMode": "Menu reorder mode",
"restoreDefaultOrder": "Restore default order",
"unlock": "Unlock menu order",
"lock": "Lock menu order",
"collapseNavBar": "Collapse navigation bar",
"expandNavBar": "Expand navigation bar"
"reorderMode": "Режим изменения порядка меню",
"restoreDefaultOrder": "Восстановить порядок по умолчанию",
"unlock": "Разблокировать порядок меню",
"lock": "Заблокировать порядок меню",
"collapseNavBar": "Свернуть панель навигации",
"expandNavBar": "Развернуть панель навигации"
}
}
}

View File

@ -3,7 +3,7 @@
"title": "Логи"
},
"actions": {
"showDescending": "Newest first",
"showAscending": "Oldest first"
"showDescending": "Сначала новые",
"showAscending": "Сначала старые"
}
}

View File

@ -2,20 +2,20 @@
"page": {
"actions": {
"updateAll": "Обновить все профили",
"viewRuntimeConfig": "Просмотреть используемый конфиг",
"viewRuntimeConfig": "Просмотреть текущую конфигурацию",
"reactivate": "Перезапустить профиль",
"import": "Импорт"
"import": "Импортировать"
},
"batch": {
"actions": {
"delete": "Удалить выбранные профили",
"selectAll": "Выбрать все",
"deselectAll": "Отменить выбор всех",
"deselectAll": "Снять выделение",
"done": "Готово"
},
"summary": {
"selected": "Выбрано",
"items": "элементы"
"items": "элементов"
},
"title": "Пакетные операции"
},
@ -27,22 +27,22 @@
},
"feedback": {
"errors": {
"invalidUrl": "Недопустимая ссылка на профиль, введите адрес, начинающийся с http:// или https://",
"invalidUrl": "Недопустимый URL профиля. Укажите адрес, начинающийся с http:// или https://",
"onlyYaml": "Поддерживаются только файлы YAML"
},
"notifications": {
"importRetry": "Import failed, retrying with Clash proxy...",
"importFail": "Import failed even with Clash proxy",
"importNeedsRefresh": "Profile imported but may need manual refresh",
"importSuccess": "Profile imported successfully, please restart if not visible",
"profileSwitched": "Профиль изменен",
"importRetry": "Не удалось импортировать, повторная попытка через Clash proxy...",
"importFail": "Не удалось импортировать даже через Clash proxy",
"importNeedsRefresh": "Профиль импортирован, но может потребоваться обновление вручную",
"importSuccess": "Профиль успешно импортирован. Перезапустите приложение, если он не появился",
"profileSwitched": "Профиль переключён",
"profileReactivated": "Профиль перезапущен",
"switchInterrupted": "Profile switch interrupted by new selection",
"batchDeleted": "Выбранные профили успешно удалены"
"switchInterrupted": "Переключение профиля прервано новым выбором",
"batchDeleted": "Выбранные профили удалены"
},
"notices": {
"forceRefreshCompleted": "Force refresh completed",
"emergencyRefreshFailed": "Emergency refresh failed: {{message}}"
"forceRefreshCompleted": "Принудительное обновление завершено",
"emergencyRefreshFailed": "Экстренное обновление не удалось: {{message}}"
}
},
"title": "Профили"
@ -50,7 +50,7 @@
"components": {
"card": {
"labels": {
"clickToImport": "Нажмите, чтобы импортировать подписку"
"clickToImport": "Нажмите для импорта подписки"
}
},
"fileInput": {
@ -64,16 +64,16 @@
"editRules": "Редактировать правила",
"editProxies": "Редактировать прокси",
"editGroups": "Редактировать группы прокси",
"extendConfig": "Изменить Merge",
"extendConfig": "Изменить Merge-конфигурацию",
"extendScript": "Изменить Script",
"openFile": "Открыть файл",
"update": "Обновить",
"updateViaProxy": "Update via proxy"
"updateViaProxy": "Обновить через прокси"
},
"more": {
"global": {
"merge": "Global Extend Config",
"script": "Global Extend Script"
"merge": "Глобальная Merge-конфигурация",
"script": "Глобальный Script"
},
"chips": {
"merge": "Merge",
@ -82,15 +82,15 @@
},
"profileItem": {
"tooltips": {
"showLast": "Click to show last update time",
"showNext": "Click to show next update"
"showLast": "Показать время последнего обновления",
"showNext": "Показать следующее обновление"
},
"status": {
"lastUpdateFailed": "Last Update failed",
"nextUp": "Next Up",
"noSchedule": "No schedule",
"unknown": "Unknown",
"autoUpdateDisabled": "Auto update disabled"
"lastUpdateFailed": "Последнее обновление не удалось",
"nextUp": "Следующее обновление",
"noSchedule": "Без расписания",
"unknown": "Неизвестно",
"autoUpdateDisabled": "Автообновление отключено"
}
}
},
@ -98,30 +98,30 @@
"profileForm": {
"title": {
"create": "Создать профиль",
"edit": "Изменить профиль"
"edit": "Редактировать профиль"
},
"fields": {
"type": "Тип",
"description": "Описание",
"subscriptionUrl": "URL подписки",
"httpTimeout": "HTTP Request Timeout",
"httpTimeout": "Тайм-аут HTTP-запроса",
"updateInterval": "Интервал обновления",
"useSystemProxy": "Использовать системный прокси для обновления",
"useClashProxy": "Использовать прокси Clash для обновления",
"useClashProxy": "Использовать Clash proxy для обновления",
"acceptInvalidCerts": "Принимать недействительные сертификаты (ОПАСНО)",
"allowAutoUpdate": "Allow Auto Update"
"allowAutoUpdate": "Разрешить автообновление"
},
"feedback": {
"notifications": {
"creationRetry": "Profile creation failed, retrying with Clash proxy...",
"creationSuccess": "Profile creation succeeded with Clash proxy"
"creationRetry": "Не удалось создать профиль, повторная попытка через Clash proxy...",
"creationSuccess": "Профиль успешно создан через Clash proxy"
}
}
},
"proxiesEditor": {
"title": "Редактировать прокси",
"placeholders": {
"multiUri": "Используйте символы новой строки для нескольких URI (поддерживается кодировка Base64)"
"multiUri": "Используйте перенос строки для нескольких URI (поддерживается Base64)"
},
"actions": {
"prepend": "Добавить прокси в начало",
@ -131,32 +131,32 @@
"groupsEditor": {
"title": "Редактировать группы прокси",
"errors": {
"nameRequired": "Требуется имя группы",
"nameExists": "Имя группы уже существует"
"nameRequired": "Введите имя группы",
"nameExists": "Группа с таким именем уже существует"
},
"fields": {
"type": "Тип группы",
"name": "Имя группы",
"icon": "Иконка Группы прокси",
"icon": "Значок группы прокси",
"proxies": "Использовать прокси",
"provider": "Использовать провайдера",
"healthCheckUrl": "URL проверки здоровья",
"healthCheckUrl": "URL проверки доступности",
"expectedStatus": "Ожидаемый статус",
"interval": "Интервал",
"maxFailedTimes": "Максимальное количество неудач",
"maxFailedTimes": "Максимальное число ошибок",
"interfaceName": "Имя интерфейса",
"routingMark": "Марка маршрутизации",
"filter": "Фильтр",
"excludeFilter": "Исключить фильтр",
"excludeFilter": "Исключающий фильтр",
"excludeType": "Тип исключения",
"includeAll": "Включить все прокси и провайдеры",
"includeAllProxies": "Включить все прокси",
"includeAllProviders": "Включить всех провайдеров"
},
"toggles": {
"lazy": "Ленивый",
"lazy": "Ленивая загрузка",
"disableUdp": "Отключить UDP",
"hidden": "Скрытый"
"hidden": "Скрытая"
},
"actions": {
"prepend": "Добавить группу в начало",
@ -168,12 +168,12 @@
"format": "Форматировать документ"
},
"messages": {
"readOnly": "Невозможно редактировать в режиме только для чтения"
"readOnly": "Редактирование недоступно в режиме только для чтения"
}
},
"confirmDelete": {
"title": "Подтвердите удаление",
"message": "Эта операция необратима"
"message": "Это действие необратимо"
},
"logViewer": {
"title": "Консоль скрипта"

View File

@ -1,31 +1,31 @@
{
"page": {
"modes": {
"rule": "Rule",
"global": "Global",
"direct": "Direct"
"rule": "Правила",
"global": "Глобальный",
"direct": "Прямой"
},
"actions": {
"toggleChain": "Цепной прокси",
"connect": "Connect",
"disconnect": "Disconnect",
"connecting": "Connecting...",
"clearChainConfig": "Delete Chain Config"
"toggleChain": "Цепочка прокси",
"connect": "Подключиться",
"disconnect": "Отключиться",
"connecting": "Подключение...",
"clearChainConfig": "Очистить цепочку"
},
"provider": {
"title": "Провайдер прокси",
"title": "Провайдеры прокси",
"actions": {
"updateAll": "Обновить все",
"update": "Обновить"
}
},
"rules": {
"title": "Proxy Rules",
"select": "Select Rules"
"title": "Правила прокси",
"select": "Выбрать правила"
},
"labels": {
"proxyCount": "Proxy Count",
"delayCheckReset": "Проверка задержки для отмены фиксированного"
"proxyCount": "Количество прокси",
"delayCheckReset": "Сброс проверки задержки"
},
"tooltips": {
"locate": "Местоположение",
@ -33,23 +33,23 @@
"sortDefault": "Сортировать по умолчанию",
"sortDelay": "Сортировать по задержке",
"sortName": "Сортировать по названию",
"delayCheckUrl": "URL проверки задержки",
"showBasic": "Отображать меньше сведений о прокси",
"showDetail": "Отображать больше сведений о прокси",
"delayCheckUrl": "URL для проверки задержки",
"showBasic": "Показывать меньше информации о прокси",
"showDetail": "Показывать больше информации о прокси",
"filter": "Фильтр"
},
"placeholders": {
"delayCheckUrl": "URL проверки задержки"
"delayCheckUrl": "URL для проверки задержки"
},
"chain": {
"header": "Конфигурация цепочки прокси",
"header": "Цепочка прокси",
"empty": "Цепочка прокси не настроена",
"instruction": "Нажимайте узлы по порядку, чтобы добавить в цепочку прокси",
"minimumNodes": "Chain proxy requires at least 2 nodes",
"minimumNodesHint": "Chain proxy requires at least 2 nodes. Please add one more node.",
"connectFailed": "Failed to connect to proxy chain",
"disconnectFailed": "Failed to disconnect from proxy chain",
"duplicateNode": "Proxy node already exists in chain",
"instruction": "Нажимайте на узлы по порядку, чтобы добавить их в цепочку",
"minimumNodes": "Для цепочки требуется минимум 2 узла",
"minimumNodesHint": "Для цепочки требуется минимум 2 узла. Добавьте ещё один узел.",
"connectFailed": "Не удалось подключиться к цепочке прокси",
"disconnectFailed": "Не удалось отключиться от цепочки прокси",
"duplicateNode": "Этот узел уже добавлен в цепочку",
"entryNode": "Вход",
"exitNode": "Выход"
},
@ -58,17 +58,17 @@
},
"title": {
"default": "Группы прокси",
"chainMode": "Proxy Chain Mode"
"chainMode": "Режим цепочки прокси"
}
},
"feedback": {
"notifications": {
"provider": {
"updateSuccess": "{{name}} updated successfully",
"updateFailed": "Failed to update {{name}}: {{message}}",
"genericError": "Update failed: {{message}}",
"none": "No providers available to update",
"allUpdated": "All providers updated successfully"
"updateSuccess": "{{name}} успешно обновлён",
"updateFailed": "Не удалось обновить {{name}}: {{message}}",
"genericError": "Ошибка обновления: {{message}}",
"none": "Нет доступных провайдеров для обновления",
"allUpdated": "Все провайдеры успешно обновлены"
}
}
},

View File

@ -1,14 +1,14 @@
{
"page": {
"actions": {
"testAll": "Тестировать все"
"testAll": "Проверить все"
},
"title": "Тест"
},
"components": {
"item": {
"actions": {
"test": "Тест"
"test": "Проверить"
}
}
},
@ -19,7 +19,7 @@
"edit": "Редактировать тест"
},
"fields": {
"url": "URL проверка"
"url": "URL для проверки"
}
}
},
@ -30,24 +30,24 @@
"no": "Нет",
"failed": "Ошибка",
"completed": "Завершено",
"disallowedIsp": "ISP заблокирован",
"disallowedIsp": "Провайдер заблокирован",
"originalsOnly": "Только Originals",
"noDisney": "Нет (IP забанен Disney+)",
"unsupportedRegion": "Страна/регион не поддерживается",
"noDisney": "Нет (IP заблокирован Disney+)",
"unsupportedRegion": "Страна или регион не поддерживаются",
"failedNetwork": "Ошибка подключения"
}
},
"unlock": {
"page": {
"actions": {
"testing": "Тестирование ..."
"testing": "Проверка..."
},
"empty": "No unlock test items",
"empty": "Нет элементов для проверки разблокировки",
"messages": {
"detectionFailedWithName": "Не удалось обнаружить {{name}}",
"detectionTimeout": "Detection timeout or failed"
"detectionFailedWithName": "Не удалось определить {{name}}",
"detectionTimeout": "Истекло время ожидания проверки или произошла ошибка"
},
"title": "Тест доступности веб-сайтов"
"title": "Проверка доступности веб-сайтов"
}
}
}