i18n(ru): polish wording across settings, sidebar, tracks

- Replace transliterated 'рескан' with 'повторное сканирование'
- Replace 'backend' with 'бэкенд'
- Simplify hiResCrossfadeResampleTitle and analyticsFailedTracksTitle
- sidebar: 'Смарт-плейлисты' → 'Умные плейлисты'
- tracks: subtitle imperative form 'Листай. Ищи. Открывай.'
- settings: 'Без пауз между треками' → 'Без пауз'
This commit is contained in:
kilyabin
2026-06-25 02:25:36 +04:00
parent 45f4a5429a
commit 00e505379f
3 changed files with 10 additions and 10 deletions
+8 -8
View File
@@ -42,7 +42,7 @@ export const settings = {
serverUsername: 'Логин', serverUsername: 'Логин',
serverPassword: 'Пароль', serverPassword: 'Пароль',
customHeadersTitle: 'Пользовательские HTTP-заголовки', customHeadersTitle: 'Пользовательские HTTP-заголовки',
customHeadersHelp: 'Для reverse-proxy (Pangolin, Cloudflare Access). Отправляются только на ваш сервер — не сторонним сервисам.', customHeadersHelp: 'Используются для reverse-proxy (Pangolin, Cloudflare Access). Отправляются только на ваш сервер — не сторонним сервисам.',
customHeadersNamePlaceholder: 'Имя заголовка', customHeadersNamePlaceholder: 'Имя заголовка',
customHeadersValuePlaceholder: 'Значение заголовка', customHeadersValuePlaceholder: 'Значение заголовка',
customHeadersAddRow: 'Добавить заголовок', customHeadersAddRow: 'Добавить заголовок',
@@ -238,7 +238,7 @@ export const settings = {
hiResTitle: 'Нативное воспроизведение Hi-Res', hiResTitle: 'Нативное воспроизведение Hi-Res',
hiResEnabled: 'Включить нативное Hi-Res воспроизведение', hiResEnabled: 'Включить нативное Hi-Res воспроизведение',
hiResDesc: "Воспроизводит каждый трек с его исходной частотой дискретизации вместо передискретизации всего в 44,1 кГц, переключая устройство вывода под частоту файла (88,2 кГц и выше). Включайте только если оборудование и сеть надёжно справляются с высокими частотами.", hiResDesc: "Воспроизводит каждый трек с его исходной частотой дискретизации вместо передискретизации всего в 44,1 кГц, переключая устройство вывода под частоту файла (88,2 кГц и выше). Включайте только если оборудование и сеть надёжно справляются с высокими частотами.",
hiResCrossfadeResampleTitle: 'Частота сведения Crossfade / AutoDJ / Gapless', hiResCrossfadeResampleTitle: 'Частота сведения при переходах',
hiResCrossfadeResampleDesc: 'Когда соседние треки имеют разную частоту дискретизации, обе стороны передискретизируются на эту частоту во время кроссфейда, AutoDJ и gapless-переходов.', hiResCrossfadeResampleDesc: 'Когда соседние треки имеют разную частоту дискретизации, обе стороны передискретизируются на эту частоту во время кроссфейда, AutoDJ и gapless-переходов.',
hiResCrossfadeResample44: '44,1 кГц', hiResCrossfadeResample44: '44,1 кГц',
hiResCrossfadeResample88: '88,2 кГц', hiResCrossfadeResample88: '88,2 кГц',
@@ -416,7 +416,7 @@ export const settings = {
analyticsStrategyClearError: 'Не удалось очистить анализ для удалённого сервера.', analyticsStrategyClearError: 'Не удалось очистить анализ для удалённого сервера.',
analyticsStrategyProgressEmptyAfterFailed: '100% (0/0, треки помечены как проблемные)', analyticsStrategyProgressEmptyAfterFailed: '100% (0/0, треки помечены как проблемные)',
analyticsFailedTracksOpenTitle: 'Проблемных треков: {{count}}', analyticsFailedTracksOpenTitle: 'Проблемных треков: {{count}}',
analyticsFailedTracksTitle: 'Проблемные треки анализа — {{server}}', analyticsFailedTracksTitle: 'Проблемные треки при анализе — {{server}}',
analyticsFailedTracksDesc: 'Эти треки многократно падали на decode/enrichment и исключены из фонового автоанализа.', analyticsFailedTracksDesc: 'Эти треки многократно падали на decode/enrichment и исключены из фонового автоанализа.',
analyticsFailedTracksLoading: 'Загрузка списка проблемных треков…', analyticsFailedTracksLoading: 'Загрузка списка проблемных треков…',
analyticsFailedTracksEmpty: 'Для этого сервера проблемных треков нет.', analyticsFailedTracksEmpty: 'Для этого сервера проблемных треков нет.',
@@ -424,9 +424,9 @@ export const settings = {
analyticsFailedTracksExport: 'Экспорт списка', analyticsFailedTracksExport: 'Экспорт списка',
analyticsFailedTracksExportSuccess: 'Список проблемных треков экспортирован ({{count}}).', analyticsFailedTracksExportSuccess: 'Список проблемных треков экспортирован ({{count}}).',
analyticsFailedTracksExportError: 'Не удалось экспортировать список проблемных треков.', analyticsFailedTracksExportError: 'Не удалось экспортировать список проблемных треков.',
analyticsFailedTracksRescan: 'Рескан проблемных треков', analyticsFailedTracksRescan: 'Повторное сканирование проблемных треков',
analyticsFailedTracksRescanSuccess: 'Рескан запланирован для {{count}} проблемных треков.', analyticsFailedTracksRescanSuccess: 'Повторное сканирование запланировано для {{count}} проблемных треков.',
analyticsFailedTracksRescanError: 'Не удалось запустить рескан проблемных треков.', analyticsFailedTracksRescanError: 'Не удалось запустить повторное сканирование проблемных треков.',
analyticsFailedTracksLoadError: 'Не удалось загрузить список проблемных треков.', analyticsFailedTracksLoadError: 'Не удалось загрузить список проблемных треков.',
randomMixTitle: 'Чёрный список случайного микса', randomMixTitle: 'Чёрный список случайного микса',
luckyMixMenuTitle: 'Показывать «Мне повезёт» в меню', luckyMixMenuTitle: 'Показывать «Мне повезёт» в меню',
@@ -578,7 +578,7 @@ export const settings = {
tabUsers: 'Пользователи', tabUsers: 'Пользователи',
tabSystem: 'Система', tabSystem: 'Система',
loggingTitle: 'Логирование', loggingTitle: 'Логирование',
loggingModeDesc: 'Управляет подробностью логов backend в терминале.', loggingModeDesc: 'Управляет подробностью логов бэкенда в терминале.',
loggingModeOff: 'Выключено', loggingModeOff: 'Выключено',
loggingModeNormal: 'Обычное', loggingModeNormal: 'Обычное',
loggingModeDebug: 'Дебаг', loggingModeDebug: 'Дебаг',
@@ -700,7 +700,7 @@ export const settings = {
autodjOverlapCapAuto: 'Авто', autodjOverlapCapAuto: 'Авто',
autodjOverlapCapLimit: 'Лимит', autodjOverlapCapLimit: 'Лимит',
autodjOverlapCapSecs: '{{n}} с', autodjOverlapCapSecs: '{{n}} с',
gapless: 'Без пауз между треками', gapless: 'Без пауз',
transitionsTitle: 'Переходы между треками', transitionsTitle: 'Переходы между треками',
transitionsDesc: 'Как соединяются идущие подряд треки. Одновременно может быть активен только один режим.', transitionsDesc: 'Как соединяются идущие подряд треки. Одновременно может быть активен только один режим.',
transitionOff: 'Выкл.', transitionOff: 'Выкл.',
+1 -1
View File
@@ -25,7 +25,7 @@ export const sidebar = {
genres: 'Жанры', genres: 'Жанры',
tracks: 'Треки', tracks: 'Треки',
playlists: 'Плейлисты', playlists: 'Плейлисты',
smartPlaylists: 'Смарт-плейлисты', smartPlaylists: 'Умные плейлисты',
mostPlayed: 'Популярное', mostPlayed: 'Популярное',
losslessAlbums: 'Lossless', losslessAlbums: 'Lossless',
radio: 'Онлайн-радио', radio: 'Онлайн-радио',
+1 -1
View File
@@ -1,6 +1,6 @@
export const tracks = { export const tracks = {
title: 'Треки', title: 'Треки',
subtitle: 'Листать. Искать. Открывать.', subtitle: 'Листай. Ищи. Открывай.',
heroEyebrow: 'Трек момента', heroEyebrow: 'Трек момента',
heroReroll: 'Выбрать другой', heroReroll: 'Выбрать другой',
playSong: 'Воспроизвести', playSong: 'Воспроизвести',