diff --git a/src/lang/ru.js b/src/lang/ru.js index 8cbb52b..c5a22aa 100644 --- a/src/lang/ru.js +++ b/src/lang/ru.js @@ -1,344 +1,344 @@ -const ru = { - globals: { - welcome: ' deemix', - back: '', - loading: '', - download: ' {0}', - by: '{0}', - in: ' {0}', - download_hint: '', - play_hint: '', - toggle_download_tab_hint: '/', - clean_queue_hint: ' ', - cancel_queue_hint: ' ', - listTabs: { - empty: '', - all: '', - top_result: ' ', - album: ' | ', - artist: ' | ', - single: ' | ', - title: ' | ', - track: ' | ', - trackN: '0 | {n} | {n} | {n} ', - releaseN: '0 | {n} | {n} | {n} ', - playlist: ' | ', - compile: ' | ', - ep: 'ep | eps', - spotifyPlaylist: ' spotify | spotify', - releaseDate: ' ', - error: '' - } - }, - about: { - titles: { - usefulLinks: ' ', - bugReports: ' ', - contributing: ' ', - donations: '', - license: '' - }, - subtitles: { - bugReports: "- ? !", - contributing: ' ? !', - donations: ' ? !' - }, - usesLibrary: ' deemix, UI deemix.', - thanks: ` rtonno, uhwot lollilol , BasCurtiz scarvimane .`, - upToDate: ` Telegram.`, - officialWebsite: ' ', - officialRepo: ' ', - officialWebuiRepo: ' WebUI', - officialSubreddit: ' ', - newsChannel: ' ', - questions: ` , . , .`, - beforeReporting: ` , , , .`, - beSure: `, . , .`, - duplicateReports: ' .', - dontOpenIssues: ` , .`, - newUI: ` python, UI pull request .`, - acceptFeatures: ` , , , .`, - otherLanguages: ` , deemix!`, - understandingCode: ` ? RemixDev up Telegram Reddit.`, - contributeWebUI: ` Vue.js (JavaScript), HTML CSS, WebUI.`, - itsFree: `, , , .`, - notObligated: ` , !`, - lincensedUnder: ` - GNU General Public License 3.0.` - }, - charts: { - title: '', - changeCountry: ' ', - download: ' ' - }, - errors: { - title: 'Errors for {0}', - ids: { - invalidURL: 'URL ', - unsupportedURL: 'URL ', - ISRCnotOnDeezer: 'ISRC deezer', - notYourPrivatePlaylist: " .", - spotifyDisabled: ' Spotify.', - trackNotOnDeezer: ' deezer!', - albumNotOnDeezer: ' deezer!', - notOnDeezer: ' Deezer!', - notEncoded: ' !', - notEncodedNoAlternative: ' , !', - wrongBitrate: ' .', - wrongBitrateNoAlternative: ' . !', - no360RA: ' Reality Audio 360.', - notAvailable: " deezer!", - notAvailableNoAlternative: " deezer. !" - } - }, - favorites: { - title: '', - noPlaylists: ' ', - noAlbums: ' ', - noArtists: ' ', - noTracks: ' ' - }, - home: { - needTologin: ' Deezer , .', - openSettings: ' ', - sections: { - popularPlaylists: ' ', - popularAlbums: ' ' - } - }, - linkAnalyzer: { - info: ' , , .', - useful: - " , , , , .", - linkNotSupported: ' ', - linkNotSupportedYet: ' , .', - table: { - id: 'ID', - isrc: 'ISRC', - upc: 'UPC', - duration: '', - diskNumber: ' ', - trackNumber: ' ', - releaseDate: ' ', - bpm: 'BPM', - label: '', - recordType: '', - genres: '', - tracklist: '' - } - }, - search: { - startSearching: ' !', - description: - ' , , , ... ! Deezer', - fans: '{0} ', - noResults: ' ', - noResultsTrack: ' ', - noResultsAlbum: ' ', - noResultsArtist: ' ', - noResultsPlaylist: ' ' - }, - searchbar: ', ( )', - downloads: '', - toasts: { - addedToQueue: '{0} ', - alreadyInQueue: '{0} !', - finishDownload: '{0} .', - allDownloaded: ' !', - refreshFavs: ' !', - loggingIn: '', - loggedIn: ' ', - alreadyLogged: ' ', - loginFailed: " ", - loggedOut: 'Logged out', - cancellingCurrentItem: ' .', - currentItemCancelled: '.', - startAddingArtist: ' {0} ', - finishAddingArtist: ' {0} ', - startConvertingSpotifyPlaylist: ' spotify deezer', - finishConvertingSpotifyPlaylist: ' Spotify playlist converted' - }, - settings: { - title: '', - languages: '', - login: { - title: '', - loggedIn: ' {username}', - arl: { - question: ' ARL?', - update: ' ARL' - }, - logout: '' - }, - appearance: { - title: ' ', - slimDownloadTab: ' ' - }, - downloadPath: { - title: ' ' - }, - templates: { - title: '', - tracknameTemplate: ' ', - albumTracknameTemplate: ' ', - playlistTracknameTemplate: ' ' - }, - folders: { - title: '', - createPlaylistFolder: ' ', - playlistNameTemplate: ' ', - createArtistFolder: ' ', - artistNameTemplate: ' ', - createAlbumFolder: ' ', - albumNameTemplate: ' ', - createCDFolder: ' CD', - createStructurePlaylist: ' ', - createSingleFolder: ' ' - }, - trackTitles: { - title: ' ', - padTracks: ' ', - paddingSize: ' ', - illegalCharacterReplacer: ' ' - }, - downloads: { - title: '', - queueConcurrency: ' ', - maxBitrate: { - title: '', - 9: 'FLAC 1411kbps', - 3: 'MP3 320kbps', - 1: 'MP3 128kbps' - }, - overwriteFile: { - title: ' ?', - y: ', ', - n: ", ", - t: ' ' - }, - fallbackBitrate: ' , ', - fallbackSearch: ' , ', - logErrors: ' ', - logSearched: ' ', - createM3U8File: ' ', - syncedLyrics: ' .lyr ( )', - playlistFilenameTemplate: ' ', - saveDownloadQueue: ' ' - }, - covers: { - title: '', - saveArtwork: ' ', - coverImageTemplate: ' ', - saveArtworkArtist: ' ', - artistImageTemplate: ' ', - localArtworkSize: ' ', - embeddedArtworkSize: ' ', - localArtworkFormat: { - title: ' ?', - jpg: 'jpeg', - png: 'png', - both: 'jpeg png' - }, - jpegImageQuality: ' JPEG' - }, - tags: { - head: ' ', - title: '', - artist: '', - album: '', - cover: '', - trackNumber: ' ', - trackTotal: '- ', - discNumber: ' ', - discTotal: '- ', - albumArtist: ' ', - genre: '', - year: '', - date: '', - explicit: ' ', - isrc: 'ISRC', - length: '', - barcode: ' (UPC)', - bpm: 'BPM', - replayGain: 'Replay Gain', - label: '', - lyrics: ' ', - copyright: '', - composer: '', - involvedPeople: ' ' - }, - other: { - title: '', - savePlaylistAsCompilation: ' ', - useNullSeparator: ' ', - saveID3v1: ' ID3v1', - multiArtistSeparator: { - title: ' ?', - nothing: ' ', - default: ' ', - andFeat: ' & feat.', - using: ' "{0}"' - }, - singleAlbumArtist: ' ', - albumVariousArtists: ' "Various Artists" ', - removeAlbumVersion: ' "Album Version" ', - removeDuplicateArtists: ' ', - dateFormat: { - title: ' FLAC ', - year: 'YYYY', - month: 'MM', - day: 'DD' - }, - featuredToTitle: { - title: ' ?', - 0: '', - 1: ' ', - 3: ' ', - 2: ' ' - }, - titleCasing: ' ', - artistCasing: ' ', - casing: { - nothing: ' ', - lower: ' ', - upper: ' ', - start: ' ', - sentence: ' ' - }, - previewVolume: ' ', - executeCommand: { - title: ' ', - description: ' , ' - } - }, - spotify: { - title: ' Spotify', - clientID: 'Spotify clientID', - clientSecret: 'Spotify Client Secret', - username: 'Spotify username' - }, - reset: ' ', - save: '', - toasts: { - init: ' !', - update: ' !', - ARLcopied: 'ARL ' - } - }, - sidebar: { - home: '', - search: '', - charts: '', - favorites: '', - linkAnalyzer: ' ', - settings: '', - about: ' ' - }, - tracklist: { - downloadSelection: ' ' - } -} - -export default ru \ No newline at end of file +const ru = { + globals: { + welcome: 'Добро пожаловать в deemix', + back: 'назад', + loading: 'загрузка', + download: 'Скачать {0}', + by: '{0}', + in: 'из {0}', + download_hint: 'Скачать', + play_hint: 'Прослушать', + toggle_download_tab_hint: 'Показать/Свернуть', + clean_queue_hint: 'Очистить завершённые', + cancel_queue_hint: 'Очистить всё', + listTabs: { + empty: '', + all: 'все', + top_result: 'лучший результат', + album: 'альбом | альбомы', + artist: 'исполнитель | исполнители', + single: 'сингл | синглы', + title: 'название | названия', + track: 'трек | треки', + trackN: '0 треков | {n} трек | {n} трека | {n} треков', + releaseN: '0 релизов | {n} релиз | {n} релиза | {n} релизов', + playlist: 'плейлист | плейлисты', + compile: 'сборник | сборники', + ep: 'ep | eps', + spotifyPlaylist: 'плейлисты spotify | плейлисты spotify', + releaseDate: 'Дата выхода', + error: 'ошибка' + } + }, + about: { + titles: { + usefulLinks: 'Полезные ссылки', + bugReports: 'Баг репорты', + contributing: 'Помощь проекту', + donations: 'Пожертвования', + license: 'Лицензия' + }, + subtitles: { + bugReports: "Что-то не работает? Скажите нам!", + contributing: 'Хотите поддержать проект? Это можно сделать разными способами!', + donations: 'Хотите поддержать материально? Можно сделать пожертвование!' + }, + usesLibrary: 'Приложение использует библиотеку deemix, с помощью которой вы можете сделать собственный UI deemix.', + thanks: `Спасибо rtonno, uhwot и lollilol за помощь с этим проектом, а также BasCurtiz и scarvimane за иконку.`, + upToDate: `Следите за последними обновлениями на канале в Telegram.`, + officialWebsite: 'Официальный сайт', + officialRepo: 'Официальный репозиторий библиотеки', + officialWebuiRepo: 'Официальный репозиторий WebUI', + officialSubreddit: 'Официальный сабреддит', + newsChannel: 'Канал новостей', + questions: `Если у вас возникли вопросы или проблемы с приложением, поищите решение на сабреддите. Если решения не нашли, можете создать новый пост и описать вашу проблему.`, + beforeReporting: `Перед тем, как сообщать об ошибках, убедитесь, что у вас стоит последняя версия приложения и что проблема не на вашей стороне.`, + beSure: `Убедитесь, что ошибка возникает и на других устройствах. Также НЕ сообщайте об ошибке, если про неё уже известно.`, + duplicateReports: 'Повторные сообщения об ошибках рассматриваться не будут.', + dontOpenIssues: `НЕ НАДО создавать задачу с простым вопросом, для этого есть сабреддит.`, + newUI: `Если вы хорошо знаете python, то можете сделать новый UI для приложения с использованием базовой библиотеки или пофиксить в ней баги и сделать pull request в репозитории.`, + acceptFeatures: `Новые фичи также приветствуются, но не слишком сложные, так как они будут добавлены в приложение, а не в саму библиотеку.`, + otherLanguages: `Если вы хорошо знаете другой язык программирования, можете портировать на нём deemix!`, + understandingCode: `Не можете понять код? Напишите RemixDev up в Telegram или на Reddit.`, + contributeWebUI: `Если вы знаете Vue.js (JavaScript), HTML или CSS, можете внести вклад в WebUI.`, + itsFree: `Помните, что это бесплатное приложение и вам следует поддерживать исполнителей, которые вам нравятся прежде, чем поддерживать разработчиков.`, + notObligated: `Вы не обязаны делать пожертвования, я всё равно вас ценю!`, + lincensedUnder: `Проект находится под лицензией + GNU General Public License 3.0.` + }, + charts: { + title: 'Чарты', + changeCountry: 'Изменить страну', + download: 'Скачать чарт' + }, + errors: { + title: 'Errors for {0}', + ids: { + invalidURL: 'URL не распознана', + unsupportedURL: 'URL не поддерживается', + ISRCnotOnDeezer: 'ISRC трека недоступен на deezer', + notYourPrivatePlaylist: "Нельзя скачивать чужие плейлисты.", + spotifyDisabled: 'Неправильно настроены параметры Spotify.', + trackNotOnDeezer: 'Трек не найден на deezer!', + albumNotOnDeezer: 'Альбом не найден deezer!', + notOnDeezer: 'Трек недоступен на Deezer!', + notEncoded: 'Трек ещё не перекодирован!', + notEncodedNoAlternative: 'Трек не перекодирован, альтернатив не найдено!', + wrongBitrate: 'Не найден трек с нужным битрейтом.', + wrongBitrateNoAlternative: 'Не найден трек с нужным битрейтом. Альтернатив не найдено!', + no360RA: 'Трек недоступен в Reality Audio 360.', + notAvailable: "Трек недоступен на серверах deezer!", + notAvailableNoAlternative: "Трек недоступен на серверах deezer. Альтернатив не найдено!" + } + }, + favorites: { + title: 'Избранное', + noPlaylists: 'Плейлисты не найдены', + noAlbums: 'Избранные альбомы не найдены', + noArtists: 'Избранные исполнители не найдены', + noTracks: 'Избранные треки не найдены' + }, + home: { + needTologin: 'Вам нужно зайти под своим Deezer аккаунтом прежде, чем скачивать.', + openSettings: 'Открыть настройки', + sections: { + popularPlaylists: 'Популярные плейлисты', + popularAlbums: 'Самые прослушиваемые альбомы' + } + }, + linkAnalyzer: { + info: 'Используйте этот раздел, чтобы узнать информацию о ссылке, по которой вы хотите скачать.', + useful: + "Этот раздел нужен, если вы хотите скачать треки, недоступные в вашей стране, а также посмотреть, где они доступны.", + linkNotSupported: 'Ссылка не поддерживается', + linkNotSupportedYet: 'Эта ссылка не поддерживается, попробуйте вставить другую.', + table: { + id: 'ID', + isrc: 'ISRC', + upc: 'UPC', + duration: 'Продолжительность', + diskNumber: 'Номер диска', + trackNumber: 'Номер трека', + releaseDate: 'Дата выхода', + bpm: 'BPM', + label: 'Издатель', + recordType: 'Тип', + genres: 'Жанр', + tracklist: 'Треклист' + } + }, + search: { + startSearching: 'Начните искать!', + description: + 'Здесь можно найти трек, альбом, исполнителя, плейлист... всё! Можно также вставить ссылку Deezer', + fans: '{0} поклонников', + noResults: 'Нет результатов', + noResultsTrack: 'Треков не найдено', + noResultsAlbum: 'Альбомов не найдено', + noResultsArtist: 'Исполнителей не найдено', + noResultsPlaylist: 'Плейлистов не найдено' + }, + searchbar: 'Ищите, что хотите (или вставьте ссылку)', + downloads: 'загрузки', + toasts: { + addedToQueue: '{0} добавлено в очередь', + alreadyInQueue: '{0} уже есть в очереди!', + finishDownload: '{0} загрузок завершено.', + allDownloaded: 'Все загрузки завершены!', + refreshFavs: 'Обновление завершено!', + loggingIn: 'Вход', + loggedIn: 'Вход выполнен', + alreadyLogged: 'Вход уже выполнен', + loginFailed: "Вход не выполнен", + loggedOut: 'Logged out', + cancellingCurrentItem: 'Отмена закачки.', + currentItemCancelled: 'Отменено.', + startAddingArtist: 'Добавление {0} альбомов в очередь', + finishAddingArtist: 'Добавлено {0} альбомов в очередь', + startConvertingSpotifyPlaylist: 'Преобразование треков из spotify в deezer', + finishConvertingSpotifyPlaylist: 'Преобразование Spotify playlist converted' + }, + settings: { + title: 'Настройки', + languages: 'Язык', + login: { + title: 'Вход', + loggedIn: 'Вы вошли как {username}', + arl: { + question: 'Как узнать свой ARL?', + update: 'Обновить ARL' + }, + logout: 'Выйти' + }, + appearance: { + title: 'Внешний вид', + slimDownloadTab: 'Обрезать вкладку с загрузками' + }, + downloadPath: { + title: 'Путь сохранения' + }, + templates: { + title: 'Шаблоны', + tracknameTemplate: 'Шаблон названия трека', + albumTracknameTemplate: 'Шаблон названия трека альбома', + playlistTracknameTemplate: 'Шаблон названия трека плейлиста' + }, + folders: { + title: 'Папки', + createPlaylistFolder: 'Создать папки для плейлистов', + playlistNameTemplate: 'Название папки плейлиста', + createArtistFolder: 'Создать папки для исполнителя', + artistNameTemplate: 'Название папки исполнителя', + createAlbumFolder: 'Создать папки для альбома', + albumNameTemplate: 'Название папки альбома', + createCDFolder: 'Создать папки для CD', + createStructurePlaylist: 'Создать структуру папок для плейлистов', + createSingleFolder: 'Создать структуру папок для синглов' + }, + trackTitles: { + title: 'Названия треков', + padTracks: 'Добавлять нули', + paddingSize: 'Количество цифр', + illegalCharacterReplacer: 'Замена для запрещённых символов' + }, + downloads: { + title: 'Загрузки', + queueConcurrency: 'Количество одновременных закачек', + maxBitrate: { + title: 'Битрейт', + 9: 'FLAC 1411kbps', + 3: 'MP3 320kbps', + 1: 'MP3 128kbps' + }, + overwriteFile: { + title: 'Нужно ли перезаписывать файлы?', + y: 'Да, перезаписать файл', + n: "Нет, не перезаписывать", + t: 'Обновить только теги' + }, + fallbackBitrate: 'Скачивать с низким битрейтом, если текущий недоступен', + fallbackSearch: 'Искать другой трек, если нужный недоступен', + logErrors: 'Создать логи для ошибок', + logSearched: 'Создать лог поиска', + createM3U8File: 'Создать файлы плейлистов', + syncedLyrics: 'Создать .lyr файлы (Синхронизированный текст)', + playlistFilenameTemplate: 'Шаблон названия плейлиста', + saveDownloadQueue: 'Сохранять текущий список загрузок при закрытии приложения' + }, + covers: { + title: 'Обложки', + saveArtwork: 'Сохранять обложки', + coverImageTemplate: 'Шаблон названия обложки', + saveArtworkArtist: 'Сохранять изображение исполнителя', + artistImageTemplate: 'Шаблон названия изображения', + localArtworkSize: 'Размер сохраненной обложки', + embeddedArtworkSize: 'Размер встроенной', + localArtworkFormat: { + title: 'В каком формате сохранять обложки?', + jpg: 'jpeg', + png: 'png', + both: 'jpeg и png' + }, + jpegImageQuality: 'Качество JPEG' + }, + tags: { + head: 'Какие теги сохранять', + title: 'Название', + artist: 'Исполнитель', + album: 'Альбом', + cover: 'Обложка', + trackNumber: 'Номер трека', + trackTotal: 'Кол-во треков', + discNumber: 'Номер диска', + discTotal: 'Кол-во дисков', + albumArtist: 'Исполнитель альбома', + genre: 'Жанр', + year: 'Год', + date: 'Дата', + explicit: 'Нецензурная лирика', + isrc: 'ISRC', + length: 'Продолжительность', + barcode: 'Штрихкод альбома (UPC)', + bpm: 'BPM', + replayGain: 'Replay Gain', + label: 'Издатель', + lyrics: 'Несинхронизированный текст', + copyright: 'Права', + composer: 'Композитор', + involvedPeople: 'Вовлечённые люди' + }, + other: { + title: 'Разное', + savePlaylistAsCompilation: 'Сохранить плейлисты как сборники', + useNullSeparator: 'Использовать нулевой символ в качестве разделителя', + saveID3v1: 'Дополнительно сохранять ID3v1', + multiArtistSeparator: { + title: 'Как разделять несколько исполнителей?', + nothing: 'Сохранить только основного', + default: 'Используя стандартную спецификацию', + andFeat: 'Используя & и feat.', + using: 'Используя "{0}"' + }, + singleAlbumArtist: 'Сохранить только основного исполнителя альбома', + albumVariousArtists: 'Оставить "Various Artists" в Исполнителях льбома', + removeAlbumVersion: 'Удалить "Album Version" из названия трека', + removeDuplicateArtists: 'Удалить повторяющихся исполнителей', + dateFormat: { + title: 'Формат даты для FLAC файлов', + year: 'YYYY', + month: 'MM', + day: 'DD' + }, + featuredToTitle: { + title: 'Что делать с приглашёнными исполнителями?', + 0: 'Ничего', + 1: 'Удалить их из названия', + 3: 'Удалить из названия и названия альбома', + 2: 'Добавить в название' + }, + titleCasing: 'Регистр названия', + artistCasing: 'Регистр исполнителя', + casing: { + nothing: 'Не менять', + lower: 'в нижнем регистре', + upper: 'В ВЕРХНЕМ РЕГИСТРЕ', + start: 'Каждое Слово С Заглавной Буквы', + sentence: 'Как в предложении' + }, + previewVolume: 'Громкость прослушивания', + executeCommand: { + title: 'Выполнить команды по окончании загрузок', + description: 'Оставьте пустым, если ничего не требуется' + } + }, + spotify: { + title: 'Функции Spotify', + clientID: 'Spotify clientID', + clientSecret: 'Spotify Client Secret', + username: 'Spotify username' + }, + reset: 'По умолчанию', + save: 'Сохранить', + toasts: { + init: 'Настройки загружены!', + update: 'Настройки обновлены!', + ARLcopied: 'ARL скопирован в буфер обмена' + } + }, + sidebar: { + home: 'домой', + search: 'поиск', + charts: 'чарты', + favorites: 'избранное', + linkAnalyzer: 'просмотр ссылок', + settings: 'настройки', + about: 'о проекте' + }, + tracklist: { + downloadSelection: 'Скачать выбранные' + } +} + +export default ru