diff --git a/web/src/i18n/locales/en.ts b/web/src/i18n/locales/en.ts index ae386c6..3b53031 100644 --- a/web/src/i18n/locales/en.ts +++ b/web/src/i18n/locales/en.ts @@ -195,7 +195,12 @@ const en = { deviceKey: 'Device Key', community: 'Community', hostname: 'Hostname', - hostnameUpdated: 'Hostname updated. Reboot to apply.' + hostnameUpdated: 'Hostname updated. Reboot to apply.', + ipType: { + 'Wired': 'Wired', + 'Wireless': 'Wireless', + 'Other': 'Other' + } }, appearance: { title: 'Appearance', @@ -232,6 +237,7 @@ const en = { }, advanced: 'Advanced Settings', swap: { + title: 'Swap', disable: 'Disable', description: 'Set the swap file size', tip: "Enabling this feature could shorten your SD card's usable life!" diff --git a/web/src/i18n/locales/ru.ts b/web/src/i18n/locales/ru.ts index da02934..27b072f 100644 --- a/web/src/i18n/locales/ru.ts +++ b/web/src/i18n/locales/ru.ts @@ -48,6 +48,7 @@ const ru = { finishBtn: 'Готово' }, screen: { + title: 'Экран', video: 'Видеорежим', resolution: 'Разрешение', auto: 'Автоматическое', @@ -66,6 +67,7 @@ const ru = { resetHdmi: 'Перезагрузить HDMI подсистему' }, keyboard: { + title: 'Клавиатура', paste: 'Вставка текста', tips: 'Поддерживаются только стандартные буквы и символы клавиатуры', placeholder: 'Текст для ввода', @@ -74,6 +76,8 @@ const ru = { ctrlaltdel: 'Ctrl+Alt+Del' }, mouse: { + title: 'Мышь', + cursor: 'Стиль курсора', default: 'Курсор по умолчанию', pointer: 'Курсор: указатель', cell: 'Курсор: крест', @@ -84,7 +88,16 @@ const ru = { absolute: 'Абсолютный режим', relative: 'Относительный режим', requestPointer: 'Используется относительный режим. Нажмите на рабочий стол для захвата мыши.', - resetHid: 'Перезагрузить HID-подсистему' + resetHid: 'Перезагрузить HID-подсистему', + hidOnly: { + title: 'Режим только HID', + desc: 'Если мышь и клавиатура перестали отвечать, и перезагрузка HID-подсистемы не помогает, это может быть связано с несовместимостью между NanoKVM и устройством. Попробуйте включить режим только HID для улучшения совместимости.', + tip1: 'Включение режима только HID отключит виртуальный USB-диск и виртуальную сеть', + tip2: 'В режиме только HID отключена возможность монтирования образов', + tip3: 'NanoKVM автоматически перезагрузится после переключения режима', + enable: 'Включить режим только HID', + disable: 'Выключить режим только HID' + } }, image: { title: 'Образы', @@ -94,6 +107,7 @@ const ru = { mountFailed: 'Монтирование образа не удалось', mountDesc: 'В некоторых системах необходимо отсоединить виртуальный диск на удаленном хосте перед монтированием образа.', + refresh: 'Обновить список образов', tips: { title: 'Как загрузить', usb1: 'Подключите NanoKVM к вашему компьютеру через USB.', @@ -130,6 +144,16 @@ const ru = { serialPort: 'COM-порт', serialPortPlaceholder: 'Введите COM-порт', baudrate: 'Скорость передачи', + parity: 'Чётность', + parityNone: 'Нет', + parityEven: 'Чётная', + parityOdd: 'Нечётная', + flowControl: 'Управление потоком', + flowControlNone: 'Нет', + flowControlSoft: 'Программное', + flowControlHard: 'Аппаратное', + dataBits: 'Бит данных', + stopBits: 'Стоп-бит', confirm: 'ОК' }, wol: { @@ -147,10 +171,16 @@ const ru = { }, power: { title: 'Питание', + showConfirm: 'Подтверждение', + showConfirmTip: 'Если включено, операции с питанием потребуют дополнительного подтверждения', reset: 'Экстренная перезагрузка', power: 'Питание', powerShort: 'Питание (короткое нажатие)', - powerLong: 'Питание (длинное нажатие)' + powerLong: 'Питание (длинное нажатие)', + resetConfirm: 'Вы уверены, что хотите выполнить экстренную перезагрузку?', + powerConfirm: 'Вы уверены, что хотите нажать кнопку питания?', + okBtn: 'Да', + cancelBtn: 'Нет' }, settings: { title: 'Настройки', @@ -164,14 +194,23 @@ const ru = { image: 'Версия прошивки', imageTip: 'Версия системного образа NanoKVM', deviceKey: 'Ключ устройства', - community: 'Сообщество' + community: 'Сообщество', + hostname: 'Имя хоста', + hostnameUpdated: 'Имя хоста изменено. Перезагрузите NanoKVM, чтобы настройки вступили в силу.', + ipType: { + 'Wired': 'Проводное', + 'Wireless': 'Беспроводное', + 'Other': 'Другое' + } }, appearance: { title: 'Внешний вид', display: 'Отображение', language: 'Язык', menuBar: 'Панель меню', - menuBarDesc: 'Иконки для отображения в панели меню' + menuBarDesc: 'Иконки для отображения в панели меню', + webTitle: 'Заголовок страницы', + webTitleDesc: 'Изменить заголовок страницы' }, device: { title: 'Устройство', @@ -197,10 +236,33 @@ const ru = { description: 'Включить удаленный доступ по SSH', tip: 'Задайте сильный пароль перед включением (Аккаунт - Пароль - Обновить)' }, + advanced: 'Дополнительные настройки', + swap: { + title: 'Файл подкачки', + disable: 'Отключить', + description: 'Задать размер файла подкачки', + tip: 'Включение этой опции может негативно сказаться на долговечности SD-карты!', + }, + mouseJiggler: { + title: 'Дрожалка для мыши', + description: 'Включите данную опцию, если хост засыпает', + disable: 'Отключить', + absolute: 'Абсолютный режим', + relative: 'Относительный режим' + }, + mdns: { + description: 'Включить сервис обнаружения mDNS', + tip: "Выключите, если нет необходимости" + }, + hidOnly: 'Режим только HID', disk: 'Виртуальный диск', diskDesc: 'Смонтировать виртуальный USB диск на удаленном хосте', network: 'Виртуальная сеть', - networkDesc: 'Смонтировать виртуальное сетевое устройство на удаленном хосте' + networkDesc: 'Смонтировать виртуальное сетевое устройство на удаленном хосте', + reboot: 'Перезагрузка', + rebootDesc: 'Вы уверены, что хотите перезагрузить NanoKVM?', + okBtn: 'Да', + cancelBtn: 'Нет' }, tailscale: { title: 'Tailscale', @@ -246,19 +308,33 @@ const ru = { available: 'Доступно обновление. Вы уверены, что хотите обновить?', updating: 'Начато обновление. Пожалуйста, подождите...', confirm: 'Подтвердить', - cancel: 'Отмена' + cancel: 'Отмена', + preview: 'Ранние обновления', + previewDesc: 'Получайте ранний доступ к новым функциям и улучшениям', + previewTip: + 'Обратите внимание: в ранних версиях могут быть ошибки или незавершённый функционал!' }, account: { title: 'Аккаунт', webAccount: 'Имя веб-аккаунта', password: 'Пароль', updateBtn: 'Обновить', - logoutBtn: 'Выйти' + logoutBtn: 'Выйти', + logoutDesc: 'Вы действительно хотите выйти?', + okBtn: 'Да', + cancelBtn: 'Нет' } }, error: { title: "У нас возникла проблема", refresh: 'Обновить страницу' + }, + fullscreen: { + toggle: 'Полноэкранный режим' + }, + menu: { + collapse: 'Свернуть меню', + expand: 'Развернуть меню' } } }; diff --git a/web/src/pages/desktop/menu/settings/about/information.tsx b/web/src/pages/desktop/menu/settings/about/information.tsx index 3f5b7f9..eb5fd77 100644 --- a/web/src/pages/desktop/menu/settings/about/information.tsx +++ b/web/src/pages/desktop/menu/settings/about/information.tsx @@ -48,7 +48,7 @@ export const Information = () => {
{information.ips.map((ip) => (
- {ip.type} + {t('settings.about.ipType.' + ip.type)} {ip.addr}
))} diff --git a/web/src/pages/desktop/menu/settings/device/advanced/swap.tsx b/web/src/pages/desktop/menu/settings/device/advanced/swap.tsx index 9745956..31b95bd 100644 --- a/web/src/pages/desktop/menu/settings/device/advanced/swap.tsx +++ b/web/src/pages/desktop/menu/settings/device/advanced/swap.tsx @@ -57,7 +57,7 @@ export const Swap = () => {
- Swap + {t('settings.device.swap.title')}