- Ambient background in the app shell: three drifting blurred blobs,
the third one tinted with the current track's cover; can be turned off
in settings and stays still with reduced motion.
- Island player variant (floating glass panel) next to the bar, chosen
in settings; player source line ("Album · …", "My Wave"), reactions
around the transport controls, queue drawer.
- Sidebar: like / dislike counters, pending uploads badge on Queue,
admin Settings page holding the upload queue limits.
- Collection: header tile with kicker, underline tabs, time / number
lead column with an equalizer for the current track, album column,
dimmed dislikes with undo, Play all / Shuffle pills.
- Album: cover-tinted header and Play / Shuffle; artist: artist wave,
Play and popular tracks (new GET /artists/{id}/top-tracks).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
283 lines
13 KiB
JSON
283 lines
13 KiB
JSON
{
|
||
"app": {
|
||
"name": "pipu",
|
||
"tagline": "Ваша музыка с вашего сервера"
|
||
},
|
||
"server": {
|
||
"title": "Сервер",
|
||
"checking": "Проверяем сервер…",
|
||
"online": "Сервер {{version}} на связи",
|
||
"offline": "Сервер не отвечает. Проверьте адрес и сеть.",
|
||
"address": "Адрес сервера",
|
||
"check": "Проверить",
|
||
"invalid_address": "Введите адрес сервера, например https://music.home.lan",
|
||
"unsupported_app": "Эта версия приложения слишком старая для сервера — обновите приложение"
|
||
},
|
||
"language": {
|
||
"label": "Язык",
|
||
"ru": "Русский",
|
||
"en": "English"
|
||
},
|
||
"nav": {
|
||
"main": "Навигация",
|
||
"home": "Главная",
|
||
"admin": "Админка",
|
||
"users": "Пользователи",
|
||
"audit": "Журнал",
|
||
"library": "Библиотека",
|
||
"sources": "Хранилища",
|
||
"collection": "Коллекция",
|
||
"history": "История",
|
||
"likes": "Лайки",
|
||
"dislikes": "Дизлайки",
|
||
"uploads": "Предложения",
|
||
"suggest": "Предложить треки",
|
||
"my_uploads": "Мои предложения",
|
||
"upload_queue": "Очередь",
|
||
"admin_settings": "Настройки"
|
||
},
|
||
"profile": {
|
||
"menu": "Меню профиля",
|
||
"settings": "Настройки",
|
||
"logout": "Выйти"
|
||
},
|
||
"roles": {
|
||
"admin": "Администратор",
|
||
"moderator": "Модератор",
|
||
"user": "Пользователь"
|
||
},
|
||
"home": {
|
||
"greeting": "Привет, {{name}}!",
|
||
"wave": "Моя волна",
|
||
"wave_soon": "Бесконечная лента под ваш вкус появится, когда сервер подключит библиотеку."
|
||
},
|
||
"player": {
|
||
"empty": "Ничего не играет",
|
||
"label": "Плеер",
|
||
"play": "Слушать",
|
||
"pause": "Пауза",
|
||
"next": "Следующий",
|
||
"prev": "Предыдущий",
|
||
"like": "Нравится",
|
||
"unlike": "Убрать из лайков",
|
||
"dislike": "Не нравится",
|
||
"undislike": "Убрать дизлайк",
|
||
"volume": "Громкость",
|
||
"mute": "Выключить звук",
|
||
"unmute": "Включить звук",
|
||
"shuffle": "Перемешать",
|
||
"repeat_off": "Повтор выключен",
|
||
"repeat_all": "Повторять очередь",
|
||
"repeat_one": "Повторять трек",
|
||
"progress": "Позиция",
|
||
"unavailable": "Трек недоступен — пропускаем",
|
||
"error": "Не удалось воспроизвести трек",
|
||
"source_album": "Альбом · {{label}}",
|
||
"source_artist": "Исполнитель · {{label}}",
|
||
"source_search": "Поиск · {{label}}",
|
||
"source_history": "История",
|
||
"source_likes": "Лайки",
|
||
"source_dislikes": "Дизлайки",
|
||
"source_wave": "Моя волна",
|
||
"source_queue": "Очередь",
|
||
"queue": "Очередь",
|
||
"source_wave_seed": "Волна по исполнителю · {{label}}"
|
||
},
|
||
"settings": {
|
||
"title": "Настройки",
|
||
"account": "Аккаунт",
|
||
"display_name": "Отображаемое имя",
|
||
"save": "Сохранить",
|
||
"saved": "Сохранено",
|
||
"appearance": "Внешний вид",
|
||
"theme": "Тема",
|
||
"theme_dark": "Тёмная",
|
||
"theme_light": "Светлая",
|
||
"theme_system": "Как в системе",
|
||
"password": "Пароль",
|
||
"current_password": "Текущий пароль",
|
||
"new_password": "Новый пароль",
|
||
"repeat_password": "Повторите пароль",
|
||
"change_password": "Сменить пароль",
|
||
"password_changed": "Пароль изменён. Другие устройства вышли из аккаунта.",
|
||
"sessions": "Устройства",
|
||
"session_current": "Это устройство",
|
||
"session_last_used": "Активность: {{date}}",
|
||
"session_end": "Завершить",
|
||
"logout_all": "Выйти на всех устройствах",
|
||
"wave_variant": "Вид волны",
|
||
"wave_orb": "Сфера",
|
||
"wave_liquid": "Жидкая",
|
||
"player_view": "Вид плеера",
|
||
"player_bar": "Полоса",
|
||
"player_island": "Остров",
|
||
"ambient": "Живой фон",
|
||
"on": "Вкл.",
|
||
"off": "Выкл."
|
||
},
|
||
"form": {
|
||
"show_password": "Показать пароль",
|
||
"hide_password": "Скрыть пароль",
|
||
"passwords_mismatch": "Пароли не совпадают",
|
||
"required": "Заполните поле",
|
||
"cancel": "Отмена",
|
||
"close": "Закрыть",
|
||
"copy": "Копировать",
|
||
"copied": "Скопировано"
|
||
},
|
||
"loading": "Загрузка…",
|
||
"route_error": {
|
||
"reload": "Обновить страницу"
|
||
},
|
||
"search": {
|
||
"placeholder": "Исполнители, альбомы, треки",
|
||
"label": "Поиск",
|
||
"artists": "Исполнители",
|
||
"albums": "Альбомы",
|
||
"tracks": "Треки",
|
||
"all": "Всё",
|
||
"nothing": "Ничего не нашли",
|
||
"corrected": "Показаны результаты для «{{query}}»",
|
||
"show_all": "Все результаты",
|
||
"title": "Поиск: {{query}}",
|
||
"more": "Показать ещё",
|
||
"artist_kind": "Исполнитель",
|
||
"hint": "Нажмите / для поиска"
|
||
},
|
||
"catalog": {
|
||
"albums": "Альбомы",
|
||
"appears_on": "Встречается на",
|
||
"album_count_one": "{{count}} альбом",
|
||
"album_count_few": "{{count}} альбома",
|
||
"album_count_many": "{{count}} альбомов",
|
||
"album_count_other": "{{count}} альбома",
|
||
"track_count_one": "{{count}} трек",
|
||
"track_count_few": "{{count}} трека",
|
||
"track_count_many": "{{count}} треков",
|
||
"track_count_other": "{{count}} трека",
|
||
"unavailable": "Недоступен: хранилище отключено или файл пропал",
|
||
"not_found": "Ничего не найдено — возможно, удалено при последнем скане",
|
||
"disc": "Диск {{n}}",
|
||
"col_title": "Название",
|
||
"col_album": "Альбом",
|
||
"col_duration": "Время",
|
||
"back_home": "На главную",
|
||
"artist": "Исполнитель",
|
||
"album": "Альбом",
|
||
"play": "Слушать",
|
||
"artist_wave": "Волна по исполнителю",
|
||
"top_tracks": "Популярные треки"
|
||
},
|
||
"collection": {
|
||
"title": "Коллекция",
|
||
"history": "История",
|
||
"likes": "Лайки",
|
||
"dislikes": "Дизлайки",
|
||
"clear_history": "Очистить историю",
|
||
"clear_confirm": "Очистить историю прослушиваний? Рекомендации её всё равно учтут.",
|
||
"today": "Сегодня",
|
||
"yesterday": "Вчера",
|
||
"empty_history": "Здесь появится то, что вы слушали",
|
||
"empty_likes": "Отмечайте треки сердечком — они соберутся здесь",
|
||
"empty_dislikes": "Треки с дизлайком не попадут в волну. Пока таких нет",
|
||
"play_all": "Слушать всё",
|
||
"more": "Показать ещё",
|
||
"sub_history": "Всё, что вы слушали, по дням. Нажмите на трек, чтобы включить.",
|
||
"sub_likes_one": "{{count}} трек · влияют на «Мою волну» сильнее всего",
|
||
"sub_likes_few": "{{count}} трека · влияют на «Мою волну» сильнее всего",
|
||
"sub_likes_many": "{{count}} треков · влияют на «Мою волну» сильнее всего",
|
||
"sub_likes_other": "{{count}} трека · влияют на «Мою волну» сильнее всего",
|
||
"sub_dislikes": "Эти треки не попадают в волну и рекомендации. Снимите дизлайк, если передумали.",
|
||
"shuffle": "Перемешать"
|
||
},
|
||
"wave": {
|
||
"title": "Моя волна",
|
||
"for_you": "Под ваш вкус",
|
||
"start": "Запустить «Мою волну»",
|
||
"pause": "Пауза «Моей волны»",
|
||
"activity_label": "Занятие",
|
||
"mood_label": "Настроение",
|
||
"reset": "Сбросить",
|
||
"empty": "В библиотеке пока нечего предложить",
|
||
"fallback": "Рекомендации временно упрощены",
|
||
"activities": {
|
||
"running": "Бегаю",
|
||
"workout": "Тренировка",
|
||
"waking_up": "Просыпаюсь",
|
||
"focus": "Работаю",
|
||
"commute": "В дороге",
|
||
"chill": "Отдыхаю",
|
||
"sleep": "Засыпаю"
|
||
},
|
||
"moods": {
|
||
"energetic": "Энергичное",
|
||
"happy": "Весёлое",
|
||
"calm": "Спокойное",
|
||
"sad": "Грустное"
|
||
}
|
||
},
|
||
"mobile": {
|
||
"connect": "Подключиться",
|
||
"servers": "Недавние серверы",
|
||
"change_server": "Другой сервер",
|
||
"server": "Сервер",
|
||
"open_admin": "Админка — откроется в браузере",
|
||
"version": "Версия приложения {{version}}",
|
||
"offline": "Нет связи с сервером",
|
||
"profile": "Профиль",
|
||
"search": "Поиск",
|
||
"recent_searches": "Недавние запросы",
|
||
"clear_recent": "Очистить",
|
||
"now_playing": "Сейчас играет",
|
||
"open_player": "Открыть плеер",
|
||
"close_player": "Свернуть плеер",
|
||
"queue": "Очередь",
|
||
"forget_server": "Забыть сервер",
|
||
"update_check": "Проверить обновления",
|
||
"update_checking": "Проверяем…",
|
||
"update_latest": "Установлена последняя версия",
|
||
"update_title": "Доступна версия {{version}}",
|
||
"update_required": "Эта версия больше не поддерживается сервером — обновите приложение",
|
||
"update_size": "Размер {{size}} МБ",
|
||
"update_install": "Скачать и установить",
|
||
"update_later": "Позже",
|
||
"update_downloading": "Загрузка {{percent}}%",
|
||
"update_verifying": "Проверяем файл…",
|
||
"update_bad_checksum": "Файл повреждён — попробуйте ещё раз",
|
||
"update_failed": "Не удалось скачать обновление",
|
||
"update_allow": "Разрешите установку из этого приложения в настройках Android",
|
||
"update_open_settings": "Открыть настройки",
|
||
"dl_title": "Скачанное",
|
||
"dl_download": "Скачать",
|
||
"dl_remove": "Удалить с устройства",
|
||
"dl_album": "Скачать альбом",
|
||
"dl_all_likes": "Скачать все лайки",
|
||
"dl_wifi_only": "Скачивать только по Wi-Fi",
|
||
"dl_auto_likes": "Скачивать новые лайки",
|
||
"dl_usage": "Занято {{used}} МБ · свободно в телефоне {{free}} ГБ",
|
||
"dl_pending_one": "В очереди {{count}} трек",
|
||
"dl_pending_few": "В очереди {{count}} трека",
|
||
"dl_pending_many": "В очереди {{count}} треков",
|
||
"dl_pending_other": "В очереди {{count}} трека",
|
||
"dl_waiting_wifi": "Загрузки ждут Wi-Fi ({{count}})",
|
||
"dl_waiting_network": "Загрузки ждут сеть ({{count}})",
|
||
"dl_retry": "Повторить неудачные",
|
||
"dl_empty": "Скачивайте треки, альбомы и лайки — они будут доступны без сети",
|
||
"player_view": "Вид плеера",
|
||
"player_cover": "Обложка",
|
||
"player_wave": "Волна",
|
||
"quality": "Качество звука",
|
||
"quality_wifi": "По Wi-Fi",
|
||
"quality_cellular": "По мобильной сети",
|
||
"quality_download": "Загрузки",
|
||
"quality_hint": "Новое качество применяется к следующим трекам; уже скачанные не перекачиваются.",
|
||
"q_original": "Оригинал",
|
||
"q_high": "Высокое",
|
||
"q_medium": "Среднее",
|
||
"q_low": "Низкое",
|
||
"cache": "Кэш недавних треков",
|
||
"cache_clear": "Очистить ({{size}} МБ)",
|
||
"cache_pending": "Очистится при следующем запуске"
|
||
}
|
||
}
|