Files
MeshChatX/meshchatx/src/frontend/locales/ru.json

851 lines
60 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"app": {
"name": "Reticulum MeshChatX",
"sync_messages": "Синхронизировать сообщения",
"compose": "Написать",
"messages": "Сообщения",
"nomad_network": "Nomad Network",
"map": "Карта",
"archives": "Архивы",
"propagation_nodes": "Узлы ретрансляции",
"network_visualiser": "Визуализатор сети",
"interfaces": "Интерфейсы",
"tools": "Инструменты",
"settings": "Настройки",
"identities": "Личности",
"documentation": "Документация",
"about": "О программе",
"changelog_title": "Что нового",
"do_not_show_again": "Не показывать снова для этой версии",
"do_not_show_ever": "Больше никогда не показывать",
"tutorial_title": "Руководство",
"tutorial_welcome": "Добро пожаловать в MeshChatX",
"tutorial_connect": "Подключение к сети Mesh",
"tutorial_finish": "Все готово!",
"tutorial_restart_required": "Требуется перезагрузка",
"tutorial_docker_note": "Если вы используете Docker, убедитесь, что ваш контейнер автоматически перезапускается.",
"my_identity": "Моя личность",
"identity_hash": "Хеш личности",
"lxmf_address": "Адрес LXMF",
"announce": "Анонсировать",
"announce_now": "Анонсировать сейчас",
"last_announced": "Последний анонс: {time}",
"last_announced_never": "Последний анонс: Никогда",
"display_name_placeholder": "Отображаемое имя",
"profile": "Профиль",
"manage_identity": "Управляйте своей личностью, участием в транспорте и настройками LXMF по умолчанию.",
"theme": "Тема",
"theme_mode": "Режим {mode}",
"transport": "Транспорт",
"enabled": "Включено",
"disabled": "Выключено",
"propagation": "Ретрансляция",
"local_node_running": "Локальный узел запущен",
"client_only": "Только клиент",
"copy": "Копировать",
"appearance": "Внешний вид",
"appearance_description": "Переключайтесь между светлой и темной темами в любое время.",
"light_theme": "Светлая тема",
"dark_theme": "Темная тема",
"live_preview": "Предпросмотр обновляется мгновенно.",
"realtime": "Реальное время",
"transport_mode": "Режим транспорта",
"transport_description": "Ретранслируйте пути и трафик для ближайших узлов.",
"enable_transport_mode": "Включить режим транспорта",
"transport_toggle_description": "Маршрутизировать анонсы, отвечать на запросы путей и помогать вашей сети оставаться онлайн.",
"requires_restart": "Требуется перезапуск после переключения.",
"show_community_interfaces": "Показывать интерфейсы сообщества",
"community_interfaces_description": "Показывать предустановки, поддерживаемые сообществом, при добавлении новых интерфейсов.",
"reliability": "Надежность",
"messages_description": "Настройте, как MeshChat повторяет или эскалирует неудачные доставки. Контролируйте автоматический повтор, пересылку вложений и механизмы отката для обеспечения надежной доставки сообщений в сети mesh.",
"auto_resend_title": "Автоповтор при анонсе узла",
"auto_resend_description": "Неудачные сообщения будут автоматически отправлены повторно, как только получатель снова выйдет в сеть.",
"retry_attachments_title": "Разрешить повтор для вложений",
"retry_attachments_description": "Крупные вложения также будут отправлены повторно (полезно, если у обоих узлов высокие лимиты).",
"auto_fallback_title": "Автопереключение на узел ретрансляции",
"auto_fallback_description": "Неудачные прямые доставки будут поставлены в очередь на ваш предпочтительный узел ретрансляции.",
"inbound_stamp_cost": "Стоимость входящего штампа",
"inbound_stamp_description": "Требовать штампы Proof-of-Work для сообщений, отправляемых вам напрямую. Более высокие значения требуют больше вычислительной работы от отправителей. Диапазон: 1-254. По умолчанию: 8.",
"browse_nodes": "Список узлов",
"propagation_nodes_description": "Поддерживайте общение, даже когда узлы находятся в офлайне.",
"nodes_info_1": "Узлы ретрансляции надежно хранят сообщения до тех пор, пока получатели снова не синхронизируются.",
"nodes_info_2": "Узлы соединяются друг с другом для распространения зашифрованных данных.",
"nodes_info_3": "Большинство узлов хранят данные около 30 дней, после чего недоставленные сообщения удаляются.",
"run_local_node": "Запустить локальный узел ретрансляции",
"run_local_node_description": "MeshChat будет анонсировать и поддерживать узел, используя этот локальный хеш назначения.",
"preferred_propagation_node": "Предпочтительный узел ретрансляции",
"preferred_node_placeholder": "Хеш назначения, например a39610c89d18bb48c73e429582423c24",
"fallback_node_description": "Сообщения будут отправляться на этот узел, если прямая доставка не удалась.",
"auto_sync_interval": "Интервал автосинхронизации",
"last_synced": "Последняя синхронизация {time} назад.",
"last_synced_never": "Последняя синхронизация: никогда.",
"propagation_stamp_cost": "Стоимость штампа узла ретрансляции",
"propagation_stamp_description": "Требовать штампы Proof-of-Work для сообщений, передаваемых через ваш узел. Более высокие значения требуют больше вычислительной работы. Диапазон: 13-254. По умолчанию: 16. **Примечание:** изменение требует перезапуска приложения.",
"language": "Язык",
"select_language": "Выберите предпочтительный язык.",
"custom_fork_by": "Модифицированная версия от",
"open": "Открыть",
"identity": "Личность",
"lxmf_address_hash": "Хеш адреса LXMF",
"propagation_node_status": "Статус узла ретрансляции",
"last_sync": "Синхронизация: {time} назад",
"last_sync_never": "Синхронизация: никогда",
"syncing": "Синхронизация...",
"syncing_node": "Синхронизация... ({state})",
"synced": "Синхронизировано",
"not_synced": "Не синхронизировано",
"not_configured": "Не настроено",
"toggle_source": "Исходный код",
"audio_calls": "Телефон",
"calls": "Звонки",
"status": "Статус",
"active_call": "Активный звонок",
"incoming": "Входящий",
"outgoing": "Исходящий",
"call": "Звонок",
"calls_plural": "Звонки",
"hop": "прыжок",
"hops_plural": "прыжков",
"hung_up_waiting": "Отключено, ожидание звонка...",
"view_incoming_calls": "Просмотр входящих звонков",
"hangup_all_calls": "Завершить все звонки",
"clear_history": "Очистить историю",
"no_active_calls": "Нет активных звонков",
"incoming_call": "Входящий звонок...",
"outgoing_call": "Исходящий звонок...",
"call_active": "Активен",
"call_ended": "Завершен",
"propagation_node": "Узел ретрансляции",
"sync_now": "Синхронизировать сейчас",
"setting_auto_saved": "Настройка {label} сохранена",
"auto_resend": "Авто-пересылка",
"retry_attachments": "Повтор вложений",
"auto_fallback": "Авто-откат",
"community_interfaces": "Сообщества",
"preferred_node": "Предпочитаемый узел",
"local_node": "Локальный узел",
"auto_sync": "Авто-синхронизация",
"inbound_stamp_cost_label": "Стоимость входящих марок",
"propagation_stamp_cost_label": "Стоимость марок узла",
"page_archiver": "Архиватор страниц",
"smart_crawler": "Умный краулер",
"authentication": "Аутентификация",
"banishment": "Изгнание",
"banishment_description": "Настройте визуальный эффект для заблокированных узлов и собеседников.",
"banished_effect_enabled": "Включить эффект изгнания",
"banished_effect_description": "Показывать визуальный оверлей на заблокированных узлах.",
"banished_text_label": "Текст изгнания",
"banished_text_description": "Текст, отображаемый поверх заблокированного узла.",
"banished_color_label": "Цвет изгнания",
"banished_color_description": "Цвет, используемый для эффекта изгнания.",
"desktop_open_calls_in_separate_window": "Открыть звонки в отдельном окне",
"desktop_open_calls_in_separate_window_description": "При активном звонке он будет отображаться в отдельном всплывающем окне, а не внутри приложения.",
"desktop_hardware_acceleration_enabled": "Аппаратное ускорение",
"desktop_hardware_acceleration_enabled_description": "Отключите это, если вы наблюдаете мерцание интерфейса, черные экраны или графические артефакты.",
"translator": "Переводчик",
"translator_enabled": "Включить переводчик",
"translator_description": "Включить функции перевода в разговорах.",
"libretranslate_url": "URL LibreTranslate",
"libretranslate_url_description": "URL-адрес, по которому доступен API LibreTranslate.",
"system": "Система",
"reticulum_stack": "Стек Reticulum",
"reticulum_stack_description": "Управление базовым сетевым стеком Reticulum.",
"reload_rns": "Перезагрузить RNS",
"reload_rns_description": "Отключить все назначения, остановить текущий экземпляр RNS и загрузить его заново. Это полезно для применения изменений конфигурации или перезапуска сетевого стека без перезагрузки всего приложения.",
"reloading_rns": "Перезагрузка RNS...",
"reloaded_rns": "Reticulum успешно перезагружен",
"announce_interval": "Интервал анонсов",
"stop_sync_confirm": "Вы уверены, что хотите остановить синхронизацию?",
"sync_error_generic": "Что-то пошло не так. Попробуйте позже.",
"sync_complete": "Синхронизация завершена. Получено сообщений: {count}.",
"sync_error": "Ошибка синхронизации: {status}",
"switching_identity": "Переключение личности...",
"loading_identity": "Загрузка вашей личности",
"emergency_mode_active": "Аварийный режим активен — используется база данных в оперативной памяти и ограниченные службы.",
"blackhole_integration_enabled": "Интеграция Blackhole",
"blackhole_integration_description": "Автоматически блокировать (blackhole) личности на транспортном уровне Reticulum при изгнании пользователей в MeshChatX."
},
"common": {
"open": "Открыть",
"close": "Закрыть",
"cancel": "Отмена",
"save": "Сохранить",
"block": "Заблокировать",
"delete": "Удалить",
"edit": "Изменить",
"add": "Добавить",
"sync": "Синхронизировать",
"restart_app": "Перезапустить приложение",
"reveal": "Показать",
"refresh": "Обновить",
"vacuum": "Сжать базу",
"auto_recover": "Автовосстановление",
"shutdown": "Выключить",
"acknowledge_reset": "Подтвердить и сбросить",
"confirm": "Подтвердить",
"delete_confirm": "Вы уверены, что хотите удалить это? Это действие нельзя отменить."
},
"identities": {
"title": "Личности",
"manage": "Управляйте и переключайтесь между несколькими личностями Reticulum.",
"new_identity": "Новая личность",
"generate_fresh": "Создать новую личность Reticulum.",
"display_name": "Отображаемое имя",
"display_name_hint": "например, Секретный агент",
"current": "Текущая",
"switch": "Переключиться на эту личность",
"delete": "Удалить личность",
"no_identities": "Личности не найдены",
"create_first": "Создайте новую личность, чтобы начать.",
"switch_confirm": "Переключиться на личность \"{name}\"? Приложение будет перезапущено.",
"delete_confirm": "Вы уверены, что хотите удалить личность \"{name}\"? Это действие нельзя отменить.",
"switched": "Личность изменена. Приложение будет перезапущено для применения изменений.",
"created": "Личность успешно создана",
"deleted": "Личность удалена"
},
"about": {
"title": "О программе",
"version": "v{version}",
"rns_version": "RNS {version}",
"lxmf_version": "LXMF {version}",
"python_version": "Python {version}",
"config_path": "Путь к конфигу",
"database_path": "Путь к базе данных",
"database_size": "Размер базы данных",
"database_health": "Состояние базы данных",
"database_health_description": "Быстрая проверка, настройка WAL и инструменты восстановления базы данных MeshChatX.",
"running_checks": "Выполнение проверок...",
"integrity": "Целостность",
"journal_mode": "Режим журнала",
"wal_autocheckpoint": "WAL авточекпоинт",
"page_size": "Размер страницы",
"pages_free": "Страницы / Свободно",
"free_space_estimate": "Оценка свободного места",
"system_resources": "Системные ресурсы",
"live": "Live",
"memory_rss": "Память (RSS)",
"virtual_memory": "Виртуальная память",
"network_stats": "Статистика сети",
"sent": "Отправлено",
"received": "Получено",
"packets_sent": "Пакетов отправлено",
"packets_received": "Пакетов получено",
"reticulum_stats": "Статистика Reticulum",
"total_paths": "Всего путей",
"announces_per_second": "Анонсов / сек",
"announces_per_minute": "Анонсов / мин",
"announces_per_hour": "Анонсов / час",
"download_activity": "Активность загрузки",
"no_downloads_yet": "Загрузок пока нет",
"runtime_status": "Статус выполнения",
"shared_instance": "Общий экземпляр",
"standalone_instance": "Автономный экземпляр",
"transport_enabled": "Транспорт включен",
"transport_disabled": "Транспорт выключен",
"identity_addresses": "Личность и адреса",
"telephone_address": "Адрес телефона",
"security_integrity": "Целостность безопасности",
"security_integrity_description": "Статус верификации системы для бэкенда и файлов данных",
"secured": "Защищено",
"tampering_detected": "Обнаружено вмешательство",
"technical_issues": "Технические проблемы:",
"no_integrity_violations": "Нарушений целостности не обнаружено с момента последнего запуска.",
"dependency_chain": "Цепочка зависимостей",
"other_core_components": "Другие основные компоненты",
"backend_dependencies": "Зависимости бэкенда"
},
"interfaces": {
"title": "Интерфейсы",
"manage": "Управление",
"description": "Поиск, фильтрация и экспорт ваших адаптеров Reticulum.",
"add_interface": "Добавить интерфейс",
"import": "Импорт",
"export_all": "Экспорт всех",
"search_placeholder": "Поиск по имени, типу, хосту...",
"all": "Все",
"all_types": "Все типы",
"no_interfaces_found": "Интерфейсы не найдены",
"no_interfaces_description": "Измените параметры поиска или добавьте новый интерфейс.",
"restart_required": "Требуется перезапуск",
"restart_description": "Reticulum MeshChatX необходимо перезапустить, чтобы изменения вступили в силу.",
"restart_now": "Перезапустить сейчас"
},
"map": {
"title": "Карта",
"description": "Офлайн-карта с поддержкой MBTiles.",
"upload_mbtiles": "Загрузить MBTiles",
"select_file": "Выбрать файл MBTiles",
"offline_mode": "Офлайн-режим",
"online_mode": "Онлайн-режим",
"attribution": "Атрибуция",
"bounds": "Границы",
"center": "Центр",
"zoom": "Масштаб",
"uploading": "Загрузка...",
"upload_success": "Карта успешно загружена",
"upload_failed": "Ошибка загрузки карты",
"no_map_loaded": "Офлайн-карта не загружена. Загрузите файл .mbtiles для включения офлайн-режима.",
"invalid_file": "Неверный файл MBTiles. Поддерживаются только растровые карты.",
"default_view": "Вид по умолчанию",
"set_as_default": "Установить как вид по умолчанию",
"export_area": "Экспорт области",
"export_instructions": "Выделите область на карте для экспорта.",
"min_zoom": "Мин. масштаб",
"max_zoom": "Макс. масштаб",
"tile_count": "Оценка тайлов",
"start_export": "Начать экспорт",
"exporting": "Экспорт карты...",
"download_ready": "Экспорт завершен",
"download_now": "Скачать MBTiles",
"caching_enabled": "Кэширование тайлов",
"clear_cache": "Очистить кэш",
"cache_cleared": "Кэш тайлов очищен",
"tile_server_url": "URL сервера тайлов",
"tile_server_url_placeholder": "https://tile.openstreetmap.org/{z}/{x}/{y}.png",
"tile_server_url_hint": "Используйте {z}, {x}, {y} для масштаба, столбца, строки",
"tile_server_saved": "URL сервера тайлов сохранен",
"tile_server_openstreetmap": "OpenStreetMap",
"nominatim_api_url": "URL API Nominatim",
"nominatim_api_url_placeholder": "https://nominatim.openstreetmap.org",
"nominatim_api_url_hint": "Базовый URL для сервиса геокодирования Nominatim",
"nominatim_api_saved": "URL API Nominatim сохранен",
"search_placeholder": "Поиск места...",
"search_offline_error": "Поиск доступен только в онлайн-режиме",
"search_connection_error": "Не удалось подключиться к сервису поиска. Проверьте подключение к интернету.",
"search_error": "Ошибка поиска",
"search_no_results": "Результаты не найдены",
"custom_tile_server_unavailable": "Пользовательский сервер тайлов недоступен в офлайн-режиме",
"custom_nominatim_unavailable": "Пользовательский сервер Nominatim недоступен в офлайн-режиме",
"onboarding_title": "Экспорт в MBTiles!",
"onboarding_text": "Используйте инструмент экспорта для загрузки областей карты в виде файлов MBTiles для офлайн-использования.",
"onboarding_got_it": "Понятно",
"tool_point": "Точка",
"tool_linestring": "Линия",
"tool_polygon": "Полигон",
"tool_circle": "Круг",
"tool_measure": "Измерить",
"tool_clear": "Очистить",
"save_drawing": "Сохранить слой",
"load_drawing": "Загрузить слой",
"save_drawing_title": "Сохранить слой рисунков",
"save_drawing_desc": "Сохранить текущие аннотации на карте в базу данных.",
"drawing_name": "Название слоя",
"drawing_name_placeholder": "напр., Сектор Альфа",
"load_drawing_title": "Загрузить слой рисунков",
"loading_drawings": "Загрузка сохраненных слоев...",
"no_drawings": "Нет сохраненных слоев",
"no_drawings_desc": "Вы еще не сохранили ни одной аннотации на карте.",
"saved_on": "Сохранено",
"settings": "Настройки карты",
"go_to_my_location": "Мое местоположение"
},
"interface": {
"disable": "Выключить",
"enable": "Включить",
"edit_interface": "Изменить интерфейс",
"export_interface": "Экспорт интерфейса",
"delete_interface": "Удалить интерфейс",
"listen": "Слушать",
"forward": "Пересылать",
"port": "Порт",
"frequency": "Частота",
"bandwidth": "Полоса",
"txpower": "Мощность TX",
"spreading_factor": "SF",
"coding_rate": "Скорость кодирования",
"bitrate": "Битрейт",
"tx": "TX",
"rx": "RX",
"noise": "Шум",
"clients": "Клиенты"
},
"messages": {
"title": "Сообщения",
"conversations": "Чаты",
"announces": "Анонсы",
"search_placeholder": "Поиск по {count} чатам...",
"unread": "Непрочитанные",
"failed": "Ошибки",
"attachments": "Вложения",
"no_messages_yet": "Сообщений пока нет",
"loading_conversations": "Загрузка чатов...",
"no_conversations": "Чаты не найдены",
"discover_peers": "Ищите собеседников во вкладке 'Анонсы'",
"no_search_results": "Ничего не найдено",
"try_another_search": "Попробуйте другой поисковый запрос",
"no_search_results_conversations": "По вашему запросу чатов не найдено.",
"search_placeholder_announces": "Поиск по {count} недавним анонсам...",
"no_peers_discovered": "Собеседники не обнаружены",
"waiting_for_announce": "Ожидание анонсов!",
"no_search_results_peers": "По вашему запросу собеседников не найдено!",
"direct": "Прямая связь",
"downloading": "Загрузка",
"hops": "{count} прыжков",
"hops_away": "в {count} прыжках",
"snr": "SNR {snr}",
"stamp_cost": "Стоимость штампа {cost}",
"pop_out_chat": "Открыть в отдельном окне",
"custom_display_name": "Свое имя для контакта",
"send_placeholder": "Введите сообщение...",
"no_messages_in_conversation": "В этом чате пока нет сообщений.",
"say_hello": "Скажите привет!",
"no_active_chat": "Нет активного чата",
"select_peer_or_enter_address": "Выберите собеседника из списка или введите адрес ниже",
"add_files": "Добавить файлы",
"paste_from_clipboard": "Вставить из буфера обмена",
"location": "Местоположение",
"share_location": "Поделиться местоположением",
"request_location": "Запросить местоположение",
"view_on_map": "Показать на карте",
"request": "Запрос",
"generate_paper_message": "Создать бумажное сообщение (LXM)",
"recording": "Запись: {duration}",
"nomad_network_node": "Узел Nomad Network",
"toggle_source": "Исходный код"
},
"nomadnet": {
"remove_favourite": "Удалить из избранного",
"add_favourite": "Добавить в избранное",
"page_archives": "Архивы страницы",
"archive_current_version": "Архивировать текущую версию",
"no_archives_for_this_page": "Нет архивов для этой страницы",
"viewing_archived_version_from": "Просмотр архивной версии от {time}",
"viewing_archived_version": "Просмотр архивной версии",
"load_live": "Загрузить текущую",
"failed_to_load_page": "Ошибка загрузки страницы",
"archived_version_available": "Доступна архивная версия этой страницы.",
"view_archive": "Просмотреть архив",
"no_active_node": "Нет активного узла",
"select_node_to_browse": "Выберите узел, чтобы начать просмотр!",
"open_nomadnet_url": "Открыть URL Nomadnet",
"unknown_node": "Неизвестный узел",
"existing_download_in_progress": "Уже выполняется загрузка. Дождитесь ее завершения перед началом новой.",
"favourites": "Избранное",
"announces": "Анонсы",
"search_favourites_placeholder": "Поиск по {count} избранным...",
"search_placeholder_announces": "Поиск по {count} недавним анонсам...",
"rename": "Переименовать",
"remove": "Удалить",
"no_favourites": "Нет избранного",
"add_nodes_from_announces": "Добавляйте узлы из вкладки анонсов.",
"search_announces": "Поиск анонсов",
"announced_time_ago": "Анонсировано {time} назад",
"block_node": "Заблокировать узел",
"no_announces_yet": "Анонсов пока нет",
"listening_for_peers": "Ожидание узлов в сети.",
"block_node_confirm": "Вы уверены, что хотите заблокировать {name}? Его анонсы будут игнорироваться, и он не будет отображаться в списке.",
"node_blocked_successfully": "Узел успешно заблокирован",
"failed_to_block_node": "Не удалось заблокировать узел",
"rename_favourite": "Переименовать в избранном",
"remove_favourite_confirm": "Вы уверены, что хотите удалить этот узел из избранного?",
"enter_nomadnet_url": "Введите URL Nomadnet",
"archiving_page": "Архивация страницы...",
"page_archived_successfully": "Страница успешно архивирована.",
"identify_confirm": "Вы уверены, что хотите идентифицировать себя для этого узла NomadNetwork? Страница будет перезагружена после отправки вашей личности."
},
"forwarder": {
"title": "LXMF Форвардер",
"description": "Пересылка сообщений с одного адреса на другой с прозрачной обратной маршрутизацией.",
"add_rule": "Добавить правило пересылки",
"name": "Имя",
"name_placeholder": "Название правила (например, Домашний узел)...",
"forward_to_hash": "Пересылать на хеш",
"destination_placeholder": "Хеш назначения LXMF...",
"source_filter": "Фильтр источника (опционально)",
"source_filter_placeholder": "Пересылать только с этого хеша...",
"add_button": "Добавить правило",
"active_rules": "Активные правила",
"no_rules": "Правила пересылки не настроены.",
"active": "Активно",
"disabled": "Выключено",
"forwarding_to": "Пересылка на: {hash}",
"source_filter_display": "Фильтр источника: {hash}",
"delete_confirm": "Вы уверены, что хотите удалить это правило?"
},
"archives": {
"description": "Поиск и просмотр архивных страниц Nomad Network",
"search_placeholder": "Поиск по содержимому, хешу или пути...",
"loading": "Загрузка архивов...",
"no_archives_found": "Архивы не найдены",
"adjust_filters": "Попробуйте изменить параметры поиска.",
"browse_to_archive": "Архивные страницы появятся здесь после посещения сайтов Nomad Network.",
"page": "Страница",
"pages": "Страницы",
"view": "Просмотр",
"showing_range": "Показано с {start} по {end} из {total} архивов",
"page_of": "Страница {page} из {total_pages}"
},
"docs": {
"title": "Документация",
"subtitle": "Руководства и справочники Reticulum.",
"status_title": "Статус документации",
"status_downloading": "Загрузка...",
"status_available": "Доступно офлайн",
"status_not_downloaded": "Не загружено",
"btn_download": "Скачать руководства",
"btn_update": "Обновить руководство",
"error": "Ошибка"
},
"tools": {
"utilities": "Утилиты",
"power_tools": "Инструменты для операторов",
"diagnostics_description": "Средства диагностики и прошивки поставляются вместе с MeshChat для устранения неполадок без использования консоли.",
"ping": {
"title": "Ping",
"description": "Тест задержки для любого LXMF хеша с отображением статуса."
},
"rnprobe": {
"title": "RNProbe",
"description": "Зондирование узлов пакетами произвольного размера для проверки связи."
},
"rncp": {
"title": "RNCP",
"description": "Отправка и получение файлов через RNS с отслеживанием прогресса."
},
"rnstatus": {
"title": "RNStatus",
"description": "Статистика интерфейсов и информация о состоянии сети."
},
"rnpath": {
"title": "RNPath",
"description": "Управление таблицей путей, просмотр частоты анонсов и запрос путей."
},
"translator": {
"title": "Translator",
"description": "Перевод текста через LibreTranslate API или локальный Argos Translate."
},
"forwarder": {
"title": "Forwarder",
"description": "Пересылка LXMF с маршрутизацией обратного пути."
},
"rnode_flasher": {
"title": "RNode Flasher",
"description": "Прошивка и обновление адаптеров RNode без использования командной строки."
},
"micron_editor": {
"title": "Редактор Micron",
"description": "Редактирование и предпросмотр разметки Micron с живым рендерингом.",
"editor": "Редактор",
"preview": "Предпросмотр",
"download": "Скачать",
"edit": "Редактировать",
"view_preview": "Просмотр",
"placeholder": "Введите разметку Micron здесь...",
"reset": "Сброс",
"new_tab": "Новая вкладка",
"rename_tab": "Переименовать вкладку",
"confirm_reset": "Вы уверены, что хотите сбросить редактор? Все ваши вкладки и содержимое будут потеряны.",
"confirm_delete_tab": "Вы уверены, что хотите удалить эту вкладку?",
"main_tab": "Основная"
},
"paper_message": {
"title": "Бумажное сообщение",
"description": "Создание и чтение подписанных бумажных сообщений LXMF через QR-коды."
}
},
"ping": {
"title": "Пинг узлов сети",
"description": "Только пункты назначения {code} отвечают на пинг.",
"destination_hash": "Хеш назначения",
"timeout_seconds": "Тайм-аут пинга (секунды)",
"start_ping": "Запустить пинг",
"stop": "Стоп",
"clear_results": "Очистить результаты",
"drop_path": "Сбросить путь",
"status": "Статус",
"running": "Запущено",
"idle": "Ожидание",
"last_rtt": "Последний RTT",
"last_error": "Последняя ошибка",
"console_output": "Вывод консоли",
"streaming_responses": "Потоковая передача seq-ответов в реальном времени",
"no_pings_yet": "Пингов пока нет. Запустите проверку для сбора данных RTT.",
"invalid_hash": "Неверный хеш назначения!",
"timeout_must_be_number": "Тайм-аут должен быть числом!"
},
"rncp": {
"file_transfer": "Передача файлов",
"title": "RNCP - Reticulum Network Copy",
"description": "Отправка и получение файлов через сеть Reticulum с использованием ресурсов RNS. Этот инструмент обеспечивает надежную передачу файлов между узлами сети даже через каналы с высокой задержкой.",
"usage_steps": "Как использовать RNCP:",
"step_1": "1. Чтобы **получить** файл, перейдите на вкладку **Прослушивание**, введите разрешенные хеши идентичности (кто может присылать вам файлы) и нажмите **Начать прослушивание**.",
"step_2": "2. Чтобы **отправить** файл, получите **Хеш назначения** прослушиваемого узла, введите **Локальный путь к файлу** и нажмите **Отправить файл**.",
"step_3": "3. Чтобы **запросить** файл, получите **Хеш назначения** узла, прослушивающего с включенной опцией 'Разрешить получение', введите **Удаленный путь к файлу** и нажмите **Получить файл**.",
"send_file": "Отправить файл",
"fetch_file": "Получить файл",
"listen": "Прослушивание",
"destination_hash": "Хеш назначения",
"file_path": "Путь к файлу",
"timeout_seconds": "Тайм-аут (секунды)",
"disable_compression": "Отключить сжатие",
"cancel": "Отмена",
"progress": "Прогресс",
"invalid_hash": "Неверный хеш назначения!",
"provide_file_path": "Пожалуйста, укажите путь к файлу!",
"file_sent_successfully": "Файл успешно отправлен. ID передачи: {id}",
"failed_to_send": "Не удалось отправить файл",
"remote_file_path": "Удаленный путь к файлу",
"save_path_optional": "Путь сохранения (опционально)",
"save_path_placeholder": "Оставьте пустым для текущей директории",
"allow_overwrite": "Разрешить перезапись",
"provide_remote_file_path": "Пожалуйста, укажите удаленный путь к файлу!",
"file_fetched_successfully": "Файл успешно получен. Сохранен в: {path}",
"failed_to_fetch": "Не удалось получить файл",
"allowed_hashes": "Разрешенные хеши идентичности (по одному в строке)",
"fetch_jail_path": "Путь изоляции (jail) для получения (опционально)",
"allow_fetch": "Разрешить получение",
"start_listening": "Начать прослушивание",
"stop_listening": "Остановить прослушивание",
"listening_on": "Прослушивание на:",
"provide_allowed_hash": "Пожалуйста, укажите хотя бы один разрешенный хеш идентичности!",
"failed_to_start_listener": "Не удалось запустить прослушиватель"
},
"rnprobe": {
"network_diagnostics": "Диагностика сети",
"title": "RNProbe - Проверка назначения",
"description": "Проверка пунктов назначения с настраиваемым размером пакетов для тестирования связности и измерения RTT.",
"destination_hash": "Хеш назначения",
"full_destination_name": "Полное имя назначения",
"probe_size_bytes": "Размер пакета (байты)",
"number_of_probes": "Количество проверок",
"wait_between_probes": "Ожидание между проверками (секунды)",
"start_probe": "Начать проверку",
"stop": "Стоп",
"clear_results": "Очистить результаты",
"summary": "Итог",
"sent": "Отправлено",
"delivered": "Доставлено",
"timeouts": "Тайм-ауты",
"failed": "Ошибка",
"probe_results": "Результаты проверки",
"probe_responses_realtime": "Ответы проверки в реальном времени",
"no_probes_yet": "Проверок пока нет. Запустите проверку для тестирования связности.",
"probe_number": "Проверка №{number}",
"bytes": "байт",
"hops": "Хопы",
"rtt": "RTT",
"rssi": "RSSI",
"snr": "SNR",
"quality": "Качество",
"timeout": "Тайм-аут",
"invalid_hash": "Неверный хеш назначения!",
"provide_full_name": "Пожалуйста, укажите полное имя назначения!",
"failed_to_probe": "Не удалось проверить назначение"
},
"rnstatus": {
"network_diagnostics": "Диагностика сети",
"title": "RNStatus - Статус сети",
"description": "Просмотр статистики интерфейсов и информации о статусе сети.",
"refresh": "Обновить",
"include_link_stats": "Включить статистику ссылок",
"sort_by": "Сортировать по:",
"none": "Нет",
"bitrate": "Битрейт",
"rx_bytes": "RX байт",
"tx_bytes": "TX байт",
"total_traffic": "Весь трафик",
"announces": "Анонсы",
"active_links": "Активные ссылки: {count}",
"no_interfaces_found": "Интерфейсы не найдены. Нажмите «Обновить» для загрузки статуса.",
"mode": "Режим",
"rx_packets": "RX пакетов",
"tx_packets": "TX пакетов",
"clients": "Клиенты",
"peers_reachable": "доступно",
"noise_floor": "Уровень шума",
"interference": "Помехи",
"cpu_load": "Загрузка ЦП",
"cpu_temp": "Темп. ЦП",
"memory_load": "Загрузка памяти",
"battery": "Батарея",
"network": "Сеть",
"incoming_announces": "Входящие анонсы",
"outgoing_announces": "Исходящие анонсы",
"airtime": "Эфирное время",
"channel_load": "Загрузка канала"
},
"translator": {
"text_translation": "Перевод текста",
"title": "Переводчик",
"description": "Перевод текста с использованием LibreTranslate API или локального Argos Translate.",
"argos_translate": "Argos Translate",
"libretranslate": "LibreTranslate",
"api_server": "Сервер API LibreTranslate",
"api_server_description": "Введите базовый URL вашего сервера LibreTranslate (например, http://localhost:5000)",
"source_language": "Исходный язык",
"auto_detect": "Автоопределение",
"target_language": "Целевой язык",
"select_target_language": "Выберите целевой язык",
"argos_not_detected": "Argos Translate не обнаружен",
"argos_not_detected_desc": "Для использования локального перевода необходимо установить пакет Argos Translate одним из следующих способов:",
"method_pip_venv": "Способ 1: pip (venv)",
"method_pipx": "Способ 2: pipx",
"note_restart_required": "Примечание: После установки может потребоваться перезапуск приложения и установка языковых пакетов через CLI Argos Translate.",
"no_language_packages": "Языковые пакеты не обнаружены",
"no_language_packages_desc": "Argos Translate установлен, но языковые пакеты недоступны. Установите языковые пакеты с помощью одной из следующих команд:",
"install_all_languages": "Установить все языки",
"install_specific_pair": "Установить конкретную языковую пару (пример: с английского на русский)",
"after_install_note": "После установки языковых пакетов нажмите «Обновить языки», чтобы перезагрузить список доступных языков.",
"text_to_translate": "Текст для перевода",
"enter_text_placeholder": "Введите текст для перевода...",
"translate": "Перевести",
"swap": "Поменять местами",
"clear": "Очистить",
"translation": "Перевод",
"source": "Источник",
"detected": "Определено",
"available_languages": "Доступные языки",
"languages_loaded_from": "Языки загружаются из LibreTranslate API или пакетов Argos Translate.",
"refresh_languages": "Обновить языки",
"failed_to_load_languages": "Не удалось загрузить языки. Убедитесь, что LibreTranslate запущен или Argos Translate установлен.",
"copied_to_clipboard": "Скопировано в буфер обмена"
},
"call": {
"phone": "Телефон",
"voicemail": "Голосовая почта",
"settings": "Настройки",
"unknown": "Неизвестно",
"call_ended": "Звонок завершен",
"call_declined": "Звонок отклонен",
"send_to_voicemail": "На голосовую почту",
"incoming_call": "Входящий звонок...",
"busy": "Занято...",
"rejected": "Отклонено...",
"calling": "Вызов...",
"available": "Доступно...",
"ringing": "Звонит...",
"connecting": "Подключение...",
"connected": "Подключено",
"accept": "Принять",
"decline": "Отклонить",
"hangup": "Завершить",
"answer_call": "Ответить на звонок",
"decline_call": "Отклонить звонок",
"hangup_call": "Завершить звонок",
"mute_mic": "Отключить микрофон",
"unmute_mic": "Включить микрофон",
"mute_speaker": "Отключить динамик",
"unmute_speaker": "Включить динамик",
"telephone": "Телефон",
"enter_identity_hash_to_call": "Введите хеш личности для звонка.",
"identity_hash": "Хеш личности",
"call_history": "История звонков",
"call_back": "Перезвонить",
"no_voicemails": "Нет голосовых сообщений",
"voicemails_will_appear_here": "Когда вам оставят сообщение, оно появится здесь.",
"voicemail_inbox": "Входящие голосовой почты",
"messages": "Сообщения",
"delete": "Удалить",
"voicemail_settings": "Настройки голосовой почты",
"dependencies_missing": "Отсутствуют зависимости",
"voicemail_requires_espeak": "Голосовая почта требует `espeak-ng` для генерации приветствий. Пожалуйста, установите его в вашей системе.",
"voicemail_requires_ffmpeg": "Голосовая почта требует `ffmpeg` для обработки аудиофайлов. Пожалуйста, установите его в вашей системе.",
"enable_voicemail": "Включить голосовую почту",
"enable_voicemail_description": "Автоматически принимать звонки и записывать сообщения",
"greeting_message": "Приветственное сообщение",
"enter_greeting_text": "Введите текст приветствия...",
"greeting_text_description": "Этот текст будет преобразован в речь с помощью eSpeak NG.",
"tts_speed": "Скорость TTS",
"tts_pitch": "Высота TTS",
"tts_voice": "Голос TTS",
"tts_word_gap": "Пауза между словами TTS",
"save_and_generate": "Сохранить и создать",
"generating": "Создание...",
"preview_greeting": "Предпросмотр приветствия",
"stop_preview": "Остановить предпросмотр",
"answer_delay_seconds": "Задержка ответа (с)",
"max_recording_seconds": "Макс. время записи (с)",
"recording_voicemail": "Запись голосового сообщения",
"call_status": "Статус звонка",
"call_recording": "Запись звонков",
"call_recording_description": "Записывать голосовые звонки в хранилище",
"recordings": "Записи",
"no_recordings": "Записей не найдено",
"remote_rx": "Удаленный (RX)",
"local_tx": "Локальный (TX)",
"download_rx": "Скачать RX",
"download_tx": "Скачать TX",
"default_quality": "Качество по умолчанию",
"active_call": "Активный звонок",
"status": "Статус",
"failed_to_answer_call": "Не удалось ответить на звонок",
"failed_to_hangup_call": "Не удалось завершить звонок",
"failed_to_toggle_microphone": "Не удалось переключить микрофон",
"failed_to_toggle_speaker": "Не удалось переключить динамик",
"failed_to_switch_audio_profile": "Не удалось переключить аудио профиль",
"failed_to_initiate_call": "Не удалось инициировать звонок",
"enter_identity_hash_to_call_error": "Введите хеш личности для звонка",
"failed_to_save_settings": "Не удалось сохранить настройки",
"do_not_disturb": "Не беспокоить",
"load_more": "Загрузить еще",
"go_to_phone_page": "На страницу телефона",
"search_history": "Поиск по истории...",
"allow_calls_from_contacts_only": "Звонки только от контактов",
"settings_saved": "Настройки сохранены",
"greeting_generated_successfully": "Приветствие успешно создано",
"failed_to_generate_greeting": "Не удалось создать приветствие",
"no_greeting_audio_found": "Аудио приветствия не найдено. Пожалуйста, создайте его сначала.",
"voicemail_deleted": "Голосовое сообщение удалено",
"failed_to_delete_voicemail": "Не удалось удалить голосовое сообщение",
"ringtone": "Рингтон",
"ringtone_settings": "Настройки рингтона",
"enable_custom_ringtone": "Включить свой рингтон",
"enable_custom_ringtone_description": "Воспроизводить свой аудиофайл при всех входящих звонках",
"upload_ringtone": "Загрузить рингтон",
"uploading_ringtone": "Загрузка рингтона...",
"no_custom_ringtone_uploaded": "Свой рингтон не загружен",
"supports_audio_formats": "Поддерживаются MP3, OGG, WAV, M4A, FLAC. Будет конвертирован в Opus.",
"preview_ringtone": "Прослушать рингтон",
"remove_ringtone": "Удалить рингтон",
"ringtone_uploaded_successfully": "Рингтон успешно загружен",
"failed_to_upload_ringtone": "Не удалось загрузить рингтон",
"ringtone_deleted": "Рингтон удален",
"failed_to_delete_ringtone": "Не удалось удалить рингтон",
"no_ringtone_audio_found": "Аудио рингтона не найдено. Пожалуйста, сначала загрузите его.",
"ringtone_volume": "Громкость рингтона",
"default_ringtone": "Рингтон по умолчанию",
"ringtone_for_non_contacts": "Рингтон для звонков не из списка контактов",
"primary_system_default": "Основной (системный)",
"random": "Случайный",
"edit_contact": "Изменить контакт",
"add_contact": "Добавить контакт",
"contact_name": "Имя контакта",
"preferred_ringtone": "Предпочитаемый рингтон",
"default_global_setting": "По умолчанию (общие настройки)",
"uploaded_ringtones": "Загруженные рингтоны",
"save_contact": "Сохранить контакт",
"primary_ringtone_set": "Основной рингтон установлен",
"failed_to_set_primary_ringtone": "Не удалось установить основной рингтон",
"failed_to_update_ringtone_name": "Не удалось обновить название рингтона",
"failed_to_play_ringtone": "Не удалось воспроизвести рингтон",
"failed_to_play_voicemail": "Не удалось воспроизвести сообщение"
},
"command_palette": {
"search_placeholder": "Поиск или ввод команды...",
"no_results": "Ничего не найдено по запросу \"{query}\"",
"nav_messages": "Перейти к сообщениям",
"nav_messages_desc": "Открыть недавние разговоры",
"nav_nomad": "Перейти в Nomad Network",
"nav_nomad_desc": "Просмотр распределенной сети",
"nav_map": "Перейти к карте",
"nav_map_desc": "Просмотр местоположения и телеметрии",
"nav_paper": "Генератор бумажных сообщений",
"nav_paper_desc": "Создание подписанных QR-кодов",
"nav_call": "Перейти к звонкам",
"nav_call_desc": "Голосовые звонки и голосовая почта",
"nav_settings": "Перейти к настройкам",
"nav_settings_desc": "Конфигурация и настройки приложения",
"action_sync": "Синхронизировать сообщения",
"action_sync_desc": "Запросить сообщения с узла",
"action_compose": "Написать новое сообщение",
"action_compose_desc": "Начать новый чат по адресу",
"action_orbit": "Режим орбиты",
"action_orbit_desc": "Визуализация космической орбиты",
"group_recent": "Недавние разговоры",
"group_contacts": "Контакты",
"group_actions": "Быстрые действия",
"footer_navigate": "Навигация",
"footer_select": "Выбрать"
}
}