fix(i18n): enforce complete localized coverage
This commit is contained in:
+35
-51
@@ -3,7 +3,6 @@
|
||||
"title": "Plezy"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "Вход",
|
||||
"signInWithPlex": "Вход с Plex",
|
||||
"showQRCode": "Покажи QR код",
|
||||
"authenticate": "Удостовери",
|
||||
@@ -56,10 +55,8 @@
|
||||
"episodeNumberTitle": "Епизод ${number} - ${title}",
|
||||
"chapterNumber": "Глава ${number}",
|
||||
"reconnect": "Свържи отново",
|
||||
"exit": "Изход",
|
||||
"viewAll": "Виж всички",
|
||||
"checkingNetwork": "Проверка на мрежата...",
|
||||
"refreshingServers": "Опресняване на сървърите...",
|
||||
"loadingServers": "Зареждане на сървърите...",
|
||||
"connectingToServers": "Свързване със сървърите...",
|
||||
"startingOfflineMode": "Стартиране на офлайн режим...",
|
||||
@@ -139,6 +136,12 @@
|
||||
"tvFullCardLayoutDescription": "Използвай TV карти само с изображения, с насложени имена на актьорите",
|
||||
"focusGlow": "Сияние при фокус",
|
||||
"focusGlowDescription": "Показвай меко сияние около фокусираната карта",
|
||||
"visualEffects": "Визуални ефекти",
|
||||
"visualEffectsAuto": "Автоматично",
|
||||
"visualEffectsAutoDescription": "Автоматично намалявай ефектите на по-слаби устройства",
|
||||
"visualEffectsFull": "Пълни",
|
||||
"visualEffectsReduced": "Намалени",
|
||||
"visualEffectsReducedDescription": "По-малко анимации и изображения с по-ниска резолюция",
|
||||
"hideSpoilers": "Скривай спойлери за негледани епизоди",
|
||||
"hideSpoilersDescription": "Замазвай миниатюри и описания за негледани епизоди",
|
||||
"playerBackend": "Енджин на плеъра",
|
||||
@@ -151,7 +154,7 @@
|
||||
"bufferSizeAuto": "Автоматично (препоръчително)",
|
||||
"bufferSizeWarning": "Налична памет ${heap}MB. Буфер ${size}MB може да повлияе на възпроизвеждането.",
|
||||
"defaultQualityTitle": "Качество по подразбиране",
|
||||
"defaultQualityDescription": "Използва се при стартиране на възпроизвеждане. По-ниските стойности намаляват трафика.",
|
||||
"musicQualityTitle": "Качество на музиката",
|
||||
"subtitleStyling": "Стил на субтитрите",
|
||||
"subtitleStylingDescription": "Настройване на вида на субтитрите",
|
||||
"smallSkipDuration": "Малко прескачане",
|
||||
@@ -245,10 +248,9 @@
|
||||
"maxVolumePercent": "${percent}%",
|
||||
"discordRichPresence": "Discord Rich Presence",
|
||||
"discordRichPresenceDescription": "Показвай какво гледате в Discord",
|
||||
"trakt": "Trakt",
|
||||
"traktDescription": "Синхронизирай историята на гледане с Trakt",
|
||||
"services": "Услуги",
|
||||
"servicesDescription": "Свържи Trakt, MyAnimeList, Seerr и още",
|
||||
"manageLibrariesDescription": "Пренареждай и скривай библиотеки",
|
||||
"companionRemoteServer": "Сървър за дистанционно управление",
|
||||
"companionRemoteServerDescription": "Позволи на мобилни устройства във вашата мрежа да управляват това приложение",
|
||||
"autoPip": "Автоматичен режим картина в картината",
|
||||
@@ -311,7 +313,6 @@
|
||||
"showNavBarLabels": "Показвай етикети в навигационната лента",
|
||||
"showNavBarLabelsDescription": "Показвай текстови етикети под иконите в навигационната лента",
|
||||
"startupSection": "Начален раздел",
|
||||
"startupSectionDescription": "Изберете кой раздел да отваря Plezy при стартиране",
|
||||
"liveTvDefaultFavorites": "По подразбиране към любими канали",
|
||||
"liveTvDefaultFavoritesDescription": "Показвай само любими канали при отваряне на телевизия на живо",
|
||||
"display": "Дисплей",
|
||||
@@ -322,14 +323,7 @@
|
||||
"player": "Плейър",
|
||||
"subtitlesAndConfig": "Субтитри и конфигурация",
|
||||
"seekAndTiming": "Търсене и време",
|
||||
"behavior": "Поведение",
|
||||
"manageLibrariesDescription": "Пренареждай и скривай библиотеки",
|
||||
"visualEffects": "Визуални ефекти",
|
||||
"visualEffectsAuto": "Автоматично",
|
||||
"visualEffectsAutoDescription": "Автоматично намалявай ефектите на по-слаби устройства",
|
||||
"visualEffectsFull": "Пълни",
|
||||
"visualEffectsReduced": "Намалени",
|
||||
"visualEffectsReducedDescription": "По-малко анимации и изображения с по-ниска резолюция"
|
||||
"behavior": "Поведение"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Търсене на филми, сериали, музика...",
|
||||
@@ -418,14 +412,11 @@
|
||||
"rateSheet": {
|
||||
"title": "Оцени",
|
||||
"server": "Сървър",
|
||||
"starValue": "${rating} / 5",
|
||||
"scoreValue": "${score} / 10",
|
||||
"setScore": "Задай оценка",
|
||||
"favorite": "Добави в любими",
|
||||
"favorited": "Добавено в любими",
|
||||
"saved": "Запазено",
|
||||
"notAvailable": "Няма намерено съвпадение",
|
||||
"noConnectedServices": "Свържи услуга в Настройки, за да оценяваш там.",
|
||||
"favorite": "Добави в любими",
|
||||
"favorited": "Добавено в любими"
|
||||
"noConnectedServices": "Свържи услуга в Настройки, за да оценяваш там."
|
||||
},
|
||||
"accessibility": {
|
||||
"mediaCardMovie": "${title}, филм",
|
||||
@@ -435,7 +426,15 @@
|
||||
"mediaCardWatched": "гледано",
|
||||
"mediaCardPartiallyWatched": "${percent} процента изгледано",
|
||||
"mediaCardUnwatched": "негледано",
|
||||
"tapToPlay": "Докоснете за възпроизвеждане"
|
||||
"tapToPlay": "Докоснете за възпроизвеждане",
|
||||
"decrease": "Намали",
|
||||
"increase": "Увеличи",
|
||||
"decreaseValue": "Намали ${label}",
|
||||
"increaseValue": "Увеличи ${label}",
|
||||
"hue": "Нюанс",
|
||||
"saturation": "Наситеност",
|
||||
"brightness": "Яркост",
|
||||
"hexColor": "Шестнадесетичен цвят"
|
||||
},
|
||||
"tooltips": {
|
||||
"shufflePlay": "Разбъркано възпроизвеждане",
|
||||
@@ -481,13 +480,11 @@
|
||||
"settingsButton": "Настройки на възпроизвеждането",
|
||||
"tracksButton": "Аудио и субтитри",
|
||||
"chaptersButton": "Глави",
|
||||
"versionsButton": "Видео версии",
|
||||
"versionQualityButton": "Версия и качество",
|
||||
"versionColumnHeader": "Версия",
|
||||
"qualityColumnHeader": "Качество",
|
||||
"qualityOriginal": "Оригинал",
|
||||
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
||||
"qualityBandwidthEstimate": "~${bitrate} Mbps",
|
||||
"transcodeUnavailableFallback": "Транскодирането не е налично — пуска се оригиналното качество",
|
||||
"pipButton": "Режим картина в картината",
|
||||
"aspectRatioButton": "Съотношение на страните",
|
||||
@@ -530,12 +527,7 @@
|
||||
"subtitleDownloadFailed": "Неуспешно изтегляне на субтитър",
|
||||
"searchLanguages": "Търсене на езици..."
|
||||
},
|
||||
"userStatus": {
|
||||
"admin": "Администратор",
|
||||
"restricted": "Ограничен",
|
||||
"protected": "Защитен",
|
||||
"current": "ТЕКУЩ"
|
||||
},
|
||||
"userStatus": {},
|
||||
"messages": {
|
||||
"markedAsWatched": "Маркирано като гледано",
|
||||
"markedAsUnwatched": "Маркирано като негледано",
|
||||
@@ -676,8 +668,7 @@
|
||||
"pinProtectionOptional": "PIN защита (по желание)",
|
||||
"pinExplain": "Изисква се 4-цифрен PIN за смяна на профили.",
|
||||
"continueButton": "Продължи",
|
||||
"pinsDontMatch": "PIN кодовете не съвпадат",
|
||||
"initializeServicesFailed": "Неуспешно инициализиране на услугите за профили"
|
||||
"pinsDontMatch": "PIN кодовете не съвпадат"
|
||||
},
|
||||
"connections": {
|
||||
"sectionTitle": "Връзки",
|
||||
@@ -692,7 +683,6 @@
|
||||
},
|
||||
"discover": {
|
||||
"title": "Открий",
|
||||
"switchProfile": "Смяна на профил",
|
||||
"noContentAvailable": "Няма налично съдържание",
|
||||
"addMediaToLibraries": "Добавете медия към библиотеките си",
|
||||
"continueWatching": "Продължи гледането",
|
||||
@@ -721,8 +711,6 @@
|
||||
"connectionFailed": "Не може да се осъществи връзка с медиен сървър",
|
||||
"failedToLoad": "Неуспешно зареждане на ${context}: ${error}",
|
||||
"noClientAvailable": "Няма наличен клиент",
|
||||
"authenticationFailed": "Удостоверяването е неуспешно: ${error}",
|
||||
"couldNotLaunchUrl": "URL адресът за удостоверяване не може да бъде отворен",
|
||||
"pleaseEnterToken": "Моля, въведете токен",
|
||||
"invalidToken": "Невалиден токен",
|
||||
"failedToVerifyToken": "Неуспешна проверка на токена: ${error}",
|
||||
@@ -749,6 +737,8 @@
|
||||
"allLibrariesHidden": "Всички библиотеки са скрити",
|
||||
"hiddenLibrariesCount": "Скрити библиотеки (${count})",
|
||||
"thisLibraryIsEmpty": "Тази библиотека е празна",
|
||||
"noItemsMatchFilters": "Няма елементи, съответстващи на активните филтри",
|
||||
"resetFilters": "Нулирай филтрите",
|
||||
"all": "Всички",
|
||||
"clearAll": "Изчисти всички",
|
||||
"scanLibraryConfirm": "Сигурни ли сте, че искате да сканирате \"${title}\"?",
|
||||
@@ -804,7 +794,6 @@
|
||||
"communityRating": "Оценка от общността",
|
||||
"criticRating": "Оценка от критиците",
|
||||
"userRating": "Потребителска оценка",
|
||||
"lastPlayed": "Последно възпроизведено",
|
||||
"datePlayed": "Дата на възпроизвеждане",
|
||||
"playCount": "Брой възпроизвеждания",
|
||||
"productionYear": "Година на производство",
|
||||
@@ -818,9 +807,7 @@
|
||||
"dateShared": "Дата на споделяне",
|
||||
"latestEpisodeAirDate": "Дата на излъчване на последния епизод",
|
||||
"lastEpisodeDateAdded": "Дата на добавяне на последния епизод"
|
||||
},
|
||||
"noItemsMatchFilters": "Няма елементи, съответстващи на активните филтри",
|
||||
"resetFilters": "Нулирай филтрите"
|
||||
}
|
||||
},
|
||||
"about": {
|
||||
"title": "Относно",
|
||||
@@ -830,7 +817,6 @@
|
||||
"viewLicensesDescription": "Виж лицензите на библиотеки на трети страни"
|
||||
},
|
||||
"serverSelection": {
|
||||
"allServerConnectionsFailed": "Не може да се осъществи връзка с нито един сървър. Проверете мрежата.",
|
||||
"noServersFoundForAccount": "Не са намерени сървъри за ${username} (${email})",
|
||||
"failedToLoadServers": "Неуспешно зареждане на сървъри: ${error}"
|
||||
},
|
||||
@@ -893,7 +879,6 @@
|
||||
"watchlistUpdateFailed": "Неуспешно обновяване на списъка за гледане",
|
||||
"notInLibrary": "Не е в твоята библиотека",
|
||||
"inTheseLibraries": "В тези библиотеки",
|
||||
"availableOn": "Налично на ${server}",
|
||||
"checkingLibrary": "Проверка на твоята библиотека...",
|
||||
"emptyTitle": "Тук все още няма нищо",
|
||||
"emptyMessage": "Редовете от ${source} ще се появят тук, когато има съдържание.",
|
||||
@@ -907,6 +892,8 @@
|
||||
"guide": "ТВ програма",
|
||||
"noChannels": "Няма налични канали",
|
||||
"noDvr": "Няма конфигуриран DVR на нито един сървър",
|
||||
"serverUnavailable": "Сървърът за телевизия на живо не е наличен.",
|
||||
"serverNotConnected": "Сървърът за телевизия на живо не е свързан.",
|
||||
"noPrograms": "Няма налични програмни данни",
|
||||
"liveStreamFailed": "Потокът на живо се провали",
|
||||
"unknownProgram": "Неизвестна програма",
|
||||
@@ -942,7 +929,6 @@
|
||||
"scheduledRecordings": "Планирани",
|
||||
"recordingRules": "Правила за запис",
|
||||
"noScheduledRecordings": "Няма планирани записи",
|
||||
"noRecordingRules": "Все още няма правила за запис",
|
||||
"manageRecording": "Управление на запис",
|
||||
"cancelRecording": "Отмени запис",
|
||||
"cancelRecordingTitle": "Да се отмени ли този запис?",
|
||||
@@ -959,7 +945,6 @@
|
||||
"recordingCancelled": "Записът е отменен",
|
||||
"recordingRuleDeleted": "Правилото за запис е изтрито",
|
||||
"processRecordingRules": "Преоцени правилата",
|
||||
"loadingRecordings": "Зареждане на записи...",
|
||||
"recordingInProgress": "Записва се сега",
|
||||
"recordingsCount": "${count} планирани",
|
||||
"editRule": "Редактирай правило",
|
||||
@@ -973,7 +958,6 @@
|
||||
"title": "Колекции",
|
||||
"collection": "Колекция",
|
||||
"empty": "Колекцията е празна",
|
||||
"unknownLibrarySection": "Не може да се изтрие: неизвестна секция на библиотеката",
|
||||
"deleteCollection": "Изтрий колекция",
|
||||
"deleteConfirm": "Да се изтрие ли \"${title}\"? Това не може да бъде отменено.",
|
||||
"deleted": "Колекцията е изтрита",
|
||||
@@ -1013,6 +997,7 @@
|
||||
"itemAdded": "Добавено към плейлист",
|
||||
"itemRemoved": "Премахнато от плейлист",
|
||||
"selectPlaylist": "Избери плейлист",
|
||||
"searchPlaylists": "Търсене в плейлисти...",
|
||||
"errorCreating": "Неуспешно създаване на плейлист",
|
||||
"errorDeleting": "Неуспешно изтриване на плейлист",
|
||||
"errorLoading": "Неуспешно зареждане на плейлисти",
|
||||
@@ -1102,15 +1087,15 @@
|
||||
"participantResumed": "${name} продължи",
|
||||
"participantSeeked": "${name} превъртя",
|
||||
"participantBuffering": "${name} буферира",
|
||||
"participantNeedsUpdate": "${name} е с по-стара версия на приложението — синхронизирането не е налично",
|
||||
"resumingWithout": "Продължаване без ${name}",
|
||||
"waitingForParticipants": "Изчакване другите да заредят...",
|
||||
"waitingForName": "Изчакване на ${name}...",
|
||||
"recentRooms": "Скорошни стаи",
|
||||
"renameRoom": "Преименувай стая",
|
||||
"removeRoom": "Премахни",
|
||||
"guestSwitchUnavailable": "Превключването не е възможно — сървърът е недостъпен за синхронизация",
|
||||
"guestSwitchFailed": "Превключването не е възможно — съдържанието не е намерено на този сървър",
|
||||
"participantNeedsUpdate": "${name} е с по-стара версия на приложението — синхронизирането не е налично",
|
||||
"resumingWithout": "Продължаване без ${name}",
|
||||
"waitingForName": "Изчакване на ${name}..."
|
||||
"guestSwitchFailed": "Превключването не е възможно — съдържанието не е намерено на този сървър"
|
||||
},
|
||||
"downloads": {
|
||||
"title": "Изтегляния",
|
||||
@@ -1155,7 +1140,6 @@
|
||||
"customAmount": "Персонален брой...",
|
||||
"includeSpecials": "Включи специалните",
|
||||
"howManyEpisodes": "Колко епизода?",
|
||||
"itemsQueued": "${count} елемента са добавени в опашката за изтегляне",
|
||||
"keepSynced": "Поддържай синхронизирано",
|
||||
"downloadOnce": "Изтегли еднократно",
|
||||
"keepNUnwatched": "Пази ${count} негледани",
|
||||
@@ -1204,7 +1188,6 @@
|
||||
"unknownDevice": "Непознато устройство",
|
||||
"session": {
|
||||
"startingServer": "Стартиране на сървър за дистанционно управление...",
|
||||
"failedToCreate": "Неуспешно стартиране на сървър за дистанционно управление:",
|
||||
"hostAddress": "Адрес на хоста",
|
||||
"connected": "Свързан",
|
||||
"serverRunning": "Сървърът за дистанционно управление е активен",
|
||||
@@ -1265,6 +1248,8 @@
|
||||
"errors": {
|
||||
"noNetworkInterface": "Не е намерен мрежов интерфейс",
|
||||
"authenticationFailed": "Неуспешно удостоверяване",
|
||||
"serverStartFailed": "Неуспешно стартиране на отдалечения сървър: ${error}",
|
||||
"commandFailed": "Неуспешно изпращане на отдалечена команда: ${error}",
|
||||
"joinTimedOut": "Времето за присъединяване към сесията изтече",
|
||||
"failedToConnectAnyAddress": "Неуспешно свързване към който и да е адрес",
|
||||
"connectionLostAfterAttempts": "Връзката е загубена след ${attempts} опита",
|
||||
@@ -1538,7 +1523,6 @@
|
||||
"quickConnectFailed": "Quick Connect е неуспешен: ${error}",
|
||||
"addPlexTitle": "Вход с Plex",
|
||||
"pinExpired": "PIN-ът изтече преди вход. Моля, опитайте отново.",
|
||||
"duplicatePlexAccount": "Вече сте влезли в Plex. Излезте, за да смените акаунта.",
|
||||
"failedToRegisterAccount": "Неуспешна регистрация на акаунт: ${error}",
|
||||
"enterJellyfinUrlError": "Въведете URL адреса на вашия Jellyfin сървър",
|
||||
"addConnectionTitle": "Добави връзка",
|
||||
|
||||
+35
-51
@@ -3,7 +3,6 @@
|
||||
"title": "Plezy"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "Log ind",
|
||||
"signInWithPlex": "Log ind med Plex",
|
||||
"showQRCode": "Vis QR-kode",
|
||||
"authenticate": "Godkend",
|
||||
@@ -56,10 +55,8 @@
|
||||
"episodeNumberTitle": "Episode ${number} - ${title}",
|
||||
"chapterNumber": "Kapitel ${number}",
|
||||
"reconnect": "Genopret forbindelse",
|
||||
"exit": "Afslut",
|
||||
"viewAll": "Vis alle",
|
||||
"checkingNetwork": "Tjekker netværk...",
|
||||
"refreshingServers": "Opdaterer servere...",
|
||||
"loadingServers": "Indlæser servere...",
|
||||
"connectingToServers": "Forbinder til servere...",
|
||||
"startingOfflineMode": "Starter offlinetilstand...",
|
||||
@@ -139,6 +136,12 @@
|
||||
"tvFullCardLayoutDescription": "Brug TV-kort kun med billeder og skuespillernavne ovenpå",
|
||||
"focusGlow": "Fokusglød",
|
||||
"focusGlowDescription": "Vis en blød glød omkring det fokuserede kort",
|
||||
"visualEffects": "Visuelle effekter",
|
||||
"visualEffectsAuto": "Automatisk",
|
||||
"visualEffectsAutoDescription": "Reducer automatisk effekter på enheder med lav ydeevne",
|
||||
"visualEffectsFull": "Fuld",
|
||||
"visualEffectsReduced": "Reduceret",
|
||||
"visualEffectsReducedDescription": "Færre animationer og illustrationer i lavere opløsning",
|
||||
"hideSpoilers": "Skjul spoilere for usete episoder",
|
||||
"hideSpoilersDescription": "Slør miniaturebilleder og beskrivelser for usete episoder",
|
||||
"playerBackend": "Afspillerbackend",
|
||||
@@ -151,7 +154,7 @@
|
||||
"bufferSizeAuto": "Auto (Anbefalet)",
|
||||
"bufferSizeWarning": "${heap}MB hukommelse tilgængelig. En buffer på ${size}MB kan påvirke afspilning.",
|
||||
"defaultQualityTitle": "Standardkvalitet",
|
||||
"defaultQualityDescription": "Bruges ved start af afspilning. Lavere værdier reducerer båndbredden.",
|
||||
"musicQualityTitle": "Musikkvalitet",
|
||||
"subtitleStyling": "Undertekststil",
|
||||
"subtitleStylingDescription": "Tilpas underteksters udseende",
|
||||
"smallSkipDuration": "Kort spring-varighed",
|
||||
@@ -245,10 +248,9 @@
|
||||
"maxVolumePercent": "${percent}%",
|
||||
"discordRichPresence": "Discord Rich Presence",
|
||||
"discordRichPresenceDescription": "Vis hvad du ser på Discord",
|
||||
"trakt": "Trakt",
|
||||
"traktDescription": "Synkroniser visningshistorik med Trakt",
|
||||
"services": "Tjenester",
|
||||
"servicesDescription": "Forbind Trakt, MyAnimeList, Seerr og mere",
|
||||
"manageLibrariesDescription": "Omarranger og skjul biblioteker",
|
||||
"companionRemoteServer": "Companion Remote Server",
|
||||
"companionRemoteServerDescription": "Tillad mobilenheder på dit netværk at styre denne app",
|
||||
"autoPip": "Auto billede-i-billede",
|
||||
@@ -311,7 +313,6 @@
|
||||
"showNavBarLabels": "Vis navigationsbarlabels",
|
||||
"showNavBarLabelsDescription": "Vis tekstlabels under navigationsbarikoner",
|
||||
"startupSection": "Startsektion",
|
||||
"startupSectionDescription": "Vælg hvilken sektion Plezy åbner ved start",
|
||||
"liveTvDefaultFavorites": "Standard til favoritkanaler",
|
||||
"liveTvDefaultFavoritesDescription": "Vis kun favoritkanaler ved åbning af Live TV",
|
||||
"display": "Skærm",
|
||||
@@ -322,14 +323,7 @@
|
||||
"player": "Afspiller",
|
||||
"subtitlesAndConfig": "Undertekster og konfiguration",
|
||||
"seekAndTiming": "Søgning og timing",
|
||||
"behavior": "Adfærd",
|
||||
"manageLibrariesDescription": "Omarranger og skjul biblioteker",
|
||||
"visualEffects": "Visuelle effekter",
|
||||
"visualEffectsAuto": "Automatisk",
|
||||
"visualEffectsAutoDescription": "Reducer automatisk effekter på enheder med lav ydeevne",
|
||||
"visualEffectsFull": "Fuld",
|
||||
"visualEffectsReduced": "Reduceret",
|
||||
"visualEffectsReducedDescription": "Færre animationer og illustrationer i lavere opløsning"
|
||||
"behavior": "Adfærd"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Søg film, serier, musik...",
|
||||
@@ -418,14 +412,11 @@
|
||||
"rateSheet": {
|
||||
"title": "Bedøm",
|
||||
"server": "Server",
|
||||
"starValue": "${rating} / 5",
|
||||
"scoreValue": "${score} / 10",
|
||||
"setScore": "Angiv en score",
|
||||
"favorite": "Favorit",
|
||||
"favorited": "Føjet til favoritter",
|
||||
"saved": "Gemt",
|
||||
"notAvailable": "Intet match fundet",
|
||||
"noConnectedServices": "Forbind en tjeneste i Indstillinger for at bedømme der.",
|
||||
"favorite": "Favorit",
|
||||
"favorited": "Føjet til favoritter"
|
||||
"noConnectedServices": "Forbind en tjeneste i Indstillinger for at bedømme der."
|
||||
},
|
||||
"accessibility": {
|
||||
"mediaCardMovie": "${title}, film",
|
||||
@@ -435,7 +426,15 @@
|
||||
"mediaCardWatched": "set",
|
||||
"mediaCardPartiallyWatched": "${percent} procent set",
|
||||
"mediaCardUnwatched": "uset",
|
||||
"tapToPlay": "Tryk for at afspille"
|
||||
"tapToPlay": "Tryk for at afspille",
|
||||
"decrease": "Formindsk",
|
||||
"increase": "Forøg",
|
||||
"decreaseValue": "Formindsk ${label}",
|
||||
"increaseValue": "Forøg ${label}",
|
||||
"hue": "Farvetone",
|
||||
"saturation": "Mætning",
|
||||
"brightness": "Lysstyrke",
|
||||
"hexColor": "Hexfarve"
|
||||
},
|
||||
"tooltips": {
|
||||
"shufflePlay": "Afspil tilfældigt",
|
||||
@@ -481,13 +480,11 @@
|
||||
"settingsButton": "Afspilningsindstillinger",
|
||||
"tracksButton": "Lyd og undertekster",
|
||||
"chaptersButton": "Kapitler",
|
||||
"versionsButton": "Videoversioner",
|
||||
"versionQualityButton": "Version og kvalitet",
|
||||
"versionColumnHeader": "Version",
|
||||
"qualityColumnHeader": "Kvalitet",
|
||||
"qualityOriginal": "Original",
|
||||
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
||||
"qualityBandwidthEstimate": "~${bitrate} Mbps",
|
||||
"transcodeUnavailableFallback": "Transkodning utilgængelig — afspiller original kvalitet",
|
||||
"pipButton": "Billede-i-billede-tilstand",
|
||||
"aspectRatioButton": "Billedformat",
|
||||
@@ -530,12 +527,7 @@
|
||||
"subtitleDownloadFailed": "Kunne ikke downloade undertekst",
|
||||
"searchLanguages": "Søg sprog..."
|
||||
},
|
||||
"userStatus": {
|
||||
"admin": "Administrator",
|
||||
"restricted": "Begrænset",
|
||||
"protected": "Beskyttet",
|
||||
"current": "NUVÆRENDE"
|
||||
},
|
||||
"userStatus": {},
|
||||
"messages": {
|
||||
"markedAsWatched": "Markeret som set",
|
||||
"markedAsUnwatched": "Markeret som uset",
|
||||
@@ -676,8 +668,7 @@
|
||||
"pinProtectionOptional": "PIN-beskyttelse (valgfri)",
|
||||
"pinExplain": "4-cifret PIN kræves for at skifte profiler.",
|
||||
"continueButton": "Fortsæt",
|
||||
"pinsDontMatch": "PIN-koder matcher ikke",
|
||||
"initializeServicesFailed": "Kunne ikke initialisere profiltjenester"
|
||||
"pinsDontMatch": "PIN-koder matcher ikke"
|
||||
},
|
||||
"connections": {
|
||||
"sectionTitle": "Forbindelser",
|
||||
@@ -692,7 +683,6 @@
|
||||
},
|
||||
"discover": {
|
||||
"title": "Opdag",
|
||||
"switchProfile": "Skift profil",
|
||||
"noContentAvailable": "Intet indhold tilgængeligt",
|
||||
"addMediaToLibraries": "Tilføj medier til dine biblioteker",
|
||||
"continueWatching": "Fortsæt med at se",
|
||||
@@ -721,8 +711,6 @@
|
||||
"connectionFailed": "Kan ikke oprette forbindelse til medieserver",
|
||||
"failedToLoad": "Kunne ikke indlæse ${context}: ${error}",
|
||||
"noClientAvailable": "Ingen klient tilgængelig",
|
||||
"authenticationFailed": "Godkendelse mislykkedes: ${error}",
|
||||
"couldNotLaunchUrl": "Kunne ikke åbne godkendelses-URL",
|
||||
"pleaseEnterToken": "Indtast et token",
|
||||
"invalidToken": "Ugyldigt token",
|
||||
"failedToVerifyToken": "Kunne ikke verificere token: ${error}",
|
||||
@@ -749,6 +737,8 @@
|
||||
"allLibrariesHidden": "Alle biblioteker er skjult",
|
||||
"hiddenLibrariesCount": "Skjulte biblioteker (${count})",
|
||||
"thisLibraryIsEmpty": "Dette bibliotek er tomt",
|
||||
"noItemsMatchFilters": "Ingen elementer matcher de aktive filtre",
|
||||
"resetFilters": "Nulstil filtre",
|
||||
"all": "Alle",
|
||||
"clearAll": "Ryd alle",
|
||||
"scanLibraryConfirm": "Er du sikker på, at du vil scanne \"${title}\"?",
|
||||
@@ -804,7 +794,6 @@
|
||||
"communityRating": "Fællesskabsvurdering",
|
||||
"criticRating": "Kritikerbedømmelse",
|
||||
"userRating": "Brugerbedømmelse",
|
||||
"lastPlayed": "Sidst afspillet",
|
||||
"datePlayed": "Afspilningsdato",
|
||||
"playCount": "Antal afspilninger",
|
||||
"productionYear": "Produktionsår",
|
||||
@@ -818,9 +807,7 @@
|
||||
"dateShared": "Delt dato",
|
||||
"latestEpisodeAirDate": "Seneste episodes premieredato",
|
||||
"lastEpisodeDateAdded": "Dato for senest tilføjede episode"
|
||||
},
|
||||
"noItemsMatchFilters": "Ingen elementer matcher de aktive filtre",
|
||||
"resetFilters": "Nulstil filtre"
|
||||
}
|
||||
},
|
||||
"about": {
|
||||
"title": "Om",
|
||||
@@ -830,7 +817,6 @@
|
||||
"viewLicensesDescription": "Se licenser for tredjepartsbiblioteker"
|
||||
},
|
||||
"serverSelection": {
|
||||
"allServerConnectionsFailed": "Kunne ikke oprette forbindelse til nogen servere. Tjek dit netværk.",
|
||||
"noServersFoundForAccount": "Ingen servere fundet for ${username} (${email})",
|
||||
"failedToLoadServers": "Kunne ikke indlæse servere: ${error}"
|
||||
},
|
||||
@@ -893,7 +879,6 @@
|
||||
"watchlistUpdateFailed": "Kunne ikke opdatere ønskelisten",
|
||||
"notInLibrary": "Ikke i dit bibliotek",
|
||||
"inTheseLibraries": "I disse biblioteker",
|
||||
"availableOn": "Tilgængelig på ${server}",
|
||||
"checkingLibrary": "Tjekker dit bibliotek...",
|
||||
"emptyTitle": "Der er ikke noget her endnu",
|
||||
"emptyMessage": "Rækker fra ${source} vises her, når de har indhold.",
|
||||
@@ -907,6 +892,8 @@
|
||||
"guide": "Guide",
|
||||
"noChannels": "Ingen kanaler tilgængelige",
|
||||
"noDvr": "Ingen DVR konfigureret på nogen server",
|
||||
"serverUnavailable": "Live-tv-serveren er ikke tilgængelig.",
|
||||
"serverNotConnected": "Live-tv-serveren er ikke forbundet.",
|
||||
"noPrograms": "Ingen programdata tilgængelig",
|
||||
"liveStreamFailed": "Livestream mislykkedes",
|
||||
"unknownProgram": "Ukendt program",
|
||||
@@ -942,7 +929,6 @@
|
||||
"scheduledRecordings": "Planlagt",
|
||||
"recordingRules": "Optagelsesregler",
|
||||
"noScheduledRecordings": "Ingen optagelser planlagt",
|
||||
"noRecordingRules": "Ingen optagelsesregler endnu",
|
||||
"manageRecording": "Administrer optagelse",
|
||||
"cancelRecording": "Annullér optagelse",
|
||||
"cancelRecordingTitle": "Annullér denne optagelse?",
|
||||
@@ -959,7 +945,6 @@
|
||||
"recordingCancelled": "Optagelse annulleret",
|
||||
"recordingRuleDeleted": "Optagelsesregel slettet",
|
||||
"processRecordingRules": "Genberegn regler",
|
||||
"loadingRecordings": "Indlæser optagelser ...",
|
||||
"recordingInProgress": "Optager nu",
|
||||
"recordingsCount": "${count} planlagt",
|
||||
"editRule": "Rediger regel",
|
||||
@@ -973,7 +958,6 @@
|
||||
"title": "Samlinger",
|
||||
"collection": "Samling",
|
||||
"empty": "Samlingen er tom",
|
||||
"unknownLibrarySection": "Kan ikke slette: Ukendt bibliotekssektion",
|
||||
"deleteCollection": "Slet samling",
|
||||
"deleteConfirm": "Slet \"${title}\"? Dette kan ikke fortrydes.",
|
||||
"deleted": "Samling slettet",
|
||||
@@ -1013,6 +997,7 @@
|
||||
"itemAdded": "Tilføjet til playliste",
|
||||
"itemRemoved": "Fjernet fra playliste",
|
||||
"selectPlaylist": "Vælg playliste",
|
||||
"searchPlaylists": "Søg i playlister...",
|
||||
"errorCreating": "Kunne ikke oprette playliste",
|
||||
"errorDeleting": "Kunne ikke slette playliste",
|
||||
"errorLoading": "Kunne ikke indlæse playlister",
|
||||
@@ -1102,15 +1087,15 @@
|
||||
"participantResumed": "${name} genoptog",
|
||||
"participantSeeked": "${name} spoled",
|
||||
"participantBuffering": "${name} bufferer",
|
||||
"participantNeedsUpdate": "${name} bruger en ældre appversion — synkronisering er ikke tilgængelig",
|
||||
"resumingWithout": "Fortsætter uden ${name}",
|
||||
"waitingForParticipants": "Venter på at andre indlæser...",
|
||||
"waitingForName": "Venter på ${name}...",
|
||||
"recentRooms": "Seneste rum",
|
||||
"renameRoom": "Omdøb rum",
|
||||
"removeRoom": "Fjern",
|
||||
"guestSwitchUnavailable": "Kunne ikke skifte — server ikke tilgængelig for synkronisering",
|
||||
"guestSwitchFailed": "Kunne ikke skifte — indhold blev ikke fundet på denne server",
|
||||
"participantNeedsUpdate": "${name} bruger en ældre appversion — synkronisering er ikke tilgængelig",
|
||||
"resumingWithout": "Fortsætter uden ${name}",
|
||||
"waitingForName": "Venter på ${name}..."
|
||||
"guestSwitchFailed": "Kunne ikke skifte — indhold blev ikke fundet på denne server"
|
||||
},
|
||||
"downloads": {
|
||||
"title": "Downloads",
|
||||
@@ -1155,7 +1140,6 @@
|
||||
"customAmount": "Angiv antal...",
|
||||
"includeSpecials": "Inkludér specials",
|
||||
"howManyEpisodes": "Hvor mange episoder?",
|
||||
"itemsQueued": "${count} elementer sat i kø til download",
|
||||
"keepSynced": "Hold synkroniseret",
|
||||
"downloadOnce": "Download én gang",
|
||||
"keepNUnwatched": "Behold ${count} usete",
|
||||
@@ -1204,7 +1188,6 @@
|
||||
"unknownDevice": "Ukendt enhed",
|
||||
"session": {
|
||||
"startingServer": "Starter fjernserver...",
|
||||
"failedToCreate": "Kunne ikke starte fjernserver:",
|
||||
"hostAddress": "Værtsadresse",
|
||||
"connected": "Forbundet",
|
||||
"serverRunning": "Fjernserver aktiv",
|
||||
@@ -1265,6 +1248,8 @@
|
||||
"errors": {
|
||||
"noNetworkInterface": "Ingen netværksgrænseflade fundet",
|
||||
"authenticationFailed": "Godkendelse mislykkedes",
|
||||
"serverStartFailed": "Kunne ikke starte fjernserveren: ${error}",
|
||||
"commandFailed": "Kunne ikke sende fjernkommando: ${error}",
|
||||
"joinTimedOut": "Tidsgrænse for deltagelse i session overskredet",
|
||||
"failedToConnectAnyAddress": "Kunne ikke oprette forbindelse til nogen adresse",
|
||||
"connectionLostAfterAttempts": "Forbindelse mistet efter ${attempts} forsøg",
|
||||
@@ -1538,7 +1523,6 @@
|
||||
"quickConnectFailed": "Quick Connect mislykkedes: ${error}",
|
||||
"addPlexTitle": "Log ind med Plex",
|
||||
"pinExpired": "PIN udløb før login. Prøv igen.",
|
||||
"duplicatePlexAccount": "Allerede logget ind på Plex. Log ud for at skifte konto.",
|
||||
"failedToRegisterAccount": "Kunne ikke registrere kontoen: ${error}",
|
||||
"enterJellyfinUrlError": "Angiv URL'en til din Jellyfin-server",
|
||||
"addConnectionTitle": "Tilføj forbindelse",
|
||||
|
||||
+35
-51
@@ -3,7 +3,6 @@
|
||||
"title": "Plezy"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "Anmelden",
|
||||
"signInWithPlex": "Mit Plex anmelden",
|
||||
"showQRCode": "QR-Code anzeigen",
|
||||
"authenticate": "Authentifizieren",
|
||||
@@ -56,10 +55,8 @@
|
||||
"episodeNumberTitle": "Episode ${number} - ${title}",
|
||||
"chapterNumber": "Kapitel ${number}",
|
||||
"reconnect": "Erneut verbinden",
|
||||
"exit": "Beenden",
|
||||
"viewAll": "Alle anzeigen",
|
||||
"checkingNetwork": "Netzwerk wird geprüft...",
|
||||
"refreshingServers": "Server werden aktualisiert...",
|
||||
"loadingServers": "Server werden geladen...",
|
||||
"connectingToServers": "Verbindung zu Servern...",
|
||||
"startingOfflineMode": "Offlinemodus wird gestartet...",
|
||||
@@ -139,6 +136,12 @@
|
||||
"tvFullCardLayoutDescription": "TV-Karten nur mit Bild verwenden und Darstellernamen einblenden",
|
||||
"focusGlow": "Fokus-Leuchten",
|
||||
"focusGlowDescription": "Sanftes Leuchten um die fokussierte Karte anzeigen",
|
||||
"visualEffects": "Visuelle Effekte",
|
||||
"visualEffectsAuto": "Automatisch",
|
||||
"visualEffectsAutoDescription": "Effekte auf leistungsschwachen Geräten automatisch reduzieren",
|
||||
"visualEffectsFull": "Vollständig",
|
||||
"visualEffectsReduced": "Reduziert",
|
||||
"visualEffectsReducedDescription": "Weniger Animationen und Grafiken mit niedrigerer Auflösung",
|
||||
"hideSpoilers": "Spoiler für nicht gesehene Episoden verbergen",
|
||||
"hideSpoilersDescription": "Vorschaubilder und Beschreibungen ungesehener Episoden verwischen",
|
||||
"playerBackend": "Player-Backend",
|
||||
@@ -151,7 +154,7 @@
|
||||
"bufferSizeAuto": "Auto (Empfohlen)",
|
||||
"bufferSizeWarning": "${heap}MB Speicher verfügbar. Ein ${size}MB-Puffer kann die Wiedergabe beeinträchtigen.",
|
||||
"defaultQualityTitle": "Standardqualität",
|
||||
"defaultQualityDescription": "Wird beim Starten der Wiedergabe verwendet. Niedrigere Werte reduzieren die Bandbreite.",
|
||||
"musicQualityTitle": "Musikqualität",
|
||||
"subtitleStyling": "Untertitel-Stil",
|
||||
"subtitleStylingDescription": "Aussehen von Untertiteln anpassen",
|
||||
"smallSkipDuration": "Kleine Sprungdauer",
|
||||
@@ -245,10 +248,9 @@
|
||||
"maxVolumePercent": "${percent}%",
|
||||
"discordRichPresence": "Discord Rich Presence",
|
||||
"discordRichPresenceDescription": "Zeige auf Discord, was du gerade schaust",
|
||||
"trakt": "Trakt",
|
||||
"traktDescription": "Wiedergabeverlauf mit Trakt synchronisieren",
|
||||
"services": "Dienste",
|
||||
"servicesDescription": "Trakt, MyAnimeList, Seerr und mehr verbinden",
|
||||
"manageLibrariesDescription": "Mediatheken neu anordnen und ausblenden",
|
||||
"companionRemoteServer": "Companion Remote Server",
|
||||
"companionRemoteServerDescription": "Mobilgeräten in deinem Netzwerk erlauben, diese App zu steuern",
|
||||
"autoPip": "Automatisches Bild-in-Bild",
|
||||
@@ -311,7 +313,6 @@
|
||||
"showNavBarLabels": "Navigationsleisten-Beschriftungen anzeigen",
|
||||
"showNavBarLabelsDescription": "Textbeschriftungen unter den Symbolen der Navigationsleiste anzeigen",
|
||||
"startupSection": "Startbereich",
|
||||
"startupSectionDescription": "Legt fest, welchen Bereich Plezy beim Start öffnet",
|
||||
"liveTvDefaultFavorites": "Standardmäßig Favoritenkanäle",
|
||||
"liveTvDefaultFavoritesDescription": "Beim Öffnen von Live TV nur Favoritenkanäle anzeigen",
|
||||
"display": "Anzeige",
|
||||
@@ -322,14 +323,7 @@
|
||||
"player": "Wiedergabe",
|
||||
"subtitlesAndConfig": "Untertitel & Konfiguration",
|
||||
"seekAndTiming": "Spulen & Timing",
|
||||
"behavior": "Verhalten",
|
||||
"manageLibrariesDescription": "Mediatheken neu anordnen und ausblenden",
|
||||
"visualEffects": "Visuelle Effekte",
|
||||
"visualEffectsAuto": "Automatisch",
|
||||
"visualEffectsAutoDescription": "Effekte auf leistungsschwachen Geräten automatisch reduzieren",
|
||||
"visualEffectsFull": "Vollständig",
|
||||
"visualEffectsReduced": "Reduziert",
|
||||
"visualEffectsReducedDescription": "Weniger Animationen und Grafiken mit niedrigerer Auflösung"
|
||||
"behavior": "Verhalten"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Filme, Serien, Musik suchen...",
|
||||
@@ -418,14 +412,11 @@
|
||||
"rateSheet": {
|
||||
"title": "Bewerten",
|
||||
"server": "Server",
|
||||
"starValue": "${rating} / 5",
|
||||
"scoreValue": "${score} / 10",
|
||||
"setScore": "Eine Wertung festlegen",
|
||||
"favorite": "Favorit",
|
||||
"favorited": "Favorisiert",
|
||||
"saved": "Gespeichert",
|
||||
"notAvailable": "Keine Übereinstimmung gefunden",
|
||||
"noConnectedServices": "Verbinde einen Dienst in den Einstellungen, um dort zu bewerten.",
|
||||
"favorite": "Favorit",
|
||||
"favorited": "Favorisiert"
|
||||
"noConnectedServices": "Verbinde einen Dienst in den Einstellungen, um dort zu bewerten."
|
||||
},
|
||||
"accessibility": {
|
||||
"mediaCardMovie": "${title}, Film",
|
||||
@@ -435,7 +426,15 @@
|
||||
"mediaCardWatched": "angesehen",
|
||||
"mediaCardPartiallyWatched": "${percent} Prozent angesehen",
|
||||
"mediaCardUnwatched": "ungeschaut",
|
||||
"tapToPlay": "Zum Abspielen tippen"
|
||||
"tapToPlay": "Zum Abspielen tippen",
|
||||
"decrease": "Verringern",
|
||||
"increase": "Erhöhen",
|
||||
"decreaseValue": "${label} verringern",
|
||||
"increaseValue": "${label} erhöhen",
|
||||
"hue": "Farbton",
|
||||
"saturation": "Sättigung",
|
||||
"brightness": "Helligkeit",
|
||||
"hexColor": "Hex-Farbe"
|
||||
},
|
||||
"tooltips": {
|
||||
"shufflePlay": "Zufallswiedergabe",
|
||||
@@ -481,13 +480,11 @@
|
||||
"settingsButton": "Wiedergabeeinstellungen",
|
||||
"tracksButton": "Audio und Untertitel",
|
||||
"chaptersButton": "Kapitel",
|
||||
"versionsButton": "Videoversionen",
|
||||
"versionQualityButton": "Version & Qualität",
|
||||
"versionColumnHeader": "Version",
|
||||
"qualityColumnHeader": "Qualität",
|
||||
"qualityOriginal": "Original",
|
||||
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
||||
"qualityBandwidthEstimate": "~${bitrate} Mbps",
|
||||
"transcodeUnavailableFallback": "Transkodierung nicht verfügbar — Wiedergabe in Originalqualität",
|
||||
"pipButton": "Bild-in-Bild Modus",
|
||||
"aspectRatioButton": "Seitenverhältnis",
|
||||
@@ -530,12 +527,7 @@
|
||||
"subtitleDownloadFailed": "Untertitel konnte nicht heruntergeladen werden",
|
||||
"searchLanguages": "Sprachen suchen..."
|
||||
},
|
||||
"userStatus": {
|
||||
"admin": "Eigentümer",
|
||||
"restricted": "Eingeschränkt",
|
||||
"protected": "Geschützt",
|
||||
"current": "AKTUELL"
|
||||
},
|
||||
"userStatus": {},
|
||||
"messages": {
|
||||
"markedAsWatched": "Als gesehen markiert",
|
||||
"markedAsUnwatched": "Als ungesehen markiert",
|
||||
@@ -676,8 +668,7 @@
|
||||
"pinProtectionOptional": "PIN-Schutz (optional)",
|
||||
"pinExplain": "4-stellige PIN zum Profilwechsel erforderlich.",
|
||||
"continueButton": "Weiter",
|
||||
"pinsDontMatch": "PINs stimmen nicht überein",
|
||||
"initializeServicesFailed": "Profildienste konnten nicht initialisiert werden"
|
||||
"pinsDontMatch": "PINs stimmen nicht überein"
|
||||
},
|
||||
"connections": {
|
||||
"sectionTitle": "Verbindungen",
|
||||
@@ -692,7 +683,6 @@
|
||||
},
|
||||
"discover": {
|
||||
"title": "Entdecken",
|
||||
"switchProfile": "Profil wechseln",
|
||||
"noContentAvailable": "Kein Inhalt verfügbar",
|
||||
"addMediaToLibraries": "Medien zur Mediathek hinzufügen",
|
||||
"continueWatching": "Weiterschauen",
|
||||
@@ -721,8 +711,6 @@
|
||||
"connectionFailed": "Keine Verbindung zum Medienserver möglich",
|
||||
"failedToLoad": "Fehler beim Laden von ${context}: ${error}",
|
||||
"noClientAvailable": "Kein Client verfügbar",
|
||||
"authenticationFailed": "Authentifizierung fehlgeschlagen: ${error}",
|
||||
"couldNotLaunchUrl": "Auth-URL konnte nicht geöffnet werden",
|
||||
"pleaseEnterToken": "Bitte Token eingeben",
|
||||
"invalidToken": "Ungültiges Token",
|
||||
"failedToVerifyToken": "Token-Verifizierung fehlgeschlagen: ${error}",
|
||||
@@ -749,6 +737,8 @@
|
||||
"allLibrariesHidden": "Alle Mediatheken sind ausgeblendet",
|
||||
"hiddenLibrariesCount": "Ausgeblendete Mediatheken (${count})",
|
||||
"thisLibraryIsEmpty": "Diese Mediathek ist leer",
|
||||
"noItemsMatchFilters": "Keine Elemente entsprechen den aktiven Filtern",
|
||||
"resetFilters": "Filter zurücksetzen",
|
||||
"all": "Alle",
|
||||
"clearAll": "Alle löschen",
|
||||
"scanLibraryConfirm": "„${title}“ wirklich scannen?",
|
||||
@@ -804,7 +794,6 @@
|
||||
"communityRating": "Community-Bewertung",
|
||||
"criticRating": "Kritikerbewertung",
|
||||
"userRating": "Benutzerbewertung",
|
||||
"lastPlayed": "Zuletzt abgespielt",
|
||||
"datePlayed": "Wiedergabedatum",
|
||||
"playCount": "Wiedergaben",
|
||||
"productionYear": "Produktionsjahr",
|
||||
@@ -818,9 +807,7 @@
|
||||
"dateShared": "Datum geteilt",
|
||||
"latestEpisodeAirDate": "Letztes Folgenausstrahlungsdatum",
|
||||
"lastEpisodeDateAdded": "Datum der zuletzt hinzugefügten Folge"
|
||||
},
|
||||
"noItemsMatchFilters": "Keine Elemente entsprechen den aktiven Filtern",
|
||||
"resetFilters": "Filter zurücksetzen"
|
||||
}
|
||||
},
|
||||
"about": {
|
||||
"title": "Über",
|
||||
@@ -830,7 +817,6 @@
|
||||
"viewLicensesDescription": "Lizenzen von Drittanbieter-Bibliotheken anzeigen"
|
||||
},
|
||||
"serverSelection": {
|
||||
"allServerConnectionsFailed": "Keine Verbindung zu Servern möglich. Prüfe dein Netzwerk.",
|
||||
"noServersFoundForAccount": "Keine Server gefunden für ${username} (${email})",
|
||||
"failedToLoadServers": "Server konnten nicht geladen werden: ${error}"
|
||||
},
|
||||
@@ -893,7 +879,6 @@
|
||||
"watchlistUpdateFailed": "Merkliste konnte nicht aktualisiert werden",
|
||||
"notInLibrary": "Nicht in deiner Mediathek",
|
||||
"inTheseLibraries": "In diesen Mediatheken",
|
||||
"availableOn": "Verfügbar auf ${server}",
|
||||
"checkingLibrary": "Deine Mediathek wird überprüft...",
|
||||
"emptyTitle": "Hier ist noch nichts",
|
||||
"emptyMessage": "Zeilen aus ${source} erscheinen hier, sobald sie Inhalte enthalten.",
|
||||
@@ -907,6 +892,8 @@
|
||||
"guide": "Programmführer",
|
||||
"noChannels": "Keine Kanäle verfügbar",
|
||||
"noDvr": "Kein DVR auf einem Server konfiguriert",
|
||||
"serverUnavailable": "Der Live-TV-Server ist nicht verfügbar.",
|
||||
"serverNotConnected": "Der Live-TV-Server ist nicht verbunden.",
|
||||
"noPrograms": "Keine Programmdaten verfügbar",
|
||||
"liveStreamFailed": "Livestream fehlgeschlagen",
|
||||
"unknownProgram": "Unbekannte Sendung",
|
||||
@@ -942,7 +929,6 @@
|
||||
"scheduledRecordings": "Geplant",
|
||||
"recordingRules": "Aufnahmeregeln",
|
||||
"noScheduledRecordings": "Keine geplanten Aufnahmen",
|
||||
"noRecordingRules": "Noch keine Aufnahmeregeln",
|
||||
"manageRecording": "Aufnahme verwalten",
|
||||
"cancelRecording": "Aufnahme abbrechen",
|
||||
"cancelRecordingTitle": "Diese Aufnahme abbrechen?",
|
||||
@@ -959,7 +945,6 @@
|
||||
"recordingCancelled": "Aufnahme abgebrochen",
|
||||
"recordingRuleDeleted": "Aufnahmeregel gelöscht",
|
||||
"processRecordingRules": "Regeln neu bewerten",
|
||||
"loadingRecordings": "Aufnahmen werden geladen ...",
|
||||
"recordingInProgress": "Wird jetzt aufgenommen",
|
||||
"recordingsCount": "${count} geplant",
|
||||
"editRule": "Regel bearbeiten",
|
||||
@@ -973,7 +958,6 @@
|
||||
"title": "Sammlungen",
|
||||
"collection": "Sammlung",
|
||||
"empty": "Sammlung ist leer",
|
||||
"unknownLibrarySection": "Löschen nicht möglich: Unbekannte Bibliothekssektion",
|
||||
"deleteCollection": "Sammlung löschen",
|
||||
"deleteConfirm": "\"${title}\" löschen? Dies kann nicht rückgängig gemacht werden.",
|
||||
"deleted": "Sammlung gelöscht",
|
||||
@@ -1013,6 +997,7 @@
|
||||
"itemAdded": "Zur Wiedergabeliste hinzugefügt",
|
||||
"itemRemoved": "Aus Wiedergabeliste entfernt",
|
||||
"selectPlaylist": "Wiedergabeliste auswählen",
|
||||
"searchPlaylists": "Wiedergabelisten durchsuchen...",
|
||||
"errorCreating": "Wiedergabeliste konnte nicht erstellt werden",
|
||||
"errorDeleting": "Wiedergabeliste konnte nicht gelöscht werden",
|
||||
"errorLoading": "Wiedergabelisten konnten nicht geladen werden",
|
||||
@@ -1102,15 +1087,15 @@
|
||||
"participantResumed": "${name} hat fortgesetzt",
|
||||
"participantSeeked": "${name} hat gespult",
|
||||
"participantBuffering": "${name} puffert",
|
||||
"participantNeedsUpdate": "${name} verwendet eine ältere Appversion — Synchronisierung nicht verfügbar",
|
||||
"resumingWithout": "Fortfahren ohne ${name}",
|
||||
"waitingForParticipants": "Warte auf andere zum Laden...",
|
||||
"waitingForName": "Warten auf ${name}...",
|
||||
"recentRooms": "Letzte Räume",
|
||||
"renameRoom": "Raum umbenennen",
|
||||
"removeRoom": "Entfernen",
|
||||
"guestSwitchUnavailable": "Wechsel fehlgeschlagen — Server nicht für Synchronisierung verfügbar",
|
||||
"guestSwitchFailed": "Wechsel fehlgeschlagen — Inhalt auf diesem Server nicht gefunden",
|
||||
"participantNeedsUpdate": "${name} verwendet eine ältere Appversion — Synchronisierung nicht verfügbar",
|
||||
"resumingWithout": "Fortfahren ohne ${name}",
|
||||
"waitingForName": "Warten auf ${name}..."
|
||||
"guestSwitchFailed": "Wechsel fehlgeschlagen — Inhalt auf diesem Server nicht gefunden"
|
||||
},
|
||||
"downloads": {
|
||||
"title": "Downloads",
|
||||
@@ -1155,7 +1140,6 @@
|
||||
"customAmount": "Eigene Anzahl...",
|
||||
"includeSpecials": "Specials einschließen",
|
||||
"howManyEpisodes": "Wie viele Episoden?",
|
||||
"itemsQueued": "${count} Elemente zum Download eingereiht",
|
||||
"keepSynced": "Synchronisiert halten",
|
||||
"downloadOnce": "Einmal herunterladen",
|
||||
"keepNUnwatched": "${count} ungesehene behalten",
|
||||
@@ -1204,7 +1188,6 @@
|
||||
"unknownDevice": "Unbekanntes Gerät",
|
||||
"session": {
|
||||
"startingServer": "Remote-Server wird gestartet...",
|
||||
"failedToCreate": "Remote-Server konnte nicht gestartet werden:",
|
||||
"hostAddress": "Host-Adresse",
|
||||
"connected": "Verbunden",
|
||||
"serverRunning": "Remote-Server aktiv",
|
||||
@@ -1265,6 +1248,8 @@
|
||||
"errors": {
|
||||
"noNetworkInterface": "Keine Netzwerkschnittstelle gefunden",
|
||||
"authenticationFailed": "Authentifizierung fehlgeschlagen",
|
||||
"serverStartFailed": "Remote-Server konnte nicht gestartet werden: ${error}",
|
||||
"commandFailed": "Remote-Befehl konnte nicht gesendet werden: ${error}",
|
||||
"joinTimedOut": "Zeitüberschreitung beim Beitreten zur Sitzung",
|
||||
"failedToConnectAnyAddress": "Keine Verbindung zu einer Adresse möglich",
|
||||
"connectionLostAfterAttempts": "Verbindung nach ${attempts} Versuchen verloren",
|
||||
@@ -1538,7 +1523,6 @@
|
||||
"quickConnectFailed": "Quick Connect fehlgeschlagen: ${error}",
|
||||
"addPlexTitle": "Mit Plex anmelden",
|
||||
"pinExpired": "PIN ist vor der Anmeldung abgelaufen. Bitte erneut versuchen.",
|
||||
"duplicatePlexAccount": "Bereits bei Plex angemeldet. Melde dich ab, um Konten zu wechseln.",
|
||||
"failedToRegisterAccount": "Konto konnte nicht registriert werden: ${error}",
|
||||
"enterJellyfinUrlError": "Gib die URL deines Jellyfin-Servers ein",
|
||||
"addConnectionTitle": "Verbindung hinzufügen",
|
||||
|
||||
+15
-33
@@ -3,7 +3,6 @@
|
||||
"title": "Plezy"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "Sign in",
|
||||
"signInWithPlex": "Sign in with Plex",
|
||||
"showQRCode": "Show QR Code",
|
||||
"authenticate": "Authenticate",
|
||||
@@ -56,10 +55,8 @@
|
||||
"episodeNumberTitle": "Episode ${number} - ${title}",
|
||||
"chapterNumber": "Chapter ${number}",
|
||||
"reconnect": "Reconnect",
|
||||
"exit": "Exit",
|
||||
"viewAll": "View All",
|
||||
"checkingNetwork": "Checking network...",
|
||||
"refreshingServers": "Refreshing servers...",
|
||||
"loadingServers": "Loading servers...",
|
||||
"connectingToServers": "Connecting to servers...",
|
||||
"startingOfflineMode": "Starting offline mode...",
|
||||
@@ -157,7 +154,6 @@
|
||||
"bufferSizeAuto": "Auto (Recommended)",
|
||||
"bufferSizeWarning": "${heap}MB memory available. A ${size}MB buffer may affect playback.",
|
||||
"defaultQualityTitle": "Default Quality",
|
||||
"defaultQualityDescription": "Used when starting playback. Lower values reduce bandwidth.",
|
||||
"musicQualityTitle": "Music Quality",
|
||||
"subtitleStyling": "Subtitle Styling",
|
||||
"subtitleStylingDescription": "Customize subtitle appearance",
|
||||
@@ -252,8 +248,6 @@
|
||||
"maxVolumePercent": "${percent}%",
|
||||
"discordRichPresence": "Discord Rich Presence",
|
||||
"discordRichPresenceDescription": "Show what you're watching on Discord",
|
||||
"trakt": "Trakt",
|
||||
"traktDescription": "Sync watch history with Trakt",
|
||||
"services": "Services",
|
||||
"servicesDescription": "Connect Trakt, MyAnimeList, Seerr, and more",
|
||||
"manageLibrariesDescription": "Reorder and hide libraries",
|
||||
@@ -319,7 +313,6 @@
|
||||
"showNavBarLabels": "Show Navigation Bar Labels",
|
||||
"showNavBarLabelsDescription": "Display text labels under navigation bar icons",
|
||||
"startupSection": "Startup Section",
|
||||
"startupSectionDescription": "Choose which section Plezy opens to when it starts",
|
||||
"liveTvDefaultFavorites": "Default to Favorite Channels",
|
||||
"liveTvDefaultFavoritesDescription": "Show only favorite channels when opening Live TV",
|
||||
"display": "Display",
|
||||
@@ -419,9 +412,6 @@
|
||||
"rateSheet": {
|
||||
"title": "Rate",
|
||||
"server": "Server",
|
||||
"starValue": "${rating} / 5",
|
||||
"scoreValue": "${score} / 10",
|
||||
"setScore": "Set a score",
|
||||
"favorite": "Favorite",
|
||||
"favorited": "Favorited",
|
||||
"saved": "Saved",
|
||||
@@ -436,7 +426,15 @@
|
||||
"mediaCardWatched": "watched",
|
||||
"mediaCardPartiallyWatched": "${percent} percent watched",
|
||||
"mediaCardUnwatched": "unwatched",
|
||||
"tapToPlay": "Tap to play"
|
||||
"tapToPlay": "Tap to play",
|
||||
"decrease": "Decrease",
|
||||
"increase": "Increase",
|
||||
"decreaseValue": "Decrease ${label}",
|
||||
"increaseValue": "Increase ${label}",
|
||||
"hue": "Hue",
|
||||
"saturation": "Saturation",
|
||||
"brightness": "Brightness",
|
||||
"hexColor": "Hex color"
|
||||
},
|
||||
"tooltips": {
|
||||
"shufflePlay": "Shuffle play",
|
||||
@@ -482,13 +480,11 @@
|
||||
"settingsButton": "Playback Settings",
|
||||
"tracksButton": "Audio & Subtitles",
|
||||
"chaptersButton": "Chapters",
|
||||
"versionsButton": "Video versions",
|
||||
"versionQualityButton": "Version & Quality",
|
||||
"versionColumnHeader": "Version",
|
||||
"qualityColumnHeader": "Quality",
|
||||
"qualityOriginal": "Original",
|
||||
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
||||
"qualityBandwidthEstimate": "~${bitrate} Mbps",
|
||||
"transcodeUnavailableFallback": "Transcoding unavailable — playing original quality",
|
||||
"pipButton": "Picture-in-Picture mode",
|
||||
"aspectRatioButton": "Aspect ratio",
|
||||
@@ -531,12 +527,7 @@
|
||||
"subtitleDownloadFailed": "Failed to download subtitle",
|
||||
"searchLanguages": "Search languages..."
|
||||
},
|
||||
"userStatus": {
|
||||
"admin": "Admin",
|
||||
"restricted": "Restricted",
|
||||
"protected": "Protected",
|
||||
"current": "CURRENT"
|
||||
},
|
||||
"userStatus": {},
|
||||
"messages": {
|
||||
"markedAsWatched": "Marked as watched",
|
||||
"markedAsUnwatched": "Marked as unwatched",
|
||||
@@ -677,8 +668,7 @@
|
||||
"pinProtectionOptional": "PIN protection (optional)",
|
||||
"pinExplain": "4-digit PIN required to switch profiles.",
|
||||
"continueButton": "Continue",
|
||||
"pinsDontMatch": "PINs don't match",
|
||||
"initializeServicesFailed": "Failed to initialize profile services"
|
||||
"pinsDontMatch": "PINs don't match"
|
||||
},
|
||||
"connections": {
|
||||
"sectionTitle": "Connections",
|
||||
@@ -693,7 +683,6 @@
|
||||
},
|
||||
"discover": {
|
||||
"title": "Discover",
|
||||
"switchProfile": "Switch Profile",
|
||||
"noContentAvailable": "No content available",
|
||||
"addMediaToLibraries": "Add some media to your libraries",
|
||||
"continueWatching": "Continue Watching",
|
||||
@@ -722,8 +711,6 @@
|
||||
"connectionFailed": "Unable to connect to media server",
|
||||
"failedToLoad": "Failed to load ${context}: ${error}",
|
||||
"noClientAvailable": "No client available",
|
||||
"authenticationFailed": "Authentication failed: ${error}",
|
||||
"couldNotLaunchUrl": "Could not launch auth URL",
|
||||
"pleaseEnterToken": "Please enter a token",
|
||||
"invalidToken": "Invalid token",
|
||||
"failedToVerifyToken": "Failed to verify token: ${error}",
|
||||
@@ -807,7 +794,6 @@
|
||||
"communityRating": "Community Rating",
|
||||
"criticRating": "Critic Rating",
|
||||
"userRating": "User Rating",
|
||||
"lastPlayed": "Last Played",
|
||||
"datePlayed": "Date Played",
|
||||
"playCount": "Play Count",
|
||||
"productionYear": "Production Year",
|
||||
@@ -831,7 +817,6 @@
|
||||
"viewLicensesDescription": "View licenses of third-party libraries"
|
||||
},
|
||||
"serverSelection": {
|
||||
"allServerConnectionsFailed": "Couldn't connect to any servers. Check your network.",
|
||||
"noServersFoundForAccount": "No servers found for ${username} (${email})",
|
||||
"failedToLoadServers": "Failed to load servers: ${error}"
|
||||
},
|
||||
@@ -894,7 +879,6 @@
|
||||
"watchlistUpdateFailed": "Couldn't update watchlist",
|
||||
"notInLibrary": "Not in your library",
|
||||
"inTheseLibraries": "In these libraries",
|
||||
"availableOn": "Available on ${server}",
|
||||
"checkingLibrary": "Checking your library...",
|
||||
"emptyTitle": "Nothing here yet",
|
||||
"emptyMessage": "Rows from ${source} will appear here once they have content.",
|
||||
@@ -908,6 +892,8 @@
|
||||
"guide": "Guide",
|
||||
"noChannels": "No channels available",
|
||||
"noDvr": "No DVR configured on any server",
|
||||
"serverUnavailable": "Live TV server is not available.",
|
||||
"serverNotConnected": "Live TV server is not connected.",
|
||||
"noPrograms": "No program data available",
|
||||
"liveStreamFailed": "Live stream failed",
|
||||
"unknownProgram": "Unknown Program",
|
||||
@@ -943,7 +929,6 @@
|
||||
"scheduledRecordings": "Scheduled",
|
||||
"recordingRules": "Recording Rules",
|
||||
"noScheduledRecordings": "Nothing scheduled to record",
|
||||
"noRecordingRules": "No recording rules yet",
|
||||
"manageRecording": "Manage recording",
|
||||
"cancelRecording": "Cancel recording",
|
||||
"cancelRecordingTitle": "Cancel this recording?",
|
||||
@@ -960,7 +945,6 @@
|
||||
"recordingCancelled": "Recording cancelled",
|
||||
"recordingRuleDeleted": "Recording rule deleted",
|
||||
"processRecordingRules": "Re-evaluate rules",
|
||||
"loadingRecordings": "Loading recordings...",
|
||||
"recordingInProgress": "Recording now",
|
||||
"recordingsCount": "${count} scheduled",
|
||||
"editRule": "Edit rule",
|
||||
@@ -974,7 +958,6 @@
|
||||
"title": "Collections",
|
||||
"collection": "Collection",
|
||||
"empty": "Collection is empty",
|
||||
"unknownLibrarySection": "Cannot delete: Unknown library section",
|
||||
"deleteCollection": "Delete Collection",
|
||||
"deleteConfirm": "Delete \"${title}\"? This can't be undone.",
|
||||
"deleted": "Collection deleted",
|
||||
@@ -1157,7 +1140,6 @@
|
||||
"customAmount": "Custom amount...",
|
||||
"includeSpecials": "Include Specials",
|
||||
"howManyEpisodes": "How many episodes?",
|
||||
"itemsQueued": "${count} items queued for download",
|
||||
"keepSynced": "Keep synced",
|
||||
"downloadOnce": "Download once",
|
||||
"keepNUnwatched": "Keep ${count} unwatched",
|
||||
@@ -1206,7 +1188,6 @@
|
||||
"unknownDevice": "Unknown Device",
|
||||
"session": {
|
||||
"startingServer": "Starting remote server...",
|
||||
"failedToCreate": "Failed to start remote server:",
|
||||
"hostAddress": "Host Address",
|
||||
"connected": "Connected",
|
||||
"serverRunning": "Remote server active",
|
||||
@@ -1267,6 +1248,8 @@
|
||||
"errors": {
|
||||
"noNetworkInterface": "No network interface found",
|
||||
"authenticationFailed": "Authentication failed",
|
||||
"serverStartFailed": "Failed to start remote server: ${error}",
|
||||
"commandFailed": "Failed to send remote command: ${error}",
|
||||
"joinTimedOut": "Timed out joining session",
|
||||
"failedToConnectAnyAddress": "Failed to connect to any address",
|
||||
"connectionLostAfterAttempts": "Connection lost after ${attempts} attempts",
|
||||
@@ -1540,7 +1523,6 @@
|
||||
"quickConnectFailed": "Quick Connect failed: ${error}",
|
||||
"addPlexTitle": "Sign in with Plex",
|
||||
"pinExpired": "PIN expired before sign-in. Please try again.",
|
||||
"duplicatePlexAccount": "Already signed in to Plex. Sign out to switch accounts.",
|
||||
"failedToRegisterAccount": "Failed to register account: ${error}",
|
||||
"enterJellyfinUrlError": "Enter your Jellyfin server URL",
|
||||
"addConnectionTitle": "Add connection",
|
||||
|
||||
+35
-51
@@ -3,7 +3,6 @@
|
||||
"title": "Plezy"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "Iniciar sesión",
|
||||
"signInWithPlex": "Inicia sesión con Plex",
|
||||
"showQRCode": "Mostrar código QR",
|
||||
"authenticate": "Autenticar",
|
||||
@@ -56,10 +55,8 @@
|
||||
"episodeNumberTitle": "Episodio ${number} - ${title}",
|
||||
"chapterNumber": "Capítulo ${number}",
|
||||
"reconnect": "Reconectar",
|
||||
"exit": "Salir",
|
||||
"viewAll": "Ver todo",
|
||||
"checkingNetwork": "Comprobando red...",
|
||||
"refreshingServers": "Actualizando servidores...",
|
||||
"loadingServers": "Cargando servidores...",
|
||||
"connectingToServers": "Conectando a servidores...",
|
||||
"startingOfflineMode": "Iniciando modo sin conexión...",
|
||||
@@ -139,6 +136,12 @@
|
||||
"tvFullCardLayoutDescription": "Usar tarjetas TV solo con imagen y nombres de actores superpuestos",
|
||||
"focusGlow": "Brillo de foco",
|
||||
"focusGlowDescription": "Mostrar un brillo suave alrededor de la tarjeta con foco",
|
||||
"visualEffects": "Efectos visuales",
|
||||
"visualEffectsAuto": "Automático",
|
||||
"visualEffectsAutoDescription": "Reduce automáticamente los efectos en dispositivos de bajo consumo",
|
||||
"visualEffectsFull": "Completos",
|
||||
"visualEffectsReduced": "Reducidos",
|
||||
"visualEffectsReducedDescription": "Menos animaciones e ilustraciones de menor resolución",
|
||||
"hideSpoilers": "Ocultar spoilers de episodios no vistos",
|
||||
"hideSpoilersDescription": "Desenfocar miniaturas y descripciones de episodios no vistos",
|
||||
"playerBackend": "Reproductor",
|
||||
@@ -151,7 +154,7 @@
|
||||
"bufferSizeAuto": "Auto (Recomendado)",
|
||||
"bufferSizeWarning": "${heap}MB de memoria disponible. Un búfer de ${size}MB puede afectar la reproducción.",
|
||||
"defaultQualityTitle": "Calidad predeterminada",
|
||||
"defaultQualityDescription": "Se utiliza al iniciar la reproducción. Los valores más bajos reducen el ancho de banda.",
|
||||
"musicQualityTitle": "Calidad de música",
|
||||
"subtitleStyling": "Estilo de Subtítulos",
|
||||
"subtitleStylingDescription": "Personalizar la apariencia de los subtítulos",
|
||||
"smallSkipDuration": "Salto pequeño",
|
||||
@@ -245,10 +248,9 @@
|
||||
"maxVolumePercent": "${percent}%",
|
||||
"discordRichPresence": "Presencia de Discord",
|
||||
"discordRichPresenceDescription": "Mostrar lo que estás viendo en Discord",
|
||||
"trakt": "Trakt",
|
||||
"traktDescription": "Sincronizar historial de visualización con Trakt",
|
||||
"services": "Servicios",
|
||||
"servicesDescription": "Conecta Trakt, MyAnimeList, Seerr y más",
|
||||
"manageLibrariesDescription": "Reordena y oculta bibliotecas",
|
||||
"companionRemoteServer": "Servidor de control remoto",
|
||||
"companionRemoteServerDescription": "Permitir que dispositivos móviles en tu red controlen esta aplicación",
|
||||
"autoPip": "Imagen en imagen automática",
|
||||
@@ -311,7 +313,6 @@
|
||||
"showNavBarLabels": "Mostrar etiquetas de la barra de navegación",
|
||||
"showNavBarLabelsDescription": "Mostrar etiquetas de texto bajo los iconos de la barra de navegación",
|
||||
"startupSection": "Sección de inicio",
|
||||
"startupSectionDescription": "Elige qué sección abre Plezy al iniciarse",
|
||||
"liveTvDefaultFavorites": "Canales favoritos por defecto",
|
||||
"liveTvDefaultFavoritesDescription": "Mostrar solo canales favoritos al abrir TV en vivo",
|
||||
"display": "Pantalla",
|
||||
@@ -322,14 +323,7 @@
|
||||
"player": "Reproductor",
|
||||
"subtitlesAndConfig": "Subtítulos y configuración",
|
||||
"seekAndTiming": "Búsqueda y tiempo",
|
||||
"behavior": "Comportamiento",
|
||||
"manageLibrariesDescription": "Reordena y oculta bibliotecas",
|
||||
"visualEffects": "Efectos visuales",
|
||||
"visualEffectsAuto": "Automático",
|
||||
"visualEffectsAutoDescription": "Reduce automáticamente los efectos en dispositivos de bajo consumo",
|
||||
"visualEffectsFull": "Completos",
|
||||
"visualEffectsReduced": "Reducidos",
|
||||
"visualEffectsReducedDescription": "Menos animaciones e ilustraciones de menor resolución"
|
||||
"behavior": "Comportamiento"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Buscar películas, series, música...",
|
||||
@@ -418,14 +412,11 @@
|
||||
"rateSheet": {
|
||||
"title": "Calificar",
|
||||
"server": "Servidor",
|
||||
"starValue": "${rating} / 5",
|
||||
"scoreValue": "${score} / 10",
|
||||
"setScore": "Establecer puntuación",
|
||||
"favorite": "Favorito",
|
||||
"favorited": "Marcado como favorito",
|
||||
"saved": "Guardado",
|
||||
"notAvailable": "No se encontró coincidencia",
|
||||
"noConnectedServices": "Conecta un servicio en Configuración para calificar ahí.",
|
||||
"favorite": "Favorito",
|
||||
"favorited": "Marcado como favorito"
|
||||
"noConnectedServices": "Conecta un servicio en Configuración para calificar ahí."
|
||||
},
|
||||
"accessibility": {
|
||||
"mediaCardMovie": "${title}, película",
|
||||
@@ -435,7 +426,15 @@
|
||||
"mediaCardWatched": "visto",
|
||||
"mediaCardPartiallyWatched": "${percent} por ciento visto",
|
||||
"mediaCardUnwatched": "no visto",
|
||||
"tapToPlay": "Toca para reproducir"
|
||||
"tapToPlay": "Toca para reproducir",
|
||||
"decrease": "Disminuir",
|
||||
"increase": "Aumentar",
|
||||
"decreaseValue": "Disminuir ${label}",
|
||||
"increaseValue": "Aumentar ${label}",
|
||||
"hue": "Tono",
|
||||
"saturation": "Saturación",
|
||||
"brightness": "Brillo",
|
||||
"hexColor": "Color hexadecimal"
|
||||
},
|
||||
"tooltips": {
|
||||
"shufflePlay": "Reproducción aleatoria",
|
||||
@@ -481,13 +480,11 @@
|
||||
"settingsButton": "Ajustes de reproducción",
|
||||
"tracksButton": "Audio y subtítulos",
|
||||
"chaptersButton": "Capítulos",
|
||||
"versionsButton": "Versiones de video",
|
||||
"versionQualityButton": "Versión y calidad",
|
||||
"versionColumnHeader": "Versión",
|
||||
"qualityColumnHeader": "Calidad",
|
||||
"qualityOriginal": "Original",
|
||||
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
||||
"qualityBandwidthEstimate": "~${bitrate} Mbps",
|
||||
"transcodeUnavailableFallback": "Transcodificación no disponible — reproduciendo calidad original",
|
||||
"pipButton": "Modo PiP (Imagen en Imagen)",
|
||||
"aspectRatioButton": "Relación de aspecto",
|
||||
@@ -530,12 +527,7 @@
|
||||
"subtitleDownloadFailed": "Error al descargar subtítulo",
|
||||
"searchLanguages": "Buscar idiomas..."
|
||||
},
|
||||
"userStatus": {
|
||||
"admin": "Administrador",
|
||||
"restricted": "Restringido",
|
||||
"protected": "Protegido",
|
||||
"current": "ACTUAL"
|
||||
},
|
||||
"userStatus": {},
|
||||
"messages": {
|
||||
"markedAsWatched": "Marcado como visto",
|
||||
"markedAsUnwatched": "Marcado como no visto",
|
||||
@@ -676,8 +668,7 @@
|
||||
"pinProtectionOptional": "Protección con PIN (opcional)",
|
||||
"pinExplain": "Se requiere PIN de 4 dígitos para cambiar de perfil.",
|
||||
"continueButton": "Continuar",
|
||||
"pinsDontMatch": "Los PIN no coinciden",
|
||||
"initializeServicesFailed": "No se pudieron inicializar los servicios de perfil"
|
||||
"pinsDontMatch": "Los PIN no coinciden"
|
||||
},
|
||||
"connections": {
|
||||
"sectionTitle": "Conexiones",
|
||||
@@ -692,7 +683,6 @@
|
||||
},
|
||||
"discover": {
|
||||
"title": "Descubrir",
|
||||
"switchProfile": "Cambiar Perfil",
|
||||
"noContentAvailable": "No hay contenido disponible",
|
||||
"addMediaToLibraries": "Añade contenido a tus bibliotecas",
|
||||
"continueWatching": "Seguir Viendo",
|
||||
@@ -721,8 +711,6 @@
|
||||
"connectionFailed": "No se puede conectar al servidor multimedia",
|
||||
"failedToLoad": "Error al cargar ${context}: ${error}",
|
||||
"noClientAvailable": "No hay cliente disponible",
|
||||
"authenticationFailed": "Error de autenticación: ${error}",
|
||||
"couldNotLaunchUrl": "No se pudo abrir la URL de autenticación",
|
||||
"pleaseEnterToken": "Por favor, introduce un token",
|
||||
"invalidToken": "Token no válido",
|
||||
"failedToVerifyToken": "Error al verificar el token: ${error}",
|
||||
@@ -749,6 +737,8 @@
|
||||
"allLibrariesHidden": "Todas las bibliotecas están ocultas",
|
||||
"hiddenLibrariesCount": "Bibliotecas ocultas (${count})",
|
||||
"thisLibraryIsEmpty": "Esta biblioteca está vacía",
|
||||
"noItemsMatchFilters": "Ningún elemento coincide con los filtros activos",
|
||||
"resetFilters": "Restablecer filtros",
|
||||
"all": "Todos",
|
||||
"clearAll": "Borrar Todo",
|
||||
"scanLibraryConfirm": "¿Estás seguro de que quieres escanear \"${title}\"?",
|
||||
@@ -804,7 +794,6 @@
|
||||
"communityRating": "Calificación de comunidad",
|
||||
"criticRating": "Calificación de crítica",
|
||||
"userRating": "Calificación del usuario",
|
||||
"lastPlayed": "Última reproducción",
|
||||
"datePlayed": "Fecha de reproducción",
|
||||
"playCount": "Reproducciones",
|
||||
"productionYear": "Año de producción",
|
||||
@@ -818,9 +807,7 @@
|
||||
"dateShared": "Fecha de compartición",
|
||||
"latestEpisodeAirDate": "Última fecha de emisión del episodio",
|
||||
"lastEpisodeDateAdded": "Fecha de adición del último episodio"
|
||||
},
|
||||
"noItemsMatchFilters": "Ningún elemento coincide con los filtros activos",
|
||||
"resetFilters": "Restablecer filtros"
|
||||
}
|
||||
},
|
||||
"about": {
|
||||
"title": "Acerca de",
|
||||
@@ -830,7 +817,6 @@
|
||||
"viewLicensesDescription": "Ver licencias de librerías de terceros"
|
||||
},
|
||||
"serverSelection": {
|
||||
"allServerConnectionsFailed": "No se pudo conectar a ningún servidor. Revisa tu red.",
|
||||
"noServersFoundForAccount": "No se encontraron servidores para ${username} (${email})",
|
||||
"failedToLoadServers": "Error al cargar servidores: ${error}"
|
||||
},
|
||||
@@ -893,7 +879,6 @@
|
||||
"watchlistUpdateFailed": "No se pudo actualizar la lista de seguimiento",
|
||||
"notInLibrary": "No está en tu biblioteca",
|
||||
"inTheseLibraries": "En estas bibliotecas",
|
||||
"availableOn": "Disponible en ${server}",
|
||||
"checkingLibrary": "Comprobando tu biblioteca...",
|
||||
"emptyTitle": "Aquí no hay nada todavía",
|
||||
"emptyMessage": "Las filas de ${source} aparecerán aquí cuando tengan contenido.",
|
||||
@@ -907,6 +892,8 @@
|
||||
"guide": "Guía",
|
||||
"noChannels": "No hay canales disponibles",
|
||||
"noDvr": "No hay DVR configurado en ningún servidor",
|
||||
"serverUnavailable": "El servidor de TV en directo no está disponible.",
|
||||
"serverNotConnected": "El servidor de TV en directo no está conectado.",
|
||||
"noPrograms": "No hay datos de programación disponibles",
|
||||
"liveStreamFailed": "Falló la transmisión en vivo",
|
||||
"unknownProgram": "Programa desconocido",
|
||||
@@ -942,7 +929,6 @@
|
||||
"scheduledRecordings": "Programadas",
|
||||
"recordingRules": "Reglas de grabación",
|
||||
"noScheduledRecordings": "No hay grabaciones programadas",
|
||||
"noRecordingRules": "Aún no hay reglas de grabación",
|
||||
"manageRecording": "Gestionar grabación",
|
||||
"cancelRecording": "Cancelar grabación",
|
||||
"cancelRecordingTitle": "¿Cancelar esta grabación?",
|
||||
@@ -959,7 +945,6 @@
|
||||
"recordingCancelled": "Grabación cancelada",
|
||||
"recordingRuleDeleted": "Regla de grabación eliminada",
|
||||
"processRecordingRules": "Reevaluar reglas",
|
||||
"loadingRecordings": "Cargando grabaciones...",
|
||||
"recordingInProgress": "Grabando ahora",
|
||||
"recordingsCount": "${count} programadas",
|
||||
"editRule": "Editar regla",
|
||||
@@ -973,7 +958,6 @@
|
||||
"title": "Colecciones",
|
||||
"collection": "Colección",
|
||||
"empty": "La colección está vacía",
|
||||
"unknownLibrarySection": "No se puede eliminar: Sección de biblioteca desconocida",
|
||||
"deleteCollection": "Eliminar Colección",
|
||||
"deleteConfirm": "¿Eliminar \"${title}\"? No se puede deshacer.",
|
||||
"deleted": "Colección eliminada",
|
||||
@@ -1013,6 +997,7 @@
|
||||
"itemAdded": "Añadido a la lista",
|
||||
"itemRemoved": "Eliminado de la lista",
|
||||
"selectPlaylist": "Seleccionar Lista",
|
||||
"searchPlaylists": "Buscar listas...",
|
||||
"errorCreating": "Error al crear la lista",
|
||||
"errorDeleting": "Error al eliminar la lista",
|
||||
"errorLoading": "Error al cargar las listas",
|
||||
@@ -1102,15 +1087,15 @@
|
||||
"participantResumed": "${name} reanudó",
|
||||
"participantSeeked": "${name} avanzó",
|
||||
"participantBuffering": "${name} está cargando",
|
||||
"participantNeedsUpdate": "${name} usa una versión anterior de la app — sincronización no disponible",
|
||||
"resumingWithout": "Reanudando sin ${name}",
|
||||
"waitingForParticipants": "Esperando a que otros carguen...",
|
||||
"waitingForName": "Esperando a ${name}...",
|
||||
"recentRooms": "Salas recientes",
|
||||
"renameRoom": "Renombrar sala",
|
||||
"removeRoom": "Eliminar",
|
||||
"guestSwitchUnavailable": "No se pudo cambiar — servidor no disponible para sincronización",
|
||||
"guestSwitchFailed": "No se pudo cambiar — contenido no encontrado en este servidor",
|
||||
"participantNeedsUpdate": "${name} usa una versión anterior de la app — sincronización no disponible",
|
||||
"resumingWithout": "Reanudando sin ${name}",
|
||||
"waitingForName": "Esperando a ${name}..."
|
||||
"guestSwitchFailed": "No se pudo cambiar — contenido no encontrado en este servidor"
|
||||
},
|
||||
"downloads": {
|
||||
"title": "Descargas",
|
||||
@@ -1155,7 +1140,6 @@
|
||||
"customAmount": "Cantidad personalizada...",
|
||||
"includeSpecials": "Incluir especiales",
|
||||
"howManyEpisodes": "¿Cuántos episodios?",
|
||||
"itemsQueued": "${count} elementos en cola de descarga",
|
||||
"keepSynced": "Mantener sincronizado",
|
||||
"downloadOnce": "Descargar una vez",
|
||||
"keepNUnwatched": "Mantener ${count} sin ver",
|
||||
@@ -1204,7 +1188,6 @@
|
||||
"unknownDevice": "Dispositivo desconocido",
|
||||
"session": {
|
||||
"startingServer": "Iniciando servidor remoto...",
|
||||
"failedToCreate": "Error al iniciar el servidor remoto:",
|
||||
"hostAddress": "Dirección del host",
|
||||
"connected": "Conectado",
|
||||
"serverRunning": "Servidor remoto activo",
|
||||
@@ -1265,6 +1248,8 @@
|
||||
"errors": {
|
||||
"noNetworkInterface": "No se encontró ninguna interfaz de red",
|
||||
"authenticationFailed": "Autenticación fallida",
|
||||
"serverStartFailed": "No se pudo iniciar el servidor remoto: ${error}",
|
||||
"commandFailed": "No se pudo enviar el comando remoto: ${error}",
|
||||
"joinTimedOut": "Se agotó el tiempo al unirse a la sesión",
|
||||
"failedToConnectAnyAddress": "No se pudo conectar a ninguna dirección",
|
||||
"connectionLostAfterAttempts": "Conexión perdida tras ${attempts} intentos",
|
||||
@@ -1538,7 +1523,6 @@
|
||||
"quickConnectFailed": "Quick Connect ha fallado: ${error}",
|
||||
"addPlexTitle": "Iniciar sesión con Plex",
|
||||
"pinExpired": "El PIN caducó antes de iniciar sesión. Inténtalo de nuevo.",
|
||||
"duplicatePlexAccount": "Ya iniciaste sesión en Plex. Cierra sesión para cambiar de cuenta.",
|
||||
"failedToRegisterAccount": "No se pudo registrar la cuenta: ${error}",
|
||||
"enterJellyfinUrlError": "Introduce la URL de tu servidor Jellyfin",
|
||||
"addConnectionTitle": "Añadir conexión",
|
||||
|
||||
+35
-51
@@ -3,7 +3,6 @@
|
||||
"title": "Plezy"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "Se connecter",
|
||||
"signInWithPlex": "S'inscrire avec Plex",
|
||||
"showQRCode": "Afficher le QR Code",
|
||||
"authenticate": "S'authentifier",
|
||||
@@ -56,10 +55,8 @@
|
||||
"episodeNumberTitle": "Épisode ${number} - ${title}",
|
||||
"chapterNumber": "Chapitre ${number}",
|
||||
"reconnect": "Reconnecter",
|
||||
"exit": "Quitter",
|
||||
"viewAll": "Tout afficher",
|
||||
"checkingNetwork": "Vérification du réseau...",
|
||||
"refreshingServers": "Actualisation des serveurs...",
|
||||
"loadingServers": "Chargement des serveurs...",
|
||||
"connectingToServers": "Connexion aux serveurs...",
|
||||
"startingOfflineMode": "Démarrage en mode hors-ligne...",
|
||||
@@ -139,6 +136,12 @@
|
||||
"tvFullCardLayoutDescription": "Utiliser des cartes TV avec image seule et noms des acteurs superposés",
|
||||
"focusGlow": "Halo de sélection",
|
||||
"focusGlowDescription": "Afficher un léger halo autour de la carte sélectionnée",
|
||||
"visualEffects": "Effets visuels",
|
||||
"visualEffectsAuto": "Automatique",
|
||||
"visualEffectsAutoDescription": "Réduire automatiquement les effets sur les appareils peu puissants",
|
||||
"visualEffectsFull": "Complets",
|
||||
"visualEffectsReduced": "Réduits",
|
||||
"visualEffectsReducedDescription": "Moins d’animations et d’illustrations de plus faible résolution",
|
||||
"hideSpoilers": "Masquer les spoilers des épisodes non vus",
|
||||
"hideSpoilersDescription": "Flouter les miniatures et descriptions des épisodes non vus",
|
||||
"playerBackend": "Moteur de lecture",
|
||||
@@ -151,7 +154,7 @@
|
||||
"bufferSizeAuto": "Auto (Recommandé)",
|
||||
"bufferSizeWarning": "${heap}MB de mémoire disponible. Un tampon de ${size}MB peut affecter la lecture.",
|
||||
"defaultQualityTitle": "Qualité par défaut",
|
||||
"defaultQualityDescription": "Utilisé au démarrage de la lecture. Les valeurs plus basses réduisent la bande passante.",
|
||||
"musicQualityTitle": "Qualité de la musique",
|
||||
"subtitleStyling": "Stylisation des sous-titres",
|
||||
"subtitleStylingDescription": "Personnaliser l'apparence des sous-titres",
|
||||
"smallSkipDuration": "Durée du petit saut",
|
||||
@@ -245,10 +248,9 @@
|
||||
"maxVolumePercent": "${percent}%",
|
||||
"discordRichPresence": "Discord Rich Presence",
|
||||
"discordRichPresenceDescription": "Montrez ce que vous regardez sur Discord",
|
||||
"trakt": "Trakt",
|
||||
"traktDescription": "Synchroniser l'historique de visionnage avec Trakt",
|
||||
"services": "Services",
|
||||
"servicesDescription": "Connectez Trakt, MyAnimeList, Seerr et plus",
|
||||
"manageLibrariesDescription": "Réorganiser et masquer les bibliothèques",
|
||||
"companionRemoteServer": "Serveur de télécommande",
|
||||
"companionRemoteServerDescription": "Autoriser les appareils mobiles de votre réseau à contrôler cette application",
|
||||
"autoPip": "Image dans l'image automatique",
|
||||
@@ -311,7 +313,6 @@
|
||||
"showNavBarLabels": "Afficher les libellés de la barre de navigation",
|
||||
"showNavBarLabelsDescription": "Afficher les libellés sous les icônes de la barre de navigation",
|
||||
"startupSection": "Section de démarrage",
|
||||
"startupSectionDescription": "Choisissez la section que Plezy ouvre au démarrage",
|
||||
"liveTvDefaultFavorites": "Chaînes favorites par défaut",
|
||||
"liveTvDefaultFavoritesDescription": "Afficher uniquement les chaînes favorites à l'ouverture de la TV en direct",
|
||||
"display": "Affichage",
|
||||
@@ -322,14 +323,7 @@
|
||||
"player": "Lecteur",
|
||||
"subtitlesAndConfig": "Sous-titres et configuration",
|
||||
"seekAndTiming": "Recherche et minutage",
|
||||
"behavior": "Comportement",
|
||||
"manageLibrariesDescription": "Réorganiser et masquer les bibliothèques",
|
||||
"visualEffects": "Effets visuels",
|
||||
"visualEffectsAuto": "Automatique",
|
||||
"visualEffectsAutoDescription": "Réduire automatiquement les effets sur les appareils peu puissants",
|
||||
"visualEffectsFull": "Complets",
|
||||
"visualEffectsReduced": "Réduits",
|
||||
"visualEffectsReducedDescription": "Moins d’animations et d’illustrations de plus faible résolution"
|
||||
"behavior": "Comportement"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Rechercher des films, des séries, de la musique...",
|
||||
@@ -418,14 +412,11 @@
|
||||
"rateSheet": {
|
||||
"title": "Noter",
|
||||
"server": "Serveur",
|
||||
"starValue": "${rating} / 5",
|
||||
"scoreValue": "${score} / 10",
|
||||
"setScore": "Définir une note",
|
||||
"favorite": "Favori",
|
||||
"favorited": "Ajouté aux favoris",
|
||||
"saved": "Enregistré",
|
||||
"notAvailable": "Aucune correspondance trouvée",
|
||||
"noConnectedServices": "Connectez un service dans les Réglages pour noter ici.",
|
||||
"favorite": "Favori",
|
||||
"favorited": "Ajouté aux favoris"
|
||||
"noConnectedServices": "Connectez un service dans les Réglages pour noter ici."
|
||||
},
|
||||
"accessibility": {
|
||||
"mediaCardMovie": "${title}, film",
|
||||
@@ -435,7 +426,15 @@
|
||||
"mediaCardWatched": "visionné",
|
||||
"mediaCardPartiallyWatched": "${percent} pourcentage visionné",
|
||||
"mediaCardUnwatched": "non visionné",
|
||||
"tapToPlay": "Appuyez pour lire"
|
||||
"tapToPlay": "Appuyez pour lire",
|
||||
"decrease": "Diminuer",
|
||||
"increase": "Augmenter",
|
||||
"decreaseValue": "Diminuer ${label}",
|
||||
"increaseValue": "Augmenter ${label}",
|
||||
"hue": "Teinte",
|
||||
"saturation": "Saturation",
|
||||
"brightness": "Luminosité",
|
||||
"hexColor": "Couleur hexadécimale"
|
||||
},
|
||||
"tooltips": {
|
||||
"shufflePlay": "Lecture aléatoire",
|
||||
@@ -481,13 +480,11 @@
|
||||
"settingsButton": "Paramètres de lecture",
|
||||
"tracksButton": "Audio et sous-titres",
|
||||
"chaptersButton": "Chapitres",
|
||||
"versionsButton": "Versions vidéo",
|
||||
"versionQualityButton": "Version et qualité",
|
||||
"versionColumnHeader": "Version",
|
||||
"qualityColumnHeader": "Qualité",
|
||||
"qualityOriginal": "Originale",
|
||||
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
||||
"qualityBandwidthEstimate": "~${bitrate} Mbps",
|
||||
"transcodeUnavailableFallback": "Transcodage indisponible — lecture en qualité originale",
|
||||
"pipButton": "Mode PiP (Picture-in-Picture)",
|
||||
"aspectRatioButton": "Format d'image",
|
||||
@@ -530,12 +527,7 @@
|
||||
"subtitleDownloadFailed": "Échec du téléchargement du sous-titre",
|
||||
"searchLanguages": "Rechercher des langues..."
|
||||
},
|
||||
"userStatus": {
|
||||
"admin": "Admin",
|
||||
"restricted": "Restreint",
|
||||
"protected": "Protégé",
|
||||
"current": "ACTUEL"
|
||||
},
|
||||
"userStatus": {},
|
||||
"messages": {
|
||||
"markedAsWatched": "Marqué comme vu",
|
||||
"markedAsUnwatched": "Marqué comme non vu",
|
||||
@@ -676,8 +668,7 @@
|
||||
"pinProtectionOptional": "Protection par PIN (optionnelle)",
|
||||
"pinExplain": "PIN à 4 chiffres requis pour changer de profil.",
|
||||
"continueButton": "Continuer",
|
||||
"pinsDontMatch": "Les PIN ne correspondent pas",
|
||||
"initializeServicesFailed": "Impossible d’initialiser les services de profil"
|
||||
"pinsDontMatch": "Les PIN ne correspondent pas"
|
||||
},
|
||||
"connections": {
|
||||
"sectionTitle": "Connexions",
|
||||
@@ -692,7 +683,6 @@
|
||||
},
|
||||
"discover": {
|
||||
"title": "Découvrez",
|
||||
"switchProfile": "Changer de profil",
|
||||
"noContentAvailable": "Aucun contenu disponible",
|
||||
"addMediaToLibraries": "Ajoutez des médias à votre bibliothèque",
|
||||
"continueWatching": "Continuer à regarder",
|
||||
@@ -721,8 +711,6 @@
|
||||
"connectionFailed": "Impossible de se connecter au serveur multimédia",
|
||||
"failedToLoad": "Échec du chargement ${context}: ${error}",
|
||||
"noClientAvailable": "Aucun client disponible",
|
||||
"authenticationFailed": "Échec de l'authentification: ${error}",
|
||||
"couldNotLaunchUrl": "Impossible de lancer l'URL d'authentification",
|
||||
"pleaseEnterToken": "Veuillez saisir un token",
|
||||
"invalidToken": "Token invalide",
|
||||
"failedToVerifyToken": "Échec de la vérification du token: ${error}",
|
||||
@@ -749,6 +737,8 @@
|
||||
"allLibrariesHidden": "Toutes les bibliothèques sont masquées",
|
||||
"hiddenLibrariesCount": "Bibliothèques masquées (${count})",
|
||||
"thisLibraryIsEmpty": "Cette bibliothèque est vide",
|
||||
"noItemsMatchFilters": "Aucun élément ne correspond aux filtres actifs",
|
||||
"resetFilters": "Réinitialiser les filtres",
|
||||
"all": "Tout",
|
||||
"clearAll": "Tout effacer",
|
||||
"scanLibraryConfirm": "Êtes-vous sûr de vouloir lancer le scan de \"${title}\"?",
|
||||
@@ -804,7 +794,6 @@
|
||||
"communityRating": "Note communautaire",
|
||||
"criticRating": "Note critique",
|
||||
"userRating": "Note utilisateur",
|
||||
"lastPlayed": "Dernière lecture",
|
||||
"datePlayed": "Date de lecture",
|
||||
"playCount": "Lectures",
|
||||
"productionYear": "Année de production",
|
||||
@@ -818,9 +807,7 @@
|
||||
"dateShared": "Date de partage",
|
||||
"latestEpisodeAirDate": "Dernière date de diffusion",
|
||||
"lastEpisodeDateAdded": "Date d'ajout du dernier épisode"
|
||||
},
|
||||
"noItemsMatchFilters": "Aucun élément ne correspond aux filtres actifs",
|
||||
"resetFilters": "Réinitialiser les filtres"
|
||||
}
|
||||
},
|
||||
"about": {
|
||||
"title": "À propos",
|
||||
@@ -830,7 +817,6 @@
|
||||
"viewLicensesDescription": "Afficher les licences des bibliothèques tierces"
|
||||
},
|
||||
"serverSelection": {
|
||||
"allServerConnectionsFailed": "Connexion impossible à tous les serveurs. Vérifiez votre réseau.",
|
||||
"noServersFoundForAccount": "Aucun serveur trouvé pour ${username} (${email})",
|
||||
"failedToLoadServers": "Échec du chargement des serveurs: ${error}"
|
||||
},
|
||||
@@ -893,7 +879,6 @@
|
||||
"watchlistUpdateFailed": "Impossible de mettre à jour la liste de suivi",
|
||||
"notInLibrary": "Absent de votre bibliothèque",
|
||||
"inTheseLibraries": "Dans ces bibliothèques",
|
||||
"availableOn": "Disponible sur ${server}",
|
||||
"checkingLibrary": "Vérification de votre bibliothèque...",
|
||||
"emptyTitle": "Rien ici pour l'instant",
|
||||
"emptyMessage": "Les rangées de ${source} apparaîtront ici une fois qu'elles auront du contenu.",
|
||||
@@ -907,6 +892,8 @@
|
||||
"guide": "Guide",
|
||||
"noChannels": "Aucune chaîne disponible",
|
||||
"noDvr": "Aucun DVR configuré sur les serveurs",
|
||||
"serverUnavailable": "Le serveur de TV en direct n’est pas disponible.",
|
||||
"serverNotConnected": "Le serveur de TV en direct n’est pas connecté.",
|
||||
"noPrograms": "Aucune donnée de programme disponible",
|
||||
"liveStreamFailed": "Échec du direct",
|
||||
"unknownProgram": "Programme inconnu",
|
||||
@@ -942,7 +929,6 @@
|
||||
"scheduledRecordings": "Programmés",
|
||||
"recordingRules": "Règles d'enregistrement",
|
||||
"noScheduledRecordings": "Aucun enregistrement programmé",
|
||||
"noRecordingRules": "Aucune règle d'enregistrement",
|
||||
"manageRecording": "Gérer l'enregistrement",
|
||||
"cancelRecording": "Annuler l'enregistrement",
|
||||
"cancelRecordingTitle": "Annuler cet enregistrement ?",
|
||||
@@ -959,7 +945,6 @@
|
||||
"recordingCancelled": "Enregistrement annulé",
|
||||
"recordingRuleDeleted": "Règle d'enregistrement supprimée",
|
||||
"processRecordingRules": "Réévaluer les règles",
|
||||
"loadingRecordings": "Chargement des enregistrements...",
|
||||
"recordingInProgress": "Enregistrement en cours",
|
||||
"recordingsCount": "${count} programmés",
|
||||
"editRule": "Modifier la règle",
|
||||
@@ -973,7 +958,6 @@
|
||||
"title": "Collections",
|
||||
"collection": "Collection",
|
||||
"empty": "La collection est vide",
|
||||
"unknownLibrarySection": "Impossible de supprimer : section de bibliothèque inconnue",
|
||||
"deleteCollection": "Supprimer la collection",
|
||||
"deleteConfirm": "Supprimer \"${title}\" ? Action irréversible.",
|
||||
"deleted": "Collection supprimée",
|
||||
@@ -1013,6 +997,7 @@
|
||||
"itemAdded": "Ajouté à la playlist",
|
||||
"itemRemoved": "Retiré de la playlist",
|
||||
"selectPlaylist": "Sélectionner une playlist",
|
||||
"searchPlaylists": "Rechercher des playlists...",
|
||||
"errorCreating": "Échec de la création de playlist",
|
||||
"errorDeleting": "Échec de suppression de playlist",
|
||||
"errorLoading": "Échec de chargement de playlists",
|
||||
@@ -1102,15 +1087,15 @@
|
||||
"participantResumed": "${name} a repris",
|
||||
"participantSeeked": "${name} a avancé",
|
||||
"participantBuffering": "${name} met en mémoire tampon",
|
||||
"participantNeedsUpdate": "${name} utilise une ancienne version de l’app — synchronisation indisponible",
|
||||
"resumingWithout": "Reprise sans ${name}",
|
||||
"waitingForParticipants": "En attente du chargement des autres...",
|
||||
"waitingForName": "En attente de ${name}...",
|
||||
"recentRooms": "Salons récents",
|
||||
"renameRoom": "Renommer le salon",
|
||||
"removeRoom": "Supprimer",
|
||||
"guestSwitchUnavailable": "Impossible de changer — serveur indisponible pour la synchronisation",
|
||||
"guestSwitchFailed": "Impossible de changer — contenu introuvable sur ce serveur",
|
||||
"participantNeedsUpdate": "${name} utilise une ancienne version de l’app — synchronisation indisponible",
|
||||
"resumingWithout": "Reprise sans ${name}",
|
||||
"waitingForName": "En attente de ${name}..."
|
||||
"guestSwitchFailed": "Impossible de changer — contenu introuvable sur ce serveur"
|
||||
},
|
||||
"downloads": {
|
||||
"title": "Téléchargements",
|
||||
@@ -1155,7 +1140,6 @@
|
||||
"customAmount": "Quantité personnalisée...",
|
||||
"includeSpecials": "Inclure les spéciaux",
|
||||
"howManyEpisodes": "Combien d'épisodes ?",
|
||||
"itemsQueued": "${count} éléments mis en file d'attente",
|
||||
"keepSynced": "Garder synchronisé",
|
||||
"downloadOnce": "Télécharger une fois",
|
||||
"keepNUnwatched": "Garder ${count} non vus",
|
||||
@@ -1204,7 +1188,6 @@
|
||||
"unknownDevice": "Appareil inconnu",
|
||||
"session": {
|
||||
"startingServer": "Démarrage du serveur distant...",
|
||||
"failedToCreate": "Échec du démarrage du serveur distant :",
|
||||
"hostAddress": "Adresse de l'hôte",
|
||||
"connected": "Connecté",
|
||||
"serverRunning": "Serveur distant actif",
|
||||
@@ -1265,6 +1248,8 @@
|
||||
"errors": {
|
||||
"noNetworkInterface": "Aucune interface réseau trouvée",
|
||||
"authenticationFailed": "Échec de l’authentification",
|
||||
"serverStartFailed": "Impossible de démarrer le serveur distant : ${error}",
|
||||
"commandFailed": "Impossible d’envoyer la commande à distance : ${error}",
|
||||
"joinTimedOut": "Délai dépassé lors de la connexion à la session",
|
||||
"failedToConnectAnyAddress": "Impossible de se connecter à une adresse",
|
||||
"connectionLostAfterAttempts": "Connexion perdue après ${attempts} tentatives",
|
||||
@@ -1538,7 +1523,6 @@
|
||||
"quickConnectFailed": "Échec de Quick Connect : ${error}",
|
||||
"addPlexTitle": "Se connecter avec Plex",
|
||||
"pinExpired": "Le PIN a expiré avant la connexion. Veuillez réessayer.",
|
||||
"duplicatePlexAccount": "Déjà connecté à Plex. Déconnectez-vous pour changer de compte.",
|
||||
"failedToRegisterAccount": "Échec de l'enregistrement du compte : ${error}",
|
||||
"enterJellyfinUrlError": "Saisissez l'URL de votre serveur Jellyfin",
|
||||
"addConnectionTitle": "Ajouter une connexion",
|
||||
|
||||
+40
-56
@@ -3,7 +3,6 @@
|
||||
"title": "Plezy"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "Accedi",
|
||||
"signInWithPlex": "Accedi con Plex",
|
||||
"showQRCode": "Mostra QR Code",
|
||||
"authenticate": "Autenticazione",
|
||||
@@ -56,10 +55,8 @@
|
||||
"episodeNumberTitle": "Episodio ${number} - ${title}",
|
||||
"chapterNumber": "Capitolo ${number}",
|
||||
"reconnect": "Riconnetti",
|
||||
"exit": "Esci",
|
||||
"viewAll": "Mostra tutto",
|
||||
"checkingNetwork": "Verifica rete...",
|
||||
"refreshingServers": "Aggiornamento server...",
|
||||
"loadingServers": "Caricamento server...",
|
||||
"connectingToServers": "Connessione ai server...",
|
||||
"startingOfflineMode": "Avvio modalità offline...",
|
||||
@@ -139,6 +136,12 @@
|
||||
"tvFullCardLayoutDescription": "Usa schede TV solo immagine con i nomi degli attori sovrapposti",
|
||||
"focusGlow": "Bagliore di selezione",
|
||||
"focusGlowDescription": "Mostra un leggero bagliore attorno alla scheda selezionata",
|
||||
"visualEffects": "Effetti visivi",
|
||||
"visualEffectsAuto": "Automatico",
|
||||
"visualEffectsAutoDescription": "Riduci automaticamente gli effetti sui dispositivi a basso consumo",
|
||||
"visualEffectsFull": "Completi",
|
||||
"visualEffectsReduced": "Ridotti",
|
||||
"visualEffectsReducedDescription": "Meno animazioni e immagini a risoluzione inferiore",
|
||||
"hideSpoilers": "Nascondi spoiler per episodi non visti",
|
||||
"hideSpoilersDescription": "Sfoca miniature e descrizioni degli episodi non visti",
|
||||
"playerBackend": "Motore di riproduzione",
|
||||
@@ -151,7 +154,7 @@
|
||||
"bufferSizeAuto": "Auto (Consigliato)",
|
||||
"bufferSizeWarning": "${heap}MB di memoria disponibile. Un buffer di ${size}MB può influire sulla riproduzione.",
|
||||
"defaultQualityTitle": "Qualità predefinita",
|
||||
"defaultQualityDescription": "Utilizzato all'avvio della riproduzione. Valori più bassi riducono la larghezza di banda.",
|
||||
"musicQualityTitle": "Qualità musicale",
|
||||
"subtitleStyling": "Stile sottotitoli",
|
||||
"subtitleStylingDescription": "Personalizza l'aspetto dei sottotitoli",
|
||||
"smallSkipDuration": "Durata skip breve",
|
||||
@@ -245,10 +248,9 @@
|
||||
"maxVolumePercent": "${percent}%",
|
||||
"discordRichPresence": "Discord Rich Presence",
|
||||
"discordRichPresenceDescription": "Mostra su Discord cosa stai guardando",
|
||||
"trakt": "Trakt",
|
||||
"traktDescription": "Sincronizza la cronologia di visione con Trakt",
|
||||
"services": "Servizi",
|
||||
"servicesDescription": "Connetti Trakt, MyAnimeList, Seerr e altro",
|
||||
"manageLibrariesDescription": "Riordina e nascondi le librerie",
|
||||
"companionRemoteServer": "Server telecomando",
|
||||
"companionRemoteServerDescription": "Consenti ai dispositivi mobili nella tua rete di controllare questa app",
|
||||
"autoPip": "Picture-in-Picture automatico",
|
||||
@@ -311,7 +313,6 @@
|
||||
"showNavBarLabels": "Mostra etichette barra di navigazione",
|
||||
"showNavBarLabelsDescription": "Mostra le etichette sotto le icone della barra di navigazione",
|
||||
"startupSection": "Sezione di avvio",
|
||||
"startupSectionDescription": "Scegli quale sezione apre Plezy all'avvio",
|
||||
"liveTvDefaultFavorites": "Canali preferiti predefiniti",
|
||||
"liveTvDefaultFavoritesDescription": "Mostra solo i canali preferiti all'apertura della TV dal vivo",
|
||||
"display": "Schermo",
|
||||
@@ -322,14 +323,7 @@
|
||||
"player": "Lettore",
|
||||
"subtitlesAndConfig": "Sottotitoli e configurazione",
|
||||
"seekAndTiming": "Ricerca e tempistica",
|
||||
"behavior": "Comportamento",
|
||||
"manageLibrariesDescription": "Riordina e nascondi le librerie",
|
||||
"visualEffects": "Effetti visivi",
|
||||
"visualEffectsAuto": "Automatico",
|
||||
"visualEffectsAutoDescription": "Riduci automaticamente gli effetti sui dispositivi a basso consumo",
|
||||
"visualEffectsFull": "Completi",
|
||||
"visualEffectsReduced": "Ridotti",
|
||||
"visualEffectsReducedDescription": "Meno animazioni e immagini a risoluzione inferiore"
|
||||
"behavior": "Comportamento"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Cerca film. spettacoli, musica...",
|
||||
@@ -418,14 +412,11 @@
|
||||
"rateSheet": {
|
||||
"title": "Valuta",
|
||||
"server": "Server",
|
||||
"starValue": "${rating} / 5",
|
||||
"scoreValue": "${score} / 10",
|
||||
"setScore": "Imposta un punteggio",
|
||||
"favorite": "Preferito",
|
||||
"favorited": "Aggiunto ai preferiti",
|
||||
"saved": "Salvato",
|
||||
"notAvailable": "Nessuna corrispondenza trovata",
|
||||
"noConnectedServices": "Connetti un servizio nelle Impostazioni per valutare lì.",
|
||||
"favorite": "Preferito",
|
||||
"favorited": "Aggiunto ai preferiti"
|
||||
"noConnectedServices": "Connetti un servizio nelle Impostazioni per valutare lì."
|
||||
},
|
||||
"accessibility": {
|
||||
"mediaCardMovie": "${title}, film",
|
||||
@@ -435,7 +426,15 @@
|
||||
"mediaCardWatched": "visto",
|
||||
"mediaCardPartiallyWatched": "${percent} percento visto",
|
||||
"mediaCardUnwatched": "non visto",
|
||||
"tapToPlay": "Tocca per riprodurre"
|
||||
"tapToPlay": "Tocca per riprodurre",
|
||||
"decrease": "Diminuisci",
|
||||
"increase": "Aumenta",
|
||||
"decreaseValue": "Diminuisci ${label}",
|
||||
"increaseValue": "Aumenta ${label}",
|
||||
"hue": "Tonalità",
|
||||
"saturation": "Saturazione",
|
||||
"brightness": "Luminosità",
|
||||
"hexColor": "Colore esadecimale"
|
||||
},
|
||||
"tooltips": {
|
||||
"shufflePlay": "Riproduzione casuale",
|
||||
@@ -481,13 +480,11 @@
|
||||
"settingsButton": "Impostazioni di riproduzione",
|
||||
"tracksButton": "Audio e sottotitoli",
|
||||
"chaptersButton": "Capitoli",
|
||||
"versionsButton": "Versioni video",
|
||||
"versionQualityButton": "Versione e qualità",
|
||||
"versionColumnHeader": "Versione",
|
||||
"qualityColumnHeader": "Qualità",
|
||||
"qualityOriginal": "Originale",
|
||||
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
||||
"qualityBandwidthEstimate": "~${bitrate} Mbps",
|
||||
"transcodeUnavailableFallback": "Transcodifica non disponibile — riproduzione in qualità originale",
|
||||
"pipButton": "Modalità Picture-in-Picture",
|
||||
"aspectRatioButton": "Proporzioni",
|
||||
@@ -530,12 +527,7 @@
|
||||
"subtitleDownloadFailed": "Impossibile scaricare il sottotitolo",
|
||||
"searchLanguages": "Cerca lingue..."
|
||||
},
|
||||
"userStatus": {
|
||||
"admin": "Admin",
|
||||
"restricted": "Limitato",
|
||||
"protected": "Protetto",
|
||||
"current": "ATTUALE"
|
||||
},
|
||||
"userStatus": {},
|
||||
"messages": {
|
||||
"markedAsWatched": "Segna come visto",
|
||||
"markedAsUnwatched": "Segna come non visto",
|
||||
@@ -676,8 +668,7 @@
|
||||
"pinProtectionOptional": "Protezione PIN (opzionale)",
|
||||
"pinExplain": "PIN a 4 cifre richiesto per cambiare profilo.",
|
||||
"continueButton": "Continua",
|
||||
"pinsDontMatch": "I PIN non corrispondono",
|
||||
"initializeServicesFailed": "Impossibile inizializzare i servizi profilo"
|
||||
"pinsDontMatch": "I PIN non corrispondono"
|
||||
},
|
||||
"connections": {
|
||||
"sectionTitle": "Connessioni",
|
||||
@@ -692,7 +683,6 @@
|
||||
},
|
||||
"discover": {
|
||||
"title": "Esplora",
|
||||
"switchProfile": "Cambia profilo",
|
||||
"noContentAvailable": "Nessun contenuto disponibile",
|
||||
"addMediaToLibraries": "Aggiungi alcuni file multimediali alle tue librerie",
|
||||
"continueWatching": "Continua a guardare",
|
||||
@@ -721,8 +711,6 @@
|
||||
"connectionFailed": "Impossibile connettersi al server multimediale",
|
||||
"failedToLoad": "Impossibile caricare ${context}: ${error}",
|
||||
"noClientAvailable": "Nessun client disponibile",
|
||||
"authenticationFailed": "Autenticazione fallita: ${error}",
|
||||
"couldNotLaunchUrl": "Impossibile avviare URL di autenticazione",
|
||||
"pleaseEnterToken": "Inserisci token",
|
||||
"invalidToken": "Token non valido",
|
||||
"failedToVerifyToken": "Verifica token fallita: ${error}",
|
||||
@@ -749,6 +737,8 @@
|
||||
"allLibrariesHidden": "Tutte le librerie sono nascoste",
|
||||
"hiddenLibrariesCount": "Librerie nascoste (${count})",
|
||||
"thisLibraryIsEmpty": "Questa libreria è vuota",
|
||||
"noItemsMatchFilters": "Nessun elemento corrisponde ai filtri attivi",
|
||||
"resetFilters": "Reimposta filtri",
|
||||
"all": "Tutto",
|
||||
"clearAll": "Cancella tutto",
|
||||
"scanLibraryConfirm": "Sei sicuro di voler scansionare \"${title}\"?",
|
||||
@@ -804,7 +794,6 @@
|
||||
"communityRating": "Valutazione della community",
|
||||
"criticRating": "Valutazione critica",
|
||||
"userRating": "Valutazione utente",
|
||||
"lastPlayed": "Ultima riproduzione",
|
||||
"datePlayed": "Data di riproduzione",
|
||||
"playCount": "Riproduzioni",
|
||||
"productionYear": "Anno di produzione",
|
||||
@@ -818,9 +807,7 @@
|
||||
"dateShared": "Data di condivisione",
|
||||
"latestEpisodeAirDate": "Data ultima messa in onda",
|
||||
"lastEpisodeDateAdded": "Data aggiunta ultimo episodio"
|
||||
},
|
||||
"noItemsMatchFilters": "Nessun elemento corrisponde ai filtri attivi",
|
||||
"resetFilters": "Reimposta filtri"
|
||||
}
|
||||
},
|
||||
"about": {
|
||||
"title": "Informazioni",
|
||||
@@ -830,7 +817,6 @@
|
||||
"viewLicensesDescription": "Visualizza le licenze delle librerie di terze parti"
|
||||
},
|
||||
"serverSelection": {
|
||||
"allServerConnectionsFailed": "Impossibile connettersi ai server. Controlla la rete.",
|
||||
"noServersFoundForAccount": "Nessun server trovato per ${username} (${email})",
|
||||
"failedToLoadServers": "Impossibile caricare i server: ${error}"
|
||||
},
|
||||
@@ -876,10 +862,6 @@
|
||||
"upcomingMovies": "Film in arrivo",
|
||||
"upcomingShows": "Serie TV in arrivo"
|
||||
},
|
||||
"searchHint": "Cerca su ${source}",
|
||||
"searchEmpty": "Nessun risultato per \"${query}\"",
|
||||
"searchPrompt": "Cerca film e serie TV su ${source}.",
|
||||
"searchFailed": "Ricerca fallita. Controlla la connessione e riprova.",
|
||||
"status": {
|
||||
"airing": "In onda",
|
||||
"ended": "Conclusa",
|
||||
@@ -897,16 +879,21 @@
|
||||
"watchlistUpdateFailed": "Impossibile aggiornare la Watchlist",
|
||||
"notInLibrary": "Non è nella tua libreria",
|
||||
"inTheseLibraries": "In queste librerie",
|
||||
"availableOn": "Disponibile su ${server}",
|
||||
"checkingLibrary": "Controllo della tua libreria...",
|
||||
"emptyTitle": "Ancora niente qui",
|
||||
"emptyMessage": "Le righe da ${source} appariranno qui una volta che avranno dei contenuti."
|
||||
"emptyMessage": "Le righe da ${source} appariranno qui una volta che avranno dei contenuti.",
|
||||
"searchHint": "Cerca su ${source}",
|
||||
"searchEmpty": "Nessun risultato per \"${query}\"",
|
||||
"searchPrompt": "Cerca film e serie TV su ${source}.",
|
||||
"searchFailed": "Ricerca fallita. Controlla la connessione e riprova."
|
||||
},
|
||||
"liveTv": {
|
||||
"title": "TV in diretta",
|
||||
"guide": "Guida",
|
||||
"noChannels": "Nessun canale disponibile",
|
||||
"noDvr": "Nessun DVR configurato su nessun server",
|
||||
"serverUnavailable": "Il server TV in diretta non è disponibile.",
|
||||
"serverNotConnected": "Il server TV in diretta non è connesso.",
|
||||
"noPrograms": "Nessun dato di programma disponibile",
|
||||
"liveStreamFailed": "Streaming live non riuscito",
|
||||
"unknownProgram": "Programma sconosciuto",
|
||||
@@ -942,7 +929,6 @@
|
||||
"scheduledRecordings": "Programmate",
|
||||
"recordingRules": "Regole di registrazione",
|
||||
"noScheduledRecordings": "Nessuna registrazione programmata",
|
||||
"noRecordingRules": "Nessuna regola di registrazione",
|
||||
"manageRecording": "Gestisci registrazione",
|
||||
"cancelRecording": "Annulla registrazione",
|
||||
"cancelRecordingTitle": "Annullare questa registrazione?",
|
||||
@@ -959,7 +945,6 @@
|
||||
"recordingCancelled": "Registrazione annullata",
|
||||
"recordingRuleDeleted": "Regola di registrazione eliminata",
|
||||
"processRecordingRules": "Rivaluta regole",
|
||||
"loadingRecordings": "Caricamento registrazioni...",
|
||||
"recordingInProgress": "Registrazione in corso",
|
||||
"recordingsCount": "${count} programmate",
|
||||
"editRule": "Modifica regola",
|
||||
@@ -973,7 +958,6 @@
|
||||
"title": "Raccolte",
|
||||
"collection": "Raccolta",
|
||||
"empty": "La raccolta è vuota",
|
||||
"unknownLibrarySection": "Impossibile eliminare: sezione libreria sconosciuta",
|
||||
"deleteCollection": "Elimina raccolta",
|
||||
"deleteConfirm": "Eliminare \"${title}\"? Non si può annullare.",
|
||||
"deleted": "Raccolta eliminata",
|
||||
@@ -1013,6 +997,7 @@
|
||||
"itemAdded": "Aggiunto alla playlist",
|
||||
"itemRemoved": "Rimosso dalla playlist",
|
||||
"selectPlaylist": "Seleziona playlist",
|
||||
"searchPlaylists": "Cerca playlist...",
|
||||
"errorCreating": "Errore durante la creazione della playlist",
|
||||
"errorDeleting": "Errore durante l'eliminazione della playlist",
|
||||
"errorLoading": "Errore durante il caricamento delle playlist",
|
||||
@@ -1102,15 +1087,15 @@
|
||||
"participantResumed": "${name} ha ripreso",
|
||||
"participantSeeked": "${name} ha cercato",
|
||||
"participantBuffering": "${name} sta caricando",
|
||||
"participantNeedsUpdate": "${name} usa una versione precedente dell'app — sincronizzazione non disponibile",
|
||||
"resumingWithout": "Ripresa senza ${name}",
|
||||
"waitingForParticipants": "In attesa che gli altri carichino...",
|
||||
"waitingForName": "In attesa di ${name}...",
|
||||
"recentRooms": "Stanze recenti",
|
||||
"renameRoom": "Rinomina stanza",
|
||||
"removeRoom": "Rimuovi",
|
||||
"guestSwitchUnavailable": "Impossibile cambiare — server non disponibile per la sincronizzazione",
|
||||
"guestSwitchFailed": "Impossibile cambiare — contenuto non trovato su questo server",
|
||||
"participantNeedsUpdate": "${name} usa una versione precedente dell'app — sincronizzazione non disponibile",
|
||||
"resumingWithout": "Ripresa senza ${name}",
|
||||
"waitingForName": "In attesa di ${name}..."
|
||||
"guestSwitchFailed": "Impossibile cambiare — contenuto non trovato su questo server"
|
||||
},
|
||||
"downloads": {
|
||||
"title": "Download",
|
||||
@@ -1155,7 +1140,6 @@
|
||||
"customAmount": "Quantità personalizzata...",
|
||||
"includeSpecials": "Includi gli speciali",
|
||||
"howManyEpisodes": "Quanti episodi?",
|
||||
"itemsQueued": "${count} elementi in coda per il download",
|
||||
"keepSynced": "Mantieni sincronizzato",
|
||||
"downloadOnce": "Scarica una volta",
|
||||
"keepNUnwatched": "Mantieni ${count} non visti",
|
||||
@@ -1204,7 +1188,6 @@
|
||||
"unknownDevice": "Dispositivo sconosciuto",
|
||||
"session": {
|
||||
"startingServer": "Avvio del server remoto...",
|
||||
"failedToCreate": "Impossibile avviare il server remoto:",
|
||||
"hostAddress": "Indirizzo host",
|
||||
"connected": "Connesso",
|
||||
"serverRunning": "Server remoto attivo",
|
||||
@@ -1265,6 +1248,8 @@
|
||||
"errors": {
|
||||
"noNetworkInterface": "Nessuna interfaccia di rete trovata",
|
||||
"authenticationFailed": "Autenticazione non riuscita",
|
||||
"serverStartFailed": "Impossibile avviare il server remoto: ${error}",
|
||||
"commandFailed": "Impossibile inviare il comando remoto: ${error}",
|
||||
"joinTimedOut": "Tempo scaduto durante l’accesso alla sessione",
|
||||
"failedToConnectAnyAddress": "Impossibile connettersi a qualsiasi indirizzo",
|
||||
"connectionLostAfterAttempts": "Connessione persa dopo ${attempts} tentativi",
|
||||
@@ -1538,7 +1523,6 @@
|
||||
"quickConnectFailed": "Quick Connect non riuscito: ${error}",
|
||||
"addPlexTitle": "Accedi con Plex",
|
||||
"pinExpired": "PIN scaduto prima dell'accesso. Riprova.",
|
||||
"duplicatePlexAccount": "Accesso a Plex già effettuato. Esci per cambiare account.",
|
||||
"failedToRegisterAccount": "Registrazione account non riuscita: ${error}",
|
||||
"enterJellyfinUrlError": "Inserisci l'URL del tuo server Jellyfin",
|
||||
"addConnectionTitle": "Aggiungi connessione",
|
||||
|
||||
+40
-56
@@ -3,7 +3,6 @@
|
||||
"title": "Plezy"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "サインイン",
|
||||
"signInWithPlex": "Plexでサインイン",
|
||||
"showQRCode": "QRコードを表示",
|
||||
"authenticate": "認証",
|
||||
@@ -56,10 +55,8 @@
|
||||
"episodeNumberTitle": "エピソード${number} - ${title}",
|
||||
"chapterNumber": "チャプター${number}",
|
||||
"reconnect": "再接続",
|
||||
"exit": "終了",
|
||||
"viewAll": "すべて表示",
|
||||
"checkingNetwork": "ネットワークを確認中...",
|
||||
"refreshingServers": "サーバーを更新中...",
|
||||
"loadingServers": "サーバーを読み込み中...",
|
||||
"connectingToServers": "サーバーに接続中...",
|
||||
"startingOfflineMode": "オフラインモードを開始中...",
|
||||
@@ -139,6 +136,12 @@
|
||||
"tvFullCardLayoutDescription": "TVカードを画像のみで表示し、俳優名を重ねて表示します",
|
||||
"focusGlow": "フォーカス時の光彩",
|
||||
"focusGlowDescription": "フォーカス中のカードの周りに柔らかい光彩を表示します",
|
||||
"visualEffects": "視覚効果",
|
||||
"visualEffectsAuto": "自動",
|
||||
"visualEffectsAutoDescription": "低性能なデバイスでは効果を自動的に減らします",
|
||||
"visualEffectsFull": "フル",
|
||||
"visualEffectsReduced": "軽減",
|
||||
"visualEffectsReducedDescription": "アニメーションを減らし、低解像度のアートワークを使用します",
|
||||
"hideSpoilers": "未視聴エピソードのネタバレを非表示",
|
||||
"hideSpoilersDescription": "未視聴エピソードのサムネイルと説明をぼかします",
|
||||
"playerBackend": "プレーヤーバックエンド",
|
||||
@@ -151,7 +154,7 @@
|
||||
"bufferSizeAuto": "自動(推奨)",
|
||||
"bufferSizeWarning": "${heap}MBのメモリが利用可能です。${size}MBのバッファは再生に影響する可能性があります。",
|
||||
"defaultQualityTitle": "デフォルト画質",
|
||||
"defaultQualityDescription": "再生開始時に使用。低い値ほど帯域幅が削減されます。",
|
||||
"musicQualityTitle": "音楽の音質",
|
||||
"subtitleStyling": "字幕スタイル",
|
||||
"subtitleStylingDescription": "字幕の外観をカスタマイズ",
|
||||
"smallSkipDuration": "短いスキップ時間",
|
||||
@@ -245,10 +248,9 @@
|
||||
"maxVolumePercent": "${percent}%",
|
||||
"discordRichPresence": "Discord Rich Presence",
|
||||
"discordRichPresenceDescription": "Discordで視聴中の内容を表示",
|
||||
"trakt": "Trakt",
|
||||
"traktDescription": "視聴履歴を Trakt と同期",
|
||||
"services": "サービス",
|
||||
"servicesDescription": "Trakt、MyAnimeList、Seerr などを接続",
|
||||
"manageLibrariesDescription": "ライブラリを並べ替えたり非表示にしたりできます",
|
||||
"companionRemoteServer": "コンパニオンリモートサーバー",
|
||||
"companionRemoteServerDescription": "ネットワーク上のモバイルデバイスからこのアプリを操作できるようにする",
|
||||
"autoPip": "自動ピクチャーインピクチャー",
|
||||
@@ -311,7 +313,6 @@
|
||||
"showNavBarLabels": "ナビゲーションバーラベルを表示",
|
||||
"showNavBarLabelsDescription": "ナビゲーションバーアイコンの下にテキストラベルを表示",
|
||||
"startupSection": "起動時のセクション",
|
||||
"startupSectionDescription": "起動時に Plezy が開くセクションを選択します",
|
||||
"liveTvDefaultFavorites": "お気に入りチャンネルをデフォルトに",
|
||||
"liveTvDefaultFavoritesDescription": "ライブTV を開いたときにお気に入りチャンネルのみ表示",
|
||||
"display": "ディスプレイ",
|
||||
@@ -322,14 +323,7 @@
|
||||
"player": "プレーヤー",
|
||||
"subtitlesAndConfig": "字幕と設定",
|
||||
"seekAndTiming": "シークとタイミング",
|
||||
"behavior": "動作",
|
||||
"manageLibrariesDescription": "ライブラリを並べ替えたり非表示にしたりできます",
|
||||
"visualEffects": "視覚効果",
|
||||
"visualEffectsAuto": "自動",
|
||||
"visualEffectsAutoDescription": "低性能なデバイスでは効果を自動的に減らします",
|
||||
"visualEffectsFull": "フル",
|
||||
"visualEffectsReduced": "軽減",
|
||||
"visualEffectsReducedDescription": "アニメーションを減らし、低解像度のアートワークを使用します"
|
||||
"behavior": "動作"
|
||||
},
|
||||
"search": {
|
||||
"hint": "映画、番組、音楽を検索...",
|
||||
@@ -418,14 +412,11 @@
|
||||
"rateSheet": {
|
||||
"title": "評価",
|
||||
"server": "サーバー",
|
||||
"starValue": "${rating} / 5",
|
||||
"scoreValue": "${score} / 10",
|
||||
"setScore": "スコアを設定",
|
||||
"favorite": "お気に入り",
|
||||
"favorited": "お気に入りに追加済み",
|
||||
"saved": "保存済み",
|
||||
"notAvailable": "一致なし",
|
||||
"noConnectedServices": "評価するには、設定でサービスを接続してください。",
|
||||
"favorite": "お気に入り",
|
||||
"favorited": "お気に入りに追加済み"
|
||||
"noConnectedServices": "評価するには、設定でサービスを接続してください。"
|
||||
},
|
||||
"accessibility": {
|
||||
"mediaCardMovie": "${title}、映画",
|
||||
@@ -435,7 +426,15 @@
|
||||
"mediaCardWatched": "視聴済み",
|
||||
"mediaCardPartiallyWatched": "${percent}パーセント視聴済み",
|
||||
"mediaCardUnwatched": "未視聴",
|
||||
"tapToPlay": "タップして再生"
|
||||
"tapToPlay": "タップして再生",
|
||||
"decrease": "下げる",
|
||||
"increase": "上げる",
|
||||
"decreaseValue": "${label}を下げる",
|
||||
"increaseValue": "${label}を上げる",
|
||||
"hue": "色相",
|
||||
"saturation": "彩度",
|
||||
"brightness": "明るさ",
|
||||
"hexColor": "16進カラー"
|
||||
},
|
||||
"tooltips": {
|
||||
"shufflePlay": "シャッフル再生",
|
||||
@@ -481,13 +480,11 @@
|
||||
"settingsButton": "再生設定",
|
||||
"tracksButton": "音声と字幕",
|
||||
"chaptersButton": "チャプター",
|
||||
"versionsButton": "動画バージョン",
|
||||
"versionQualityButton": "バージョンと画質",
|
||||
"versionColumnHeader": "バージョン",
|
||||
"qualityColumnHeader": "画質",
|
||||
"qualityOriginal": "オリジナル",
|
||||
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
||||
"qualityBandwidthEstimate": "~${bitrate} Mbps",
|
||||
"transcodeUnavailableFallback": "トランスコードは利用できません — オリジナル画質で再生中",
|
||||
"pipButton": "ピクチャーインピクチャーモード",
|
||||
"aspectRatioButton": "アスペクト比",
|
||||
@@ -530,12 +527,7 @@
|
||||
"subtitleDownloadFailed": "字幕のダウンロードに失敗しました",
|
||||
"searchLanguages": "言語を検索..."
|
||||
},
|
||||
"userStatus": {
|
||||
"admin": "管理者",
|
||||
"restricted": "制限付き",
|
||||
"protected": "保護済み",
|
||||
"current": "現在"
|
||||
},
|
||||
"userStatus": {},
|
||||
"messages": {
|
||||
"markedAsWatched": "視聴済みにしました",
|
||||
"markedAsUnwatched": "未視聴にしました",
|
||||
@@ -676,8 +668,7 @@
|
||||
"pinProtectionOptional": "PIN保護(オプション)",
|
||||
"pinExplain": "プロフィール切り替えには4桁のPINが必要です。",
|
||||
"continueButton": "続ける",
|
||||
"pinsDontMatch": "PINが一致しません",
|
||||
"initializeServicesFailed": "プロフィールサービスの初期化に失敗しました"
|
||||
"pinsDontMatch": "PINが一致しません"
|
||||
},
|
||||
"connections": {
|
||||
"sectionTitle": "接続",
|
||||
@@ -692,7 +683,6 @@
|
||||
},
|
||||
"discover": {
|
||||
"title": "探す",
|
||||
"switchProfile": "プロフィール切替",
|
||||
"noContentAvailable": "コンテンツがありません",
|
||||
"addMediaToLibraries": "ライブラリにメディアを追加してください",
|
||||
"continueWatching": "視聴を続ける",
|
||||
@@ -721,8 +711,6 @@
|
||||
"connectionFailed": "メディアサーバーに接続できません",
|
||||
"failedToLoad": "${context}の読み込みに失敗しました: ${error}",
|
||||
"noClientAvailable": "クライアントが利用できません",
|
||||
"authenticationFailed": "認証に失敗しました: ${error}",
|
||||
"couldNotLaunchUrl": "認証URLを開けませんでした",
|
||||
"pleaseEnterToken": "トークンを入力してください",
|
||||
"invalidToken": "無効なトークン",
|
||||
"failedToVerifyToken": "トークンの検証に失敗しました: ${error}",
|
||||
@@ -749,6 +737,8 @@
|
||||
"allLibrariesHidden": "すべてのライブラリが非表示です",
|
||||
"hiddenLibrariesCount": "非表示のライブラリ (${count})",
|
||||
"thisLibraryIsEmpty": "このライブラリは空です",
|
||||
"noItemsMatchFilters": "有効なフィルターに一致する項目はありません",
|
||||
"resetFilters": "フィルターをリセット",
|
||||
"all": "すべて",
|
||||
"clearAll": "すべてクリア",
|
||||
"scanLibraryConfirm": "\"${title}\"をスキャンしてもよろしいですか?",
|
||||
@@ -804,7 +794,6 @@
|
||||
"communityRating": "コミュニティ評価",
|
||||
"criticRating": "批評家評価",
|
||||
"userRating": "ユーザー評価",
|
||||
"lastPlayed": "最終再生",
|
||||
"datePlayed": "再生日",
|
||||
"playCount": "再生回数",
|
||||
"productionYear": "製作年",
|
||||
@@ -818,9 +807,7 @@
|
||||
"dateShared": "共有日",
|
||||
"latestEpisodeAirDate": "最新エピソード放送日",
|
||||
"lastEpisodeDateAdded": "最新エピソード追加日"
|
||||
},
|
||||
"noItemsMatchFilters": "有効なフィルターに一致する項目はありません",
|
||||
"resetFilters": "フィルターをリセット"
|
||||
}
|
||||
},
|
||||
"about": {
|
||||
"title": "アプリについて",
|
||||
@@ -830,7 +817,6 @@
|
||||
"viewLicensesDescription": "サードパーティライブラリのライセンスを表示"
|
||||
},
|
||||
"serverSelection": {
|
||||
"allServerConnectionsFailed": "どのサーバーにも接続できませんでした。ネットワークを確認してください。",
|
||||
"noServersFoundForAccount": "${username} (${email})のサーバーが見つかりません",
|
||||
"failedToLoadServers": "サーバーの読み込みに失敗しました: ${error}"
|
||||
},
|
||||
@@ -876,10 +862,6 @@
|
||||
"upcomingMovies": "近日公開の映画",
|
||||
"upcomingShows": "放送予定の番組"
|
||||
},
|
||||
"searchHint": "${source} で検索",
|
||||
"searchEmpty": "「${query}」の結果が見つかりません",
|
||||
"searchPrompt": "${source} で映画やテレビ番組を検索します。",
|
||||
"searchFailed": "検索に失敗しました。接続を確認してもう一度お試しください。",
|
||||
"status": {
|
||||
"airing": "放送中",
|
||||
"ended": "放送終了",
|
||||
@@ -896,16 +878,21 @@
|
||||
"watchlistUpdateFailed": "ウォッチリストを更新できませんでした",
|
||||
"notInLibrary": "ライブラリにありません",
|
||||
"inTheseLibraries": "これらのライブラリにあります",
|
||||
"availableOn": "${server}で視聴可能",
|
||||
"checkingLibrary": "ライブラリを確認中...",
|
||||
"emptyTitle": "まだ何もありません",
|
||||
"emptyMessage": "${source}にコンテンツが追加されると、ここに表示されます。"
|
||||
"emptyMessage": "${source}にコンテンツが追加されると、ここに表示されます。",
|
||||
"searchHint": "${source} で検索",
|
||||
"searchEmpty": "「${query}」の結果が見つかりません",
|
||||
"searchPrompt": "${source} で映画やテレビ番組を検索します。",
|
||||
"searchFailed": "検索に失敗しました。接続を確認してもう一度お試しください。"
|
||||
},
|
||||
"liveTv": {
|
||||
"title": "ライブTV",
|
||||
"guide": "番組表",
|
||||
"noChannels": "チャンネルがありません",
|
||||
"noDvr": "どのサーバーにもDVRが設定されていません",
|
||||
"serverUnavailable": "ライブTVサーバーを利用できません。",
|
||||
"serverNotConnected": "ライブTVサーバーに接続されていません。",
|
||||
"noPrograms": "番組データがありません",
|
||||
"liveStreamFailed": "ライブストリームに失敗しました",
|
||||
"unknownProgram": "不明な番組",
|
||||
@@ -941,7 +928,6 @@
|
||||
"scheduledRecordings": "予約",
|
||||
"recordingRules": "録画ルール",
|
||||
"noScheduledRecordings": "予約された録画はありません",
|
||||
"noRecordingRules": "録画ルールはまだありません",
|
||||
"manageRecording": "録画を管理",
|
||||
"cancelRecording": "録画をキャンセル",
|
||||
"cancelRecordingTitle": "この録画をキャンセルしますか?",
|
||||
@@ -958,7 +944,6 @@
|
||||
"recordingCancelled": "録画をキャンセルしました",
|
||||
"recordingRuleDeleted": "録画ルールを削除しました",
|
||||
"processRecordingRules": "ルールを再評価",
|
||||
"loadingRecordings": "録画を読み込み中...",
|
||||
"recordingInProgress": "録画中",
|
||||
"recordingsCount": "${count} 件予約済み",
|
||||
"editRule": "ルールを編集",
|
||||
@@ -972,7 +957,6 @@
|
||||
"title": "コレクション",
|
||||
"collection": "コレクション",
|
||||
"empty": "コレクションは空です",
|
||||
"unknownLibrarySection": "削除できません:不明なライブラリセクション",
|
||||
"deleteCollection": "コレクションを削除",
|
||||
"deleteConfirm": "「${title}」を削除しますか?元に戻せません。",
|
||||
"deleted": "コレクションを削除しました",
|
||||
@@ -1012,6 +996,7 @@
|
||||
"itemAdded": "プレイリストに追加しました",
|
||||
"itemRemoved": "プレイリストから削除しました",
|
||||
"selectPlaylist": "プレイリストを選択",
|
||||
"searchPlaylists": "プレイリストを検索...",
|
||||
"errorCreating": "プレイリストの作成に失敗しました",
|
||||
"errorDeleting": "プレイリストの削除に失敗しました",
|
||||
"errorLoading": "プレイリストの読み込みに失敗しました",
|
||||
@@ -1100,15 +1085,15 @@
|
||||
"participantResumed": "${name}が再開しました",
|
||||
"participantSeeked": "${name}がシークしました",
|
||||
"participantBuffering": "${name}がバッファリング中",
|
||||
"participantNeedsUpdate": "${name} は古いバージョンのアプリを使用しているため、同期できません",
|
||||
"resumingWithout": "${name} なしで再開",
|
||||
"waitingForParticipants": "他の参加者の読み込みを待っています...",
|
||||
"waitingForName": "${name}を待っています...",
|
||||
"recentRooms": "最近のルーム",
|
||||
"renameRoom": "ルーム名を変更",
|
||||
"removeRoom": "削除",
|
||||
"guestSwitchUnavailable": "切り替えできません — サーバーが同期できません",
|
||||
"guestSwitchFailed": "切り替えできません — このサーバーにコンテンツが見つかりません",
|
||||
"participantNeedsUpdate": "${name} は古いバージョンのアプリを使用しているため、同期できません",
|
||||
"resumingWithout": "${name} なしで再開",
|
||||
"waitingForName": "${name}を待っています..."
|
||||
"guestSwitchFailed": "切り替えできません — このサーバーにコンテンツが見つかりません"
|
||||
},
|
||||
"downloads": {
|
||||
"title": "ダウンロード",
|
||||
@@ -1153,7 +1138,6 @@
|
||||
"customAmount": "数を指定...",
|
||||
"includeSpecials": "スペシャルを含める",
|
||||
"howManyEpisodes": "何エピソード?",
|
||||
"itemsQueued": "${count}件をダウンロードキューに追加",
|
||||
"keepSynced": "同期を維持",
|
||||
"downloadOnce": "一度だけダウンロード",
|
||||
"keepNUnwatched": "未視聴を${count}件保持",
|
||||
@@ -1202,7 +1186,6 @@
|
||||
"unknownDevice": "不明なデバイス",
|
||||
"session": {
|
||||
"startingServer": "リモートサーバーを起動中...",
|
||||
"failedToCreate": "リモートサーバーの起動に失敗しました:",
|
||||
"hostAddress": "ホストアドレス",
|
||||
"connected": "接続済み",
|
||||
"serverRunning": "リモートサーバー稼働中",
|
||||
@@ -1263,6 +1246,8 @@
|
||||
"errors": {
|
||||
"noNetworkInterface": "ネットワークインターフェースが見つかりません",
|
||||
"authenticationFailed": "認証に失敗しました",
|
||||
"serverStartFailed": "リモートサーバーを起動できませんでした: ${error}",
|
||||
"commandFailed": "リモートコマンドを送信できませんでした: ${error}",
|
||||
"joinTimedOut": "セッション参加がタイムアウトしました",
|
||||
"failedToConnectAnyAddress": "どのアドレスにも接続できませんでした",
|
||||
"connectionLostAfterAttempts": "${attempts}回試行後に接続が切断されました",
|
||||
@@ -1536,7 +1521,6 @@
|
||||
"quickConnectFailed": "Quick Connectに失敗しました: ${error}",
|
||||
"addPlexTitle": "Plexでサインイン",
|
||||
"pinExpired": "サインイン前にPINの有効期限が切れました。もう一度お試しください。",
|
||||
"duplicatePlexAccount": "すでにPlexにサインインしています。アカウントを切り替えるにはサインアウトしてください。",
|
||||
"failedToRegisterAccount": "アカウントの登録に失敗しました: ${error}",
|
||||
"enterJellyfinUrlError": "JellyfinサーバーのURLを入力してください",
|
||||
"addConnectionTitle": "接続を追加",
|
||||
|
||||
+22
-38
@@ -3,7 +3,6 @@
|
||||
"title": "Plezy"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "로그인",
|
||||
"signInWithPlex": "Plex 계정으로 로그인",
|
||||
"showQRCode": "QR 코드",
|
||||
"authenticate": "인증",
|
||||
@@ -56,10 +55,8 @@
|
||||
"episodeNumberTitle": "${number}화 - ${title}",
|
||||
"chapterNumber": "챕터 ${number}",
|
||||
"reconnect": "다시 연결",
|
||||
"exit": "종료",
|
||||
"viewAll": "모두 보기",
|
||||
"checkingNetwork": "네트워크 확인 중...",
|
||||
"refreshingServers": "서버 새로고침 중...",
|
||||
"loadingServers": "서버 로딩 중...",
|
||||
"connectingToServers": "서버 연결 중...",
|
||||
"startingOfflineMode": "오프라인 모드 시작 중...",
|
||||
@@ -157,7 +154,7 @@
|
||||
"bufferSizeAuto": "자동 (권장)",
|
||||
"bufferSizeWarning": "${heap}MB 메모리를 사용할 수 있습니다. ${size}MB 버퍼는 재생에 영향을 줄 수 있습니다.",
|
||||
"defaultQualityTitle": "기본 화질",
|
||||
"defaultQualityDescription": "재생 시작 시 사용됩니다. 낮은 값은 대역폭을 줄입니다.",
|
||||
"musicQualityTitle": "음악 음질",
|
||||
"subtitleStyling": "자막 스타일",
|
||||
"subtitleStylingDescription": "자막의 외형을 사용자 설정",
|
||||
"smallSkipDuration": "짧은 건너뛰기 시간",
|
||||
@@ -251,8 +248,6 @@
|
||||
"maxVolumePercent": "${percent}%",
|
||||
"discordRichPresence": "Discord Rich Presence",
|
||||
"discordRichPresenceDescription": "Discord에서 시청 중인 콘텐츠 표시",
|
||||
"trakt": "Trakt",
|
||||
"traktDescription": "Trakt와 시청 기록 동기화",
|
||||
"services": "서비스",
|
||||
"servicesDescription": "Trakt, MyAnimeList, Seerr 등 연결",
|
||||
"manageLibrariesDescription": "라이브러리 순서를 변경하거나 숨깁니다",
|
||||
@@ -318,7 +313,6 @@
|
||||
"showNavBarLabels": "내비게이션 바 라벨 표시",
|
||||
"showNavBarLabelsDescription": "내비게이션 바 아이콘 아래에 텍스트 라벨을 표시합니다",
|
||||
"startupSection": "시작 섹션",
|
||||
"startupSectionDescription": "Plezy 실행 시 열릴 섹션을 선택합니다",
|
||||
"liveTvDefaultFavorites": "즐겨찾기 채널 기본 설정",
|
||||
"liveTvDefaultFavoritesDescription": "라이브 TV를 열 때 즐겨찾기 채널만 표시",
|
||||
"display": "디스플레이",
|
||||
@@ -418,9 +412,6 @@
|
||||
"rateSheet": {
|
||||
"title": "평가",
|
||||
"server": "서버",
|
||||
"starValue": "${rating} / 5",
|
||||
"scoreValue": "${score} / 10",
|
||||
"setScore": "점수 설정",
|
||||
"favorite": "즐겨찾기",
|
||||
"favorited": "즐겨찾기됨",
|
||||
"saved": "저장됨",
|
||||
@@ -435,7 +426,15 @@
|
||||
"mediaCardWatched": "시청 완료",
|
||||
"mediaCardPartiallyWatched": "${percent} 퍼센트 시청 완료",
|
||||
"mediaCardUnwatched": "미시청",
|
||||
"tapToPlay": "터치 하여 재생"
|
||||
"tapToPlay": "터치 하여 재생",
|
||||
"decrease": "낮추기",
|
||||
"increase": "높이기",
|
||||
"decreaseValue": "${label} 낮추기",
|
||||
"increaseValue": "${label} 높이기",
|
||||
"hue": "색조",
|
||||
"saturation": "채도",
|
||||
"brightness": "밝기",
|
||||
"hexColor": "16진수 색상"
|
||||
},
|
||||
"tooltips": {
|
||||
"shufflePlay": "무작위 재생",
|
||||
@@ -481,13 +480,11 @@
|
||||
"settingsButton": "재생 설정",
|
||||
"tracksButton": "오디오 및 자막",
|
||||
"chaptersButton": "챕터",
|
||||
"versionsButton": "동영상 버전",
|
||||
"versionQualityButton": "버전 및 화질",
|
||||
"versionColumnHeader": "버전",
|
||||
"qualityColumnHeader": "화질",
|
||||
"qualityOriginal": "원본",
|
||||
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
||||
"qualityBandwidthEstimate": "~${bitrate} Mbps",
|
||||
"transcodeUnavailableFallback": "트랜스코딩을 사용할 수 없음 — 원본 화질로 재생",
|
||||
"pipButton": "픽처 인 픽처 모드",
|
||||
"aspectRatioButton": "화면비율",
|
||||
@@ -530,12 +527,7 @@
|
||||
"subtitleDownloadFailed": "자막 다운로드에 실패했습니다",
|
||||
"searchLanguages": "언어 검색..."
|
||||
},
|
||||
"userStatus": {
|
||||
"admin": "관리자",
|
||||
"restricted": "제한됨",
|
||||
"protected": "보호됨",
|
||||
"current": "현재"
|
||||
},
|
||||
"userStatus": {},
|
||||
"messages": {
|
||||
"markedAsWatched": "시청 완료로 표시됨",
|
||||
"markedAsUnwatched": "시청 안 함으로 표시됨",
|
||||
@@ -676,8 +668,7 @@
|
||||
"pinProtectionOptional": "PIN 보호 (선택 사항)",
|
||||
"pinExplain": "프로필 전환에는 4자리 PIN이 필요합니다.",
|
||||
"continueButton": "계속",
|
||||
"pinsDontMatch": "PIN이 일치하지 않습니다",
|
||||
"initializeServicesFailed": "프로필 서비스를 초기화하지 못했습니다"
|
||||
"pinsDontMatch": "PIN이 일치하지 않습니다"
|
||||
},
|
||||
"connections": {
|
||||
"sectionTitle": "연결",
|
||||
@@ -692,7 +683,6 @@
|
||||
},
|
||||
"discover": {
|
||||
"title": "발견",
|
||||
"switchProfile": "사용자 전환",
|
||||
"noContentAvailable": "사용 가능한 콘텐츠가 없습니다",
|
||||
"addMediaToLibraries": "미디어 라이브러리에 미디어를 추가해 주세요",
|
||||
"continueWatching": "계속 시청",
|
||||
@@ -721,8 +711,6 @@
|
||||
"connectionFailed": "미디어 서버에 연결할 수 없습니다",
|
||||
"failedToLoad": "${context} 로드 실패: ${error}",
|
||||
"noClientAvailable": "사용 가능한 클라이언트가 없습니다",
|
||||
"authenticationFailed": "인증 실패: ${error}",
|
||||
"couldNotLaunchUrl": "인증 URL을 열 수 없습니다",
|
||||
"pleaseEnterToken": "토큰을 입력해 주세요",
|
||||
"invalidToken": "토큰이 유효하지 않습니다",
|
||||
"failedToVerifyToken": "토큰을 확인할 수 없습니다: ${error}",
|
||||
@@ -806,7 +794,6 @@
|
||||
"communityRating": "커뮤니티 평점",
|
||||
"criticRating": "평론가 평점",
|
||||
"userRating": "사용자 평점",
|
||||
"lastPlayed": "마지막 재생",
|
||||
"datePlayed": "재생일",
|
||||
"playCount": "재생 횟수",
|
||||
"productionYear": "제작 연도",
|
||||
@@ -830,7 +817,6 @@
|
||||
"viewLicensesDescription": "타사 라이브러리 라이선스 보기"
|
||||
},
|
||||
"serverSelection": {
|
||||
"allServerConnectionsFailed": "서버에 연결할 수 없습니다. 네트워크를 확인하세요.",
|
||||
"noServersFoundForAccount": "${username} (${email})의 서버를 찾을 수 없습니다.",
|
||||
"failedToLoadServers": "서버를 로드할 수 없습니다: ${error}"
|
||||
},
|
||||
@@ -876,10 +862,6 @@
|
||||
"upcomingMovies": "개봉 예정 영화",
|
||||
"upcomingShows": "방영 예정 TV 프로그램"
|
||||
},
|
||||
"searchHint": "${source}에서 검색",
|
||||
"searchEmpty": "「${query}」에 대한 결과가 없습니다",
|
||||
"searchPrompt": "${source}에서 영화와 TV 프로그램을 검색하세요.",
|
||||
"searchFailed": "검색에 실패했습니다. 연결을 확인하고 다시 시도하세요.",
|
||||
"status": {
|
||||
"airing": "방영 중",
|
||||
"ended": "종영",
|
||||
@@ -896,16 +878,21 @@
|
||||
"watchlistUpdateFailed": "관심 목록을 업데이트하지 못했습니다",
|
||||
"notInLibrary": "라이브러리에 없음",
|
||||
"inTheseLibraries": "이 라이브러리에 있음",
|
||||
"availableOn": "${server}에서 이용 가능",
|
||||
"checkingLibrary": "라이브러리 확인 중...",
|
||||
"emptyTitle": "아직 아무것도 없습니다",
|
||||
"emptyMessage": "${source}에 콘텐츠가 추가되면 여기에 표시됩니다."
|
||||
"emptyMessage": "${source}에 콘텐츠가 추가되면 여기에 표시됩니다.",
|
||||
"searchHint": "${source}에서 검색",
|
||||
"searchEmpty": "「${query}」에 대한 결과가 없습니다",
|
||||
"searchPrompt": "${source}에서 영화와 TV 프로그램을 검색하세요.",
|
||||
"searchFailed": "검색에 실패했습니다. 연결을 확인하고 다시 시도하세요."
|
||||
},
|
||||
"liveTv": {
|
||||
"title": "실시간 TV",
|
||||
"guide": "편성표",
|
||||
"noChannels": "사용 가능한 채널이 없습니다",
|
||||
"noDvr": "서버에 DVR이 구성되어 있지 않습니다",
|
||||
"serverUnavailable": "라이브 TV 서버를 사용할 수 없습니다.",
|
||||
"serverNotConnected": "라이브 TV 서버에 연결되어 있지 않습니다.",
|
||||
"noPrograms": "프로그램 데이터가 없습니다",
|
||||
"liveStreamFailed": "라이브 스트림 실패",
|
||||
"unknownProgram": "알 수 없는 프로그램",
|
||||
@@ -941,7 +928,6 @@
|
||||
"scheduledRecordings": "예약됨",
|
||||
"recordingRules": "녹화 규칙",
|
||||
"noScheduledRecordings": "예약된 녹화 없음",
|
||||
"noRecordingRules": "녹화 규칙 없음",
|
||||
"manageRecording": "녹화 관리",
|
||||
"cancelRecording": "녹화 취소",
|
||||
"cancelRecordingTitle": "이 녹화를 취소할까요?",
|
||||
@@ -958,7 +944,6 @@
|
||||
"recordingCancelled": "녹화 취소됨",
|
||||
"recordingRuleDeleted": "녹화 규칙 삭제됨",
|
||||
"processRecordingRules": "규칙 재평가",
|
||||
"loadingRecordings": "녹화 불러오는 중...",
|
||||
"recordingInProgress": "녹화 중",
|
||||
"recordingsCount": "${count}개 예약됨",
|
||||
"editRule": "규칙 편집",
|
||||
@@ -972,7 +957,6 @@
|
||||
"title": "컬렉션",
|
||||
"collection": "컬렉션",
|
||||
"empty": "컬렉션이 비어 있습니다",
|
||||
"unknownLibrarySection": "삭제할 수 없습니다: 알 수 없는 미디어 라이브러리 섹션입니다",
|
||||
"deleteCollection": "컬렉션 삭제",
|
||||
"deleteConfirm": "\"${title}\"을(를) 삭제할까요? 되돌릴 수 없습니다.",
|
||||
"deleted": "컬렉션 삭제됨",
|
||||
@@ -1012,6 +996,7 @@
|
||||
"itemAdded": "재생 목록에 추가 되었습니다",
|
||||
"itemRemoved": "재생 목록에서 제거됨",
|
||||
"selectPlaylist": "재생 목록 선택",
|
||||
"searchPlaylists": "재생 목록 검색...",
|
||||
"errorCreating": "재생 목록 생성 실패",
|
||||
"errorDeleting": "재생 목록 삭제 실패",
|
||||
"errorLoading": "재생 목록 로드 실패",
|
||||
@@ -1153,7 +1138,6 @@
|
||||
"customAmount": "직접 입력...",
|
||||
"includeSpecials": "스페셜 포함",
|
||||
"howManyEpisodes": "몇 개의 에피소드?",
|
||||
"itemsQueued": "${count}개 항목이 다운로드 대기열에 추가됨",
|
||||
"keepSynced": "동기화 유지",
|
||||
"downloadOnce": "한 번만 다운로드",
|
||||
"keepNUnwatched": "미시청 ${count}개 유지",
|
||||
@@ -1202,7 +1186,6 @@
|
||||
"unknownDevice": "알 수 없는 기기",
|
||||
"session": {
|
||||
"startingServer": "원격 서버 시작 중...",
|
||||
"failedToCreate": "원격 서버를 시작하지 못했습니다:",
|
||||
"hostAddress": "호스트 주소",
|
||||
"connected": "연결됨",
|
||||
"serverRunning": "원격 서버 활성",
|
||||
@@ -1263,6 +1246,8 @@
|
||||
"errors": {
|
||||
"noNetworkInterface": "네트워크 인터페이스를 찾을 수 없습니다",
|
||||
"authenticationFailed": "인증 실패",
|
||||
"serverStartFailed": "원격 서버를 시작하지 못했습니다: ${error}",
|
||||
"commandFailed": "원격 명령을 보내지 못했습니다: ${error}",
|
||||
"joinTimedOut": "세션 참가 시간이 초과되었습니다",
|
||||
"failedToConnectAnyAddress": "어떤 주소에도 연결하지 못했습니다",
|
||||
"connectionLostAfterAttempts": "${attempts}회 시도 후 연결이 끊어졌습니다",
|
||||
@@ -1536,7 +1521,6 @@
|
||||
"quickConnectFailed": "Quick Connect 실패: ${error}",
|
||||
"addPlexTitle": "Plex로 로그인",
|
||||
"pinExpired": "로그인 전에 PIN이 만료되었습니다. 다시 시도하세요.",
|
||||
"duplicatePlexAccount": "이미 Plex에 로그인되어 있습니다. 계정을 전환하려면 로그아웃하세요.",
|
||||
"failedToRegisterAccount": "계정 등록 실패: ${error}",
|
||||
"enterJellyfinUrlError": "Jellyfin 서버 URL을 입력하세요",
|
||||
"addConnectionTitle": "연결 추가",
|
||||
|
||||
+40
-56
@@ -3,7 +3,6 @@
|
||||
"title": "Plezy"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "Logg på",
|
||||
"signInWithPlex": "Logg inn med Plex",
|
||||
"showQRCode": "Vis QR-kode",
|
||||
"authenticate": "Autentiser",
|
||||
@@ -56,10 +55,8 @@
|
||||
"episodeNumberTitle": "Episode ${number} - ${title}",
|
||||
"chapterNumber": "Kapittel ${number}",
|
||||
"reconnect": "Koble til på nytt",
|
||||
"exit": "Avslutt",
|
||||
"viewAll": "Vis alle",
|
||||
"checkingNetwork": "Sjekker nettverk...",
|
||||
"refreshingServers": "Oppdaterer servere...",
|
||||
"loadingServers": "Laster servere...",
|
||||
"connectingToServers": "Kobler til servere...",
|
||||
"startingOfflineMode": "Starter frakoblet modus...",
|
||||
@@ -139,6 +136,12 @@
|
||||
"tvFullCardLayoutDescription": "Bruk bildebaserte TV-kort med skuespillernavn lagt over",
|
||||
"focusGlow": "Fokusglød",
|
||||
"focusGlowDescription": "Vis en myk glød rundt kortet i fokus",
|
||||
"visualEffects": "Visuelle effekter",
|
||||
"visualEffectsAuto": "Automatisk",
|
||||
"visualEffectsAutoDescription": "Reduser effekter automatisk på enheter med lavt strømforbruk",
|
||||
"visualEffectsFull": "Full",
|
||||
"visualEffectsReduced": "Redusert",
|
||||
"visualEffectsReducedDescription": "Færre animasjoner og grafikk med lavere oppløsning",
|
||||
"hideSpoilers": "Skjul spoilere for usette episoder",
|
||||
"hideSpoilersDescription": "Slør miniatyrbilder og beskrivelser for usette episoder",
|
||||
"playerBackend": "Spillermotor",
|
||||
@@ -151,7 +154,7 @@
|
||||
"bufferSizeAuto": "Auto (Anbefalt)",
|
||||
"bufferSizeWarning": "${heap}MB minne tilgjengelig. En buffer på ${size}MB kan påvirke avspilling.",
|
||||
"defaultQualityTitle": "Standardkvalitet",
|
||||
"defaultQualityDescription": "Brukes ved start av avspilling. Lavere verdier reduserer båndbredden.",
|
||||
"musicQualityTitle": "Musikkvalitet",
|
||||
"subtitleStyling": "Undertekststil",
|
||||
"subtitleStylingDescription": "Tilpass utseendet på undertekster",
|
||||
"smallSkipDuration": "Kort hoppvarighet",
|
||||
@@ -245,10 +248,9 @@
|
||||
"maxVolumePercent": "${percent}%",
|
||||
"discordRichPresence": "Discord Rich Presence",
|
||||
"discordRichPresenceDescription": "Vis hva du ser på Discord",
|
||||
"trakt": "Trakt",
|
||||
"traktDescription": "Synkroniser visningshistorikk med Trakt",
|
||||
"services": "Tjenester",
|
||||
"servicesDescription": "Koble til Trakt, MyAnimeList, Seerr og mer",
|
||||
"manageLibrariesDescription": "Omorganiser og skjul biblioteker",
|
||||
"companionRemoteServer": "Companion Remote-server",
|
||||
"companionRemoteServerDescription": "Tillat mobilenheter på nettverket ditt å styre denne appen",
|
||||
"autoPip": "Auto bilde-i-bilde",
|
||||
@@ -311,7 +313,6 @@
|
||||
"showNavBarLabels": "Vis navigasjonsfeltlabeler",
|
||||
"showNavBarLabelsDescription": "Vis tekstlabeler under navigasjonsfeltikoner",
|
||||
"startupSection": "Oppstartsseksjon",
|
||||
"startupSectionDescription": "Velg hvilken seksjon Plezy åpner ved oppstart",
|
||||
"liveTvDefaultFavorites": "Standard til favorittkanaler",
|
||||
"liveTvDefaultFavoritesDescription": "Vis kun favorittkanaler når du åpner Live TV",
|
||||
"display": "Skjerm",
|
||||
@@ -322,14 +323,7 @@
|
||||
"player": "Spiller",
|
||||
"subtitlesAndConfig": "Undertekster og konfigurasjon",
|
||||
"seekAndTiming": "Søk og tidtaking",
|
||||
"behavior": "Atferd",
|
||||
"manageLibrariesDescription": "Omorganiser og skjul biblioteker",
|
||||
"visualEffects": "Visuelle effekter",
|
||||
"visualEffectsAuto": "Automatisk",
|
||||
"visualEffectsAutoDescription": "Reduser effekter automatisk på enheter med lavt strømforbruk",
|
||||
"visualEffectsFull": "Full",
|
||||
"visualEffectsReduced": "Redusert",
|
||||
"visualEffectsReducedDescription": "Færre animasjoner og grafikk med lavere oppløsning"
|
||||
"behavior": "Atferd"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Søk i filmer, serier, musikk...",
|
||||
@@ -418,14 +412,11 @@
|
||||
"rateSheet": {
|
||||
"title": "Vurder",
|
||||
"server": "Server",
|
||||
"starValue": "${rating} / 5",
|
||||
"scoreValue": "${score} / 10",
|
||||
"setScore": "Sett en poengsum",
|
||||
"favorite": "Favoritt",
|
||||
"favorited": "Lagt til i favoritter",
|
||||
"saved": "Lagret",
|
||||
"notAvailable": "Ingen treff",
|
||||
"noConnectedServices": "Koble til en tjeneste i Innstillinger for å vurdere her.",
|
||||
"favorite": "Favoritt",
|
||||
"favorited": "Lagt til i favoritter"
|
||||
"noConnectedServices": "Koble til en tjeneste i Innstillinger for å vurdere her."
|
||||
},
|
||||
"accessibility": {
|
||||
"mediaCardMovie": "${title}, film",
|
||||
@@ -435,7 +426,15 @@
|
||||
"mediaCardWatched": "sett",
|
||||
"mediaCardPartiallyWatched": "${percent} prosent sett",
|
||||
"mediaCardUnwatched": "usett",
|
||||
"tapToPlay": "Trykk for å spille"
|
||||
"tapToPlay": "Trykk for å spille",
|
||||
"decrease": "Reduser",
|
||||
"increase": "Øk",
|
||||
"decreaseValue": "Reduser ${label}",
|
||||
"increaseValue": "Øk ${label}",
|
||||
"hue": "Fargetone",
|
||||
"saturation": "Metning",
|
||||
"brightness": "Lysstyrke",
|
||||
"hexColor": "Heksadesimal farge"
|
||||
},
|
||||
"tooltips": {
|
||||
"shufflePlay": "Tilfeldig avspilling",
|
||||
@@ -481,13 +480,11 @@
|
||||
"settingsButton": "Avspillingsinnstillinger",
|
||||
"tracksButton": "Lyd og undertekster",
|
||||
"chaptersButton": "Kapitler",
|
||||
"versionsButton": "Videoversjoner",
|
||||
"versionQualityButton": "Versjon og kvalitet",
|
||||
"versionColumnHeader": "Versjon",
|
||||
"qualityColumnHeader": "Kvalitet",
|
||||
"qualityOriginal": "Original",
|
||||
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
||||
"qualityBandwidthEstimate": "~${bitrate} Mbps",
|
||||
"transcodeUnavailableFallback": "Transkoding utilgjengelig — spiller av i original kvalitet",
|
||||
"pipButton": "Bilde-i-bilde-modus",
|
||||
"aspectRatioButton": "Sideforhold",
|
||||
@@ -530,12 +527,7 @@
|
||||
"subtitleDownloadFailed": "Kunne ikke laste ned undertekst",
|
||||
"searchLanguages": "Søk etter språk..."
|
||||
},
|
||||
"userStatus": {
|
||||
"admin": "Administrator",
|
||||
"restricted": "Begrenset",
|
||||
"protected": "Beskyttet",
|
||||
"current": "GJELDENDE"
|
||||
},
|
||||
"userStatus": {},
|
||||
"messages": {
|
||||
"markedAsWatched": "Merket som sett",
|
||||
"markedAsUnwatched": "Merket som usett",
|
||||
@@ -676,8 +668,7 @@
|
||||
"pinProtectionOptional": "PIN-beskyttelse (valgfri)",
|
||||
"pinExplain": "4-sifret PIN kreves for å bytte profiler.",
|
||||
"continueButton": "Fortsett",
|
||||
"pinsDontMatch": "PIN-ene samsvarer ikke",
|
||||
"initializeServicesFailed": "Kunne ikke initialisere profiltjenester"
|
||||
"pinsDontMatch": "PIN-ene samsvarer ikke"
|
||||
},
|
||||
"connections": {
|
||||
"sectionTitle": "Tilkoblinger",
|
||||
@@ -692,7 +683,6 @@
|
||||
},
|
||||
"discover": {
|
||||
"title": "Oppdag",
|
||||
"switchProfile": "Bytt profil",
|
||||
"noContentAvailable": "Ingen innhold tilgjengelig",
|
||||
"addMediaToLibraries": "Legg til medier i bibliotekene dine",
|
||||
"continueWatching": "Fortsett å se",
|
||||
@@ -721,8 +711,6 @@
|
||||
"connectionFailed": "Kan ikke koble til medieserver",
|
||||
"failedToLoad": "Kunne ikke laste ${context}: ${error}",
|
||||
"noClientAvailable": "Ingen klient tilgjengelig",
|
||||
"authenticationFailed": "Autentisering mislyktes: ${error}",
|
||||
"couldNotLaunchUrl": "Kunne ikke åpne autentiserings-URL",
|
||||
"pleaseEnterToken": "Vennligst skriv inn et token",
|
||||
"invalidToken": "Ugyldig token",
|
||||
"failedToVerifyToken": "Kunne ikke verifisere token: ${error}",
|
||||
@@ -749,6 +737,8 @@
|
||||
"allLibrariesHidden": "Alle biblioteker er skjult",
|
||||
"hiddenLibrariesCount": "Skjulte biblioteker (${count})",
|
||||
"thisLibraryIsEmpty": "Dette biblioteket er tomt",
|
||||
"noItemsMatchFilters": "Ingen elementer samsvarer med de aktive filtrene",
|
||||
"resetFilters": "Tilbakestill filtre",
|
||||
"all": "Alle",
|
||||
"clearAll": "Tøm alle",
|
||||
"scanLibraryConfirm": "Er du sikker på at du vil skanne \"${title}\"?",
|
||||
@@ -804,7 +794,6 @@
|
||||
"communityRating": "Fellesskapsvurdering",
|
||||
"criticRating": "Kritikervurdering",
|
||||
"userRating": "Brukervurdering",
|
||||
"lastPlayed": "Sist spilt",
|
||||
"datePlayed": "Avspillingsdato",
|
||||
"playCount": "Avspillinger",
|
||||
"productionYear": "Produksjonsår",
|
||||
@@ -818,9 +807,7 @@
|
||||
"dateShared": "Delingsdato",
|
||||
"latestEpisodeAirDate": "Siste episodes sendedato",
|
||||
"lastEpisodeDateAdded": "Dato for sist lagt til episode"
|
||||
},
|
||||
"noItemsMatchFilters": "Ingen elementer samsvarer med de aktive filtrene",
|
||||
"resetFilters": "Tilbakestill filtre"
|
||||
}
|
||||
},
|
||||
"about": {
|
||||
"title": "Om",
|
||||
@@ -830,7 +817,6 @@
|
||||
"viewLicensesDescription": "Vis lisenser for tredjepartsbiblioteker"
|
||||
},
|
||||
"serverSelection": {
|
||||
"allServerConnectionsFailed": "Kunne ikke koble til noen servere. Sjekk nettverket ditt.",
|
||||
"noServersFoundForAccount": "Ingen servere funnet for ${username} (${email})",
|
||||
"failedToLoadServers": "Kunne ikke laste servere: ${error}"
|
||||
},
|
||||
@@ -876,10 +862,6 @@
|
||||
"upcomingMovies": "Kommende filmer",
|
||||
"upcomingShows": "Kommende serier"
|
||||
},
|
||||
"searchHint": "Søk i ${source}",
|
||||
"searchEmpty": "Ingen treff for \"${query}\"",
|
||||
"searchPrompt": "Søk etter filmer og serier på ${source}.",
|
||||
"searchFailed": "Søk mislyktes. Sjekk tilkoblingen og prøv igjen.",
|
||||
"status": {
|
||||
"airing": "Sendes",
|
||||
"ended": "Avsluttet",
|
||||
@@ -897,16 +879,21 @@
|
||||
"watchlistUpdateFailed": "Kunne ikke oppdatere ønskelisten",
|
||||
"notInLibrary": "Ikke i biblioteket ditt",
|
||||
"inTheseLibraries": "I disse bibliotekene",
|
||||
"availableOn": "Tilgjengelig på ${server}",
|
||||
"checkingLibrary": "Sjekker biblioteket ditt...",
|
||||
"emptyTitle": "Ingenting her ennå",
|
||||
"emptyMessage": "Rader fra ${source} vises her når de har innhold."
|
||||
"emptyMessage": "Rader fra ${source} vises her når de har innhold.",
|
||||
"searchHint": "Søk i ${source}",
|
||||
"searchEmpty": "Ingen treff for \"${query}\"",
|
||||
"searchPrompt": "Søk etter filmer og serier på ${source}.",
|
||||
"searchFailed": "Søk mislyktes. Sjekk tilkoblingen og prøv igjen."
|
||||
},
|
||||
"liveTv": {
|
||||
"title": "Direkte-TV",
|
||||
"guide": "Programguide",
|
||||
"noChannels": "Ingen kanaler tilgjengelig",
|
||||
"noDvr": "Ingen DVR konfigurert på noen server",
|
||||
"serverUnavailable": "Direkte-TV-serveren er ikke tilgjengelig.",
|
||||
"serverNotConnected": "Direkte-TV-serveren er ikke tilkoblet.",
|
||||
"noPrograms": "Ingen programdata tilgjengelig",
|
||||
"liveStreamFailed": "Direktesending mislyktes",
|
||||
"unknownProgram": "Ukjent program",
|
||||
@@ -942,7 +929,6 @@
|
||||
"scheduledRecordings": "Planlagt",
|
||||
"recordingRules": "Opptaksregler",
|
||||
"noScheduledRecordings": "Ingen planlagte opptak",
|
||||
"noRecordingRules": "Ingen opptaksregler ennå",
|
||||
"manageRecording": "Administrer opptak",
|
||||
"cancelRecording": "Avbryt opptak",
|
||||
"cancelRecordingTitle": "Avbryte dette opptaket?",
|
||||
@@ -959,7 +945,6 @@
|
||||
"recordingCancelled": "Opptak avbrutt",
|
||||
"recordingRuleDeleted": "Opptaksregel slettet",
|
||||
"processRecordingRules": "Vurder regler på nytt",
|
||||
"loadingRecordings": "Laster opptak ...",
|
||||
"recordingInProgress": "Tar opp nå",
|
||||
"recordingsCount": "${count} planlagt",
|
||||
"editRule": "Rediger regel",
|
||||
@@ -973,7 +958,6 @@
|
||||
"title": "Samlinger",
|
||||
"collection": "Samling",
|
||||
"empty": "Samlingen er tom",
|
||||
"unknownLibrarySection": "Kan ikke slette: Ukjent bibliotekseksjon",
|
||||
"deleteCollection": "Slett samling",
|
||||
"deleteConfirm": "Slette \"${title}\"? Dette kan ikke angres.",
|
||||
"deleted": "Samling slettet",
|
||||
@@ -1013,6 +997,7 @@
|
||||
"itemAdded": "Lagt til i spilleliste",
|
||||
"itemRemoved": "Fjernet fra spilleliste",
|
||||
"selectPlaylist": "Velg spilleliste",
|
||||
"searchPlaylists": "Søk i spillelister...",
|
||||
"errorCreating": "Kunne ikke opprette spilleliste",
|
||||
"errorDeleting": "Kunne ikke slette spilleliste",
|
||||
"errorLoading": "Kunne ikke laste spillelister",
|
||||
@@ -1102,15 +1087,15 @@
|
||||
"participantResumed": "${name} gjenopptok",
|
||||
"participantSeeked": "${name} spolet",
|
||||
"participantBuffering": "${name} buffrer",
|
||||
"participantNeedsUpdate": "${name} bruker en eldre appversjon — synkronisering er ikke tilgjengelig",
|
||||
"resumingWithout": "Fortsetter uten ${name}",
|
||||
"waitingForParticipants": "Venter på at andre laster inn...",
|
||||
"waitingForName": "Venter på ${name}...",
|
||||
"recentRooms": "Nylige rom",
|
||||
"renameRoom": "Gi nytt navn til rom",
|
||||
"removeRoom": "Fjern",
|
||||
"guestSwitchUnavailable": "Kunne ikke bytte — server ikke tilgjengelig for synkronisering",
|
||||
"guestSwitchFailed": "Kunne ikke bytte — innhold ble ikke funnet på denne serveren",
|
||||
"participantNeedsUpdate": "${name} bruker en eldre appversjon — synkronisering er ikke tilgjengelig",
|
||||
"resumingWithout": "Fortsetter uten ${name}",
|
||||
"waitingForName": "Venter på ${name}..."
|
||||
"guestSwitchFailed": "Kunne ikke bytte — innhold ble ikke funnet på denne serveren"
|
||||
},
|
||||
"downloads": {
|
||||
"title": "Nedlastinger",
|
||||
@@ -1155,7 +1140,6 @@
|
||||
"customAmount": "Egendefinert antall...",
|
||||
"includeSpecials": "Inkluder spesialepisoder",
|
||||
"howManyEpisodes": "Hvor mange episoder?",
|
||||
"itemsQueued": "${count} elementer i nedlastingskø",
|
||||
"keepSynced": "Hold synkronisert",
|
||||
"downloadOnce": "Last ned én gang",
|
||||
"keepNUnwatched": "Behold ${count} usette",
|
||||
@@ -1204,7 +1188,6 @@
|
||||
"unknownDevice": "Ukjent enhet",
|
||||
"session": {
|
||||
"startingServer": "Starter fjernserver...",
|
||||
"failedToCreate": "Kunne ikke starte fjernserver:",
|
||||
"hostAddress": "Vertsadresse",
|
||||
"connected": "Tilkoblet",
|
||||
"serverRunning": "Fjernserver aktiv",
|
||||
@@ -1265,6 +1248,8 @@
|
||||
"errors": {
|
||||
"noNetworkInterface": "Fant ingen nettverksgrensesnitt",
|
||||
"authenticationFailed": "Autentisering mislyktes",
|
||||
"serverStartFailed": "Kunne ikke starte fjernserveren: ${error}",
|
||||
"commandFailed": "Kunne ikke sende fjernkommando: ${error}",
|
||||
"joinTimedOut": "Tidsavbrudd ved tilkobling til økt",
|
||||
"failedToConnectAnyAddress": "Kunne ikke koble til noen adresse",
|
||||
"connectionLostAfterAttempts": "Tilkobling mistet etter ${attempts} forsøk",
|
||||
@@ -1538,7 +1523,6 @@
|
||||
"quickConnectFailed": "Quick Connect mislyktes: ${error}",
|
||||
"addPlexTitle": "Logg på med Plex",
|
||||
"pinExpired": "PIN-koden gikk ut før pålogging. Prøv igjen.",
|
||||
"duplicatePlexAccount": "Allerede logget inn på Plex. Logg ut for å bytte konto.",
|
||||
"failedToRegisterAccount": "Kunne ikke registrere kontoen: ${error}",
|
||||
"enterJellyfinUrlError": "Oppgi URL-en til Jellyfin-serveren din",
|
||||
"addConnectionTitle": "Legg til tilkobling",
|
||||
|
||||
+40
-56
@@ -3,7 +3,6 @@
|
||||
"title": "Plezy"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "Inloggen",
|
||||
"signInWithPlex": "Inloggen met Plex",
|
||||
"showQRCode": "Toon QR-code",
|
||||
"authenticate": "Authenticeren",
|
||||
@@ -56,10 +55,8 @@
|
||||
"episodeNumberTitle": "Aflevering ${number} - ${title}",
|
||||
"chapterNumber": "Hoofdstuk ${number}",
|
||||
"reconnect": "Opnieuw verbinden",
|
||||
"exit": "Afsluiten",
|
||||
"viewAll": "Alles weergeven",
|
||||
"checkingNetwork": "Netwerk controleren...",
|
||||
"refreshingServers": "Servers vernieuwen...",
|
||||
"loadingServers": "Servers laden...",
|
||||
"connectingToServers": "Verbinden met servers...",
|
||||
"startingOfflineMode": "Offlinemodus starten...",
|
||||
@@ -139,6 +136,12 @@
|
||||
"tvFullCardLayoutDescription": "Gebruik tv-kaarten met alleen afbeeldingen en namen van acteurs als overlay",
|
||||
"focusGlow": "Focusgloed",
|
||||
"focusGlowDescription": "Toon een zachte gloed rond de kaart met focus",
|
||||
"visualEffects": "Visuele effecten",
|
||||
"visualEffectsAuto": "Automatisch",
|
||||
"visualEffectsAutoDescription": "Effecten automatisch verminderen op apparaten met laag vermogen",
|
||||
"visualEffectsFull": "Volledig",
|
||||
"visualEffectsReduced": "Verminderd",
|
||||
"visualEffectsReducedDescription": "Minder animaties en illustraties met lagere resolutie",
|
||||
"hideSpoilers": "Spoilers voor ongekeken afleveringen verbergen",
|
||||
"hideSpoilersDescription": "Vervaag miniaturen en beschrijvingen voor niet-bekeken afleveringen",
|
||||
"playerBackend": "Speler backend",
|
||||
@@ -151,7 +154,7 @@
|
||||
"bufferSizeAuto": "Auto (Aanbevolen)",
|
||||
"bufferSizeWarning": "${heap}MB geheugen beschikbaar. Een buffer van ${size}MB kan afspelen beïnvloeden.",
|
||||
"defaultQualityTitle": "Standaardkwaliteit",
|
||||
"defaultQualityDescription": "Wordt gebruikt bij het starten van de weergave. Lagere waarden verminderen de bandbreedte.",
|
||||
"musicQualityTitle": "Muziekkwaliteit",
|
||||
"subtitleStyling": "Ondertitel opmaak",
|
||||
"subtitleStylingDescription": "Pas ondertitel uiterlijk aan",
|
||||
"smallSkipDuration": "Korte skip duur",
|
||||
@@ -245,10 +248,9 @@
|
||||
"maxVolumePercent": "${percent}%",
|
||||
"discordRichPresence": "Discord Rich Presence",
|
||||
"discordRichPresenceDescription": "Toon op Discord wat je aan het kijken bent",
|
||||
"trakt": "Trakt",
|
||||
"traktDescription": "Kijkgeschiedenis synchroniseren met Trakt",
|
||||
"services": "Services",
|
||||
"servicesDescription": "Verbind Trakt, MyAnimeList, Seerr en meer",
|
||||
"manageLibrariesDescription": "Bibliotheken herordenen en verbergen",
|
||||
"companionRemoteServer": "Companion Remote-server",
|
||||
"companionRemoteServerDescription": "Sta mobiele apparaten op je netwerk toe om deze app te bedienen",
|
||||
"autoPip": "Automatische beeld-in-beeld",
|
||||
@@ -311,7 +313,6 @@
|
||||
"showNavBarLabels": "Navigatiebalk labels tonen",
|
||||
"showNavBarLabelsDescription": "Tekstlabels onder de pictogrammen van de navigatiebalk weergeven",
|
||||
"startupSection": "Opstartsectie",
|
||||
"startupSectionDescription": "Kies welke sectie Plezy opent bij het opstarten",
|
||||
"liveTvDefaultFavorites": "Standaard favoriete zenders",
|
||||
"liveTvDefaultFavoritesDescription": "Toon alleen favoriete zenders bij het openen van Live TV",
|
||||
"display": "Weergave",
|
||||
@@ -322,14 +323,7 @@
|
||||
"player": "Speler",
|
||||
"subtitlesAndConfig": "Ondertitels en configuratie",
|
||||
"seekAndTiming": "Zoeken en timing",
|
||||
"behavior": "Gedrag",
|
||||
"manageLibrariesDescription": "Bibliotheken herordenen en verbergen",
|
||||
"visualEffects": "Visuele effecten",
|
||||
"visualEffectsAuto": "Automatisch",
|
||||
"visualEffectsAutoDescription": "Effecten automatisch verminderen op apparaten met laag vermogen",
|
||||
"visualEffectsFull": "Volledig",
|
||||
"visualEffectsReduced": "Verminderd",
|
||||
"visualEffectsReducedDescription": "Minder animaties en illustraties met lagere resolutie"
|
||||
"behavior": "Gedrag"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Zoek films, series, muziek...",
|
||||
@@ -418,14 +412,11 @@
|
||||
"rateSheet": {
|
||||
"title": "Beoordelen",
|
||||
"server": "Server",
|
||||
"starValue": "${rating} / 5",
|
||||
"scoreValue": "${score} / 10",
|
||||
"setScore": "Score instellen",
|
||||
"favorite": "Favoriet",
|
||||
"favorited": "Toegevoegd aan favorieten",
|
||||
"saved": "Opgeslagen",
|
||||
"notAvailable": "Geen match gevonden",
|
||||
"noConnectedServices": "Verbind een service in Instellingen om daar te beoordelen.",
|
||||
"favorite": "Favoriet",
|
||||
"favorited": "Toegevoegd aan favorieten"
|
||||
"noConnectedServices": "Verbind een service in Instellingen om daar te beoordelen."
|
||||
},
|
||||
"accessibility": {
|
||||
"mediaCardMovie": "${title}, film",
|
||||
@@ -435,7 +426,15 @@
|
||||
"mediaCardWatched": "bekeken",
|
||||
"mediaCardPartiallyWatched": "${percent} procent bekeken",
|
||||
"mediaCardUnwatched": "niet bekeken",
|
||||
"tapToPlay": "Tik om af te spelen"
|
||||
"tapToPlay": "Tik om af te spelen",
|
||||
"decrease": "Verlagen",
|
||||
"increase": "Verhogen",
|
||||
"decreaseValue": "${label} verlagen",
|
||||
"increaseValue": "${label} verhogen",
|
||||
"hue": "Tint",
|
||||
"saturation": "Verzadiging",
|
||||
"brightness": "Helderheid",
|
||||
"hexColor": "Hexkleur"
|
||||
},
|
||||
"tooltips": {
|
||||
"shufflePlay": "Willekeurig afspelen",
|
||||
@@ -481,13 +480,11 @@
|
||||
"settingsButton": "Afspeelinstellingen",
|
||||
"tracksButton": "Audio en ondertitels",
|
||||
"chaptersButton": "Hoofdstukken",
|
||||
"versionsButton": "Videoversies",
|
||||
"versionQualityButton": "Versie en kwaliteit",
|
||||
"versionColumnHeader": "Versie",
|
||||
"qualityColumnHeader": "Kwaliteit",
|
||||
"qualityOriginal": "Origineel",
|
||||
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
||||
"qualityBandwidthEstimate": "~${bitrate} Mbps",
|
||||
"transcodeUnavailableFallback": "Transcoderen niet beschikbaar — originele kwaliteit wordt afgespeeld",
|
||||
"pipButton": "Beeld-in-beeld modus",
|
||||
"aspectRatioButton": "Beeldverhouding",
|
||||
@@ -530,12 +527,7 @@
|
||||
"subtitleDownloadFailed": "Ondertitel downloaden mislukt",
|
||||
"searchLanguages": "Talen zoeken..."
|
||||
},
|
||||
"userStatus": {
|
||||
"admin": "Beheerder",
|
||||
"restricted": "Beperkt",
|
||||
"protected": "Beschermd",
|
||||
"current": "HUIDIG"
|
||||
},
|
||||
"userStatus": {},
|
||||
"messages": {
|
||||
"markedAsWatched": "Gemarkeerd als gekeken",
|
||||
"markedAsUnwatched": "Gemarkeerd als ongekeken",
|
||||
@@ -676,8 +668,7 @@
|
||||
"pinProtectionOptional": "PIN-beveiliging (optioneel)",
|
||||
"pinExplain": "4-cijferige PIN vereist om profielen te wisselen.",
|
||||
"continueButton": "Doorgaan",
|
||||
"pinsDontMatch": "PIN-codes komen niet overeen",
|
||||
"initializeServicesFailed": "Kan profielservices niet initialiseren"
|
||||
"pinsDontMatch": "PIN-codes komen niet overeen"
|
||||
},
|
||||
"connections": {
|
||||
"sectionTitle": "Verbindingen",
|
||||
@@ -692,7 +683,6 @@
|
||||
},
|
||||
"discover": {
|
||||
"title": "Ontdekken",
|
||||
"switchProfile": "Wissel van profiel",
|
||||
"noContentAvailable": "Geen inhoud beschikbaar",
|
||||
"addMediaToLibraries": "Voeg wat media toe aan je bibliotheken",
|
||||
"continueWatching": "Verder kijken",
|
||||
@@ -721,8 +711,6 @@
|
||||
"connectionFailed": "Kan geen verbinding maken met mediaserver",
|
||||
"failedToLoad": "Kon ${context} niet laden: ${error}",
|
||||
"noClientAvailable": "Geen client beschikbaar",
|
||||
"authenticationFailed": "Authenticatie mislukt: ${error}",
|
||||
"couldNotLaunchUrl": "Kon auth URL niet openen",
|
||||
"pleaseEnterToken": "Voer een token in",
|
||||
"invalidToken": "Ongeldig token",
|
||||
"failedToVerifyToken": "Kon token niet verifiëren: ${error}",
|
||||
@@ -749,6 +737,8 @@
|
||||
"allLibrariesHidden": "Alle bibliotheken zijn verborgen",
|
||||
"hiddenLibrariesCount": "Verborgen bibliotheken (${count})",
|
||||
"thisLibraryIsEmpty": "Deze bibliotheek is leeg",
|
||||
"noItemsMatchFilters": "Geen items komen overeen met de actieve filters",
|
||||
"resetFilters": "Filters opnieuw instellen",
|
||||
"all": "Alles",
|
||||
"clearAll": "Alles wissen",
|
||||
"scanLibraryConfirm": "Weet je zeker dat je \"${title}\" wilt scannen?",
|
||||
@@ -804,7 +794,6 @@
|
||||
"communityRating": "Communitybeoordeling",
|
||||
"criticRating": "Criticusbeoordeling",
|
||||
"userRating": "Gebruikersbeoordeling",
|
||||
"lastPlayed": "Laatst afgespeeld",
|
||||
"datePlayed": "Afspeeldatum",
|
||||
"playCount": "Aantal afspelingen",
|
||||
"productionYear": "Productiejaar",
|
||||
@@ -818,9 +807,7 @@
|
||||
"dateShared": "Gedeeld op",
|
||||
"latestEpisodeAirDate": "Laatste afleveringsuitzending",
|
||||
"lastEpisodeDateAdded": "Datum laatst toegevoegde aflevering"
|
||||
},
|
||||
"noItemsMatchFilters": "Geen items komen overeen met de actieve filters",
|
||||
"resetFilters": "Filters opnieuw instellen"
|
||||
}
|
||||
},
|
||||
"about": {
|
||||
"title": "Over",
|
||||
@@ -830,7 +817,6 @@
|
||||
"viewLicensesDescription": "Bekijk licenties van third-party bibliotheken"
|
||||
},
|
||||
"serverSelection": {
|
||||
"allServerConnectionsFailed": "Kon met geen enkele server verbinden. Controleer je netwerk.",
|
||||
"noServersFoundForAccount": "Geen servers gevonden voor ${username} (${email})",
|
||||
"failedToLoadServers": "Kon servers niet laden: ${error}"
|
||||
},
|
||||
@@ -876,10 +862,6 @@
|
||||
"upcomingMovies": "Aankomende films",
|
||||
"upcomingShows": "Aankomende series"
|
||||
},
|
||||
"searchHint": "Zoeken in ${source}",
|
||||
"searchEmpty": "Geen resultaten voor \"${query}\"",
|
||||
"searchPrompt": "Zoek naar films en series op ${source}.",
|
||||
"searchFailed": "Zoeken mislukt. Controleer je verbinding en probeer opnieuw.",
|
||||
"status": {
|
||||
"airing": "Lopend",
|
||||
"ended": "Afgelopen",
|
||||
@@ -897,16 +879,21 @@
|
||||
"watchlistUpdateFailed": "Kon kijklijst niet bijwerken",
|
||||
"notInLibrary": "Niet in je bibliotheek",
|
||||
"inTheseLibraries": "In deze bibliotheken",
|
||||
"availableOn": "Beschikbaar op ${server}",
|
||||
"checkingLibrary": "Je bibliotheek controleren...",
|
||||
"emptyTitle": "Hier is nog niets",
|
||||
"emptyMessage": "Rijen van ${source} verschijnen hier zodra ze inhoud hebben."
|
||||
"emptyMessage": "Rijen van ${source} verschijnen hier zodra ze inhoud hebben.",
|
||||
"searchHint": "Zoeken in ${source}",
|
||||
"searchEmpty": "Geen resultaten voor \"${query}\"",
|
||||
"searchPrompt": "Zoek naar films en series op ${source}.",
|
||||
"searchFailed": "Zoeken mislukt. Controleer je verbinding en probeer opnieuw."
|
||||
},
|
||||
"liveTv": {
|
||||
"title": "Live TV",
|
||||
"guide": "Gids",
|
||||
"noChannels": "Geen zenders beschikbaar",
|
||||
"noDvr": "Geen DVR geconfigureerd op een server",
|
||||
"serverUnavailable": "De live-tv-server is niet beschikbaar.",
|
||||
"serverNotConnected": "De live-tv-server is niet verbonden.",
|
||||
"noPrograms": "Geen programmagegevens beschikbaar",
|
||||
"liveStreamFailed": "Livestream mislukt",
|
||||
"unknownProgram": "Onbekend programma",
|
||||
@@ -942,7 +929,6 @@
|
||||
"scheduledRecordings": "Gepland",
|
||||
"recordingRules": "Opnameregels",
|
||||
"noScheduledRecordings": "Geen geplande opnames",
|
||||
"noRecordingRules": "Nog geen opnameregels",
|
||||
"manageRecording": "Opname beheren",
|
||||
"cancelRecording": "Opname annuleren",
|
||||
"cancelRecordingTitle": "Deze opname annuleren?",
|
||||
@@ -959,7 +945,6 @@
|
||||
"recordingCancelled": "Opname geannuleerd",
|
||||
"recordingRuleDeleted": "Opnameregel verwijderd",
|
||||
"processRecordingRules": "Regels opnieuw evalueren",
|
||||
"loadingRecordings": "Opnames laden...",
|
||||
"recordingInProgress": "Nu aan het opnemen",
|
||||
"recordingsCount": "${count} gepland",
|
||||
"editRule": "Regel bewerken",
|
||||
@@ -973,7 +958,6 @@
|
||||
"title": "Collecties",
|
||||
"collection": "Collectie",
|
||||
"empty": "Collectie is leeg",
|
||||
"unknownLibrarySection": "Kan niet verwijderen: onbekende bibliotheeksectie",
|
||||
"deleteCollection": "Collectie verwijderen",
|
||||
"deleteConfirm": "\"${title}\" verwijderen? Dit kan niet ongedaan worden gemaakt.",
|
||||
"deleted": "Collectie verwijderd",
|
||||
@@ -1013,6 +997,7 @@
|
||||
"itemAdded": "Toegevoegd aan afspeellijst",
|
||||
"itemRemoved": "Verwijderd uit afspeellijst",
|
||||
"selectPlaylist": "Selecteer afspeellijst",
|
||||
"searchPlaylists": "Afspeellijsten zoeken...",
|
||||
"errorCreating": "Fout bij maken afspeellijst",
|
||||
"errorDeleting": "Fout bij verwijderen afspeellijst",
|
||||
"errorLoading": "Fout bij laden afspeellijsten",
|
||||
@@ -1102,15 +1087,15 @@
|
||||
"participantResumed": "${name} heeft hervat",
|
||||
"participantSeeked": "${name} heeft gespoeld",
|
||||
"participantBuffering": "${name} is aan het bufferen",
|
||||
"participantNeedsUpdate": "${name} gebruikt een oudere appversie — synchronisatie niet beschikbaar",
|
||||
"resumingWithout": "Hervatten zonder ${name}",
|
||||
"waitingForParticipants": "Wachten tot anderen geladen zijn...",
|
||||
"waitingForName": "Wachten op ${name}...",
|
||||
"recentRooms": "Recente kamers",
|
||||
"renameRoom": "Kamer hernoemen",
|
||||
"removeRoom": "Verwijderen",
|
||||
"guestSwitchUnavailable": "Kon niet schakelen — server niet beschikbaar voor synchronisatie",
|
||||
"guestSwitchFailed": "Kon niet schakelen — inhoud niet gevonden op deze server",
|
||||
"participantNeedsUpdate": "${name} gebruikt een oudere appversie — synchronisatie niet beschikbaar",
|
||||
"resumingWithout": "Hervatten zonder ${name}",
|
||||
"waitingForName": "Wachten op ${name}..."
|
||||
"guestSwitchFailed": "Kon niet schakelen — inhoud niet gevonden op deze server"
|
||||
},
|
||||
"downloads": {
|
||||
"title": "Downloads",
|
||||
@@ -1155,7 +1140,6 @@
|
||||
"customAmount": "Aangepast aantal...",
|
||||
"includeSpecials": "Specials opnemen",
|
||||
"howManyEpisodes": "Hoeveel afleveringen?",
|
||||
"itemsQueued": "${count} items in downloadwachtrij",
|
||||
"keepSynced": "Gesynchroniseerd houden",
|
||||
"downloadOnce": "Eenmalig downloaden",
|
||||
"keepNUnwatched": "${count} onbekeken behouden",
|
||||
@@ -1204,7 +1188,6 @@
|
||||
"unknownDevice": "Onbekend apparaat",
|
||||
"session": {
|
||||
"startingServer": "Externe server starten...",
|
||||
"failedToCreate": "Kan externe server niet starten:",
|
||||
"hostAddress": "Hostadres",
|
||||
"connected": "Verbonden",
|
||||
"serverRunning": "Externe server actief",
|
||||
@@ -1265,6 +1248,8 @@
|
||||
"errors": {
|
||||
"noNetworkInterface": "Geen netwerkinterface gevonden",
|
||||
"authenticationFailed": "Authenticatie mislukt",
|
||||
"serverStartFailed": "Kan de externe server niet starten: ${error}",
|
||||
"commandFailed": "Kan de externe opdracht niet verzenden: ${error}",
|
||||
"joinTimedOut": "Time-out bij deelnemen aan sessie",
|
||||
"failedToConnectAnyAddress": "Kan met geen enkel adres verbinden",
|
||||
"connectionLostAfterAttempts": "Verbinding verloren na ${attempts} pogingen",
|
||||
@@ -1538,7 +1523,6 @@
|
||||
"quickConnectFailed": "Quick Connect mislukt: ${error}",
|
||||
"addPlexTitle": "Inloggen met Plex",
|
||||
"pinExpired": "PIN verlopen vóór inloggen. Probeer opnieuw.",
|
||||
"duplicatePlexAccount": "Al aangemeld bij Plex. Meld je af om van account te wisselen.",
|
||||
"failedToRegisterAccount": "Account registreren mislukt: ${error}",
|
||||
"enterJellyfinUrlError": "Voer de URL van je Jellyfin-server in",
|
||||
"addConnectionTitle": "Verbinding toevoegen",
|
||||
|
||||
+35
-51
@@ -3,7 +3,6 @@
|
||||
"title": "Plezy"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "Zaloguj się",
|
||||
"signInWithPlex": "Zaloguj się przez Plex",
|
||||
"showQRCode": "Pokaż kod QR",
|
||||
"authenticate": "Uwierzytelnienie",
|
||||
@@ -56,10 +55,8 @@
|
||||
"episodeNumberTitle": "Odcinek ${number} - ${title}",
|
||||
"chapterNumber": "Rozdział ${number}",
|
||||
"reconnect": "Połącz ponownie",
|
||||
"exit": "Wyjdź",
|
||||
"viewAll": "Pokaż wszystko",
|
||||
"checkingNetwork": "Sprawdzanie sieci...",
|
||||
"refreshingServers": "Odświeżanie serwerów...",
|
||||
"loadingServers": "Ładowanie serwerów...",
|
||||
"connectingToServers": "Łączenie z serwerami...",
|
||||
"startingOfflineMode": "Uruchamianie trybu offline...",
|
||||
@@ -139,6 +136,12 @@
|
||||
"tvFullCardLayoutDescription": "Używaj kart TV tylko z obrazem i nałożonymi nazwiskami aktorów",
|
||||
"focusGlow": "Poświata zaznaczenia",
|
||||
"focusGlowDescription": "Wyświetlaj delikatną poświatę wokół zaznaczonej karty",
|
||||
"visualEffects": "Efekty wizualne",
|
||||
"visualEffectsAuto": "Automatycznie",
|
||||
"visualEffectsAutoDescription": "Automatycznie ograniczaj efekty na urządzeniach o niższej wydajności",
|
||||
"visualEffectsFull": "Pełne",
|
||||
"visualEffectsReduced": "Ograniczone",
|
||||
"visualEffectsReducedDescription": "Mniej animacji i grafiki o niższej rozdzielczości",
|
||||
"hideSpoilers": "Ukryj spoilery nieobejrzanych odcinków",
|
||||
"hideSpoilersDescription": "Rozmywaj miniatury i opisy nieobejrzanych odcinków",
|
||||
"playerBackend": "Backend odtwarzacza",
|
||||
@@ -151,7 +154,7 @@
|
||||
"bufferSizeAuto": "Automatyczny (Zalecany)",
|
||||
"bufferSizeWarning": "Dostępna pamięć: ${heap}MB. Bufor ${size}MB może wpłynąć na odtwarzanie.",
|
||||
"defaultQualityTitle": "Domyślna jakość",
|
||||
"defaultQualityDescription": "Używane podczas rozpoczynania odtwarzania. Niższe wartości zmniejszają przepustowość.",
|
||||
"musicQualityTitle": "Jakość muzyki",
|
||||
"subtitleStyling": "Styl napisów",
|
||||
"subtitleStylingDescription": "Dostosuj wygląd napisów",
|
||||
"smallSkipDuration": "Krótki skok",
|
||||
@@ -245,10 +248,9 @@
|
||||
"maxVolumePercent": "${percent}%",
|
||||
"discordRichPresence": "Discord Rich Presence",
|
||||
"discordRichPresenceDescription": "Pokaż, co oglądasz na Discordzie",
|
||||
"trakt": "Trakt",
|
||||
"traktDescription": "Synchronizuj historię oglądania z Trakt",
|
||||
"services": "Usługi",
|
||||
"servicesDescription": "Połącz Trakt, MyAnimeList, Seerr i inne",
|
||||
"manageLibrariesDescription": "Zmieniaj kolejność i ukrywaj biblioteki",
|
||||
"companionRemoteServer": "Serwer zdalnego sterowania",
|
||||
"companionRemoteServerDescription": "Pozwól urządzeniom mobilnym w sieci sterować tą aplikacją",
|
||||
"autoPip": "Automatyczny obraz w obrazie",
|
||||
@@ -311,7 +313,6 @@
|
||||
"showNavBarLabels": "Pokaż etykiety paska nawigacji",
|
||||
"showNavBarLabelsDescription": "Wyświetl tekstowe etykiety pod ikonami paska nawigacji",
|
||||
"startupSection": "Sekcja startowa",
|
||||
"startupSectionDescription": "Wybierz, którą sekcję Plezy otwiera przy uruchomieniu",
|
||||
"liveTvDefaultFavorites": "Domyślnie ulubione kanały",
|
||||
"liveTvDefaultFavoritesDescription": "Pokaż tylko ulubione kanały po otwarciu telewizji na żywo",
|
||||
"display": "Ekran",
|
||||
@@ -322,14 +323,7 @@
|
||||
"player": "Odtwarzacz",
|
||||
"subtitlesAndConfig": "Napisy i konfiguracja",
|
||||
"seekAndTiming": "Przewijanie i czas",
|
||||
"behavior": "Zachowanie",
|
||||
"manageLibrariesDescription": "Zmieniaj kolejność i ukrywaj biblioteki",
|
||||
"visualEffects": "Efekty wizualne",
|
||||
"visualEffectsAuto": "Automatycznie",
|
||||
"visualEffectsAutoDescription": "Automatycznie ograniczaj efekty na urządzeniach o niższej wydajności",
|
||||
"visualEffectsFull": "Pełne",
|
||||
"visualEffectsReduced": "Ograniczone",
|
||||
"visualEffectsReducedDescription": "Mniej animacji i grafiki o niższej rozdzielczości"
|
||||
"behavior": "Zachowanie"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Szukaj filmów, seriali, muzyki...",
|
||||
@@ -418,14 +412,11 @@
|
||||
"rateSheet": {
|
||||
"title": "Oceń",
|
||||
"server": "Serwer",
|
||||
"starValue": "${rating} / 5",
|
||||
"scoreValue": "${score} / 10",
|
||||
"setScore": "Ustaw ocenę",
|
||||
"favorite": "Dodaj do ulubionych",
|
||||
"favorited": "Dodano do ulubionych",
|
||||
"saved": "Zapisano",
|
||||
"notAvailable": "Nie znaleziono dopasowania",
|
||||
"noConnectedServices": "Połącz usługę w Ustawieniach, aby tam oceniać.",
|
||||
"favorite": "Dodaj do ulubionych",
|
||||
"favorited": "Dodano do ulubionych"
|
||||
"noConnectedServices": "Połącz usługę w Ustawieniach, aby tam oceniać."
|
||||
},
|
||||
"accessibility": {
|
||||
"mediaCardMovie": "${title}, film",
|
||||
@@ -435,7 +426,15 @@
|
||||
"mediaCardWatched": "obejrzane",
|
||||
"mediaCardPartiallyWatched": "${percent} procent obejrzane",
|
||||
"mediaCardUnwatched": "nieobejrzane",
|
||||
"tapToPlay": "Dotknij, aby odtworzyć"
|
||||
"tapToPlay": "Dotknij, aby odtworzyć",
|
||||
"decrease": "Zmniejsz",
|
||||
"increase": "Zwiększ",
|
||||
"decreaseValue": "Zmniejsz ${label}",
|
||||
"increaseValue": "Zwiększ ${label}",
|
||||
"hue": "Odcień",
|
||||
"saturation": "Nasycenie",
|
||||
"brightness": "Jasność",
|
||||
"hexColor": "Kolor szesnastkowy"
|
||||
},
|
||||
"tooltips": {
|
||||
"shufflePlay": "Odtwarzanie losowe",
|
||||
@@ -481,13 +480,11 @@
|
||||
"settingsButton": "Ustawienia odtwarzania",
|
||||
"tracksButton": "Audio i napisy",
|
||||
"chaptersButton": "Rozdziały",
|
||||
"versionsButton": "Wersje wideo",
|
||||
"versionQualityButton": "Wersja i jakość",
|
||||
"versionColumnHeader": "Wersja",
|
||||
"qualityColumnHeader": "Jakość",
|
||||
"qualityOriginal": "Oryginalna",
|
||||
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
||||
"qualityBandwidthEstimate": "~${bitrate} Mbps",
|
||||
"transcodeUnavailableFallback": "Transkodowanie niedostępne — odtwarzanie w oryginalnej jakości",
|
||||
"pipButton": "Tryb obraz w obrazie",
|
||||
"aspectRatioButton": "Proporcje",
|
||||
@@ -530,12 +527,7 @@
|
||||
"subtitleDownloadFailed": "Nie udało się pobrać napisów",
|
||||
"searchLanguages": "Szukaj języków..."
|
||||
},
|
||||
"userStatus": {
|
||||
"admin": "Administrator",
|
||||
"restricted": "Ograniczony",
|
||||
"protected": "Chroniony",
|
||||
"current": "BIEŻĄCY"
|
||||
},
|
||||
"userStatus": {},
|
||||
"messages": {
|
||||
"markedAsWatched": "Oznaczono jako obejrzane",
|
||||
"markedAsUnwatched": "Oznaczono jako nieobejrzane",
|
||||
@@ -676,8 +668,7 @@
|
||||
"pinProtectionOptional": "Ochrona PIN-em (opcjonalnie)",
|
||||
"pinExplain": "Do przełączania profili wymagany jest 4-cyfrowy PIN.",
|
||||
"continueButton": "Kontynuuj",
|
||||
"pinsDontMatch": "PIN-y nie pasują",
|
||||
"initializeServicesFailed": "Nie udało się zainicjować usług profilu"
|
||||
"pinsDontMatch": "PIN-y nie pasują"
|
||||
},
|
||||
"connections": {
|
||||
"sectionTitle": "Połączenia",
|
||||
@@ -692,7 +683,6 @@
|
||||
},
|
||||
"discover": {
|
||||
"title": "Odkryj",
|
||||
"switchProfile": "Zmień profil",
|
||||
"noContentAvailable": "Brak dostępnych treści",
|
||||
"addMediaToLibraries": "Dodaj multimedia do swoich bibliotek",
|
||||
"continueWatching": "Kontynuuj oglądanie",
|
||||
@@ -721,8 +711,6 @@
|
||||
"connectionFailed": "Nie można połączyć się z serwerem multimediów",
|
||||
"failedToLoad": "Nie udało się załadować ${context}: ${error}",
|
||||
"noClientAvailable": "Brak dostępnego klienta",
|
||||
"authenticationFailed": "Uwierzytelnienie nie powiodło się: ${error}",
|
||||
"couldNotLaunchUrl": "Nie można otworzyć URL uwierzytelniania",
|
||||
"pleaseEnterToken": "Wprowadź token",
|
||||
"invalidToken": "Nieprawidłowy token",
|
||||
"failedToVerifyToken": "Nie udało się zweryfikować tokena: ${error}",
|
||||
@@ -749,6 +737,8 @@
|
||||
"allLibrariesHidden": "Wszystkie biblioteki są ukryte",
|
||||
"hiddenLibrariesCount": "Ukryte biblioteki (${count})",
|
||||
"thisLibraryIsEmpty": "Ta biblioteka jest pusta",
|
||||
"noItemsMatchFilters": "Żadne elementy nie pasują do aktywnych filtrów",
|
||||
"resetFilters": "Resetuj filtry",
|
||||
"all": "Wszystkie",
|
||||
"clearAll": "Wyczyść wszystko",
|
||||
"scanLibraryConfirm": "Czy na pewno chcesz zeskanować \"${title}\"?",
|
||||
@@ -804,7 +794,6 @@
|
||||
"communityRating": "Ocena społeczności",
|
||||
"criticRating": "Ocena krytyków",
|
||||
"userRating": "Ocena użytkownika",
|
||||
"lastPlayed": "Ostatnio odtwarzane",
|
||||
"datePlayed": "Data odtworzenia",
|
||||
"playCount": "Liczba odtworzeń",
|
||||
"productionYear": "Rok produkcji",
|
||||
@@ -818,9 +807,7 @@
|
||||
"dateShared": "Data udostępnienia",
|
||||
"latestEpisodeAirDate": "Data emisji ostatniego odcinka",
|
||||
"lastEpisodeDateAdded": "Data dodania ostatniego odcinka"
|
||||
},
|
||||
"noItemsMatchFilters": "Żadne elementy nie pasują do aktywnych filtrów",
|
||||
"resetFilters": "Resetuj filtry"
|
||||
}
|
||||
},
|
||||
"about": {
|
||||
"title": "O aplikacji",
|
||||
@@ -830,7 +817,6 @@
|
||||
"viewLicensesDescription": "Zobacz licencje bibliotek zewnętrznych"
|
||||
},
|
||||
"serverSelection": {
|
||||
"allServerConnectionsFailed": "Nie udało się połączyć z żadnym serwerem. Sprawdź sieć.",
|
||||
"noServersFoundForAccount": "Nie znaleziono serwerów dla ${username} (${email})",
|
||||
"failedToLoadServers": "Nie udało się załadować serwerów: ${error}"
|
||||
},
|
||||
@@ -895,7 +881,6 @@
|
||||
"watchlistUpdateFailed": "Nie udało się zaktualizować listy do obejrzenia",
|
||||
"notInLibrary": "Nie ma tego w Twojej bibliotece",
|
||||
"inTheseLibraries": "W tych bibliotekach",
|
||||
"availableOn": "Dostępne na ${server}",
|
||||
"checkingLibrary": "Sprawdzanie Twojej biblioteki...",
|
||||
"emptyTitle": "Jeszcze nic tu nie ma",
|
||||
"emptyMessage": "Wiersze z ${source} pojawią się tutaj, gdy będą zawierać treści.",
|
||||
@@ -909,6 +894,8 @@
|
||||
"guide": "Przewodnik",
|
||||
"noChannels": "Brak dostępnych kanałów",
|
||||
"noDvr": "Brak skonfigurowanego DVR na żadnym serwerze",
|
||||
"serverUnavailable": "Serwer telewizji na żywo jest niedostępny.",
|
||||
"serverNotConnected": "Serwer telewizji na żywo nie jest połączony.",
|
||||
"noPrograms": "Brak danych o programach",
|
||||
"liveStreamFailed": "Transmisja na żywo nie powiodła się",
|
||||
"unknownProgram": "Nieznany program",
|
||||
@@ -944,7 +931,6 @@
|
||||
"scheduledRecordings": "Zaplanowane",
|
||||
"recordingRules": "Reguły nagrywania",
|
||||
"noScheduledRecordings": "Brak zaplanowanych nagrań",
|
||||
"noRecordingRules": "Brak reguł nagrywania",
|
||||
"manageRecording": "Zarządzaj nagraniem",
|
||||
"cancelRecording": "Anuluj nagrywanie",
|
||||
"cancelRecordingTitle": "Anulować to nagrywanie?",
|
||||
@@ -961,7 +947,6 @@
|
||||
"recordingCancelled": "Nagrywanie anulowane",
|
||||
"recordingRuleDeleted": "Reguła nagrywania usunięta",
|
||||
"processRecordingRules": "Ponów ocenę reguł",
|
||||
"loadingRecordings": "Wczytywanie nagrań...",
|
||||
"recordingInProgress": "Trwa nagrywanie",
|
||||
"recordingsCount": "${count} zaplanowanych",
|
||||
"editRule": "Edytuj regułę",
|
||||
@@ -975,7 +960,6 @@
|
||||
"title": "Kolekcje",
|
||||
"collection": "Kolekcja",
|
||||
"empty": "Kolekcja jest pusta",
|
||||
"unknownLibrarySection": "Nie można usunąć: Nieznana sekcja biblioteki",
|
||||
"deleteCollection": "Usuń kolekcję",
|
||||
"deleteConfirm": "Usunąć \"${title}\"? Tego nie można cofnąć.",
|
||||
"deleted": "Kolekcja usunięta",
|
||||
@@ -1015,6 +999,7 @@
|
||||
"itemAdded": "Dodano do playlisty",
|
||||
"itemRemoved": "Usunięto z playlisty",
|
||||
"selectPlaylist": "Wybierz playlistę",
|
||||
"searchPlaylists": "Szukaj playlist...",
|
||||
"errorCreating": "Nie udało się utworzyć playlisty",
|
||||
"errorDeleting": "Nie udało się usunąć playlisty",
|
||||
"errorLoading": "Nie udało się załadować playlist",
|
||||
@@ -1106,15 +1091,15 @@
|
||||
"participantResumed": "${name} wznowił",
|
||||
"participantSeeked": "${name} przewinął",
|
||||
"participantBuffering": "${name} buforuje",
|
||||
"participantNeedsUpdate": "${name} używa starszej wersji aplikacji — synchronizacja jest niedostępna",
|
||||
"resumingWithout": "Wznawianie bez ${name}",
|
||||
"waitingForParticipants": "Oczekiwanie na załadowanie u innych...",
|
||||
"waitingForName": "Oczekiwanie na ${name}...",
|
||||
"recentRooms": "Ostatnie pokoje",
|
||||
"renameRoom": "Zmień nazwę pokoju",
|
||||
"removeRoom": "Usuń",
|
||||
"guestSwitchUnavailable": "Nie można przełączyć — serwer niedostępny do synchronizacji",
|
||||
"guestSwitchFailed": "Nie można przełączyć — nie znaleziono treści na tym serwerze",
|
||||
"participantNeedsUpdate": "${name} używa starszej wersji aplikacji — synchronizacja jest niedostępna",
|
||||
"resumingWithout": "Wznawianie bez ${name}",
|
||||
"waitingForName": "Oczekiwanie na ${name}..."
|
||||
"guestSwitchFailed": "Nie można przełączyć — nie znaleziono treści na tym serwerze"
|
||||
},
|
||||
"downloads": {
|
||||
"title": "Pobrania",
|
||||
@@ -1159,7 +1144,6 @@
|
||||
"customAmount": "Własna ilość...",
|
||||
"includeSpecials": "Uwzględnij odcinki specjalne",
|
||||
"howManyEpisodes": "Ile odcinków?",
|
||||
"itemsQueued": "${count} elementów dodanych do kolejki pobierania",
|
||||
"keepSynced": "Synchronizuj na bieżąco",
|
||||
"downloadOnce": "Pobierz raz",
|
||||
"keepNUnwatched": "Zachowaj ${count} nieobejrzanych",
|
||||
@@ -1208,7 +1192,6 @@
|
||||
"unknownDevice": "Nieznane urządzenie",
|
||||
"session": {
|
||||
"startingServer": "Uruchamianie serwera zdalnego...",
|
||||
"failedToCreate": "Nie udało się uruchomić serwera zdalnego:",
|
||||
"hostAddress": "Adres hosta",
|
||||
"connected": "Połączono",
|
||||
"serverRunning": "Serwer zdalny aktywny",
|
||||
@@ -1269,6 +1252,8 @@
|
||||
"errors": {
|
||||
"noNetworkInterface": "Nie znaleziono interfejsu sieciowego",
|
||||
"authenticationFailed": "Uwierzytelnianie nie powiodło się",
|
||||
"serverStartFailed": "Nie udało się uruchomić serwera zdalnego: ${error}",
|
||||
"commandFailed": "Nie udało się wysłać polecenia zdalnego: ${error}",
|
||||
"joinTimedOut": "Upłynął limit czasu dołączania do sesji",
|
||||
"failedToConnectAnyAddress": "Nie udało się połączyć z żadnym adresem",
|
||||
"connectionLostAfterAttempts": "Połączenie utracone po ${attempts} próbach",
|
||||
@@ -1542,7 +1527,6 @@
|
||||
"quickConnectFailed": "Quick Connect nie powiodło się: ${error}",
|
||||
"addPlexTitle": "Zaloguj się przez Plex",
|
||||
"pinExpired": "PIN wygasł przed zalogowaniem. Spróbuj ponownie.",
|
||||
"duplicatePlexAccount": "Już zalogowano do Plex. Wyloguj się, aby zmienić konto.",
|
||||
"failedToRegisterAccount": "Nie udało się zarejestrować konta: ${error}",
|
||||
"enterJellyfinUrlError": "Podaj URL serwera Jellyfin",
|
||||
"addConnectionTitle": "Dodaj połączenie",
|
||||
|
||||
+35
-51
@@ -3,7 +3,6 @@
|
||||
"title": "Plezy"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "Entrar",
|
||||
"signInWithPlex": "Entrar com Plex",
|
||||
"showQRCode": "Mostrar QR Code",
|
||||
"authenticate": "Autenticar",
|
||||
@@ -56,10 +55,8 @@
|
||||
"episodeNumberTitle": "Episódio ${number} - ${title}",
|
||||
"chapterNumber": "Capítulo ${number}",
|
||||
"reconnect": "Reconectar",
|
||||
"exit": "Sair",
|
||||
"viewAll": "Ver Tudo",
|
||||
"checkingNetwork": "Verificando rede...",
|
||||
"refreshingServers": "Atualizando servidores...",
|
||||
"loadingServers": "Carregando servidores...",
|
||||
"connectingToServers": "Conectando aos servidores...",
|
||||
"startingOfflineMode": "Iniciando modo offline...",
|
||||
@@ -139,6 +136,12 @@
|
||||
"tvFullCardLayoutDescription": "Usar cartões de TV só com imagem e nomes dos atores sobrepostos",
|
||||
"focusGlow": "Brilho de foco",
|
||||
"focusGlowDescription": "Mostrar um brilho suave à volta do cartão em foco",
|
||||
"visualEffects": "Efeitos visuais",
|
||||
"visualEffectsAuto": "Automático",
|
||||
"visualEffectsAutoDescription": "Reduza automaticamente os efeitos em dispositivos de baixo consumo",
|
||||
"visualEffectsFull": "Completos",
|
||||
"visualEffectsReduced": "Reduzidos",
|
||||
"visualEffectsReducedDescription": "Menos animações e artes em menor resolução",
|
||||
"hideSpoilers": "Ocultar Spoilers de Episódios Não Assistidos",
|
||||
"hideSpoilersDescription": "Desfocar miniaturas e descrições de episódios não vistos",
|
||||
"playerBackend": "Backend do Player",
|
||||
@@ -151,7 +154,7 @@
|
||||
"bufferSizeAuto": "Automático (Recomendado)",
|
||||
"bufferSizeWarning": "${heap}MB de memória disponível. Um buffer de ${size}MB pode afetar a reprodução.",
|
||||
"defaultQualityTitle": "Qualidade padrão",
|
||||
"defaultQualityDescription": "Usado ao iniciar a reprodução. Valores menores reduzem a largura de banda.",
|
||||
"musicQualityTitle": "Qualidade da música",
|
||||
"subtitleStyling": "Estilo de Legendas",
|
||||
"subtitleStylingDescription": "Personalizar aparência das legendas",
|
||||
"smallSkipDuration": "Duração do Avanço Curto",
|
||||
@@ -245,10 +248,9 @@
|
||||
"maxVolumePercent": "${percent}%",
|
||||
"discordRichPresence": "Discord Rich Presence",
|
||||
"discordRichPresenceDescription": "Mostrar o que você está assistindo no Discord",
|
||||
"trakt": "Trakt",
|
||||
"traktDescription": "Sincronizar histórico de exibição com Trakt",
|
||||
"services": "Serviços",
|
||||
"servicesDescription": "Conecte Trakt, MyAnimeList, Seerr e mais",
|
||||
"manageLibrariesDescription": "Reordene e oculte bibliotecas",
|
||||
"companionRemoteServer": "Servidor de controlo remoto",
|
||||
"companionRemoteServerDescription": "Permitir que dispositivos móveis na sua rede controlem esta aplicação",
|
||||
"autoPip": "Picture-in-Picture Automático",
|
||||
@@ -311,7 +313,6 @@
|
||||
"showNavBarLabels": "Mostrar Rótulos da Barra de Navegação",
|
||||
"showNavBarLabelsDescription": "Exibir rótulos de texto sob os ícones da barra de navegação",
|
||||
"startupSection": "Seção inicial",
|
||||
"startupSectionDescription": "Escolha qual seção o Plezy abre ao iniciar",
|
||||
"liveTvDefaultFavorites": "Canais favoritos por padrão",
|
||||
"liveTvDefaultFavoritesDescription": "Mostrar apenas canais favoritos ao abrir TV ao vivo",
|
||||
"display": "Tela",
|
||||
@@ -322,14 +323,7 @@
|
||||
"player": "Reprodutor",
|
||||
"subtitlesAndConfig": "Legendas e configuração",
|
||||
"seekAndTiming": "Busca e tempo",
|
||||
"behavior": "Comportamento",
|
||||
"manageLibrariesDescription": "Reordene e oculte bibliotecas",
|
||||
"visualEffects": "Efeitos visuais",
|
||||
"visualEffectsAuto": "Automático",
|
||||
"visualEffectsAutoDescription": "Reduza automaticamente os efeitos em dispositivos de baixo consumo",
|
||||
"visualEffectsFull": "Completos",
|
||||
"visualEffectsReduced": "Reduzidos",
|
||||
"visualEffectsReducedDescription": "Menos animações e artes em menor resolução"
|
||||
"behavior": "Comportamento"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Buscar filmes, séries, músicas...",
|
||||
@@ -418,14 +412,11 @@
|
||||
"rateSheet": {
|
||||
"title": "Avaliar",
|
||||
"server": "Servidor",
|
||||
"starValue": "${rating} / 5",
|
||||
"scoreValue": "${score} / 10",
|
||||
"setScore": "Definir pontuação",
|
||||
"favorite": "Favorito",
|
||||
"favorited": "Adicionado aos favoritos",
|
||||
"saved": "Salvo",
|
||||
"notAvailable": "Nenhuma correspondência encontrada",
|
||||
"noConnectedServices": "Conecte um serviço nas Configurações para avaliar por lá.",
|
||||
"favorite": "Favorito",
|
||||
"favorited": "Adicionado aos favoritos"
|
||||
"noConnectedServices": "Conecte um serviço nas Configurações para avaliar por lá."
|
||||
},
|
||||
"accessibility": {
|
||||
"mediaCardMovie": "${title}, filme",
|
||||
@@ -435,7 +426,15 @@
|
||||
"mediaCardWatched": "assistido",
|
||||
"mediaCardPartiallyWatched": "${percent} por cento assistido",
|
||||
"mediaCardUnwatched": "não assistido",
|
||||
"tapToPlay": "Toque para reproduzir"
|
||||
"tapToPlay": "Toque para reproduzir",
|
||||
"decrease": "Diminuir",
|
||||
"increase": "Aumentar",
|
||||
"decreaseValue": "Diminuir ${label}",
|
||||
"increaseValue": "Aumentar ${label}",
|
||||
"hue": "Matiz",
|
||||
"saturation": "Saturação",
|
||||
"brightness": "Brilho",
|
||||
"hexColor": "Cor hexadecimal"
|
||||
},
|
||||
"tooltips": {
|
||||
"shufflePlay": "Reprodução aleatória",
|
||||
@@ -481,13 +480,11 @@
|
||||
"settingsButton": "Configurações de Reprodução",
|
||||
"tracksButton": "Áudio e Legendas",
|
||||
"chaptersButton": "Capítulos",
|
||||
"versionsButton": "Versões do vídeo",
|
||||
"versionQualityButton": "Versão e qualidade",
|
||||
"versionColumnHeader": "Versão",
|
||||
"qualityColumnHeader": "Qualidade",
|
||||
"qualityOriginal": "Original",
|
||||
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
||||
"qualityBandwidthEstimate": "~${bitrate} Mbps",
|
||||
"transcodeUnavailableFallback": "Transcodificação indisponível — reproduzindo qualidade original",
|
||||
"pipButton": "Modo Picture-in-Picture",
|
||||
"aspectRatioButton": "Proporção",
|
||||
@@ -530,12 +527,7 @@
|
||||
"subtitleDownloadFailed": "Falha ao baixar legenda",
|
||||
"searchLanguages": "Pesquisar idiomas..."
|
||||
},
|
||||
"userStatus": {
|
||||
"admin": "Admin",
|
||||
"restricted": "Restrito",
|
||||
"protected": "Protegido",
|
||||
"current": "ATUAL"
|
||||
},
|
||||
"userStatus": {},
|
||||
"messages": {
|
||||
"markedAsWatched": "Marcado como assistido",
|
||||
"markedAsUnwatched": "Marcado como não assistido",
|
||||
@@ -676,8 +668,7 @@
|
||||
"pinProtectionOptional": "Proteção por PIN (opcional)",
|
||||
"pinExplain": "PIN de 4 dígitos necessário para trocar perfis.",
|
||||
"continueButton": "Continuar",
|
||||
"pinsDontMatch": "Os PINs não correspondem",
|
||||
"initializeServicesFailed": "Falha ao inicializar serviços de perfil"
|
||||
"pinsDontMatch": "Os PINs não correspondem"
|
||||
},
|
||||
"connections": {
|
||||
"sectionTitle": "Conexões",
|
||||
@@ -692,7 +683,6 @@
|
||||
},
|
||||
"discover": {
|
||||
"title": "Descobrir",
|
||||
"switchProfile": "Trocar Perfil",
|
||||
"noContentAvailable": "Nenhum conteúdo disponível",
|
||||
"addMediaToLibraries": "Adicione mídias às suas bibliotecas",
|
||||
"continueWatching": "Continuar Assistindo",
|
||||
@@ -721,8 +711,6 @@
|
||||
"connectionFailed": "Não foi possível conectar ao servidor de mídia",
|
||||
"failedToLoad": "Falha ao carregar ${context}: ${error}",
|
||||
"noClientAvailable": "Nenhum cliente disponível",
|
||||
"authenticationFailed": "Falha na autenticação: ${error}",
|
||||
"couldNotLaunchUrl": "Não foi possível abrir a URL de autenticação",
|
||||
"pleaseEnterToken": "Insira um token",
|
||||
"invalidToken": "Token inválido",
|
||||
"failedToVerifyToken": "Falha ao verificar token: ${error}",
|
||||
@@ -749,6 +737,8 @@
|
||||
"allLibrariesHidden": "Todas as bibliotecas estão ocultas",
|
||||
"hiddenLibrariesCount": "Bibliotecas ocultas (${count})",
|
||||
"thisLibraryIsEmpty": "Esta biblioteca está vazia",
|
||||
"noItemsMatchFilters": "Nenhum item corresponde aos filtros ativos",
|
||||
"resetFilters": "Redefinir filtros",
|
||||
"all": "Todos",
|
||||
"clearAll": "Limpar Tudo",
|
||||
"scanLibraryConfirm": "Tem certeza que deseja escanear \"${title}\"?",
|
||||
@@ -804,7 +794,6 @@
|
||||
"communityRating": "Avaliação da comunidade",
|
||||
"criticRating": "Avaliação da crítica",
|
||||
"userRating": "Avaliação do usuário",
|
||||
"lastPlayed": "Última reprodução",
|
||||
"datePlayed": "Data de reprodução",
|
||||
"playCount": "Reproduções",
|
||||
"productionYear": "Ano de produção",
|
||||
@@ -818,9 +807,7 @@
|
||||
"dateShared": "Data de compartilhamento",
|
||||
"latestEpisodeAirDate": "Última data de exibição do episódio",
|
||||
"lastEpisodeDateAdded": "Data de adição do último episódio"
|
||||
},
|
||||
"noItemsMatchFilters": "Nenhum item corresponde aos filtros ativos",
|
||||
"resetFilters": "Redefinir filtros"
|
||||
}
|
||||
},
|
||||
"about": {
|
||||
"title": "Sobre",
|
||||
@@ -830,7 +817,6 @@
|
||||
"viewLicensesDescription": "Ver licenças de bibliotecas de terceiros"
|
||||
},
|
||||
"serverSelection": {
|
||||
"allServerConnectionsFailed": "Não foi possível conectar a nenhum servidor. Verifique sua rede.",
|
||||
"noServersFoundForAccount": "Nenhum servidor encontrado para ${username} (${email})",
|
||||
"failedToLoadServers": "Falha ao carregar servidores: ${error}"
|
||||
},
|
||||
@@ -893,7 +879,6 @@
|
||||
"watchlistUpdateFailed": "Não foi possível atualizar a lista para ver",
|
||||
"notInLibrary": "Não está na sua biblioteca",
|
||||
"inTheseLibraries": "Nestas bibliotecas",
|
||||
"availableOn": "Disponível em ${server}",
|
||||
"checkingLibrary": "Verificando a sua biblioteca...",
|
||||
"emptyTitle": "Ainda não há nada aqui",
|
||||
"emptyMessage": "As linhas de ${source} aparecerão aqui quando tiverem conteúdo.",
|
||||
@@ -907,6 +892,8 @@
|
||||
"guide": "Guia",
|
||||
"noChannels": "Nenhum canal disponível",
|
||||
"noDvr": "Nenhum DVR configurado em nenhum servidor",
|
||||
"serverUnavailable": "O servidor de TV em direto não está disponível.",
|
||||
"serverNotConnected": "O servidor de TV em direto não está ligado.",
|
||||
"noPrograms": "Nenhum dado de programação disponível",
|
||||
"liveStreamFailed": "Falha no stream ao vivo",
|
||||
"unknownProgram": "Programa desconhecido",
|
||||
@@ -942,7 +929,6 @@
|
||||
"scheduledRecordings": "Agendadas",
|
||||
"recordingRules": "Regras de gravação",
|
||||
"noScheduledRecordings": "Sem gravações agendadas",
|
||||
"noRecordingRules": "Sem regras de gravação",
|
||||
"manageRecording": "Gerenciar gravação",
|
||||
"cancelRecording": "Cancelar gravação",
|
||||
"cancelRecordingTitle": "Cancelar esta gravação?",
|
||||
@@ -959,7 +945,6 @@
|
||||
"recordingCancelled": "Gravação cancelada",
|
||||
"recordingRuleDeleted": "Regra de gravação excluída",
|
||||
"processRecordingRules": "Reavaliar regras",
|
||||
"loadingRecordings": "Carregando gravações...",
|
||||
"recordingInProgress": "Gravando agora",
|
||||
"recordingsCount": "${count} agendadas",
|
||||
"editRule": "Editar regra",
|
||||
@@ -973,7 +958,6 @@
|
||||
"title": "Coleções",
|
||||
"collection": "Coleção",
|
||||
"empty": "A coleção está vazia",
|
||||
"unknownLibrarySection": "Não é possível excluir: Seção de biblioteca desconhecida",
|
||||
"deleteCollection": "Excluir Coleção",
|
||||
"deleteConfirm": "Excluir \"${title}\"? Não pode ser desfeito.",
|
||||
"deleted": "Coleção excluída",
|
||||
@@ -1013,6 +997,7 @@
|
||||
"itemAdded": "Adicionado à playlist",
|
||||
"itemRemoved": "Removido da playlist",
|
||||
"selectPlaylist": "Selecionar Playlist",
|
||||
"searchPlaylists": "Pesquisar playlists...",
|
||||
"errorCreating": "Falha ao criar playlist",
|
||||
"errorDeleting": "Falha ao excluir playlist",
|
||||
"errorLoading": "Falha ao carregar playlists",
|
||||
@@ -1102,15 +1087,15 @@
|
||||
"participantResumed": "${name} retomou",
|
||||
"participantSeeked": "${name} avançou",
|
||||
"participantBuffering": "${name} está carregando",
|
||||
"participantNeedsUpdate": "${name} está em uma versão mais antiga do aplicativo — sincronização indisponível",
|
||||
"resumingWithout": "Retomando sem ${name}",
|
||||
"waitingForParticipants": "Aguardando outros carregarem...",
|
||||
"waitingForName": "Aguardando ${name}...",
|
||||
"recentRooms": "Salas recentes",
|
||||
"renameRoom": "Renomear sala",
|
||||
"removeRoom": "Remover",
|
||||
"guestSwitchUnavailable": "Não foi possível trocar — servidor indisponível para sincronização",
|
||||
"guestSwitchFailed": "Não foi possível trocar — conteúdo não encontrado neste servidor",
|
||||
"participantNeedsUpdate": "${name} está em uma versão mais antiga do aplicativo — sincronização indisponível",
|
||||
"resumingWithout": "Retomando sem ${name}",
|
||||
"waitingForName": "Aguardando ${name}..."
|
||||
"guestSwitchFailed": "Não foi possível trocar — conteúdo não encontrado neste servidor"
|
||||
},
|
||||
"downloads": {
|
||||
"title": "Downloads",
|
||||
@@ -1155,7 +1140,6 @@
|
||||
"customAmount": "Quantidade personalizada...",
|
||||
"includeSpecials": "Incluir especiais",
|
||||
"howManyEpisodes": "Quantos episódios?",
|
||||
"itemsQueued": "${count} itens na fila de download",
|
||||
"keepSynced": "Manter sincronizado",
|
||||
"downloadOnce": "Baixar uma vez",
|
||||
"keepNUnwatched": "Manter ${count} não assistidos",
|
||||
@@ -1204,7 +1188,6 @@
|
||||
"unknownDevice": "Dispositivo desconhecido",
|
||||
"session": {
|
||||
"startingServer": "A iniciar servidor remoto...",
|
||||
"failedToCreate": "Falha ao iniciar o servidor remoto:",
|
||||
"hostAddress": "Endereço do host",
|
||||
"connected": "Conectado",
|
||||
"serverRunning": "Servidor remoto ativo",
|
||||
@@ -1265,6 +1248,8 @@
|
||||
"errors": {
|
||||
"noNetworkInterface": "Nenhuma interface de rede encontrada",
|
||||
"authenticationFailed": "Falha na autenticação",
|
||||
"serverStartFailed": "Falha ao iniciar o servidor remoto: ${error}",
|
||||
"commandFailed": "Falha ao enviar o comando remoto: ${error}",
|
||||
"joinTimedOut": "Tempo esgotado ao entrar na sessão",
|
||||
"failedToConnectAnyAddress": "Falha ao conectar a qualquer endereço",
|
||||
"connectionLostAfterAttempts": "Conexão perdida após ${attempts} tentativas",
|
||||
@@ -1538,7 +1523,6 @@
|
||||
"quickConnectFailed": "Quick Connect falhou: ${error}",
|
||||
"addPlexTitle": "Entrar com Plex",
|
||||
"pinExpired": "O PIN expirou antes do login. Tente novamente.",
|
||||
"duplicatePlexAccount": "Você já entrou no Plex. Saia para trocar de conta.",
|
||||
"failedToRegisterAccount": "Falha ao registrar a conta: ${error}",
|
||||
"enterJellyfinUrlError": "Insira a URL do seu servidor Jellyfin",
|
||||
"addConnectionTitle": "Adicionar conexão",
|
||||
|
||||
+35
-51
@@ -3,7 +3,6 @@
|
||||
"title": "Plezy"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "Войти",
|
||||
"signInWithPlex": "Войти через Plex",
|
||||
"showQRCode": "Показать QR-код",
|
||||
"authenticate": "Аутентификация",
|
||||
@@ -56,10 +55,8 @@
|
||||
"episodeNumberTitle": "Эпизод ${number} - ${title}",
|
||||
"chapterNumber": "Глава ${number}",
|
||||
"reconnect": "Переподключить",
|
||||
"exit": "Выход",
|
||||
"viewAll": "Показать все",
|
||||
"checkingNetwork": "Проверка сети...",
|
||||
"refreshingServers": "Обновление серверов...",
|
||||
"loadingServers": "Загрузка серверов...",
|
||||
"connectingToServers": "Подключение к серверам...",
|
||||
"startingOfflineMode": "Запуск автономного режима...",
|
||||
@@ -139,6 +136,12 @@
|
||||
"tvFullCardLayoutDescription": "Использовать TV-карточки только с изображением и именами актёров поверх него",
|
||||
"focusGlow": "Свечение при фокусе",
|
||||
"focusGlowDescription": "Показывать мягкое свечение вокруг карточки в фокусе",
|
||||
"visualEffects": "Визуальные эффекты",
|
||||
"visualEffectsAuto": "Автоматически",
|
||||
"visualEffectsAutoDescription": "Автоматически уменьшать эффекты на маломощных устройствах",
|
||||
"visualEffectsFull": "Полные",
|
||||
"visualEffectsReduced": "Уменьшенные",
|
||||
"visualEffectsReducedDescription": "Меньше анимаций и графика с более низким разрешением",
|
||||
"hideSpoilers": "Скрыть спойлеры непросмотренных эпизодов",
|
||||
"hideSpoilersDescription": "Размывать миниатюры и описания непросмотренных серий",
|
||||
"playerBackend": "Бэкенд плеера",
|
||||
@@ -151,7 +154,7 @@
|
||||
"bufferSizeAuto": "Авто (Рекомендуется)",
|
||||
"bufferSizeWarning": "Доступно памяти: ${heap}MB. Буфер ${size}MB может повлиять на воспроизведение.",
|
||||
"defaultQualityTitle": "Качество по умолчанию",
|
||||
"defaultQualityDescription": "Используется при запуске воспроизведения. Более низкие значения снижают пропускную способность.",
|
||||
"musicQualityTitle": "Качество музыки",
|
||||
"subtitleStyling": "Стиль субтитров",
|
||||
"subtitleStylingDescription": "Настроить внешний вид субтитров",
|
||||
"smallSkipDuration": "Малая перемотка",
|
||||
@@ -245,10 +248,9 @@
|
||||
"maxVolumePercent": "${percent}%",
|
||||
"discordRichPresence": "Discord Rich Presence",
|
||||
"discordRichPresenceDescription": "Показывать, что вы смотрите, в Discord",
|
||||
"trakt": "Trakt",
|
||||
"traktDescription": "Синхронизировать историю просмотров с Trakt",
|
||||
"services": "Сервисы",
|
||||
"servicesDescription": "Подключите Trakt, MyAnimeList, Seerr и другие",
|
||||
"manageLibrariesDescription": "Изменять порядок и скрывать библиотеки",
|
||||
"companionRemoteServer": "Сервер удалённого управления",
|
||||
"companionRemoteServerDescription": "Разрешить мобильным устройствам в сети управлять этим приложением",
|
||||
"autoPip": "Автоматический «картинка в картинке»",
|
||||
@@ -311,7 +313,6 @@
|
||||
"showNavBarLabels": "Показывать подписи панели навигации",
|
||||
"showNavBarLabelsDescription": "Отображать текстовые подписи под иконками панели навигации",
|
||||
"startupSection": "Начальный раздел",
|
||||
"startupSectionDescription": "Выберите, какой раздел Plezy открывает при запуске",
|
||||
"liveTvDefaultFavorites": "Избранные каналы по умолчанию",
|
||||
"liveTvDefaultFavoritesDescription": "Показывать только избранные каналы при открытии ТВ",
|
||||
"display": "Экран",
|
||||
@@ -322,14 +323,7 @@
|
||||
"player": "Плеер",
|
||||
"subtitlesAndConfig": "Субтитры и конфигурация",
|
||||
"seekAndTiming": "Перемотка и время",
|
||||
"behavior": "Поведение",
|
||||
"manageLibrariesDescription": "Изменять порядок и скрывать библиотеки",
|
||||
"visualEffects": "Визуальные эффекты",
|
||||
"visualEffectsAuto": "Автоматически",
|
||||
"visualEffectsAutoDescription": "Автоматически уменьшать эффекты на маломощных устройствах",
|
||||
"visualEffectsFull": "Полные",
|
||||
"visualEffectsReduced": "Уменьшенные",
|
||||
"visualEffectsReducedDescription": "Меньше анимаций и графика с более низким разрешением"
|
||||
"behavior": "Поведение"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Поиск фильмов, сериалов, музыки...",
|
||||
@@ -418,14 +412,11 @@
|
||||
"rateSheet": {
|
||||
"title": "Оценить",
|
||||
"server": "Сервер",
|
||||
"starValue": "${rating} / 5",
|
||||
"scoreValue": "${score} / 10",
|
||||
"setScore": "Установить оценку",
|
||||
"favorite": "Добавить в избранное",
|
||||
"favorited": "Добавлено в избранное",
|
||||
"saved": "Сохранено",
|
||||
"notAvailable": "Совпадений не найдено",
|
||||
"noConnectedServices": "Подключите сервис в настройках, чтобы оценивать здесь.",
|
||||
"favorite": "Добавить в избранное",
|
||||
"favorited": "Добавлено в избранное"
|
||||
"noConnectedServices": "Подключите сервис в настройках, чтобы оценивать здесь."
|
||||
},
|
||||
"accessibility": {
|
||||
"mediaCardMovie": "${title}, фильм",
|
||||
@@ -435,7 +426,15 @@
|
||||
"mediaCardWatched": "просмотрено",
|
||||
"mediaCardPartiallyWatched": "просмотрено ${percent} процентов",
|
||||
"mediaCardUnwatched": "не просмотрено",
|
||||
"tapToPlay": "Нажмите для воспроизведения"
|
||||
"tapToPlay": "Нажмите для воспроизведения",
|
||||
"decrease": "Уменьшить",
|
||||
"increase": "Увеличить",
|
||||
"decreaseValue": "Уменьшить ${label}",
|
||||
"increaseValue": "Увеличить ${label}",
|
||||
"hue": "Цветовой тон",
|
||||
"saturation": "Насыщенность",
|
||||
"brightness": "Яркость",
|
||||
"hexColor": "Шестнадцатеричный цвет"
|
||||
},
|
||||
"tooltips": {
|
||||
"shufflePlay": "Случайное воспроизведение",
|
||||
@@ -481,13 +480,11 @@
|
||||
"settingsButton": "Настройки воспроизведения",
|
||||
"tracksButton": "Аудио и субтитры",
|
||||
"chaptersButton": "Главы",
|
||||
"versionsButton": "Версии видео",
|
||||
"versionQualityButton": "Версия и качество",
|
||||
"versionColumnHeader": "Версия",
|
||||
"qualityColumnHeader": "Качество",
|
||||
"qualityOriginal": "Оригинал",
|
||||
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
||||
"qualityBandwidthEstimate": "~${bitrate} Mbps",
|
||||
"transcodeUnavailableFallback": "Транскодирование недоступно — воспроизведение в оригинальном качестве",
|
||||
"pipButton": "Режим «картинка в картинке»",
|
||||
"aspectRatioButton": "Соотношение сторон",
|
||||
@@ -530,12 +527,7 @@
|
||||
"subtitleDownloadFailed": "Не удалось загрузить субтитры",
|
||||
"searchLanguages": "Поиск языков..."
|
||||
},
|
||||
"userStatus": {
|
||||
"admin": "Администратор",
|
||||
"restricted": "Ограниченный",
|
||||
"protected": "Защищённый",
|
||||
"current": "ТЕКУЩИЙ"
|
||||
},
|
||||
"userStatus": {},
|
||||
"messages": {
|
||||
"markedAsWatched": "Отмечено как просмотренное",
|
||||
"markedAsUnwatched": "Отмечено как непросмотренное",
|
||||
@@ -676,8 +668,7 @@
|
||||
"pinProtectionOptional": "Защита PIN-кодом (необязательно)",
|
||||
"pinExplain": "Для переключения профилей нужен 4-значный PIN.",
|
||||
"continueButton": "Продолжить",
|
||||
"pinsDontMatch": "PIN-коды не совпадают",
|
||||
"initializeServicesFailed": "Не удалось инициализировать службы профиля"
|
||||
"pinsDontMatch": "PIN-коды не совпадают"
|
||||
},
|
||||
"connections": {
|
||||
"sectionTitle": "Подключения",
|
||||
@@ -692,7 +683,6 @@
|
||||
},
|
||||
"discover": {
|
||||
"title": "Обзор",
|
||||
"switchProfile": "Сменить профиль",
|
||||
"noContentAvailable": "Контент недоступен",
|
||||
"addMediaToLibraries": "Добавьте медиафайлы в ваши библиотеки",
|
||||
"continueWatching": "Продолжить просмотр",
|
||||
@@ -721,8 +711,6 @@
|
||||
"connectionFailed": "Не удалось подключиться к медиасерверу",
|
||||
"failedToLoad": "Не удалось загрузить ${context}: ${error}",
|
||||
"noClientAvailable": "Клиент недоступен",
|
||||
"authenticationFailed": "Ошибка аутентификации: ${error}",
|
||||
"couldNotLaunchUrl": "Не удалось открыть URL аутентификации",
|
||||
"pleaseEnterToken": "Введите токен",
|
||||
"invalidToken": "Недействительный токен",
|
||||
"failedToVerifyToken": "Не удалось проверить токен: ${error}",
|
||||
@@ -749,6 +737,8 @@
|
||||
"allLibrariesHidden": "Все библиотеки скрыты",
|
||||
"hiddenLibrariesCount": "Скрытые библиотеки (${count})",
|
||||
"thisLibraryIsEmpty": "Эта библиотека пуста",
|
||||
"noItemsMatchFilters": "Нет элементов, соответствующих активным фильтрам",
|
||||
"resetFilters": "Сбросить фильтры",
|
||||
"all": "Все",
|
||||
"clearAll": "Очистить все",
|
||||
"scanLibraryConfirm": "Вы уверены, что хотите сканировать \"${title}\"?",
|
||||
@@ -804,7 +794,6 @@
|
||||
"communityRating": "Оценка сообщества",
|
||||
"criticRating": "Оценка критиков",
|
||||
"userRating": "Пользовательская оценка",
|
||||
"lastPlayed": "Последний просмотр",
|
||||
"datePlayed": "Дата просмотра",
|
||||
"playCount": "Количество просмотров",
|
||||
"productionYear": "Год производства",
|
||||
@@ -818,9 +807,7 @@
|
||||
"dateShared": "Дата открытия доступа",
|
||||
"latestEpisodeAirDate": "Дата выхода последнего эпизода",
|
||||
"lastEpisodeDateAdded": "Дата добавления последнего эпизода"
|
||||
},
|
||||
"noItemsMatchFilters": "Нет элементов, соответствующих активным фильтрам",
|
||||
"resetFilters": "Сбросить фильтры"
|
||||
}
|
||||
},
|
||||
"about": {
|
||||
"title": "О приложении",
|
||||
@@ -830,7 +817,6 @@
|
||||
"viewLicensesDescription": "Просмотр лицензий сторонних библиотек"
|
||||
},
|
||||
"serverSelection": {
|
||||
"allServerConnectionsFailed": "Не удалось подключиться ни к одному серверу. Проверьте сеть.",
|
||||
"noServersFoundForAccount": "Серверы не найдены для ${username} (${email})",
|
||||
"failedToLoadServers": "Не удалось загрузить серверы: ${error}"
|
||||
},
|
||||
@@ -895,7 +881,6 @@
|
||||
"watchlistUpdateFailed": "Не удалось обновить список для просмотра",
|
||||
"notInLibrary": "Нет в вашей библиотеке",
|
||||
"inTheseLibraries": "В этих библиотеках",
|
||||
"availableOn": "Доступно на ${server}",
|
||||
"checkingLibrary": "Проверка вашей библиотеки...",
|
||||
"emptyTitle": "Здесь пока ничего нет",
|
||||
"emptyMessage": "Строки из ${source} появятся здесь, когда в них будет контент.",
|
||||
@@ -909,6 +894,8 @@
|
||||
"guide": "Программа",
|
||||
"noChannels": "Нет доступных каналов",
|
||||
"noDvr": "DVR не настроен ни на одном сервере",
|
||||
"serverUnavailable": "Сервер прямого эфира недоступен.",
|
||||
"serverNotConnected": "Сервер прямого эфира не подключён.",
|
||||
"noPrograms": "Нет данных о программах",
|
||||
"liveStreamFailed": "Не удалось запустить прямой эфир",
|
||||
"unknownProgram": "Неизвестная программа",
|
||||
@@ -944,7 +931,6 @@
|
||||
"scheduledRecordings": "Запланировано",
|
||||
"recordingRules": "Правила записи",
|
||||
"noScheduledRecordings": "Нет запланированных записей",
|
||||
"noRecordingRules": "Правил записи пока нет",
|
||||
"manageRecording": "Управление записью",
|
||||
"cancelRecording": "Отменить запись",
|
||||
"cancelRecordingTitle": "Отменить эту запись?",
|
||||
@@ -961,7 +947,6 @@
|
||||
"recordingCancelled": "Запись отменена",
|
||||
"recordingRuleDeleted": "Правило записи удалено",
|
||||
"processRecordingRules": "Пересчитать правила",
|
||||
"loadingRecordings": "Загрузка записей...",
|
||||
"recordingInProgress": "Идёт запись",
|
||||
"recordingsCount": "Запланировано: ${count}",
|
||||
"editRule": "Изменить правило",
|
||||
@@ -975,7 +960,6 @@
|
||||
"title": "Коллекции",
|
||||
"collection": "Коллекция",
|
||||
"empty": "Коллекция пуста",
|
||||
"unknownLibrarySection": "Невозможно удалить: неизвестный раздел библиотеки",
|
||||
"deleteCollection": "Удалить коллекцию",
|
||||
"deleteConfirm": "Удалить \"${title}\"? Это нельзя отменить.",
|
||||
"deleted": "Коллекция удалена",
|
||||
@@ -1015,6 +999,7 @@
|
||||
"itemAdded": "Добавлено в плейлист",
|
||||
"itemRemoved": "Удалено из плейлиста",
|
||||
"selectPlaylist": "Выбрать плейлист",
|
||||
"searchPlaylists": "Поиск плейлистов...",
|
||||
"errorCreating": "Не удалось создать плейлист",
|
||||
"errorDeleting": "Не удалось удалить плейлист",
|
||||
"errorLoading": "Не удалось загрузить плейлисты",
|
||||
@@ -1106,15 +1091,15 @@
|
||||
"participantResumed": "${name} возобновил",
|
||||
"participantSeeked": "${name} перемотал",
|
||||
"participantBuffering": "${name} буферизует",
|
||||
"participantNeedsUpdate": "${name} использует старую версию приложения — синхронизация недоступна",
|
||||
"resumingWithout": "Возобновление без ${name}",
|
||||
"waitingForParticipants": "Ожидание загрузки у других...",
|
||||
"waitingForName": "Ожидание ${name}...",
|
||||
"recentRooms": "Недавние комнаты",
|
||||
"renameRoom": "Переименовать комнату",
|
||||
"removeRoom": "Удалить",
|
||||
"guestSwitchUnavailable": "Не удалось переключиться — сервер недоступен для синхронизации",
|
||||
"guestSwitchFailed": "Не удалось переключиться — содержимое не найдено на этом сервере",
|
||||
"participantNeedsUpdate": "${name} использует старую версию приложения — синхронизация недоступна",
|
||||
"resumingWithout": "Возобновление без ${name}",
|
||||
"waitingForName": "Ожидание ${name}..."
|
||||
"guestSwitchFailed": "Не удалось переключиться — содержимое не найдено на этом сервере"
|
||||
},
|
||||
"downloads": {
|
||||
"title": "Загрузки",
|
||||
@@ -1159,7 +1144,6 @@
|
||||
"customAmount": "Указать количество...",
|
||||
"includeSpecials": "Включить спецвыпуски",
|
||||
"howManyEpisodes": "Сколько эпизодов?",
|
||||
"itemsQueued": "${count} элементов добавлено в очередь загрузки",
|
||||
"keepSynced": "Синхронизировать",
|
||||
"downloadOnce": "Скачать один раз",
|
||||
"keepNUnwatched": "Хранить ${count} непросмотренных",
|
||||
@@ -1208,7 +1192,6 @@
|
||||
"unknownDevice": "Неизвестное устройство",
|
||||
"session": {
|
||||
"startingServer": "Запуск удалённого сервера...",
|
||||
"failedToCreate": "Не удалось запустить удалённый сервер:",
|
||||
"hostAddress": "Адрес хоста",
|
||||
"connected": "Подключено",
|
||||
"serverRunning": "Удалённый сервер активен",
|
||||
@@ -1269,6 +1252,8 @@
|
||||
"errors": {
|
||||
"noNetworkInterface": "Сетевой интерфейс не найден",
|
||||
"authenticationFailed": "Ошибка аутентификации",
|
||||
"serverStartFailed": "Не удалось запустить удалённый сервер: ${error}",
|
||||
"commandFailed": "Не удалось отправить удалённую команду: ${error}",
|
||||
"joinTimedOut": "Время подключения к сеансу истекло",
|
||||
"failedToConnectAnyAddress": "Не удалось подключиться ни к одному адресу",
|
||||
"connectionLostAfterAttempts": "Соединение потеряно после ${attempts} попыток",
|
||||
@@ -1542,7 +1527,6 @@
|
||||
"quickConnectFailed": "Quick Connect не удался: ${error}",
|
||||
"addPlexTitle": "Войти через Plex",
|
||||
"pinExpired": "Срок действия PIN истёк до входа. Попробуйте снова.",
|
||||
"duplicatePlexAccount": "В Plex уже выполнен вход. Выйдите, чтобы сменить аккаунт.",
|
||||
"failedToRegisterAccount": "Не удалось зарегистрировать учётную запись: ${error}",
|
||||
"enterJellyfinUrlError": "Введите URL вашего сервера Jellyfin",
|
||||
"addConnectionTitle": "Добавить подключение",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/// To regenerate, run: `dart run slang`
|
||||
///
|
||||
/// Locales: 16
|
||||
/// Strings: 22708 (1419 per locale)
|
||||
/// Strings: 22466 (1404 per locale)
|
||||
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: type=lint, unused_import
|
||||
|
||||
+60
-100
@@ -53,7 +53,6 @@ class TranslationsBg extends Translations with BaseTranslations<AppLocale, Trans
|
||||
@override late final _TranslationsAccessibilityBg accessibility = _TranslationsAccessibilityBg._(_root);
|
||||
@override late final _TranslationsTooltipsBg tooltips = _TranslationsTooltipsBg._(_root);
|
||||
@override late final _TranslationsVideoControlsBg videoControls = _TranslationsVideoControlsBg._(_root);
|
||||
@override late final _TranslationsUserStatusBg userStatus = _TranslationsUserStatusBg._(_root);
|
||||
@override late final _TranslationsMessagesBg messages = _TranslationsMessagesBg._(_root);
|
||||
@override late final _TranslationsSubtitlingStylingBg subtitlingStyling = _TranslationsSubtitlingStylingBg._(_root);
|
||||
@override late final _TranslationsMpvConfigBg mpvConfig = _TranslationsMpvConfigBg._(_root);
|
||||
@@ -107,7 +106,6 @@ class _TranslationsAuthBg extends TranslationsAuthEn {
|
||||
final TranslationsBg _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get signIn => 'Вход';
|
||||
@override String get signInWithPlex => 'Вход с Plex';
|
||||
@override String get showQRCode => 'Покажи QR код';
|
||||
@override String get authenticate => 'Удостовери';
|
||||
@@ -167,10 +165,8 @@ class _TranslationsCommonBg extends TranslationsCommonEn {
|
||||
@override String episodeNumberTitle({required Object number, required Object title}) => 'Епизод ${number} - ${title}';
|
||||
@override String chapterNumber({required Object number}) => 'Глава ${number}';
|
||||
@override String get reconnect => 'Свържи отново';
|
||||
@override String get exit => 'Изход';
|
||||
@override String get viewAll => 'Виж всички';
|
||||
@override String get checkingNetwork => 'Проверка на мрежата...';
|
||||
@override String get refreshingServers => 'Опресняване на сървърите...';
|
||||
@override String get loadingServers => 'Зареждане на сървърите...';
|
||||
@override String get connectingToServers => 'Свързване със сървърите...';
|
||||
@override String get startingOfflineMode => 'Стартиране на офлайн режим...';
|
||||
@@ -271,6 +267,12 @@ class _TranslationsSettingsBg extends TranslationsSettingsEn {
|
||||
@override String get tvFullCardLayoutDescription => 'Използвай TV карти само с изображения, с насложени имена на актьорите';
|
||||
@override String get focusGlow => 'Сияние при фокус';
|
||||
@override String get focusGlowDescription => 'Показвай меко сияние около фокусираната карта';
|
||||
@override String get visualEffects => 'Визуални ефекти';
|
||||
@override String get visualEffectsAuto => 'Автоматично';
|
||||
@override String get visualEffectsAutoDescription => 'Автоматично намалявай ефектите на по-слаби устройства';
|
||||
@override String get visualEffectsFull => 'Пълни';
|
||||
@override String get visualEffectsReduced => 'Намалени';
|
||||
@override String get visualEffectsReducedDescription => 'По-малко анимации и изображения с по-ниска резолюция';
|
||||
@override String get hideSpoilers => 'Скривай спойлери за негледани епизоди';
|
||||
@override String get hideSpoilersDescription => 'Замазвай миниатюри и описания за негледани епизоди';
|
||||
@override String get playerBackend => 'Енджин на плеъра';
|
||||
@@ -283,7 +285,7 @@ class _TranslationsSettingsBg extends TranslationsSettingsEn {
|
||||
@override String get bufferSizeAuto => 'Автоматично (препоръчително)';
|
||||
@override String bufferSizeWarning({required Object heap, required Object size}) => 'Налична памет ${heap}MB. Буфер ${size}MB може да повлияе на възпроизвеждането.';
|
||||
@override String get defaultQualityTitle => 'Качество по подразбиране';
|
||||
@override String get defaultQualityDescription => 'Използва се при стартиране на възпроизвеждане. По-ниските стойности намаляват трафика.';
|
||||
@override String get musicQualityTitle => 'Качество на музиката';
|
||||
@override String get subtitleStyling => 'Стил на субтитрите';
|
||||
@override String get subtitleStylingDescription => 'Настройване на вида на субтитрите';
|
||||
@override String get smallSkipDuration => 'Малко прескачане';
|
||||
@@ -377,10 +379,9 @@ class _TranslationsSettingsBg extends TranslationsSettingsEn {
|
||||
@override String maxVolumePercent({required Object percent}) => '${percent}%';
|
||||
@override String get discordRichPresence => 'Discord Rich Presence';
|
||||
@override String get discordRichPresenceDescription => 'Показвай какво гледате в Discord';
|
||||
@override String get trakt => 'Trakt';
|
||||
@override String get traktDescription => 'Синхронизирай историята на гледане с Trakt';
|
||||
@override String get services => 'Услуги';
|
||||
@override String get servicesDescription => 'Свържи Trakt, MyAnimeList, Seerr и още';
|
||||
@override String get manageLibrariesDescription => 'Пренареждай и скривай библиотеки';
|
||||
@override String get companionRemoteServer => 'Сървър за дистанционно управление';
|
||||
@override String get companionRemoteServerDescription => 'Позволи на мобилни устройства във вашата мрежа да управляват това приложение';
|
||||
@override String get autoPip => 'Автоматичен режим картина в картината';
|
||||
@@ -443,7 +444,6 @@ class _TranslationsSettingsBg extends TranslationsSettingsEn {
|
||||
@override String get showNavBarLabels => 'Показвай етикети в навигационната лента';
|
||||
@override String get showNavBarLabelsDescription => 'Показвай текстови етикети под иконите в навигационната лента';
|
||||
@override String get startupSection => 'Начален раздел';
|
||||
@override String get startupSectionDescription => 'Изберете кой раздел да отваря Plezy при стартиране';
|
||||
@override String get liveTvDefaultFavorites => 'По подразбиране към любими канали';
|
||||
@override String get liveTvDefaultFavoritesDescription => 'Показвай само любими канали при отваряне на телевизия на живо';
|
||||
@override String get display => 'Дисплей';
|
||||
@@ -455,13 +455,6 @@ class _TranslationsSettingsBg extends TranslationsSettingsEn {
|
||||
@override String get subtitlesAndConfig => 'Субтитри и конфигурация';
|
||||
@override String get seekAndTiming => 'Търсене и време';
|
||||
@override String get behavior => 'Поведение';
|
||||
@override String get manageLibrariesDescription => 'Пренареждай и скривай библиотеки';
|
||||
@override String get visualEffects => 'Визуални ефекти';
|
||||
@override String get visualEffectsAuto => 'Автоматично';
|
||||
@override String get visualEffectsAutoDescription => 'Автоматично намалявай ефектите на по-слаби устройства';
|
||||
@override String get visualEffectsFull => 'Пълни';
|
||||
@override String get visualEffectsReduced => 'Намалени';
|
||||
@override String get visualEffectsReducedDescription => 'По-малко анимации и изображения с по-ниска резолюция';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -559,14 +552,11 @@ class _TranslationsRateSheetBg extends TranslationsRateSheetEn {
|
||||
// Translations
|
||||
@override String get title => 'Оцени';
|
||||
@override String get server => 'Сървър';
|
||||
@override String starValue({required Object rating}) => '${rating} / 5';
|
||||
@override String scoreValue({required Object score}) => '${score} / 10';
|
||||
@override String get setScore => 'Задай оценка';
|
||||
@override String get favorite => 'Добави в любими';
|
||||
@override String get favorited => 'Добавено в любими';
|
||||
@override String get saved => 'Запазено';
|
||||
@override String get notAvailable => 'Няма намерено съвпадение';
|
||||
@override String get noConnectedServices => 'Свържи услуга в Настройки, за да оценяваш там.';
|
||||
@override String get favorite => 'Добави в любими';
|
||||
@override String get favorited => 'Добавено в любими';
|
||||
}
|
||||
|
||||
// Path: accessibility
|
||||
@@ -584,6 +574,14 @@ class _TranslationsAccessibilityBg extends TranslationsAccessibilityEn {
|
||||
@override String mediaCardPartiallyWatched({required Object percent}) => '${percent} процента изгледано';
|
||||
@override String get mediaCardUnwatched => 'негледано';
|
||||
@override String get tapToPlay => 'Докоснете за възпроизвеждане';
|
||||
@override String get decrease => 'Намали';
|
||||
@override String get increase => 'Увеличи';
|
||||
@override String decreaseValue({required Object label}) => 'Намали ${label}';
|
||||
@override String increaseValue({required Object label}) => 'Увеличи ${label}';
|
||||
@override String get hue => 'Нюанс';
|
||||
@override String get saturation => 'Наситеност';
|
||||
@override String get brightness => 'Яркост';
|
||||
@override String get hexColor => 'Шестнадесетичен цвят';
|
||||
}
|
||||
|
||||
// Path: tooltips
|
||||
@@ -643,13 +641,11 @@ class _TranslationsVideoControlsBg extends TranslationsVideoControlsEn {
|
||||
@override String get settingsButton => 'Настройки на възпроизвеждането';
|
||||
@override String get tracksButton => 'Аудио и субтитри';
|
||||
@override String get chaptersButton => 'Глави';
|
||||
@override String get versionsButton => 'Видео версии';
|
||||
@override String get versionQualityButton => 'Версия и качество';
|
||||
@override String get versionColumnHeader => 'Версия';
|
||||
@override String get qualityColumnHeader => 'Качество';
|
||||
@override String get qualityOriginal => 'Оригинал';
|
||||
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
|
||||
@override String qualityBandwidthEstimate({required Object bitrate}) => '~${bitrate} Mbps';
|
||||
@override String get transcodeUnavailableFallback => 'Транскодирането не е налично — пуска се оригиналното качество';
|
||||
@override String get pipButton => 'Режим картина в картината';
|
||||
@override String get aspectRatioButton => 'Съотношение на страните';
|
||||
@@ -685,19 +681,6 @@ class _TranslationsVideoControlsBg extends TranslationsVideoControlsEn {
|
||||
@override String get searchLanguages => 'Търсене на езици...';
|
||||
}
|
||||
|
||||
// Path: userStatus
|
||||
class _TranslationsUserStatusBg extends TranslationsUserStatusEn {
|
||||
_TranslationsUserStatusBg._(TranslationsBg root) : this._root = root, super.internal(root);
|
||||
|
||||
final TranslationsBg _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get admin => 'Администратор';
|
||||
@override String get restricted => 'Ограничен';
|
||||
@override String get protected => 'Защитен';
|
||||
@override String get current => 'ТЕКУЩ';
|
||||
}
|
||||
|
||||
// Path: messages
|
||||
class _TranslationsMessagesBg extends TranslationsMessagesEn {
|
||||
_TranslationsMessagesBg._(TranslationsBg root) : this._root = root, super.internal(root);
|
||||
@@ -873,7 +856,6 @@ class _TranslationsProfilesBg extends TranslationsProfilesEn {
|
||||
@override String get pinExplain => 'Изисква се 4-цифрен PIN за смяна на профили.';
|
||||
@override String get continueButton => 'Продължи';
|
||||
@override String get pinsDontMatch => 'PIN кодовете не съвпадат';
|
||||
@override String get initializeServicesFailed => 'Неуспешно инициализиране на услугите за профили';
|
||||
}
|
||||
|
||||
// Path: connections
|
||||
@@ -902,7 +884,6 @@ class _TranslationsDiscoverBg extends TranslationsDiscoverEn {
|
||||
|
||||
// Translations
|
||||
@override String get title => 'Открий';
|
||||
@override String get switchProfile => 'Смяна на профил';
|
||||
@override String get noContentAvailable => 'Няма налично съдържание';
|
||||
@override String get addMediaToLibraries => 'Добавете медия към библиотеките си';
|
||||
@override String get continueWatching => 'Продължи гледането';
|
||||
@@ -938,8 +919,6 @@ class _TranslationsErrorsBg extends TranslationsErrorsEn {
|
||||
@override String get connectionFailed => 'Не може да се осъществи връзка с медиен сървър';
|
||||
@override String failedToLoad({required Object context, required Object error}) => 'Неуспешно зареждане на ${context}: ${error}';
|
||||
@override String get noClientAvailable => 'Няма наличен клиент';
|
||||
@override String authenticationFailed({required Object error}) => 'Удостоверяването е неуспешно: ${error}';
|
||||
@override String get couldNotLaunchUrl => 'URL адресът за удостоверяване не може да бъде отворен';
|
||||
@override String get pleaseEnterToken => 'Моля, въведете токен';
|
||||
@override String get invalidToken => 'Невалиден токен';
|
||||
@override String failedToVerifyToken({required Object error}) => 'Неуспешна проверка на токена: ${error}';
|
||||
@@ -973,6 +952,8 @@ class _TranslationsLibrariesBg extends TranslationsLibrariesEn {
|
||||
@override String get allLibrariesHidden => 'Всички библиотеки са скрити';
|
||||
@override String hiddenLibrariesCount({required Object count}) => 'Скрити библиотеки (${count})';
|
||||
@override String get thisLibraryIsEmpty => 'Тази библиотека е празна';
|
||||
@override String get noItemsMatchFilters => 'Няма елементи, съответстващи на активните филтри';
|
||||
@override String get resetFilters => 'Нулирай филтрите';
|
||||
@override String get all => 'Всички';
|
||||
@override String get clearAll => 'Изчисти всички';
|
||||
@override String scanLibraryConfirm({required Object title}) => 'Сигурни ли сте, че искате да сканирате "${title}"?';
|
||||
@@ -998,8 +979,6 @@ class _TranslationsLibrariesBg extends TranslationsLibrariesEn {
|
||||
@override late final _TranslationsLibrariesGroupingsBg groupings = _TranslationsLibrariesGroupingsBg._(_root);
|
||||
@override late final _TranslationsLibrariesFilterCategoriesBg filterCategories = _TranslationsLibrariesFilterCategoriesBg._(_root);
|
||||
@override late final _TranslationsLibrariesSortLabelsBg sortLabels = _TranslationsLibrariesSortLabelsBg._(_root);
|
||||
@override String get noItemsMatchFilters => 'Няма елементи, съответстващи на активните филтри';
|
||||
@override String get resetFilters => 'Нулирай филтрите';
|
||||
}
|
||||
|
||||
// Path: about
|
||||
@@ -1023,7 +1002,6 @@ class _TranslationsServerSelectionBg extends TranslationsServerSelectionEn {
|
||||
final TranslationsBg _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get allServerConnectionsFailed => 'Не може да се осъществи връзка с нито един сървър. Проверете мрежата.';
|
||||
@override String noServersFoundForAccount({required Object username, required Object email}) => 'Не са намерени сървъри за ${username} (${email})';
|
||||
@override String failedToLoadServers({required Object error}) => 'Неуспешно зареждане на сървъри: ${error}';
|
||||
}
|
||||
@@ -1102,7 +1080,6 @@ class _TranslationsExploreBg extends TranslationsExploreEn {
|
||||
@override String get watchlistUpdateFailed => 'Неуспешно обновяване на списъка за гледане';
|
||||
@override String get notInLibrary => 'Не е в твоята библиотека';
|
||||
@override String get inTheseLibraries => 'В тези библиотеки';
|
||||
@override String availableOn({required Object server}) => 'Налично на ${server}';
|
||||
@override String get checkingLibrary => 'Проверка на твоята библиотека...';
|
||||
@override String get emptyTitle => 'Тук все още няма нищо';
|
||||
@override String emptyMessage({required Object source}) => 'Редовете от ${source} ще се появят тук, когато има съдържание.';
|
||||
@@ -1123,6 +1100,8 @@ class _TranslationsLiveTvBg extends TranslationsLiveTvEn {
|
||||
@override String get guide => 'ТВ програма';
|
||||
@override String get noChannels => 'Няма налични канали';
|
||||
@override String get noDvr => 'Няма конфигуриран DVR на нито един сървър';
|
||||
@override String get serverUnavailable => 'Сървърът за телевизия на живо не е наличен.';
|
||||
@override String get serverNotConnected => 'Сървърът за телевизия на живо не е свързан.';
|
||||
@override String get noPrograms => 'Няма налични програмни данни';
|
||||
@override String get liveStreamFailed => 'Потокът на живо се провали';
|
||||
@override String get unknownProgram => 'Неизвестна програма';
|
||||
@@ -1158,7 +1137,6 @@ class _TranslationsLiveTvBg extends TranslationsLiveTvEn {
|
||||
@override String get scheduledRecordings => 'Планирани';
|
||||
@override String get recordingRules => 'Правила за запис';
|
||||
@override String get noScheduledRecordings => 'Няма планирани записи';
|
||||
@override String get noRecordingRules => 'Все още няма правила за запис';
|
||||
@override String get manageRecording => 'Управление на запис';
|
||||
@override String get cancelRecording => 'Отмени запис';
|
||||
@override String get cancelRecordingTitle => 'Да се отмени ли този запис?';
|
||||
@@ -1175,7 +1153,6 @@ class _TranslationsLiveTvBg extends TranslationsLiveTvEn {
|
||||
@override String get recordingCancelled => 'Записът е отменен';
|
||||
@override String get recordingRuleDeleted => 'Правилото за запис е изтрито';
|
||||
@override String get processRecordingRules => 'Преоцени правилата';
|
||||
@override String get loadingRecordings => 'Зареждане на записи...';
|
||||
@override String get recordingInProgress => 'Записва се сега';
|
||||
@override String recordingsCount({required Object count}) => '${count} планирани';
|
||||
@override String get editRule => 'Редактирай правило';
|
||||
@@ -1196,7 +1173,6 @@ class _TranslationsCollectionsBg extends TranslationsCollectionsEn {
|
||||
@override String get title => 'Колекции';
|
||||
@override String get collection => 'Колекция';
|
||||
@override String get empty => 'Колекцията е празна';
|
||||
@override String get unknownLibrarySection => 'Не може да се изтрие: неизвестна секция на библиотеката';
|
||||
@override String get deleteCollection => 'Изтрий колекция';
|
||||
@override String deleteConfirm({required Object title}) => 'Да се изтрие ли "${title}"? Това не може да бъде отменено.';
|
||||
@override String get deleted => 'Колекцията е изтрита';
|
||||
@@ -1243,6 +1219,7 @@ class _TranslationsPlaylistsBg extends TranslationsPlaylistsEn {
|
||||
@override String get itemAdded => 'Добавено към плейлист';
|
||||
@override String get itemRemoved => 'Премахнато от плейлист';
|
||||
@override String get selectPlaylist => 'Избери плейлист';
|
||||
@override String get searchPlaylists => 'Търсене в плейлисти...';
|
||||
@override String get errorCreating => 'Неуспешно създаване на плейлист';
|
||||
@override String get errorDeleting => 'Неуспешно изтриване на плейлист';
|
||||
@override String get errorLoading => 'Неуспешно зареждане на плейлисти';
|
||||
@@ -1346,15 +1323,15 @@ class _TranslationsWatchTogetherBg extends TranslationsWatchTogetherEn {
|
||||
@override String participantResumed({required Object name}) => '${name} продължи';
|
||||
@override String participantSeeked({required Object name}) => '${name} превъртя';
|
||||
@override String participantBuffering({required Object name}) => '${name} буферира';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} е с по-стара версия на приложението — синхронизирането не е налично';
|
||||
@override String resumingWithout({required Object name}) => 'Продължаване без ${name}';
|
||||
@override String get waitingForParticipants => 'Изчакване другите да заредят...';
|
||||
@override String waitingForName({required Object name}) => 'Изчакване на ${name}...';
|
||||
@override String get recentRooms => 'Скорошни стаи';
|
||||
@override String get renameRoom => 'Преименувай стая';
|
||||
@override String get removeRoom => 'Премахни';
|
||||
@override String get guestSwitchUnavailable => 'Превключването не е възможно — сървърът е недостъпен за синхронизация';
|
||||
@override String get guestSwitchFailed => 'Превключването не е възможно — съдържанието не е намерено на този сървър';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} е с по-стара версия на приложението — синхронизирането не е налично';
|
||||
@override String resumingWithout({required Object name}) => 'Продължаване без ${name}';
|
||||
@override String waitingForName({required Object name}) => 'Изчакване на ${name}...';
|
||||
}
|
||||
|
||||
// Path: downloads
|
||||
@@ -1406,7 +1383,6 @@ class _TranslationsDownloadsBg extends TranslationsDownloadsEn {
|
||||
@override String get customAmount => 'Персонален брой...';
|
||||
@override String get includeSpecials => 'Включи специалните';
|
||||
@override String get howManyEpisodes => 'Колко епизода?';
|
||||
@override String itemsQueued({required Object count}) => '${count} елемента са добавени в опашката за изтегляне';
|
||||
@override String get keepSynced => 'Поддържай синхронизирано';
|
||||
@override String get downloadOnce => 'Изтегли еднократно';
|
||||
@override String keepNUnwatched({required Object count}) => 'Пази ${count} негледани';
|
||||
@@ -1780,7 +1756,6 @@ class _TranslationsAddServerBg extends TranslationsAddServerEn {
|
||||
@override String quickConnectFailed({required Object error}) => 'Quick Connect е неуспешен: ${error}';
|
||||
@override String get addPlexTitle => 'Вход с Plex';
|
||||
@override String get pinExpired => 'PIN-ът изтече преди вход. Моля, опитайте отново.';
|
||||
@override String get duplicatePlexAccount => 'Вече сте влезли в Plex. Излезте, за да смените акаунта.';
|
||||
@override String failedToRegisterAccount({required Object error}) => 'Неуспешна регистрация на акаунт: ${error}';
|
||||
@override String get enterJellyfinUrlError => 'Въведете URL адреса на вашия Jellyfin сървър';
|
||||
@override String get addConnectionTitle => 'Добави връзка';
|
||||
@@ -1906,7 +1881,6 @@ class _TranslationsLibrariesSortLabelsBg extends TranslationsLibrariesSortLabels
|
||||
@override String get communityRating => 'Оценка от общността';
|
||||
@override String get criticRating => 'Оценка от критиците';
|
||||
@override String get userRating => 'Потребителска оценка';
|
||||
@override String get lastPlayed => 'Последно възпроизведено';
|
||||
@override String get datePlayed => 'Дата на възпроизвеждане';
|
||||
@override String get playCount => 'Брой възпроизвеждания';
|
||||
@override String get productionYear => 'Година на производство';
|
||||
@@ -1965,7 +1939,6 @@ class _TranslationsCompanionRemoteSessionBg extends TranslationsCompanionRemoteS
|
||||
|
||||
// Translations
|
||||
@override String get startingServer => 'Стартиране на сървър за дистанционно управление...';
|
||||
@override String get failedToCreate => 'Неуспешно стартиране на сървър за дистанционно управление:';
|
||||
@override String get hostAddress => 'Адрес на хоста';
|
||||
@override String get connected => 'Свързан';
|
||||
@override String get serverRunning => 'Сървърът за дистанционно управление е активен';
|
||||
@@ -2047,6 +2020,8 @@ class _TranslationsCompanionRemoteErrorsBg extends TranslationsCompanionRemoteEr
|
||||
// Translations
|
||||
@override String get noNetworkInterface => 'Не е намерен мрежов интерфейс';
|
||||
@override String get authenticationFailed => 'Неуспешно удостоверяване';
|
||||
@override String serverStartFailed({required Object error}) => 'Неуспешно стартиране на отдалечения сървър: ${error}';
|
||||
@override String commandFailed({required Object error}) => 'Неуспешно изпращане на отдалечена команда: ${error}';
|
||||
@override String get joinTimedOut => 'Времето за присъединяване към сесията изтече';
|
||||
@override String get failedToConnectAnyAddress => 'Неуспешно свързване към който и да е адрес';
|
||||
@override String connectionLostAfterAttempts({required Object attempts}) => 'Връзката е загубена след ${attempts} опита';
|
||||
@@ -2123,7 +2098,6 @@ extension on TranslationsBg {
|
||||
dynamic _flatMapFunction(String path) {
|
||||
return switch (path) {
|
||||
'app.title' => 'Plezy',
|
||||
'auth.signIn' => 'Вход',
|
||||
'auth.signInWithPlex' => 'Вход с Plex',
|
||||
'auth.showQRCode' => 'Покажи QR код',
|
||||
'auth.authenticate' => 'Удостовери',
|
||||
@@ -2174,10 +2148,8 @@ extension on TranslationsBg {
|
||||
'common.episodeNumberTitle' => ({required Object number, required Object title}) => 'Епизод ${number} - ${title}',
|
||||
'common.chapterNumber' => ({required Object number}) => 'Глава ${number}',
|
||||
'common.reconnect' => 'Свържи отново',
|
||||
'common.exit' => 'Изход',
|
||||
'common.viewAll' => 'Виж всички',
|
||||
'common.checkingNetwork' => 'Проверка на мрежата...',
|
||||
'common.refreshingServers' => 'Опресняване на сървърите...',
|
||||
'common.loadingServers' => 'Зареждане на сървърите...',
|
||||
'common.connectingToServers' => 'Свързване със сървърите...',
|
||||
'common.startingOfflineMode' => 'Стартиране на офлайн режим...',
|
||||
@@ -2251,6 +2223,12 @@ extension on TranslationsBg {
|
||||
'settings.tvFullCardLayoutDescription' => 'Използвай TV карти само с изображения, с насложени имена на актьорите',
|
||||
'settings.focusGlow' => 'Сияние при фокус',
|
||||
'settings.focusGlowDescription' => 'Показвай меко сияние около фокусираната карта',
|
||||
'settings.visualEffects' => 'Визуални ефекти',
|
||||
'settings.visualEffectsAuto' => 'Автоматично',
|
||||
'settings.visualEffectsAutoDescription' => 'Автоматично намалявай ефектите на по-слаби устройства',
|
||||
'settings.visualEffectsFull' => 'Пълни',
|
||||
'settings.visualEffectsReduced' => 'Намалени',
|
||||
'settings.visualEffectsReducedDescription' => 'По-малко анимации и изображения с по-ниска резолюция',
|
||||
'settings.hideSpoilers' => 'Скривай спойлери за негледани епизоди',
|
||||
'settings.hideSpoilersDescription' => 'Замазвай миниатюри и описания за негледани епизоди',
|
||||
'settings.playerBackend' => 'Енджин на плеъра',
|
||||
@@ -2263,7 +2241,7 @@ extension on TranslationsBg {
|
||||
'settings.bufferSizeAuto' => 'Автоматично (препоръчително)',
|
||||
'settings.bufferSizeWarning' => ({required Object heap, required Object size}) => 'Налична памет ${heap}MB. Буфер ${size}MB може да повлияе на възпроизвеждането.',
|
||||
'settings.defaultQualityTitle' => 'Качество по подразбиране',
|
||||
'settings.defaultQualityDescription' => 'Използва се при стартиране на възпроизвеждане. По-ниските стойности намаляват трафика.',
|
||||
'settings.musicQualityTitle' => 'Качество на музиката',
|
||||
'settings.subtitleStyling' => 'Стил на субтитрите',
|
||||
'settings.subtitleStylingDescription' => 'Настройване на вида на субтитрите',
|
||||
'settings.smallSkipDuration' => 'Малко прескачане',
|
||||
@@ -2357,10 +2335,9 @@ extension on TranslationsBg {
|
||||
'settings.maxVolumePercent' => ({required Object percent}) => '${percent}%',
|
||||
'settings.discordRichPresence' => 'Discord Rich Presence',
|
||||
'settings.discordRichPresenceDescription' => 'Показвай какво гледате в Discord',
|
||||
'settings.trakt' => 'Trakt',
|
||||
'settings.traktDescription' => 'Синхронизирай историята на гледане с Trakt',
|
||||
'settings.services' => 'Услуги',
|
||||
'settings.servicesDescription' => 'Свържи Trakt, MyAnimeList, Seerr и още',
|
||||
'settings.manageLibrariesDescription' => 'Пренареждай и скривай библиотеки',
|
||||
'settings.companionRemoteServer' => 'Сървър за дистанционно управление',
|
||||
'settings.companionRemoteServerDescription' => 'Позволи на мобилни устройства във вашата мрежа да управляват това приложение',
|
||||
'settings.autoPip' => 'Автоматичен режим картина в картината',
|
||||
@@ -2423,7 +2400,6 @@ extension on TranslationsBg {
|
||||
'settings.showNavBarLabels' => 'Показвай етикети в навигационната лента',
|
||||
'settings.showNavBarLabelsDescription' => 'Показвай текстови етикети под иконите в навигационната лента',
|
||||
'settings.startupSection' => 'Начален раздел',
|
||||
'settings.startupSectionDescription' => 'Изберете кой раздел да отваря Plezy при стартиране',
|
||||
'settings.liveTvDefaultFavorites' => 'По подразбиране към любими канали',
|
||||
'settings.liveTvDefaultFavoritesDescription' => 'Показвай само любими канали при отваряне на телевизия на живо',
|
||||
'settings.display' => 'Дисплей',
|
||||
@@ -2435,13 +2411,6 @@ extension on TranslationsBg {
|
||||
'settings.subtitlesAndConfig' => 'Субтитри и конфигурация',
|
||||
'settings.seekAndTiming' => 'Търсене и време',
|
||||
'settings.behavior' => 'Поведение',
|
||||
'settings.manageLibrariesDescription' => 'Пренареждай и скривай библиотеки',
|
||||
'settings.visualEffects' => 'Визуални ефекти',
|
||||
'settings.visualEffectsAuto' => 'Автоматично',
|
||||
'settings.visualEffectsAutoDescription' => 'Автоматично намалявай ефектите на по-слаби устройства',
|
||||
'settings.visualEffectsFull' => 'Пълни',
|
||||
'settings.visualEffectsReduced' => 'Намалени',
|
||||
'settings.visualEffectsReducedDescription' => 'По-малко анимации и изображения с по-ниска резолюция',
|
||||
'search.hint' => 'Търсене на филми, сериали, музика...',
|
||||
'search.tryDifferentTerm' => 'Опитайте с различна дума за търсене',
|
||||
'search.searchYourMedia' => 'Търсете във вашата медия',
|
||||
@@ -2518,14 +2487,11 @@ extension on TranslationsBg {
|
||||
'mediaMenu.playVersion' => 'Пусни версия...',
|
||||
'rateSheet.title' => 'Оцени',
|
||||
'rateSheet.server' => 'Сървър',
|
||||
'rateSheet.starValue' => ({required Object rating}) => '${rating} / 5',
|
||||
'rateSheet.scoreValue' => ({required Object score}) => '${score} / 10',
|
||||
'rateSheet.setScore' => 'Задай оценка',
|
||||
'rateSheet.favorite' => 'Добави в любими',
|
||||
'rateSheet.favorited' => 'Добавено в любими',
|
||||
'rateSheet.saved' => 'Запазено',
|
||||
'rateSheet.notAvailable' => 'Няма намерено съвпадение',
|
||||
'rateSheet.noConnectedServices' => 'Свържи услуга в Настройки, за да оценяваш там.',
|
||||
'rateSheet.favorite' => 'Добави в любими',
|
||||
'rateSheet.favorited' => 'Добавено в любими',
|
||||
'accessibility.mediaCardMovie' => ({required Object title}) => '${title}, филм',
|
||||
'accessibility.mediaCardShow' => ({required Object title}) => '${title}, ТВ сериал',
|
||||
'accessibility.mediaCardEpisode' => ({required Object title, required Object episodeInfo}) => '${title}, ${episodeInfo}',
|
||||
@@ -2534,6 +2500,14 @@ extension on TranslationsBg {
|
||||
'accessibility.mediaCardPartiallyWatched' => ({required Object percent}) => '${percent} процента изгледано',
|
||||
'accessibility.mediaCardUnwatched' => 'негледано',
|
||||
'accessibility.tapToPlay' => 'Докоснете за възпроизвеждане',
|
||||
'accessibility.decrease' => 'Намали',
|
||||
'accessibility.increase' => 'Увеличи',
|
||||
'accessibility.decreaseValue' => ({required Object label}) => 'Намали ${label}',
|
||||
'accessibility.increaseValue' => ({required Object label}) => 'Увеличи ${label}',
|
||||
'accessibility.hue' => 'Нюанс',
|
||||
'accessibility.saturation' => 'Наситеност',
|
||||
'accessibility.brightness' => 'Яркост',
|
||||
'accessibility.hexColor' => 'Шестнадесетичен цвят',
|
||||
'tooltips.shufflePlay' => 'Разбъркано възпроизвеждане',
|
||||
'tooltips.playTrailer' => 'Пусни трейлър',
|
||||
'tooltips.markAsWatched' => 'Маркирай като гледано',
|
||||
@@ -2575,13 +2549,11 @@ extension on TranslationsBg {
|
||||
'videoControls.settingsButton' => 'Настройки на възпроизвеждането',
|
||||
'videoControls.tracksButton' => 'Аудио и субтитри',
|
||||
'videoControls.chaptersButton' => 'Глави',
|
||||
'videoControls.versionsButton' => 'Видео версии',
|
||||
'videoControls.versionQualityButton' => 'Версия и качество',
|
||||
'videoControls.versionColumnHeader' => 'Версия',
|
||||
'videoControls.qualityColumnHeader' => 'Качество',
|
||||
'videoControls.qualityOriginal' => 'Оригинал',
|
||||
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
|
||||
'videoControls.qualityBandwidthEstimate' => ({required Object bitrate}) => '~${bitrate} Mbps',
|
||||
'videoControls.transcodeUnavailableFallback' => 'Транскодирането не е налично — пуска се оригиналното качество',
|
||||
'videoControls.pipButton' => 'Режим картина в картината',
|
||||
'videoControls.aspectRatioButton' => 'Съотношение на страните',
|
||||
@@ -2621,10 +2593,6 @@ extension on TranslationsBg {
|
||||
'videoControls.subtitleDownloaded' => 'Субтитърът е изтеглен',
|
||||
'videoControls.subtitleDownloadFailed' => 'Неуспешно изтегляне на субтитър',
|
||||
'videoControls.searchLanguages' => 'Търсене на езици...',
|
||||
'userStatus.admin' => 'Администратор',
|
||||
'userStatus.restricted' => 'Ограничен',
|
||||
'userStatus.protected' => 'Защитен',
|
||||
'userStatus.current' => 'ТЕКУЩ',
|
||||
'messages.markedAsWatched' => 'Маркирано като гледано',
|
||||
'messages.markedAsUnwatched' => 'Маркирано като негледано',
|
||||
'messages.markedAsWatchedOffline' => 'Маркирано като гледано (ще се синхронизира, когато сте онлайн)',
|
||||
@@ -2634,8 +2602,6 @@ extension on TranslationsBg {
|
||||
'messages.errorLoading' => ({required Object error}) => 'Грешка: ${error}',
|
||||
'messages.streamInterrupted' => 'Потокът прекъсна. Натиснете „Пусни“ или превъртете, за да опитате отново.',
|
||||
'messages.fileInfoNotAvailable' => 'Информацията за файла не е налична',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Грешка при зареждане на информация за файла: ${error}',
|
||||
'messages.errorLoadingSeries' => 'Грешка при зареждане на сериала',
|
||||
'messages.musicNotSupported' => 'Възпроизвеждането на музика все още не се поддържа',
|
||||
@@ -2643,6 +2609,8 @@ extension on TranslationsBg {
|
||||
'messages.noProfilesAvailable' => 'Няма налични профили',
|
||||
'messages.contactAdminForProfiles' => 'Свържете се с администратора на сървъра, за да добави профили',
|
||||
'messages.unableToDetermineLibrarySection' => 'Не може да се определи секцията на библиотеката за този елемент',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.logsCleared' => 'Логовете са изчистени',
|
||||
'messages.logsCopied' => 'Логовете са копирани в клипборда',
|
||||
'messages.noLogsAvailable' => 'Няма налични логове',
|
||||
@@ -2759,7 +2727,6 @@ extension on TranslationsBg {
|
||||
'profiles.pinExplain' => 'Изисква се 4-цифрен PIN за смяна на профили.',
|
||||
'profiles.continueButton' => 'Продължи',
|
||||
'profiles.pinsDontMatch' => 'PIN кодовете не съвпадат',
|
||||
'profiles.initializeServicesFailed' => 'Неуспешно инициализиране на услугите за профили',
|
||||
'connections.sectionTitle' => 'Връзки',
|
||||
'connections.addConnection' => 'Добави връзка',
|
||||
'connections.addConnectionSubtitleNoProfile' => 'Влезте с Plex или свържете Jellyfin сървър',
|
||||
@@ -2770,7 +2737,6 @@ extension on TranslationsBg {
|
||||
'connections.editJellyfinTitle' => 'Редактиране на Jellyfin връзка',
|
||||
'connections.editJellyfinIntro' => ({required Object serverName}) => 'Добавете или премахнете URL адреси за ${serverName}. Plezy ще използва достъпния URL адрес с най-ниска латентност.',
|
||||
'discover.title' => 'Открий',
|
||||
'discover.switchProfile' => 'Смяна на профил',
|
||||
'discover.noContentAvailable' => 'Няма налично съдържание',
|
||||
'discover.addMediaToLibraries' => 'Добавете медия към библиотеките си',
|
||||
'discover.continueWatching' => 'Продължи гледането',
|
||||
@@ -2797,8 +2763,6 @@ extension on TranslationsBg {
|
||||
'errors.connectionFailed' => 'Не може да се осъществи връзка с медиен сървър',
|
||||
'errors.failedToLoad' => ({required Object context, required Object error}) => 'Неуспешно зареждане на ${context}: ${error}',
|
||||
'errors.noClientAvailable' => 'Няма наличен клиент',
|
||||
'errors.authenticationFailed' => ({required Object error}) => 'Удостоверяването е неуспешно: ${error}',
|
||||
'errors.couldNotLaunchUrl' => 'URL адресът за удостоверяване не може да бъде отворен',
|
||||
'errors.pleaseEnterToken' => 'Моля, въведете токен',
|
||||
'errors.invalidToken' => 'Невалиден токен',
|
||||
'errors.failedToVerifyToken' => ({required Object error}) => 'Неуспешна проверка на токена: ${error}',
|
||||
@@ -2823,6 +2787,8 @@ extension on TranslationsBg {
|
||||
'libraries.allLibrariesHidden' => 'Всички библиотеки са скрити',
|
||||
'libraries.hiddenLibrariesCount' => ({required Object count}) => 'Скрити библиотеки (${count})',
|
||||
'libraries.thisLibraryIsEmpty' => 'Тази библиотека е празна',
|
||||
'libraries.noItemsMatchFilters' => 'Няма елементи, съответстващи на активните филтри',
|
||||
'libraries.resetFilters' => 'Нулирай филтрите',
|
||||
'libraries.all' => 'Всички',
|
||||
'libraries.clearAll' => 'Изчисти всички',
|
||||
'libraries.scanLibraryConfirm' => ({required Object title}) => 'Сигурни ли сте, че искате да сканирате "${title}"?',
|
||||
@@ -2871,7 +2837,6 @@ extension on TranslationsBg {
|
||||
'libraries.sortLabels.communityRating' => 'Оценка от общността',
|
||||
'libraries.sortLabels.criticRating' => 'Оценка от критиците',
|
||||
'libraries.sortLabels.userRating' => 'Потребителска оценка',
|
||||
'libraries.sortLabels.lastPlayed' => 'Последно възпроизведено',
|
||||
'libraries.sortLabels.datePlayed' => 'Дата на възпроизвеждане',
|
||||
'libraries.sortLabels.playCount' => 'Брой възпроизвеждания',
|
||||
'libraries.sortLabels.productionYear' => 'Година на производство',
|
||||
@@ -2885,14 +2850,11 @@ extension on TranslationsBg {
|
||||
'libraries.sortLabels.dateShared' => 'Дата на споделяне',
|
||||
'libraries.sortLabels.latestEpisodeAirDate' => 'Дата на излъчване на последния епизод',
|
||||
'libraries.sortLabels.lastEpisodeDateAdded' => 'Дата на добавяне на последния епизод',
|
||||
'libraries.noItemsMatchFilters' => 'Няма елементи, съответстващи на активните филтри',
|
||||
'libraries.resetFilters' => 'Нулирай филтрите',
|
||||
'about.title' => 'Относно',
|
||||
'about.openSourceLicenses' => 'Лицензи с отворен код',
|
||||
'about.versionLabel' => ({required Object version}) => 'Версия ${version}',
|
||||
'about.appDescription' => 'Красив Plex и Jellyfin клиент за Flutter',
|
||||
'about.viewLicensesDescription' => 'Виж лицензите на библиотеки на трети страни',
|
||||
'serverSelection.allServerConnectionsFailed' => 'Не може да се осъществи връзка с нито един сървър. Проверете мрежата.',
|
||||
'serverSelection.noServersFoundForAccount' => ({required Object username, required Object email}) => 'Не са намерени сървъри за ${username} (${email})',
|
||||
'serverSelection.failedToLoadServers' => ({required Object error}) => 'Неуспешно зареждане на сървъри: ${error}',
|
||||
'hubDetail.title' => 'Заглавие',
|
||||
@@ -2938,7 +2900,6 @@ extension on TranslationsBg {
|
||||
'explore.watchlistUpdateFailed' => 'Неуспешно обновяване на списъка за гледане',
|
||||
'explore.notInLibrary' => 'Не е в твоята библиотека',
|
||||
'explore.inTheseLibraries' => 'В тези библиотеки',
|
||||
'explore.availableOn' => ({required Object server}) => 'Налично на ${server}',
|
||||
'explore.checkingLibrary' => 'Проверка на твоята библиотека...',
|
||||
'explore.emptyTitle' => 'Тук все още няма нищо',
|
||||
'explore.emptyMessage' => ({required Object source}) => 'Редовете от ${source} ще се появят тук, когато има съдържание.',
|
||||
@@ -2950,6 +2911,8 @@ extension on TranslationsBg {
|
||||
'liveTv.guide' => 'ТВ програма',
|
||||
'liveTv.noChannels' => 'Няма налични канали',
|
||||
'liveTv.noDvr' => 'Няма конфигуриран DVR на нито един сървър',
|
||||
'liveTv.serverUnavailable' => 'Сървърът за телевизия на живо не е наличен.',
|
||||
'liveTv.serverNotConnected' => 'Сървърът за телевизия на живо не е свързан.',
|
||||
'liveTv.noPrograms' => 'Няма налични програмни данни',
|
||||
'liveTv.liveStreamFailed' => 'Потокът на живо се провали',
|
||||
'liveTv.unknownProgram' => 'Неизвестна програма',
|
||||
@@ -2985,7 +2948,6 @@ extension on TranslationsBg {
|
||||
'liveTv.scheduledRecordings' => 'Планирани',
|
||||
'liveTv.recordingRules' => 'Правила за запис',
|
||||
'liveTv.noScheduledRecordings' => 'Няма планирани записи',
|
||||
'liveTv.noRecordingRules' => 'Все още няма правила за запис',
|
||||
'liveTv.manageRecording' => 'Управление на запис',
|
||||
'liveTv.cancelRecording' => 'Отмени запис',
|
||||
'liveTv.cancelRecordingTitle' => 'Да се отмени ли този запис?',
|
||||
@@ -3002,7 +2964,6 @@ extension on TranslationsBg {
|
||||
'liveTv.recordingCancelled' => 'Записът е отменен',
|
||||
'liveTv.recordingRuleDeleted' => 'Правилото за запис е изтрито',
|
||||
'liveTv.processRecordingRules' => 'Преоцени правилата',
|
||||
'liveTv.loadingRecordings' => 'Зареждане на записи...',
|
||||
'liveTv.recordingInProgress' => 'Записва се сега',
|
||||
'liveTv.recordingsCount' => ({required Object count}) => '${count} планирани',
|
||||
'liveTv.editRule' => 'Редактирай правило',
|
||||
@@ -3014,7 +2975,6 @@ extension on TranslationsBg {
|
||||
'collections.title' => 'Колекции',
|
||||
'collections.collection' => 'Колекция',
|
||||
'collections.empty' => 'Колекцията е празна',
|
||||
'collections.unknownLibrarySection' => 'Не може да се изтрие: неизвестна секция на библиотеката',
|
||||
'collections.deleteCollection' => 'Изтрий колекция',
|
||||
'collections.deleteConfirm' => ({required Object title}) => 'Да се изтрие ли "${title}"? Това не може да бъде отменено.',
|
||||
'collections.deleted' => 'Колекцията е изтрита',
|
||||
@@ -3052,6 +3012,7 @@ extension on TranslationsBg {
|
||||
'playlists.itemAdded' => 'Добавено към плейлист',
|
||||
'playlists.itemRemoved' => 'Премахнато от плейлист',
|
||||
'playlists.selectPlaylist' => 'Избери плейлист',
|
||||
'playlists.searchPlaylists' => 'Търсене в плейлисти...',
|
||||
'playlists.errorCreating' => 'Неуспешно създаване на плейлист',
|
||||
'playlists.errorDeleting' => 'Неуспешно изтриване на плейлист',
|
||||
'playlists.errorLoading' => 'Неуспешно зареждане на плейлисти',
|
||||
@@ -3134,22 +3095,20 @@ extension on TranslationsBg {
|
||||
'watchTogether.participantResumed' => ({required Object name}) => '${name} продължи',
|
||||
'watchTogether.participantSeeked' => ({required Object name}) => '${name} превъртя',
|
||||
'watchTogether.participantBuffering' => ({required Object name}) => '${name} буферира',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} е с по-стара версия на приложението — синхронизирането не е налично',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Продължаване без ${name}',
|
||||
'watchTogether.waitingForParticipants' => 'Изчакване другите да заредят...',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Изчакване на ${name}...',
|
||||
'watchTogether.recentRooms' => 'Скорошни стаи',
|
||||
'watchTogether.renameRoom' => 'Преименувай стая',
|
||||
'watchTogether.removeRoom' => 'Премахни',
|
||||
'watchTogether.guestSwitchUnavailable' => 'Превключването не е възможно — сървърът е недостъпен за синхронизация',
|
||||
'watchTogether.guestSwitchFailed' => 'Превключването не е възможно — съдържанието не е намерено на този сървър',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} е с по-стара версия на приложението — синхронизирането не е налично',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Продължаване без ${name}',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Изчакване на ${name}...',
|
||||
'downloads.title' => 'Изтегляния',
|
||||
'downloads.manage' => 'Управление',
|
||||
'downloads.tvShows' => 'ТВ сериали',
|
||||
'downloads.movies' => 'Филми',
|
||||
'downloads.music' => 'Музика',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.tracksQueued' => ({required Object count}) => '${count} песни в опашката за изтегляне',
|
||||
'downloads.noDownloads' => 'Все още няма изтегляния',
|
||||
'downloads.noDownloadsDescription' => 'Изтегленото съдържание ще се показва тук за офлайн гледане',
|
||||
@@ -3164,6 +3123,8 @@ extension on TranslationsBg {
|
||||
'downloads.deleteConfirm' => ({required Object title}) => 'Да се изтрие ли "${title}" от това устройство?',
|
||||
'downloads.cancelledDownloadTitle' => 'Отменено изтегляне',
|
||||
'downloads.cancelledDownloadMessage' => 'Това изтегляне беше отменено. Какво искате да направите?',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.allEpisodesAlreadyDownloaded' => 'Всички епизоди вече са изтеглени',
|
||||
'downloads.resumeDownload' => 'Възобнови изтеглянето',
|
||||
'downloads.cancelledDownload' => 'Отменено изтегляне',
|
||||
@@ -3187,7 +3148,6 @@ extension on TranslationsBg {
|
||||
'downloads.customAmount' => 'Персонален брой...',
|
||||
'downloads.includeSpecials' => 'Включи специалните',
|
||||
'downloads.howManyEpisodes' => 'Колко епизода?',
|
||||
'downloads.itemsQueued' => ({required Object count}) => '${count} елемента са добавени в опашката за изтегляне',
|
||||
'downloads.keepSynced' => 'Поддържай синхронизирано',
|
||||
'downloads.downloadOnce' => 'Изтегли еднократно',
|
||||
'downloads.keepNUnwatched' => ({required Object count}) => 'Пази ${count} негледани',
|
||||
@@ -3231,7 +3191,6 @@ extension on TranslationsBg {
|
||||
'companionRemote.connectedTo' => ({required Object name}) => 'Свързан към ${name}',
|
||||
'companionRemote.unknownDevice' => 'Непознато устройство',
|
||||
'companionRemote.session.startingServer' => 'Стартиране на сървър за дистанционно управление...',
|
||||
'companionRemote.session.failedToCreate' => 'Неуспешно стартиране на сървър за дистанционно управление:',
|
||||
'companionRemote.session.hostAddress' => 'Адрес на хоста',
|
||||
'companionRemote.session.connected' => 'Свързан',
|
||||
'companionRemote.session.serverRunning' => 'Сървърът за дистанционно управление е активен',
|
||||
@@ -3286,6 +3245,8 @@ extension on TranslationsBg {
|
||||
'companionRemote.remote.searchHint' => 'Търсене на настолен компютър...',
|
||||
'companionRemote.errors.noNetworkInterface' => 'Не е намерен мрежов интерфейс',
|
||||
'companionRemote.errors.authenticationFailed' => 'Неуспешно удостоверяване',
|
||||
'companionRemote.errors.serverStartFailed' => ({required Object error}) => 'Неуспешно стартиране на отдалечения сървър: ${error}',
|
||||
'companionRemote.errors.commandFailed' => ({required Object error}) => 'Неуспешно изпращане на отдалечена команда: ${error}',
|
||||
'companionRemote.errors.joinTimedOut' => 'Времето за присъединяване към сесията изтече',
|
||||
'companionRemote.errors.failedToConnectAnyAddress' => 'Неуспешно свързване към който и да е адрес',
|
||||
'companionRemote.errors.connectionLostAfterAttempts' => ({required Object attempts}) => 'Връзката е загубена след ${attempts} опита',
|
||||
@@ -3530,7 +3491,6 @@ extension on TranslationsBg {
|
||||
'addServer.quickConnectFailed' => ({required Object error}) => 'Quick Connect е неуспешен: ${error}',
|
||||
'addServer.addPlexTitle' => 'Вход с Plex',
|
||||
'addServer.pinExpired' => 'PIN-ът изтече преди вход. Моля, опитайте отново.',
|
||||
'addServer.duplicatePlexAccount' => 'Вече сте влезли в Plex. Излезте, за да смените акаунта.',
|
||||
'addServer.failedToRegisterAccount' => ({required Object error}) => 'Неуспешна регистрация на акаунт: ${error}',
|
||||
'addServer.enterJellyfinUrlError' => 'Въведете URL адреса на вашия Jellyfin сървър',
|
||||
'addServer.addConnectionTitle' => 'Добави връзка',
|
||||
|
||||
+60
-100
@@ -53,7 +53,6 @@ class TranslationsDa extends Translations with BaseTranslations<AppLocale, Trans
|
||||
@override late final _TranslationsAccessibilityDa accessibility = _TranslationsAccessibilityDa._(_root);
|
||||
@override late final _TranslationsTooltipsDa tooltips = _TranslationsTooltipsDa._(_root);
|
||||
@override late final _TranslationsVideoControlsDa videoControls = _TranslationsVideoControlsDa._(_root);
|
||||
@override late final _TranslationsUserStatusDa userStatus = _TranslationsUserStatusDa._(_root);
|
||||
@override late final _TranslationsMessagesDa messages = _TranslationsMessagesDa._(_root);
|
||||
@override late final _TranslationsSubtitlingStylingDa subtitlingStyling = _TranslationsSubtitlingStylingDa._(_root);
|
||||
@override late final _TranslationsMpvConfigDa mpvConfig = _TranslationsMpvConfigDa._(_root);
|
||||
@@ -107,7 +106,6 @@ class _TranslationsAuthDa extends TranslationsAuthEn {
|
||||
final TranslationsDa _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get signIn => 'Log ind';
|
||||
@override String get signInWithPlex => 'Log ind med Plex';
|
||||
@override String get showQRCode => 'Vis QR-kode';
|
||||
@override String get authenticate => 'Godkend';
|
||||
@@ -167,10 +165,8 @@ class _TranslationsCommonDa extends TranslationsCommonEn {
|
||||
@override String episodeNumberTitle({required Object number, required Object title}) => 'Episode ${number} - ${title}';
|
||||
@override String chapterNumber({required Object number}) => 'Kapitel ${number}';
|
||||
@override String get reconnect => 'Genopret forbindelse';
|
||||
@override String get exit => 'Afslut';
|
||||
@override String get viewAll => 'Vis alle';
|
||||
@override String get checkingNetwork => 'Tjekker netværk...';
|
||||
@override String get refreshingServers => 'Opdaterer servere...';
|
||||
@override String get loadingServers => 'Indlæser servere...';
|
||||
@override String get connectingToServers => 'Forbinder til servere...';
|
||||
@override String get startingOfflineMode => 'Starter offlinetilstand...';
|
||||
@@ -271,6 +267,12 @@ class _TranslationsSettingsDa extends TranslationsSettingsEn {
|
||||
@override String get tvFullCardLayoutDescription => 'Brug TV-kort kun med billeder og skuespillernavne ovenpå';
|
||||
@override String get focusGlow => 'Fokusglød';
|
||||
@override String get focusGlowDescription => 'Vis en blød glød omkring det fokuserede kort';
|
||||
@override String get visualEffects => 'Visuelle effekter';
|
||||
@override String get visualEffectsAuto => 'Automatisk';
|
||||
@override String get visualEffectsAutoDescription => 'Reducer automatisk effekter på enheder med lav ydeevne';
|
||||
@override String get visualEffectsFull => 'Fuld';
|
||||
@override String get visualEffectsReduced => 'Reduceret';
|
||||
@override String get visualEffectsReducedDescription => 'Færre animationer og illustrationer i lavere opløsning';
|
||||
@override String get hideSpoilers => 'Skjul spoilere for usete episoder';
|
||||
@override String get hideSpoilersDescription => 'Slør miniaturebilleder og beskrivelser for usete episoder';
|
||||
@override String get playerBackend => 'Afspillerbackend';
|
||||
@@ -283,7 +285,7 @@ class _TranslationsSettingsDa extends TranslationsSettingsEn {
|
||||
@override String get bufferSizeAuto => 'Auto (Anbefalet)';
|
||||
@override String bufferSizeWarning({required Object heap, required Object size}) => '${heap}MB hukommelse tilgængelig. En buffer på ${size}MB kan påvirke afspilning.';
|
||||
@override String get defaultQualityTitle => 'Standardkvalitet';
|
||||
@override String get defaultQualityDescription => 'Bruges ved start af afspilning. Lavere værdier reducerer båndbredden.';
|
||||
@override String get musicQualityTitle => 'Musikkvalitet';
|
||||
@override String get subtitleStyling => 'Undertekststil';
|
||||
@override String get subtitleStylingDescription => 'Tilpas underteksters udseende';
|
||||
@override String get smallSkipDuration => 'Kort spring-varighed';
|
||||
@@ -377,10 +379,9 @@ class _TranslationsSettingsDa extends TranslationsSettingsEn {
|
||||
@override String maxVolumePercent({required Object percent}) => '${percent}%';
|
||||
@override String get discordRichPresence => 'Discord Rich Presence';
|
||||
@override String get discordRichPresenceDescription => 'Vis hvad du ser på Discord';
|
||||
@override String get trakt => 'Trakt';
|
||||
@override String get traktDescription => 'Synkroniser visningshistorik med Trakt';
|
||||
@override String get services => 'Tjenester';
|
||||
@override String get servicesDescription => 'Forbind Trakt, MyAnimeList, Seerr og mere';
|
||||
@override String get manageLibrariesDescription => 'Omarranger og skjul biblioteker';
|
||||
@override String get companionRemoteServer => 'Companion Remote Server';
|
||||
@override String get companionRemoteServerDescription => 'Tillad mobilenheder på dit netværk at styre denne app';
|
||||
@override String get autoPip => 'Auto billede-i-billede';
|
||||
@@ -443,7 +444,6 @@ class _TranslationsSettingsDa extends TranslationsSettingsEn {
|
||||
@override String get showNavBarLabels => 'Vis navigationsbarlabels';
|
||||
@override String get showNavBarLabelsDescription => 'Vis tekstlabels under navigationsbarikoner';
|
||||
@override String get startupSection => 'Startsektion';
|
||||
@override String get startupSectionDescription => 'Vælg hvilken sektion Plezy åbner ved start';
|
||||
@override String get liveTvDefaultFavorites => 'Standard til favoritkanaler';
|
||||
@override String get liveTvDefaultFavoritesDescription => 'Vis kun favoritkanaler ved åbning af Live TV';
|
||||
@override String get display => 'Skærm';
|
||||
@@ -455,13 +455,6 @@ class _TranslationsSettingsDa extends TranslationsSettingsEn {
|
||||
@override String get subtitlesAndConfig => 'Undertekster og konfiguration';
|
||||
@override String get seekAndTiming => 'Søgning og timing';
|
||||
@override String get behavior => 'Adfærd';
|
||||
@override String get manageLibrariesDescription => 'Omarranger og skjul biblioteker';
|
||||
@override String get visualEffects => 'Visuelle effekter';
|
||||
@override String get visualEffectsAuto => 'Automatisk';
|
||||
@override String get visualEffectsAutoDescription => 'Reducer automatisk effekter på enheder med lav ydeevne';
|
||||
@override String get visualEffectsFull => 'Fuld';
|
||||
@override String get visualEffectsReduced => 'Reduceret';
|
||||
@override String get visualEffectsReducedDescription => 'Færre animationer og illustrationer i lavere opløsning';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -559,14 +552,11 @@ class _TranslationsRateSheetDa extends TranslationsRateSheetEn {
|
||||
// Translations
|
||||
@override String get title => 'Bedøm';
|
||||
@override String get server => 'Server';
|
||||
@override String starValue({required Object rating}) => '${rating} / 5';
|
||||
@override String scoreValue({required Object score}) => '${score} / 10';
|
||||
@override String get setScore => 'Angiv en score';
|
||||
@override String get favorite => 'Favorit';
|
||||
@override String get favorited => 'Føjet til favoritter';
|
||||
@override String get saved => 'Gemt';
|
||||
@override String get notAvailable => 'Intet match fundet';
|
||||
@override String get noConnectedServices => 'Forbind en tjeneste i Indstillinger for at bedømme der.';
|
||||
@override String get favorite => 'Favorit';
|
||||
@override String get favorited => 'Føjet til favoritter';
|
||||
}
|
||||
|
||||
// Path: accessibility
|
||||
@@ -584,6 +574,14 @@ class _TranslationsAccessibilityDa extends TranslationsAccessibilityEn {
|
||||
@override String mediaCardPartiallyWatched({required Object percent}) => '${percent} procent set';
|
||||
@override String get mediaCardUnwatched => 'uset';
|
||||
@override String get tapToPlay => 'Tryk for at afspille';
|
||||
@override String get decrease => 'Formindsk';
|
||||
@override String get increase => 'Forøg';
|
||||
@override String decreaseValue({required Object label}) => 'Formindsk ${label}';
|
||||
@override String increaseValue({required Object label}) => 'Forøg ${label}';
|
||||
@override String get hue => 'Farvetone';
|
||||
@override String get saturation => 'Mætning';
|
||||
@override String get brightness => 'Lysstyrke';
|
||||
@override String get hexColor => 'Hexfarve';
|
||||
}
|
||||
|
||||
// Path: tooltips
|
||||
@@ -643,13 +641,11 @@ class _TranslationsVideoControlsDa extends TranslationsVideoControlsEn {
|
||||
@override String get settingsButton => 'Afspilningsindstillinger';
|
||||
@override String get tracksButton => 'Lyd og undertekster';
|
||||
@override String get chaptersButton => 'Kapitler';
|
||||
@override String get versionsButton => 'Videoversioner';
|
||||
@override String get versionQualityButton => 'Version og kvalitet';
|
||||
@override String get versionColumnHeader => 'Version';
|
||||
@override String get qualityColumnHeader => 'Kvalitet';
|
||||
@override String get qualityOriginal => 'Original';
|
||||
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
|
||||
@override String qualityBandwidthEstimate({required Object bitrate}) => '~${bitrate} Mbps';
|
||||
@override String get transcodeUnavailableFallback => 'Transkodning utilgængelig — afspiller original kvalitet';
|
||||
@override String get pipButton => 'Billede-i-billede-tilstand';
|
||||
@override String get aspectRatioButton => 'Billedformat';
|
||||
@@ -685,19 +681,6 @@ class _TranslationsVideoControlsDa extends TranslationsVideoControlsEn {
|
||||
@override String get searchLanguages => 'Søg sprog...';
|
||||
}
|
||||
|
||||
// Path: userStatus
|
||||
class _TranslationsUserStatusDa extends TranslationsUserStatusEn {
|
||||
_TranslationsUserStatusDa._(TranslationsDa root) : this._root = root, super.internal(root);
|
||||
|
||||
final TranslationsDa _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get admin => 'Administrator';
|
||||
@override String get restricted => 'Begrænset';
|
||||
@override String get protected => 'Beskyttet';
|
||||
@override String get current => 'NUVÆRENDE';
|
||||
}
|
||||
|
||||
// Path: messages
|
||||
class _TranslationsMessagesDa extends TranslationsMessagesEn {
|
||||
_TranslationsMessagesDa._(TranslationsDa root) : this._root = root, super.internal(root);
|
||||
@@ -873,7 +856,6 @@ class _TranslationsProfilesDa extends TranslationsProfilesEn {
|
||||
@override String get pinExplain => '4-cifret PIN kræves for at skifte profiler.';
|
||||
@override String get continueButton => 'Fortsæt';
|
||||
@override String get pinsDontMatch => 'PIN-koder matcher ikke';
|
||||
@override String get initializeServicesFailed => 'Kunne ikke initialisere profiltjenester';
|
||||
}
|
||||
|
||||
// Path: connections
|
||||
@@ -902,7 +884,6 @@ class _TranslationsDiscoverDa extends TranslationsDiscoverEn {
|
||||
|
||||
// Translations
|
||||
@override String get title => 'Opdag';
|
||||
@override String get switchProfile => 'Skift profil';
|
||||
@override String get noContentAvailable => 'Intet indhold tilgængeligt';
|
||||
@override String get addMediaToLibraries => 'Tilføj medier til dine biblioteker';
|
||||
@override String get continueWatching => 'Fortsæt med at se';
|
||||
@@ -938,8 +919,6 @@ class _TranslationsErrorsDa extends TranslationsErrorsEn {
|
||||
@override String get connectionFailed => 'Kan ikke oprette forbindelse til medieserver';
|
||||
@override String failedToLoad({required Object context, required Object error}) => 'Kunne ikke indlæse ${context}: ${error}';
|
||||
@override String get noClientAvailable => 'Ingen klient tilgængelig';
|
||||
@override String authenticationFailed({required Object error}) => 'Godkendelse mislykkedes: ${error}';
|
||||
@override String get couldNotLaunchUrl => 'Kunne ikke åbne godkendelses-URL';
|
||||
@override String get pleaseEnterToken => 'Indtast et token';
|
||||
@override String get invalidToken => 'Ugyldigt token';
|
||||
@override String failedToVerifyToken({required Object error}) => 'Kunne ikke verificere token: ${error}';
|
||||
@@ -973,6 +952,8 @@ class _TranslationsLibrariesDa extends TranslationsLibrariesEn {
|
||||
@override String get allLibrariesHidden => 'Alle biblioteker er skjult';
|
||||
@override String hiddenLibrariesCount({required Object count}) => 'Skjulte biblioteker (${count})';
|
||||
@override String get thisLibraryIsEmpty => 'Dette bibliotek er tomt';
|
||||
@override String get noItemsMatchFilters => 'Ingen elementer matcher de aktive filtre';
|
||||
@override String get resetFilters => 'Nulstil filtre';
|
||||
@override String get all => 'Alle';
|
||||
@override String get clearAll => 'Ryd alle';
|
||||
@override String scanLibraryConfirm({required Object title}) => 'Er du sikker på, at du vil scanne "${title}"?';
|
||||
@@ -998,8 +979,6 @@ class _TranslationsLibrariesDa extends TranslationsLibrariesEn {
|
||||
@override late final _TranslationsLibrariesGroupingsDa groupings = _TranslationsLibrariesGroupingsDa._(_root);
|
||||
@override late final _TranslationsLibrariesFilterCategoriesDa filterCategories = _TranslationsLibrariesFilterCategoriesDa._(_root);
|
||||
@override late final _TranslationsLibrariesSortLabelsDa sortLabels = _TranslationsLibrariesSortLabelsDa._(_root);
|
||||
@override String get noItemsMatchFilters => 'Ingen elementer matcher de aktive filtre';
|
||||
@override String get resetFilters => 'Nulstil filtre';
|
||||
}
|
||||
|
||||
// Path: about
|
||||
@@ -1023,7 +1002,6 @@ class _TranslationsServerSelectionDa extends TranslationsServerSelectionEn {
|
||||
final TranslationsDa _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get allServerConnectionsFailed => 'Kunne ikke oprette forbindelse til nogen servere. Tjek dit netværk.';
|
||||
@override String noServersFoundForAccount({required Object username, required Object email}) => 'Ingen servere fundet for ${username} (${email})';
|
||||
@override String failedToLoadServers({required Object error}) => 'Kunne ikke indlæse servere: ${error}';
|
||||
}
|
||||
@@ -1102,7 +1080,6 @@ class _TranslationsExploreDa extends TranslationsExploreEn {
|
||||
@override String get watchlistUpdateFailed => 'Kunne ikke opdatere ønskelisten';
|
||||
@override String get notInLibrary => 'Ikke i dit bibliotek';
|
||||
@override String get inTheseLibraries => 'I disse biblioteker';
|
||||
@override String availableOn({required Object server}) => 'Tilgængelig på ${server}';
|
||||
@override String get checkingLibrary => 'Tjekker dit bibliotek...';
|
||||
@override String get emptyTitle => 'Der er ikke noget her endnu';
|
||||
@override String emptyMessage({required Object source}) => 'Rækker fra ${source} vises her, når de har indhold.';
|
||||
@@ -1123,6 +1100,8 @@ class _TranslationsLiveTvDa extends TranslationsLiveTvEn {
|
||||
@override String get guide => 'Guide';
|
||||
@override String get noChannels => 'Ingen kanaler tilgængelige';
|
||||
@override String get noDvr => 'Ingen DVR konfigureret på nogen server';
|
||||
@override String get serverUnavailable => 'Live-tv-serveren er ikke tilgængelig.';
|
||||
@override String get serverNotConnected => 'Live-tv-serveren er ikke forbundet.';
|
||||
@override String get noPrograms => 'Ingen programdata tilgængelig';
|
||||
@override String get liveStreamFailed => 'Livestream mislykkedes';
|
||||
@override String get unknownProgram => 'Ukendt program';
|
||||
@@ -1158,7 +1137,6 @@ class _TranslationsLiveTvDa extends TranslationsLiveTvEn {
|
||||
@override String get scheduledRecordings => 'Planlagt';
|
||||
@override String get recordingRules => 'Optagelsesregler';
|
||||
@override String get noScheduledRecordings => 'Ingen optagelser planlagt';
|
||||
@override String get noRecordingRules => 'Ingen optagelsesregler endnu';
|
||||
@override String get manageRecording => 'Administrer optagelse';
|
||||
@override String get cancelRecording => 'Annullér optagelse';
|
||||
@override String get cancelRecordingTitle => 'Annullér denne optagelse?';
|
||||
@@ -1175,7 +1153,6 @@ class _TranslationsLiveTvDa extends TranslationsLiveTvEn {
|
||||
@override String get recordingCancelled => 'Optagelse annulleret';
|
||||
@override String get recordingRuleDeleted => 'Optagelsesregel slettet';
|
||||
@override String get processRecordingRules => 'Genberegn regler';
|
||||
@override String get loadingRecordings => 'Indlæser optagelser ...';
|
||||
@override String get recordingInProgress => 'Optager nu';
|
||||
@override String recordingsCount({required Object count}) => '${count} planlagt';
|
||||
@override String get editRule => 'Rediger regel';
|
||||
@@ -1196,7 +1173,6 @@ class _TranslationsCollectionsDa extends TranslationsCollectionsEn {
|
||||
@override String get title => 'Samlinger';
|
||||
@override String get collection => 'Samling';
|
||||
@override String get empty => 'Samlingen er tom';
|
||||
@override String get unknownLibrarySection => 'Kan ikke slette: Ukendt bibliotekssektion';
|
||||
@override String get deleteCollection => 'Slet samling';
|
||||
@override String deleteConfirm({required Object title}) => 'Slet "${title}"? Dette kan ikke fortrydes.';
|
||||
@override String get deleted => 'Samling slettet';
|
||||
@@ -1243,6 +1219,7 @@ class _TranslationsPlaylistsDa extends TranslationsPlaylistsEn {
|
||||
@override String get itemAdded => 'Tilføjet til playliste';
|
||||
@override String get itemRemoved => 'Fjernet fra playliste';
|
||||
@override String get selectPlaylist => 'Vælg playliste';
|
||||
@override String get searchPlaylists => 'Søg i playlister...';
|
||||
@override String get errorCreating => 'Kunne ikke oprette playliste';
|
||||
@override String get errorDeleting => 'Kunne ikke slette playliste';
|
||||
@override String get errorLoading => 'Kunne ikke indlæse playlister';
|
||||
@@ -1346,15 +1323,15 @@ class _TranslationsWatchTogetherDa extends TranslationsWatchTogetherEn {
|
||||
@override String participantResumed({required Object name}) => '${name} genoptog';
|
||||
@override String participantSeeked({required Object name}) => '${name} spoled';
|
||||
@override String participantBuffering({required Object name}) => '${name} bufferer';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} bruger en ældre appversion — synkronisering er ikke tilgængelig';
|
||||
@override String resumingWithout({required Object name}) => 'Fortsætter uden ${name}';
|
||||
@override String get waitingForParticipants => 'Venter på at andre indlæser...';
|
||||
@override String waitingForName({required Object name}) => 'Venter på ${name}...';
|
||||
@override String get recentRooms => 'Seneste rum';
|
||||
@override String get renameRoom => 'Omdøb rum';
|
||||
@override String get removeRoom => 'Fjern';
|
||||
@override String get guestSwitchUnavailable => 'Kunne ikke skifte — server ikke tilgængelig for synkronisering';
|
||||
@override String get guestSwitchFailed => 'Kunne ikke skifte — indhold blev ikke fundet på denne server';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} bruger en ældre appversion — synkronisering er ikke tilgængelig';
|
||||
@override String resumingWithout({required Object name}) => 'Fortsætter uden ${name}';
|
||||
@override String waitingForName({required Object name}) => 'Venter på ${name}...';
|
||||
}
|
||||
|
||||
// Path: downloads
|
||||
@@ -1406,7 +1383,6 @@ class _TranslationsDownloadsDa extends TranslationsDownloadsEn {
|
||||
@override String get customAmount => 'Angiv antal...';
|
||||
@override String get includeSpecials => 'Inkludér specials';
|
||||
@override String get howManyEpisodes => 'Hvor mange episoder?';
|
||||
@override String itemsQueued({required Object count}) => '${count} elementer sat i kø til download';
|
||||
@override String get keepSynced => 'Hold synkroniseret';
|
||||
@override String get downloadOnce => 'Download én gang';
|
||||
@override String keepNUnwatched({required Object count}) => 'Behold ${count} usete';
|
||||
@@ -1780,7 +1756,6 @@ class _TranslationsAddServerDa extends TranslationsAddServerEn {
|
||||
@override String quickConnectFailed({required Object error}) => 'Quick Connect mislykkedes: ${error}';
|
||||
@override String get addPlexTitle => 'Log ind med Plex';
|
||||
@override String get pinExpired => 'PIN udløb før login. Prøv igen.';
|
||||
@override String get duplicatePlexAccount => 'Allerede logget ind på Plex. Log ud for at skifte konto.';
|
||||
@override String failedToRegisterAccount({required Object error}) => 'Kunne ikke registrere kontoen: ${error}';
|
||||
@override String get enterJellyfinUrlError => 'Angiv URL\'en til din Jellyfin-server';
|
||||
@override String get addConnectionTitle => 'Tilføj forbindelse';
|
||||
@@ -1906,7 +1881,6 @@ class _TranslationsLibrariesSortLabelsDa extends TranslationsLibrariesSortLabels
|
||||
@override String get communityRating => 'Fællesskabsvurdering';
|
||||
@override String get criticRating => 'Kritikerbedømmelse';
|
||||
@override String get userRating => 'Brugerbedømmelse';
|
||||
@override String get lastPlayed => 'Sidst afspillet';
|
||||
@override String get datePlayed => 'Afspilningsdato';
|
||||
@override String get playCount => 'Antal afspilninger';
|
||||
@override String get productionYear => 'Produktionsår';
|
||||
@@ -1965,7 +1939,6 @@ class _TranslationsCompanionRemoteSessionDa extends TranslationsCompanionRemoteS
|
||||
|
||||
// Translations
|
||||
@override String get startingServer => 'Starter fjernserver...';
|
||||
@override String get failedToCreate => 'Kunne ikke starte fjernserver:';
|
||||
@override String get hostAddress => 'Værtsadresse';
|
||||
@override String get connected => 'Forbundet';
|
||||
@override String get serverRunning => 'Fjernserver aktiv';
|
||||
@@ -2047,6 +2020,8 @@ class _TranslationsCompanionRemoteErrorsDa extends TranslationsCompanionRemoteEr
|
||||
// Translations
|
||||
@override String get noNetworkInterface => 'Ingen netværksgrænseflade fundet';
|
||||
@override String get authenticationFailed => 'Godkendelse mislykkedes';
|
||||
@override String serverStartFailed({required Object error}) => 'Kunne ikke starte fjernserveren: ${error}';
|
||||
@override String commandFailed({required Object error}) => 'Kunne ikke sende fjernkommando: ${error}';
|
||||
@override String get joinTimedOut => 'Tidsgrænse for deltagelse i session overskredet';
|
||||
@override String get failedToConnectAnyAddress => 'Kunne ikke oprette forbindelse til nogen adresse';
|
||||
@override String connectionLostAfterAttempts({required Object attempts}) => 'Forbindelse mistet efter ${attempts} forsøg';
|
||||
@@ -2123,7 +2098,6 @@ extension on TranslationsDa {
|
||||
dynamic _flatMapFunction(String path) {
|
||||
return switch (path) {
|
||||
'app.title' => 'Plezy',
|
||||
'auth.signIn' => 'Log ind',
|
||||
'auth.signInWithPlex' => 'Log ind med Plex',
|
||||
'auth.showQRCode' => 'Vis QR-kode',
|
||||
'auth.authenticate' => 'Godkend',
|
||||
@@ -2174,10 +2148,8 @@ extension on TranslationsDa {
|
||||
'common.episodeNumberTitle' => ({required Object number, required Object title}) => 'Episode ${number} - ${title}',
|
||||
'common.chapterNumber' => ({required Object number}) => 'Kapitel ${number}',
|
||||
'common.reconnect' => 'Genopret forbindelse',
|
||||
'common.exit' => 'Afslut',
|
||||
'common.viewAll' => 'Vis alle',
|
||||
'common.checkingNetwork' => 'Tjekker netværk...',
|
||||
'common.refreshingServers' => 'Opdaterer servere...',
|
||||
'common.loadingServers' => 'Indlæser servere...',
|
||||
'common.connectingToServers' => 'Forbinder til servere...',
|
||||
'common.startingOfflineMode' => 'Starter offlinetilstand...',
|
||||
@@ -2251,6 +2223,12 @@ extension on TranslationsDa {
|
||||
'settings.tvFullCardLayoutDescription' => 'Brug TV-kort kun med billeder og skuespillernavne ovenpå',
|
||||
'settings.focusGlow' => 'Fokusglød',
|
||||
'settings.focusGlowDescription' => 'Vis en blød glød omkring det fokuserede kort',
|
||||
'settings.visualEffects' => 'Visuelle effekter',
|
||||
'settings.visualEffectsAuto' => 'Automatisk',
|
||||
'settings.visualEffectsAutoDescription' => 'Reducer automatisk effekter på enheder med lav ydeevne',
|
||||
'settings.visualEffectsFull' => 'Fuld',
|
||||
'settings.visualEffectsReduced' => 'Reduceret',
|
||||
'settings.visualEffectsReducedDescription' => 'Færre animationer og illustrationer i lavere opløsning',
|
||||
'settings.hideSpoilers' => 'Skjul spoilere for usete episoder',
|
||||
'settings.hideSpoilersDescription' => 'Slør miniaturebilleder og beskrivelser for usete episoder',
|
||||
'settings.playerBackend' => 'Afspillerbackend',
|
||||
@@ -2263,7 +2241,7 @@ extension on TranslationsDa {
|
||||
'settings.bufferSizeAuto' => 'Auto (Anbefalet)',
|
||||
'settings.bufferSizeWarning' => ({required Object heap, required Object size}) => '${heap}MB hukommelse tilgængelig. En buffer på ${size}MB kan påvirke afspilning.',
|
||||
'settings.defaultQualityTitle' => 'Standardkvalitet',
|
||||
'settings.defaultQualityDescription' => 'Bruges ved start af afspilning. Lavere værdier reducerer båndbredden.',
|
||||
'settings.musicQualityTitle' => 'Musikkvalitet',
|
||||
'settings.subtitleStyling' => 'Undertekststil',
|
||||
'settings.subtitleStylingDescription' => 'Tilpas underteksters udseende',
|
||||
'settings.smallSkipDuration' => 'Kort spring-varighed',
|
||||
@@ -2357,10 +2335,9 @@ extension on TranslationsDa {
|
||||
'settings.maxVolumePercent' => ({required Object percent}) => '${percent}%',
|
||||
'settings.discordRichPresence' => 'Discord Rich Presence',
|
||||
'settings.discordRichPresenceDescription' => 'Vis hvad du ser på Discord',
|
||||
'settings.trakt' => 'Trakt',
|
||||
'settings.traktDescription' => 'Synkroniser visningshistorik med Trakt',
|
||||
'settings.services' => 'Tjenester',
|
||||
'settings.servicesDescription' => 'Forbind Trakt, MyAnimeList, Seerr og mere',
|
||||
'settings.manageLibrariesDescription' => 'Omarranger og skjul biblioteker',
|
||||
'settings.companionRemoteServer' => 'Companion Remote Server',
|
||||
'settings.companionRemoteServerDescription' => 'Tillad mobilenheder på dit netværk at styre denne app',
|
||||
'settings.autoPip' => 'Auto billede-i-billede',
|
||||
@@ -2423,7 +2400,6 @@ extension on TranslationsDa {
|
||||
'settings.showNavBarLabels' => 'Vis navigationsbarlabels',
|
||||
'settings.showNavBarLabelsDescription' => 'Vis tekstlabels under navigationsbarikoner',
|
||||
'settings.startupSection' => 'Startsektion',
|
||||
'settings.startupSectionDescription' => 'Vælg hvilken sektion Plezy åbner ved start',
|
||||
'settings.liveTvDefaultFavorites' => 'Standard til favoritkanaler',
|
||||
'settings.liveTvDefaultFavoritesDescription' => 'Vis kun favoritkanaler ved åbning af Live TV',
|
||||
'settings.display' => 'Skærm',
|
||||
@@ -2435,13 +2411,6 @@ extension on TranslationsDa {
|
||||
'settings.subtitlesAndConfig' => 'Undertekster og konfiguration',
|
||||
'settings.seekAndTiming' => 'Søgning og timing',
|
||||
'settings.behavior' => 'Adfærd',
|
||||
'settings.manageLibrariesDescription' => 'Omarranger og skjul biblioteker',
|
||||
'settings.visualEffects' => 'Visuelle effekter',
|
||||
'settings.visualEffectsAuto' => 'Automatisk',
|
||||
'settings.visualEffectsAutoDescription' => 'Reducer automatisk effekter på enheder med lav ydeevne',
|
||||
'settings.visualEffectsFull' => 'Fuld',
|
||||
'settings.visualEffectsReduced' => 'Reduceret',
|
||||
'settings.visualEffectsReducedDescription' => 'Færre animationer og illustrationer i lavere opløsning',
|
||||
'search.hint' => 'Søg film, serier, musik...',
|
||||
'search.tryDifferentTerm' => 'Prøv en anden søgning',
|
||||
'search.searchYourMedia' => 'Søg i dine medier',
|
||||
@@ -2518,14 +2487,11 @@ extension on TranslationsDa {
|
||||
'mediaMenu.playVersion' => 'Afspil version...',
|
||||
'rateSheet.title' => 'Bedøm',
|
||||
'rateSheet.server' => 'Server',
|
||||
'rateSheet.starValue' => ({required Object rating}) => '${rating} / 5',
|
||||
'rateSheet.scoreValue' => ({required Object score}) => '${score} / 10',
|
||||
'rateSheet.setScore' => 'Angiv en score',
|
||||
'rateSheet.favorite' => 'Favorit',
|
||||
'rateSheet.favorited' => 'Føjet til favoritter',
|
||||
'rateSheet.saved' => 'Gemt',
|
||||
'rateSheet.notAvailable' => 'Intet match fundet',
|
||||
'rateSheet.noConnectedServices' => 'Forbind en tjeneste i Indstillinger for at bedømme der.',
|
||||
'rateSheet.favorite' => 'Favorit',
|
||||
'rateSheet.favorited' => 'Føjet til favoritter',
|
||||
'accessibility.mediaCardMovie' => ({required Object title}) => '${title}, film',
|
||||
'accessibility.mediaCardShow' => ({required Object title}) => '${title}, TV-serie',
|
||||
'accessibility.mediaCardEpisode' => ({required Object title, required Object episodeInfo}) => '${title}, ${episodeInfo}',
|
||||
@@ -2534,6 +2500,14 @@ extension on TranslationsDa {
|
||||
'accessibility.mediaCardPartiallyWatched' => ({required Object percent}) => '${percent} procent set',
|
||||
'accessibility.mediaCardUnwatched' => 'uset',
|
||||
'accessibility.tapToPlay' => 'Tryk for at afspille',
|
||||
'accessibility.decrease' => 'Formindsk',
|
||||
'accessibility.increase' => 'Forøg',
|
||||
'accessibility.decreaseValue' => ({required Object label}) => 'Formindsk ${label}',
|
||||
'accessibility.increaseValue' => ({required Object label}) => 'Forøg ${label}',
|
||||
'accessibility.hue' => 'Farvetone',
|
||||
'accessibility.saturation' => 'Mætning',
|
||||
'accessibility.brightness' => 'Lysstyrke',
|
||||
'accessibility.hexColor' => 'Hexfarve',
|
||||
'tooltips.shufflePlay' => 'Afspil tilfældigt',
|
||||
'tooltips.playTrailer' => 'Afspil trailer',
|
||||
'tooltips.markAsWatched' => 'Markér som set',
|
||||
@@ -2575,13 +2549,11 @@ extension on TranslationsDa {
|
||||
'videoControls.settingsButton' => 'Afspilningsindstillinger',
|
||||
'videoControls.tracksButton' => 'Lyd og undertekster',
|
||||
'videoControls.chaptersButton' => 'Kapitler',
|
||||
'videoControls.versionsButton' => 'Videoversioner',
|
||||
'videoControls.versionQualityButton' => 'Version og kvalitet',
|
||||
'videoControls.versionColumnHeader' => 'Version',
|
||||
'videoControls.qualityColumnHeader' => 'Kvalitet',
|
||||
'videoControls.qualityOriginal' => 'Original',
|
||||
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
|
||||
'videoControls.qualityBandwidthEstimate' => ({required Object bitrate}) => '~${bitrate} Mbps',
|
||||
'videoControls.transcodeUnavailableFallback' => 'Transkodning utilgængelig — afspiller original kvalitet',
|
||||
'videoControls.pipButton' => 'Billede-i-billede-tilstand',
|
||||
'videoControls.aspectRatioButton' => 'Billedformat',
|
||||
@@ -2621,10 +2593,6 @@ extension on TranslationsDa {
|
||||
'videoControls.subtitleDownloaded' => 'Undertekst downloadet',
|
||||
'videoControls.subtitleDownloadFailed' => 'Kunne ikke downloade undertekst',
|
||||
'videoControls.searchLanguages' => 'Søg sprog...',
|
||||
'userStatus.admin' => 'Administrator',
|
||||
'userStatus.restricted' => 'Begrænset',
|
||||
'userStatus.protected' => 'Beskyttet',
|
||||
'userStatus.current' => 'NUVÆRENDE',
|
||||
'messages.markedAsWatched' => 'Markeret som set',
|
||||
'messages.markedAsUnwatched' => 'Markeret som uset',
|
||||
'messages.markedAsWatchedOffline' => 'Markeret som set (synkroniseres online)',
|
||||
@@ -2634,8 +2602,6 @@ extension on TranslationsDa {
|
||||
'messages.errorLoading' => ({required Object error}) => 'Fejl: ${error}',
|
||||
'messages.streamInterrupted' => 'Streamen blev afbrudt. Tryk på afspil, eller spol for at prøve igen.',
|
||||
'messages.fileInfoNotAvailable' => 'Filinfo ikke tilgængelig',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Fejl ved indlæsning af filinfo: ${error}',
|
||||
'messages.errorLoadingSeries' => 'Fejl ved indlæsning af serie',
|
||||
'messages.musicNotSupported' => 'Musikafspilning understøttes endnu ikke',
|
||||
@@ -2643,6 +2609,8 @@ extension on TranslationsDa {
|
||||
'messages.noProfilesAvailable' => 'Ingen profiler tilgængelige',
|
||||
'messages.contactAdminForProfiles' => 'Kontakt din serveradministrator for at tilføje profiler',
|
||||
'messages.unableToDetermineLibrarySection' => 'Kan ikke bestemme biblioteksafdeling for dette element',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.logsCleared' => 'Logs ryddet',
|
||||
'messages.logsCopied' => 'Logs kopieret til udklipsholder',
|
||||
'messages.noLogsAvailable' => 'Ingen logs tilgængelige',
|
||||
@@ -2759,7 +2727,6 @@ extension on TranslationsDa {
|
||||
'profiles.pinExplain' => '4-cifret PIN kræves for at skifte profiler.',
|
||||
'profiles.continueButton' => 'Fortsæt',
|
||||
'profiles.pinsDontMatch' => 'PIN-koder matcher ikke',
|
||||
'profiles.initializeServicesFailed' => 'Kunne ikke initialisere profiltjenester',
|
||||
'connections.sectionTitle' => 'Forbindelser',
|
||||
'connections.addConnection' => 'Tilføj forbindelse',
|
||||
'connections.addConnectionSubtitleNoProfile' => 'Log ind med Plex eller forbind til en Jellyfin-server',
|
||||
@@ -2770,7 +2737,6 @@ extension on TranslationsDa {
|
||||
'connections.editJellyfinTitle' => 'Rediger Jellyfin-forbindelse',
|
||||
'connections.editJellyfinIntro' => ({required Object serverName}) => 'Tilføj eller fjern URL\'er for ${serverName}. Plezy bruger den tilgængelige URL med lavest latenstid.',
|
||||
'discover.title' => 'Opdag',
|
||||
'discover.switchProfile' => 'Skift profil',
|
||||
'discover.noContentAvailable' => 'Intet indhold tilgængeligt',
|
||||
'discover.addMediaToLibraries' => 'Tilføj medier til dine biblioteker',
|
||||
'discover.continueWatching' => 'Fortsæt med at se',
|
||||
@@ -2797,8 +2763,6 @@ extension on TranslationsDa {
|
||||
'errors.connectionFailed' => 'Kan ikke oprette forbindelse til medieserver',
|
||||
'errors.failedToLoad' => ({required Object context, required Object error}) => 'Kunne ikke indlæse ${context}: ${error}',
|
||||
'errors.noClientAvailable' => 'Ingen klient tilgængelig',
|
||||
'errors.authenticationFailed' => ({required Object error}) => 'Godkendelse mislykkedes: ${error}',
|
||||
'errors.couldNotLaunchUrl' => 'Kunne ikke åbne godkendelses-URL',
|
||||
'errors.pleaseEnterToken' => 'Indtast et token',
|
||||
'errors.invalidToken' => 'Ugyldigt token',
|
||||
'errors.failedToVerifyToken' => ({required Object error}) => 'Kunne ikke verificere token: ${error}',
|
||||
@@ -2823,6 +2787,8 @@ extension on TranslationsDa {
|
||||
'libraries.allLibrariesHidden' => 'Alle biblioteker er skjult',
|
||||
'libraries.hiddenLibrariesCount' => ({required Object count}) => 'Skjulte biblioteker (${count})',
|
||||
'libraries.thisLibraryIsEmpty' => 'Dette bibliotek er tomt',
|
||||
'libraries.noItemsMatchFilters' => 'Ingen elementer matcher de aktive filtre',
|
||||
'libraries.resetFilters' => 'Nulstil filtre',
|
||||
'libraries.all' => 'Alle',
|
||||
'libraries.clearAll' => 'Ryd alle',
|
||||
'libraries.scanLibraryConfirm' => ({required Object title}) => 'Er du sikker på, at du vil scanne "${title}"?',
|
||||
@@ -2871,7 +2837,6 @@ extension on TranslationsDa {
|
||||
'libraries.sortLabels.communityRating' => 'Fællesskabsvurdering',
|
||||
'libraries.sortLabels.criticRating' => 'Kritikerbedømmelse',
|
||||
'libraries.sortLabels.userRating' => 'Brugerbedømmelse',
|
||||
'libraries.sortLabels.lastPlayed' => 'Sidst afspillet',
|
||||
'libraries.sortLabels.datePlayed' => 'Afspilningsdato',
|
||||
'libraries.sortLabels.playCount' => 'Antal afspilninger',
|
||||
'libraries.sortLabels.productionYear' => 'Produktionsår',
|
||||
@@ -2885,14 +2850,11 @@ extension on TranslationsDa {
|
||||
'libraries.sortLabels.dateShared' => 'Delt dato',
|
||||
'libraries.sortLabels.latestEpisodeAirDate' => 'Seneste episodes premieredato',
|
||||
'libraries.sortLabels.lastEpisodeDateAdded' => 'Dato for senest tilføjede episode',
|
||||
'libraries.noItemsMatchFilters' => 'Ingen elementer matcher de aktive filtre',
|
||||
'libraries.resetFilters' => 'Nulstil filtre',
|
||||
'about.title' => 'Om',
|
||||
'about.openSourceLicenses' => 'Open source-licenser',
|
||||
'about.versionLabel' => ({required Object version}) => 'Version ${version}',
|
||||
'about.appDescription' => 'En smuk Plex- og Jellyfin-klient til Flutter',
|
||||
'about.viewLicensesDescription' => 'Se licenser for tredjepartsbiblioteker',
|
||||
'serverSelection.allServerConnectionsFailed' => 'Kunne ikke oprette forbindelse til nogen servere. Tjek dit netværk.',
|
||||
'serverSelection.noServersFoundForAccount' => ({required Object username, required Object email}) => 'Ingen servere fundet for ${username} (${email})',
|
||||
'serverSelection.failedToLoadServers' => ({required Object error}) => 'Kunne ikke indlæse servere: ${error}',
|
||||
'hubDetail.title' => 'Titel',
|
||||
@@ -2938,7 +2900,6 @@ extension on TranslationsDa {
|
||||
'explore.watchlistUpdateFailed' => 'Kunne ikke opdatere ønskelisten',
|
||||
'explore.notInLibrary' => 'Ikke i dit bibliotek',
|
||||
'explore.inTheseLibraries' => 'I disse biblioteker',
|
||||
'explore.availableOn' => ({required Object server}) => 'Tilgængelig på ${server}',
|
||||
'explore.checkingLibrary' => 'Tjekker dit bibliotek...',
|
||||
'explore.emptyTitle' => 'Der er ikke noget her endnu',
|
||||
'explore.emptyMessage' => ({required Object source}) => 'Rækker fra ${source} vises her, når de har indhold.',
|
||||
@@ -2950,6 +2911,8 @@ extension on TranslationsDa {
|
||||
'liveTv.guide' => 'Guide',
|
||||
'liveTv.noChannels' => 'Ingen kanaler tilgængelige',
|
||||
'liveTv.noDvr' => 'Ingen DVR konfigureret på nogen server',
|
||||
'liveTv.serverUnavailable' => 'Live-tv-serveren er ikke tilgængelig.',
|
||||
'liveTv.serverNotConnected' => 'Live-tv-serveren er ikke forbundet.',
|
||||
'liveTv.noPrograms' => 'Ingen programdata tilgængelig',
|
||||
'liveTv.liveStreamFailed' => 'Livestream mislykkedes',
|
||||
'liveTv.unknownProgram' => 'Ukendt program',
|
||||
@@ -2985,7 +2948,6 @@ extension on TranslationsDa {
|
||||
'liveTv.scheduledRecordings' => 'Planlagt',
|
||||
'liveTv.recordingRules' => 'Optagelsesregler',
|
||||
'liveTv.noScheduledRecordings' => 'Ingen optagelser planlagt',
|
||||
'liveTv.noRecordingRules' => 'Ingen optagelsesregler endnu',
|
||||
'liveTv.manageRecording' => 'Administrer optagelse',
|
||||
'liveTv.cancelRecording' => 'Annullér optagelse',
|
||||
'liveTv.cancelRecordingTitle' => 'Annullér denne optagelse?',
|
||||
@@ -3002,7 +2964,6 @@ extension on TranslationsDa {
|
||||
'liveTv.recordingCancelled' => 'Optagelse annulleret',
|
||||
'liveTv.recordingRuleDeleted' => 'Optagelsesregel slettet',
|
||||
'liveTv.processRecordingRules' => 'Genberegn regler',
|
||||
'liveTv.loadingRecordings' => 'Indlæser optagelser ...',
|
||||
'liveTv.recordingInProgress' => 'Optager nu',
|
||||
'liveTv.recordingsCount' => ({required Object count}) => '${count} planlagt',
|
||||
'liveTv.editRule' => 'Rediger regel',
|
||||
@@ -3014,7 +2975,6 @@ extension on TranslationsDa {
|
||||
'collections.title' => 'Samlinger',
|
||||
'collections.collection' => 'Samling',
|
||||
'collections.empty' => 'Samlingen er tom',
|
||||
'collections.unknownLibrarySection' => 'Kan ikke slette: Ukendt bibliotekssektion',
|
||||
'collections.deleteCollection' => 'Slet samling',
|
||||
'collections.deleteConfirm' => ({required Object title}) => 'Slet "${title}"? Dette kan ikke fortrydes.',
|
||||
'collections.deleted' => 'Samling slettet',
|
||||
@@ -3052,6 +3012,7 @@ extension on TranslationsDa {
|
||||
'playlists.itemAdded' => 'Tilføjet til playliste',
|
||||
'playlists.itemRemoved' => 'Fjernet fra playliste',
|
||||
'playlists.selectPlaylist' => 'Vælg playliste',
|
||||
'playlists.searchPlaylists' => 'Søg i playlister...',
|
||||
'playlists.errorCreating' => 'Kunne ikke oprette playliste',
|
||||
'playlists.errorDeleting' => 'Kunne ikke slette playliste',
|
||||
'playlists.errorLoading' => 'Kunne ikke indlæse playlister',
|
||||
@@ -3134,22 +3095,20 @@ extension on TranslationsDa {
|
||||
'watchTogether.participantResumed' => ({required Object name}) => '${name} genoptog',
|
||||
'watchTogether.participantSeeked' => ({required Object name}) => '${name} spoled',
|
||||
'watchTogether.participantBuffering' => ({required Object name}) => '${name} bufferer',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} bruger en ældre appversion — synkronisering er ikke tilgængelig',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Fortsætter uden ${name}',
|
||||
'watchTogether.waitingForParticipants' => 'Venter på at andre indlæser...',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Venter på ${name}...',
|
||||
'watchTogether.recentRooms' => 'Seneste rum',
|
||||
'watchTogether.renameRoom' => 'Omdøb rum',
|
||||
'watchTogether.removeRoom' => 'Fjern',
|
||||
'watchTogether.guestSwitchUnavailable' => 'Kunne ikke skifte — server ikke tilgængelig for synkronisering',
|
||||
'watchTogether.guestSwitchFailed' => 'Kunne ikke skifte — indhold blev ikke fundet på denne server',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} bruger en ældre appversion — synkronisering er ikke tilgængelig',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Fortsætter uden ${name}',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Venter på ${name}...',
|
||||
'downloads.title' => 'Downloads',
|
||||
'downloads.manage' => 'Administrer',
|
||||
'downloads.tvShows' => 'TV-serier',
|
||||
'downloads.movies' => 'Film',
|
||||
'downloads.music' => 'Musik',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.tracksQueued' => ({required Object count}) => '${count} numre i kø til download',
|
||||
'downloads.noDownloads' => 'Ingen downloads endnu',
|
||||
'downloads.noDownloadsDescription' => 'Downloadet indhold vises her til offlinevisning',
|
||||
@@ -3164,6 +3123,8 @@ extension on TranslationsDa {
|
||||
'downloads.deleteConfirm' => ({required Object title}) => 'Slet "${title}" fra denne enhed?',
|
||||
'downloads.cancelledDownloadTitle' => 'Annulleret download',
|
||||
'downloads.cancelledDownloadMessage' => 'Denne download blev annulleret. Hvad vil du gøre?',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.allEpisodesAlreadyDownloaded' => 'Alle episoder er allerede downloadet',
|
||||
'downloads.resumeDownload' => 'Genoptag download',
|
||||
'downloads.cancelledDownload' => 'Annulleret download',
|
||||
@@ -3187,7 +3148,6 @@ extension on TranslationsDa {
|
||||
'downloads.customAmount' => 'Angiv antal...',
|
||||
'downloads.includeSpecials' => 'Inkludér specials',
|
||||
'downloads.howManyEpisodes' => 'Hvor mange episoder?',
|
||||
'downloads.itemsQueued' => ({required Object count}) => '${count} elementer sat i kø til download',
|
||||
'downloads.keepSynced' => 'Hold synkroniseret',
|
||||
'downloads.downloadOnce' => 'Download én gang',
|
||||
'downloads.keepNUnwatched' => ({required Object count}) => 'Behold ${count} usete',
|
||||
@@ -3231,7 +3191,6 @@ extension on TranslationsDa {
|
||||
'companionRemote.connectedTo' => ({required Object name}) => 'Forbundet til ${name}',
|
||||
'companionRemote.unknownDevice' => 'Ukendt enhed',
|
||||
'companionRemote.session.startingServer' => 'Starter fjernserver...',
|
||||
'companionRemote.session.failedToCreate' => 'Kunne ikke starte fjernserver:',
|
||||
'companionRemote.session.hostAddress' => 'Værtsadresse',
|
||||
'companionRemote.session.connected' => 'Forbundet',
|
||||
'companionRemote.session.serverRunning' => 'Fjernserver aktiv',
|
||||
@@ -3286,6 +3245,8 @@ extension on TranslationsDa {
|
||||
'companionRemote.remote.searchHint' => 'Søg på desktop...',
|
||||
'companionRemote.errors.noNetworkInterface' => 'Ingen netværksgrænseflade fundet',
|
||||
'companionRemote.errors.authenticationFailed' => 'Godkendelse mislykkedes',
|
||||
'companionRemote.errors.serverStartFailed' => ({required Object error}) => 'Kunne ikke starte fjernserveren: ${error}',
|
||||
'companionRemote.errors.commandFailed' => ({required Object error}) => 'Kunne ikke sende fjernkommando: ${error}',
|
||||
'companionRemote.errors.joinTimedOut' => 'Tidsgrænse for deltagelse i session overskredet',
|
||||
'companionRemote.errors.failedToConnectAnyAddress' => 'Kunne ikke oprette forbindelse til nogen adresse',
|
||||
'companionRemote.errors.connectionLostAfterAttempts' => ({required Object attempts}) => 'Forbindelse mistet efter ${attempts} forsøg',
|
||||
@@ -3530,7 +3491,6 @@ extension on TranslationsDa {
|
||||
'addServer.quickConnectFailed' => ({required Object error}) => 'Quick Connect mislykkedes: ${error}',
|
||||
'addServer.addPlexTitle' => 'Log ind med Plex',
|
||||
'addServer.pinExpired' => 'PIN udløb før login. Prøv igen.',
|
||||
'addServer.duplicatePlexAccount' => 'Allerede logget ind på Plex. Log ud for at skifte konto.',
|
||||
'addServer.failedToRegisterAccount' => ({required Object error}) => 'Kunne ikke registrere kontoen: ${error}',
|
||||
'addServer.enterJellyfinUrlError' => 'Angiv URL\'en til din Jellyfin-server',
|
||||
'addServer.addConnectionTitle' => 'Tilføj forbindelse',
|
||||
|
||||
+60
-100
@@ -53,7 +53,6 @@ class TranslationsDe extends Translations with BaseTranslations<AppLocale, Trans
|
||||
@override late final _TranslationsAccessibilityDe accessibility = _TranslationsAccessibilityDe._(_root);
|
||||
@override late final _TranslationsTooltipsDe tooltips = _TranslationsTooltipsDe._(_root);
|
||||
@override late final _TranslationsVideoControlsDe videoControls = _TranslationsVideoControlsDe._(_root);
|
||||
@override late final _TranslationsUserStatusDe userStatus = _TranslationsUserStatusDe._(_root);
|
||||
@override late final _TranslationsMessagesDe messages = _TranslationsMessagesDe._(_root);
|
||||
@override late final _TranslationsSubtitlingStylingDe subtitlingStyling = _TranslationsSubtitlingStylingDe._(_root);
|
||||
@override late final _TranslationsMpvConfigDe mpvConfig = _TranslationsMpvConfigDe._(_root);
|
||||
@@ -107,7 +106,6 @@ class _TranslationsAuthDe extends TranslationsAuthEn {
|
||||
final TranslationsDe _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get signIn => 'Anmelden';
|
||||
@override String get signInWithPlex => 'Mit Plex anmelden';
|
||||
@override String get showQRCode => 'QR-Code anzeigen';
|
||||
@override String get authenticate => 'Authentifizieren';
|
||||
@@ -167,10 +165,8 @@ class _TranslationsCommonDe extends TranslationsCommonEn {
|
||||
@override String episodeNumberTitle({required Object number, required Object title}) => 'Episode ${number} - ${title}';
|
||||
@override String chapterNumber({required Object number}) => 'Kapitel ${number}';
|
||||
@override String get reconnect => 'Erneut verbinden';
|
||||
@override String get exit => 'Beenden';
|
||||
@override String get viewAll => 'Alle anzeigen';
|
||||
@override String get checkingNetwork => 'Netzwerk wird geprüft...';
|
||||
@override String get refreshingServers => 'Server werden aktualisiert...';
|
||||
@override String get loadingServers => 'Server werden geladen...';
|
||||
@override String get connectingToServers => 'Verbindung zu Servern...';
|
||||
@override String get startingOfflineMode => 'Offlinemodus wird gestartet...';
|
||||
@@ -271,6 +267,12 @@ class _TranslationsSettingsDe extends TranslationsSettingsEn {
|
||||
@override String get tvFullCardLayoutDescription => 'TV-Karten nur mit Bild verwenden und Darstellernamen einblenden';
|
||||
@override String get focusGlow => 'Fokus-Leuchten';
|
||||
@override String get focusGlowDescription => 'Sanftes Leuchten um die fokussierte Karte anzeigen';
|
||||
@override String get visualEffects => 'Visuelle Effekte';
|
||||
@override String get visualEffectsAuto => 'Automatisch';
|
||||
@override String get visualEffectsAutoDescription => 'Effekte auf leistungsschwachen Geräten automatisch reduzieren';
|
||||
@override String get visualEffectsFull => 'Vollständig';
|
||||
@override String get visualEffectsReduced => 'Reduziert';
|
||||
@override String get visualEffectsReducedDescription => 'Weniger Animationen und Grafiken mit niedrigerer Auflösung';
|
||||
@override String get hideSpoilers => 'Spoiler für nicht gesehene Episoden verbergen';
|
||||
@override String get hideSpoilersDescription => 'Vorschaubilder und Beschreibungen ungesehener Episoden verwischen';
|
||||
@override String get playerBackend => 'Player-Backend';
|
||||
@@ -283,7 +285,7 @@ class _TranslationsSettingsDe extends TranslationsSettingsEn {
|
||||
@override String get bufferSizeAuto => 'Auto (Empfohlen)';
|
||||
@override String bufferSizeWarning({required Object heap, required Object size}) => '${heap}MB Speicher verfügbar. Ein ${size}MB-Puffer kann die Wiedergabe beeinträchtigen.';
|
||||
@override String get defaultQualityTitle => 'Standardqualität';
|
||||
@override String get defaultQualityDescription => 'Wird beim Starten der Wiedergabe verwendet. Niedrigere Werte reduzieren die Bandbreite.';
|
||||
@override String get musicQualityTitle => 'Musikqualität';
|
||||
@override String get subtitleStyling => 'Untertitel-Stil';
|
||||
@override String get subtitleStylingDescription => 'Aussehen von Untertiteln anpassen';
|
||||
@override String get smallSkipDuration => 'Kleine Sprungdauer';
|
||||
@@ -377,10 +379,9 @@ class _TranslationsSettingsDe extends TranslationsSettingsEn {
|
||||
@override String maxVolumePercent({required Object percent}) => '${percent}%';
|
||||
@override String get discordRichPresence => 'Discord Rich Presence';
|
||||
@override String get discordRichPresenceDescription => 'Zeige auf Discord, was du gerade schaust';
|
||||
@override String get trakt => 'Trakt';
|
||||
@override String get traktDescription => 'Wiedergabeverlauf mit Trakt synchronisieren';
|
||||
@override String get services => 'Dienste';
|
||||
@override String get servicesDescription => 'Trakt, MyAnimeList, Seerr und mehr verbinden';
|
||||
@override String get manageLibrariesDescription => 'Mediatheken neu anordnen und ausblenden';
|
||||
@override String get companionRemoteServer => 'Companion Remote Server';
|
||||
@override String get companionRemoteServerDescription => 'Mobilgeräten in deinem Netzwerk erlauben, diese App zu steuern';
|
||||
@override String get autoPip => 'Automatisches Bild-in-Bild';
|
||||
@@ -443,7 +444,6 @@ class _TranslationsSettingsDe extends TranslationsSettingsEn {
|
||||
@override String get showNavBarLabels => 'Navigationsleisten-Beschriftungen anzeigen';
|
||||
@override String get showNavBarLabelsDescription => 'Textbeschriftungen unter den Symbolen der Navigationsleiste anzeigen';
|
||||
@override String get startupSection => 'Startbereich';
|
||||
@override String get startupSectionDescription => 'Legt fest, welchen Bereich Plezy beim Start öffnet';
|
||||
@override String get liveTvDefaultFavorites => 'Standardmäßig Favoritenkanäle';
|
||||
@override String get liveTvDefaultFavoritesDescription => 'Beim Öffnen von Live TV nur Favoritenkanäle anzeigen';
|
||||
@override String get display => 'Anzeige';
|
||||
@@ -455,13 +455,6 @@ class _TranslationsSettingsDe extends TranslationsSettingsEn {
|
||||
@override String get subtitlesAndConfig => 'Untertitel & Konfiguration';
|
||||
@override String get seekAndTiming => 'Spulen & Timing';
|
||||
@override String get behavior => 'Verhalten';
|
||||
@override String get manageLibrariesDescription => 'Mediatheken neu anordnen und ausblenden';
|
||||
@override String get visualEffects => 'Visuelle Effekte';
|
||||
@override String get visualEffectsAuto => 'Automatisch';
|
||||
@override String get visualEffectsAutoDescription => 'Effekte auf leistungsschwachen Geräten automatisch reduzieren';
|
||||
@override String get visualEffectsFull => 'Vollständig';
|
||||
@override String get visualEffectsReduced => 'Reduziert';
|
||||
@override String get visualEffectsReducedDescription => 'Weniger Animationen und Grafiken mit niedrigerer Auflösung';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -559,14 +552,11 @@ class _TranslationsRateSheetDe extends TranslationsRateSheetEn {
|
||||
// Translations
|
||||
@override String get title => 'Bewerten';
|
||||
@override String get server => 'Server';
|
||||
@override String starValue({required Object rating}) => '${rating} / 5';
|
||||
@override String scoreValue({required Object score}) => '${score} / 10';
|
||||
@override String get setScore => 'Eine Wertung festlegen';
|
||||
@override String get favorite => 'Favorit';
|
||||
@override String get favorited => 'Favorisiert';
|
||||
@override String get saved => 'Gespeichert';
|
||||
@override String get notAvailable => 'Keine Übereinstimmung gefunden';
|
||||
@override String get noConnectedServices => 'Verbinde einen Dienst in den Einstellungen, um dort zu bewerten.';
|
||||
@override String get favorite => 'Favorit';
|
||||
@override String get favorited => 'Favorisiert';
|
||||
}
|
||||
|
||||
// Path: accessibility
|
||||
@@ -584,6 +574,14 @@ class _TranslationsAccessibilityDe extends TranslationsAccessibilityEn {
|
||||
@override String mediaCardPartiallyWatched({required Object percent}) => '${percent} Prozent angesehen';
|
||||
@override String get mediaCardUnwatched => 'ungeschaut';
|
||||
@override String get tapToPlay => 'Zum Abspielen tippen';
|
||||
@override String get decrease => 'Verringern';
|
||||
@override String get increase => 'Erhöhen';
|
||||
@override String decreaseValue({required Object label}) => '${label} verringern';
|
||||
@override String increaseValue({required Object label}) => '${label} erhöhen';
|
||||
@override String get hue => 'Farbton';
|
||||
@override String get saturation => 'Sättigung';
|
||||
@override String get brightness => 'Helligkeit';
|
||||
@override String get hexColor => 'Hex-Farbe';
|
||||
}
|
||||
|
||||
// Path: tooltips
|
||||
@@ -643,13 +641,11 @@ class _TranslationsVideoControlsDe extends TranslationsVideoControlsEn {
|
||||
@override String get settingsButton => 'Wiedergabeeinstellungen';
|
||||
@override String get tracksButton => 'Audio und Untertitel';
|
||||
@override String get chaptersButton => 'Kapitel';
|
||||
@override String get versionsButton => 'Videoversionen';
|
||||
@override String get versionQualityButton => 'Version & Qualität';
|
||||
@override String get versionColumnHeader => 'Version';
|
||||
@override String get qualityColumnHeader => 'Qualität';
|
||||
@override String get qualityOriginal => 'Original';
|
||||
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
|
||||
@override String qualityBandwidthEstimate({required Object bitrate}) => '~${bitrate} Mbps';
|
||||
@override String get transcodeUnavailableFallback => 'Transkodierung nicht verfügbar — Wiedergabe in Originalqualität';
|
||||
@override String get pipButton => 'Bild-in-Bild Modus';
|
||||
@override String get aspectRatioButton => 'Seitenverhältnis';
|
||||
@@ -685,19 +681,6 @@ class _TranslationsVideoControlsDe extends TranslationsVideoControlsEn {
|
||||
@override String get searchLanguages => 'Sprachen suchen...';
|
||||
}
|
||||
|
||||
// Path: userStatus
|
||||
class _TranslationsUserStatusDe extends TranslationsUserStatusEn {
|
||||
_TranslationsUserStatusDe._(TranslationsDe root) : this._root = root, super.internal(root);
|
||||
|
||||
final TranslationsDe _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get admin => 'Eigentümer';
|
||||
@override String get restricted => 'Eingeschränkt';
|
||||
@override String get protected => 'Geschützt';
|
||||
@override String get current => 'AKTUELL';
|
||||
}
|
||||
|
||||
// Path: messages
|
||||
class _TranslationsMessagesDe extends TranslationsMessagesEn {
|
||||
_TranslationsMessagesDe._(TranslationsDe root) : this._root = root, super.internal(root);
|
||||
@@ -873,7 +856,6 @@ class _TranslationsProfilesDe extends TranslationsProfilesEn {
|
||||
@override String get pinExplain => '4-stellige PIN zum Profilwechsel erforderlich.';
|
||||
@override String get continueButton => 'Weiter';
|
||||
@override String get pinsDontMatch => 'PINs stimmen nicht überein';
|
||||
@override String get initializeServicesFailed => 'Profildienste konnten nicht initialisiert werden';
|
||||
}
|
||||
|
||||
// Path: connections
|
||||
@@ -902,7 +884,6 @@ class _TranslationsDiscoverDe extends TranslationsDiscoverEn {
|
||||
|
||||
// Translations
|
||||
@override String get title => 'Entdecken';
|
||||
@override String get switchProfile => 'Profil wechseln';
|
||||
@override String get noContentAvailable => 'Kein Inhalt verfügbar';
|
||||
@override String get addMediaToLibraries => 'Medien zur Mediathek hinzufügen';
|
||||
@override String get continueWatching => 'Weiterschauen';
|
||||
@@ -938,8 +919,6 @@ class _TranslationsErrorsDe extends TranslationsErrorsEn {
|
||||
@override String get connectionFailed => 'Keine Verbindung zum Medienserver möglich';
|
||||
@override String failedToLoad({required Object context, required Object error}) => 'Fehler beim Laden von ${context}: ${error}';
|
||||
@override String get noClientAvailable => 'Kein Client verfügbar';
|
||||
@override String authenticationFailed({required Object error}) => 'Authentifizierung fehlgeschlagen: ${error}';
|
||||
@override String get couldNotLaunchUrl => 'Auth-URL konnte nicht geöffnet werden';
|
||||
@override String get pleaseEnterToken => 'Bitte Token eingeben';
|
||||
@override String get invalidToken => 'Ungültiges Token';
|
||||
@override String failedToVerifyToken({required Object error}) => 'Token-Verifizierung fehlgeschlagen: ${error}';
|
||||
@@ -973,6 +952,8 @@ class _TranslationsLibrariesDe extends TranslationsLibrariesEn {
|
||||
@override String get allLibrariesHidden => 'Alle Mediatheken sind ausgeblendet';
|
||||
@override String hiddenLibrariesCount({required Object count}) => 'Ausgeblendete Mediatheken (${count})';
|
||||
@override String get thisLibraryIsEmpty => 'Diese Mediathek ist leer';
|
||||
@override String get noItemsMatchFilters => 'Keine Elemente entsprechen den aktiven Filtern';
|
||||
@override String get resetFilters => 'Filter zurücksetzen';
|
||||
@override String get all => 'Alle';
|
||||
@override String get clearAll => 'Alle löschen';
|
||||
@override String scanLibraryConfirm({required Object title}) => '„${title}“ wirklich scannen?';
|
||||
@@ -998,8 +979,6 @@ class _TranslationsLibrariesDe extends TranslationsLibrariesEn {
|
||||
@override late final _TranslationsLibrariesGroupingsDe groupings = _TranslationsLibrariesGroupingsDe._(_root);
|
||||
@override late final _TranslationsLibrariesFilterCategoriesDe filterCategories = _TranslationsLibrariesFilterCategoriesDe._(_root);
|
||||
@override late final _TranslationsLibrariesSortLabelsDe sortLabels = _TranslationsLibrariesSortLabelsDe._(_root);
|
||||
@override String get noItemsMatchFilters => 'Keine Elemente entsprechen den aktiven Filtern';
|
||||
@override String get resetFilters => 'Filter zurücksetzen';
|
||||
}
|
||||
|
||||
// Path: about
|
||||
@@ -1023,7 +1002,6 @@ class _TranslationsServerSelectionDe extends TranslationsServerSelectionEn {
|
||||
final TranslationsDe _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get allServerConnectionsFailed => 'Keine Verbindung zu Servern möglich. Prüfe dein Netzwerk.';
|
||||
@override String noServersFoundForAccount({required Object username, required Object email}) => 'Keine Server gefunden für ${username} (${email})';
|
||||
@override String failedToLoadServers({required Object error}) => 'Server konnten nicht geladen werden: ${error}';
|
||||
}
|
||||
@@ -1102,7 +1080,6 @@ class _TranslationsExploreDe extends TranslationsExploreEn {
|
||||
@override String get watchlistUpdateFailed => 'Merkliste konnte nicht aktualisiert werden';
|
||||
@override String get notInLibrary => 'Nicht in deiner Mediathek';
|
||||
@override String get inTheseLibraries => 'In diesen Mediatheken';
|
||||
@override String availableOn({required Object server}) => 'Verfügbar auf ${server}';
|
||||
@override String get checkingLibrary => 'Deine Mediathek wird überprüft...';
|
||||
@override String get emptyTitle => 'Hier ist noch nichts';
|
||||
@override String emptyMessage({required Object source}) => 'Zeilen aus ${source} erscheinen hier, sobald sie Inhalte enthalten.';
|
||||
@@ -1123,6 +1100,8 @@ class _TranslationsLiveTvDe extends TranslationsLiveTvEn {
|
||||
@override String get guide => 'Programmführer';
|
||||
@override String get noChannels => 'Keine Kanäle verfügbar';
|
||||
@override String get noDvr => 'Kein DVR auf einem Server konfiguriert';
|
||||
@override String get serverUnavailable => 'Der Live-TV-Server ist nicht verfügbar.';
|
||||
@override String get serverNotConnected => 'Der Live-TV-Server ist nicht verbunden.';
|
||||
@override String get noPrograms => 'Keine Programmdaten verfügbar';
|
||||
@override String get liveStreamFailed => 'Livestream fehlgeschlagen';
|
||||
@override String get unknownProgram => 'Unbekannte Sendung';
|
||||
@@ -1158,7 +1137,6 @@ class _TranslationsLiveTvDe extends TranslationsLiveTvEn {
|
||||
@override String get scheduledRecordings => 'Geplant';
|
||||
@override String get recordingRules => 'Aufnahmeregeln';
|
||||
@override String get noScheduledRecordings => 'Keine geplanten Aufnahmen';
|
||||
@override String get noRecordingRules => 'Noch keine Aufnahmeregeln';
|
||||
@override String get manageRecording => 'Aufnahme verwalten';
|
||||
@override String get cancelRecording => 'Aufnahme abbrechen';
|
||||
@override String get cancelRecordingTitle => 'Diese Aufnahme abbrechen?';
|
||||
@@ -1175,7 +1153,6 @@ class _TranslationsLiveTvDe extends TranslationsLiveTvEn {
|
||||
@override String get recordingCancelled => 'Aufnahme abgebrochen';
|
||||
@override String get recordingRuleDeleted => 'Aufnahmeregel gelöscht';
|
||||
@override String get processRecordingRules => 'Regeln neu bewerten';
|
||||
@override String get loadingRecordings => 'Aufnahmen werden geladen ...';
|
||||
@override String get recordingInProgress => 'Wird jetzt aufgenommen';
|
||||
@override String recordingsCount({required Object count}) => '${count} geplant';
|
||||
@override String get editRule => 'Regel bearbeiten';
|
||||
@@ -1196,7 +1173,6 @@ class _TranslationsCollectionsDe extends TranslationsCollectionsEn {
|
||||
@override String get title => 'Sammlungen';
|
||||
@override String get collection => 'Sammlung';
|
||||
@override String get empty => 'Sammlung ist leer';
|
||||
@override String get unknownLibrarySection => 'Löschen nicht möglich: Unbekannte Bibliothekssektion';
|
||||
@override String get deleteCollection => 'Sammlung löschen';
|
||||
@override String deleteConfirm({required Object title}) => '"${title}" löschen? Dies kann nicht rückgängig gemacht werden.';
|
||||
@override String get deleted => 'Sammlung gelöscht';
|
||||
@@ -1243,6 +1219,7 @@ class _TranslationsPlaylistsDe extends TranslationsPlaylistsEn {
|
||||
@override String get itemAdded => 'Zur Wiedergabeliste hinzugefügt';
|
||||
@override String get itemRemoved => 'Aus Wiedergabeliste entfernt';
|
||||
@override String get selectPlaylist => 'Wiedergabeliste auswählen';
|
||||
@override String get searchPlaylists => 'Wiedergabelisten durchsuchen...';
|
||||
@override String get errorCreating => 'Wiedergabeliste konnte nicht erstellt werden';
|
||||
@override String get errorDeleting => 'Wiedergabeliste konnte nicht gelöscht werden';
|
||||
@override String get errorLoading => 'Wiedergabelisten konnten nicht geladen werden';
|
||||
@@ -1346,15 +1323,15 @@ class _TranslationsWatchTogetherDe extends TranslationsWatchTogetherEn {
|
||||
@override String participantResumed({required Object name}) => '${name} hat fortgesetzt';
|
||||
@override String participantSeeked({required Object name}) => '${name} hat gespult';
|
||||
@override String participantBuffering({required Object name}) => '${name} puffert';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} verwendet eine ältere Appversion — Synchronisierung nicht verfügbar';
|
||||
@override String resumingWithout({required Object name}) => 'Fortfahren ohne ${name}';
|
||||
@override String get waitingForParticipants => 'Warte auf andere zum Laden...';
|
||||
@override String waitingForName({required Object name}) => 'Warten auf ${name}...';
|
||||
@override String get recentRooms => 'Letzte Räume';
|
||||
@override String get renameRoom => 'Raum umbenennen';
|
||||
@override String get removeRoom => 'Entfernen';
|
||||
@override String get guestSwitchUnavailable => 'Wechsel fehlgeschlagen — Server nicht für Synchronisierung verfügbar';
|
||||
@override String get guestSwitchFailed => 'Wechsel fehlgeschlagen — Inhalt auf diesem Server nicht gefunden';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} verwendet eine ältere Appversion — Synchronisierung nicht verfügbar';
|
||||
@override String resumingWithout({required Object name}) => 'Fortfahren ohne ${name}';
|
||||
@override String waitingForName({required Object name}) => 'Warten auf ${name}...';
|
||||
}
|
||||
|
||||
// Path: downloads
|
||||
@@ -1406,7 +1383,6 @@ class _TranslationsDownloadsDe extends TranslationsDownloadsEn {
|
||||
@override String get customAmount => 'Eigene Anzahl...';
|
||||
@override String get includeSpecials => 'Specials einschließen';
|
||||
@override String get howManyEpisodes => 'Wie viele Episoden?';
|
||||
@override String itemsQueued({required Object count}) => '${count} Elemente zum Download eingereiht';
|
||||
@override String get keepSynced => 'Synchronisiert halten';
|
||||
@override String get downloadOnce => 'Einmal herunterladen';
|
||||
@override String keepNUnwatched({required Object count}) => '${count} ungesehene behalten';
|
||||
@@ -1780,7 +1756,6 @@ class _TranslationsAddServerDe extends TranslationsAddServerEn {
|
||||
@override String quickConnectFailed({required Object error}) => 'Quick Connect fehlgeschlagen: ${error}';
|
||||
@override String get addPlexTitle => 'Mit Plex anmelden';
|
||||
@override String get pinExpired => 'PIN ist vor der Anmeldung abgelaufen. Bitte erneut versuchen.';
|
||||
@override String get duplicatePlexAccount => 'Bereits bei Plex angemeldet. Melde dich ab, um Konten zu wechseln.';
|
||||
@override String failedToRegisterAccount({required Object error}) => 'Konto konnte nicht registriert werden: ${error}';
|
||||
@override String get enterJellyfinUrlError => 'Gib die URL deines Jellyfin-Servers ein';
|
||||
@override String get addConnectionTitle => 'Verbindung hinzufügen';
|
||||
@@ -1906,7 +1881,6 @@ class _TranslationsLibrariesSortLabelsDe extends TranslationsLibrariesSortLabels
|
||||
@override String get communityRating => 'Community-Bewertung';
|
||||
@override String get criticRating => 'Kritikerbewertung';
|
||||
@override String get userRating => 'Benutzerbewertung';
|
||||
@override String get lastPlayed => 'Zuletzt abgespielt';
|
||||
@override String get datePlayed => 'Wiedergabedatum';
|
||||
@override String get playCount => 'Wiedergaben';
|
||||
@override String get productionYear => 'Produktionsjahr';
|
||||
@@ -1965,7 +1939,6 @@ class _TranslationsCompanionRemoteSessionDe extends TranslationsCompanionRemoteS
|
||||
|
||||
// Translations
|
||||
@override String get startingServer => 'Remote-Server wird gestartet...';
|
||||
@override String get failedToCreate => 'Remote-Server konnte nicht gestartet werden:';
|
||||
@override String get hostAddress => 'Host-Adresse';
|
||||
@override String get connected => 'Verbunden';
|
||||
@override String get serverRunning => 'Remote-Server aktiv';
|
||||
@@ -2047,6 +2020,8 @@ class _TranslationsCompanionRemoteErrorsDe extends TranslationsCompanionRemoteEr
|
||||
// Translations
|
||||
@override String get noNetworkInterface => 'Keine Netzwerkschnittstelle gefunden';
|
||||
@override String get authenticationFailed => 'Authentifizierung fehlgeschlagen';
|
||||
@override String serverStartFailed({required Object error}) => 'Remote-Server konnte nicht gestartet werden: ${error}';
|
||||
@override String commandFailed({required Object error}) => 'Remote-Befehl konnte nicht gesendet werden: ${error}';
|
||||
@override String get joinTimedOut => 'Zeitüberschreitung beim Beitreten zur Sitzung';
|
||||
@override String get failedToConnectAnyAddress => 'Keine Verbindung zu einer Adresse möglich';
|
||||
@override String connectionLostAfterAttempts({required Object attempts}) => 'Verbindung nach ${attempts} Versuchen verloren';
|
||||
@@ -2123,7 +2098,6 @@ extension on TranslationsDe {
|
||||
dynamic _flatMapFunction(String path) {
|
||||
return switch (path) {
|
||||
'app.title' => 'Plezy',
|
||||
'auth.signIn' => 'Anmelden',
|
||||
'auth.signInWithPlex' => 'Mit Plex anmelden',
|
||||
'auth.showQRCode' => 'QR-Code anzeigen',
|
||||
'auth.authenticate' => 'Authentifizieren',
|
||||
@@ -2174,10 +2148,8 @@ extension on TranslationsDe {
|
||||
'common.episodeNumberTitle' => ({required Object number, required Object title}) => 'Episode ${number} - ${title}',
|
||||
'common.chapterNumber' => ({required Object number}) => 'Kapitel ${number}',
|
||||
'common.reconnect' => 'Erneut verbinden',
|
||||
'common.exit' => 'Beenden',
|
||||
'common.viewAll' => 'Alle anzeigen',
|
||||
'common.checkingNetwork' => 'Netzwerk wird geprüft...',
|
||||
'common.refreshingServers' => 'Server werden aktualisiert...',
|
||||
'common.loadingServers' => 'Server werden geladen...',
|
||||
'common.connectingToServers' => 'Verbindung zu Servern...',
|
||||
'common.startingOfflineMode' => 'Offlinemodus wird gestartet...',
|
||||
@@ -2251,6 +2223,12 @@ extension on TranslationsDe {
|
||||
'settings.tvFullCardLayoutDescription' => 'TV-Karten nur mit Bild verwenden und Darstellernamen einblenden',
|
||||
'settings.focusGlow' => 'Fokus-Leuchten',
|
||||
'settings.focusGlowDescription' => 'Sanftes Leuchten um die fokussierte Karte anzeigen',
|
||||
'settings.visualEffects' => 'Visuelle Effekte',
|
||||
'settings.visualEffectsAuto' => 'Automatisch',
|
||||
'settings.visualEffectsAutoDescription' => 'Effekte auf leistungsschwachen Geräten automatisch reduzieren',
|
||||
'settings.visualEffectsFull' => 'Vollständig',
|
||||
'settings.visualEffectsReduced' => 'Reduziert',
|
||||
'settings.visualEffectsReducedDescription' => 'Weniger Animationen und Grafiken mit niedrigerer Auflösung',
|
||||
'settings.hideSpoilers' => 'Spoiler für nicht gesehene Episoden verbergen',
|
||||
'settings.hideSpoilersDescription' => 'Vorschaubilder und Beschreibungen ungesehener Episoden verwischen',
|
||||
'settings.playerBackend' => 'Player-Backend',
|
||||
@@ -2263,7 +2241,7 @@ extension on TranslationsDe {
|
||||
'settings.bufferSizeAuto' => 'Auto (Empfohlen)',
|
||||
'settings.bufferSizeWarning' => ({required Object heap, required Object size}) => '${heap}MB Speicher verfügbar. Ein ${size}MB-Puffer kann die Wiedergabe beeinträchtigen.',
|
||||
'settings.defaultQualityTitle' => 'Standardqualität',
|
||||
'settings.defaultQualityDescription' => 'Wird beim Starten der Wiedergabe verwendet. Niedrigere Werte reduzieren die Bandbreite.',
|
||||
'settings.musicQualityTitle' => 'Musikqualität',
|
||||
'settings.subtitleStyling' => 'Untertitel-Stil',
|
||||
'settings.subtitleStylingDescription' => 'Aussehen von Untertiteln anpassen',
|
||||
'settings.smallSkipDuration' => 'Kleine Sprungdauer',
|
||||
@@ -2357,10 +2335,9 @@ extension on TranslationsDe {
|
||||
'settings.maxVolumePercent' => ({required Object percent}) => '${percent}%',
|
||||
'settings.discordRichPresence' => 'Discord Rich Presence',
|
||||
'settings.discordRichPresenceDescription' => 'Zeige auf Discord, was du gerade schaust',
|
||||
'settings.trakt' => 'Trakt',
|
||||
'settings.traktDescription' => 'Wiedergabeverlauf mit Trakt synchronisieren',
|
||||
'settings.services' => 'Dienste',
|
||||
'settings.servicesDescription' => 'Trakt, MyAnimeList, Seerr und mehr verbinden',
|
||||
'settings.manageLibrariesDescription' => 'Mediatheken neu anordnen und ausblenden',
|
||||
'settings.companionRemoteServer' => 'Companion Remote Server',
|
||||
'settings.companionRemoteServerDescription' => 'Mobilgeräten in deinem Netzwerk erlauben, diese App zu steuern',
|
||||
'settings.autoPip' => 'Automatisches Bild-in-Bild',
|
||||
@@ -2423,7 +2400,6 @@ extension on TranslationsDe {
|
||||
'settings.showNavBarLabels' => 'Navigationsleisten-Beschriftungen anzeigen',
|
||||
'settings.showNavBarLabelsDescription' => 'Textbeschriftungen unter den Symbolen der Navigationsleiste anzeigen',
|
||||
'settings.startupSection' => 'Startbereich',
|
||||
'settings.startupSectionDescription' => 'Legt fest, welchen Bereich Plezy beim Start öffnet',
|
||||
'settings.liveTvDefaultFavorites' => 'Standardmäßig Favoritenkanäle',
|
||||
'settings.liveTvDefaultFavoritesDescription' => 'Beim Öffnen von Live TV nur Favoritenkanäle anzeigen',
|
||||
'settings.display' => 'Anzeige',
|
||||
@@ -2435,13 +2411,6 @@ extension on TranslationsDe {
|
||||
'settings.subtitlesAndConfig' => 'Untertitel & Konfiguration',
|
||||
'settings.seekAndTiming' => 'Spulen & Timing',
|
||||
'settings.behavior' => 'Verhalten',
|
||||
'settings.manageLibrariesDescription' => 'Mediatheken neu anordnen und ausblenden',
|
||||
'settings.visualEffects' => 'Visuelle Effekte',
|
||||
'settings.visualEffectsAuto' => 'Automatisch',
|
||||
'settings.visualEffectsAutoDescription' => 'Effekte auf leistungsschwachen Geräten automatisch reduzieren',
|
||||
'settings.visualEffectsFull' => 'Vollständig',
|
||||
'settings.visualEffectsReduced' => 'Reduziert',
|
||||
'settings.visualEffectsReducedDescription' => 'Weniger Animationen und Grafiken mit niedrigerer Auflösung',
|
||||
'search.hint' => 'Filme, Serien, Musik suchen...',
|
||||
'search.tryDifferentTerm' => 'Anderen Suchbegriff versuchen',
|
||||
'search.searchYourMedia' => 'In den eigenen Medien suchen',
|
||||
@@ -2518,14 +2487,11 @@ extension on TranslationsDe {
|
||||
'mediaMenu.playVersion' => 'Version abspielen...',
|
||||
'rateSheet.title' => 'Bewerten',
|
||||
'rateSheet.server' => 'Server',
|
||||
'rateSheet.starValue' => ({required Object rating}) => '${rating} / 5',
|
||||
'rateSheet.scoreValue' => ({required Object score}) => '${score} / 10',
|
||||
'rateSheet.setScore' => 'Eine Wertung festlegen',
|
||||
'rateSheet.favorite' => 'Favorit',
|
||||
'rateSheet.favorited' => 'Favorisiert',
|
||||
'rateSheet.saved' => 'Gespeichert',
|
||||
'rateSheet.notAvailable' => 'Keine Übereinstimmung gefunden',
|
||||
'rateSheet.noConnectedServices' => 'Verbinde einen Dienst in den Einstellungen, um dort zu bewerten.',
|
||||
'rateSheet.favorite' => 'Favorit',
|
||||
'rateSheet.favorited' => 'Favorisiert',
|
||||
'accessibility.mediaCardMovie' => ({required Object title}) => '${title}, Film',
|
||||
'accessibility.mediaCardShow' => ({required Object title}) => '${title}, Serie',
|
||||
'accessibility.mediaCardEpisode' => ({required Object title, required Object episodeInfo}) => '${title}, ${episodeInfo}',
|
||||
@@ -2534,6 +2500,14 @@ extension on TranslationsDe {
|
||||
'accessibility.mediaCardPartiallyWatched' => ({required Object percent}) => '${percent} Prozent angesehen',
|
||||
'accessibility.mediaCardUnwatched' => 'ungeschaut',
|
||||
'accessibility.tapToPlay' => 'Zum Abspielen tippen',
|
||||
'accessibility.decrease' => 'Verringern',
|
||||
'accessibility.increase' => 'Erhöhen',
|
||||
'accessibility.decreaseValue' => ({required Object label}) => '${label} verringern',
|
||||
'accessibility.increaseValue' => ({required Object label}) => '${label} erhöhen',
|
||||
'accessibility.hue' => 'Farbton',
|
||||
'accessibility.saturation' => 'Sättigung',
|
||||
'accessibility.brightness' => 'Helligkeit',
|
||||
'accessibility.hexColor' => 'Hex-Farbe',
|
||||
'tooltips.shufflePlay' => 'Zufallswiedergabe',
|
||||
'tooltips.playTrailer' => 'Trailer abspielen',
|
||||
'tooltips.markAsWatched' => 'Als gesehen markieren',
|
||||
@@ -2575,13 +2549,11 @@ extension on TranslationsDe {
|
||||
'videoControls.settingsButton' => 'Wiedergabeeinstellungen',
|
||||
'videoControls.tracksButton' => 'Audio und Untertitel',
|
||||
'videoControls.chaptersButton' => 'Kapitel',
|
||||
'videoControls.versionsButton' => 'Videoversionen',
|
||||
'videoControls.versionQualityButton' => 'Version & Qualität',
|
||||
'videoControls.versionColumnHeader' => 'Version',
|
||||
'videoControls.qualityColumnHeader' => 'Qualität',
|
||||
'videoControls.qualityOriginal' => 'Original',
|
||||
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
|
||||
'videoControls.qualityBandwidthEstimate' => ({required Object bitrate}) => '~${bitrate} Mbps',
|
||||
'videoControls.transcodeUnavailableFallback' => 'Transkodierung nicht verfügbar — Wiedergabe in Originalqualität',
|
||||
'videoControls.pipButton' => 'Bild-in-Bild Modus',
|
||||
'videoControls.aspectRatioButton' => 'Seitenverhältnis',
|
||||
@@ -2621,10 +2593,6 @@ extension on TranslationsDe {
|
||||
'videoControls.subtitleDownloaded' => 'Untertitel heruntergeladen',
|
||||
'videoControls.subtitleDownloadFailed' => 'Untertitel konnte nicht heruntergeladen werden',
|
||||
'videoControls.searchLanguages' => 'Sprachen suchen...',
|
||||
'userStatus.admin' => 'Eigentümer',
|
||||
'userStatus.restricted' => 'Eingeschränkt',
|
||||
'userStatus.protected' => 'Geschützt',
|
||||
'userStatus.current' => 'AKTUELL',
|
||||
'messages.markedAsWatched' => 'Als gesehen markiert',
|
||||
'messages.markedAsUnwatched' => 'Als ungesehen markiert',
|
||||
'messages.markedAsWatchedOffline' => 'Als gesehen markiert (wird synchronisiert, wenn online)',
|
||||
@@ -2634,8 +2602,6 @@ extension on TranslationsDe {
|
||||
'messages.errorLoading' => ({required Object error}) => 'Fehler: ${error}',
|
||||
'messages.streamInterrupted' => 'Der Stream wurde unterbrochen. Drücke auf Wiedergabe oder spule, um es erneut zu versuchen.',
|
||||
'messages.fileInfoNotAvailable' => 'Dateiinfo nicht verfügbar',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Fehler beim Laden der Dateiinfo: ${error}',
|
||||
'messages.errorLoadingSeries' => 'Fehler beim Laden der Serie',
|
||||
'messages.musicNotSupported' => 'Musikwiedergabe wird noch nicht unterstützt',
|
||||
@@ -2643,6 +2609,8 @@ extension on TranslationsDe {
|
||||
'messages.noProfilesAvailable' => 'Keine Profile verfügbar',
|
||||
'messages.contactAdminForProfiles' => 'Kontaktiere deinen Serveradministrator, um Profile hinzuzufügen',
|
||||
'messages.unableToDetermineLibrarySection' => 'Bibliotheksbereich für dieses Element kann nicht ermittelt werden',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.logsCleared' => 'Protokolle gelöscht',
|
||||
'messages.logsCopied' => 'Protokolle in Zwischenablage kopiert',
|
||||
'messages.noLogsAvailable' => 'Keine Protokolle verfügbar',
|
||||
@@ -2759,7 +2727,6 @@ extension on TranslationsDe {
|
||||
'profiles.pinExplain' => '4-stellige PIN zum Profilwechsel erforderlich.',
|
||||
'profiles.continueButton' => 'Weiter',
|
||||
'profiles.pinsDontMatch' => 'PINs stimmen nicht überein',
|
||||
'profiles.initializeServicesFailed' => 'Profildienste konnten nicht initialisiert werden',
|
||||
'connections.sectionTitle' => 'Verbindungen',
|
||||
'connections.addConnection' => 'Verbindung hinzufügen',
|
||||
'connections.addConnectionSubtitleNoProfile' => 'Mit Plex anmelden oder Jellyfin-Server verbinden',
|
||||
@@ -2770,7 +2737,6 @@ extension on TranslationsDe {
|
||||
'connections.editJellyfinTitle' => 'Jellyfin-Verbindung bearbeiten',
|
||||
'connections.editJellyfinIntro' => ({required Object serverName}) => 'Füge URLs für ${serverName} hinzu oder entferne sie. Plezy verwendet die erreichbare URL mit der geringsten Latenz.',
|
||||
'discover.title' => 'Entdecken',
|
||||
'discover.switchProfile' => 'Profil wechseln',
|
||||
'discover.noContentAvailable' => 'Kein Inhalt verfügbar',
|
||||
'discover.addMediaToLibraries' => 'Medien zur Mediathek hinzufügen',
|
||||
'discover.continueWatching' => 'Weiterschauen',
|
||||
@@ -2797,8 +2763,6 @@ extension on TranslationsDe {
|
||||
'errors.connectionFailed' => 'Keine Verbindung zum Medienserver möglich',
|
||||
'errors.failedToLoad' => ({required Object context, required Object error}) => 'Fehler beim Laden von ${context}: ${error}',
|
||||
'errors.noClientAvailable' => 'Kein Client verfügbar',
|
||||
'errors.authenticationFailed' => ({required Object error}) => 'Authentifizierung fehlgeschlagen: ${error}',
|
||||
'errors.couldNotLaunchUrl' => 'Auth-URL konnte nicht geöffnet werden',
|
||||
'errors.pleaseEnterToken' => 'Bitte Token eingeben',
|
||||
'errors.invalidToken' => 'Ungültiges Token',
|
||||
'errors.failedToVerifyToken' => ({required Object error}) => 'Token-Verifizierung fehlgeschlagen: ${error}',
|
||||
@@ -2823,6 +2787,8 @@ extension on TranslationsDe {
|
||||
'libraries.allLibrariesHidden' => 'Alle Mediatheken sind ausgeblendet',
|
||||
'libraries.hiddenLibrariesCount' => ({required Object count}) => 'Ausgeblendete Mediatheken (${count})',
|
||||
'libraries.thisLibraryIsEmpty' => 'Diese Mediathek ist leer',
|
||||
'libraries.noItemsMatchFilters' => 'Keine Elemente entsprechen den aktiven Filtern',
|
||||
'libraries.resetFilters' => 'Filter zurücksetzen',
|
||||
'libraries.all' => 'Alle',
|
||||
'libraries.clearAll' => 'Alle löschen',
|
||||
'libraries.scanLibraryConfirm' => ({required Object title}) => '„${title}“ wirklich scannen?',
|
||||
@@ -2871,7 +2837,6 @@ extension on TranslationsDe {
|
||||
'libraries.sortLabels.communityRating' => 'Community-Bewertung',
|
||||
'libraries.sortLabels.criticRating' => 'Kritikerbewertung',
|
||||
'libraries.sortLabels.userRating' => 'Benutzerbewertung',
|
||||
'libraries.sortLabels.lastPlayed' => 'Zuletzt abgespielt',
|
||||
'libraries.sortLabels.datePlayed' => 'Wiedergabedatum',
|
||||
'libraries.sortLabels.playCount' => 'Wiedergaben',
|
||||
'libraries.sortLabels.productionYear' => 'Produktionsjahr',
|
||||
@@ -2885,14 +2850,11 @@ extension on TranslationsDe {
|
||||
'libraries.sortLabels.dateShared' => 'Datum geteilt',
|
||||
'libraries.sortLabels.latestEpisodeAirDate' => 'Letztes Folgenausstrahlungsdatum',
|
||||
'libraries.sortLabels.lastEpisodeDateAdded' => 'Datum der zuletzt hinzugefügten Folge',
|
||||
'libraries.noItemsMatchFilters' => 'Keine Elemente entsprechen den aktiven Filtern',
|
||||
'libraries.resetFilters' => 'Filter zurücksetzen',
|
||||
'about.title' => 'Über',
|
||||
'about.openSourceLicenses' => 'Open-Source-Lizenzen',
|
||||
'about.versionLabel' => ({required Object version}) => 'Version ${version}',
|
||||
'about.appDescription' => 'Ein schöner Plex- und Jellyfin-Client für Flutter',
|
||||
'about.viewLicensesDescription' => 'Lizenzen von Drittanbieter-Bibliotheken anzeigen',
|
||||
'serverSelection.allServerConnectionsFailed' => 'Keine Verbindung zu Servern möglich. Prüfe dein Netzwerk.',
|
||||
'serverSelection.noServersFoundForAccount' => ({required Object username, required Object email}) => 'Keine Server gefunden für ${username} (${email})',
|
||||
'serverSelection.failedToLoadServers' => ({required Object error}) => 'Server konnten nicht geladen werden: ${error}',
|
||||
'hubDetail.title' => 'Titel',
|
||||
@@ -2938,7 +2900,6 @@ extension on TranslationsDe {
|
||||
'explore.watchlistUpdateFailed' => 'Merkliste konnte nicht aktualisiert werden',
|
||||
'explore.notInLibrary' => 'Nicht in deiner Mediathek',
|
||||
'explore.inTheseLibraries' => 'In diesen Mediatheken',
|
||||
'explore.availableOn' => ({required Object server}) => 'Verfügbar auf ${server}',
|
||||
'explore.checkingLibrary' => 'Deine Mediathek wird überprüft...',
|
||||
'explore.emptyTitle' => 'Hier ist noch nichts',
|
||||
'explore.emptyMessage' => ({required Object source}) => 'Zeilen aus ${source} erscheinen hier, sobald sie Inhalte enthalten.',
|
||||
@@ -2950,6 +2911,8 @@ extension on TranslationsDe {
|
||||
'liveTv.guide' => 'Programmführer',
|
||||
'liveTv.noChannels' => 'Keine Kanäle verfügbar',
|
||||
'liveTv.noDvr' => 'Kein DVR auf einem Server konfiguriert',
|
||||
'liveTv.serverUnavailable' => 'Der Live-TV-Server ist nicht verfügbar.',
|
||||
'liveTv.serverNotConnected' => 'Der Live-TV-Server ist nicht verbunden.',
|
||||
'liveTv.noPrograms' => 'Keine Programmdaten verfügbar',
|
||||
'liveTv.liveStreamFailed' => 'Livestream fehlgeschlagen',
|
||||
'liveTv.unknownProgram' => 'Unbekannte Sendung',
|
||||
@@ -2985,7 +2948,6 @@ extension on TranslationsDe {
|
||||
'liveTv.scheduledRecordings' => 'Geplant',
|
||||
'liveTv.recordingRules' => 'Aufnahmeregeln',
|
||||
'liveTv.noScheduledRecordings' => 'Keine geplanten Aufnahmen',
|
||||
'liveTv.noRecordingRules' => 'Noch keine Aufnahmeregeln',
|
||||
'liveTv.manageRecording' => 'Aufnahme verwalten',
|
||||
'liveTv.cancelRecording' => 'Aufnahme abbrechen',
|
||||
'liveTv.cancelRecordingTitle' => 'Diese Aufnahme abbrechen?',
|
||||
@@ -3002,7 +2964,6 @@ extension on TranslationsDe {
|
||||
'liveTv.recordingCancelled' => 'Aufnahme abgebrochen',
|
||||
'liveTv.recordingRuleDeleted' => 'Aufnahmeregel gelöscht',
|
||||
'liveTv.processRecordingRules' => 'Regeln neu bewerten',
|
||||
'liveTv.loadingRecordings' => 'Aufnahmen werden geladen ...',
|
||||
'liveTv.recordingInProgress' => 'Wird jetzt aufgenommen',
|
||||
'liveTv.recordingsCount' => ({required Object count}) => '${count} geplant',
|
||||
'liveTv.editRule' => 'Regel bearbeiten',
|
||||
@@ -3014,7 +2975,6 @@ extension on TranslationsDe {
|
||||
'collections.title' => 'Sammlungen',
|
||||
'collections.collection' => 'Sammlung',
|
||||
'collections.empty' => 'Sammlung ist leer',
|
||||
'collections.unknownLibrarySection' => 'Löschen nicht möglich: Unbekannte Bibliothekssektion',
|
||||
'collections.deleteCollection' => 'Sammlung löschen',
|
||||
'collections.deleteConfirm' => ({required Object title}) => '"${title}" löschen? Dies kann nicht rückgängig gemacht werden.',
|
||||
'collections.deleted' => 'Sammlung gelöscht',
|
||||
@@ -3052,6 +3012,7 @@ extension on TranslationsDe {
|
||||
'playlists.itemAdded' => 'Zur Wiedergabeliste hinzugefügt',
|
||||
'playlists.itemRemoved' => 'Aus Wiedergabeliste entfernt',
|
||||
'playlists.selectPlaylist' => 'Wiedergabeliste auswählen',
|
||||
'playlists.searchPlaylists' => 'Wiedergabelisten durchsuchen...',
|
||||
'playlists.errorCreating' => 'Wiedergabeliste konnte nicht erstellt werden',
|
||||
'playlists.errorDeleting' => 'Wiedergabeliste konnte nicht gelöscht werden',
|
||||
'playlists.errorLoading' => 'Wiedergabelisten konnten nicht geladen werden',
|
||||
@@ -3134,22 +3095,20 @@ extension on TranslationsDe {
|
||||
'watchTogether.participantResumed' => ({required Object name}) => '${name} hat fortgesetzt',
|
||||
'watchTogether.participantSeeked' => ({required Object name}) => '${name} hat gespult',
|
||||
'watchTogether.participantBuffering' => ({required Object name}) => '${name} puffert',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} verwendet eine ältere Appversion — Synchronisierung nicht verfügbar',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Fortfahren ohne ${name}',
|
||||
'watchTogether.waitingForParticipants' => 'Warte auf andere zum Laden...',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Warten auf ${name}...',
|
||||
'watchTogether.recentRooms' => 'Letzte Räume',
|
||||
'watchTogether.renameRoom' => 'Raum umbenennen',
|
||||
'watchTogether.removeRoom' => 'Entfernen',
|
||||
'watchTogether.guestSwitchUnavailable' => 'Wechsel fehlgeschlagen — Server nicht für Synchronisierung verfügbar',
|
||||
'watchTogether.guestSwitchFailed' => 'Wechsel fehlgeschlagen — Inhalt auf diesem Server nicht gefunden',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} verwendet eine ältere Appversion — Synchronisierung nicht verfügbar',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Fortfahren ohne ${name}',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Warten auf ${name}...',
|
||||
'downloads.title' => 'Downloads',
|
||||
'downloads.manage' => 'Verwalten',
|
||||
'downloads.tvShows' => 'Serien',
|
||||
'downloads.movies' => 'Filme',
|
||||
'downloads.music' => 'Musik',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.tracksQueued' => ({required Object count}) => '${count} Titel zum Download in Warteschlange',
|
||||
'downloads.noDownloads' => 'Noch keine Downloads',
|
||||
'downloads.noDownloadsDescription' => 'Heruntergeladene Inhalte werden hier für die Offline-Wiedergabe angezeigt',
|
||||
@@ -3164,6 +3123,8 @@ extension on TranslationsDe {
|
||||
'downloads.deleteConfirm' => ({required Object title}) => '"${title}" von diesem Gerät löschen?',
|
||||
'downloads.cancelledDownloadTitle' => 'Abgebrochener Download',
|
||||
'downloads.cancelledDownloadMessage' => 'Dieser Download wurde abgebrochen. Was möchtest du tun?',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.allEpisodesAlreadyDownloaded' => 'Alle Episoden sind bereits heruntergeladen',
|
||||
'downloads.resumeDownload' => 'Download fortsetzen',
|
||||
'downloads.cancelledDownload' => 'Abgebrochener Download',
|
||||
@@ -3187,7 +3148,6 @@ extension on TranslationsDe {
|
||||
'downloads.customAmount' => 'Eigene Anzahl...',
|
||||
'downloads.includeSpecials' => 'Specials einschließen',
|
||||
'downloads.howManyEpisodes' => 'Wie viele Episoden?',
|
||||
'downloads.itemsQueued' => ({required Object count}) => '${count} Elemente zum Download eingereiht',
|
||||
'downloads.keepSynced' => 'Synchronisiert halten',
|
||||
'downloads.downloadOnce' => 'Einmal herunterladen',
|
||||
'downloads.keepNUnwatched' => ({required Object count}) => '${count} ungesehene behalten',
|
||||
@@ -3231,7 +3191,6 @@ extension on TranslationsDe {
|
||||
'companionRemote.connectedTo' => ({required Object name}) => 'Verbunden mit ${name}',
|
||||
'companionRemote.unknownDevice' => 'Unbekanntes Gerät',
|
||||
'companionRemote.session.startingServer' => 'Remote-Server wird gestartet...',
|
||||
'companionRemote.session.failedToCreate' => 'Remote-Server konnte nicht gestartet werden:',
|
||||
'companionRemote.session.hostAddress' => 'Host-Adresse',
|
||||
'companionRemote.session.connected' => 'Verbunden',
|
||||
'companionRemote.session.serverRunning' => 'Remote-Server aktiv',
|
||||
@@ -3286,6 +3245,8 @@ extension on TranslationsDe {
|
||||
'companionRemote.remote.searchHint' => 'Auf Desktop suchen...',
|
||||
'companionRemote.errors.noNetworkInterface' => 'Keine Netzwerkschnittstelle gefunden',
|
||||
'companionRemote.errors.authenticationFailed' => 'Authentifizierung fehlgeschlagen',
|
||||
'companionRemote.errors.serverStartFailed' => ({required Object error}) => 'Remote-Server konnte nicht gestartet werden: ${error}',
|
||||
'companionRemote.errors.commandFailed' => ({required Object error}) => 'Remote-Befehl konnte nicht gesendet werden: ${error}',
|
||||
'companionRemote.errors.joinTimedOut' => 'Zeitüberschreitung beim Beitreten zur Sitzung',
|
||||
'companionRemote.errors.failedToConnectAnyAddress' => 'Keine Verbindung zu einer Adresse möglich',
|
||||
'companionRemote.errors.connectionLostAfterAttempts' => ({required Object attempts}) => 'Verbindung nach ${attempts} Versuchen verloren',
|
||||
@@ -3530,7 +3491,6 @@ extension on TranslationsDe {
|
||||
'addServer.quickConnectFailed' => ({required Object error}) => 'Quick Connect fehlgeschlagen: ${error}',
|
||||
'addServer.addPlexTitle' => 'Mit Plex anmelden',
|
||||
'addServer.pinExpired' => 'PIN ist vor der Anmeldung abgelaufen. Bitte erneut versuchen.',
|
||||
'addServer.duplicatePlexAccount' => 'Bereits bei Plex angemeldet. Melde dich ab, um Konten zu wechseln.',
|
||||
'addServer.failedToRegisterAccount' => ({required Object error}) => 'Konto konnte nicht registriert werden: ${error}',
|
||||
'addServer.enterJellyfinUrlError' => 'Gib die URL deines Jellyfin-Servers ein',
|
||||
'addServer.addConnectionTitle' => 'Verbindung hinzufügen',
|
||||
|
||||
+52
-130
@@ -54,7 +54,6 @@ class Translations with BaseTranslations<AppLocale, Translations> {
|
||||
late final TranslationsAccessibilityEn accessibility = TranslationsAccessibilityEn.internal(_root);
|
||||
late final TranslationsTooltipsEn tooltips = TranslationsTooltipsEn.internal(_root);
|
||||
late final TranslationsVideoControlsEn videoControls = TranslationsVideoControlsEn.internal(_root);
|
||||
late final TranslationsUserStatusEn userStatus = TranslationsUserStatusEn.internal(_root);
|
||||
late final TranslationsMessagesEn messages = TranslationsMessagesEn.internal(_root);
|
||||
late final TranslationsSubtitlingStylingEn subtitlingStyling = TranslationsSubtitlingStylingEn.internal(_root);
|
||||
late final TranslationsMpvConfigEn mpvConfig = TranslationsMpvConfigEn.internal(_root);
|
||||
@@ -111,9 +110,6 @@ class TranslationsAuthEn {
|
||||
|
||||
// Translations
|
||||
|
||||
/// en: 'Sign in'
|
||||
String get signIn => 'Sign in';
|
||||
|
||||
/// en: 'Sign in with Plex'
|
||||
String get signInWithPlex => 'Sign in with Plex';
|
||||
|
||||
@@ -273,18 +269,12 @@ class TranslationsCommonEn {
|
||||
/// en: 'Reconnect'
|
||||
String get reconnect => 'Reconnect';
|
||||
|
||||
/// en: 'Exit'
|
||||
String get exit => 'Exit';
|
||||
|
||||
/// en: 'View All'
|
||||
String get viewAll => 'View All';
|
||||
|
||||
/// en: 'Checking network...'
|
||||
String get checkingNetwork => 'Checking network...';
|
||||
|
||||
/// en: 'Refreshing servers...'
|
||||
String get refreshingServers => 'Refreshing servers...';
|
||||
|
||||
/// en: 'Loading servers...'
|
||||
String get loadingServers => 'Loading servers...';
|
||||
|
||||
@@ -585,9 +575,6 @@ class TranslationsSettingsEn {
|
||||
/// en: 'Default Quality'
|
||||
String get defaultQualityTitle => 'Default Quality';
|
||||
|
||||
/// en: 'Used when starting playback. Lower values reduce bandwidth.'
|
||||
String get defaultQualityDescription => 'Used when starting playback. Lower values reduce bandwidth.';
|
||||
|
||||
/// en: 'Music Quality'
|
||||
String get musicQualityTitle => 'Music Quality';
|
||||
|
||||
@@ -870,12 +857,6 @@ class TranslationsSettingsEn {
|
||||
/// en: 'Show what you're watching on Discord'
|
||||
String get discordRichPresenceDescription => 'Show what you\'re watching on Discord';
|
||||
|
||||
/// en: 'Trakt'
|
||||
String get trakt => 'Trakt';
|
||||
|
||||
/// en: 'Sync watch history with Trakt'
|
||||
String get traktDescription => 'Sync watch history with Trakt';
|
||||
|
||||
/// en: 'Services'
|
||||
String get services => 'Services';
|
||||
|
||||
@@ -1071,9 +1052,6 @@ class TranslationsSettingsEn {
|
||||
/// en: 'Startup Section'
|
||||
String get startupSection => 'Startup Section';
|
||||
|
||||
/// en: 'Choose which section Plezy opens to when it starts'
|
||||
String get startupSectionDescription => 'Choose which section Plezy opens to when it starts';
|
||||
|
||||
/// en: 'Default to Favorite Channels'
|
||||
String get liveTvDefaultFavorites => 'Default to Favorite Channels';
|
||||
|
||||
@@ -1307,15 +1285,6 @@ class TranslationsRateSheetEn {
|
||||
/// en: 'Server'
|
||||
String get server => 'Server';
|
||||
|
||||
/// en: '${rating} / 5'
|
||||
String starValue({required Object rating}) => '${rating} / 5';
|
||||
|
||||
/// en: '${score} / 10'
|
||||
String scoreValue({required Object score}) => '${score} / 10';
|
||||
|
||||
/// en: 'Set a score'
|
||||
String get setScore => 'Set a score';
|
||||
|
||||
/// en: 'Favorite'
|
||||
String get favorite => 'Favorite';
|
||||
|
||||
@@ -1363,6 +1332,30 @@ class TranslationsAccessibilityEn {
|
||||
|
||||
/// en: 'Tap to play'
|
||||
String get tapToPlay => 'Tap to play';
|
||||
|
||||
/// en: 'Decrease'
|
||||
String get decrease => 'Decrease';
|
||||
|
||||
/// en: 'Increase'
|
||||
String get increase => 'Increase';
|
||||
|
||||
/// en: 'Decrease ${label}'
|
||||
String decreaseValue({required Object label}) => 'Decrease ${label}';
|
||||
|
||||
/// en: 'Increase ${label}'
|
||||
String increaseValue({required Object label}) => 'Increase ${label}';
|
||||
|
||||
/// en: 'Hue'
|
||||
String get hue => 'Hue';
|
||||
|
||||
/// en: 'Saturation'
|
||||
String get saturation => 'Saturation';
|
||||
|
||||
/// en: 'Brightness'
|
||||
String get brightness => 'Brightness';
|
||||
|
||||
/// en: 'Hex color'
|
||||
String get hexColor => 'Hex color';
|
||||
}
|
||||
|
||||
// Path: tooltips
|
||||
@@ -1505,9 +1498,6 @@ class TranslationsVideoControlsEn {
|
||||
/// en: 'Chapters'
|
||||
String get chaptersButton => 'Chapters';
|
||||
|
||||
/// en: 'Video versions'
|
||||
String get versionsButton => 'Video versions';
|
||||
|
||||
/// en: 'Version & Quality'
|
||||
String get versionQualityButton => 'Version & Quality';
|
||||
|
||||
@@ -1523,9 +1513,6 @@ class TranslationsVideoControlsEn {
|
||||
/// en: '${resolution}p ${bitrate} Mbps'
|
||||
String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
|
||||
|
||||
/// en: '~${bitrate} Mbps'
|
||||
String qualityBandwidthEstimate({required Object bitrate}) => '~${bitrate} Mbps';
|
||||
|
||||
/// en: 'Transcoding unavailable — playing original quality'
|
||||
String get transcodeUnavailableFallback => 'Transcoding unavailable — playing original quality';
|
||||
|
||||
@@ -1625,27 +1612,6 @@ class TranslationsVideoControlsEn {
|
||||
String get searchLanguages => 'Search languages...';
|
||||
}
|
||||
|
||||
// Path: userStatus
|
||||
class TranslationsUserStatusEn {
|
||||
TranslationsUserStatusEn.internal(this._root);
|
||||
|
||||
final Translations _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
|
||||
/// en: 'Admin'
|
||||
String get admin => 'Admin';
|
||||
|
||||
/// en: 'Restricted'
|
||||
String get restricted => 'Restricted';
|
||||
|
||||
/// en: 'Protected'
|
||||
String get protected => 'Protected';
|
||||
|
||||
/// en: 'CURRENT'
|
||||
String get current => 'CURRENT';
|
||||
}
|
||||
|
||||
// Path: messages
|
||||
class TranslationsMessagesEn {
|
||||
TranslationsMessagesEn.internal(this._root);
|
||||
@@ -2085,9 +2051,6 @@ class TranslationsProfilesEn {
|
||||
|
||||
/// en: 'PINs don't match'
|
||||
String get pinsDontMatch => 'PINs don\'t match';
|
||||
|
||||
/// en: 'Failed to initialize profile services'
|
||||
String get initializeServicesFailed => 'Failed to initialize profile services';
|
||||
}
|
||||
|
||||
// Path: connections
|
||||
@@ -2137,9 +2100,6 @@ class TranslationsDiscoverEn {
|
||||
/// en: 'Discover'
|
||||
String get title => 'Discover';
|
||||
|
||||
/// en: 'Switch Profile'
|
||||
String get switchProfile => 'Switch Profile';
|
||||
|
||||
/// en: 'No content available'
|
||||
String get noContentAvailable => 'No content available';
|
||||
|
||||
@@ -2227,12 +2187,6 @@ class TranslationsErrorsEn {
|
||||
/// en: 'No client available'
|
||||
String get noClientAvailable => 'No client available';
|
||||
|
||||
/// en: 'Authentication failed: ${error}'
|
||||
String authenticationFailed({required Object error}) => 'Authentication failed: ${error}';
|
||||
|
||||
/// en: 'Could not launch auth URL'
|
||||
String get couldNotLaunchUrl => 'Could not launch auth URL';
|
||||
|
||||
/// en: 'Please enter a token'
|
||||
String get pleaseEnterToken => 'Please enter a token';
|
||||
|
||||
@@ -2421,9 +2375,6 @@ class TranslationsServerSelectionEn {
|
||||
|
||||
// Translations
|
||||
|
||||
/// en: 'Couldn't connect to any servers. Check your network.'
|
||||
String get allServerConnectionsFailed => 'Couldn\'t connect to any servers. Check your network.';
|
||||
|
||||
/// en: 'No servers found for ${username} (${email})'
|
||||
String noServersFoundForAccount({required Object username, required Object email}) => 'No servers found for ${username} (${email})';
|
||||
|
||||
@@ -2559,9 +2510,6 @@ class TranslationsExploreEn {
|
||||
/// en: 'In these libraries'
|
||||
String get inTheseLibraries => 'In these libraries';
|
||||
|
||||
/// en: 'Available on ${server}'
|
||||
String availableOn({required Object server}) => 'Available on ${server}';
|
||||
|
||||
/// en: 'Checking your library...'
|
||||
String get checkingLibrary => 'Checking your library...';
|
||||
|
||||
@@ -2604,6 +2552,12 @@ class TranslationsLiveTvEn {
|
||||
/// en: 'No DVR configured on any server'
|
||||
String get noDvr => 'No DVR configured on any server';
|
||||
|
||||
/// en: 'Live TV server is not available.'
|
||||
String get serverUnavailable => 'Live TV server is not available.';
|
||||
|
||||
/// en: 'Live TV server is not connected.'
|
||||
String get serverNotConnected => 'Live TV server is not connected.';
|
||||
|
||||
/// en: 'No program data available'
|
||||
String get noPrograms => 'No program data available';
|
||||
|
||||
@@ -2709,9 +2663,6 @@ class TranslationsLiveTvEn {
|
||||
/// en: 'Nothing scheduled to record'
|
||||
String get noScheduledRecordings => 'Nothing scheduled to record';
|
||||
|
||||
/// en: 'No recording rules yet'
|
||||
String get noRecordingRules => 'No recording rules yet';
|
||||
|
||||
/// en: 'Manage recording'
|
||||
String get manageRecording => 'Manage recording';
|
||||
|
||||
@@ -2760,9 +2711,6 @@ class TranslationsLiveTvEn {
|
||||
/// en: 'Re-evaluate rules'
|
||||
String get processRecordingRules => 'Re-evaluate rules';
|
||||
|
||||
/// en: 'Loading recordings...'
|
||||
String get loadingRecordings => 'Loading recordings...';
|
||||
|
||||
/// en: 'Recording now'
|
||||
String get recordingInProgress => 'Recording now';
|
||||
|
||||
@@ -2805,9 +2753,6 @@ class TranslationsCollectionsEn {
|
||||
/// en: 'Collection is empty'
|
||||
String get empty => 'Collection is empty';
|
||||
|
||||
/// en: 'Cannot delete: Unknown library section'
|
||||
String get unknownLibrarySection => 'Cannot delete: Unknown library section';
|
||||
|
||||
/// en: 'Delete Collection'
|
||||
String get deleteCollection => 'Delete Collection';
|
||||
|
||||
@@ -3360,9 +3305,6 @@ class TranslationsDownloadsEn {
|
||||
/// en: 'How many episodes?'
|
||||
String get howManyEpisodes => 'How many episodes?';
|
||||
|
||||
/// en: '${count} items queued for download'
|
||||
String itemsQueued({required Object count}) => '${count} items queued for download';
|
||||
|
||||
/// en: 'Keep synced'
|
||||
String get keepSynced => 'Keep synced';
|
||||
|
||||
@@ -4252,9 +4194,6 @@ class TranslationsAddServerEn {
|
||||
/// en: 'PIN expired before sign-in. Please try again.'
|
||||
String get pinExpired => 'PIN expired before sign-in. Please try again.';
|
||||
|
||||
/// en: 'Already signed in to Plex. Sign out to switch accounts.'
|
||||
String get duplicatePlexAccount => 'Already signed in to Plex. Sign out to switch accounts.';
|
||||
|
||||
/// en: 'Failed to register account: ${error}'
|
||||
String failedToRegisterAccount({required Object error}) => 'Failed to register account: ${error}';
|
||||
|
||||
@@ -4522,9 +4461,6 @@ class TranslationsLibrariesSortLabelsEn {
|
||||
/// en: 'User Rating'
|
||||
String get userRating => 'User Rating';
|
||||
|
||||
/// en: 'Last Played'
|
||||
String get lastPlayed => 'Last Played';
|
||||
|
||||
/// en: 'Date Played'
|
||||
String get datePlayed => 'Date Played';
|
||||
|
||||
@@ -4645,9 +4581,6 @@ class TranslationsCompanionRemoteSessionEn {
|
||||
/// en: 'Starting remote server...'
|
||||
String get startingServer => 'Starting remote server...';
|
||||
|
||||
/// en: 'Failed to start remote server:'
|
||||
String get failedToCreate => 'Failed to start remote server:';
|
||||
|
||||
/// en: 'Host Address'
|
||||
String get hostAddress => 'Host Address';
|
||||
|
||||
@@ -4837,6 +4770,12 @@ class TranslationsCompanionRemoteErrorsEn {
|
||||
/// en: 'Authentication failed'
|
||||
String get authenticationFailed => 'Authentication failed';
|
||||
|
||||
/// en: 'Failed to start remote server: ${error}'
|
||||
String serverStartFailed({required Object error}) => 'Failed to start remote server: ${error}';
|
||||
|
||||
/// en: 'Failed to send remote command: ${error}'
|
||||
String commandFailed({required Object error}) => 'Failed to send remote command: ${error}';
|
||||
|
||||
/// en: 'Timed out joining session'
|
||||
String get joinTimedOut => 'Timed out joining session';
|
||||
|
||||
@@ -4970,7 +4909,6 @@ extension on Translations {
|
||||
dynamic _flatMapFunction(String path) {
|
||||
return switch (path) {
|
||||
'app.title' => 'Plezy',
|
||||
'auth.signIn' => 'Sign in',
|
||||
'auth.signInWithPlex' => 'Sign in with Plex',
|
||||
'auth.showQRCode' => 'Show QR Code',
|
||||
'auth.authenticate' => 'Authenticate',
|
||||
@@ -5021,10 +4959,8 @@ extension on Translations {
|
||||
'common.episodeNumberTitle' => ({required Object number, required Object title}) => 'Episode ${number} - ${title}',
|
||||
'common.chapterNumber' => ({required Object number}) => 'Chapter ${number}',
|
||||
'common.reconnect' => 'Reconnect',
|
||||
'common.exit' => 'Exit',
|
||||
'common.viewAll' => 'View All',
|
||||
'common.checkingNetwork' => 'Checking network...',
|
||||
'common.refreshingServers' => 'Refreshing servers...',
|
||||
'common.loadingServers' => 'Loading servers...',
|
||||
'common.connectingToServers' => 'Connecting to servers...',
|
||||
'common.startingOfflineMode' => 'Starting offline mode...',
|
||||
@@ -5116,7 +5052,6 @@ extension on Translations {
|
||||
'settings.bufferSizeAuto' => 'Auto (Recommended)',
|
||||
'settings.bufferSizeWarning' => ({required Object heap, required Object size}) => '${heap}MB memory available. A ${size}MB buffer may affect playback.',
|
||||
'settings.defaultQualityTitle' => 'Default Quality',
|
||||
'settings.defaultQualityDescription' => 'Used when starting playback. Lower values reduce bandwidth.',
|
||||
'settings.musicQualityTitle' => 'Music Quality',
|
||||
'settings.subtitleStyling' => 'Subtitle Styling',
|
||||
'settings.subtitleStylingDescription' => 'Customize subtitle appearance',
|
||||
@@ -5211,8 +5146,6 @@ extension on Translations {
|
||||
'settings.maxVolumePercent' => ({required Object percent}) => '${percent}%',
|
||||
'settings.discordRichPresence' => 'Discord Rich Presence',
|
||||
'settings.discordRichPresenceDescription' => 'Show what you\'re watching on Discord',
|
||||
'settings.trakt' => 'Trakt',
|
||||
'settings.traktDescription' => 'Sync watch history with Trakt',
|
||||
'settings.services' => 'Services',
|
||||
'settings.servicesDescription' => 'Connect Trakt, MyAnimeList, Seerr, and more',
|
||||
'settings.manageLibrariesDescription' => 'Reorder and hide libraries',
|
||||
@@ -5278,7 +5211,6 @@ extension on Translations {
|
||||
'settings.showNavBarLabels' => 'Show Navigation Bar Labels',
|
||||
'settings.showNavBarLabelsDescription' => 'Display text labels under navigation bar icons',
|
||||
'settings.startupSection' => 'Startup Section',
|
||||
'settings.startupSectionDescription' => 'Choose which section Plezy opens to when it starts',
|
||||
'settings.liveTvDefaultFavorites' => 'Default to Favorite Channels',
|
||||
'settings.liveTvDefaultFavoritesDescription' => 'Show only favorite channels when opening Live TV',
|
||||
'settings.display' => 'Display',
|
||||
@@ -5366,9 +5298,6 @@ extension on Translations {
|
||||
'mediaMenu.playVersion' => 'Play Version...',
|
||||
'rateSheet.title' => 'Rate',
|
||||
'rateSheet.server' => 'Server',
|
||||
'rateSheet.starValue' => ({required Object rating}) => '${rating} / 5',
|
||||
'rateSheet.scoreValue' => ({required Object score}) => '${score} / 10',
|
||||
'rateSheet.setScore' => 'Set a score',
|
||||
'rateSheet.favorite' => 'Favorite',
|
||||
'rateSheet.favorited' => 'Favorited',
|
||||
'rateSheet.saved' => 'Saved',
|
||||
@@ -5382,6 +5311,14 @@ extension on Translations {
|
||||
'accessibility.mediaCardPartiallyWatched' => ({required Object percent}) => '${percent} percent watched',
|
||||
'accessibility.mediaCardUnwatched' => 'unwatched',
|
||||
'accessibility.tapToPlay' => 'Tap to play',
|
||||
'accessibility.decrease' => 'Decrease',
|
||||
'accessibility.increase' => 'Increase',
|
||||
'accessibility.decreaseValue' => ({required Object label}) => 'Decrease ${label}',
|
||||
'accessibility.increaseValue' => ({required Object label}) => 'Increase ${label}',
|
||||
'accessibility.hue' => 'Hue',
|
||||
'accessibility.saturation' => 'Saturation',
|
||||
'accessibility.brightness' => 'Brightness',
|
||||
'accessibility.hexColor' => 'Hex color',
|
||||
'tooltips.shufflePlay' => 'Shuffle play',
|
||||
'tooltips.playTrailer' => 'Play trailer',
|
||||
'tooltips.markAsWatched' => 'Mark as watched',
|
||||
@@ -5423,13 +5360,11 @@ extension on Translations {
|
||||
'videoControls.settingsButton' => 'Playback Settings',
|
||||
'videoControls.tracksButton' => 'Audio & Subtitles',
|
||||
'videoControls.chaptersButton' => 'Chapters',
|
||||
'videoControls.versionsButton' => 'Video versions',
|
||||
'videoControls.versionQualityButton' => 'Version & Quality',
|
||||
'videoControls.versionColumnHeader' => 'Version',
|
||||
'videoControls.qualityColumnHeader' => 'Quality',
|
||||
'videoControls.qualityOriginal' => 'Original',
|
||||
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
|
||||
'videoControls.qualityBandwidthEstimate' => ({required Object bitrate}) => '~${bitrate} Mbps',
|
||||
'videoControls.transcodeUnavailableFallback' => 'Transcoding unavailable — playing original quality',
|
||||
'videoControls.pipButton' => 'Picture-in-Picture mode',
|
||||
'videoControls.aspectRatioButton' => 'Aspect ratio',
|
||||
@@ -5469,10 +5404,6 @@ extension on Translations {
|
||||
'videoControls.subtitleDownloaded' => 'Subtitle downloaded',
|
||||
'videoControls.subtitleDownloadFailed' => 'Failed to download subtitle',
|
||||
'videoControls.searchLanguages' => 'Search languages...',
|
||||
'userStatus.admin' => 'Admin',
|
||||
'userStatus.restricted' => 'Restricted',
|
||||
'userStatus.protected' => 'Protected',
|
||||
'userStatus.current' => 'CURRENT',
|
||||
'messages.markedAsWatched' => 'Marked as watched',
|
||||
'messages.markedAsUnwatched' => 'Marked as unwatched',
|
||||
'messages.markedAsWatchedOffline' => 'Marked as watched (will sync when online)',
|
||||
@@ -5481,8 +5412,6 @@ extension on Translations {
|
||||
'messages.removedFromContinueWatching' => 'Removed from Continue Watching',
|
||||
'messages.errorLoading' => ({required Object error}) => 'Error: ${error}',
|
||||
'messages.streamInterrupted' => 'The stream was interrupted. Press play or seek to retry.',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.fileInfoNotAvailable' => 'File information not available',
|
||||
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Error loading file info: ${error}',
|
||||
'messages.errorLoadingSeries' => 'Error loading series',
|
||||
@@ -5491,6 +5420,8 @@ extension on Translations {
|
||||
'messages.noProfilesAvailable' => 'No profiles available',
|
||||
'messages.contactAdminForProfiles' => 'Contact your server administrator to add profiles',
|
||||
'messages.unableToDetermineLibrarySection' => 'Unable to determine library section for this item',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.logsCleared' => 'Logs cleared',
|
||||
'messages.logsCopied' => 'Logs copied to clipboard',
|
||||
'messages.noLogsAvailable' => 'No logs available',
|
||||
@@ -5607,7 +5538,6 @@ extension on Translations {
|
||||
'profiles.pinExplain' => '4-digit PIN required to switch profiles.',
|
||||
'profiles.continueButton' => 'Continue',
|
||||
'profiles.pinsDontMatch' => 'PINs don\'t match',
|
||||
'profiles.initializeServicesFailed' => 'Failed to initialize profile services',
|
||||
'connections.sectionTitle' => 'Connections',
|
||||
'connections.addConnection' => 'Add connection',
|
||||
'connections.addConnectionSubtitleNoProfile' => 'Sign in with Plex or connect a Jellyfin server',
|
||||
@@ -5618,7 +5548,6 @@ extension on Translations {
|
||||
'connections.editJellyfinTitle' => 'Edit Jellyfin connection',
|
||||
'connections.editJellyfinIntro' => ({required Object serverName}) => 'Add or remove URLs for ${serverName}. Plezy will use the reachable URL with the lowest latency.',
|
||||
'discover.title' => 'Discover',
|
||||
'discover.switchProfile' => 'Switch Profile',
|
||||
'discover.noContentAvailable' => 'No content available',
|
||||
'discover.addMediaToLibraries' => 'Add some media to your libraries',
|
||||
'discover.continueWatching' => 'Continue Watching',
|
||||
@@ -5645,8 +5574,6 @@ extension on Translations {
|
||||
'errors.connectionFailed' => 'Unable to connect to media server',
|
||||
'errors.failedToLoad' => ({required Object context, required Object error}) => 'Failed to load ${context}: ${error}',
|
||||
'errors.noClientAvailable' => 'No client available',
|
||||
'errors.authenticationFailed' => ({required Object error}) => 'Authentication failed: ${error}',
|
||||
'errors.couldNotLaunchUrl' => 'Could not launch auth URL',
|
||||
'errors.pleaseEnterToken' => 'Please enter a token',
|
||||
'errors.invalidToken' => 'Invalid token',
|
||||
'errors.failedToVerifyToken' => ({required Object error}) => 'Failed to verify token: ${error}',
|
||||
@@ -5721,7 +5648,6 @@ extension on Translations {
|
||||
'libraries.sortLabels.communityRating' => 'Community Rating',
|
||||
'libraries.sortLabels.criticRating' => 'Critic Rating',
|
||||
'libraries.sortLabels.userRating' => 'User Rating',
|
||||
'libraries.sortLabels.lastPlayed' => 'Last Played',
|
||||
'libraries.sortLabels.datePlayed' => 'Date Played',
|
||||
'libraries.sortLabels.playCount' => 'Play Count',
|
||||
'libraries.sortLabels.productionYear' => 'Production Year',
|
||||
@@ -5740,7 +5666,6 @@ extension on Translations {
|
||||
'about.versionLabel' => ({required Object version}) => 'Version ${version}',
|
||||
'about.appDescription' => 'A beautiful Plex and Jellyfin client for Flutter',
|
||||
'about.viewLicensesDescription' => 'View licenses of third-party libraries',
|
||||
'serverSelection.allServerConnectionsFailed' => 'Couldn\'t connect to any servers. Check your network.',
|
||||
'serverSelection.noServersFoundForAccount' => ({required Object username, required Object email}) => 'No servers found for ${username} (${email})',
|
||||
'serverSelection.failedToLoadServers' => ({required Object error}) => 'Failed to load servers: ${error}',
|
||||
'hubDetail.title' => 'Title',
|
||||
@@ -5786,7 +5711,6 @@ extension on Translations {
|
||||
'explore.watchlistUpdateFailed' => 'Couldn\'t update watchlist',
|
||||
'explore.notInLibrary' => 'Not in your library',
|
||||
'explore.inTheseLibraries' => 'In these libraries',
|
||||
'explore.availableOn' => ({required Object server}) => 'Available on ${server}',
|
||||
'explore.checkingLibrary' => 'Checking your library...',
|
||||
'explore.emptyTitle' => 'Nothing here yet',
|
||||
'explore.emptyMessage' => ({required Object source}) => 'Rows from ${source} will appear here once they have content.',
|
||||
@@ -5798,6 +5722,8 @@ extension on Translations {
|
||||
'liveTv.guide' => 'Guide',
|
||||
'liveTv.noChannels' => 'No channels available',
|
||||
'liveTv.noDvr' => 'No DVR configured on any server',
|
||||
'liveTv.serverUnavailable' => 'Live TV server is not available.',
|
||||
'liveTv.serverNotConnected' => 'Live TV server is not connected.',
|
||||
'liveTv.noPrograms' => 'No program data available',
|
||||
'liveTv.liveStreamFailed' => 'Live stream failed',
|
||||
'liveTv.unknownProgram' => 'Unknown Program',
|
||||
@@ -5833,7 +5759,6 @@ extension on Translations {
|
||||
'liveTv.scheduledRecordings' => 'Scheduled',
|
||||
'liveTv.recordingRules' => 'Recording Rules',
|
||||
'liveTv.noScheduledRecordings' => 'Nothing scheduled to record',
|
||||
'liveTv.noRecordingRules' => 'No recording rules yet',
|
||||
'liveTv.manageRecording' => 'Manage recording',
|
||||
'liveTv.cancelRecording' => 'Cancel recording',
|
||||
'liveTv.cancelRecordingTitle' => 'Cancel this recording?',
|
||||
@@ -5850,7 +5775,6 @@ extension on Translations {
|
||||
'liveTv.recordingCancelled' => 'Recording cancelled',
|
||||
'liveTv.recordingRuleDeleted' => 'Recording rule deleted',
|
||||
'liveTv.processRecordingRules' => 'Re-evaluate rules',
|
||||
'liveTv.loadingRecordings' => 'Loading recordings...',
|
||||
'liveTv.recordingInProgress' => 'Recording now',
|
||||
'liveTv.recordingsCount' => ({required Object count}) => '${count} scheduled',
|
||||
'liveTv.editRule' => 'Edit rule',
|
||||
@@ -5862,7 +5786,6 @@ extension on Translations {
|
||||
'collections.title' => 'Collections',
|
||||
'collections.collection' => 'Collection',
|
||||
'collections.empty' => 'Collection is empty',
|
||||
'collections.unknownLibrarySection' => 'Cannot delete: Unknown library section',
|
||||
'collections.deleteCollection' => 'Delete Collection',
|
||||
'collections.deleteConfirm' => ({required Object title}) => 'Delete "${title}"? This can\'t be undone.',
|
||||
'collections.deleted' => 'Collection deleted',
|
||||
@@ -5995,8 +5918,6 @@ extension on Translations {
|
||||
'downloads.title' => 'Downloads',
|
||||
'downloads.manage' => 'Manage',
|
||||
'downloads.tvShows' => 'TV Shows',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.movies' => 'Movies',
|
||||
'downloads.music' => 'Music',
|
||||
'downloads.tracksQueued' => ({required Object count}) => '${count} tracks queued for download',
|
||||
@@ -6013,6 +5934,8 @@ extension on Translations {
|
||||
'downloads.deleteConfirm' => ({required Object title}) => 'Delete "${title}" from this device?',
|
||||
'downloads.cancelledDownloadTitle' => 'Cancelled Download',
|
||||
'downloads.cancelledDownloadMessage' => 'This download was cancelled. What would you like to do?',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.allEpisodesAlreadyDownloaded' => 'All episodes already downloaded',
|
||||
'downloads.resumeDownload' => 'Resume download',
|
||||
'downloads.cancelledDownload' => 'Cancelled download',
|
||||
@@ -6036,7 +5959,6 @@ extension on Translations {
|
||||
'downloads.customAmount' => 'Custom amount...',
|
||||
'downloads.includeSpecials' => 'Include Specials',
|
||||
'downloads.howManyEpisodes' => 'How many episodes?',
|
||||
'downloads.itemsQueued' => ({required Object count}) => '${count} items queued for download',
|
||||
'downloads.keepSynced' => 'Keep synced',
|
||||
'downloads.downloadOnce' => 'Download once',
|
||||
'downloads.keepNUnwatched' => ({required Object count}) => 'Keep ${count} unwatched',
|
||||
@@ -6080,7 +6002,6 @@ extension on Translations {
|
||||
'companionRemote.connectedTo' => ({required Object name}) => 'Connected to ${name}',
|
||||
'companionRemote.unknownDevice' => 'Unknown Device',
|
||||
'companionRemote.session.startingServer' => 'Starting remote server...',
|
||||
'companionRemote.session.failedToCreate' => 'Failed to start remote server:',
|
||||
'companionRemote.session.hostAddress' => 'Host Address',
|
||||
'companionRemote.session.connected' => 'Connected',
|
||||
'companionRemote.session.serverRunning' => 'Remote server active',
|
||||
@@ -6135,6 +6056,8 @@ extension on Translations {
|
||||
'companionRemote.remote.searchHint' => 'Search on desktop...',
|
||||
'companionRemote.errors.noNetworkInterface' => 'No network interface found',
|
||||
'companionRemote.errors.authenticationFailed' => 'Authentication failed',
|
||||
'companionRemote.errors.serverStartFailed' => ({required Object error}) => 'Failed to start remote server: ${error}',
|
||||
'companionRemote.errors.commandFailed' => ({required Object error}) => 'Failed to send remote command: ${error}',
|
||||
'companionRemote.errors.joinTimedOut' => 'Timed out joining session',
|
||||
'companionRemote.errors.failedToConnectAnyAddress' => 'Failed to connect to any address',
|
||||
'companionRemote.errors.connectionLostAfterAttempts' => ({required Object attempts}) => 'Connection lost after ${attempts} attempts',
|
||||
@@ -6379,7 +6302,6 @@ extension on Translations {
|
||||
'addServer.quickConnectFailed' => ({required Object error}) => 'Quick Connect failed: ${error}',
|
||||
'addServer.addPlexTitle' => 'Sign in with Plex',
|
||||
'addServer.pinExpired' => 'PIN expired before sign-in. Please try again.',
|
||||
'addServer.duplicatePlexAccount' => 'Already signed in to Plex. Sign out to switch accounts.',
|
||||
'addServer.failedToRegisterAccount' => ({required Object error}) => 'Failed to register account: ${error}',
|
||||
'addServer.enterJellyfinUrlError' => 'Enter your Jellyfin server URL',
|
||||
'addServer.addConnectionTitle' => 'Add connection',
|
||||
|
||||
+60
-100
@@ -53,7 +53,6 @@ class TranslationsEs extends Translations with BaseTranslations<AppLocale, Trans
|
||||
@override late final _TranslationsAccessibilityEs accessibility = _TranslationsAccessibilityEs._(_root);
|
||||
@override late final _TranslationsTooltipsEs tooltips = _TranslationsTooltipsEs._(_root);
|
||||
@override late final _TranslationsVideoControlsEs videoControls = _TranslationsVideoControlsEs._(_root);
|
||||
@override late final _TranslationsUserStatusEs userStatus = _TranslationsUserStatusEs._(_root);
|
||||
@override late final _TranslationsMessagesEs messages = _TranslationsMessagesEs._(_root);
|
||||
@override late final _TranslationsSubtitlingStylingEs subtitlingStyling = _TranslationsSubtitlingStylingEs._(_root);
|
||||
@override late final _TranslationsMpvConfigEs mpvConfig = _TranslationsMpvConfigEs._(_root);
|
||||
@@ -107,7 +106,6 @@ class _TranslationsAuthEs extends TranslationsAuthEn {
|
||||
final TranslationsEs _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get signIn => 'Iniciar sesión';
|
||||
@override String get signInWithPlex => 'Inicia sesión con Plex';
|
||||
@override String get showQRCode => 'Mostrar código QR';
|
||||
@override String get authenticate => 'Autenticar';
|
||||
@@ -167,10 +165,8 @@ class _TranslationsCommonEs extends TranslationsCommonEn {
|
||||
@override String episodeNumberTitle({required Object number, required Object title}) => 'Episodio ${number} - ${title}';
|
||||
@override String chapterNumber({required Object number}) => 'Capítulo ${number}';
|
||||
@override String get reconnect => 'Reconectar';
|
||||
@override String get exit => 'Salir';
|
||||
@override String get viewAll => 'Ver todo';
|
||||
@override String get checkingNetwork => 'Comprobando red...';
|
||||
@override String get refreshingServers => 'Actualizando servidores...';
|
||||
@override String get loadingServers => 'Cargando servidores...';
|
||||
@override String get connectingToServers => 'Conectando a servidores...';
|
||||
@override String get startingOfflineMode => 'Iniciando modo sin conexión...';
|
||||
@@ -271,6 +267,12 @@ class _TranslationsSettingsEs extends TranslationsSettingsEn {
|
||||
@override String get tvFullCardLayoutDescription => 'Usar tarjetas TV solo con imagen y nombres de actores superpuestos';
|
||||
@override String get focusGlow => 'Brillo de foco';
|
||||
@override String get focusGlowDescription => 'Mostrar un brillo suave alrededor de la tarjeta con foco';
|
||||
@override String get visualEffects => 'Efectos visuales';
|
||||
@override String get visualEffectsAuto => 'Automático';
|
||||
@override String get visualEffectsAutoDescription => 'Reduce automáticamente los efectos en dispositivos de bajo consumo';
|
||||
@override String get visualEffectsFull => 'Completos';
|
||||
@override String get visualEffectsReduced => 'Reducidos';
|
||||
@override String get visualEffectsReducedDescription => 'Menos animaciones e ilustraciones de menor resolución';
|
||||
@override String get hideSpoilers => 'Ocultar spoilers de episodios no vistos';
|
||||
@override String get hideSpoilersDescription => 'Desenfocar miniaturas y descripciones de episodios no vistos';
|
||||
@override String get playerBackend => 'Reproductor';
|
||||
@@ -283,7 +285,7 @@ class _TranslationsSettingsEs extends TranslationsSettingsEn {
|
||||
@override String get bufferSizeAuto => 'Auto (Recomendado)';
|
||||
@override String bufferSizeWarning({required Object heap, required Object size}) => '${heap}MB de memoria disponible. Un búfer de ${size}MB puede afectar la reproducción.';
|
||||
@override String get defaultQualityTitle => 'Calidad predeterminada';
|
||||
@override String get defaultQualityDescription => 'Se utiliza al iniciar la reproducción. Los valores más bajos reducen el ancho de banda.';
|
||||
@override String get musicQualityTitle => 'Calidad de música';
|
||||
@override String get subtitleStyling => 'Estilo de Subtítulos';
|
||||
@override String get subtitleStylingDescription => 'Personalizar la apariencia de los subtítulos';
|
||||
@override String get smallSkipDuration => 'Salto pequeño';
|
||||
@@ -377,10 +379,9 @@ class _TranslationsSettingsEs extends TranslationsSettingsEn {
|
||||
@override String maxVolumePercent({required Object percent}) => '${percent}%';
|
||||
@override String get discordRichPresence => 'Presencia de Discord';
|
||||
@override String get discordRichPresenceDescription => 'Mostrar lo que estás viendo en Discord';
|
||||
@override String get trakt => 'Trakt';
|
||||
@override String get traktDescription => 'Sincronizar historial de visualización con Trakt';
|
||||
@override String get services => 'Servicios';
|
||||
@override String get servicesDescription => 'Conecta Trakt, MyAnimeList, Seerr y más';
|
||||
@override String get manageLibrariesDescription => 'Reordena y oculta bibliotecas';
|
||||
@override String get companionRemoteServer => 'Servidor de control remoto';
|
||||
@override String get companionRemoteServerDescription => 'Permitir que dispositivos móviles en tu red controlen esta aplicación';
|
||||
@override String get autoPip => 'Imagen en imagen automática';
|
||||
@@ -443,7 +444,6 @@ class _TranslationsSettingsEs extends TranslationsSettingsEn {
|
||||
@override String get showNavBarLabels => 'Mostrar etiquetas de la barra de navegación';
|
||||
@override String get showNavBarLabelsDescription => 'Mostrar etiquetas de texto bajo los iconos de la barra de navegación';
|
||||
@override String get startupSection => 'Sección de inicio';
|
||||
@override String get startupSectionDescription => 'Elige qué sección abre Plezy al iniciarse';
|
||||
@override String get liveTvDefaultFavorites => 'Canales favoritos por defecto';
|
||||
@override String get liveTvDefaultFavoritesDescription => 'Mostrar solo canales favoritos al abrir TV en vivo';
|
||||
@override String get display => 'Pantalla';
|
||||
@@ -455,13 +455,6 @@ class _TranslationsSettingsEs extends TranslationsSettingsEn {
|
||||
@override String get subtitlesAndConfig => 'Subtítulos y configuración';
|
||||
@override String get seekAndTiming => 'Búsqueda y tiempo';
|
||||
@override String get behavior => 'Comportamiento';
|
||||
@override String get manageLibrariesDescription => 'Reordena y oculta bibliotecas';
|
||||
@override String get visualEffects => 'Efectos visuales';
|
||||
@override String get visualEffectsAuto => 'Automático';
|
||||
@override String get visualEffectsAutoDescription => 'Reduce automáticamente los efectos en dispositivos de bajo consumo';
|
||||
@override String get visualEffectsFull => 'Completos';
|
||||
@override String get visualEffectsReduced => 'Reducidos';
|
||||
@override String get visualEffectsReducedDescription => 'Menos animaciones e ilustraciones de menor resolución';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -559,14 +552,11 @@ class _TranslationsRateSheetEs extends TranslationsRateSheetEn {
|
||||
// Translations
|
||||
@override String get title => 'Calificar';
|
||||
@override String get server => 'Servidor';
|
||||
@override String starValue({required Object rating}) => '${rating} / 5';
|
||||
@override String scoreValue({required Object score}) => '${score} / 10';
|
||||
@override String get setScore => 'Establecer puntuación';
|
||||
@override String get favorite => 'Favorito';
|
||||
@override String get favorited => 'Marcado como favorito';
|
||||
@override String get saved => 'Guardado';
|
||||
@override String get notAvailable => 'No se encontró coincidencia';
|
||||
@override String get noConnectedServices => 'Conecta un servicio en Configuración para calificar ahí.';
|
||||
@override String get favorite => 'Favorito';
|
||||
@override String get favorited => 'Marcado como favorito';
|
||||
}
|
||||
|
||||
// Path: accessibility
|
||||
@@ -584,6 +574,14 @@ class _TranslationsAccessibilityEs extends TranslationsAccessibilityEn {
|
||||
@override String mediaCardPartiallyWatched({required Object percent}) => '${percent} por ciento visto';
|
||||
@override String get mediaCardUnwatched => 'no visto';
|
||||
@override String get tapToPlay => 'Toca para reproducir';
|
||||
@override String get decrease => 'Disminuir';
|
||||
@override String get increase => 'Aumentar';
|
||||
@override String decreaseValue({required Object label}) => 'Disminuir ${label}';
|
||||
@override String increaseValue({required Object label}) => 'Aumentar ${label}';
|
||||
@override String get hue => 'Tono';
|
||||
@override String get saturation => 'Saturación';
|
||||
@override String get brightness => 'Brillo';
|
||||
@override String get hexColor => 'Color hexadecimal';
|
||||
}
|
||||
|
||||
// Path: tooltips
|
||||
@@ -643,13 +641,11 @@ class _TranslationsVideoControlsEs extends TranslationsVideoControlsEn {
|
||||
@override String get settingsButton => 'Ajustes de reproducción';
|
||||
@override String get tracksButton => 'Audio y subtítulos';
|
||||
@override String get chaptersButton => 'Capítulos';
|
||||
@override String get versionsButton => 'Versiones de video';
|
||||
@override String get versionQualityButton => 'Versión y calidad';
|
||||
@override String get versionColumnHeader => 'Versión';
|
||||
@override String get qualityColumnHeader => 'Calidad';
|
||||
@override String get qualityOriginal => 'Original';
|
||||
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
|
||||
@override String qualityBandwidthEstimate({required Object bitrate}) => '~${bitrate} Mbps';
|
||||
@override String get transcodeUnavailableFallback => 'Transcodificación no disponible — reproduciendo calidad original';
|
||||
@override String get pipButton => 'Modo PiP (Imagen en Imagen)';
|
||||
@override String get aspectRatioButton => 'Relación de aspecto';
|
||||
@@ -685,19 +681,6 @@ class _TranslationsVideoControlsEs extends TranslationsVideoControlsEn {
|
||||
@override String get searchLanguages => 'Buscar idiomas...';
|
||||
}
|
||||
|
||||
// Path: userStatus
|
||||
class _TranslationsUserStatusEs extends TranslationsUserStatusEn {
|
||||
_TranslationsUserStatusEs._(TranslationsEs root) : this._root = root, super.internal(root);
|
||||
|
||||
final TranslationsEs _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get admin => 'Administrador';
|
||||
@override String get restricted => 'Restringido';
|
||||
@override String get protected => 'Protegido';
|
||||
@override String get current => 'ACTUAL';
|
||||
}
|
||||
|
||||
// Path: messages
|
||||
class _TranslationsMessagesEs extends TranslationsMessagesEn {
|
||||
_TranslationsMessagesEs._(TranslationsEs root) : this._root = root, super.internal(root);
|
||||
@@ -873,7 +856,6 @@ class _TranslationsProfilesEs extends TranslationsProfilesEn {
|
||||
@override String get pinExplain => 'Se requiere PIN de 4 dígitos para cambiar de perfil.';
|
||||
@override String get continueButton => 'Continuar';
|
||||
@override String get pinsDontMatch => 'Los PIN no coinciden';
|
||||
@override String get initializeServicesFailed => 'No se pudieron inicializar los servicios de perfil';
|
||||
}
|
||||
|
||||
// Path: connections
|
||||
@@ -902,7 +884,6 @@ class _TranslationsDiscoverEs extends TranslationsDiscoverEn {
|
||||
|
||||
// Translations
|
||||
@override String get title => 'Descubrir';
|
||||
@override String get switchProfile => 'Cambiar Perfil';
|
||||
@override String get noContentAvailable => 'No hay contenido disponible';
|
||||
@override String get addMediaToLibraries => 'Añade contenido a tus bibliotecas';
|
||||
@override String get continueWatching => 'Seguir Viendo';
|
||||
@@ -938,8 +919,6 @@ class _TranslationsErrorsEs extends TranslationsErrorsEn {
|
||||
@override String get connectionFailed => 'No se puede conectar al servidor multimedia';
|
||||
@override String failedToLoad({required Object context, required Object error}) => 'Error al cargar ${context}: ${error}';
|
||||
@override String get noClientAvailable => 'No hay cliente disponible';
|
||||
@override String authenticationFailed({required Object error}) => 'Error de autenticación: ${error}';
|
||||
@override String get couldNotLaunchUrl => 'No se pudo abrir la URL de autenticación';
|
||||
@override String get pleaseEnterToken => 'Por favor, introduce un token';
|
||||
@override String get invalidToken => 'Token no válido';
|
||||
@override String failedToVerifyToken({required Object error}) => 'Error al verificar el token: ${error}';
|
||||
@@ -973,6 +952,8 @@ class _TranslationsLibrariesEs extends TranslationsLibrariesEn {
|
||||
@override String get allLibrariesHidden => 'Todas las bibliotecas están ocultas';
|
||||
@override String hiddenLibrariesCount({required Object count}) => 'Bibliotecas ocultas (${count})';
|
||||
@override String get thisLibraryIsEmpty => 'Esta biblioteca está vacía';
|
||||
@override String get noItemsMatchFilters => 'Ningún elemento coincide con los filtros activos';
|
||||
@override String get resetFilters => 'Restablecer filtros';
|
||||
@override String get all => 'Todos';
|
||||
@override String get clearAll => 'Borrar Todo';
|
||||
@override String scanLibraryConfirm({required Object title}) => '¿Estás seguro de que quieres escanear "${title}"?';
|
||||
@@ -998,8 +979,6 @@ class _TranslationsLibrariesEs extends TranslationsLibrariesEn {
|
||||
@override late final _TranslationsLibrariesGroupingsEs groupings = _TranslationsLibrariesGroupingsEs._(_root);
|
||||
@override late final _TranslationsLibrariesFilterCategoriesEs filterCategories = _TranslationsLibrariesFilterCategoriesEs._(_root);
|
||||
@override late final _TranslationsLibrariesSortLabelsEs sortLabels = _TranslationsLibrariesSortLabelsEs._(_root);
|
||||
@override String get noItemsMatchFilters => 'Ningún elemento coincide con los filtros activos';
|
||||
@override String get resetFilters => 'Restablecer filtros';
|
||||
}
|
||||
|
||||
// Path: about
|
||||
@@ -1023,7 +1002,6 @@ class _TranslationsServerSelectionEs extends TranslationsServerSelectionEn {
|
||||
final TranslationsEs _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get allServerConnectionsFailed => 'No se pudo conectar a ningún servidor. Revisa tu red.';
|
||||
@override String noServersFoundForAccount({required Object username, required Object email}) => 'No se encontraron servidores para ${username} (${email})';
|
||||
@override String failedToLoadServers({required Object error}) => 'Error al cargar servidores: ${error}';
|
||||
}
|
||||
@@ -1102,7 +1080,6 @@ class _TranslationsExploreEs extends TranslationsExploreEn {
|
||||
@override String get watchlistUpdateFailed => 'No se pudo actualizar la lista de seguimiento';
|
||||
@override String get notInLibrary => 'No está en tu biblioteca';
|
||||
@override String get inTheseLibraries => 'En estas bibliotecas';
|
||||
@override String availableOn({required Object server}) => 'Disponible en ${server}';
|
||||
@override String get checkingLibrary => 'Comprobando tu biblioteca...';
|
||||
@override String get emptyTitle => 'Aquí no hay nada todavía';
|
||||
@override String emptyMessage({required Object source}) => 'Las filas de ${source} aparecerán aquí cuando tengan contenido.';
|
||||
@@ -1123,6 +1100,8 @@ class _TranslationsLiveTvEs extends TranslationsLiveTvEn {
|
||||
@override String get guide => 'Guía';
|
||||
@override String get noChannels => 'No hay canales disponibles';
|
||||
@override String get noDvr => 'No hay DVR configurado en ningún servidor';
|
||||
@override String get serverUnavailable => 'El servidor de TV en directo no está disponible.';
|
||||
@override String get serverNotConnected => 'El servidor de TV en directo no está conectado.';
|
||||
@override String get noPrograms => 'No hay datos de programación disponibles';
|
||||
@override String get liveStreamFailed => 'Falló la transmisión en vivo';
|
||||
@override String get unknownProgram => 'Programa desconocido';
|
||||
@@ -1158,7 +1137,6 @@ class _TranslationsLiveTvEs extends TranslationsLiveTvEn {
|
||||
@override String get scheduledRecordings => 'Programadas';
|
||||
@override String get recordingRules => 'Reglas de grabación';
|
||||
@override String get noScheduledRecordings => 'No hay grabaciones programadas';
|
||||
@override String get noRecordingRules => 'Aún no hay reglas de grabación';
|
||||
@override String get manageRecording => 'Gestionar grabación';
|
||||
@override String get cancelRecording => 'Cancelar grabación';
|
||||
@override String get cancelRecordingTitle => '¿Cancelar esta grabación?';
|
||||
@@ -1175,7 +1153,6 @@ class _TranslationsLiveTvEs extends TranslationsLiveTvEn {
|
||||
@override String get recordingCancelled => 'Grabación cancelada';
|
||||
@override String get recordingRuleDeleted => 'Regla de grabación eliminada';
|
||||
@override String get processRecordingRules => 'Reevaluar reglas';
|
||||
@override String get loadingRecordings => 'Cargando grabaciones...';
|
||||
@override String get recordingInProgress => 'Grabando ahora';
|
||||
@override String recordingsCount({required Object count}) => '${count} programadas';
|
||||
@override String get editRule => 'Editar regla';
|
||||
@@ -1196,7 +1173,6 @@ class _TranslationsCollectionsEs extends TranslationsCollectionsEn {
|
||||
@override String get title => 'Colecciones';
|
||||
@override String get collection => 'Colección';
|
||||
@override String get empty => 'La colección está vacía';
|
||||
@override String get unknownLibrarySection => 'No se puede eliminar: Sección de biblioteca desconocida';
|
||||
@override String get deleteCollection => 'Eliminar Colección';
|
||||
@override String deleteConfirm({required Object title}) => '¿Eliminar "${title}"? No se puede deshacer.';
|
||||
@override String get deleted => 'Colección eliminada';
|
||||
@@ -1243,6 +1219,7 @@ class _TranslationsPlaylistsEs extends TranslationsPlaylistsEn {
|
||||
@override String get itemAdded => 'Añadido a la lista';
|
||||
@override String get itemRemoved => 'Eliminado de la lista';
|
||||
@override String get selectPlaylist => 'Seleccionar Lista';
|
||||
@override String get searchPlaylists => 'Buscar listas...';
|
||||
@override String get errorCreating => 'Error al crear la lista';
|
||||
@override String get errorDeleting => 'Error al eliminar la lista';
|
||||
@override String get errorLoading => 'Error al cargar las listas';
|
||||
@@ -1346,15 +1323,15 @@ class _TranslationsWatchTogetherEs extends TranslationsWatchTogetherEn {
|
||||
@override String participantResumed({required Object name}) => '${name} reanudó';
|
||||
@override String participantSeeked({required Object name}) => '${name} avanzó';
|
||||
@override String participantBuffering({required Object name}) => '${name} está cargando';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} usa una versión anterior de la app — sincronización no disponible';
|
||||
@override String resumingWithout({required Object name}) => 'Reanudando sin ${name}';
|
||||
@override String get waitingForParticipants => 'Esperando a que otros carguen...';
|
||||
@override String waitingForName({required Object name}) => 'Esperando a ${name}...';
|
||||
@override String get recentRooms => 'Salas recientes';
|
||||
@override String get renameRoom => 'Renombrar sala';
|
||||
@override String get removeRoom => 'Eliminar';
|
||||
@override String get guestSwitchUnavailable => 'No se pudo cambiar — servidor no disponible para sincronización';
|
||||
@override String get guestSwitchFailed => 'No se pudo cambiar — contenido no encontrado en este servidor';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} usa una versión anterior de la app — sincronización no disponible';
|
||||
@override String resumingWithout({required Object name}) => 'Reanudando sin ${name}';
|
||||
@override String waitingForName({required Object name}) => 'Esperando a ${name}...';
|
||||
}
|
||||
|
||||
// Path: downloads
|
||||
@@ -1406,7 +1383,6 @@ class _TranslationsDownloadsEs extends TranslationsDownloadsEn {
|
||||
@override String get customAmount => 'Cantidad personalizada...';
|
||||
@override String get includeSpecials => 'Incluir especiales';
|
||||
@override String get howManyEpisodes => '¿Cuántos episodios?';
|
||||
@override String itemsQueued({required Object count}) => '${count} elementos en cola de descarga';
|
||||
@override String get keepSynced => 'Mantener sincronizado';
|
||||
@override String get downloadOnce => 'Descargar una vez';
|
||||
@override String keepNUnwatched({required Object count}) => 'Mantener ${count} sin ver';
|
||||
@@ -1780,7 +1756,6 @@ class _TranslationsAddServerEs extends TranslationsAddServerEn {
|
||||
@override String quickConnectFailed({required Object error}) => 'Quick Connect ha fallado: ${error}';
|
||||
@override String get addPlexTitle => 'Iniciar sesión con Plex';
|
||||
@override String get pinExpired => 'El PIN caducó antes de iniciar sesión. Inténtalo de nuevo.';
|
||||
@override String get duplicatePlexAccount => 'Ya iniciaste sesión en Plex. Cierra sesión para cambiar de cuenta.';
|
||||
@override String failedToRegisterAccount({required Object error}) => 'No se pudo registrar la cuenta: ${error}';
|
||||
@override String get enterJellyfinUrlError => 'Introduce la URL de tu servidor Jellyfin';
|
||||
@override String get addConnectionTitle => 'Añadir conexión';
|
||||
@@ -1906,7 +1881,6 @@ class _TranslationsLibrariesSortLabelsEs extends TranslationsLibrariesSortLabels
|
||||
@override String get communityRating => 'Calificación de comunidad';
|
||||
@override String get criticRating => 'Calificación de crítica';
|
||||
@override String get userRating => 'Calificación del usuario';
|
||||
@override String get lastPlayed => 'Última reproducción';
|
||||
@override String get datePlayed => 'Fecha de reproducción';
|
||||
@override String get playCount => 'Reproducciones';
|
||||
@override String get productionYear => 'Año de producción';
|
||||
@@ -1965,7 +1939,6 @@ class _TranslationsCompanionRemoteSessionEs extends TranslationsCompanionRemoteS
|
||||
|
||||
// Translations
|
||||
@override String get startingServer => 'Iniciando servidor remoto...';
|
||||
@override String get failedToCreate => 'Error al iniciar el servidor remoto:';
|
||||
@override String get hostAddress => 'Dirección del host';
|
||||
@override String get connected => 'Conectado';
|
||||
@override String get serverRunning => 'Servidor remoto activo';
|
||||
@@ -2047,6 +2020,8 @@ class _TranslationsCompanionRemoteErrorsEs extends TranslationsCompanionRemoteEr
|
||||
// Translations
|
||||
@override String get noNetworkInterface => 'No se encontró ninguna interfaz de red';
|
||||
@override String get authenticationFailed => 'Autenticación fallida';
|
||||
@override String serverStartFailed({required Object error}) => 'No se pudo iniciar el servidor remoto: ${error}';
|
||||
@override String commandFailed({required Object error}) => 'No se pudo enviar el comando remoto: ${error}';
|
||||
@override String get joinTimedOut => 'Se agotó el tiempo al unirse a la sesión';
|
||||
@override String get failedToConnectAnyAddress => 'No se pudo conectar a ninguna dirección';
|
||||
@override String connectionLostAfterAttempts({required Object attempts}) => 'Conexión perdida tras ${attempts} intentos';
|
||||
@@ -2123,7 +2098,6 @@ extension on TranslationsEs {
|
||||
dynamic _flatMapFunction(String path) {
|
||||
return switch (path) {
|
||||
'app.title' => 'Plezy',
|
||||
'auth.signIn' => 'Iniciar sesión',
|
||||
'auth.signInWithPlex' => 'Inicia sesión con Plex',
|
||||
'auth.showQRCode' => 'Mostrar código QR',
|
||||
'auth.authenticate' => 'Autenticar',
|
||||
@@ -2174,10 +2148,8 @@ extension on TranslationsEs {
|
||||
'common.episodeNumberTitle' => ({required Object number, required Object title}) => 'Episodio ${number} - ${title}',
|
||||
'common.chapterNumber' => ({required Object number}) => 'Capítulo ${number}',
|
||||
'common.reconnect' => 'Reconectar',
|
||||
'common.exit' => 'Salir',
|
||||
'common.viewAll' => 'Ver todo',
|
||||
'common.checkingNetwork' => 'Comprobando red...',
|
||||
'common.refreshingServers' => 'Actualizando servidores...',
|
||||
'common.loadingServers' => 'Cargando servidores...',
|
||||
'common.connectingToServers' => 'Conectando a servidores...',
|
||||
'common.startingOfflineMode' => 'Iniciando modo sin conexión...',
|
||||
@@ -2251,6 +2223,12 @@ extension on TranslationsEs {
|
||||
'settings.tvFullCardLayoutDescription' => 'Usar tarjetas TV solo con imagen y nombres de actores superpuestos',
|
||||
'settings.focusGlow' => 'Brillo de foco',
|
||||
'settings.focusGlowDescription' => 'Mostrar un brillo suave alrededor de la tarjeta con foco',
|
||||
'settings.visualEffects' => 'Efectos visuales',
|
||||
'settings.visualEffectsAuto' => 'Automático',
|
||||
'settings.visualEffectsAutoDescription' => 'Reduce automáticamente los efectos en dispositivos de bajo consumo',
|
||||
'settings.visualEffectsFull' => 'Completos',
|
||||
'settings.visualEffectsReduced' => 'Reducidos',
|
||||
'settings.visualEffectsReducedDescription' => 'Menos animaciones e ilustraciones de menor resolución',
|
||||
'settings.hideSpoilers' => 'Ocultar spoilers de episodios no vistos',
|
||||
'settings.hideSpoilersDescription' => 'Desenfocar miniaturas y descripciones de episodios no vistos',
|
||||
'settings.playerBackend' => 'Reproductor',
|
||||
@@ -2263,7 +2241,7 @@ extension on TranslationsEs {
|
||||
'settings.bufferSizeAuto' => 'Auto (Recomendado)',
|
||||
'settings.bufferSizeWarning' => ({required Object heap, required Object size}) => '${heap}MB de memoria disponible. Un búfer de ${size}MB puede afectar la reproducción.',
|
||||
'settings.defaultQualityTitle' => 'Calidad predeterminada',
|
||||
'settings.defaultQualityDescription' => 'Se utiliza al iniciar la reproducción. Los valores más bajos reducen el ancho de banda.',
|
||||
'settings.musicQualityTitle' => 'Calidad de música',
|
||||
'settings.subtitleStyling' => 'Estilo de Subtítulos',
|
||||
'settings.subtitleStylingDescription' => 'Personalizar la apariencia de los subtítulos',
|
||||
'settings.smallSkipDuration' => 'Salto pequeño',
|
||||
@@ -2357,10 +2335,9 @@ extension on TranslationsEs {
|
||||
'settings.maxVolumePercent' => ({required Object percent}) => '${percent}%',
|
||||
'settings.discordRichPresence' => 'Presencia de Discord',
|
||||
'settings.discordRichPresenceDescription' => 'Mostrar lo que estás viendo en Discord',
|
||||
'settings.trakt' => 'Trakt',
|
||||
'settings.traktDescription' => 'Sincronizar historial de visualización con Trakt',
|
||||
'settings.services' => 'Servicios',
|
||||
'settings.servicesDescription' => 'Conecta Trakt, MyAnimeList, Seerr y más',
|
||||
'settings.manageLibrariesDescription' => 'Reordena y oculta bibliotecas',
|
||||
'settings.companionRemoteServer' => 'Servidor de control remoto',
|
||||
'settings.companionRemoteServerDescription' => 'Permitir que dispositivos móviles en tu red controlen esta aplicación',
|
||||
'settings.autoPip' => 'Imagen en imagen automática',
|
||||
@@ -2423,7 +2400,6 @@ extension on TranslationsEs {
|
||||
'settings.showNavBarLabels' => 'Mostrar etiquetas de la barra de navegación',
|
||||
'settings.showNavBarLabelsDescription' => 'Mostrar etiquetas de texto bajo los iconos de la barra de navegación',
|
||||
'settings.startupSection' => 'Sección de inicio',
|
||||
'settings.startupSectionDescription' => 'Elige qué sección abre Plezy al iniciarse',
|
||||
'settings.liveTvDefaultFavorites' => 'Canales favoritos por defecto',
|
||||
'settings.liveTvDefaultFavoritesDescription' => 'Mostrar solo canales favoritos al abrir TV en vivo',
|
||||
'settings.display' => 'Pantalla',
|
||||
@@ -2435,13 +2411,6 @@ extension on TranslationsEs {
|
||||
'settings.subtitlesAndConfig' => 'Subtítulos y configuración',
|
||||
'settings.seekAndTiming' => 'Búsqueda y tiempo',
|
||||
'settings.behavior' => 'Comportamiento',
|
||||
'settings.manageLibrariesDescription' => 'Reordena y oculta bibliotecas',
|
||||
'settings.visualEffects' => 'Efectos visuales',
|
||||
'settings.visualEffectsAuto' => 'Automático',
|
||||
'settings.visualEffectsAutoDescription' => 'Reduce automáticamente los efectos en dispositivos de bajo consumo',
|
||||
'settings.visualEffectsFull' => 'Completos',
|
||||
'settings.visualEffectsReduced' => 'Reducidos',
|
||||
'settings.visualEffectsReducedDescription' => 'Menos animaciones e ilustraciones de menor resolución',
|
||||
'search.hint' => 'Buscar películas, series, música...',
|
||||
'search.tryDifferentTerm' => 'Prueba con un término de búsqueda diferente',
|
||||
'search.searchYourMedia' => 'Busca en tu contenido',
|
||||
@@ -2518,14 +2487,11 @@ extension on TranslationsEs {
|
||||
'mediaMenu.playVersion' => 'Reproducir versión...',
|
||||
'rateSheet.title' => 'Calificar',
|
||||
'rateSheet.server' => 'Servidor',
|
||||
'rateSheet.starValue' => ({required Object rating}) => '${rating} / 5',
|
||||
'rateSheet.scoreValue' => ({required Object score}) => '${score} / 10',
|
||||
'rateSheet.setScore' => 'Establecer puntuación',
|
||||
'rateSheet.favorite' => 'Favorito',
|
||||
'rateSheet.favorited' => 'Marcado como favorito',
|
||||
'rateSheet.saved' => 'Guardado',
|
||||
'rateSheet.notAvailable' => 'No se encontró coincidencia',
|
||||
'rateSheet.noConnectedServices' => 'Conecta un servicio en Configuración para calificar ahí.',
|
||||
'rateSheet.favorite' => 'Favorito',
|
||||
'rateSheet.favorited' => 'Marcado como favorito',
|
||||
'accessibility.mediaCardMovie' => ({required Object title}) => '${title}, película',
|
||||
'accessibility.mediaCardShow' => ({required Object title}) => '${title}, serie de TV',
|
||||
'accessibility.mediaCardEpisode' => ({required Object title, required Object episodeInfo}) => '${title}, ${episodeInfo}',
|
||||
@@ -2534,6 +2500,14 @@ extension on TranslationsEs {
|
||||
'accessibility.mediaCardPartiallyWatched' => ({required Object percent}) => '${percent} por ciento visto',
|
||||
'accessibility.mediaCardUnwatched' => 'no visto',
|
||||
'accessibility.tapToPlay' => 'Toca para reproducir',
|
||||
'accessibility.decrease' => 'Disminuir',
|
||||
'accessibility.increase' => 'Aumentar',
|
||||
'accessibility.decreaseValue' => ({required Object label}) => 'Disminuir ${label}',
|
||||
'accessibility.increaseValue' => ({required Object label}) => 'Aumentar ${label}',
|
||||
'accessibility.hue' => 'Tono',
|
||||
'accessibility.saturation' => 'Saturación',
|
||||
'accessibility.brightness' => 'Brillo',
|
||||
'accessibility.hexColor' => 'Color hexadecimal',
|
||||
'tooltips.shufflePlay' => 'Reproducción aleatoria',
|
||||
'tooltips.playTrailer' => 'Reproducir tráiler',
|
||||
'tooltips.markAsWatched' => 'Marcar como visto',
|
||||
@@ -2575,13 +2549,11 @@ extension on TranslationsEs {
|
||||
'videoControls.settingsButton' => 'Ajustes de reproducción',
|
||||
'videoControls.tracksButton' => 'Audio y subtítulos',
|
||||
'videoControls.chaptersButton' => 'Capítulos',
|
||||
'videoControls.versionsButton' => 'Versiones de video',
|
||||
'videoControls.versionQualityButton' => 'Versión y calidad',
|
||||
'videoControls.versionColumnHeader' => 'Versión',
|
||||
'videoControls.qualityColumnHeader' => 'Calidad',
|
||||
'videoControls.qualityOriginal' => 'Original',
|
||||
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
|
||||
'videoControls.qualityBandwidthEstimate' => ({required Object bitrate}) => '~${bitrate} Mbps',
|
||||
'videoControls.transcodeUnavailableFallback' => 'Transcodificación no disponible — reproduciendo calidad original',
|
||||
'videoControls.pipButton' => 'Modo PiP (Imagen en Imagen)',
|
||||
'videoControls.aspectRatioButton' => 'Relación de aspecto',
|
||||
@@ -2621,10 +2593,6 @@ extension on TranslationsEs {
|
||||
'videoControls.subtitleDownloaded' => 'Subtítulo descargado',
|
||||
'videoControls.subtitleDownloadFailed' => 'Error al descargar subtítulo',
|
||||
'videoControls.searchLanguages' => 'Buscar idiomas...',
|
||||
'userStatus.admin' => 'Administrador',
|
||||
'userStatus.restricted' => 'Restringido',
|
||||
'userStatus.protected' => 'Protegido',
|
||||
'userStatus.current' => 'ACTUAL',
|
||||
'messages.markedAsWatched' => 'Marcado como visto',
|
||||
'messages.markedAsUnwatched' => 'Marcado como no visto',
|
||||
'messages.markedAsWatchedOffline' => 'Marcado como visto (se sincronizará al estar en línea)',
|
||||
@@ -2634,8 +2602,6 @@ extension on TranslationsEs {
|
||||
'messages.errorLoading' => ({required Object error}) => 'Error: ${error}',
|
||||
'messages.streamInterrupted' => 'La reproducción se interrumpió. Pulsa reproducir o avanza para volver a intentarlo.',
|
||||
'messages.fileInfoNotAvailable' => 'Información de archivo no disponible',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Error al cargar info de archivo: ${error}',
|
||||
'messages.errorLoadingSeries' => 'Error al cargar la serie',
|
||||
'messages.musicNotSupported' => 'La reproducción de música aún no está soportada',
|
||||
@@ -2643,6 +2609,8 @@ extension on TranslationsEs {
|
||||
'messages.noProfilesAvailable' => 'No hay perfiles disponibles',
|
||||
'messages.contactAdminForProfiles' => 'Contacta a tu administrador del servidor para añadir perfiles',
|
||||
'messages.unableToDetermineLibrarySection' => 'No se puede determinar la sección de biblioteca para este elemento',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.logsCleared' => 'Logs borrados',
|
||||
'messages.logsCopied' => 'Logs copiados al portapapeles',
|
||||
'messages.noLogsAvailable' => 'No hay logs disponibles',
|
||||
@@ -2759,7 +2727,6 @@ extension on TranslationsEs {
|
||||
'profiles.pinExplain' => 'Se requiere PIN de 4 dígitos para cambiar de perfil.',
|
||||
'profiles.continueButton' => 'Continuar',
|
||||
'profiles.pinsDontMatch' => 'Los PIN no coinciden',
|
||||
'profiles.initializeServicesFailed' => 'No se pudieron inicializar los servicios de perfil',
|
||||
'connections.sectionTitle' => 'Conexiones',
|
||||
'connections.addConnection' => 'Añadir conexión',
|
||||
'connections.addConnectionSubtitleNoProfile' => 'Inicia sesión con Plex o conecta un servidor de Jellyfin',
|
||||
@@ -2770,7 +2737,6 @@ extension on TranslationsEs {
|
||||
'connections.editJellyfinTitle' => 'Editar conexión de Jellyfin',
|
||||
'connections.editJellyfinIntro' => ({required Object serverName}) => 'Añade o elimina URL para ${serverName}. Plezy usará la URL accesible con menor latencia.',
|
||||
'discover.title' => 'Descubrir',
|
||||
'discover.switchProfile' => 'Cambiar Perfil',
|
||||
'discover.noContentAvailable' => 'No hay contenido disponible',
|
||||
'discover.addMediaToLibraries' => 'Añade contenido a tus bibliotecas',
|
||||
'discover.continueWatching' => 'Seguir Viendo',
|
||||
@@ -2797,8 +2763,6 @@ extension on TranslationsEs {
|
||||
'errors.connectionFailed' => 'No se puede conectar al servidor multimedia',
|
||||
'errors.failedToLoad' => ({required Object context, required Object error}) => 'Error al cargar ${context}: ${error}',
|
||||
'errors.noClientAvailable' => 'No hay cliente disponible',
|
||||
'errors.authenticationFailed' => ({required Object error}) => 'Error de autenticación: ${error}',
|
||||
'errors.couldNotLaunchUrl' => 'No se pudo abrir la URL de autenticación',
|
||||
'errors.pleaseEnterToken' => 'Por favor, introduce un token',
|
||||
'errors.invalidToken' => 'Token no válido',
|
||||
'errors.failedToVerifyToken' => ({required Object error}) => 'Error al verificar el token: ${error}',
|
||||
@@ -2823,6 +2787,8 @@ extension on TranslationsEs {
|
||||
'libraries.allLibrariesHidden' => 'Todas las bibliotecas están ocultas',
|
||||
'libraries.hiddenLibrariesCount' => ({required Object count}) => 'Bibliotecas ocultas (${count})',
|
||||
'libraries.thisLibraryIsEmpty' => 'Esta biblioteca está vacía',
|
||||
'libraries.noItemsMatchFilters' => 'Ningún elemento coincide con los filtros activos',
|
||||
'libraries.resetFilters' => 'Restablecer filtros',
|
||||
'libraries.all' => 'Todos',
|
||||
'libraries.clearAll' => 'Borrar Todo',
|
||||
'libraries.scanLibraryConfirm' => ({required Object title}) => '¿Estás seguro de que quieres escanear "${title}"?',
|
||||
@@ -2871,7 +2837,6 @@ extension on TranslationsEs {
|
||||
'libraries.sortLabels.communityRating' => 'Calificación de comunidad',
|
||||
'libraries.sortLabels.criticRating' => 'Calificación de crítica',
|
||||
'libraries.sortLabels.userRating' => 'Calificación del usuario',
|
||||
'libraries.sortLabels.lastPlayed' => 'Última reproducción',
|
||||
'libraries.sortLabels.datePlayed' => 'Fecha de reproducción',
|
||||
'libraries.sortLabels.playCount' => 'Reproducciones',
|
||||
'libraries.sortLabels.productionYear' => 'Año de producción',
|
||||
@@ -2885,14 +2850,11 @@ extension on TranslationsEs {
|
||||
'libraries.sortLabels.dateShared' => 'Fecha de compartición',
|
||||
'libraries.sortLabels.latestEpisodeAirDate' => 'Última fecha de emisión del episodio',
|
||||
'libraries.sortLabels.lastEpisodeDateAdded' => 'Fecha de adición del último episodio',
|
||||
'libraries.noItemsMatchFilters' => 'Ningún elemento coincide con los filtros activos',
|
||||
'libraries.resetFilters' => 'Restablecer filtros',
|
||||
'about.title' => 'Acerca de',
|
||||
'about.openSourceLicenses' => 'Licencias de Código Abierto',
|
||||
'about.versionLabel' => ({required Object version}) => 'Versión ${version}',
|
||||
'about.appDescription' => 'Un cliente de Plex y Jellyfin para Flutter',
|
||||
'about.viewLicensesDescription' => 'Ver licencias de librerías de terceros',
|
||||
'serverSelection.allServerConnectionsFailed' => 'No se pudo conectar a ningún servidor. Revisa tu red.',
|
||||
'serverSelection.noServersFoundForAccount' => ({required Object username, required Object email}) => 'No se encontraron servidores para ${username} (${email})',
|
||||
'serverSelection.failedToLoadServers' => ({required Object error}) => 'Error al cargar servidores: ${error}',
|
||||
'hubDetail.title' => 'Título',
|
||||
@@ -2938,7 +2900,6 @@ extension on TranslationsEs {
|
||||
'explore.watchlistUpdateFailed' => 'No se pudo actualizar la lista de seguimiento',
|
||||
'explore.notInLibrary' => 'No está en tu biblioteca',
|
||||
'explore.inTheseLibraries' => 'En estas bibliotecas',
|
||||
'explore.availableOn' => ({required Object server}) => 'Disponible en ${server}',
|
||||
'explore.checkingLibrary' => 'Comprobando tu biblioteca...',
|
||||
'explore.emptyTitle' => 'Aquí no hay nada todavía',
|
||||
'explore.emptyMessage' => ({required Object source}) => 'Las filas de ${source} aparecerán aquí cuando tengan contenido.',
|
||||
@@ -2950,6 +2911,8 @@ extension on TranslationsEs {
|
||||
'liveTv.guide' => 'Guía',
|
||||
'liveTv.noChannels' => 'No hay canales disponibles',
|
||||
'liveTv.noDvr' => 'No hay DVR configurado en ningún servidor',
|
||||
'liveTv.serverUnavailable' => 'El servidor de TV en directo no está disponible.',
|
||||
'liveTv.serverNotConnected' => 'El servidor de TV en directo no está conectado.',
|
||||
'liveTv.noPrograms' => 'No hay datos de programación disponibles',
|
||||
'liveTv.liveStreamFailed' => 'Falló la transmisión en vivo',
|
||||
'liveTv.unknownProgram' => 'Programa desconocido',
|
||||
@@ -2985,7 +2948,6 @@ extension on TranslationsEs {
|
||||
'liveTv.scheduledRecordings' => 'Programadas',
|
||||
'liveTv.recordingRules' => 'Reglas de grabación',
|
||||
'liveTv.noScheduledRecordings' => 'No hay grabaciones programadas',
|
||||
'liveTv.noRecordingRules' => 'Aún no hay reglas de grabación',
|
||||
'liveTv.manageRecording' => 'Gestionar grabación',
|
||||
'liveTv.cancelRecording' => 'Cancelar grabación',
|
||||
'liveTv.cancelRecordingTitle' => '¿Cancelar esta grabación?',
|
||||
@@ -3002,7 +2964,6 @@ extension on TranslationsEs {
|
||||
'liveTv.recordingCancelled' => 'Grabación cancelada',
|
||||
'liveTv.recordingRuleDeleted' => 'Regla de grabación eliminada',
|
||||
'liveTv.processRecordingRules' => 'Reevaluar reglas',
|
||||
'liveTv.loadingRecordings' => 'Cargando grabaciones...',
|
||||
'liveTv.recordingInProgress' => 'Grabando ahora',
|
||||
'liveTv.recordingsCount' => ({required Object count}) => '${count} programadas',
|
||||
'liveTv.editRule' => 'Editar regla',
|
||||
@@ -3014,7 +2975,6 @@ extension on TranslationsEs {
|
||||
'collections.title' => 'Colecciones',
|
||||
'collections.collection' => 'Colección',
|
||||
'collections.empty' => 'La colección está vacía',
|
||||
'collections.unknownLibrarySection' => 'No se puede eliminar: Sección de biblioteca desconocida',
|
||||
'collections.deleteCollection' => 'Eliminar Colección',
|
||||
'collections.deleteConfirm' => ({required Object title}) => '¿Eliminar "${title}"? No se puede deshacer.',
|
||||
'collections.deleted' => 'Colección eliminada',
|
||||
@@ -3052,6 +3012,7 @@ extension on TranslationsEs {
|
||||
'playlists.itemAdded' => 'Añadido a la lista',
|
||||
'playlists.itemRemoved' => 'Eliminado de la lista',
|
||||
'playlists.selectPlaylist' => 'Seleccionar Lista',
|
||||
'playlists.searchPlaylists' => 'Buscar listas...',
|
||||
'playlists.errorCreating' => 'Error al crear la lista',
|
||||
'playlists.errorDeleting' => 'Error al eliminar la lista',
|
||||
'playlists.errorLoading' => 'Error al cargar las listas',
|
||||
@@ -3134,22 +3095,20 @@ extension on TranslationsEs {
|
||||
'watchTogether.participantResumed' => ({required Object name}) => '${name} reanudó',
|
||||
'watchTogether.participantSeeked' => ({required Object name}) => '${name} avanzó',
|
||||
'watchTogether.participantBuffering' => ({required Object name}) => '${name} está cargando',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} usa una versión anterior de la app — sincronización no disponible',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Reanudando sin ${name}',
|
||||
'watchTogether.waitingForParticipants' => 'Esperando a que otros carguen...',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Esperando a ${name}...',
|
||||
'watchTogether.recentRooms' => 'Salas recientes',
|
||||
'watchTogether.renameRoom' => 'Renombrar sala',
|
||||
'watchTogether.removeRoom' => 'Eliminar',
|
||||
'watchTogether.guestSwitchUnavailable' => 'No se pudo cambiar — servidor no disponible para sincronización',
|
||||
'watchTogether.guestSwitchFailed' => 'No se pudo cambiar — contenido no encontrado en este servidor',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} usa una versión anterior de la app — sincronización no disponible',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Reanudando sin ${name}',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Esperando a ${name}...',
|
||||
'downloads.title' => 'Descargas',
|
||||
'downloads.manage' => 'Gestionar',
|
||||
'downloads.tvShows' => 'Series de TV',
|
||||
'downloads.movies' => 'Películas',
|
||||
'downloads.music' => 'Música',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.tracksQueued' => ({required Object count}) => '${count} canciones en cola para descargar',
|
||||
'downloads.noDownloads' => 'No hay descargas aún',
|
||||
'downloads.noDownloadsDescription' => 'El contenido descargado aparecerá aquí para verlo sin conexión',
|
||||
@@ -3164,6 +3123,8 @@ extension on TranslationsEs {
|
||||
'downloads.deleteConfirm' => ({required Object title}) => '¿Eliminar "${title}" de este dispositivo?',
|
||||
'downloads.cancelledDownloadTitle' => 'Descarga cancelada',
|
||||
'downloads.cancelledDownloadMessage' => 'Esta descarga se canceló. ¿Qué quieres hacer?',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.allEpisodesAlreadyDownloaded' => 'Todos los episodios ya están descargados',
|
||||
'downloads.resumeDownload' => 'Reanudar descarga',
|
||||
'downloads.cancelledDownload' => 'Descarga cancelada',
|
||||
@@ -3187,7 +3148,6 @@ extension on TranslationsEs {
|
||||
'downloads.customAmount' => 'Cantidad personalizada...',
|
||||
'downloads.includeSpecials' => 'Incluir especiales',
|
||||
'downloads.howManyEpisodes' => '¿Cuántos episodios?',
|
||||
'downloads.itemsQueued' => ({required Object count}) => '${count} elementos en cola de descarga',
|
||||
'downloads.keepSynced' => 'Mantener sincronizado',
|
||||
'downloads.downloadOnce' => 'Descargar una vez',
|
||||
'downloads.keepNUnwatched' => ({required Object count}) => 'Mantener ${count} sin ver',
|
||||
@@ -3231,7 +3191,6 @@ extension on TranslationsEs {
|
||||
'companionRemote.connectedTo' => ({required Object name}) => 'Conectado a ${name}',
|
||||
'companionRemote.unknownDevice' => 'Dispositivo desconocido',
|
||||
'companionRemote.session.startingServer' => 'Iniciando servidor remoto...',
|
||||
'companionRemote.session.failedToCreate' => 'Error al iniciar el servidor remoto:',
|
||||
'companionRemote.session.hostAddress' => 'Dirección del host',
|
||||
'companionRemote.session.connected' => 'Conectado',
|
||||
'companionRemote.session.serverRunning' => 'Servidor remoto activo',
|
||||
@@ -3286,6 +3245,8 @@ extension on TranslationsEs {
|
||||
'companionRemote.remote.searchHint' => 'Buscar en escritorio...',
|
||||
'companionRemote.errors.noNetworkInterface' => 'No se encontró ninguna interfaz de red',
|
||||
'companionRemote.errors.authenticationFailed' => 'Autenticación fallida',
|
||||
'companionRemote.errors.serverStartFailed' => ({required Object error}) => 'No se pudo iniciar el servidor remoto: ${error}',
|
||||
'companionRemote.errors.commandFailed' => ({required Object error}) => 'No se pudo enviar el comando remoto: ${error}',
|
||||
'companionRemote.errors.joinTimedOut' => 'Se agotó el tiempo al unirse a la sesión',
|
||||
'companionRemote.errors.failedToConnectAnyAddress' => 'No se pudo conectar a ninguna dirección',
|
||||
'companionRemote.errors.connectionLostAfterAttempts' => ({required Object attempts}) => 'Conexión perdida tras ${attempts} intentos',
|
||||
@@ -3530,7 +3491,6 @@ extension on TranslationsEs {
|
||||
'addServer.quickConnectFailed' => ({required Object error}) => 'Quick Connect ha fallado: ${error}',
|
||||
'addServer.addPlexTitle' => 'Iniciar sesión con Plex',
|
||||
'addServer.pinExpired' => 'El PIN caducó antes de iniciar sesión. Inténtalo de nuevo.',
|
||||
'addServer.duplicatePlexAccount' => 'Ya iniciaste sesión en Plex. Cierra sesión para cambiar de cuenta.',
|
||||
'addServer.failedToRegisterAccount' => ({required Object error}) => 'No se pudo registrar la cuenta: ${error}',
|
||||
'addServer.enterJellyfinUrlError' => 'Introduce la URL de tu servidor Jellyfin',
|
||||
'addServer.addConnectionTitle' => 'Añadir conexión',
|
||||
|
||||
+60
-100
@@ -53,7 +53,6 @@ class TranslationsFr extends Translations with BaseTranslations<AppLocale, Trans
|
||||
@override late final _TranslationsAccessibilityFr accessibility = _TranslationsAccessibilityFr._(_root);
|
||||
@override late final _TranslationsTooltipsFr tooltips = _TranslationsTooltipsFr._(_root);
|
||||
@override late final _TranslationsVideoControlsFr videoControls = _TranslationsVideoControlsFr._(_root);
|
||||
@override late final _TranslationsUserStatusFr userStatus = _TranslationsUserStatusFr._(_root);
|
||||
@override late final _TranslationsMessagesFr messages = _TranslationsMessagesFr._(_root);
|
||||
@override late final _TranslationsSubtitlingStylingFr subtitlingStyling = _TranslationsSubtitlingStylingFr._(_root);
|
||||
@override late final _TranslationsMpvConfigFr mpvConfig = _TranslationsMpvConfigFr._(_root);
|
||||
@@ -107,7 +106,6 @@ class _TranslationsAuthFr extends TranslationsAuthEn {
|
||||
final TranslationsFr _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get signIn => 'Se connecter';
|
||||
@override String get signInWithPlex => 'S\'inscrire avec Plex';
|
||||
@override String get showQRCode => 'Afficher le QR Code';
|
||||
@override String get authenticate => 'S\'authentifier';
|
||||
@@ -167,10 +165,8 @@ class _TranslationsCommonFr extends TranslationsCommonEn {
|
||||
@override String episodeNumberTitle({required Object number, required Object title}) => 'Épisode ${number} - ${title}';
|
||||
@override String chapterNumber({required Object number}) => 'Chapitre ${number}';
|
||||
@override String get reconnect => 'Reconnecter';
|
||||
@override String get exit => 'Quitter';
|
||||
@override String get viewAll => 'Tout afficher';
|
||||
@override String get checkingNetwork => 'Vérification du réseau...';
|
||||
@override String get refreshingServers => 'Actualisation des serveurs...';
|
||||
@override String get loadingServers => 'Chargement des serveurs...';
|
||||
@override String get connectingToServers => 'Connexion aux serveurs...';
|
||||
@override String get startingOfflineMode => 'Démarrage en mode hors-ligne...';
|
||||
@@ -271,6 +267,12 @@ class _TranslationsSettingsFr extends TranslationsSettingsEn {
|
||||
@override String get tvFullCardLayoutDescription => 'Utiliser des cartes TV avec image seule et noms des acteurs superposés';
|
||||
@override String get focusGlow => 'Halo de sélection';
|
||||
@override String get focusGlowDescription => 'Afficher un léger halo autour de la carte sélectionnée';
|
||||
@override String get visualEffects => 'Effets visuels';
|
||||
@override String get visualEffectsAuto => 'Automatique';
|
||||
@override String get visualEffectsAutoDescription => 'Réduire automatiquement les effets sur les appareils peu puissants';
|
||||
@override String get visualEffectsFull => 'Complets';
|
||||
@override String get visualEffectsReduced => 'Réduits';
|
||||
@override String get visualEffectsReducedDescription => 'Moins d’animations et d’illustrations de plus faible résolution';
|
||||
@override String get hideSpoilers => 'Masquer les spoilers des épisodes non vus';
|
||||
@override String get hideSpoilersDescription => 'Flouter les miniatures et descriptions des épisodes non vus';
|
||||
@override String get playerBackend => 'Moteur de lecture';
|
||||
@@ -283,7 +285,7 @@ class _TranslationsSettingsFr extends TranslationsSettingsEn {
|
||||
@override String get bufferSizeAuto => 'Auto (Recommandé)';
|
||||
@override String bufferSizeWarning({required Object heap, required Object size}) => '${heap}MB de mémoire disponible. Un tampon de ${size}MB peut affecter la lecture.';
|
||||
@override String get defaultQualityTitle => 'Qualité par défaut';
|
||||
@override String get defaultQualityDescription => 'Utilisé au démarrage de la lecture. Les valeurs plus basses réduisent la bande passante.';
|
||||
@override String get musicQualityTitle => 'Qualité de la musique';
|
||||
@override String get subtitleStyling => 'Stylisation des sous-titres';
|
||||
@override String get subtitleStylingDescription => 'Personnaliser l\'apparence des sous-titres';
|
||||
@override String get smallSkipDuration => 'Durée du petit saut';
|
||||
@@ -377,10 +379,9 @@ class _TranslationsSettingsFr extends TranslationsSettingsEn {
|
||||
@override String maxVolumePercent({required Object percent}) => '${percent}%';
|
||||
@override String get discordRichPresence => 'Discord Rich Presence';
|
||||
@override String get discordRichPresenceDescription => 'Montrez ce que vous regardez sur Discord';
|
||||
@override String get trakt => 'Trakt';
|
||||
@override String get traktDescription => 'Synchroniser l\'historique de visionnage avec Trakt';
|
||||
@override String get services => 'Services';
|
||||
@override String get servicesDescription => 'Connectez Trakt, MyAnimeList, Seerr et plus';
|
||||
@override String get manageLibrariesDescription => 'Réorganiser et masquer les bibliothèques';
|
||||
@override String get companionRemoteServer => 'Serveur de télécommande';
|
||||
@override String get companionRemoteServerDescription => 'Autoriser les appareils mobiles de votre réseau à contrôler cette application';
|
||||
@override String get autoPip => 'Image dans l\'image automatique';
|
||||
@@ -443,7 +444,6 @@ class _TranslationsSettingsFr extends TranslationsSettingsEn {
|
||||
@override String get showNavBarLabels => 'Afficher les libellés de la barre de navigation';
|
||||
@override String get showNavBarLabelsDescription => 'Afficher les libellés sous les icônes de la barre de navigation';
|
||||
@override String get startupSection => 'Section de démarrage';
|
||||
@override String get startupSectionDescription => 'Choisissez la section que Plezy ouvre au démarrage';
|
||||
@override String get liveTvDefaultFavorites => 'Chaînes favorites par défaut';
|
||||
@override String get liveTvDefaultFavoritesDescription => 'Afficher uniquement les chaînes favorites à l\'ouverture de la TV en direct';
|
||||
@override String get display => 'Affichage';
|
||||
@@ -455,13 +455,6 @@ class _TranslationsSettingsFr extends TranslationsSettingsEn {
|
||||
@override String get subtitlesAndConfig => 'Sous-titres et configuration';
|
||||
@override String get seekAndTiming => 'Recherche et minutage';
|
||||
@override String get behavior => 'Comportement';
|
||||
@override String get manageLibrariesDescription => 'Réorganiser et masquer les bibliothèques';
|
||||
@override String get visualEffects => 'Effets visuels';
|
||||
@override String get visualEffectsAuto => 'Automatique';
|
||||
@override String get visualEffectsAutoDescription => 'Réduire automatiquement les effets sur les appareils peu puissants';
|
||||
@override String get visualEffectsFull => 'Complets';
|
||||
@override String get visualEffectsReduced => 'Réduits';
|
||||
@override String get visualEffectsReducedDescription => 'Moins d’animations et d’illustrations de plus faible résolution';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -559,14 +552,11 @@ class _TranslationsRateSheetFr extends TranslationsRateSheetEn {
|
||||
// Translations
|
||||
@override String get title => 'Noter';
|
||||
@override String get server => 'Serveur';
|
||||
@override String starValue({required Object rating}) => '${rating} / 5';
|
||||
@override String scoreValue({required Object score}) => '${score} / 10';
|
||||
@override String get setScore => 'Définir une note';
|
||||
@override String get favorite => 'Favori';
|
||||
@override String get favorited => 'Ajouté aux favoris';
|
||||
@override String get saved => 'Enregistré';
|
||||
@override String get notAvailable => 'Aucune correspondance trouvée';
|
||||
@override String get noConnectedServices => 'Connectez un service dans les Réglages pour noter ici.';
|
||||
@override String get favorite => 'Favori';
|
||||
@override String get favorited => 'Ajouté aux favoris';
|
||||
}
|
||||
|
||||
// Path: accessibility
|
||||
@@ -584,6 +574,14 @@ class _TranslationsAccessibilityFr extends TranslationsAccessibilityEn {
|
||||
@override String mediaCardPartiallyWatched({required Object percent}) => '${percent} pourcentage visionné';
|
||||
@override String get mediaCardUnwatched => 'non visionné';
|
||||
@override String get tapToPlay => 'Appuyez pour lire';
|
||||
@override String get decrease => 'Diminuer';
|
||||
@override String get increase => 'Augmenter';
|
||||
@override String decreaseValue({required Object label}) => 'Diminuer ${label}';
|
||||
@override String increaseValue({required Object label}) => 'Augmenter ${label}';
|
||||
@override String get hue => 'Teinte';
|
||||
@override String get saturation => 'Saturation';
|
||||
@override String get brightness => 'Luminosité';
|
||||
@override String get hexColor => 'Couleur hexadécimale';
|
||||
}
|
||||
|
||||
// Path: tooltips
|
||||
@@ -643,13 +641,11 @@ class _TranslationsVideoControlsFr extends TranslationsVideoControlsEn {
|
||||
@override String get settingsButton => 'Paramètres de lecture';
|
||||
@override String get tracksButton => 'Audio et sous-titres';
|
||||
@override String get chaptersButton => 'Chapitres';
|
||||
@override String get versionsButton => 'Versions vidéo';
|
||||
@override String get versionQualityButton => 'Version et qualité';
|
||||
@override String get versionColumnHeader => 'Version';
|
||||
@override String get qualityColumnHeader => 'Qualité';
|
||||
@override String get qualityOriginal => 'Originale';
|
||||
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
|
||||
@override String qualityBandwidthEstimate({required Object bitrate}) => '~${bitrate} Mbps';
|
||||
@override String get transcodeUnavailableFallback => 'Transcodage indisponible — lecture en qualité originale';
|
||||
@override String get pipButton => 'Mode PiP (Picture-in-Picture)';
|
||||
@override String get aspectRatioButton => 'Format d\'image';
|
||||
@@ -685,19 +681,6 @@ class _TranslationsVideoControlsFr extends TranslationsVideoControlsEn {
|
||||
@override String get searchLanguages => 'Rechercher des langues...';
|
||||
}
|
||||
|
||||
// Path: userStatus
|
||||
class _TranslationsUserStatusFr extends TranslationsUserStatusEn {
|
||||
_TranslationsUserStatusFr._(TranslationsFr root) : this._root = root, super.internal(root);
|
||||
|
||||
final TranslationsFr _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get admin => 'Admin';
|
||||
@override String get restricted => 'Restreint';
|
||||
@override String get protected => 'Protégé';
|
||||
@override String get current => 'ACTUEL';
|
||||
}
|
||||
|
||||
// Path: messages
|
||||
class _TranslationsMessagesFr extends TranslationsMessagesEn {
|
||||
_TranslationsMessagesFr._(TranslationsFr root) : this._root = root, super.internal(root);
|
||||
@@ -873,7 +856,6 @@ class _TranslationsProfilesFr extends TranslationsProfilesEn {
|
||||
@override String get pinExplain => 'PIN à 4 chiffres requis pour changer de profil.';
|
||||
@override String get continueButton => 'Continuer';
|
||||
@override String get pinsDontMatch => 'Les PIN ne correspondent pas';
|
||||
@override String get initializeServicesFailed => 'Impossible d’initialiser les services de profil';
|
||||
}
|
||||
|
||||
// Path: connections
|
||||
@@ -902,7 +884,6 @@ class _TranslationsDiscoverFr extends TranslationsDiscoverEn {
|
||||
|
||||
// Translations
|
||||
@override String get title => 'Découvrez';
|
||||
@override String get switchProfile => 'Changer de profil';
|
||||
@override String get noContentAvailable => 'Aucun contenu disponible';
|
||||
@override String get addMediaToLibraries => 'Ajoutez des médias à votre bibliothèque';
|
||||
@override String get continueWatching => 'Continuer à regarder';
|
||||
@@ -938,8 +919,6 @@ class _TranslationsErrorsFr extends TranslationsErrorsEn {
|
||||
@override String get connectionFailed => 'Impossible de se connecter au serveur multimédia';
|
||||
@override String failedToLoad({required Object context, required Object error}) => 'Échec du chargement ${context}: ${error}';
|
||||
@override String get noClientAvailable => 'Aucun client disponible';
|
||||
@override String authenticationFailed({required Object error}) => 'Échec de l\'authentification: ${error}';
|
||||
@override String get couldNotLaunchUrl => 'Impossible de lancer l\'URL d\'authentification';
|
||||
@override String get pleaseEnterToken => 'Veuillez saisir un token';
|
||||
@override String get invalidToken => 'Token invalide';
|
||||
@override String failedToVerifyToken({required Object error}) => 'Échec de la vérification du token: ${error}';
|
||||
@@ -973,6 +952,8 @@ class _TranslationsLibrariesFr extends TranslationsLibrariesEn {
|
||||
@override String get allLibrariesHidden => 'Toutes les bibliothèques sont masquées';
|
||||
@override String hiddenLibrariesCount({required Object count}) => 'Bibliothèques masquées (${count})';
|
||||
@override String get thisLibraryIsEmpty => 'Cette bibliothèque est vide';
|
||||
@override String get noItemsMatchFilters => 'Aucun élément ne correspond aux filtres actifs';
|
||||
@override String get resetFilters => 'Réinitialiser les filtres';
|
||||
@override String get all => 'Tout';
|
||||
@override String get clearAll => 'Tout effacer';
|
||||
@override String scanLibraryConfirm({required Object title}) => 'Êtes-vous sûr de vouloir lancer le scan de "${title}"?';
|
||||
@@ -998,8 +979,6 @@ class _TranslationsLibrariesFr extends TranslationsLibrariesEn {
|
||||
@override late final _TranslationsLibrariesGroupingsFr groupings = _TranslationsLibrariesGroupingsFr._(_root);
|
||||
@override late final _TranslationsLibrariesFilterCategoriesFr filterCategories = _TranslationsLibrariesFilterCategoriesFr._(_root);
|
||||
@override late final _TranslationsLibrariesSortLabelsFr sortLabels = _TranslationsLibrariesSortLabelsFr._(_root);
|
||||
@override String get noItemsMatchFilters => 'Aucun élément ne correspond aux filtres actifs';
|
||||
@override String get resetFilters => 'Réinitialiser les filtres';
|
||||
}
|
||||
|
||||
// Path: about
|
||||
@@ -1023,7 +1002,6 @@ class _TranslationsServerSelectionFr extends TranslationsServerSelectionEn {
|
||||
final TranslationsFr _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get allServerConnectionsFailed => 'Connexion impossible à tous les serveurs. Vérifiez votre réseau.';
|
||||
@override String noServersFoundForAccount({required Object username, required Object email}) => 'Aucun serveur trouvé pour ${username} (${email})';
|
||||
@override String failedToLoadServers({required Object error}) => 'Échec du chargement des serveurs: ${error}';
|
||||
}
|
||||
@@ -1102,7 +1080,6 @@ class _TranslationsExploreFr extends TranslationsExploreEn {
|
||||
@override String get watchlistUpdateFailed => 'Impossible de mettre à jour la liste de suivi';
|
||||
@override String get notInLibrary => 'Absent de votre bibliothèque';
|
||||
@override String get inTheseLibraries => 'Dans ces bibliothèques';
|
||||
@override String availableOn({required Object server}) => 'Disponible sur ${server}';
|
||||
@override String get checkingLibrary => 'Vérification de votre bibliothèque...';
|
||||
@override String get emptyTitle => 'Rien ici pour l\'instant';
|
||||
@override String emptyMessage({required Object source}) => 'Les rangées de ${source} apparaîtront ici une fois qu\'elles auront du contenu.';
|
||||
@@ -1123,6 +1100,8 @@ class _TranslationsLiveTvFr extends TranslationsLiveTvEn {
|
||||
@override String get guide => 'Guide';
|
||||
@override String get noChannels => 'Aucune chaîne disponible';
|
||||
@override String get noDvr => 'Aucun DVR configuré sur les serveurs';
|
||||
@override String get serverUnavailable => 'Le serveur de TV en direct n’est pas disponible.';
|
||||
@override String get serverNotConnected => 'Le serveur de TV en direct n’est pas connecté.';
|
||||
@override String get noPrograms => 'Aucune donnée de programme disponible';
|
||||
@override String get liveStreamFailed => 'Échec du direct';
|
||||
@override String get unknownProgram => 'Programme inconnu';
|
||||
@@ -1158,7 +1137,6 @@ class _TranslationsLiveTvFr extends TranslationsLiveTvEn {
|
||||
@override String get scheduledRecordings => 'Programmés';
|
||||
@override String get recordingRules => 'Règles d\'enregistrement';
|
||||
@override String get noScheduledRecordings => 'Aucun enregistrement programmé';
|
||||
@override String get noRecordingRules => 'Aucune règle d\'enregistrement';
|
||||
@override String get manageRecording => 'Gérer l\'enregistrement';
|
||||
@override String get cancelRecording => 'Annuler l\'enregistrement';
|
||||
@override String get cancelRecordingTitle => 'Annuler cet enregistrement ?';
|
||||
@@ -1175,7 +1153,6 @@ class _TranslationsLiveTvFr extends TranslationsLiveTvEn {
|
||||
@override String get recordingCancelled => 'Enregistrement annulé';
|
||||
@override String get recordingRuleDeleted => 'Règle d\'enregistrement supprimée';
|
||||
@override String get processRecordingRules => 'Réévaluer les règles';
|
||||
@override String get loadingRecordings => 'Chargement des enregistrements...';
|
||||
@override String get recordingInProgress => 'Enregistrement en cours';
|
||||
@override String recordingsCount({required Object count}) => '${count} programmés';
|
||||
@override String get editRule => 'Modifier la règle';
|
||||
@@ -1196,7 +1173,6 @@ class _TranslationsCollectionsFr extends TranslationsCollectionsEn {
|
||||
@override String get title => 'Collections';
|
||||
@override String get collection => 'Collection';
|
||||
@override String get empty => 'La collection est vide';
|
||||
@override String get unknownLibrarySection => 'Impossible de supprimer : section de bibliothèque inconnue';
|
||||
@override String get deleteCollection => 'Supprimer la collection';
|
||||
@override String deleteConfirm({required Object title}) => 'Supprimer "${title}" ? Action irréversible.';
|
||||
@override String get deleted => 'Collection supprimée';
|
||||
@@ -1243,6 +1219,7 @@ class _TranslationsPlaylistsFr extends TranslationsPlaylistsEn {
|
||||
@override String get itemAdded => 'Ajouté à la playlist';
|
||||
@override String get itemRemoved => 'Retiré de la playlist';
|
||||
@override String get selectPlaylist => 'Sélectionner une playlist';
|
||||
@override String get searchPlaylists => 'Rechercher des playlists...';
|
||||
@override String get errorCreating => 'Échec de la création de playlist';
|
||||
@override String get errorDeleting => 'Échec de suppression de playlist';
|
||||
@override String get errorLoading => 'Échec de chargement de playlists';
|
||||
@@ -1346,15 +1323,15 @@ class _TranslationsWatchTogetherFr extends TranslationsWatchTogetherEn {
|
||||
@override String participantResumed({required Object name}) => '${name} a repris';
|
||||
@override String participantSeeked({required Object name}) => '${name} a avancé';
|
||||
@override String participantBuffering({required Object name}) => '${name} met en mémoire tampon';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} utilise une ancienne version de l’app — synchronisation indisponible';
|
||||
@override String resumingWithout({required Object name}) => 'Reprise sans ${name}';
|
||||
@override String get waitingForParticipants => 'En attente du chargement des autres...';
|
||||
@override String waitingForName({required Object name}) => 'En attente de ${name}...';
|
||||
@override String get recentRooms => 'Salons récents';
|
||||
@override String get renameRoom => 'Renommer le salon';
|
||||
@override String get removeRoom => 'Supprimer';
|
||||
@override String get guestSwitchUnavailable => 'Impossible de changer — serveur indisponible pour la synchronisation';
|
||||
@override String get guestSwitchFailed => 'Impossible de changer — contenu introuvable sur ce serveur';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} utilise une ancienne version de l’app — synchronisation indisponible';
|
||||
@override String resumingWithout({required Object name}) => 'Reprise sans ${name}';
|
||||
@override String waitingForName({required Object name}) => 'En attente de ${name}...';
|
||||
}
|
||||
|
||||
// Path: downloads
|
||||
@@ -1406,7 +1383,6 @@ class _TranslationsDownloadsFr extends TranslationsDownloadsEn {
|
||||
@override String get customAmount => 'Quantité personnalisée...';
|
||||
@override String get includeSpecials => 'Inclure les spéciaux';
|
||||
@override String get howManyEpisodes => 'Combien d\'épisodes ?';
|
||||
@override String itemsQueued({required Object count}) => '${count} éléments mis en file d\'attente';
|
||||
@override String get keepSynced => 'Garder synchronisé';
|
||||
@override String get downloadOnce => 'Télécharger une fois';
|
||||
@override String keepNUnwatched({required Object count}) => 'Garder ${count} non vus';
|
||||
@@ -1780,7 +1756,6 @@ class _TranslationsAddServerFr extends TranslationsAddServerEn {
|
||||
@override String quickConnectFailed({required Object error}) => 'Échec de Quick Connect : ${error}';
|
||||
@override String get addPlexTitle => 'Se connecter avec Plex';
|
||||
@override String get pinExpired => 'Le PIN a expiré avant la connexion. Veuillez réessayer.';
|
||||
@override String get duplicatePlexAccount => 'Déjà connecté à Plex. Déconnectez-vous pour changer de compte.';
|
||||
@override String failedToRegisterAccount({required Object error}) => 'Échec de l\'enregistrement du compte : ${error}';
|
||||
@override String get enterJellyfinUrlError => 'Saisissez l\'URL de votre serveur Jellyfin';
|
||||
@override String get addConnectionTitle => 'Ajouter une connexion';
|
||||
@@ -1906,7 +1881,6 @@ class _TranslationsLibrariesSortLabelsFr extends TranslationsLibrariesSortLabels
|
||||
@override String get communityRating => 'Note communautaire';
|
||||
@override String get criticRating => 'Note critique';
|
||||
@override String get userRating => 'Note utilisateur';
|
||||
@override String get lastPlayed => 'Dernière lecture';
|
||||
@override String get datePlayed => 'Date de lecture';
|
||||
@override String get playCount => 'Lectures';
|
||||
@override String get productionYear => 'Année de production';
|
||||
@@ -1965,7 +1939,6 @@ class _TranslationsCompanionRemoteSessionFr extends TranslationsCompanionRemoteS
|
||||
|
||||
// Translations
|
||||
@override String get startingServer => 'Démarrage du serveur distant...';
|
||||
@override String get failedToCreate => 'Échec du démarrage du serveur distant :';
|
||||
@override String get hostAddress => 'Adresse de l\'hôte';
|
||||
@override String get connected => 'Connecté';
|
||||
@override String get serverRunning => 'Serveur distant actif';
|
||||
@@ -2047,6 +2020,8 @@ class _TranslationsCompanionRemoteErrorsFr extends TranslationsCompanionRemoteEr
|
||||
// Translations
|
||||
@override String get noNetworkInterface => 'Aucune interface réseau trouvée';
|
||||
@override String get authenticationFailed => 'Échec de l’authentification';
|
||||
@override String serverStartFailed({required Object error}) => 'Impossible de démarrer le serveur distant : ${error}';
|
||||
@override String commandFailed({required Object error}) => 'Impossible d’envoyer la commande à distance : ${error}';
|
||||
@override String get joinTimedOut => 'Délai dépassé lors de la connexion à la session';
|
||||
@override String get failedToConnectAnyAddress => 'Impossible de se connecter à une adresse';
|
||||
@override String connectionLostAfterAttempts({required Object attempts}) => 'Connexion perdue après ${attempts} tentatives';
|
||||
@@ -2123,7 +2098,6 @@ extension on TranslationsFr {
|
||||
dynamic _flatMapFunction(String path) {
|
||||
return switch (path) {
|
||||
'app.title' => 'Plezy',
|
||||
'auth.signIn' => 'Se connecter',
|
||||
'auth.signInWithPlex' => 'S\'inscrire avec Plex',
|
||||
'auth.showQRCode' => 'Afficher le QR Code',
|
||||
'auth.authenticate' => 'S\'authentifier',
|
||||
@@ -2174,10 +2148,8 @@ extension on TranslationsFr {
|
||||
'common.episodeNumberTitle' => ({required Object number, required Object title}) => 'Épisode ${number} - ${title}',
|
||||
'common.chapterNumber' => ({required Object number}) => 'Chapitre ${number}',
|
||||
'common.reconnect' => 'Reconnecter',
|
||||
'common.exit' => 'Quitter',
|
||||
'common.viewAll' => 'Tout afficher',
|
||||
'common.checkingNetwork' => 'Vérification du réseau...',
|
||||
'common.refreshingServers' => 'Actualisation des serveurs...',
|
||||
'common.loadingServers' => 'Chargement des serveurs...',
|
||||
'common.connectingToServers' => 'Connexion aux serveurs...',
|
||||
'common.startingOfflineMode' => 'Démarrage en mode hors-ligne...',
|
||||
@@ -2251,6 +2223,12 @@ extension on TranslationsFr {
|
||||
'settings.tvFullCardLayoutDescription' => 'Utiliser des cartes TV avec image seule et noms des acteurs superposés',
|
||||
'settings.focusGlow' => 'Halo de sélection',
|
||||
'settings.focusGlowDescription' => 'Afficher un léger halo autour de la carte sélectionnée',
|
||||
'settings.visualEffects' => 'Effets visuels',
|
||||
'settings.visualEffectsAuto' => 'Automatique',
|
||||
'settings.visualEffectsAutoDescription' => 'Réduire automatiquement les effets sur les appareils peu puissants',
|
||||
'settings.visualEffectsFull' => 'Complets',
|
||||
'settings.visualEffectsReduced' => 'Réduits',
|
||||
'settings.visualEffectsReducedDescription' => 'Moins d’animations et d’illustrations de plus faible résolution',
|
||||
'settings.hideSpoilers' => 'Masquer les spoilers des épisodes non vus',
|
||||
'settings.hideSpoilersDescription' => 'Flouter les miniatures et descriptions des épisodes non vus',
|
||||
'settings.playerBackend' => 'Moteur de lecture',
|
||||
@@ -2263,7 +2241,7 @@ extension on TranslationsFr {
|
||||
'settings.bufferSizeAuto' => 'Auto (Recommandé)',
|
||||
'settings.bufferSizeWarning' => ({required Object heap, required Object size}) => '${heap}MB de mémoire disponible. Un tampon de ${size}MB peut affecter la lecture.',
|
||||
'settings.defaultQualityTitle' => 'Qualité par défaut',
|
||||
'settings.defaultQualityDescription' => 'Utilisé au démarrage de la lecture. Les valeurs plus basses réduisent la bande passante.',
|
||||
'settings.musicQualityTitle' => 'Qualité de la musique',
|
||||
'settings.subtitleStyling' => 'Stylisation des sous-titres',
|
||||
'settings.subtitleStylingDescription' => 'Personnaliser l\'apparence des sous-titres',
|
||||
'settings.smallSkipDuration' => 'Durée du petit saut',
|
||||
@@ -2357,10 +2335,9 @@ extension on TranslationsFr {
|
||||
'settings.maxVolumePercent' => ({required Object percent}) => '${percent}%',
|
||||
'settings.discordRichPresence' => 'Discord Rich Presence',
|
||||
'settings.discordRichPresenceDescription' => 'Montrez ce que vous regardez sur Discord',
|
||||
'settings.trakt' => 'Trakt',
|
||||
'settings.traktDescription' => 'Synchroniser l\'historique de visionnage avec Trakt',
|
||||
'settings.services' => 'Services',
|
||||
'settings.servicesDescription' => 'Connectez Trakt, MyAnimeList, Seerr et plus',
|
||||
'settings.manageLibrariesDescription' => 'Réorganiser et masquer les bibliothèques',
|
||||
'settings.companionRemoteServer' => 'Serveur de télécommande',
|
||||
'settings.companionRemoteServerDescription' => 'Autoriser les appareils mobiles de votre réseau à contrôler cette application',
|
||||
'settings.autoPip' => 'Image dans l\'image automatique',
|
||||
@@ -2423,7 +2400,6 @@ extension on TranslationsFr {
|
||||
'settings.showNavBarLabels' => 'Afficher les libellés de la barre de navigation',
|
||||
'settings.showNavBarLabelsDescription' => 'Afficher les libellés sous les icônes de la barre de navigation',
|
||||
'settings.startupSection' => 'Section de démarrage',
|
||||
'settings.startupSectionDescription' => 'Choisissez la section que Plezy ouvre au démarrage',
|
||||
'settings.liveTvDefaultFavorites' => 'Chaînes favorites par défaut',
|
||||
'settings.liveTvDefaultFavoritesDescription' => 'Afficher uniquement les chaînes favorites à l\'ouverture de la TV en direct',
|
||||
'settings.display' => 'Affichage',
|
||||
@@ -2435,13 +2411,6 @@ extension on TranslationsFr {
|
||||
'settings.subtitlesAndConfig' => 'Sous-titres et configuration',
|
||||
'settings.seekAndTiming' => 'Recherche et minutage',
|
||||
'settings.behavior' => 'Comportement',
|
||||
'settings.manageLibrariesDescription' => 'Réorganiser et masquer les bibliothèques',
|
||||
'settings.visualEffects' => 'Effets visuels',
|
||||
'settings.visualEffectsAuto' => 'Automatique',
|
||||
'settings.visualEffectsAutoDescription' => 'Réduire automatiquement les effets sur les appareils peu puissants',
|
||||
'settings.visualEffectsFull' => 'Complets',
|
||||
'settings.visualEffectsReduced' => 'Réduits',
|
||||
'settings.visualEffectsReducedDescription' => 'Moins d’animations et d’illustrations de plus faible résolution',
|
||||
'search.hint' => 'Rechercher des films, des séries, de la musique...',
|
||||
'search.tryDifferentTerm' => 'Essayez un autre terme de recherche',
|
||||
'search.searchYourMedia' => 'Rechercher dans vos médias',
|
||||
@@ -2518,14 +2487,11 @@ extension on TranslationsFr {
|
||||
'mediaMenu.playVersion' => 'Lire la version...',
|
||||
'rateSheet.title' => 'Noter',
|
||||
'rateSheet.server' => 'Serveur',
|
||||
'rateSheet.starValue' => ({required Object rating}) => '${rating} / 5',
|
||||
'rateSheet.scoreValue' => ({required Object score}) => '${score} / 10',
|
||||
'rateSheet.setScore' => 'Définir une note',
|
||||
'rateSheet.favorite' => 'Favori',
|
||||
'rateSheet.favorited' => 'Ajouté aux favoris',
|
||||
'rateSheet.saved' => 'Enregistré',
|
||||
'rateSheet.notAvailable' => 'Aucune correspondance trouvée',
|
||||
'rateSheet.noConnectedServices' => 'Connectez un service dans les Réglages pour noter ici.',
|
||||
'rateSheet.favorite' => 'Favori',
|
||||
'rateSheet.favorited' => 'Ajouté aux favoris',
|
||||
'accessibility.mediaCardMovie' => ({required Object title}) => '${title}, film',
|
||||
'accessibility.mediaCardShow' => ({required Object title}) => '${title}, show TV',
|
||||
'accessibility.mediaCardEpisode' => ({required Object title, required Object episodeInfo}) => '${title}, ${episodeInfo}',
|
||||
@@ -2534,6 +2500,14 @@ extension on TranslationsFr {
|
||||
'accessibility.mediaCardPartiallyWatched' => ({required Object percent}) => '${percent} pourcentage visionné',
|
||||
'accessibility.mediaCardUnwatched' => 'non visionné',
|
||||
'accessibility.tapToPlay' => 'Appuyez pour lire',
|
||||
'accessibility.decrease' => 'Diminuer',
|
||||
'accessibility.increase' => 'Augmenter',
|
||||
'accessibility.decreaseValue' => ({required Object label}) => 'Diminuer ${label}',
|
||||
'accessibility.increaseValue' => ({required Object label}) => 'Augmenter ${label}',
|
||||
'accessibility.hue' => 'Teinte',
|
||||
'accessibility.saturation' => 'Saturation',
|
||||
'accessibility.brightness' => 'Luminosité',
|
||||
'accessibility.hexColor' => 'Couleur hexadécimale',
|
||||
'tooltips.shufflePlay' => 'Lecture aléatoire',
|
||||
'tooltips.playTrailer' => 'Lire la bande-annonce',
|
||||
'tooltips.markAsWatched' => 'Marqué comme vu',
|
||||
@@ -2575,13 +2549,11 @@ extension on TranslationsFr {
|
||||
'videoControls.settingsButton' => 'Paramètres de lecture',
|
||||
'videoControls.tracksButton' => 'Audio et sous-titres',
|
||||
'videoControls.chaptersButton' => 'Chapitres',
|
||||
'videoControls.versionsButton' => 'Versions vidéo',
|
||||
'videoControls.versionQualityButton' => 'Version et qualité',
|
||||
'videoControls.versionColumnHeader' => 'Version',
|
||||
'videoControls.qualityColumnHeader' => 'Qualité',
|
||||
'videoControls.qualityOriginal' => 'Originale',
|
||||
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
|
||||
'videoControls.qualityBandwidthEstimate' => ({required Object bitrate}) => '~${bitrate} Mbps',
|
||||
'videoControls.transcodeUnavailableFallback' => 'Transcodage indisponible — lecture en qualité originale',
|
||||
'videoControls.pipButton' => 'Mode PiP (Picture-in-Picture)',
|
||||
'videoControls.aspectRatioButton' => 'Format d\'image',
|
||||
@@ -2621,10 +2593,6 @@ extension on TranslationsFr {
|
||||
'videoControls.subtitleDownloaded' => 'Sous-titre téléchargé',
|
||||
'videoControls.subtitleDownloadFailed' => 'Échec du téléchargement du sous-titre',
|
||||
'videoControls.searchLanguages' => 'Rechercher des langues...',
|
||||
'userStatus.admin' => 'Admin',
|
||||
'userStatus.restricted' => 'Restreint',
|
||||
'userStatus.protected' => 'Protégé',
|
||||
'userStatus.current' => 'ACTUEL',
|
||||
'messages.markedAsWatched' => 'Marqué comme vu',
|
||||
'messages.markedAsUnwatched' => 'Marqué comme non vu',
|
||||
'messages.markedAsWatchedOffline' => 'Marqué comme vu (se synchronisera lorsque vous serez en ligne)',
|
||||
@@ -2634,8 +2602,6 @@ extension on TranslationsFr {
|
||||
'messages.errorLoading' => ({required Object error}) => 'Erreur: ${error}',
|
||||
'messages.streamInterrupted' => 'La lecture a été interrompue. Appuyez sur Lecture ou avancez pour réessayer.',
|
||||
'messages.fileInfoNotAvailable' => 'Informations sur le fichier non disponibles',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Erreur lors du chargement des informations sur le fichier: ${error}',
|
||||
'messages.errorLoadingSeries' => 'Erreur lors du chargement de la série',
|
||||
'messages.musicNotSupported' => 'La lecture de musique n\'est pas encore prise en charge',
|
||||
@@ -2643,6 +2609,8 @@ extension on TranslationsFr {
|
||||
'messages.noProfilesAvailable' => 'Aucun profil disponible',
|
||||
'messages.contactAdminForProfiles' => 'Contactez votre administrateur serveur pour ajouter des profils',
|
||||
'messages.unableToDetermineLibrarySection' => 'Impossible de déterminer la section de la bibliothèque pour cet élément',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.logsCleared' => 'Logs effacés',
|
||||
'messages.logsCopied' => 'Logs copiés dans le presse-papier',
|
||||
'messages.noLogsAvailable' => 'Aucun log disponible',
|
||||
@@ -2759,7 +2727,6 @@ extension on TranslationsFr {
|
||||
'profiles.pinExplain' => 'PIN à 4 chiffres requis pour changer de profil.',
|
||||
'profiles.continueButton' => 'Continuer',
|
||||
'profiles.pinsDontMatch' => 'Les PIN ne correspondent pas',
|
||||
'profiles.initializeServicesFailed' => 'Impossible d’initialiser les services de profil',
|
||||
'connections.sectionTitle' => 'Connexions',
|
||||
'connections.addConnection' => 'Ajouter une connexion',
|
||||
'connections.addConnectionSubtitleNoProfile' => 'Connectez-vous avec Plex ou connectez un serveur Jellyfin',
|
||||
@@ -2770,7 +2737,6 @@ extension on TranslationsFr {
|
||||
'connections.editJellyfinTitle' => 'Modifier la connexion Jellyfin',
|
||||
'connections.editJellyfinIntro' => ({required Object serverName}) => 'Ajoutez ou supprimez des URL pour ${serverName}. Plezy utilisera l\'URL joignable avec la latence la plus faible.',
|
||||
'discover.title' => 'Découvrez',
|
||||
'discover.switchProfile' => 'Changer de profil',
|
||||
'discover.noContentAvailable' => 'Aucun contenu disponible',
|
||||
'discover.addMediaToLibraries' => 'Ajoutez des médias à votre bibliothèque',
|
||||
'discover.continueWatching' => 'Continuer à regarder',
|
||||
@@ -2797,8 +2763,6 @@ extension on TranslationsFr {
|
||||
'errors.connectionFailed' => 'Impossible de se connecter au serveur multimédia',
|
||||
'errors.failedToLoad' => ({required Object context, required Object error}) => 'Échec du chargement ${context}: ${error}',
|
||||
'errors.noClientAvailable' => 'Aucun client disponible',
|
||||
'errors.authenticationFailed' => ({required Object error}) => 'Échec de l\'authentification: ${error}',
|
||||
'errors.couldNotLaunchUrl' => 'Impossible de lancer l\'URL d\'authentification',
|
||||
'errors.pleaseEnterToken' => 'Veuillez saisir un token',
|
||||
'errors.invalidToken' => 'Token invalide',
|
||||
'errors.failedToVerifyToken' => ({required Object error}) => 'Échec de la vérification du token: ${error}',
|
||||
@@ -2823,6 +2787,8 @@ extension on TranslationsFr {
|
||||
'libraries.allLibrariesHidden' => 'Toutes les bibliothèques sont masquées',
|
||||
'libraries.hiddenLibrariesCount' => ({required Object count}) => 'Bibliothèques masquées (${count})',
|
||||
'libraries.thisLibraryIsEmpty' => 'Cette bibliothèque est vide',
|
||||
'libraries.noItemsMatchFilters' => 'Aucun élément ne correspond aux filtres actifs',
|
||||
'libraries.resetFilters' => 'Réinitialiser les filtres',
|
||||
'libraries.all' => 'Tout',
|
||||
'libraries.clearAll' => 'Tout effacer',
|
||||
'libraries.scanLibraryConfirm' => ({required Object title}) => 'Êtes-vous sûr de vouloir lancer le scan de "${title}"?',
|
||||
@@ -2871,7 +2837,6 @@ extension on TranslationsFr {
|
||||
'libraries.sortLabels.communityRating' => 'Note communautaire',
|
||||
'libraries.sortLabels.criticRating' => 'Note critique',
|
||||
'libraries.sortLabels.userRating' => 'Note utilisateur',
|
||||
'libraries.sortLabels.lastPlayed' => 'Dernière lecture',
|
||||
'libraries.sortLabels.datePlayed' => 'Date de lecture',
|
||||
'libraries.sortLabels.playCount' => 'Lectures',
|
||||
'libraries.sortLabels.productionYear' => 'Année de production',
|
||||
@@ -2885,14 +2850,11 @@ extension on TranslationsFr {
|
||||
'libraries.sortLabels.dateShared' => 'Date de partage',
|
||||
'libraries.sortLabels.latestEpisodeAirDate' => 'Dernière date de diffusion',
|
||||
'libraries.sortLabels.lastEpisodeDateAdded' => 'Date d\'ajout du dernier épisode',
|
||||
'libraries.noItemsMatchFilters' => 'Aucun élément ne correspond aux filtres actifs',
|
||||
'libraries.resetFilters' => 'Réinitialiser les filtres',
|
||||
'about.title' => 'À propos',
|
||||
'about.openSourceLicenses' => 'Licences Open Source',
|
||||
'about.versionLabel' => ({required Object version}) => 'Version ${version}',
|
||||
'about.appDescription' => 'Un magnifique client Plex et Jellyfin pour Flutter',
|
||||
'about.viewLicensesDescription' => 'Afficher les licences des bibliothèques tierces',
|
||||
'serverSelection.allServerConnectionsFailed' => 'Connexion impossible à tous les serveurs. Vérifiez votre réseau.',
|
||||
'serverSelection.noServersFoundForAccount' => ({required Object username, required Object email}) => 'Aucun serveur trouvé pour ${username} (${email})',
|
||||
'serverSelection.failedToLoadServers' => ({required Object error}) => 'Échec du chargement des serveurs: ${error}',
|
||||
'hubDetail.title' => 'Titre',
|
||||
@@ -2938,7 +2900,6 @@ extension on TranslationsFr {
|
||||
'explore.watchlistUpdateFailed' => 'Impossible de mettre à jour la liste de suivi',
|
||||
'explore.notInLibrary' => 'Absent de votre bibliothèque',
|
||||
'explore.inTheseLibraries' => 'Dans ces bibliothèques',
|
||||
'explore.availableOn' => ({required Object server}) => 'Disponible sur ${server}',
|
||||
'explore.checkingLibrary' => 'Vérification de votre bibliothèque...',
|
||||
'explore.emptyTitle' => 'Rien ici pour l\'instant',
|
||||
'explore.emptyMessage' => ({required Object source}) => 'Les rangées de ${source} apparaîtront ici une fois qu\'elles auront du contenu.',
|
||||
@@ -2950,6 +2911,8 @@ extension on TranslationsFr {
|
||||
'liveTv.guide' => 'Guide',
|
||||
'liveTv.noChannels' => 'Aucune chaîne disponible',
|
||||
'liveTv.noDvr' => 'Aucun DVR configuré sur les serveurs',
|
||||
'liveTv.serverUnavailable' => 'Le serveur de TV en direct n’est pas disponible.',
|
||||
'liveTv.serverNotConnected' => 'Le serveur de TV en direct n’est pas connecté.',
|
||||
'liveTv.noPrograms' => 'Aucune donnée de programme disponible',
|
||||
'liveTv.liveStreamFailed' => 'Échec du direct',
|
||||
'liveTv.unknownProgram' => 'Programme inconnu',
|
||||
@@ -2985,7 +2948,6 @@ extension on TranslationsFr {
|
||||
'liveTv.scheduledRecordings' => 'Programmés',
|
||||
'liveTv.recordingRules' => 'Règles d\'enregistrement',
|
||||
'liveTv.noScheduledRecordings' => 'Aucun enregistrement programmé',
|
||||
'liveTv.noRecordingRules' => 'Aucune règle d\'enregistrement',
|
||||
'liveTv.manageRecording' => 'Gérer l\'enregistrement',
|
||||
'liveTv.cancelRecording' => 'Annuler l\'enregistrement',
|
||||
'liveTv.cancelRecordingTitle' => 'Annuler cet enregistrement ?',
|
||||
@@ -3002,7 +2964,6 @@ extension on TranslationsFr {
|
||||
'liveTv.recordingCancelled' => 'Enregistrement annulé',
|
||||
'liveTv.recordingRuleDeleted' => 'Règle d\'enregistrement supprimée',
|
||||
'liveTv.processRecordingRules' => 'Réévaluer les règles',
|
||||
'liveTv.loadingRecordings' => 'Chargement des enregistrements...',
|
||||
'liveTv.recordingInProgress' => 'Enregistrement en cours',
|
||||
'liveTv.recordingsCount' => ({required Object count}) => '${count} programmés',
|
||||
'liveTv.editRule' => 'Modifier la règle',
|
||||
@@ -3014,7 +2975,6 @@ extension on TranslationsFr {
|
||||
'collections.title' => 'Collections',
|
||||
'collections.collection' => 'Collection',
|
||||
'collections.empty' => 'La collection est vide',
|
||||
'collections.unknownLibrarySection' => 'Impossible de supprimer : section de bibliothèque inconnue',
|
||||
'collections.deleteCollection' => 'Supprimer la collection',
|
||||
'collections.deleteConfirm' => ({required Object title}) => 'Supprimer "${title}" ? Action irréversible.',
|
||||
'collections.deleted' => 'Collection supprimée',
|
||||
@@ -3052,6 +3012,7 @@ extension on TranslationsFr {
|
||||
'playlists.itemAdded' => 'Ajouté à la playlist',
|
||||
'playlists.itemRemoved' => 'Retiré de la playlist',
|
||||
'playlists.selectPlaylist' => 'Sélectionner une playlist',
|
||||
'playlists.searchPlaylists' => 'Rechercher des playlists...',
|
||||
'playlists.errorCreating' => 'Échec de la création de playlist',
|
||||
'playlists.errorDeleting' => 'Échec de suppression de playlist',
|
||||
'playlists.errorLoading' => 'Échec de chargement de playlists',
|
||||
@@ -3134,22 +3095,20 @@ extension on TranslationsFr {
|
||||
'watchTogether.participantResumed' => ({required Object name}) => '${name} a repris',
|
||||
'watchTogether.participantSeeked' => ({required Object name}) => '${name} a avancé',
|
||||
'watchTogether.participantBuffering' => ({required Object name}) => '${name} met en mémoire tampon',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} utilise une ancienne version de l’app — synchronisation indisponible',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Reprise sans ${name}',
|
||||
'watchTogether.waitingForParticipants' => 'En attente du chargement des autres...',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'En attente de ${name}...',
|
||||
'watchTogether.recentRooms' => 'Salons récents',
|
||||
'watchTogether.renameRoom' => 'Renommer le salon',
|
||||
'watchTogether.removeRoom' => 'Supprimer',
|
||||
'watchTogether.guestSwitchUnavailable' => 'Impossible de changer — serveur indisponible pour la synchronisation',
|
||||
'watchTogether.guestSwitchFailed' => 'Impossible de changer — contenu introuvable sur ce serveur',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} utilise une ancienne version de l’app — synchronisation indisponible',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Reprise sans ${name}',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'En attente de ${name}...',
|
||||
'downloads.title' => 'Téléchargements',
|
||||
'downloads.manage' => 'Gérer',
|
||||
'downloads.tvShows' => 'Show TV',
|
||||
'downloads.movies' => 'Films',
|
||||
'downloads.music' => 'Musique',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.tracksQueued' => ({required Object count}) => '${count} titres en file d\'attente de téléchargement',
|
||||
'downloads.noDownloads' => 'Aucun téléchargement pour le moment',
|
||||
'downloads.noDownloadsDescription' => 'Le contenu téléchargé apparaîtra ici pour être consulté hors ligne.',
|
||||
@@ -3164,6 +3123,8 @@ extension on TranslationsFr {
|
||||
'downloads.deleteConfirm' => ({required Object title}) => 'Supprimer "${title}" de cet appareil ?',
|
||||
'downloads.cancelledDownloadTitle' => 'Téléchargement annulé',
|
||||
'downloads.cancelledDownloadMessage' => 'Ce téléchargement a été annulé. Que voulez-vous faire ?',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.allEpisodesAlreadyDownloaded' => 'Tous les épisodes sont déjà téléchargés',
|
||||
'downloads.resumeDownload' => 'Reprendre le téléchargement',
|
||||
'downloads.cancelledDownload' => 'Téléchargement annulé',
|
||||
@@ -3187,7 +3148,6 @@ extension on TranslationsFr {
|
||||
'downloads.customAmount' => 'Quantité personnalisée...',
|
||||
'downloads.includeSpecials' => 'Inclure les spéciaux',
|
||||
'downloads.howManyEpisodes' => 'Combien d\'épisodes ?',
|
||||
'downloads.itemsQueued' => ({required Object count}) => '${count} éléments mis en file d\'attente',
|
||||
'downloads.keepSynced' => 'Garder synchronisé',
|
||||
'downloads.downloadOnce' => 'Télécharger une fois',
|
||||
'downloads.keepNUnwatched' => ({required Object count}) => 'Garder ${count} non vus',
|
||||
@@ -3231,7 +3191,6 @@ extension on TranslationsFr {
|
||||
'companionRemote.connectedTo' => ({required Object name}) => 'Connecté à ${name}',
|
||||
'companionRemote.unknownDevice' => 'Appareil inconnu',
|
||||
'companionRemote.session.startingServer' => 'Démarrage du serveur distant...',
|
||||
'companionRemote.session.failedToCreate' => 'Échec du démarrage du serveur distant :',
|
||||
'companionRemote.session.hostAddress' => 'Adresse de l\'hôte',
|
||||
'companionRemote.session.connected' => 'Connecté',
|
||||
'companionRemote.session.serverRunning' => 'Serveur distant actif',
|
||||
@@ -3286,6 +3245,8 @@ extension on TranslationsFr {
|
||||
'companionRemote.remote.searchHint' => 'Rechercher sur le bureau...',
|
||||
'companionRemote.errors.noNetworkInterface' => 'Aucune interface réseau trouvée',
|
||||
'companionRemote.errors.authenticationFailed' => 'Échec de l’authentification',
|
||||
'companionRemote.errors.serverStartFailed' => ({required Object error}) => 'Impossible de démarrer le serveur distant : ${error}',
|
||||
'companionRemote.errors.commandFailed' => ({required Object error}) => 'Impossible d’envoyer la commande à distance : ${error}',
|
||||
'companionRemote.errors.joinTimedOut' => 'Délai dépassé lors de la connexion à la session',
|
||||
'companionRemote.errors.failedToConnectAnyAddress' => 'Impossible de se connecter à une adresse',
|
||||
'companionRemote.errors.connectionLostAfterAttempts' => ({required Object attempts}) => 'Connexion perdue après ${attempts} tentatives',
|
||||
@@ -3530,7 +3491,6 @@ extension on TranslationsFr {
|
||||
'addServer.quickConnectFailed' => ({required Object error}) => 'Échec de Quick Connect : ${error}',
|
||||
'addServer.addPlexTitle' => 'Se connecter avec Plex',
|
||||
'addServer.pinExpired' => 'Le PIN a expiré avant la connexion. Veuillez réessayer.',
|
||||
'addServer.duplicatePlexAccount' => 'Déjà connecté à Plex. Déconnectez-vous pour changer de compte.',
|
||||
'addServer.failedToRegisterAccount' => ({required Object error}) => 'Échec de l\'enregistrement du compte : ${error}',
|
||||
'addServer.enterJellyfinUrlError' => 'Saisissez l\'URL de votre serveur Jellyfin',
|
||||
'addServer.addConnectionTitle' => 'Ajouter une connexion',
|
||||
|
||||
+68
-108
@@ -53,7 +53,6 @@ class TranslationsIt extends Translations with BaseTranslations<AppLocale, Trans
|
||||
@override late final _TranslationsAccessibilityIt accessibility = _TranslationsAccessibilityIt._(_root);
|
||||
@override late final _TranslationsTooltipsIt tooltips = _TranslationsTooltipsIt._(_root);
|
||||
@override late final _TranslationsVideoControlsIt videoControls = _TranslationsVideoControlsIt._(_root);
|
||||
@override late final _TranslationsUserStatusIt userStatus = _TranslationsUserStatusIt._(_root);
|
||||
@override late final _TranslationsMessagesIt messages = _TranslationsMessagesIt._(_root);
|
||||
@override late final _TranslationsSubtitlingStylingIt subtitlingStyling = _TranslationsSubtitlingStylingIt._(_root);
|
||||
@override late final _TranslationsMpvConfigIt mpvConfig = _TranslationsMpvConfigIt._(_root);
|
||||
@@ -107,7 +106,6 @@ class _TranslationsAuthIt extends TranslationsAuthEn {
|
||||
final TranslationsIt _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get signIn => 'Accedi';
|
||||
@override String get signInWithPlex => 'Accedi con Plex';
|
||||
@override String get showQRCode => 'Mostra QR Code';
|
||||
@override String get authenticate => 'Autenticazione';
|
||||
@@ -167,10 +165,8 @@ class _TranslationsCommonIt extends TranslationsCommonEn {
|
||||
@override String episodeNumberTitle({required Object number, required Object title}) => 'Episodio ${number} - ${title}';
|
||||
@override String chapterNumber({required Object number}) => 'Capitolo ${number}';
|
||||
@override String get reconnect => 'Riconnetti';
|
||||
@override String get exit => 'Esci';
|
||||
@override String get viewAll => 'Mostra tutto';
|
||||
@override String get checkingNetwork => 'Verifica rete...';
|
||||
@override String get refreshingServers => 'Aggiornamento server...';
|
||||
@override String get loadingServers => 'Caricamento server...';
|
||||
@override String get connectingToServers => 'Connessione ai server...';
|
||||
@override String get startingOfflineMode => 'Avvio modalità offline...';
|
||||
@@ -271,6 +267,12 @@ class _TranslationsSettingsIt extends TranslationsSettingsEn {
|
||||
@override String get tvFullCardLayoutDescription => 'Usa schede TV solo immagine con i nomi degli attori sovrapposti';
|
||||
@override String get focusGlow => 'Bagliore di selezione';
|
||||
@override String get focusGlowDescription => 'Mostra un leggero bagliore attorno alla scheda selezionata';
|
||||
@override String get visualEffects => 'Effetti visivi';
|
||||
@override String get visualEffectsAuto => 'Automatico';
|
||||
@override String get visualEffectsAutoDescription => 'Riduci automaticamente gli effetti sui dispositivi a basso consumo';
|
||||
@override String get visualEffectsFull => 'Completi';
|
||||
@override String get visualEffectsReduced => 'Ridotti';
|
||||
@override String get visualEffectsReducedDescription => 'Meno animazioni e immagini a risoluzione inferiore';
|
||||
@override String get hideSpoilers => 'Nascondi spoiler per episodi non visti';
|
||||
@override String get hideSpoilersDescription => 'Sfoca miniature e descrizioni degli episodi non visti';
|
||||
@override String get playerBackend => 'Motore di riproduzione';
|
||||
@@ -283,7 +285,7 @@ class _TranslationsSettingsIt extends TranslationsSettingsEn {
|
||||
@override String get bufferSizeAuto => 'Auto (Consigliato)';
|
||||
@override String bufferSizeWarning({required Object heap, required Object size}) => '${heap}MB di memoria disponibile. Un buffer di ${size}MB può influire sulla riproduzione.';
|
||||
@override String get defaultQualityTitle => 'Qualità predefinita';
|
||||
@override String get defaultQualityDescription => 'Utilizzato all\'avvio della riproduzione. Valori più bassi riducono la larghezza di banda.';
|
||||
@override String get musicQualityTitle => 'Qualità musicale';
|
||||
@override String get subtitleStyling => 'Stile sottotitoli';
|
||||
@override String get subtitleStylingDescription => 'Personalizza l\'aspetto dei sottotitoli';
|
||||
@override String get smallSkipDuration => 'Durata skip breve';
|
||||
@@ -377,10 +379,9 @@ class _TranslationsSettingsIt extends TranslationsSettingsEn {
|
||||
@override String maxVolumePercent({required Object percent}) => '${percent}%';
|
||||
@override String get discordRichPresence => 'Discord Rich Presence';
|
||||
@override String get discordRichPresenceDescription => 'Mostra su Discord cosa stai guardando';
|
||||
@override String get trakt => 'Trakt';
|
||||
@override String get traktDescription => 'Sincronizza la cronologia di visione con Trakt';
|
||||
@override String get services => 'Servizi';
|
||||
@override String get servicesDescription => 'Connetti Trakt, MyAnimeList, Seerr e altro';
|
||||
@override String get manageLibrariesDescription => 'Riordina e nascondi le librerie';
|
||||
@override String get companionRemoteServer => 'Server telecomando';
|
||||
@override String get companionRemoteServerDescription => 'Consenti ai dispositivi mobili nella tua rete di controllare questa app';
|
||||
@override String get autoPip => 'Picture-in-Picture automatico';
|
||||
@@ -443,7 +444,6 @@ class _TranslationsSettingsIt extends TranslationsSettingsEn {
|
||||
@override String get showNavBarLabels => 'Mostra etichette barra di navigazione';
|
||||
@override String get showNavBarLabelsDescription => 'Mostra le etichette sotto le icone della barra di navigazione';
|
||||
@override String get startupSection => 'Sezione di avvio';
|
||||
@override String get startupSectionDescription => 'Scegli quale sezione apre Plezy all\'avvio';
|
||||
@override String get liveTvDefaultFavorites => 'Canali preferiti predefiniti';
|
||||
@override String get liveTvDefaultFavoritesDescription => 'Mostra solo i canali preferiti all\'apertura della TV dal vivo';
|
||||
@override String get display => 'Schermo';
|
||||
@@ -455,13 +455,6 @@ class _TranslationsSettingsIt extends TranslationsSettingsEn {
|
||||
@override String get subtitlesAndConfig => 'Sottotitoli e configurazione';
|
||||
@override String get seekAndTiming => 'Ricerca e tempistica';
|
||||
@override String get behavior => 'Comportamento';
|
||||
@override String get manageLibrariesDescription => 'Riordina e nascondi le librerie';
|
||||
@override String get visualEffects => 'Effetti visivi';
|
||||
@override String get visualEffectsAuto => 'Automatico';
|
||||
@override String get visualEffectsAutoDescription => 'Riduci automaticamente gli effetti sui dispositivi a basso consumo';
|
||||
@override String get visualEffectsFull => 'Completi';
|
||||
@override String get visualEffectsReduced => 'Ridotti';
|
||||
@override String get visualEffectsReducedDescription => 'Meno animazioni e immagini a risoluzione inferiore';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -559,14 +552,11 @@ class _TranslationsRateSheetIt extends TranslationsRateSheetEn {
|
||||
// Translations
|
||||
@override String get title => 'Valuta';
|
||||
@override String get server => 'Server';
|
||||
@override String starValue({required Object rating}) => '${rating} / 5';
|
||||
@override String scoreValue({required Object score}) => '${score} / 10';
|
||||
@override String get setScore => 'Imposta un punteggio';
|
||||
@override String get favorite => 'Preferito';
|
||||
@override String get favorited => 'Aggiunto ai preferiti';
|
||||
@override String get saved => 'Salvato';
|
||||
@override String get notAvailable => 'Nessuna corrispondenza trovata';
|
||||
@override String get noConnectedServices => 'Connetti un servizio nelle Impostazioni per valutare lì.';
|
||||
@override String get favorite => 'Preferito';
|
||||
@override String get favorited => 'Aggiunto ai preferiti';
|
||||
}
|
||||
|
||||
// Path: accessibility
|
||||
@@ -584,6 +574,14 @@ class _TranslationsAccessibilityIt extends TranslationsAccessibilityEn {
|
||||
@override String mediaCardPartiallyWatched({required Object percent}) => '${percent} percento visto';
|
||||
@override String get mediaCardUnwatched => 'non visto';
|
||||
@override String get tapToPlay => 'Tocca per riprodurre';
|
||||
@override String get decrease => 'Diminuisci';
|
||||
@override String get increase => 'Aumenta';
|
||||
@override String decreaseValue({required Object label}) => 'Diminuisci ${label}';
|
||||
@override String increaseValue({required Object label}) => 'Aumenta ${label}';
|
||||
@override String get hue => 'Tonalità';
|
||||
@override String get saturation => 'Saturazione';
|
||||
@override String get brightness => 'Luminosità';
|
||||
@override String get hexColor => 'Colore esadecimale';
|
||||
}
|
||||
|
||||
// Path: tooltips
|
||||
@@ -643,13 +641,11 @@ class _TranslationsVideoControlsIt extends TranslationsVideoControlsEn {
|
||||
@override String get settingsButton => 'Impostazioni di riproduzione';
|
||||
@override String get tracksButton => 'Audio e sottotitoli';
|
||||
@override String get chaptersButton => 'Capitoli';
|
||||
@override String get versionsButton => 'Versioni video';
|
||||
@override String get versionQualityButton => 'Versione e qualità';
|
||||
@override String get versionColumnHeader => 'Versione';
|
||||
@override String get qualityColumnHeader => 'Qualità';
|
||||
@override String get qualityOriginal => 'Originale';
|
||||
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
|
||||
@override String qualityBandwidthEstimate({required Object bitrate}) => '~${bitrate} Mbps';
|
||||
@override String get transcodeUnavailableFallback => 'Transcodifica non disponibile — riproduzione in qualità originale';
|
||||
@override String get pipButton => 'Modalità Picture-in-Picture';
|
||||
@override String get aspectRatioButton => 'Proporzioni';
|
||||
@@ -685,19 +681,6 @@ class _TranslationsVideoControlsIt extends TranslationsVideoControlsEn {
|
||||
@override String get searchLanguages => 'Cerca lingue...';
|
||||
}
|
||||
|
||||
// Path: userStatus
|
||||
class _TranslationsUserStatusIt extends TranslationsUserStatusEn {
|
||||
_TranslationsUserStatusIt._(TranslationsIt root) : this._root = root, super.internal(root);
|
||||
|
||||
final TranslationsIt _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get admin => 'Admin';
|
||||
@override String get restricted => 'Limitato';
|
||||
@override String get protected => 'Protetto';
|
||||
@override String get current => 'ATTUALE';
|
||||
}
|
||||
|
||||
// Path: messages
|
||||
class _TranslationsMessagesIt extends TranslationsMessagesEn {
|
||||
_TranslationsMessagesIt._(TranslationsIt root) : this._root = root, super.internal(root);
|
||||
@@ -873,7 +856,6 @@ class _TranslationsProfilesIt extends TranslationsProfilesEn {
|
||||
@override String get pinExplain => 'PIN a 4 cifre richiesto per cambiare profilo.';
|
||||
@override String get continueButton => 'Continua';
|
||||
@override String get pinsDontMatch => 'I PIN non corrispondono';
|
||||
@override String get initializeServicesFailed => 'Impossibile inizializzare i servizi profilo';
|
||||
}
|
||||
|
||||
// Path: connections
|
||||
@@ -902,7 +884,6 @@ class _TranslationsDiscoverIt extends TranslationsDiscoverEn {
|
||||
|
||||
// Translations
|
||||
@override String get title => 'Esplora';
|
||||
@override String get switchProfile => 'Cambia profilo';
|
||||
@override String get noContentAvailable => 'Nessun contenuto disponibile';
|
||||
@override String get addMediaToLibraries => 'Aggiungi alcuni file multimediali alle tue librerie';
|
||||
@override String get continueWatching => 'Continua a guardare';
|
||||
@@ -938,8 +919,6 @@ class _TranslationsErrorsIt extends TranslationsErrorsEn {
|
||||
@override String get connectionFailed => 'Impossibile connettersi al server multimediale';
|
||||
@override String failedToLoad({required Object context, required Object error}) => 'Impossibile caricare ${context}: ${error}';
|
||||
@override String get noClientAvailable => 'Nessun client disponibile';
|
||||
@override String authenticationFailed({required Object error}) => 'Autenticazione fallita: ${error}';
|
||||
@override String get couldNotLaunchUrl => 'Impossibile avviare URL di autenticazione';
|
||||
@override String get pleaseEnterToken => 'Inserisci token';
|
||||
@override String get invalidToken => 'Token non valido';
|
||||
@override String failedToVerifyToken({required Object error}) => 'Verifica token fallita: ${error}';
|
||||
@@ -973,6 +952,8 @@ class _TranslationsLibrariesIt extends TranslationsLibrariesEn {
|
||||
@override String get allLibrariesHidden => 'Tutte le librerie sono nascoste';
|
||||
@override String hiddenLibrariesCount({required Object count}) => 'Librerie nascoste (${count})';
|
||||
@override String get thisLibraryIsEmpty => 'Questa libreria è vuota';
|
||||
@override String get noItemsMatchFilters => 'Nessun elemento corrisponde ai filtri attivi';
|
||||
@override String get resetFilters => 'Reimposta filtri';
|
||||
@override String get all => 'Tutto';
|
||||
@override String get clearAll => 'Cancella tutto';
|
||||
@override String scanLibraryConfirm({required Object title}) => 'Sei sicuro di voler scansionare "${title}"?';
|
||||
@@ -998,8 +979,6 @@ class _TranslationsLibrariesIt extends TranslationsLibrariesEn {
|
||||
@override late final _TranslationsLibrariesGroupingsIt groupings = _TranslationsLibrariesGroupingsIt._(_root);
|
||||
@override late final _TranslationsLibrariesFilterCategoriesIt filterCategories = _TranslationsLibrariesFilterCategoriesIt._(_root);
|
||||
@override late final _TranslationsLibrariesSortLabelsIt sortLabels = _TranslationsLibrariesSortLabelsIt._(_root);
|
||||
@override String get noItemsMatchFilters => 'Nessun elemento corrisponde ai filtri attivi';
|
||||
@override String get resetFilters => 'Reimposta filtri';
|
||||
}
|
||||
|
||||
// Path: about
|
||||
@@ -1023,7 +1002,6 @@ class _TranslationsServerSelectionIt extends TranslationsServerSelectionEn {
|
||||
final TranslationsIt _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get allServerConnectionsFailed => 'Impossibile connettersi ai server. Controlla la rete.';
|
||||
@override String noServersFoundForAccount({required Object username, required Object email}) => 'Nessun server trovato per ${username} (${email})';
|
||||
@override String failedToLoadServers({required Object error}) => 'Impossibile caricare i server: ${error}';
|
||||
}
|
||||
@@ -1090,10 +1068,6 @@ class _TranslationsExploreIt extends TranslationsExploreEn {
|
||||
@override String get title => 'Scopri';
|
||||
@override String get selectSource => 'Seleziona fonte';
|
||||
@override late final _TranslationsExploreRowsIt rows = _TranslationsExploreRowsIt._(_root);
|
||||
@override String searchHint({required Object source}) => 'Cerca su ${source}';
|
||||
@override String searchEmpty({required Object query}) => 'Nessun risultato per "${query}"';
|
||||
@override String searchPrompt({required Object source}) => 'Cerca film e serie TV su ${source}.';
|
||||
@override String get searchFailed => 'Ricerca fallita. Controlla la connessione e riprova.';
|
||||
@override late final _TranslationsExploreStatusIt status = _TranslationsExploreStatusIt._(_root);
|
||||
@override String episodeCount({required num n}) => (_root.$meta.cardinalResolver ?? PluralResolvers.cardinal('it'))(n,
|
||||
one: '${n} episodio',
|
||||
@@ -1106,10 +1080,13 @@ class _TranslationsExploreIt extends TranslationsExploreEn {
|
||||
@override String get watchlistUpdateFailed => 'Impossibile aggiornare la Watchlist';
|
||||
@override String get notInLibrary => 'Non è nella tua libreria';
|
||||
@override String get inTheseLibraries => 'In queste librerie';
|
||||
@override String availableOn({required Object server}) => 'Disponibile su ${server}';
|
||||
@override String get checkingLibrary => 'Controllo della tua libreria...';
|
||||
@override String get emptyTitle => 'Ancora niente qui';
|
||||
@override String emptyMessage({required Object source}) => 'Le righe da ${source} appariranno qui una volta che avranno dei contenuti.';
|
||||
@override String searchHint({required Object source}) => 'Cerca su ${source}';
|
||||
@override String searchEmpty({required Object query}) => 'Nessun risultato per "${query}"';
|
||||
@override String searchPrompt({required Object source}) => 'Cerca film e serie TV su ${source}.';
|
||||
@override String get searchFailed => 'Ricerca fallita. Controlla la connessione e riprova.';
|
||||
}
|
||||
|
||||
// Path: liveTv
|
||||
@@ -1123,6 +1100,8 @@ class _TranslationsLiveTvIt extends TranslationsLiveTvEn {
|
||||
@override String get guide => 'Guida';
|
||||
@override String get noChannels => 'Nessun canale disponibile';
|
||||
@override String get noDvr => 'Nessun DVR configurato su nessun server';
|
||||
@override String get serverUnavailable => 'Il server TV in diretta non è disponibile.';
|
||||
@override String get serverNotConnected => 'Il server TV in diretta non è connesso.';
|
||||
@override String get noPrograms => 'Nessun dato di programma disponibile';
|
||||
@override String get liveStreamFailed => 'Streaming live non riuscito';
|
||||
@override String get unknownProgram => 'Programma sconosciuto';
|
||||
@@ -1158,7 +1137,6 @@ class _TranslationsLiveTvIt extends TranslationsLiveTvEn {
|
||||
@override String get scheduledRecordings => 'Programmate';
|
||||
@override String get recordingRules => 'Regole di registrazione';
|
||||
@override String get noScheduledRecordings => 'Nessuna registrazione programmata';
|
||||
@override String get noRecordingRules => 'Nessuna regola di registrazione';
|
||||
@override String get manageRecording => 'Gestisci registrazione';
|
||||
@override String get cancelRecording => 'Annulla registrazione';
|
||||
@override String get cancelRecordingTitle => 'Annullare questa registrazione?';
|
||||
@@ -1175,7 +1153,6 @@ class _TranslationsLiveTvIt extends TranslationsLiveTvEn {
|
||||
@override String get recordingCancelled => 'Registrazione annullata';
|
||||
@override String get recordingRuleDeleted => 'Regola di registrazione eliminata';
|
||||
@override String get processRecordingRules => 'Rivaluta regole';
|
||||
@override String get loadingRecordings => 'Caricamento registrazioni...';
|
||||
@override String get recordingInProgress => 'Registrazione in corso';
|
||||
@override String recordingsCount({required Object count}) => '${count} programmate';
|
||||
@override String get editRule => 'Modifica regola';
|
||||
@@ -1196,7 +1173,6 @@ class _TranslationsCollectionsIt extends TranslationsCollectionsEn {
|
||||
@override String get title => 'Raccolte';
|
||||
@override String get collection => 'Raccolta';
|
||||
@override String get empty => 'La raccolta è vuota';
|
||||
@override String get unknownLibrarySection => 'Impossibile eliminare: sezione libreria sconosciuta';
|
||||
@override String get deleteCollection => 'Elimina raccolta';
|
||||
@override String deleteConfirm({required Object title}) => 'Eliminare "${title}"? Non si può annullare.';
|
||||
@override String get deleted => 'Raccolta eliminata';
|
||||
@@ -1243,6 +1219,7 @@ class _TranslationsPlaylistsIt extends TranslationsPlaylistsEn {
|
||||
@override String get itemAdded => 'Aggiunto alla playlist';
|
||||
@override String get itemRemoved => 'Rimosso dalla playlist';
|
||||
@override String get selectPlaylist => 'Seleziona playlist';
|
||||
@override String get searchPlaylists => 'Cerca playlist...';
|
||||
@override String get errorCreating => 'Errore durante la creazione della playlist';
|
||||
@override String get errorDeleting => 'Errore durante l\'eliminazione della playlist';
|
||||
@override String get errorLoading => 'Errore durante il caricamento delle playlist';
|
||||
@@ -1346,15 +1323,15 @@ class _TranslationsWatchTogetherIt extends TranslationsWatchTogetherEn {
|
||||
@override String participantResumed({required Object name}) => '${name} ha ripreso';
|
||||
@override String participantSeeked({required Object name}) => '${name} ha cercato';
|
||||
@override String participantBuffering({required Object name}) => '${name} sta caricando';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} usa una versione precedente dell\'app — sincronizzazione non disponibile';
|
||||
@override String resumingWithout({required Object name}) => 'Ripresa senza ${name}';
|
||||
@override String get waitingForParticipants => 'In attesa che gli altri carichino...';
|
||||
@override String waitingForName({required Object name}) => 'In attesa di ${name}...';
|
||||
@override String get recentRooms => 'Stanze recenti';
|
||||
@override String get renameRoom => 'Rinomina stanza';
|
||||
@override String get removeRoom => 'Rimuovi';
|
||||
@override String get guestSwitchUnavailable => 'Impossibile cambiare — server non disponibile per la sincronizzazione';
|
||||
@override String get guestSwitchFailed => 'Impossibile cambiare — contenuto non trovato su questo server';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} usa una versione precedente dell\'app — sincronizzazione non disponibile';
|
||||
@override String resumingWithout({required Object name}) => 'Ripresa senza ${name}';
|
||||
@override String waitingForName({required Object name}) => 'In attesa di ${name}...';
|
||||
}
|
||||
|
||||
// Path: downloads
|
||||
@@ -1406,7 +1383,6 @@ class _TranslationsDownloadsIt extends TranslationsDownloadsEn {
|
||||
@override String get customAmount => 'Quantità personalizzata...';
|
||||
@override String get includeSpecials => 'Includi gli speciali';
|
||||
@override String get howManyEpisodes => 'Quanti episodi?';
|
||||
@override String itemsQueued({required Object count}) => '${count} elementi in coda per il download';
|
||||
@override String get keepSynced => 'Mantieni sincronizzato';
|
||||
@override String get downloadOnce => 'Scarica una volta';
|
||||
@override String keepNUnwatched({required Object count}) => 'Mantieni ${count} non visti';
|
||||
@@ -1780,7 +1756,6 @@ class _TranslationsAddServerIt extends TranslationsAddServerEn {
|
||||
@override String quickConnectFailed({required Object error}) => 'Quick Connect non riuscito: ${error}';
|
||||
@override String get addPlexTitle => 'Accedi con Plex';
|
||||
@override String get pinExpired => 'PIN scaduto prima dell\'accesso. Riprova.';
|
||||
@override String get duplicatePlexAccount => 'Accesso a Plex già effettuato. Esci per cambiare account.';
|
||||
@override String failedToRegisterAccount({required Object error}) => 'Registrazione account non riuscita: ${error}';
|
||||
@override String get enterJellyfinUrlError => 'Inserisci l\'URL del tuo server Jellyfin';
|
||||
@override String get addConnectionTitle => 'Aggiungi connessione';
|
||||
@@ -1906,7 +1881,6 @@ class _TranslationsLibrariesSortLabelsIt extends TranslationsLibrariesSortLabels
|
||||
@override String get communityRating => 'Valutazione della community';
|
||||
@override String get criticRating => 'Valutazione critica';
|
||||
@override String get userRating => 'Valutazione utente';
|
||||
@override String get lastPlayed => 'Ultima riproduzione';
|
||||
@override String get datePlayed => 'Data di riproduzione';
|
||||
@override String get playCount => 'Riproduzioni';
|
||||
@override String get productionYear => 'Anno di produzione';
|
||||
@@ -1965,7 +1939,6 @@ class _TranslationsCompanionRemoteSessionIt extends TranslationsCompanionRemoteS
|
||||
|
||||
// Translations
|
||||
@override String get startingServer => 'Avvio del server remoto...';
|
||||
@override String get failedToCreate => 'Impossibile avviare il server remoto:';
|
||||
@override String get hostAddress => 'Indirizzo host';
|
||||
@override String get connected => 'Connesso';
|
||||
@override String get serverRunning => 'Server remoto attivo';
|
||||
@@ -2047,6 +2020,8 @@ class _TranslationsCompanionRemoteErrorsIt extends TranslationsCompanionRemoteEr
|
||||
// Translations
|
||||
@override String get noNetworkInterface => 'Nessuna interfaccia di rete trovata';
|
||||
@override String get authenticationFailed => 'Autenticazione non riuscita';
|
||||
@override String serverStartFailed({required Object error}) => 'Impossibile avviare il server remoto: ${error}';
|
||||
@override String commandFailed({required Object error}) => 'Impossibile inviare il comando remoto: ${error}';
|
||||
@override String get joinTimedOut => 'Tempo scaduto durante l’accesso alla sessione';
|
||||
@override String get failedToConnectAnyAddress => 'Impossibile connettersi a qualsiasi indirizzo';
|
||||
@override String connectionLostAfterAttempts({required Object attempts}) => 'Connessione persa dopo ${attempts} tentativi';
|
||||
@@ -2123,7 +2098,6 @@ extension on TranslationsIt {
|
||||
dynamic _flatMapFunction(String path) {
|
||||
return switch (path) {
|
||||
'app.title' => 'Plezy',
|
||||
'auth.signIn' => 'Accedi',
|
||||
'auth.signInWithPlex' => 'Accedi con Plex',
|
||||
'auth.showQRCode' => 'Mostra QR Code',
|
||||
'auth.authenticate' => 'Autenticazione',
|
||||
@@ -2174,10 +2148,8 @@ extension on TranslationsIt {
|
||||
'common.episodeNumberTitle' => ({required Object number, required Object title}) => 'Episodio ${number} - ${title}',
|
||||
'common.chapterNumber' => ({required Object number}) => 'Capitolo ${number}',
|
||||
'common.reconnect' => 'Riconnetti',
|
||||
'common.exit' => 'Esci',
|
||||
'common.viewAll' => 'Mostra tutto',
|
||||
'common.checkingNetwork' => 'Verifica rete...',
|
||||
'common.refreshingServers' => 'Aggiornamento server...',
|
||||
'common.loadingServers' => 'Caricamento server...',
|
||||
'common.connectingToServers' => 'Connessione ai server...',
|
||||
'common.startingOfflineMode' => 'Avvio modalità offline...',
|
||||
@@ -2251,6 +2223,12 @@ extension on TranslationsIt {
|
||||
'settings.tvFullCardLayoutDescription' => 'Usa schede TV solo immagine con i nomi degli attori sovrapposti',
|
||||
'settings.focusGlow' => 'Bagliore di selezione',
|
||||
'settings.focusGlowDescription' => 'Mostra un leggero bagliore attorno alla scheda selezionata',
|
||||
'settings.visualEffects' => 'Effetti visivi',
|
||||
'settings.visualEffectsAuto' => 'Automatico',
|
||||
'settings.visualEffectsAutoDescription' => 'Riduci automaticamente gli effetti sui dispositivi a basso consumo',
|
||||
'settings.visualEffectsFull' => 'Completi',
|
||||
'settings.visualEffectsReduced' => 'Ridotti',
|
||||
'settings.visualEffectsReducedDescription' => 'Meno animazioni e immagini a risoluzione inferiore',
|
||||
'settings.hideSpoilers' => 'Nascondi spoiler per episodi non visti',
|
||||
'settings.hideSpoilersDescription' => 'Sfoca miniature e descrizioni degli episodi non visti',
|
||||
'settings.playerBackend' => 'Motore di riproduzione',
|
||||
@@ -2263,7 +2241,7 @@ extension on TranslationsIt {
|
||||
'settings.bufferSizeAuto' => 'Auto (Consigliato)',
|
||||
'settings.bufferSizeWarning' => ({required Object heap, required Object size}) => '${heap}MB di memoria disponibile. Un buffer di ${size}MB può influire sulla riproduzione.',
|
||||
'settings.defaultQualityTitle' => 'Qualità predefinita',
|
||||
'settings.defaultQualityDescription' => 'Utilizzato all\'avvio della riproduzione. Valori più bassi riducono la larghezza di banda.',
|
||||
'settings.musicQualityTitle' => 'Qualità musicale',
|
||||
'settings.subtitleStyling' => 'Stile sottotitoli',
|
||||
'settings.subtitleStylingDescription' => 'Personalizza l\'aspetto dei sottotitoli',
|
||||
'settings.smallSkipDuration' => 'Durata skip breve',
|
||||
@@ -2357,10 +2335,9 @@ extension on TranslationsIt {
|
||||
'settings.maxVolumePercent' => ({required Object percent}) => '${percent}%',
|
||||
'settings.discordRichPresence' => 'Discord Rich Presence',
|
||||
'settings.discordRichPresenceDescription' => 'Mostra su Discord cosa stai guardando',
|
||||
'settings.trakt' => 'Trakt',
|
||||
'settings.traktDescription' => 'Sincronizza la cronologia di visione con Trakt',
|
||||
'settings.services' => 'Servizi',
|
||||
'settings.servicesDescription' => 'Connetti Trakt, MyAnimeList, Seerr e altro',
|
||||
'settings.manageLibrariesDescription' => 'Riordina e nascondi le librerie',
|
||||
'settings.companionRemoteServer' => 'Server telecomando',
|
||||
'settings.companionRemoteServerDescription' => 'Consenti ai dispositivi mobili nella tua rete di controllare questa app',
|
||||
'settings.autoPip' => 'Picture-in-Picture automatico',
|
||||
@@ -2423,7 +2400,6 @@ extension on TranslationsIt {
|
||||
'settings.showNavBarLabels' => 'Mostra etichette barra di navigazione',
|
||||
'settings.showNavBarLabelsDescription' => 'Mostra le etichette sotto le icone della barra di navigazione',
|
||||
'settings.startupSection' => 'Sezione di avvio',
|
||||
'settings.startupSectionDescription' => 'Scegli quale sezione apre Plezy all\'avvio',
|
||||
'settings.liveTvDefaultFavorites' => 'Canali preferiti predefiniti',
|
||||
'settings.liveTvDefaultFavoritesDescription' => 'Mostra solo i canali preferiti all\'apertura della TV dal vivo',
|
||||
'settings.display' => 'Schermo',
|
||||
@@ -2435,13 +2411,6 @@ extension on TranslationsIt {
|
||||
'settings.subtitlesAndConfig' => 'Sottotitoli e configurazione',
|
||||
'settings.seekAndTiming' => 'Ricerca e tempistica',
|
||||
'settings.behavior' => 'Comportamento',
|
||||
'settings.manageLibrariesDescription' => 'Riordina e nascondi le librerie',
|
||||
'settings.visualEffects' => 'Effetti visivi',
|
||||
'settings.visualEffectsAuto' => 'Automatico',
|
||||
'settings.visualEffectsAutoDescription' => 'Riduci automaticamente gli effetti sui dispositivi a basso consumo',
|
||||
'settings.visualEffectsFull' => 'Completi',
|
||||
'settings.visualEffectsReduced' => 'Ridotti',
|
||||
'settings.visualEffectsReducedDescription' => 'Meno animazioni e immagini a risoluzione inferiore',
|
||||
'search.hint' => 'Cerca film. spettacoli, musica...',
|
||||
'search.tryDifferentTerm' => 'Prova altri termini di ricerca',
|
||||
'search.searchYourMedia' => 'Cerca nei tuoi media',
|
||||
@@ -2518,14 +2487,11 @@ extension on TranslationsIt {
|
||||
'mediaMenu.playVersion' => 'Riproduci versione...',
|
||||
'rateSheet.title' => 'Valuta',
|
||||
'rateSheet.server' => 'Server',
|
||||
'rateSheet.starValue' => ({required Object rating}) => '${rating} / 5',
|
||||
'rateSheet.scoreValue' => ({required Object score}) => '${score} / 10',
|
||||
'rateSheet.setScore' => 'Imposta un punteggio',
|
||||
'rateSheet.favorite' => 'Preferito',
|
||||
'rateSheet.favorited' => 'Aggiunto ai preferiti',
|
||||
'rateSheet.saved' => 'Salvato',
|
||||
'rateSheet.notAvailable' => 'Nessuna corrispondenza trovata',
|
||||
'rateSheet.noConnectedServices' => 'Connetti un servizio nelle Impostazioni per valutare lì.',
|
||||
'rateSheet.favorite' => 'Preferito',
|
||||
'rateSheet.favorited' => 'Aggiunto ai preferiti',
|
||||
'accessibility.mediaCardMovie' => ({required Object title}) => '${title}, film',
|
||||
'accessibility.mediaCardShow' => ({required Object title}) => '${title}, serie TV',
|
||||
'accessibility.mediaCardEpisode' => ({required Object title, required Object episodeInfo}) => '${title}, ${episodeInfo}',
|
||||
@@ -2534,6 +2500,14 @@ extension on TranslationsIt {
|
||||
'accessibility.mediaCardPartiallyWatched' => ({required Object percent}) => '${percent} percento visto',
|
||||
'accessibility.mediaCardUnwatched' => 'non visto',
|
||||
'accessibility.tapToPlay' => 'Tocca per riprodurre',
|
||||
'accessibility.decrease' => 'Diminuisci',
|
||||
'accessibility.increase' => 'Aumenta',
|
||||
'accessibility.decreaseValue' => ({required Object label}) => 'Diminuisci ${label}',
|
||||
'accessibility.increaseValue' => ({required Object label}) => 'Aumenta ${label}',
|
||||
'accessibility.hue' => 'Tonalità',
|
||||
'accessibility.saturation' => 'Saturazione',
|
||||
'accessibility.brightness' => 'Luminosità',
|
||||
'accessibility.hexColor' => 'Colore esadecimale',
|
||||
'tooltips.shufflePlay' => 'Riproduzione casuale',
|
||||
'tooltips.playTrailer' => 'Riproduci trailer',
|
||||
'tooltips.markAsWatched' => 'Segna come visto',
|
||||
@@ -2575,13 +2549,11 @@ extension on TranslationsIt {
|
||||
'videoControls.settingsButton' => 'Impostazioni di riproduzione',
|
||||
'videoControls.tracksButton' => 'Audio e sottotitoli',
|
||||
'videoControls.chaptersButton' => 'Capitoli',
|
||||
'videoControls.versionsButton' => 'Versioni video',
|
||||
'videoControls.versionQualityButton' => 'Versione e qualità',
|
||||
'videoControls.versionColumnHeader' => 'Versione',
|
||||
'videoControls.qualityColumnHeader' => 'Qualità',
|
||||
'videoControls.qualityOriginal' => 'Originale',
|
||||
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
|
||||
'videoControls.qualityBandwidthEstimate' => ({required Object bitrate}) => '~${bitrate} Mbps',
|
||||
'videoControls.transcodeUnavailableFallback' => 'Transcodifica non disponibile — riproduzione in qualità originale',
|
||||
'videoControls.pipButton' => 'Modalità Picture-in-Picture',
|
||||
'videoControls.aspectRatioButton' => 'Proporzioni',
|
||||
@@ -2621,10 +2593,6 @@ extension on TranslationsIt {
|
||||
'videoControls.subtitleDownloaded' => 'Sottotitolo scaricato',
|
||||
'videoControls.subtitleDownloadFailed' => 'Impossibile scaricare il sottotitolo',
|
||||
'videoControls.searchLanguages' => 'Cerca lingue...',
|
||||
'userStatus.admin' => 'Admin',
|
||||
'userStatus.restricted' => 'Limitato',
|
||||
'userStatus.protected' => 'Protetto',
|
||||
'userStatus.current' => 'ATTUALE',
|
||||
'messages.markedAsWatched' => 'Segna come visto',
|
||||
'messages.markedAsUnwatched' => 'Segna come non visto',
|
||||
'messages.markedAsWatchedOffline' => 'Segnato come visto (sincronizzato online)',
|
||||
@@ -2634,8 +2602,6 @@ extension on TranslationsIt {
|
||||
'messages.errorLoading' => ({required Object error}) => 'Errore: ${error}',
|
||||
'messages.streamInterrupted' => 'La riproduzione si è interrotta. Premi Riproduci o scorri per riprovare.',
|
||||
'messages.fileInfoNotAvailable' => 'Informazioni sul file non disponibili',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Errore caricamento informazioni sul file: ${error}',
|
||||
'messages.errorLoadingSeries' => 'Errore caricamento serie',
|
||||
'messages.musicNotSupported' => 'La riproduzione musicale non è ancora supportata',
|
||||
@@ -2643,6 +2609,8 @@ extension on TranslationsIt {
|
||||
'messages.noProfilesAvailable' => 'Nessun profilo disponibile',
|
||||
'messages.contactAdminForProfiles' => 'Contatta l\'amministratore del server per aggiungere profili',
|
||||
'messages.unableToDetermineLibrarySection' => 'Impossibile determinare la sezione della libreria per questo elemento',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.logsCleared' => 'Log eliminati',
|
||||
'messages.logsCopied' => 'Log copiati negli appunti',
|
||||
'messages.noLogsAvailable' => 'Nessun log disponibile',
|
||||
@@ -2759,7 +2727,6 @@ extension on TranslationsIt {
|
||||
'profiles.pinExplain' => 'PIN a 4 cifre richiesto per cambiare profilo.',
|
||||
'profiles.continueButton' => 'Continua',
|
||||
'profiles.pinsDontMatch' => 'I PIN non corrispondono',
|
||||
'profiles.initializeServicesFailed' => 'Impossibile inizializzare i servizi profilo',
|
||||
'connections.sectionTitle' => 'Connessioni',
|
||||
'connections.addConnection' => 'Aggiungi connessione',
|
||||
'connections.addConnectionSubtitleNoProfile' => 'Accedi con Plex o collega un server Jellyfin',
|
||||
@@ -2770,7 +2737,6 @@ extension on TranslationsIt {
|
||||
'connections.editJellyfinTitle' => 'Modifica connessione Jellyfin',
|
||||
'connections.editJellyfinIntro' => ({required Object serverName}) => 'Aggiungi o rimuovi URL per ${serverName}. Plezy userà l\'URL raggiungibile con la latenza più bassa.',
|
||||
'discover.title' => 'Esplora',
|
||||
'discover.switchProfile' => 'Cambia profilo',
|
||||
'discover.noContentAvailable' => 'Nessun contenuto disponibile',
|
||||
'discover.addMediaToLibraries' => 'Aggiungi alcuni file multimediali alle tue librerie',
|
||||
'discover.continueWatching' => 'Continua a guardare',
|
||||
@@ -2797,8 +2763,6 @@ extension on TranslationsIt {
|
||||
'errors.connectionFailed' => 'Impossibile connettersi al server multimediale',
|
||||
'errors.failedToLoad' => ({required Object context, required Object error}) => 'Impossibile caricare ${context}: ${error}',
|
||||
'errors.noClientAvailable' => 'Nessun client disponibile',
|
||||
'errors.authenticationFailed' => ({required Object error}) => 'Autenticazione fallita: ${error}',
|
||||
'errors.couldNotLaunchUrl' => 'Impossibile avviare URL di autenticazione',
|
||||
'errors.pleaseEnterToken' => 'Inserisci token',
|
||||
'errors.invalidToken' => 'Token non valido',
|
||||
'errors.failedToVerifyToken' => ({required Object error}) => 'Verifica token fallita: ${error}',
|
||||
@@ -2823,6 +2787,8 @@ extension on TranslationsIt {
|
||||
'libraries.allLibrariesHidden' => 'Tutte le librerie sono nascoste',
|
||||
'libraries.hiddenLibrariesCount' => ({required Object count}) => 'Librerie nascoste (${count})',
|
||||
'libraries.thisLibraryIsEmpty' => 'Questa libreria è vuota',
|
||||
'libraries.noItemsMatchFilters' => 'Nessun elemento corrisponde ai filtri attivi',
|
||||
'libraries.resetFilters' => 'Reimposta filtri',
|
||||
'libraries.all' => 'Tutto',
|
||||
'libraries.clearAll' => 'Cancella tutto',
|
||||
'libraries.scanLibraryConfirm' => ({required Object title}) => 'Sei sicuro di voler scansionare "${title}"?',
|
||||
@@ -2871,7 +2837,6 @@ extension on TranslationsIt {
|
||||
'libraries.sortLabels.communityRating' => 'Valutazione della community',
|
||||
'libraries.sortLabels.criticRating' => 'Valutazione critica',
|
||||
'libraries.sortLabels.userRating' => 'Valutazione utente',
|
||||
'libraries.sortLabels.lastPlayed' => 'Ultima riproduzione',
|
||||
'libraries.sortLabels.datePlayed' => 'Data di riproduzione',
|
||||
'libraries.sortLabels.playCount' => 'Riproduzioni',
|
||||
'libraries.sortLabels.productionYear' => 'Anno di produzione',
|
||||
@@ -2885,14 +2850,11 @@ extension on TranslationsIt {
|
||||
'libraries.sortLabels.dateShared' => 'Data di condivisione',
|
||||
'libraries.sortLabels.latestEpisodeAirDate' => 'Data ultima messa in onda',
|
||||
'libraries.sortLabels.lastEpisodeDateAdded' => 'Data aggiunta ultimo episodio',
|
||||
'libraries.noItemsMatchFilters' => 'Nessun elemento corrisponde ai filtri attivi',
|
||||
'libraries.resetFilters' => 'Reimposta filtri',
|
||||
'about.title' => 'Informazioni',
|
||||
'about.openSourceLicenses' => 'Licenze Open Source',
|
||||
'about.versionLabel' => ({required Object version}) => 'Versione ${version}',
|
||||
'about.appDescription' => 'Un bellissimo client Plex e Jellyfin per Flutter',
|
||||
'about.viewLicensesDescription' => 'Visualizza le licenze delle librerie di terze parti',
|
||||
'serverSelection.allServerConnectionsFailed' => 'Impossibile connettersi ai server. Controlla la rete.',
|
||||
'serverSelection.noServersFoundForAccount' => ({required Object username, required Object email}) => 'Nessun server trovato per ${username} (${email})',
|
||||
'serverSelection.failedToLoadServers' => ({required Object error}) => 'Impossibile caricare i server: ${error}',
|
||||
'hubDetail.title' => 'Titolo',
|
||||
@@ -2926,10 +2888,6 @@ extension on TranslationsIt {
|
||||
'explore.rows.trending' => 'Di tendenza',
|
||||
'explore.rows.upcomingMovies' => 'Film in arrivo',
|
||||
'explore.rows.upcomingShows' => 'Serie TV in arrivo',
|
||||
'explore.searchHint' => ({required Object source}) => 'Cerca su ${source}',
|
||||
'explore.searchEmpty' => ({required Object query}) => 'Nessun risultato per "${query}"',
|
||||
'explore.searchPrompt' => ({required Object source}) => 'Cerca film e serie TV su ${source}.',
|
||||
'explore.searchFailed' => 'Ricerca fallita. Controlla la connessione e riprova.',
|
||||
'explore.status.airing' => 'In onda',
|
||||
'explore.status.ended' => 'Conclusa',
|
||||
'explore.status.canceled' => 'Cancellata',
|
||||
@@ -2942,14 +2900,19 @@ extension on TranslationsIt {
|
||||
'explore.watchlistUpdateFailed' => 'Impossibile aggiornare la Watchlist',
|
||||
'explore.notInLibrary' => 'Non è nella tua libreria',
|
||||
'explore.inTheseLibraries' => 'In queste librerie',
|
||||
'explore.availableOn' => ({required Object server}) => 'Disponibile su ${server}',
|
||||
'explore.checkingLibrary' => 'Controllo della tua libreria...',
|
||||
'explore.emptyTitle' => 'Ancora niente qui',
|
||||
'explore.emptyMessage' => ({required Object source}) => 'Le righe da ${source} appariranno qui una volta che avranno dei contenuti.',
|
||||
'explore.searchHint' => ({required Object source}) => 'Cerca su ${source}',
|
||||
'explore.searchEmpty' => ({required Object query}) => 'Nessun risultato per "${query}"',
|
||||
'explore.searchPrompt' => ({required Object source}) => 'Cerca film e serie TV su ${source}.',
|
||||
'explore.searchFailed' => 'Ricerca fallita. Controlla la connessione e riprova.',
|
||||
'liveTv.title' => 'TV in diretta',
|
||||
'liveTv.guide' => 'Guida',
|
||||
'liveTv.noChannels' => 'Nessun canale disponibile',
|
||||
'liveTv.noDvr' => 'Nessun DVR configurato su nessun server',
|
||||
'liveTv.serverUnavailable' => 'Il server TV in diretta non è disponibile.',
|
||||
'liveTv.serverNotConnected' => 'Il server TV in diretta non è connesso.',
|
||||
'liveTv.noPrograms' => 'Nessun dato di programma disponibile',
|
||||
'liveTv.liveStreamFailed' => 'Streaming live non riuscito',
|
||||
'liveTv.unknownProgram' => 'Programma sconosciuto',
|
||||
@@ -2985,7 +2948,6 @@ extension on TranslationsIt {
|
||||
'liveTv.scheduledRecordings' => 'Programmate',
|
||||
'liveTv.recordingRules' => 'Regole di registrazione',
|
||||
'liveTv.noScheduledRecordings' => 'Nessuna registrazione programmata',
|
||||
'liveTv.noRecordingRules' => 'Nessuna regola di registrazione',
|
||||
'liveTv.manageRecording' => 'Gestisci registrazione',
|
||||
'liveTv.cancelRecording' => 'Annulla registrazione',
|
||||
'liveTv.cancelRecordingTitle' => 'Annullare questa registrazione?',
|
||||
@@ -3002,7 +2964,6 @@ extension on TranslationsIt {
|
||||
'liveTv.recordingCancelled' => 'Registrazione annullata',
|
||||
'liveTv.recordingRuleDeleted' => 'Regola di registrazione eliminata',
|
||||
'liveTv.processRecordingRules' => 'Rivaluta regole',
|
||||
'liveTv.loadingRecordings' => 'Caricamento registrazioni...',
|
||||
'liveTv.recordingInProgress' => 'Registrazione in corso',
|
||||
'liveTv.recordingsCount' => ({required Object count}) => '${count} programmate',
|
||||
'liveTv.editRule' => 'Modifica regola',
|
||||
@@ -3014,7 +2975,6 @@ extension on TranslationsIt {
|
||||
'collections.title' => 'Raccolte',
|
||||
'collections.collection' => 'Raccolta',
|
||||
'collections.empty' => 'La raccolta è vuota',
|
||||
'collections.unknownLibrarySection' => 'Impossibile eliminare: sezione libreria sconosciuta',
|
||||
'collections.deleteCollection' => 'Elimina raccolta',
|
||||
'collections.deleteConfirm' => ({required Object title}) => 'Eliminare "${title}"? Non si può annullare.',
|
||||
'collections.deleted' => 'Raccolta eliminata',
|
||||
@@ -3052,6 +3012,7 @@ extension on TranslationsIt {
|
||||
'playlists.itemAdded' => 'Aggiunto alla playlist',
|
||||
'playlists.itemRemoved' => 'Rimosso dalla playlist',
|
||||
'playlists.selectPlaylist' => 'Seleziona playlist',
|
||||
'playlists.searchPlaylists' => 'Cerca playlist...',
|
||||
'playlists.errorCreating' => 'Errore durante la creazione della playlist',
|
||||
'playlists.errorDeleting' => 'Errore durante l\'eliminazione della playlist',
|
||||
'playlists.errorLoading' => 'Errore durante il caricamento delle playlist',
|
||||
@@ -3134,22 +3095,20 @@ extension on TranslationsIt {
|
||||
'watchTogether.participantResumed' => ({required Object name}) => '${name} ha ripreso',
|
||||
'watchTogether.participantSeeked' => ({required Object name}) => '${name} ha cercato',
|
||||
'watchTogether.participantBuffering' => ({required Object name}) => '${name} sta caricando',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} usa una versione precedente dell\'app — sincronizzazione non disponibile',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Ripresa senza ${name}',
|
||||
'watchTogether.waitingForParticipants' => 'In attesa che gli altri carichino...',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'In attesa di ${name}...',
|
||||
'watchTogether.recentRooms' => 'Stanze recenti',
|
||||
'watchTogether.renameRoom' => 'Rinomina stanza',
|
||||
'watchTogether.removeRoom' => 'Rimuovi',
|
||||
'watchTogether.guestSwitchUnavailable' => 'Impossibile cambiare — server non disponibile per la sincronizzazione',
|
||||
'watchTogether.guestSwitchFailed' => 'Impossibile cambiare — contenuto non trovato su questo server',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} usa una versione precedente dell\'app — sincronizzazione non disponibile',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Ripresa senza ${name}',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'In attesa di ${name}...',
|
||||
'downloads.title' => 'Download',
|
||||
'downloads.manage' => 'Gestisci',
|
||||
'downloads.tvShows' => 'Serie TV',
|
||||
'downloads.movies' => 'Film',
|
||||
'downloads.music' => 'Musica',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.tracksQueued' => ({required Object count}) => '${count} brani in coda per il download',
|
||||
'downloads.noDownloads' => 'Nessun download',
|
||||
'downloads.noDownloadsDescription' => 'I contenuti scaricati appariranno qui per la visualizzazione offline',
|
||||
@@ -3164,6 +3123,8 @@ extension on TranslationsIt {
|
||||
'downloads.deleteConfirm' => ({required Object title}) => 'Eliminare "${title}" da questo dispositivo?',
|
||||
'downloads.cancelledDownloadTitle' => 'Download annullato',
|
||||
'downloads.cancelledDownloadMessage' => 'Questo download è stato annullato. Cosa vuoi fare?',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.allEpisodesAlreadyDownloaded' => 'Tutti gli episodi sono già stati scaricati',
|
||||
'downloads.resumeDownload' => 'Riprendi download',
|
||||
'downloads.cancelledDownload' => 'Download annullato',
|
||||
@@ -3187,7 +3148,6 @@ extension on TranslationsIt {
|
||||
'downloads.customAmount' => 'Quantità personalizzata...',
|
||||
'downloads.includeSpecials' => 'Includi gli speciali',
|
||||
'downloads.howManyEpisodes' => 'Quanti episodi?',
|
||||
'downloads.itemsQueued' => ({required Object count}) => '${count} elementi in coda per il download',
|
||||
'downloads.keepSynced' => 'Mantieni sincronizzato',
|
||||
'downloads.downloadOnce' => 'Scarica una volta',
|
||||
'downloads.keepNUnwatched' => ({required Object count}) => 'Mantieni ${count} non visti',
|
||||
@@ -3231,7 +3191,6 @@ extension on TranslationsIt {
|
||||
'companionRemote.connectedTo' => ({required Object name}) => 'Connesso a ${name}',
|
||||
'companionRemote.unknownDevice' => 'Dispositivo sconosciuto',
|
||||
'companionRemote.session.startingServer' => 'Avvio del server remoto...',
|
||||
'companionRemote.session.failedToCreate' => 'Impossibile avviare il server remoto:',
|
||||
'companionRemote.session.hostAddress' => 'Indirizzo host',
|
||||
'companionRemote.session.connected' => 'Connesso',
|
||||
'companionRemote.session.serverRunning' => 'Server remoto attivo',
|
||||
@@ -3286,6 +3245,8 @@ extension on TranslationsIt {
|
||||
'companionRemote.remote.searchHint' => 'Cerca sul desktop...',
|
||||
'companionRemote.errors.noNetworkInterface' => 'Nessuna interfaccia di rete trovata',
|
||||
'companionRemote.errors.authenticationFailed' => 'Autenticazione non riuscita',
|
||||
'companionRemote.errors.serverStartFailed' => ({required Object error}) => 'Impossibile avviare il server remoto: ${error}',
|
||||
'companionRemote.errors.commandFailed' => ({required Object error}) => 'Impossibile inviare il comando remoto: ${error}',
|
||||
'companionRemote.errors.joinTimedOut' => 'Tempo scaduto durante l’accesso alla sessione',
|
||||
'companionRemote.errors.failedToConnectAnyAddress' => 'Impossibile connettersi a qualsiasi indirizzo',
|
||||
'companionRemote.errors.connectionLostAfterAttempts' => ({required Object attempts}) => 'Connessione persa dopo ${attempts} tentativi',
|
||||
@@ -3530,7 +3491,6 @@ extension on TranslationsIt {
|
||||
'addServer.quickConnectFailed' => ({required Object error}) => 'Quick Connect non riuscito: ${error}',
|
||||
'addServer.addPlexTitle' => 'Accedi con Plex',
|
||||
'addServer.pinExpired' => 'PIN scaduto prima dell\'accesso. Riprova.',
|
||||
'addServer.duplicatePlexAccount' => 'Accesso a Plex già effettuato. Esci per cambiare account.',
|
||||
'addServer.failedToRegisterAccount' => ({required Object error}) => 'Registrazione account non riuscita: ${error}',
|
||||
'addServer.enterJellyfinUrlError' => 'Inserisci l\'URL del tuo server Jellyfin',
|
||||
'addServer.addConnectionTitle' => 'Aggiungi connessione',
|
||||
|
||||
+68
-108
@@ -53,7 +53,6 @@ class TranslationsJa extends Translations with BaseTranslations<AppLocale, Trans
|
||||
@override late final _TranslationsAccessibilityJa accessibility = _TranslationsAccessibilityJa._(_root);
|
||||
@override late final _TranslationsTooltipsJa tooltips = _TranslationsTooltipsJa._(_root);
|
||||
@override late final _TranslationsVideoControlsJa videoControls = _TranslationsVideoControlsJa._(_root);
|
||||
@override late final _TranslationsUserStatusJa userStatus = _TranslationsUserStatusJa._(_root);
|
||||
@override late final _TranslationsMessagesJa messages = _TranslationsMessagesJa._(_root);
|
||||
@override late final _TranslationsSubtitlingStylingJa subtitlingStyling = _TranslationsSubtitlingStylingJa._(_root);
|
||||
@override late final _TranslationsMpvConfigJa mpvConfig = _TranslationsMpvConfigJa._(_root);
|
||||
@@ -107,7 +106,6 @@ class _TranslationsAuthJa extends TranslationsAuthEn {
|
||||
final TranslationsJa _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get signIn => 'サインイン';
|
||||
@override String get signInWithPlex => 'Plexでサインイン';
|
||||
@override String get showQRCode => 'QRコードを表示';
|
||||
@override String get authenticate => '認証';
|
||||
@@ -167,10 +165,8 @@ class _TranslationsCommonJa extends TranslationsCommonEn {
|
||||
@override String episodeNumberTitle({required Object number, required Object title}) => 'エピソード${number} - ${title}';
|
||||
@override String chapterNumber({required Object number}) => 'チャプター${number}';
|
||||
@override String get reconnect => '再接続';
|
||||
@override String get exit => '終了';
|
||||
@override String get viewAll => 'すべて表示';
|
||||
@override String get checkingNetwork => 'ネットワークを確認中...';
|
||||
@override String get refreshingServers => 'サーバーを更新中...';
|
||||
@override String get loadingServers => 'サーバーを読み込み中...';
|
||||
@override String get connectingToServers => 'サーバーに接続中...';
|
||||
@override String get startingOfflineMode => 'オフラインモードを開始中...';
|
||||
@@ -271,6 +267,12 @@ class _TranslationsSettingsJa extends TranslationsSettingsEn {
|
||||
@override String get tvFullCardLayoutDescription => 'TVカードを画像のみで表示し、俳優名を重ねて表示します';
|
||||
@override String get focusGlow => 'フォーカス時の光彩';
|
||||
@override String get focusGlowDescription => 'フォーカス中のカードの周りに柔らかい光彩を表示します';
|
||||
@override String get visualEffects => '視覚効果';
|
||||
@override String get visualEffectsAuto => '自動';
|
||||
@override String get visualEffectsAutoDescription => '低性能なデバイスでは効果を自動的に減らします';
|
||||
@override String get visualEffectsFull => 'フル';
|
||||
@override String get visualEffectsReduced => '軽減';
|
||||
@override String get visualEffectsReducedDescription => 'アニメーションを減らし、低解像度のアートワークを使用します';
|
||||
@override String get hideSpoilers => '未視聴エピソードのネタバレを非表示';
|
||||
@override String get hideSpoilersDescription => '未視聴エピソードのサムネイルと説明をぼかします';
|
||||
@override String get playerBackend => 'プレーヤーバックエンド';
|
||||
@@ -283,7 +285,7 @@ class _TranslationsSettingsJa extends TranslationsSettingsEn {
|
||||
@override String get bufferSizeAuto => '自動(推奨)';
|
||||
@override String bufferSizeWarning({required Object heap, required Object size}) => '${heap}MBのメモリが利用可能です。${size}MBのバッファは再生に影響する可能性があります。';
|
||||
@override String get defaultQualityTitle => 'デフォルト画質';
|
||||
@override String get defaultQualityDescription => '再生開始時に使用。低い値ほど帯域幅が削減されます。';
|
||||
@override String get musicQualityTitle => '音楽の音質';
|
||||
@override String get subtitleStyling => '字幕スタイル';
|
||||
@override String get subtitleStylingDescription => '字幕の外観をカスタマイズ';
|
||||
@override String get smallSkipDuration => '短いスキップ時間';
|
||||
@@ -377,10 +379,9 @@ class _TranslationsSettingsJa extends TranslationsSettingsEn {
|
||||
@override String maxVolumePercent({required Object percent}) => '${percent}%';
|
||||
@override String get discordRichPresence => 'Discord Rich Presence';
|
||||
@override String get discordRichPresenceDescription => 'Discordで視聴中の内容を表示';
|
||||
@override String get trakt => 'Trakt';
|
||||
@override String get traktDescription => '視聴履歴を Trakt と同期';
|
||||
@override String get services => 'サービス';
|
||||
@override String get servicesDescription => 'Trakt、MyAnimeList、Seerr などを接続';
|
||||
@override String get manageLibrariesDescription => 'ライブラリを並べ替えたり非表示にしたりできます';
|
||||
@override String get companionRemoteServer => 'コンパニオンリモートサーバー';
|
||||
@override String get companionRemoteServerDescription => 'ネットワーク上のモバイルデバイスからこのアプリを操作できるようにする';
|
||||
@override String get autoPip => '自動ピクチャーインピクチャー';
|
||||
@@ -443,7 +444,6 @@ class _TranslationsSettingsJa extends TranslationsSettingsEn {
|
||||
@override String get showNavBarLabels => 'ナビゲーションバーラベルを表示';
|
||||
@override String get showNavBarLabelsDescription => 'ナビゲーションバーアイコンの下にテキストラベルを表示';
|
||||
@override String get startupSection => '起動時のセクション';
|
||||
@override String get startupSectionDescription => '起動時に Plezy が開くセクションを選択します';
|
||||
@override String get liveTvDefaultFavorites => 'お気に入りチャンネルをデフォルトに';
|
||||
@override String get liveTvDefaultFavoritesDescription => 'ライブTV を開いたときにお気に入りチャンネルのみ表示';
|
||||
@override String get display => 'ディスプレイ';
|
||||
@@ -455,13 +455,6 @@ class _TranslationsSettingsJa extends TranslationsSettingsEn {
|
||||
@override String get subtitlesAndConfig => '字幕と設定';
|
||||
@override String get seekAndTiming => 'シークとタイミング';
|
||||
@override String get behavior => '動作';
|
||||
@override String get manageLibrariesDescription => 'ライブラリを並べ替えたり非表示にしたりできます';
|
||||
@override String get visualEffects => '視覚効果';
|
||||
@override String get visualEffectsAuto => '自動';
|
||||
@override String get visualEffectsAutoDescription => '低性能なデバイスでは効果を自動的に減らします';
|
||||
@override String get visualEffectsFull => 'フル';
|
||||
@override String get visualEffectsReduced => '軽減';
|
||||
@override String get visualEffectsReducedDescription => 'アニメーションを減らし、低解像度のアートワークを使用します';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -559,14 +552,11 @@ class _TranslationsRateSheetJa extends TranslationsRateSheetEn {
|
||||
// Translations
|
||||
@override String get title => '評価';
|
||||
@override String get server => 'サーバー';
|
||||
@override String starValue({required Object rating}) => '${rating} / 5';
|
||||
@override String scoreValue({required Object score}) => '${score} / 10';
|
||||
@override String get setScore => 'スコアを設定';
|
||||
@override String get favorite => 'お気に入り';
|
||||
@override String get favorited => 'お気に入りに追加済み';
|
||||
@override String get saved => '保存済み';
|
||||
@override String get notAvailable => '一致なし';
|
||||
@override String get noConnectedServices => '評価するには、設定でサービスを接続してください。';
|
||||
@override String get favorite => 'お気に入り';
|
||||
@override String get favorited => 'お気に入りに追加済み';
|
||||
}
|
||||
|
||||
// Path: accessibility
|
||||
@@ -584,6 +574,14 @@ class _TranslationsAccessibilityJa extends TranslationsAccessibilityEn {
|
||||
@override String mediaCardPartiallyWatched({required Object percent}) => '${percent}パーセント視聴済み';
|
||||
@override String get mediaCardUnwatched => '未視聴';
|
||||
@override String get tapToPlay => 'タップして再生';
|
||||
@override String get decrease => '下げる';
|
||||
@override String get increase => '上げる';
|
||||
@override String decreaseValue({required Object label}) => '${label}を下げる';
|
||||
@override String increaseValue({required Object label}) => '${label}を上げる';
|
||||
@override String get hue => '色相';
|
||||
@override String get saturation => '彩度';
|
||||
@override String get brightness => '明るさ';
|
||||
@override String get hexColor => '16進カラー';
|
||||
}
|
||||
|
||||
// Path: tooltips
|
||||
@@ -643,13 +641,11 @@ class _TranslationsVideoControlsJa extends TranslationsVideoControlsEn {
|
||||
@override String get settingsButton => '再生設定';
|
||||
@override String get tracksButton => '音声と字幕';
|
||||
@override String get chaptersButton => 'チャプター';
|
||||
@override String get versionsButton => '動画バージョン';
|
||||
@override String get versionQualityButton => 'バージョンと画質';
|
||||
@override String get versionColumnHeader => 'バージョン';
|
||||
@override String get qualityColumnHeader => '画質';
|
||||
@override String get qualityOriginal => 'オリジナル';
|
||||
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
|
||||
@override String qualityBandwidthEstimate({required Object bitrate}) => '~${bitrate} Mbps';
|
||||
@override String get transcodeUnavailableFallback => 'トランスコードは利用できません — オリジナル画質で再生中';
|
||||
@override String get pipButton => 'ピクチャーインピクチャーモード';
|
||||
@override String get aspectRatioButton => 'アスペクト比';
|
||||
@@ -685,19 +681,6 @@ class _TranslationsVideoControlsJa extends TranslationsVideoControlsEn {
|
||||
@override String get searchLanguages => '言語を検索...';
|
||||
}
|
||||
|
||||
// Path: userStatus
|
||||
class _TranslationsUserStatusJa extends TranslationsUserStatusEn {
|
||||
_TranslationsUserStatusJa._(TranslationsJa root) : this._root = root, super.internal(root);
|
||||
|
||||
final TranslationsJa _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get admin => '管理者';
|
||||
@override String get restricted => '制限付き';
|
||||
@override String get protected => '保護済み';
|
||||
@override String get current => '現在';
|
||||
}
|
||||
|
||||
// Path: messages
|
||||
class _TranslationsMessagesJa extends TranslationsMessagesEn {
|
||||
_TranslationsMessagesJa._(TranslationsJa root) : this._root = root, super.internal(root);
|
||||
@@ -873,7 +856,6 @@ class _TranslationsProfilesJa extends TranslationsProfilesEn {
|
||||
@override String get pinExplain => 'プロフィール切り替えには4桁のPINが必要です。';
|
||||
@override String get continueButton => '続ける';
|
||||
@override String get pinsDontMatch => 'PINが一致しません';
|
||||
@override String get initializeServicesFailed => 'プロフィールサービスの初期化に失敗しました';
|
||||
}
|
||||
|
||||
// Path: connections
|
||||
@@ -902,7 +884,6 @@ class _TranslationsDiscoverJa extends TranslationsDiscoverEn {
|
||||
|
||||
// Translations
|
||||
@override String get title => '探す';
|
||||
@override String get switchProfile => 'プロフィール切替';
|
||||
@override String get noContentAvailable => 'コンテンツがありません';
|
||||
@override String get addMediaToLibraries => 'ライブラリにメディアを追加してください';
|
||||
@override String get continueWatching => '視聴を続ける';
|
||||
@@ -938,8 +919,6 @@ class _TranslationsErrorsJa extends TranslationsErrorsEn {
|
||||
@override String get connectionFailed => 'メディアサーバーに接続できません';
|
||||
@override String failedToLoad({required Object context, required Object error}) => '${context}の読み込みに失敗しました: ${error}';
|
||||
@override String get noClientAvailable => 'クライアントが利用できません';
|
||||
@override String authenticationFailed({required Object error}) => '認証に失敗しました: ${error}';
|
||||
@override String get couldNotLaunchUrl => '認証URLを開けませんでした';
|
||||
@override String get pleaseEnterToken => 'トークンを入力してください';
|
||||
@override String get invalidToken => '無効なトークン';
|
||||
@override String failedToVerifyToken({required Object error}) => 'トークンの検証に失敗しました: ${error}';
|
||||
@@ -973,6 +952,8 @@ class _TranslationsLibrariesJa extends TranslationsLibrariesEn {
|
||||
@override String get allLibrariesHidden => 'すべてのライブラリが非表示です';
|
||||
@override String hiddenLibrariesCount({required Object count}) => '非表示のライブラリ (${count})';
|
||||
@override String get thisLibraryIsEmpty => 'このライブラリは空です';
|
||||
@override String get noItemsMatchFilters => '有効なフィルターに一致する項目はありません';
|
||||
@override String get resetFilters => 'フィルターをリセット';
|
||||
@override String get all => 'すべて';
|
||||
@override String get clearAll => 'すべてクリア';
|
||||
@override String scanLibraryConfirm({required Object title}) => '"${title}"をスキャンしてもよろしいですか?';
|
||||
@@ -998,8 +979,6 @@ class _TranslationsLibrariesJa extends TranslationsLibrariesEn {
|
||||
@override late final _TranslationsLibrariesGroupingsJa groupings = _TranslationsLibrariesGroupingsJa._(_root);
|
||||
@override late final _TranslationsLibrariesFilterCategoriesJa filterCategories = _TranslationsLibrariesFilterCategoriesJa._(_root);
|
||||
@override late final _TranslationsLibrariesSortLabelsJa sortLabels = _TranslationsLibrariesSortLabelsJa._(_root);
|
||||
@override String get noItemsMatchFilters => '有効なフィルターに一致する項目はありません';
|
||||
@override String get resetFilters => 'フィルターをリセット';
|
||||
}
|
||||
|
||||
// Path: about
|
||||
@@ -1023,7 +1002,6 @@ class _TranslationsServerSelectionJa extends TranslationsServerSelectionEn {
|
||||
final TranslationsJa _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get allServerConnectionsFailed => 'どのサーバーにも接続できませんでした。ネットワークを確認してください。';
|
||||
@override String noServersFoundForAccount({required Object username, required Object email}) => '${username} (${email})のサーバーが見つかりません';
|
||||
@override String failedToLoadServers({required Object error}) => 'サーバーの読み込みに失敗しました: ${error}';
|
||||
}
|
||||
@@ -1090,10 +1068,6 @@ class _TranslationsExploreJa extends TranslationsExploreEn {
|
||||
@override String get title => '探索';
|
||||
@override String get selectSource => 'ソースを選択';
|
||||
@override late final _TranslationsExploreRowsJa rows = _TranslationsExploreRowsJa._(_root);
|
||||
@override String searchHint({required Object source}) => '${source} で検索';
|
||||
@override String searchEmpty({required Object query}) => '「${query}」の結果が見つかりません';
|
||||
@override String searchPrompt({required Object source}) => '${source} で映画やテレビ番組を検索します。';
|
||||
@override String get searchFailed => '検索に失敗しました。接続を確認してもう一度お試しください。';
|
||||
@override late final _TranslationsExploreStatusJa status = _TranslationsExploreStatusJa._(_root);
|
||||
@override String episodeCount({required num n}) => (_root.$meta.cardinalResolver ?? PluralResolvers.cardinal('ja'))(n,
|
||||
other: '${n} 話',
|
||||
@@ -1105,10 +1079,13 @@ class _TranslationsExploreJa extends TranslationsExploreEn {
|
||||
@override String get watchlistUpdateFailed => 'ウォッチリストを更新できませんでした';
|
||||
@override String get notInLibrary => 'ライブラリにありません';
|
||||
@override String get inTheseLibraries => 'これらのライブラリにあります';
|
||||
@override String availableOn({required Object server}) => '${server}で視聴可能';
|
||||
@override String get checkingLibrary => 'ライブラリを確認中...';
|
||||
@override String get emptyTitle => 'まだ何もありません';
|
||||
@override String emptyMessage({required Object source}) => '${source}にコンテンツが追加されると、ここに表示されます。';
|
||||
@override String searchHint({required Object source}) => '${source} で検索';
|
||||
@override String searchEmpty({required Object query}) => '「${query}」の結果が見つかりません';
|
||||
@override String searchPrompt({required Object source}) => '${source} で映画やテレビ番組を検索します。';
|
||||
@override String get searchFailed => '検索に失敗しました。接続を確認してもう一度お試しください。';
|
||||
}
|
||||
|
||||
// Path: liveTv
|
||||
@@ -1122,6 +1099,8 @@ class _TranslationsLiveTvJa extends TranslationsLiveTvEn {
|
||||
@override String get guide => '番組表';
|
||||
@override String get noChannels => 'チャンネルがありません';
|
||||
@override String get noDvr => 'どのサーバーにもDVRが設定されていません';
|
||||
@override String get serverUnavailable => 'ライブTVサーバーを利用できません。';
|
||||
@override String get serverNotConnected => 'ライブTVサーバーに接続されていません。';
|
||||
@override String get noPrograms => '番組データがありません';
|
||||
@override String get liveStreamFailed => 'ライブストリームに失敗しました';
|
||||
@override String get unknownProgram => '不明な番組';
|
||||
@@ -1157,7 +1136,6 @@ class _TranslationsLiveTvJa extends TranslationsLiveTvEn {
|
||||
@override String get scheduledRecordings => '予約';
|
||||
@override String get recordingRules => '録画ルール';
|
||||
@override String get noScheduledRecordings => '予約された録画はありません';
|
||||
@override String get noRecordingRules => '録画ルールはまだありません';
|
||||
@override String get manageRecording => '録画を管理';
|
||||
@override String get cancelRecording => '録画をキャンセル';
|
||||
@override String get cancelRecordingTitle => 'この録画をキャンセルしますか?';
|
||||
@@ -1174,7 +1152,6 @@ class _TranslationsLiveTvJa extends TranslationsLiveTvEn {
|
||||
@override String get recordingCancelled => '録画をキャンセルしました';
|
||||
@override String get recordingRuleDeleted => '録画ルールを削除しました';
|
||||
@override String get processRecordingRules => 'ルールを再評価';
|
||||
@override String get loadingRecordings => '録画を読み込み中...';
|
||||
@override String get recordingInProgress => '録画中';
|
||||
@override String recordingsCount({required Object count}) => '${count} 件予約済み';
|
||||
@override String get editRule => 'ルールを編集';
|
||||
@@ -1195,7 +1172,6 @@ class _TranslationsCollectionsJa extends TranslationsCollectionsEn {
|
||||
@override String get title => 'コレクション';
|
||||
@override String get collection => 'コレクション';
|
||||
@override String get empty => 'コレクションは空です';
|
||||
@override String get unknownLibrarySection => '削除できません:不明なライブラリセクション';
|
||||
@override String get deleteCollection => 'コレクションを削除';
|
||||
@override String deleteConfirm({required Object title}) => '「${title}」を削除しますか?元に戻せません。';
|
||||
@override String get deleted => 'コレクションを削除しました';
|
||||
@@ -1242,6 +1218,7 @@ class _TranslationsPlaylistsJa extends TranslationsPlaylistsEn {
|
||||
@override String get itemAdded => 'プレイリストに追加しました';
|
||||
@override String get itemRemoved => 'プレイリストから削除しました';
|
||||
@override String get selectPlaylist => 'プレイリストを選択';
|
||||
@override String get searchPlaylists => 'プレイリストを検索...';
|
||||
@override String get errorCreating => 'プレイリストの作成に失敗しました';
|
||||
@override String get errorDeleting => 'プレイリストの削除に失敗しました';
|
||||
@override String get errorLoading => 'プレイリストの読み込みに失敗しました';
|
||||
@@ -1344,15 +1321,15 @@ class _TranslationsWatchTogetherJa extends TranslationsWatchTogetherEn {
|
||||
@override String participantResumed({required Object name}) => '${name}が再開しました';
|
||||
@override String participantSeeked({required Object name}) => '${name}がシークしました';
|
||||
@override String participantBuffering({required Object name}) => '${name}がバッファリング中';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} は古いバージョンのアプリを使用しているため、同期できません';
|
||||
@override String resumingWithout({required Object name}) => '${name} なしで再開';
|
||||
@override String get waitingForParticipants => '他の参加者の読み込みを待っています...';
|
||||
@override String waitingForName({required Object name}) => '${name}を待っています...';
|
||||
@override String get recentRooms => '最近のルーム';
|
||||
@override String get renameRoom => 'ルーム名を変更';
|
||||
@override String get removeRoom => '削除';
|
||||
@override String get guestSwitchUnavailable => '切り替えできません — サーバーが同期できません';
|
||||
@override String get guestSwitchFailed => '切り替えできません — このサーバーにコンテンツが見つかりません';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} は古いバージョンのアプリを使用しているため、同期できません';
|
||||
@override String resumingWithout({required Object name}) => '${name} なしで再開';
|
||||
@override String waitingForName({required Object name}) => '${name}を待っています...';
|
||||
}
|
||||
|
||||
// Path: downloads
|
||||
@@ -1404,7 +1381,6 @@ class _TranslationsDownloadsJa extends TranslationsDownloadsEn {
|
||||
@override String get customAmount => '数を指定...';
|
||||
@override String get includeSpecials => 'スペシャルを含める';
|
||||
@override String get howManyEpisodes => '何エピソード?';
|
||||
@override String itemsQueued({required Object count}) => '${count}件をダウンロードキューに追加';
|
||||
@override String get keepSynced => '同期を維持';
|
||||
@override String get downloadOnce => '一度だけダウンロード';
|
||||
@override String keepNUnwatched({required Object count}) => '未視聴を${count}件保持';
|
||||
@@ -1778,7 +1754,6 @@ class _TranslationsAddServerJa extends TranslationsAddServerEn {
|
||||
@override String quickConnectFailed({required Object error}) => 'Quick Connectに失敗しました: ${error}';
|
||||
@override String get addPlexTitle => 'Plexでサインイン';
|
||||
@override String get pinExpired => 'サインイン前にPINの有効期限が切れました。もう一度お試しください。';
|
||||
@override String get duplicatePlexAccount => 'すでにPlexにサインインしています。アカウントを切り替えるにはサインアウトしてください。';
|
||||
@override String failedToRegisterAccount({required Object error}) => 'アカウントの登録に失敗しました: ${error}';
|
||||
@override String get enterJellyfinUrlError => 'JellyfinサーバーのURLを入力してください';
|
||||
@override String get addConnectionTitle => '接続を追加';
|
||||
@@ -1904,7 +1879,6 @@ class _TranslationsLibrariesSortLabelsJa extends TranslationsLibrariesSortLabels
|
||||
@override String get communityRating => 'コミュニティ評価';
|
||||
@override String get criticRating => '批評家評価';
|
||||
@override String get userRating => 'ユーザー評価';
|
||||
@override String get lastPlayed => '最終再生';
|
||||
@override String get datePlayed => '再生日';
|
||||
@override String get playCount => '再生回数';
|
||||
@override String get productionYear => '製作年';
|
||||
@@ -1963,7 +1937,6 @@ class _TranslationsCompanionRemoteSessionJa extends TranslationsCompanionRemoteS
|
||||
|
||||
// Translations
|
||||
@override String get startingServer => 'リモートサーバーを起動中...';
|
||||
@override String get failedToCreate => 'リモートサーバーの起動に失敗しました:';
|
||||
@override String get hostAddress => 'ホストアドレス';
|
||||
@override String get connected => '接続済み';
|
||||
@override String get serverRunning => 'リモートサーバー稼働中';
|
||||
@@ -2045,6 +2018,8 @@ class _TranslationsCompanionRemoteErrorsJa extends TranslationsCompanionRemoteEr
|
||||
// Translations
|
||||
@override String get noNetworkInterface => 'ネットワークインターフェースが見つかりません';
|
||||
@override String get authenticationFailed => '認証に失敗しました';
|
||||
@override String serverStartFailed({required Object error}) => 'リモートサーバーを起動できませんでした: ${error}';
|
||||
@override String commandFailed({required Object error}) => 'リモートコマンドを送信できませんでした: ${error}';
|
||||
@override String get joinTimedOut => 'セッション参加がタイムアウトしました';
|
||||
@override String get failedToConnectAnyAddress => 'どのアドレスにも接続できませんでした';
|
||||
@override String connectionLostAfterAttempts({required Object attempts}) => '${attempts}回試行後に接続が切断されました';
|
||||
@@ -2121,7 +2096,6 @@ extension on TranslationsJa {
|
||||
dynamic _flatMapFunction(String path) {
|
||||
return switch (path) {
|
||||
'app.title' => 'Plezy',
|
||||
'auth.signIn' => 'サインイン',
|
||||
'auth.signInWithPlex' => 'Plexでサインイン',
|
||||
'auth.showQRCode' => 'QRコードを表示',
|
||||
'auth.authenticate' => '認証',
|
||||
@@ -2172,10 +2146,8 @@ extension on TranslationsJa {
|
||||
'common.episodeNumberTitle' => ({required Object number, required Object title}) => 'エピソード${number} - ${title}',
|
||||
'common.chapterNumber' => ({required Object number}) => 'チャプター${number}',
|
||||
'common.reconnect' => '再接続',
|
||||
'common.exit' => '終了',
|
||||
'common.viewAll' => 'すべて表示',
|
||||
'common.checkingNetwork' => 'ネットワークを確認中...',
|
||||
'common.refreshingServers' => 'サーバーを更新中...',
|
||||
'common.loadingServers' => 'サーバーを読み込み中...',
|
||||
'common.connectingToServers' => 'サーバーに接続中...',
|
||||
'common.startingOfflineMode' => 'オフラインモードを開始中...',
|
||||
@@ -2249,6 +2221,12 @@ extension on TranslationsJa {
|
||||
'settings.tvFullCardLayoutDescription' => 'TVカードを画像のみで表示し、俳優名を重ねて表示します',
|
||||
'settings.focusGlow' => 'フォーカス時の光彩',
|
||||
'settings.focusGlowDescription' => 'フォーカス中のカードの周りに柔らかい光彩を表示します',
|
||||
'settings.visualEffects' => '視覚効果',
|
||||
'settings.visualEffectsAuto' => '自動',
|
||||
'settings.visualEffectsAutoDescription' => '低性能なデバイスでは効果を自動的に減らします',
|
||||
'settings.visualEffectsFull' => 'フル',
|
||||
'settings.visualEffectsReduced' => '軽減',
|
||||
'settings.visualEffectsReducedDescription' => 'アニメーションを減らし、低解像度のアートワークを使用します',
|
||||
'settings.hideSpoilers' => '未視聴エピソードのネタバレを非表示',
|
||||
'settings.hideSpoilersDescription' => '未視聴エピソードのサムネイルと説明をぼかします',
|
||||
'settings.playerBackend' => 'プレーヤーバックエンド',
|
||||
@@ -2261,7 +2239,7 @@ extension on TranslationsJa {
|
||||
'settings.bufferSizeAuto' => '自動(推奨)',
|
||||
'settings.bufferSizeWarning' => ({required Object heap, required Object size}) => '${heap}MBのメモリが利用可能です。${size}MBのバッファは再生に影響する可能性があります。',
|
||||
'settings.defaultQualityTitle' => 'デフォルト画質',
|
||||
'settings.defaultQualityDescription' => '再生開始時に使用。低い値ほど帯域幅が削減されます。',
|
||||
'settings.musicQualityTitle' => '音楽の音質',
|
||||
'settings.subtitleStyling' => '字幕スタイル',
|
||||
'settings.subtitleStylingDescription' => '字幕の外観をカスタマイズ',
|
||||
'settings.smallSkipDuration' => '短いスキップ時間',
|
||||
@@ -2355,10 +2333,9 @@ extension on TranslationsJa {
|
||||
'settings.maxVolumePercent' => ({required Object percent}) => '${percent}%',
|
||||
'settings.discordRichPresence' => 'Discord Rich Presence',
|
||||
'settings.discordRichPresenceDescription' => 'Discordで視聴中の内容を表示',
|
||||
'settings.trakt' => 'Trakt',
|
||||
'settings.traktDescription' => '視聴履歴を Trakt と同期',
|
||||
'settings.services' => 'サービス',
|
||||
'settings.servicesDescription' => 'Trakt、MyAnimeList、Seerr などを接続',
|
||||
'settings.manageLibrariesDescription' => 'ライブラリを並べ替えたり非表示にしたりできます',
|
||||
'settings.companionRemoteServer' => 'コンパニオンリモートサーバー',
|
||||
'settings.companionRemoteServerDescription' => 'ネットワーク上のモバイルデバイスからこのアプリを操作できるようにする',
|
||||
'settings.autoPip' => '自動ピクチャーインピクチャー',
|
||||
@@ -2421,7 +2398,6 @@ extension on TranslationsJa {
|
||||
'settings.showNavBarLabels' => 'ナビゲーションバーラベルを表示',
|
||||
'settings.showNavBarLabelsDescription' => 'ナビゲーションバーアイコンの下にテキストラベルを表示',
|
||||
'settings.startupSection' => '起動時のセクション',
|
||||
'settings.startupSectionDescription' => '起動時に Plezy が開くセクションを選択します',
|
||||
'settings.liveTvDefaultFavorites' => 'お気に入りチャンネルをデフォルトに',
|
||||
'settings.liveTvDefaultFavoritesDescription' => 'ライブTV を開いたときにお気に入りチャンネルのみ表示',
|
||||
'settings.display' => 'ディスプレイ',
|
||||
@@ -2433,13 +2409,6 @@ extension on TranslationsJa {
|
||||
'settings.subtitlesAndConfig' => '字幕と設定',
|
||||
'settings.seekAndTiming' => 'シークとタイミング',
|
||||
'settings.behavior' => '動作',
|
||||
'settings.manageLibrariesDescription' => 'ライブラリを並べ替えたり非表示にしたりできます',
|
||||
'settings.visualEffects' => '視覚効果',
|
||||
'settings.visualEffectsAuto' => '自動',
|
||||
'settings.visualEffectsAutoDescription' => '低性能なデバイスでは効果を自動的に減らします',
|
||||
'settings.visualEffectsFull' => 'フル',
|
||||
'settings.visualEffectsReduced' => '軽減',
|
||||
'settings.visualEffectsReducedDescription' => 'アニメーションを減らし、低解像度のアートワークを使用します',
|
||||
'search.hint' => '映画、番組、音楽を検索...',
|
||||
'search.tryDifferentTerm' => '別の検索語をお試しください',
|
||||
'search.searchYourMedia' => 'メディアを検索',
|
||||
@@ -2516,14 +2485,11 @@ extension on TranslationsJa {
|
||||
'mediaMenu.playVersion' => 'バージョンを再生...',
|
||||
'rateSheet.title' => '評価',
|
||||
'rateSheet.server' => 'サーバー',
|
||||
'rateSheet.starValue' => ({required Object rating}) => '${rating} / 5',
|
||||
'rateSheet.scoreValue' => ({required Object score}) => '${score} / 10',
|
||||
'rateSheet.setScore' => 'スコアを設定',
|
||||
'rateSheet.favorite' => 'お気に入り',
|
||||
'rateSheet.favorited' => 'お気に入りに追加済み',
|
||||
'rateSheet.saved' => '保存済み',
|
||||
'rateSheet.notAvailable' => '一致なし',
|
||||
'rateSheet.noConnectedServices' => '評価するには、設定でサービスを接続してください。',
|
||||
'rateSheet.favorite' => 'お気に入り',
|
||||
'rateSheet.favorited' => 'お気に入りに追加済み',
|
||||
'accessibility.mediaCardMovie' => ({required Object title}) => '${title}、映画',
|
||||
'accessibility.mediaCardShow' => ({required Object title}) => '${title}、テレビ番組',
|
||||
'accessibility.mediaCardEpisode' => ({required Object title, required Object episodeInfo}) => '${title}、${episodeInfo}',
|
||||
@@ -2532,6 +2498,14 @@ extension on TranslationsJa {
|
||||
'accessibility.mediaCardPartiallyWatched' => ({required Object percent}) => '${percent}パーセント視聴済み',
|
||||
'accessibility.mediaCardUnwatched' => '未視聴',
|
||||
'accessibility.tapToPlay' => 'タップして再生',
|
||||
'accessibility.decrease' => '下げる',
|
||||
'accessibility.increase' => '上げる',
|
||||
'accessibility.decreaseValue' => ({required Object label}) => '${label}を下げる',
|
||||
'accessibility.increaseValue' => ({required Object label}) => '${label}を上げる',
|
||||
'accessibility.hue' => '色相',
|
||||
'accessibility.saturation' => '彩度',
|
||||
'accessibility.brightness' => '明るさ',
|
||||
'accessibility.hexColor' => '16進カラー',
|
||||
'tooltips.shufflePlay' => 'シャッフル再生',
|
||||
'tooltips.playTrailer' => '予告編を再生',
|
||||
'tooltips.markAsWatched' => '視聴済みにする',
|
||||
@@ -2573,13 +2547,11 @@ extension on TranslationsJa {
|
||||
'videoControls.settingsButton' => '再生設定',
|
||||
'videoControls.tracksButton' => '音声と字幕',
|
||||
'videoControls.chaptersButton' => 'チャプター',
|
||||
'videoControls.versionsButton' => '動画バージョン',
|
||||
'videoControls.versionQualityButton' => 'バージョンと画質',
|
||||
'videoControls.versionColumnHeader' => 'バージョン',
|
||||
'videoControls.qualityColumnHeader' => '画質',
|
||||
'videoControls.qualityOriginal' => 'オリジナル',
|
||||
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
|
||||
'videoControls.qualityBandwidthEstimate' => ({required Object bitrate}) => '~${bitrate} Mbps',
|
||||
'videoControls.transcodeUnavailableFallback' => 'トランスコードは利用できません — オリジナル画質で再生中',
|
||||
'videoControls.pipButton' => 'ピクチャーインピクチャーモード',
|
||||
'videoControls.aspectRatioButton' => 'アスペクト比',
|
||||
@@ -2619,10 +2591,6 @@ extension on TranslationsJa {
|
||||
'videoControls.subtitleDownloaded' => '字幕をダウンロードしました',
|
||||
'videoControls.subtitleDownloadFailed' => '字幕のダウンロードに失敗しました',
|
||||
'videoControls.searchLanguages' => '言語を検索...',
|
||||
'userStatus.admin' => '管理者',
|
||||
'userStatus.restricted' => '制限付き',
|
||||
'userStatus.protected' => '保護済み',
|
||||
'userStatus.current' => '現在',
|
||||
'messages.markedAsWatched' => '視聴済みにしました',
|
||||
'messages.markedAsUnwatched' => '未視聴にしました',
|
||||
'messages.markedAsWatchedOffline' => '視聴済みにしました(オンライン時に同期)',
|
||||
@@ -2632,8 +2600,6 @@ extension on TranslationsJa {
|
||||
'messages.errorLoading' => ({required Object error}) => 'エラー: ${error}',
|
||||
'messages.streamInterrupted' => 'ストリームが中断されました。再生を押すかシークして再試行してください。',
|
||||
'messages.fileInfoNotAvailable' => 'ファイル情報が利用できません',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.errorLoadingFileInfo' => ({required Object error}) => 'ファイル情報の読み込みエラー: ${error}',
|
||||
'messages.errorLoadingSeries' => 'シリーズの読み込みエラー',
|
||||
'messages.musicNotSupported' => '音楽の再生はまだサポートされていません',
|
||||
@@ -2641,6 +2607,8 @@ extension on TranslationsJa {
|
||||
'messages.noProfilesAvailable' => '利用可能なプロフィールがありません',
|
||||
'messages.contactAdminForProfiles' => 'プロファイルを追加するにはサーバー管理者に連絡してください',
|
||||
'messages.unableToDetermineLibrarySection' => 'このアイテムのライブラリセクションを判別できません',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.logsCleared' => 'ログをクリアしました',
|
||||
'messages.logsCopied' => 'ログをクリップボードにコピーしました',
|
||||
'messages.noLogsAvailable' => 'ログがありません',
|
||||
@@ -2757,7 +2725,6 @@ extension on TranslationsJa {
|
||||
'profiles.pinExplain' => 'プロフィール切り替えには4桁のPINが必要です。',
|
||||
'profiles.continueButton' => '続ける',
|
||||
'profiles.pinsDontMatch' => 'PINが一致しません',
|
||||
'profiles.initializeServicesFailed' => 'プロフィールサービスの初期化に失敗しました',
|
||||
'connections.sectionTitle' => '接続',
|
||||
'connections.addConnection' => '接続を追加',
|
||||
'connections.addConnectionSubtitleNoProfile' => 'Plexでサインインするか、Jellyfinサーバーに接続',
|
||||
@@ -2768,7 +2735,6 @@ extension on TranslationsJa {
|
||||
'connections.editJellyfinTitle' => 'Jellyfin接続を編集',
|
||||
'connections.editJellyfinIntro' => ({required Object serverName}) => '${serverName} のURLを追加または削除します。Plezyは到達可能なURLのうち最も低遅延のものを使用します。',
|
||||
'discover.title' => '探す',
|
||||
'discover.switchProfile' => 'プロフィール切替',
|
||||
'discover.noContentAvailable' => 'コンテンツがありません',
|
||||
'discover.addMediaToLibraries' => 'ライブラリにメディアを追加してください',
|
||||
'discover.continueWatching' => '視聴を続ける',
|
||||
@@ -2795,8 +2761,6 @@ extension on TranslationsJa {
|
||||
'errors.connectionFailed' => 'メディアサーバーに接続できません',
|
||||
'errors.failedToLoad' => ({required Object context, required Object error}) => '${context}の読み込みに失敗しました: ${error}',
|
||||
'errors.noClientAvailable' => 'クライアントが利用できません',
|
||||
'errors.authenticationFailed' => ({required Object error}) => '認証に失敗しました: ${error}',
|
||||
'errors.couldNotLaunchUrl' => '認証URLを開けませんでした',
|
||||
'errors.pleaseEnterToken' => 'トークンを入力してください',
|
||||
'errors.invalidToken' => '無効なトークン',
|
||||
'errors.failedToVerifyToken' => ({required Object error}) => 'トークンの検証に失敗しました: ${error}',
|
||||
@@ -2821,6 +2785,8 @@ extension on TranslationsJa {
|
||||
'libraries.allLibrariesHidden' => 'すべてのライブラリが非表示です',
|
||||
'libraries.hiddenLibrariesCount' => ({required Object count}) => '非表示のライブラリ (${count})',
|
||||
'libraries.thisLibraryIsEmpty' => 'このライブラリは空です',
|
||||
'libraries.noItemsMatchFilters' => '有効なフィルターに一致する項目はありません',
|
||||
'libraries.resetFilters' => 'フィルターをリセット',
|
||||
'libraries.all' => 'すべて',
|
||||
'libraries.clearAll' => 'すべてクリア',
|
||||
'libraries.scanLibraryConfirm' => ({required Object title}) => '"${title}"をスキャンしてもよろしいですか?',
|
||||
@@ -2869,7 +2835,6 @@ extension on TranslationsJa {
|
||||
'libraries.sortLabels.communityRating' => 'コミュニティ評価',
|
||||
'libraries.sortLabels.criticRating' => '批評家評価',
|
||||
'libraries.sortLabels.userRating' => 'ユーザー評価',
|
||||
'libraries.sortLabels.lastPlayed' => '最終再生',
|
||||
'libraries.sortLabels.datePlayed' => '再生日',
|
||||
'libraries.sortLabels.playCount' => '再生回数',
|
||||
'libraries.sortLabels.productionYear' => '製作年',
|
||||
@@ -2883,14 +2848,11 @@ extension on TranslationsJa {
|
||||
'libraries.sortLabels.dateShared' => '共有日',
|
||||
'libraries.sortLabels.latestEpisodeAirDate' => '最新エピソード放送日',
|
||||
'libraries.sortLabels.lastEpisodeDateAdded' => '最新エピソード追加日',
|
||||
'libraries.noItemsMatchFilters' => '有効なフィルターに一致する項目はありません',
|
||||
'libraries.resetFilters' => 'フィルターをリセット',
|
||||
'about.title' => 'アプリについて',
|
||||
'about.openSourceLicenses' => 'オープンソースライセンス',
|
||||
'about.versionLabel' => ({required Object version}) => 'バージョン ${version}',
|
||||
'about.appDescription' => 'Flutter製の美しいPlex・Jellyfinクライアント',
|
||||
'about.viewLicensesDescription' => 'サードパーティライブラリのライセンスを表示',
|
||||
'serverSelection.allServerConnectionsFailed' => 'どのサーバーにも接続できませんでした。ネットワークを確認してください。',
|
||||
'serverSelection.noServersFoundForAccount' => ({required Object username, required Object email}) => '${username} (${email})のサーバーが見つかりません',
|
||||
'serverSelection.failedToLoadServers' => ({required Object error}) => 'サーバーの読み込みに失敗しました: ${error}',
|
||||
'hubDetail.title' => 'タイトル',
|
||||
@@ -2924,10 +2886,6 @@ extension on TranslationsJa {
|
||||
'explore.rows.trending' => 'トレンド',
|
||||
'explore.rows.upcomingMovies' => '近日公開の映画',
|
||||
'explore.rows.upcomingShows' => '放送予定の番組',
|
||||
'explore.searchHint' => ({required Object source}) => '${source} で検索',
|
||||
'explore.searchEmpty' => ({required Object query}) => '「${query}」の結果が見つかりません',
|
||||
'explore.searchPrompt' => ({required Object source}) => '${source} で映画やテレビ番組を検索します。',
|
||||
'explore.searchFailed' => '検索に失敗しました。接続を確認してもう一度お試しください。',
|
||||
'explore.status.airing' => '放送中',
|
||||
'explore.status.ended' => '放送終了',
|
||||
'explore.status.canceled' => '打ち切り',
|
||||
@@ -2940,14 +2898,19 @@ extension on TranslationsJa {
|
||||
'explore.watchlistUpdateFailed' => 'ウォッチリストを更新できませんでした',
|
||||
'explore.notInLibrary' => 'ライブラリにありません',
|
||||
'explore.inTheseLibraries' => 'これらのライブラリにあります',
|
||||
'explore.availableOn' => ({required Object server}) => '${server}で視聴可能',
|
||||
'explore.checkingLibrary' => 'ライブラリを確認中...',
|
||||
'explore.emptyTitle' => 'まだ何もありません',
|
||||
'explore.emptyMessage' => ({required Object source}) => '${source}にコンテンツが追加されると、ここに表示されます。',
|
||||
'explore.searchHint' => ({required Object source}) => '${source} で検索',
|
||||
'explore.searchEmpty' => ({required Object query}) => '「${query}」の結果が見つかりません',
|
||||
'explore.searchPrompt' => ({required Object source}) => '${source} で映画やテレビ番組を検索します。',
|
||||
'explore.searchFailed' => '検索に失敗しました。接続を確認してもう一度お試しください。',
|
||||
'liveTv.title' => 'ライブTV',
|
||||
'liveTv.guide' => '番組表',
|
||||
'liveTv.noChannels' => 'チャンネルがありません',
|
||||
'liveTv.noDvr' => 'どのサーバーにもDVRが設定されていません',
|
||||
'liveTv.serverUnavailable' => 'ライブTVサーバーを利用できません。',
|
||||
'liveTv.serverNotConnected' => 'ライブTVサーバーに接続されていません。',
|
||||
'liveTv.noPrograms' => '番組データがありません',
|
||||
'liveTv.liveStreamFailed' => 'ライブストリームに失敗しました',
|
||||
'liveTv.unknownProgram' => '不明な番組',
|
||||
@@ -2983,7 +2946,6 @@ extension on TranslationsJa {
|
||||
'liveTv.scheduledRecordings' => '予約',
|
||||
'liveTv.recordingRules' => '録画ルール',
|
||||
'liveTv.noScheduledRecordings' => '予約された録画はありません',
|
||||
'liveTv.noRecordingRules' => '録画ルールはまだありません',
|
||||
'liveTv.manageRecording' => '録画を管理',
|
||||
'liveTv.cancelRecording' => '録画をキャンセル',
|
||||
'liveTv.cancelRecordingTitle' => 'この録画をキャンセルしますか?',
|
||||
@@ -3000,7 +2962,6 @@ extension on TranslationsJa {
|
||||
'liveTv.recordingCancelled' => '録画をキャンセルしました',
|
||||
'liveTv.recordingRuleDeleted' => '録画ルールを削除しました',
|
||||
'liveTv.processRecordingRules' => 'ルールを再評価',
|
||||
'liveTv.loadingRecordings' => '録画を読み込み中...',
|
||||
'liveTv.recordingInProgress' => '録画中',
|
||||
'liveTv.recordingsCount' => ({required Object count}) => '${count} 件予約済み',
|
||||
'liveTv.editRule' => 'ルールを編集',
|
||||
@@ -3012,7 +2973,6 @@ extension on TranslationsJa {
|
||||
'collections.title' => 'コレクション',
|
||||
'collections.collection' => 'コレクション',
|
||||
'collections.empty' => 'コレクションは空です',
|
||||
'collections.unknownLibrarySection' => '削除できません:不明なライブラリセクション',
|
||||
'collections.deleteCollection' => 'コレクションを削除',
|
||||
'collections.deleteConfirm' => ({required Object title}) => '「${title}」を削除しますか?元に戻せません。',
|
||||
'collections.deleted' => 'コレクションを削除しました',
|
||||
@@ -3050,6 +3010,7 @@ extension on TranslationsJa {
|
||||
'playlists.itemAdded' => 'プレイリストに追加しました',
|
||||
'playlists.itemRemoved' => 'プレイリストから削除しました',
|
||||
'playlists.selectPlaylist' => 'プレイリストを選択',
|
||||
'playlists.searchPlaylists' => 'プレイリストを検索...',
|
||||
'playlists.errorCreating' => 'プレイリストの作成に失敗しました',
|
||||
'playlists.errorDeleting' => 'プレイリストの削除に失敗しました',
|
||||
'playlists.errorLoading' => 'プレイリストの読み込みに失敗しました',
|
||||
@@ -3132,22 +3093,20 @@ extension on TranslationsJa {
|
||||
'watchTogether.participantResumed' => ({required Object name}) => '${name}が再開しました',
|
||||
'watchTogether.participantSeeked' => ({required Object name}) => '${name}がシークしました',
|
||||
'watchTogether.participantBuffering' => ({required Object name}) => '${name}がバッファリング中',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} は古いバージョンのアプリを使用しているため、同期できません',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => '${name} なしで再開',
|
||||
'watchTogether.waitingForParticipants' => '他の参加者の読み込みを待っています...',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => '${name}を待っています...',
|
||||
'watchTogether.recentRooms' => '最近のルーム',
|
||||
'watchTogether.renameRoom' => 'ルーム名を変更',
|
||||
'watchTogether.removeRoom' => '削除',
|
||||
'watchTogether.guestSwitchUnavailable' => '切り替えできません — サーバーが同期できません',
|
||||
'watchTogether.guestSwitchFailed' => '切り替えできません — このサーバーにコンテンツが見つかりません',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} は古いバージョンのアプリを使用しているため、同期できません',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => '${name} なしで再開',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => '${name}を待っています...',
|
||||
'downloads.title' => 'ダウンロード',
|
||||
'downloads.manage' => '管理',
|
||||
'downloads.tvShows' => 'テレビ番組',
|
||||
'downloads.movies' => '映画',
|
||||
'downloads.music' => '音楽',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.tracksQueued' => ({required Object count}) => '${count} 曲をダウンロード待機中',
|
||||
'downloads.noDownloads' => 'ダウンロードなし',
|
||||
'downloads.noDownloadsDescription' => 'ダウンロードしたコンテンツはここに表示され、オフラインで視聴できます',
|
||||
@@ -3162,6 +3121,8 @@ extension on TranslationsJa {
|
||||
'downloads.deleteConfirm' => ({required Object title}) => 'このデバイスから「${title}」を削除しますか?',
|
||||
'downloads.cancelledDownloadTitle' => 'キャンセルされたダウンロード',
|
||||
'downloads.cancelledDownloadMessage' => 'このダウンロードはキャンセルされました。どうしますか?',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.allEpisodesAlreadyDownloaded' => 'すべてのエピソードはすでにダウンロード済みです',
|
||||
'downloads.resumeDownload' => 'ダウンロードを再開',
|
||||
'downloads.cancelledDownload' => 'キャンセルされたダウンロード',
|
||||
@@ -3185,7 +3146,6 @@ extension on TranslationsJa {
|
||||
'downloads.customAmount' => '数を指定...',
|
||||
'downloads.includeSpecials' => 'スペシャルを含める',
|
||||
'downloads.howManyEpisodes' => '何エピソード?',
|
||||
'downloads.itemsQueued' => ({required Object count}) => '${count}件をダウンロードキューに追加',
|
||||
'downloads.keepSynced' => '同期を維持',
|
||||
'downloads.downloadOnce' => '一度だけダウンロード',
|
||||
'downloads.keepNUnwatched' => ({required Object count}) => '未視聴を${count}件保持',
|
||||
@@ -3229,7 +3189,6 @@ extension on TranslationsJa {
|
||||
'companionRemote.connectedTo' => ({required Object name}) => '${name}に接続中',
|
||||
'companionRemote.unknownDevice' => '不明なデバイス',
|
||||
'companionRemote.session.startingServer' => 'リモートサーバーを起動中...',
|
||||
'companionRemote.session.failedToCreate' => 'リモートサーバーの起動に失敗しました:',
|
||||
'companionRemote.session.hostAddress' => 'ホストアドレス',
|
||||
'companionRemote.session.connected' => '接続済み',
|
||||
'companionRemote.session.serverRunning' => 'リモートサーバー稼働中',
|
||||
@@ -3284,6 +3243,8 @@ extension on TranslationsJa {
|
||||
'companionRemote.remote.searchHint' => 'デスクトップで検索...',
|
||||
'companionRemote.errors.noNetworkInterface' => 'ネットワークインターフェースが見つかりません',
|
||||
'companionRemote.errors.authenticationFailed' => '認証に失敗しました',
|
||||
'companionRemote.errors.serverStartFailed' => ({required Object error}) => 'リモートサーバーを起動できませんでした: ${error}',
|
||||
'companionRemote.errors.commandFailed' => ({required Object error}) => 'リモートコマンドを送信できませんでした: ${error}',
|
||||
'companionRemote.errors.joinTimedOut' => 'セッション参加がタイムアウトしました',
|
||||
'companionRemote.errors.failedToConnectAnyAddress' => 'どのアドレスにも接続できませんでした',
|
||||
'companionRemote.errors.connectionLostAfterAttempts' => ({required Object attempts}) => '${attempts}回試行後に接続が切断されました',
|
||||
@@ -3528,7 +3489,6 @@ extension on TranslationsJa {
|
||||
'addServer.quickConnectFailed' => ({required Object error}) => 'Quick Connectに失敗しました: ${error}',
|
||||
'addServer.addPlexTitle' => 'Plexでサインイン',
|
||||
'addServer.pinExpired' => 'サインイン前にPINの有効期限が切れました。もう一度お試しください。',
|
||||
'addServer.duplicatePlexAccount' => 'すでにPlexにサインインしています。アカウントを切り替えるにはサインアウトしてください。',
|
||||
'addServer.failedToRegisterAccount' => ({required Object error}) => 'アカウントの登録に失敗しました: ${error}',
|
||||
'addServer.enterJellyfinUrlError' => 'JellyfinサーバーのURLを入力してください',
|
||||
'addServer.addConnectionTitle' => '接続を追加',
|
||||
|
||||
+40
-80
@@ -53,7 +53,6 @@ class TranslationsKo extends Translations with BaseTranslations<AppLocale, Trans
|
||||
@override late final _TranslationsAccessibilityKo accessibility = _TranslationsAccessibilityKo._(_root);
|
||||
@override late final _TranslationsTooltipsKo tooltips = _TranslationsTooltipsKo._(_root);
|
||||
@override late final _TranslationsVideoControlsKo videoControls = _TranslationsVideoControlsKo._(_root);
|
||||
@override late final _TranslationsUserStatusKo userStatus = _TranslationsUserStatusKo._(_root);
|
||||
@override late final _TranslationsMessagesKo messages = _TranslationsMessagesKo._(_root);
|
||||
@override late final _TranslationsSubtitlingStylingKo subtitlingStyling = _TranslationsSubtitlingStylingKo._(_root);
|
||||
@override late final _TranslationsMpvConfigKo mpvConfig = _TranslationsMpvConfigKo._(_root);
|
||||
@@ -107,7 +106,6 @@ class _TranslationsAuthKo extends TranslationsAuthEn {
|
||||
final TranslationsKo _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get signIn => '로그인';
|
||||
@override String get signInWithPlex => 'Plex 계정으로 로그인';
|
||||
@override String get showQRCode => 'QR 코드';
|
||||
@override String get authenticate => '인증';
|
||||
@@ -167,10 +165,8 @@ class _TranslationsCommonKo extends TranslationsCommonEn {
|
||||
@override String episodeNumberTitle({required Object number, required Object title}) => '${number}화 - ${title}';
|
||||
@override String chapterNumber({required Object number}) => '챕터 ${number}';
|
||||
@override String get reconnect => '다시 연결';
|
||||
@override String get exit => '종료';
|
||||
@override String get viewAll => '모두 보기';
|
||||
@override String get checkingNetwork => '네트워크 확인 중...';
|
||||
@override String get refreshingServers => '서버 새로고침 중...';
|
||||
@override String get loadingServers => '서버 로딩 중...';
|
||||
@override String get connectingToServers => '서버 연결 중...';
|
||||
@override String get startingOfflineMode => '오프라인 모드 시작 중...';
|
||||
@@ -289,7 +285,7 @@ class _TranslationsSettingsKo extends TranslationsSettingsEn {
|
||||
@override String get bufferSizeAuto => '자동 (권장)';
|
||||
@override String bufferSizeWarning({required Object heap, required Object size}) => '${heap}MB 메모리를 사용할 수 있습니다. ${size}MB 버퍼는 재생에 영향을 줄 수 있습니다.';
|
||||
@override String get defaultQualityTitle => '기본 화질';
|
||||
@override String get defaultQualityDescription => '재생 시작 시 사용됩니다. 낮은 값은 대역폭을 줄입니다.';
|
||||
@override String get musicQualityTitle => '음악 음질';
|
||||
@override String get subtitleStyling => '자막 스타일';
|
||||
@override String get subtitleStylingDescription => '자막의 외형을 사용자 설정';
|
||||
@override String get smallSkipDuration => '짧은 건너뛰기 시간';
|
||||
@@ -383,8 +379,6 @@ class _TranslationsSettingsKo extends TranslationsSettingsEn {
|
||||
@override String maxVolumePercent({required Object percent}) => '${percent}%';
|
||||
@override String get discordRichPresence => 'Discord Rich Presence';
|
||||
@override String get discordRichPresenceDescription => 'Discord에서 시청 중인 콘텐츠 표시';
|
||||
@override String get trakt => 'Trakt';
|
||||
@override String get traktDescription => 'Trakt와 시청 기록 동기화';
|
||||
@override String get services => '서비스';
|
||||
@override String get servicesDescription => 'Trakt, MyAnimeList, Seerr 등 연결';
|
||||
@override String get manageLibrariesDescription => '라이브러리 순서를 변경하거나 숨깁니다';
|
||||
@@ -450,7 +444,6 @@ class _TranslationsSettingsKo extends TranslationsSettingsEn {
|
||||
@override String get showNavBarLabels => '내비게이션 바 라벨 표시';
|
||||
@override String get showNavBarLabelsDescription => '내비게이션 바 아이콘 아래에 텍스트 라벨을 표시합니다';
|
||||
@override String get startupSection => '시작 섹션';
|
||||
@override String get startupSectionDescription => 'Plezy 실행 시 열릴 섹션을 선택합니다';
|
||||
@override String get liveTvDefaultFavorites => '즐겨찾기 채널 기본 설정';
|
||||
@override String get liveTvDefaultFavoritesDescription => '라이브 TV를 열 때 즐겨찾기 채널만 표시';
|
||||
@override String get display => '디스플레이';
|
||||
@@ -559,9 +552,6 @@ class _TranslationsRateSheetKo extends TranslationsRateSheetEn {
|
||||
// Translations
|
||||
@override String get title => '평가';
|
||||
@override String get server => '서버';
|
||||
@override String starValue({required Object rating}) => '${rating} / 5';
|
||||
@override String scoreValue({required Object score}) => '${score} / 10';
|
||||
@override String get setScore => '점수 설정';
|
||||
@override String get favorite => '즐겨찾기';
|
||||
@override String get favorited => '즐겨찾기됨';
|
||||
@override String get saved => '저장됨';
|
||||
@@ -584,6 +574,14 @@ class _TranslationsAccessibilityKo extends TranslationsAccessibilityEn {
|
||||
@override String mediaCardPartiallyWatched({required Object percent}) => '${percent} 퍼센트 시청 완료';
|
||||
@override String get mediaCardUnwatched => '미시청';
|
||||
@override String get tapToPlay => '터치 하여 재생';
|
||||
@override String get decrease => '낮추기';
|
||||
@override String get increase => '높이기';
|
||||
@override String decreaseValue({required Object label}) => '${label} 낮추기';
|
||||
@override String increaseValue({required Object label}) => '${label} 높이기';
|
||||
@override String get hue => '색조';
|
||||
@override String get saturation => '채도';
|
||||
@override String get brightness => '밝기';
|
||||
@override String get hexColor => '16진수 색상';
|
||||
}
|
||||
|
||||
// Path: tooltips
|
||||
@@ -643,13 +641,11 @@ class _TranslationsVideoControlsKo extends TranslationsVideoControlsEn {
|
||||
@override String get settingsButton => '재생 설정';
|
||||
@override String get tracksButton => '오디오 및 자막';
|
||||
@override String get chaptersButton => '챕터';
|
||||
@override String get versionsButton => '동영상 버전';
|
||||
@override String get versionQualityButton => '버전 및 화질';
|
||||
@override String get versionColumnHeader => '버전';
|
||||
@override String get qualityColumnHeader => '화질';
|
||||
@override String get qualityOriginal => '원본';
|
||||
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
|
||||
@override String qualityBandwidthEstimate({required Object bitrate}) => '~${bitrate} Mbps';
|
||||
@override String get transcodeUnavailableFallback => '트랜스코딩을 사용할 수 없음 — 원본 화질로 재생';
|
||||
@override String get pipButton => '픽처 인 픽처 모드';
|
||||
@override String get aspectRatioButton => '화면비율';
|
||||
@@ -685,19 +681,6 @@ class _TranslationsVideoControlsKo extends TranslationsVideoControlsEn {
|
||||
@override String get searchLanguages => '언어 검색...';
|
||||
}
|
||||
|
||||
// Path: userStatus
|
||||
class _TranslationsUserStatusKo extends TranslationsUserStatusEn {
|
||||
_TranslationsUserStatusKo._(TranslationsKo root) : this._root = root, super.internal(root);
|
||||
|
||||
final TranslationsKo _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get admin => '관리자';
|
||||
@override String get restricted => '제한됨';
|
||||
@override String get protected => '보호됨';
|
||||
@override String get current => '현재';
|
||||
}
|
||||
|
||||
// Path: messages
|
||||
class _TranslationsMessagesKo extends TranslationsMessagesEn {
|
||||
_TranslationsMessagesKo._(TranslationsKo root) : this._root = root, super.internal(root);
|
||||
@@ -873,7 +856,6 @@ class _TranslationsProfilesKo extends TranslationsProfilesEn {
|
||||
@override String get pinExplain => '프로필 전환에는 4자리 PIN이 필요합니다.';
|
||||
@override String get continueButton => '계속';
|
||||
@override String get pinsDontMatch => 'PIN이 일치하지 않습니다';
|
||||
@override String get initializeServicesFailed => '프로필 서비스를 초기화하지 못했습니다';
|
||||
}
|
||||
|
||||
// Path: connections
|
||||
@@ -902,7 +884,6 @@ class _TranslationsDiscoverKo extends TranslationsDiscoverEn {
|
||||
|
||||
// Translations
|
||||
@override String get title => '발견';
|
||||
@override String get switchProfile => '사용자 전환';
|
||||
@override String get noContentAvailable => '사용 가능한 콘텐츠가 없습니다';
|
||||
@override String get addMediaToLibraries => '미디어 라이브러리에 미디어를 추가해 주세요';
|
||||
@override String get continueWatching => '계속 시청';
|
||||
@@ -938,8 +919,6 @@ class _TranslationsErrorsKo extends TranslationsErrorsEn {
|
||||
@override String get connectionFailed => '미디어 서버에 연결할 수 없습니다';
|
||||
@override String failedToLoad({required Object context, required Object error}) => '${context} 로드 실패: ${error}';
|
||||
@override String get noClientAvailable => '사용 가능한 클라이언트가 없습니다';
|
||||
@override String authenticationFailed({required Object error}) => '인증 실패: ${error}';
|
||||
@override String get couldNotLaunchUrl => '인증 URL을 열 수 없습니다';
|
||||
@override String get pleaseEnterToken => '토큰을 입력해 주세요';
|
||||
@override String get invalidToken => '토큰이 유효하지 않습니다';
|
||||
@override String failedToVerifyToken({required Object error}) => '토큰을 확인할 수 없습니다: ${error}';
|
||||
@@ -1023,7 +1002,6 @@ class _TranslationsServerSelectionKo extends TranslationsServerSelectionEn {
|
||||
final TranslationsKo _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get allServerConnectionsFailed => '서버에 연결할 수 없습니다. 네트워크를 확인하세요.';
|
||||
@override String noServersFoundForAccount({required Object username, required Object email}) => '${username} (${email})의 서버를 찾을 수 없습니다.';
|
||||
@override String failedToLoadServers({required Object error}) => '서버를 로드할 수 없습니다: ${error}';
|
||||
}
|
||||
@@ -1090,10 +1068,6 @@ class _TranslationsExploreKo extends TranslationsExploreEn {
|
||||
@override String get title => '탐색';
|
||||
@override String get selectSource => '소스 선택';
|
||||
@override late final _TranslationsExploreRowsKo rows = _TranslationsExploreRowsKo._(_root);
|
||||
@override String searchHint({required Object source}) => '${source}에서 검색';
|
||||
@override String searchEmpty({required Object query}) => '「${query}」에 대한 결과가 없습니다';
|
||||
@override String searchPrompt({required Object source}) => '${source}에서 영화와 TV 프로그램을 검색하세요.';
|
||||
@override String get searchFailed => '검색에 실패했습니다. 연결을 확인하고 다시 시도하세요.';
|
||||
@override late final _TranslationsExploreStatusKo status = _TranslationsExploreStatusKo._(_root);
|
||||
@override String episodeCount({required num n}) => (_root.$meta.cardinalResolver ?? PluralResolvers.cardinal('ko'))(n,
|
||||
other: '${n}화',
|
||||
@@ -1105,10 +1079,13 @@ class _TranslationsExploreKo extends TranslationsExploreEn {
|
||||
@override String get watchlistUpdateFailed => '관심 목록을 업데이트하지 못했습니다';
|
||||
@override String get notInLibrary => '라이브러리에 없음';
|
||||
@override String get inTheseLibraries => '이 라이브러리에 있음';
|
||||
@override String availableOn({required Object server}) => '${server}에서 이용 가능';
|
||||
@override String get checkingLibrary => '라이브러리 확인 중...';
|
||||
@override String get emptyTitle => '아직 아무것도 없습니다';
|
||||
@override String emptyMessage({required Object source}) => '${source}에 콘텐츠가 추가되면 여기에 표시됩니다.';
|
||||
@override String searchHint({required Object source}) => '${source}에서 검색';
|
||||
@override String searchEmpty({required Object query}) => '「${query}」에 대한 결과가 없습니다';
|
||||
@override String searchPrompt({required Object source}) => '${source}에서 영화와 TV 프로그램을 검색하세요.';
|
||||
@override String get searchFailed => '검색에 실패했습니다. 연결을 확인하고 다시 시도하세요.';
|
||||
}
|
||||
|
||||
// Path: liveTv
|
||||
@@ -1122,6 +1099,8 @@ class _TranslationsLiveTvKo extends TranslationsLiveTvEn {
|
||||
@override String get guide => '편성표';
|
||||
@override String get noChannels => '사용 가능한 채널이 없습니다';
|
||||
@override String get noDvr => '서버에 DVR이 구성되어 있지 않습니다';
|
||||
@override String get serverUnavailable => '라이브 TV 서버를 사용할 수 없습니다.';
|
||||
@override String get serverNotConnected => '라이브 TV 서버에 연결되어 있지 않습니다.';
|
||||
@override String get noPrograms => '프로그램 데이터가 없습니다';
|
||||
@override String get liveStreamFailed => '라이브 스트림 실패';
|
||||
@override String get unknownProgram => '알 수 없는 프로그램';
|
||||
@@ -1157,7 +1136,6 @@ class _TranslationsLiveTvKo extends TranslationsLiveTvEn {
|
||||
@override String get scheduledRecordings => '예약됨';
|
||||
@override String get recordingRules => '녹화 규칙';
|
||||
@override String get noScheduledRecordings => '예약된 녹화 없음';
|
||||
@override String get noRecordingRules => '녹화 규칙 없음';
|
||||
@override String get manageRecording => '녹화 관리';
|
||||
@override String get cancelRecording => '녹화 취소';
|
||||
@override String get cancelRecordingTitle => '이 녹화를 취소할까요?';
|
||||
@@ -1174,7 +1152,6 @@ class _TranslationsLiveTvKo extends TranslationsLiveTvEn {
|
||||
@override String get recordingCancelled => '녹화 취소됨';
|
||||
@override String get recordingRuleDeleted => '녹화 규칙 삭제됨';
|
||||
@override String get processRecordingRules => '규칙 재평가';
|
||||
@override String get loadingRecordings => '녹화 불러오는 중...';
|
||||
@override String get recordingInProgress => '녹화 중';
|
||||
@override String recordingsCount({required Object count}) => '${count}개 예약됨';
|
||||
@override String get editRule => '규칙 편집';
|
||||
@@ -1195,7 +1172,6 @@ class _TranslationsCollectionsKo extends TranslationsCollectionsEn {
|
||||
@override String get title => '컬렉션';
|
||||
@override String get collection => '컬렉션';
|
||||
@override String get empty => '컬렉션이 비어 있습니다';
|
||||
@override String get unknownLibrarySection => '삭제할 수 없습니다: 알 수 없는 미디어 라이브러리 섹션입니다';
|
||||
@override String get deleteCollection => '컬렉션 삭제';
|
||||
@override String deleteConfirm({required Object title}) => '"${title}"을(를) 삭제할까요? 되돌릴 수 없습니다.';
|
||||
@override String get deleted => '컬렉션 삭제됨';
|
||||
@@ -1242,6 +1218,7 @@ class _TranslationsPlaylistsKo extends TranslationsPlaylistsEn {
|
||||
@override String get itemAdded => '재생 목록에 추가 되었습니다';
|
||||
@override String get itemRemoved => '재생 목록에서 제거됨';
|
||||
@override String get selectPlaylist => '재생 목록 선택';
|
||||
@override String get searchPlaylists => '재생 목록 검색...';
|
||||
@override String get errorCreating => '재생 목록 생성 실패';
|
||||
@override String get errorDeleting => '재생 목록 삭제 실패';
|
||||
@override String get errorLoading => '재생 목록 로드 실패';
|
||||
@@ -1404,7 +1381,6 @@ class _TranslationsDownloadsKo extends TranslationsDownloadsEn {
|
||||
@override String get customAmount => '직접 입력...';
|
||||
@override String get includeSpecials => '스페셜 포함';
|
||||
@override String get howManyEpisodes => '몇 개의 에피소드?';
|
||||
@override String itemsQueued({required Object count}) => '${count}개 항목이 다운로드 대기열에 추가됨';
|
||||
@override String get keepSynced => '동기화 유지';
|
||||
@override String get downloadOnce => '한 번만 다운로드';
|
||||
@override String keepNUnwatched({required Object count}) => '미시청 ${count}개 유지';
|
||||
@@ -1778,7 +1754,6 @@ class _TranslationsAddServerKo extends TranslationsAddServerEn {
|
||||
@override String quickConnectFailed({required Object error}) => 'Quick Connect 실패: ${error}';
|
||||
@override String get addPlexTitle => 'Plex로 로그인';
|
||||
@override String get pinExpired => '로그인 전에 PIN이 만료되었습니다. 다시 시도하세요.';
|
||||
@override String get duplicatePlexAccount => '이미 Plex에 로그인되어 있습니다. 계정을 전환하려면 로그아웃하세요.';
|
||||
@override String failedToRegisterAccount({required Object error}) => '계정 등록 실패: ${error}';
|
||||
@override String get enterJellyfinUrlError => 'Jellyfin 서버 URL을 입력하세요';
|
||||
@override String get addConnectionTitle => '연결 추가';
|
||||
@@ -1904,7 +1879,6 @@ class _TranslationsLibrariesSortLabelsKo extends TranslationsLibrariesSortLabels
|
||||
@override String get communityRating => '커뮤니티 평점';
|
||||
@override String get criticRating => '평론가 평점';
|
||||
@override String get userRating => '사용자 평점';
|
||||
@override String get lastPlayed => '마지막 재생';
|
||||
@override String get datePlayed => '재생일';
|
||||
@override String get playCount => '재생 횟수';
|
||||
@override String get productionYear => '제작 연도';
|
||||
@@ -1963,7 +1937,6 @@ class _TranslationsCompanionRemoteSessionKo extends TranslationsCompanionRemoteS
|
||||
|
||||
// Translations
|
||||
@override String get startingServer => '원격 서버 시작 중...';
|
||||
@override String get failedToCreate => '원격 서버를 시작하지 못했습니다:';
|
||||
@override String get hostAddress => '호스트 주소';
|
||||
@override String get connected => '연결됨';
|
||||
@override String get serverRunning => '원격 서버 활성';
|
||||
@@ -2045,6 +2018,8 @@ class _TranslationsCompanionRemoteErrorsKo extends TranslationsCompanionRemoteEr
|
||||
// Translations
|
||||
@override String get noNetworkInterface => '네트워크 인터페이스를 찾을 수 없습니다';
|
||||
@override String get authenticationFailed => '인증 실패';
|
||||
@override String serverStartFailed({required Object error}) => '원격 서버를 시작하지 못했습니다: ${error}';
|
||||
@override String commandFailed({required Object error}) => '원격 명령을 보내지 못했습니다: ${error}';
|
||||
@override String get joinTimedOut => '세션 참가 시간이 초과되었습니다';
|
||||
@override String get failedToConnectAnyAddress => '어떤 주소에도 연결하지 못했습니다';
|
||||
@override String connectionLostAfterAttempts({required Object attempts}) => '${attempts}회 시도 후 연결이 끊어졌습니다';
|
||||
@@ -2121,7 +2096,6 @@ extension on TranslationsKo {
|
||||
dynamic _flatMapFunction(String path) {
|
||||
return switch (path) {
|
||||
'app.title' => 'Plezy',
|
||||
'auth.signIn' => '로그인',
|
||||
'auth.signInWithPlex' => 'Plex 계정으로 로그인',
|
||||
'auth.showQRCode' => 'QR 코드',
|
||||
'auth.authenticate' => '인증',
|
||||
@@ -2172,10 +2146,8 @@ extension on TranslationsKo {
|
||||
'common.episodeNumberTitle' => ({required Object number, required Object title}) => '${number}화 - ${title}',
|
||||
'common.chapterNumber' => ({required Object number}) => '챕터 ${number}',
|
||||
'common.reconnect' => '다시 연결',
|
||||
'common.exit' => '종료',
|
||||
'common.viewAll' => '모두 보기',
|
||||
'common.checkingNetwork' => '네트워크 확인 중...',
|
||||
'common.refreshingServers' => '서버 새로고침 중...',
|
||||
'common.loadingServers' => '서버 로딩 중...',
|
||||
'common.connectingToServers' => '서버 연결 중...',
|
||||
'common.startingOfflineMode' => '오프라인 모드 시작 중...',
|
||||
@@ -2267,7 +2239,7 @@ extension on TranslationsKo {
|
||||
'settings.bufferSizeAuto' => '자동 (권장)',
|
||||
'settings.bufferSizeWarning' => ({required Object heap, required Object size}) => '${heap}MB 메모리를 사용할 수 있습니다. ${size}MB 버퍼는 재생에 영향을 줄 수 있습니다.',
|
||||
'settings.defaultQualityTitle' => '기본 화질',
|
||||
'settings.defaultQualityDescription' => '재생 시작 시 사용됩니다. 낮은 값은 대역폭을 줄입니다.',
|
||||
'settings.musicQualityTitle' => '음악 음질',
|
||||
'settings.subtitleStyling' => '자막 스타일',
|
||||
'settings.subtitleStylingDescription' => '자막의 외형을 사용자 설정',
|
||||
'settings.smallSkipDuration' => '짧은 건너뛰기 시간',
|
||||
@@ -2361,8 +2333,6 @@ extension on TranslationsKo {
|
||||
'settings.maxVolumePercent' => ({required Object percent}) => '${percent}%',
|
||||
'settings.discordRichPresence' => 'Discord Rich Presence',
|
||||
'settings.discordRichPresenceDescription' => 'Discord에서 시청 중인 콘텐츠 표시',
|
||||
'settings.trakt' => 'Trakt',
|
||||
'settings.traktDescription' => 'Trakt와 시청 기록 동기화',
|
||||
'settings.services' => '서비스',
|
||||
'settings.servicesDescription' => 'Trakt, MyAnimeList, Seerr 등 연결',
|
||||
'settings.manageLibrariesDescription' => '라이브러리 순서를 변경하거나 숨깁니다',
|
||||
@@ -2428,7 +2398,6 @@ extension on TranslationsKo {
|
||||
'settings.showNavBarLabels' => '내비게이션 바 라벨 표시',
|
||||
'settings.showNavBarLabelsDescription' => '내비게이션 바 아이콘 아래에 텍스트 라벨을 표시합니다',
|
||||
'settings.startupSection' => '시작 섹션',
|
||||
'settings.startupSectionDescription' => 'Plezy 실행 시 열릴 섹션을 선택합니다',
|
||||
'settings.liveTvDefaultFavorites' => '즐겨찾기 채널 기본 설정',
|
||||
'settings.liveTvDefaultFavoritesDescription' => '라이브 TV를 열 때 즐겨찾기 채널만 표시',
|
||||
'settings.display' => '디스플레이',
|
||||
@@ -2516,9 +2485,6 @@ extension on TranslationsKo {
|
||||
'mediaMenu.playVersion' => '버전 재생...',
|
||||
'rateSheet.title' => '평가',
|
||||
'rateSheet.server' => '서버',
|
||||
'rateSheet.starValue' => ({required Object rating}) => '${rating} / 5',
|
||||
'rateSheet.scoreValue' => ({required Object score}) => '${score} / 10',
|
||||
'rateSheet.setScore' => '점수 설정',
|
||||
'rateSheet.favorite' => '즐겨찾기',
|
||||
'rateSheet.favorited' => '즐겨찾기됨',
|
||||
'rateSheet.saved' => '저장됨',
|
||||
@@ -2532,6 +2498,14 @@ extension on TranslationsKo {
|
||||
'accessibility.mediaCardPartiallyWatched' => ({required Object percent}) => '${percent} 퍼센트 시청 완료',
|
||||
'accessibility.mediaCardUnwatched' => '미시청',
|
||||
'accessibility.tapToPlay' => '터치 하여 재생',
|
||||
'accessibility.decrease' => '낮추기',
|
||||
'accessibility.increase' => '높이기',
|
||||
'accessibility.decreaseValue' => ({required Object label}) => '${label} 낮추기',
|
||||
'accessibility.increaseValue' => ({required Object label}) => '${label} 높이기',
|
||||
'accessibility.hue' => '색조',
|
||||
'accessibility.saturation' => '채도',
|
||||
'accessibility.brightness' => '밝기',
|
||||
'accessibility.hexColor' => '16진수 색상',
|
||||
'tooltips.shufflePlay' => '무작위 재생',
|
||||
'tooltips.playTrailer' => '예고편 재생',
|
||||
'tooltips.markAsWatched' => '시청 완료로 표시',
|
||||
@@ -2573,13 +2547,11 @@ extension on TranslationsKo {
|
||||
'videoControls.settingsButton' => '재생 설정',
|
||||
'videoControls.tracksButton' => '오디오 및 자막',
|
||||
'videoControls.chaptersButton' => '챕터',
|
||||
'videoControls.versionsButton' => '동영상 버전',
|
||||
'videoControls.versionQualityButton' => '버전 및 화질',
|
||||
'videoControls.versionColumnHeader' => '버전',
|
||||
'videoControls.qualityColumnHeader' => '화질',
|
||||
'videoControls.qualityOriginal' => '원본',
|
||||
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
|
||||
'videoControls.qualityBandwidthEstimate' => ({required Object bitrate}) => '~${bitrate} Mbps',
|
||||
'videoControls.transcodeUnavailableFallback' => '트랜스코딩을 사용할 수 없음 — 원본 화질로 재생',
|
||||
'videoControls.pipButton' => '픽처 인 픽처 모드',
|
||||
'videoControls.aspectRatioButton' => '화면비율',
|
||||
@@ -2619,10 +2591,6 @@ extension on TranslationsKo {
|
||||
'videoControls.subtitleDownloaded' => '자막이 다운로드되었습니다',
|
||||
'videoControls.subtitleDownloadFailed' => '자막 다운로드에 실패했습니다',
|
||||
'videoControls.searchLanguages' => '언어 검색...',
|
||||
'userStatus.admin' => '관리자',
|
||||
'userStatus.restricted' => '제한됨',
|
||||
'userStatus.protected' => '보호됨',
|
||||
'userStatus.current' => '현재',
|
||||
'messages.markedAsWatched' => '시청 완료로 표시됨',
|
||||
'messages.markedAsUnwatched' => '시청 안 함으로 표시됨',
|
||||
'messages.markedAsWatchedOffline' => '시청 완료로 표시됨 (연결 시 동기화됨)',
|
||||
@@ -2632,8 +2600,6 @@ extension on TranslationsKo {
|
||||
'messages.errorLoading' => ({required Object error}) => '오류: ${error}',
|
||||
'messages.streamInterrupted' => '스트림이 중단되었습니다. 재생을 누르거나 탐색하여 다시 시도하세요.',
|
||||
'messages.fileInfoNotAvailable' => '파일 정보가 없습니다',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.errorLoadingFileInfo' => ({required Object error}) => '파일 정보 로딩 중 오류: ${error}',
|
||||
'messages.errorLoadingSeries' => '시리즈 로딩 중 오류',
|
||||
'messages.musicNotSupported' => '음악 재생 미지원',
|
||||
@@ -2641,6 +2607,8 @@ extension on TranslationsKo {
|
||||
'messages.noProfilesAvailable' => '사용 가능한 프로필이 없습니다',
|
||||
'messages.contactAdminForProfiles' => '프로필을 추가하려면 서버 관리자에게 문의하세요',
|
||||
'messages.unableToDetermineLibrarySection' => '이 항목의 라이브러리 섹션을 확인할 수 없습니다',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.logsCleared' => '로그가 삭제 되었습니다',
|
||||
'messages.logsCopied' => '로그가 클립보드에 복사 되었습니다',
|
||||
'messages.noLogsAvailable' => '사용 가능한 로그가 없습니다',
|
||||
@@ -2757,7 +2725,6 @@ extension on TranslationsKo {
|
||||
'profiles.pinExplain' => '프로필 전환에는 4자리 PIN이 필요합니다.',
|
||||
'profiles.continueButton' => '계속',
|
||||
'profiles.pinsDontMatch' => 'PIN이 일치하지 않습니다',
|
||||
'profiles.initializeServicesFailed' => '프로필 서비스를 초기화하지 못했습니다',
|
||||
'connections.sectionTitle' => '연결',
|
||||
'connections.addConnection' => '연결 추가',
|
||||
'connections.addConnectionSubtitleNoProfile' => 'Plex로 로그인하거나 Jellyfin 서버에 연결',
|
||||
@@ -2768,7 +2735,6 @@ extension on TranslationsKo {
|
||||
'connections.editJellyfinTitle' => 'Jellyfin 연결 편집',
|
||||
'connections.editJellyfinIntro' => ({required Object serverName}) => '${serverName}의 URL을 추가하거나 제거하세요. Plezy는 연결 가능한 URL 중 지연 시간이 가장 낮은 URL을 사용합니다.',
|
||||
'discover.title' => '발견',
|
||||
'discover.switchProfile' => '사용자 전환',
|
||||
'discover.noContentAvailable' => '사용 가능한 콘텐츠가 없습니다',
|
||||
'discover.addMediaToLibraries' => '미디어 라이브러리에 미디어를 추가해 주세요',
|
||||
'discover.continueWatching' => '계속 시청',
|
||||
@@ -2795,8 +2761,6 @@ extension on TranslationsKo {
|
||||
'errors.connectionFailed' => '미디어 서버에 연결할 수 없습니다',
|
||||
'errors.failedToLoad' => ({required Object context, required Object error}) => '${context} 로드 실패: ${error}',
|
||||
'errors.noClientAvailable' => '사용 가능한 클라이언트가 없습니다',
|
||||
'errors.authenticationFailed' => ({required Object error}) => '인증 실패: ${error}',
|
||||
'errors.couldNotLaunchUrl' => '인증 URL을 열 수 없습니다',
|
||||
'errors.pleaseEnterToken' => '토큰을 입력해 주세요',
|
||||
'errors.invalidToken' => '토큰이 유효하지 않습니다',
|
||||
'errors.failedToVerifyToken' => ({required Object error}) => '토큰을 확인할 수 없습니다: ${error}',
|
||||
@@ -2871,7 +2835,6 @@ extension on TranslationsKo {
|
||||
'libraries.sortLabels.communityRating' => '커뮤니티 평점',
|
||||
'libraries.sortLabels.criticRating' => '평론가 평점',
|
||||
'libraries.sortLabels.userRating' => '사용자 평점',
|
||||
'libraries.sortLabels.lastPlayed' => '마지막 재생',
|
||||
'libraries.sortLabels.datePlayed' => '재생일',
|
||||
'libraries.sortLabels.playCount' => '재생 횟수',
|
||||
'libraries.sortLabels.productionYear' => '제작 연도',
|
||||
@@ -2890,7 +2853,6 @@ extension on TranslationsKo {
|
||||
'about.versionLabel' => ({required Object version}) => '버전 ${version}',
|
||||
'about.appDescription' => '아름다운 Flutter용 Plex 및 Jellyfin 클라이언트',
|
||||
'about.viewLicensesDescription' => '타사 라이브러리 라이선스 보기',
|
||||
'serverSelection.allServerConnectionsFailed' => '서버에 연결할 수 없습니다. 네트워크를 확인하세요.',
|
||||
'serverSelection.noServersFoundForAccount' => ({required Object username, required Object email}) => '${username} (${email})의 서버를 찾을 수 없습니다.',
|
||||
'serverSelection.failedToLoadServers' => ({required Object error}) => '서버를 로드할 수 없습니다: ${error}',
|
||||
'hubDetail.title' => '제목',
|
||||
@@ -2924,10 +2886,6 @@ extension on TranslationsKo {
|
||||
'explore.rows.trending' => '지금 뜨는 콘텐츠',
|
||||
'explore.rows.upcomingMovies' => '개봉 예정 영화',
|
||||
'explore.rows.upcomingShows' => '방영 예정 TV 프로그램',
|
||||
'explore.searchHint' => ({required Object source}) => '${source}에서 검색',
|
||||
'explore.searchEmpty' => ({required Object query}) => '「${query}」에 대한 결과가 없습니다',
|
||||
'explore.searchPrompt' => ({required Object source}) => '${source}에서 영화와 TV 프로그램을 검색하세요.',
|
||||
'explore.searchFailed' => '검색에 실패했습니다. 연결을 확인하고 다시 시도하세요.',
|
||||
'explore.status.airing' => '방영 중',
|
||||
'explore.status.ended' => '종영',
|
||||
'explore.status.canceled' => '취소됨',
|
||||
@@ -2940,14 +2898,19 @@ extension on TranslationsKo {
|
||||
'explore.watchlistUpdateFailed' => '관심 목록을 업데이트하지 못했습니다',
|
||||
'explore.notInLibrary' => '라이브러리에 없음',
|
||||
'explore.inTheseLibraries' => '이 라이브러리에 있음',
|
||||
'explore.availableOn' => ({required Object server}) => '${server}에서 이용 가능',
|
||||
'explore.checkingLibrary' => '라이브러리 확인 중...',
|
||||
'explore.emptyTitle' => '아직 아무것도 없습니다',
|
||||
'explore.emptyMessage' => ({required Object source}) => '${source}에 콘텐츠가 추가되면 여기에 표시됩니다.',
|
||||
'explore.searchHint' => ({required Object source}) => '${source}에서 검색',
|
||||
'explore.searchEmpty' => ({required Object query}) => '「${query}」에 대한 결과가 없습니다',
|
||||
'explore.searchPrompt' => ({required Object source}) => '${source}에서 영화와 TV 프로그램을 검색하세요.',
|
||||
'explore.searchFailed' => '검색에 실패했습니다. 연결을 확인하고 다시 시도하세요.',
|
||||
'liveTv.title' => '실시간 TV',
|
||||
'liveTv.guide' => '편성표',
|
||||
'liveTv.noChannels' => '사용 가능한 채널이 없습니다',
|
||||
'liveTv.noDvr' => '서버에 DVR이 구성되어 있지 않습니다',
|
||||
'liveTv.serverUnavailable' => '라이브 TV 서버를 사용할 수 없습니다.',
|
||||
'liveTv.serverNotConnected' => '라이브 TV 서버에 연결되어 있지 않습니다.',
|
||||
'liveTv.noPrograms' => '프로그램 데이터가 없습니다',
|
||||
'liveTv.liveStreamFailed' => '라이브 스트림 실패',
|
||||
'liveTv.unknownProgram' => '알 수 없는 프로그램',
|
||||
@@ -2983,7 +2946,6 @@ extension on TranslationsKo {
|
||||
'liveTv.scheduledRecordings' => '예약됨',
|
||||
'liveTv.recordingRules' => '녹화 규칙',
|
||||
'liveTv.noScheduledRecordings' => '예약된 녹화 없음',
|
||||
'liveTv.noRecordingRules' => '녹화 규칙 없음',
|
||||
'liveTv.manageRecording' => '녹화 관리',
|
||||
'liveTv.cancelRecording' => '녹화 취소',
|
||||
'liveTv.cancelRecordingTitle' => '이 녹화를 취소할까요?',
|
||||
@@ -3000,7 +2962,6 @@ extension on TranslationsKo {
|
||||
'liveTv.recordingCancelled' => '녹화 취소됨',
|
||||
'liveTv.recordingRuleDeleted' => '녹화 규칙 삭제됨',
|
||||
'liveTv.processRecordingRules' => '규칙 재평가',
|
||||
'liveTv.loadingRecordings' => '녹화 불러오는 중...',
|
||||
'liveTv.recordingInProgress' => '녹화 중',
|
||||
'liveTv.recordingsCount' => ({required Object count}) => '${count}개 예약됨',
|
||||
'liveTv.editRule' => '규칙 편집',
|
||||
@@ -3012,7 +2973,6 @@ extension on TranslationsKo {
|
||||
'collections.title' => '컬렉션',
|
||||
'collections.collection' => '컬렉션',
|
||||
'collections.empty' => '컬렉션이 비어 있습니다',
|
||||
'collections.unknownLibrarySection' => '삭제할 수 없습니다: 알 수 없는 미디어 라이브러리 섹션입니다',
|
||||
'collections.deleteCollection' => '컬렉션 삭제',
|
||||
'collections.deleteConfirm' => ({required Object title}) => '"${title}"을(를) 삭제할까요? 되돌릴 수 없습니다.',
|
||||
'collections.deleted' => '컬렉션 삭제됨',
|
||||
@@ -3050,6 +3010,7 @@ extension on TranslationsKo {
|
||||
'playlists.itemAdded' => '재생 목록에 추가 되었습니다',
|
||||
'playlists.itemRemoved' => '재생 목록에서 제거됨',
|
||||
'playlists.selectPlaylist' => '재생 목록 선택',
|
||||
'playlists.searchPlaylists' => '재생 목록 검색...',
|
||||
'playlists.errorCreating' => '재생 목록 생성 실패',
|
||||
'playlists.errorDeleting' => '재생 목록 삭제 실패',
|
||||
'playlists.errorLoading' => '재생 목록 로드 실패',
|
||||
@@ -3146,8 +3107,6 @@ extension on TranslationsKo {
|
||||
'downloads.tvShows' => 'TV 프로그램',
|
||||
'downloads.movies' => '영화',
|
||||
'downloads.music' => '음악',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.tracksQueued' => ({required Object count}) => '${count}곡 다운로드 대기 중',
|
||||
'downloads.noDownloads' => '다운로드 없음',
|
||||
'downloads.noDownloadsDescription' => '다운로드한 콘텐츠는 오프라인 시청을 위해 여기에 표시됩니다',
|
||||
@@ -3162,6 +3121,8 @@ extension on TranslationsKo {
|
||||
'downloads.deleteConfirm' => ({required Object title}) => '이 기기에서 "${title}"을(를) 삭제할까요?',
|
||||
'downloads.cancelledDownloadTitle' => '취소된 다운로드',
|
||||
'downloads.cancelledDownloadMessage' => '이 다운로드가 취소되었습니다. 어떻게 하시겠습니까?',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.allEpisodesAlreadyDownloaded' => '모든 에피소드가 이미 다운로드되었습니다',
|
||||
'downloads.resumeDownload' => '다운로드 재개',
|
||||
'downloads.cancelledDownload' => '취소된 다운로드',
|
||||
@@ -3185,7 +3146,6 @@ extension on TranslationsKo {
|
||||
'downloads.customAmount' => '직접 입력...',
|
||||
'downloads.includeSpecials' => '스페셜 포함',
|
||||
'downloads.howManyEpisodes' => '몇 개의 에피소드?',
|
||||
'downloads.itemsQueued' => ({required Object count}) => '${count}개 항목이 다운로드 대기열에 추가됨',
|
||||
'downloads.keepSynced' => '동기화 유지',
|
||||
'downloads.downloadOnce' => '한 번만 다운로드',
|
||||
'downloads.keepNUnwatched' => ({required Object count}) => '미시청 ${count}개 유지',
|
||||
@@ -3229,7 +3189,6 @@ extension on TranslationsKo {
|
||||
'companionRemote.connectedTo' => ({required Object name}) => '${name}에 연결됨',
|
||||
'companionRemote.unknownDevice' => '알 수 없는 기기',
|
||||
'companionRemote.session.startingServer' => '원격 서버 시작 중...',
|
||||
'companionRemote.session.failedToCreate' => '원격 서버를 시작하지 못했습니다:',
|
||||
'companionRemote.session.hostAddress' => '호스트 주소',
|
||||
'companionRemote.session.connected' => '연결됨',
|
||||
'companionRemote.session.serverRunning' => '원격 서버 활성',
|
||||
@@ -3284,6 +3243,8 @@ extension on TranslationsKo {
|
||||
'companionRemote.remote.searchHint' => '데스크톱에서 검색...',
|
||||
'companionRemote.errors.noNetworkInterface' => '네트워크 인터페이스를 찾을 수 없습니다',
|
||||
'companionRemote.errors.authenticationFailed' => '인증 실패',
|
||||
'companionRemote.errors.serverStartFailed' => ({required Object error}) => '원격 서버를 시작하지 못했습니다: ${error}',
|
||||
'companionRemote.errors.commandFailed' => ({required Object error}) => '원격 명령을 보내지 못했습니다: ${error}',
|
||||
'companionRemote.errors.joinTimedOut' => '세션 참가 시간이 초과되었습니다',
|
||||
'companionRemote.errors.failedToConnectAnyAddress' => '어떤 주소에도 연결하지 못했습니다',
|
||||
'companionRemote.errors.connectionLostAfterAttempts' => ({required Object attempts}) => '${attempts}회 시도 후 연결이 끊어졌습니다',
|
||||
@@ -3528,7 +3489,6 @@ extension on TranslationsKo {
|
||||
'addServer.quickConnectFailed' => ({required Object error}) => 'Quick Connect 실패: ${error}',
|
||||
'addServer.addPlexTitle' => 'Plex로 로그인',
|
||||
'addServer.pinExpired' => '로그인 전에 PIN이 만료되었습니다. 다시 시도하세요.',
|
||||
'addServer.duplicatePlexAccount' => '이미 Plex에 로그인되어 있습니다. 계정을 전환하려면 로그아웃하세요.',
|
||||
'addServer.failedToRegisterAccount' => ({required Object error}) => '계정 등록 실패: ${error}',
|
||||
'addServer.enterJellyfinUrlError' => 'Jellyfin 서버 URL을 입력하세요',
|
||||
'addServer.addConnectionTitle' => '연결 추가',
|
||||
|
||||
+68
-108
@@ -53,7 +53,6 @@ class TranslationsNb extends Translations with BaseTranslations<AppLocale, Trans
|
||||
@override late final _TranslationsAccessibilityNb accessibility = _TranslationsAccessibilityNb._(_root);
|
||||
@override late final _TranslationsTooltipsNb tooltips = _TranslationsTooltipsNb._(_root);
|
||||
@override late final _TranslationsVideoControlsNb videoControls = _TranslationsVideoControlsNb._(_root);
|
||||
@override late final _TranslationsUserStatusNb userStatus = _TranslationsUserStatusNb._(_root);
|
||||
@override late final _TranslationsMessagesNb messages = _TranslationsMessagesNb._(_root);
|
||||
@override late final _TranslationsSubtitlingStylingNb subtitlingStyling = _TranslationsSubtitlingStylingNb._(_root);
|
||||
@override late final _TranslationsMpvConfigNb mpvConfig = _TranslationsMpvConfigNb._(_root);
|
||||
@@ -107,7 +106,6 @@ class _TranslationsAuthNb extends TranslationsAuthEn {
|
||||
final TranslationsNb _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get signIn => 'Logg på';
|
||||
@override String get signInWithPlex => 'Logg inn med Plex';
|
||||
@override String get showQRCode => 'Vis QR-kode';
|
||||
@override String get authenticate => 'Autentiser';
|
||||
@@ -167,10 +165,8 @@ class _TranslationsCommonNb extends TranslationsCommonEn {
|
||||
@override String episodeNumberTitle({required Object number, required Object title}) => 'Episode ${number} - ${title}';
|
||||
@override String chapterNumber({required Object number}) => 'Kapittel ${number}';
|
||||
@override String get reconnect => 'Koble til på nytt';
|
||||
@override String get exit => 'Avslutt';
|
||||
@override String get viewAll => 'Vis alle';
|
||||
@override String get checkingNetwork => 'Sjekker nettverk...';
|
||||
@override String get refreshingServers => 'Oppdaterer servere...';
|
||||
@override String get loadingServers => 'Laster servere...';
|
||||
@override String get connectingToServers => 'Kobler til servere...';
|
||||
@override String get startingOfflineMode => 'Starter frakoblet modus...';
|
||||
@@ -271,6 +267,12 @@ class _TranslationsSettingsNb extends TranslationsSettingsEn {
|
||||
@override String get tvFullCardLayoutDescription => 'Bruk bildebaserte TV-kort med skuespillernavn lagt over';
|
||||
@override String get focusGlow => 'Fokusglød';
|
||||
@override String get focusGlowDescription => 'Vis en myk glød rundt kortet i fokus';
|
||||
@override String get visualEffects => 'Visuelle effekter';
|
||||
@override String get visualEffectsAuto => 'Automatisk';
|
||||
@override String get visualEffectsAutoDescription => 'Reduser effekter automatisk på enheter med lavt strømforbruk';
|
||||
@override String get visualEffectsFull => 'Full';
|
||||
@override String get visualEffectsReduced => 'Redusert';
|
||||
@override String get visualEffectsReducedDescription => 'Færre animasjoner og grafikk med lavere oppløsning';
|
||||
@override String get hideSpoilers => 'Skjul spoilere for usette episoder';
|
||||
@override String get hideSpoilersDescription => 'Slør miniatyrbilder og beskrivelser for usette episoder';
|
||||
@override String get playerBackend => 'Spillermotor';
|
||||
@@ -283,7 +285,7 @@ class _TranslationsSettingsNb extends TranslationsSettingsEn {
|
||||
@override String get bufferSizeAuto => 'Auto (Anbefalt)';
|
||||
@override String bufferSizeWarning({required Object heap, required Object size}) => '${heap}MB minne tilgjengelig. En buffer på ${size}MB kan påvirke avspilling.';
|
||||
@override String get defaultQualityTitle => 'Standardkvalitet';
|
||||
@override String get defaultQualityDescription => 'Brukes ved start av avspilling. Lavere verdier reduserer båndbredden.';
|
||||
@override String get musicQualityTitle => 'Musikkvalitet';
|
||||
@override String get subtitleStyling => 'Undertekststil';
|
||||
@override String get subtitleStylingDescription => 'Tilpass utseendet på undertekster';
|
||||
@override String get smallSkipDuration => 'Kort hoppvarighet';
|
||||
@@ -377,10 +379,9 @@ class _TranslationsSettingsNb extends TranslationsSettingsEn {
|
||||
@override String maxVolumePercent({required Object percent}) => '${percent}%';
|
||||
@override String get discordRichPresence => 'Discord Rich Presence';
|
||||
@override String get discordRichPresenceDescription => 'Vis hva du ser på Discord';
|
||||
@override String get trakt => 'Trakt';
|
||||
@override String get traktDescription => 'Synkroniser visningshistorikk med Trakt';
|
||||
@override String get services => 'Tjenester';
|
||||
@override String get servicesDescription => 'Koble til Trakt, MyAnimeList, Seerr og mer';
|
||||
@override String get manageLibrariesDescription => 'Omorganiser og skjul biblioteker';
|
||||
@override String get companionRemoteServer => 'Companion Remote-server';
|
||||
@override String get companionRemoteServerDescription => 'Tillat mobilenheter på nettverket ditt å styre denne appen';
|
||||
@override String get autoPip => 'Auto bilde-i-bilde';
|
||||
@@ -443,7 +444,6 @@ class _TranslationsSettingsNb extends TranslationsSettingsEn {
|
||||
@override String get showNavBarLabels => 'Vis navigasjonsfeltlabeler';
|
||||
@override String get showNavBarLabelsDescription => 'Vis tekstlabeler under navigasjonsfeltikoner';
|
||||
@override String get startupSection => 'Oppstartsseksjon';
|
||||
@override String get startupSectionDescription => 'Velg hvilken seksjon Plezy åpner ved oppstart';
|
||||
@override String get liveTvDefaultFavorites => 'Standard til favorittkanaler';
|
||||
@override String get liveTvDefaultFavoritesDescription => 'Vis kun favorittkanaler når du åpner Live TV';
|
||||
@override String get display => 'Skjerm';
|
||||
@@ -455,13 +455,6 @@ class _TranslationsSettingsNb extends TranslationsSettingsEn {
|
||||
@override String get subtitlesAndConfig => 'Undertekster og konfigurasjon';
|
||||
@override String get seekAndTiming => 'Søk og tidtaking';
|
||||
@override String get behavior => 'Atferd';
|
||||
@override String get manageLibrariesDescription => 'Omorganiser og skjul biblioteker';
|
||||
@override String get visualEffects => 'Visuelle effekter';
|
||||
@override String get visualEffectsAuto => 'Automatisk';
|
||||
@override String get visualEffectsAutoDescription => 'Reduser effekter automatisk på enheter med lavt strømforbruk';
|
||||
@override String get visualEffectsFull => 'Full';
|
||||
@override String get visualEffectsReduced => 'Redusert';
|
||||
@override String get visualEffectsReducedDescription => 'Færre animasjoner og grafikk med lavere oppløsning';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -559,14 +552,11 @@ class _TranslationsRateSheetNb extends TranslationsRateSheetEn {
|
||||
// Translations
|
||||
@override String get title => 'Vurder';
|
||||
@override String get server => 'Server';
|
||||
@override String starValue({required Object rating}) => '${rating} / 5';
|
||||
@override String scoreValue({required Object score}) => '${score} / 10';
|
||||
@override String get setScore => 'Sett en poengsum';
|
||||
@override String get favorite => 'Favoritt';
|
||||
@override String get favorited => 'Lagt til i favoritter';
|
||||
@override String get saved => 'Lagret';
|
||||
@override String get notAvailable => 'Ingen treff';
|
||||
@override String get noConnectedServices => 'Koble til en tjeneste i Innstillinger for å vurdere her.';
|
||||
@override String get favorite => 'Favoritt';
|
||||
@override String get favorited => 'Lagt til i favoritter';
|
||||
}
|
||||
|
||||
// Path: accessibility
|
||||
@@ -584,6 +574,14 @@ class _TranslationsAccessibilityNb extends TranslationsAccessibilityEn {
|
||||
@override String mediaCardPartiallyWatched({required Object percent}) => '${percent} prosent sett';
|
||||
@override String get mediaCardUnwatched => 'usett';
|
||||
@override String get tapToPlay => 'Trykk for å spille';
|
||||
@override String get decrease => 'Reduser';
|
||||
@override String get increase => 'Øk';
|
||||
@override String decreaseValue({required Object label}) => 'Reduser ${label}';
|
||||
@override String increaseValue({required Object label}) => 'Øk ${label}';
|
||||
@override String get hue => 'Fargetone';
|
||||
@override String get saturation => 'Metning';
|
||||
@override String get brightness => 'Lysstyrke';
|
||||
@override String get hexColor => 'Heksadesimal farge';
|
||||
}
|
||||
|
||||
// Path: tooltips
|
||||
@@ -643,13 +641,11 @@ class _TranslationsVideoControlsNb extends TranslationsVideoControlsEn {
|
||||
@override String get settingsButton => 'Avspillingsinnstillinger';
|
||||
@override String get tracksButton => 'Lyd og undertekster';
|
||||
@override String get chaptersButton => 'Kapitler';
|
||||
@override String get versionsButton => 'Videoversjoner';
|
||||
@override String get versionQualityButton => 'Versjon og kvalitet';
|
||||
@override String get versionColumnHeader => 'Versjon';
|
||||
@override String get qualityColumnHeader => 'Kvalitet';
|
||||
@override String get qualityOriginal => 'Original';
|
||||
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
|
||||
@override String qualityBandwidthEstimate({required Object bitrate}) => '~${bitrate} Mbps';
|
||||
@override String get transcodeUnavailableFallback => 'Transkoding utilgjengelig — spiller av i original kvalitet';
|
||||
@override String get pipButton => 'Bilde-i-bilde-modus';
|
||||
@override String get aspectRatioButton => 'Sideforhold';
|
||||
@@ -685,19 +681,6 @@ class _TranslationsVideoControlsNb extends TranslationsVideoControlsEn {
|
||||
@override String get searchLanguages => 'Søk etter språk...';
|
||||
}
|
||||
|
||||
// Path: userStatus
|
||||
class _TranslationsUserStatusNb extends TranslationsUserStatusEn {
|
||||
_TranslationsUserStatusNb._(TranslationsNb root) : this._root = root, super.internal(root);
|
||||
|
||||
final TranslationsNb _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get admin => 'Administrator';
|
||||
@override String get restricted => 'Begrenset';
|
||||
@override String get protected => 'Beskyttet';
|
||||
@override String get current => 'GJELDENDE';
|
||||
}
|
||||
|
||||
// Path: messages
|
||||
class _TranslationsMessagesNb extends TranslationsMessagesEn {
|
||||
_TranslationsMessagesNb._(TranslationsNb root) : this._root = root, super.internal(root);
|
||||
@@ -873,7 +856,6 @@ class _TranslationsProfilesNb extends TranslationsProfilesEn {
|
||||
@override String get pinExplain => '4-sifret PIN kreves for å bytte profiler.';
|
||||
@override String get continueButton => 'Fortsett';
|
||||
@override String get pinsDontMatch => 'PIN-ene samsvarer ikke';
|
||||
@override String get initializeServicesFailed => 'Kunne ikke initialisere profiltjenester';
|
||||
}
|
||||
|
||||
// Path: connections
|
||||
@@ -902,7 +884,6 @@ class _TranslationsDiscoverNb extends TranslationsDiscoverEn {
|
||||
|
||||
// Translations
|
||||
@override String get title => 'Oppdag';
|
||||
@override String get switchProfile => 'Bytt profil';
|
||||
@override String get noContentAvailable => 'Ingen innhold tilgjengelig';
|
||||
@override String get addMediaToLibraries => 'Legg til medier i bibliotekene dine';
|
||||
@override String get continueWatching => 'Fortsett å se';
|
||||
@@ -938,8 +919,6 @@ class _TranslationsErrorsNb extends TranslationsErrorsEn {
|
||||
@override String get connectionFailed => 'Kan ikke koble til medieserver';
|
||||
@override String failedToLoad({required Object context, required Object error}) => 'Kunne ikke laste ${context}: ${error}';
|
||||
@override String get noClientAvailable => 'Ingen klient tilgjengelig';
|
||||
@override String authenticationFailed({required Object error}) => 'Autentisering mislyktes: ${error}';
|
||||
@override String get couldNotLaunchUrl => 'Kunne ikke åpne autentiserings-URL';
|
||||
@override String get pleaseEnterToken => 'Vennligst skriv inn et token';
|
||||
@override String get invalidToken => 'Ugyldig token';
|
||||
@override String failedToVerifyToken({required Object error}) => 'Kunne ikke verifisere token: ${error}';
|
||||
@@ -973,6 +952,8 @@ class _TranslationsLibrariesNb extends TranslationsLibrariesEn {
|
||||
@override String get allLibrariesHidden => 'Alle biblioteker er skjult';
|
||||
@override String hiddenLibrariesCount({required Object count}) => 'Skjulte biblioteker (${count})';
|
||||
@override String get thisLibraryIsEmpty => 'Dette biblioteket er tomt';
|
||||
@override String get noItemsMatchFilters => 'Ingen elementer samsvarer med de aktive filtrene';
|
||||
@override String get resetFilters => 'Tilbakestill filtre';
|
||||
@override String get all => 'Alle';
|
||||
@override String get clearAll => 'Tøm alle';
|
||||
@override String scanLibraryConfirm({required Object title}) => 'Er du sikker på at du vil skanne "${title}"?';
|
||||
@@ -998,8 +979,6 @@ class _TranslationsLibrariesNb extends TranslationsLibrariesEn {
|
||||
@override late final _TranslationsLibrariesGroupingsNb groupings = _TranslationsLibrariesGroupingsNb._(_root);
|
||||
@override late final _TranslationsLibrariesFilterCategoriesNb filterCategories = _TranslationsLibrariesFilterCategoriesNb._(_root);
|
||||
@override late final _TranslationsLibrariesSortLabelsNb sortLabels = _TranslationsLibrariesSortLabelsNb._(_root);
|
||||
@override String get noItemsMatchFilters => 'Ingen elementer samsvarer med de aktive filtrene';
|
||||
@override String get resetFilters => 'Tilbakestill filtre';
|
||||
}
|
||||
|
||||
// Path: about
|
||||
@@ -1023,7 +1002,6 @@ class _TranslationsServerSelectionNb extends TranslationsServerSelectionEn {
|
||||
final TranslationsNb _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get allServerConnectionsFailed => 'Kunne ikke koble til noen servere. Sjekk nettverket ditt.';
|
||||
@override String noServersFoundForAccount({required Object username, required Object email}) => 'Ingen servere funnet for ${username} (${email})';
|
||||
@override String failedToLoadServers({required Object error}) => 'Kunne ikke laste servere: ${error}';
|
||||
}
|
||||
@@ -1090,10 +1068,6 @@ class _TranslationsExploreNb extends TranslationsExploreEn {
|
||||
@override String get title => 'Utforsk';
|
||||
@override String get selectSource => 'Velg kilde';
|
||||
@override late final _TranslationsExploreRowsNb rows = _TranslationsExploreRowsNb._(_root);
|
||||
@override String searchHint({required Object source}) => 'Søk i ${source}';
|
||||
@override String searchEmpty({required Object query}) => 'Ingen treff for "${query}"';
|
||||
@override String searchPrompt({required Object source}) => 'Søk etter filmer og serier på ${source}.';
|
||||
@override String get searchFailed => 'Søk mislyktes. Sjekk tilkoblingen og prøv igjen.';
|
||||
@override late final _TranslationsExploreStatusNb status = _TranslationsExploreStatusNb._(_root);
|
||||
@override String episodeCount({required num n}) => (_root.$meta.cardinalResolver ?? PluralResolvers.cardinal('nb'))(n,
|
||||
one: '${n} episode',
|
||||
@@ -1106,10 +1080,13 @@ class _TranslationsExploreNb extends TranslationsExploreEn {
|
||||
@override String get watchlistUpdateFailed => 'Kunne ikke oppdatere ønskelisten';
|
||||
@override String get notInLibrary => 'Ikke i biblioteket ditt';
|
||||
@override String get inTheseLibraries => 'I disse bibliotekene';
|
||||
@override String availableOn({required Object server}) => 'Tilgjengelig på ${server}';
|
||||
@override String get checkingLibrary => 'Sjekker biblioteket ditt...';
|
||||
@override String get emptyTitle => 'Ingenting her ennå';
|
||||
@override String emptyMessage({required Object source}) => 'Rader fra ${source} vises her når de har innhold.';
|
||||
@override String searchHint({required Object source}) => 'Søk i ${source}';
|
||||
@override String searchEmpty({required Object query}) => 'Ingen treff for "${query}"';
|
||||
@override String searchPrompt({required Object source}) => 'Søk etter filmer og serier på ${source}.';
|
||||
@override String get searchFailed => 'Søk mislyktes. Sjekk tilkoblingen og prøv igjen.';
|
||||
}
|
||||
|
||||
// Path: liveTv
|
||||
@@ -1123,6 +1100,8 @@ class _TranslationsLiveTvNb extends TranslationsLiveTvEn {
|
||||
@override String get guide => 'Programguide';
|
||||
@override String get noChannels => 'Ingen kanaler tilgjengelig';
|
||||
@override String get noDvr => 'Ingen DVR konfigurert på noen server';
|
||||
@override String get serverUnavailable => 'Direkte-TV-serveren er ikke tilgjengelig.';
|
||||
@override String get serverNotConnected => 'Direkte-TV-serveren er ikke tilkoblet.';
|
||||
@override String get noPrograms => 'Ingen programdata tilgjengelig';
|
||||
@override String get liveStreamFailed => 'Direktesending mislyktes';
|
||||
@override String get unknownProgram => 'Ukjent program';
|
||||
@@ -1158,7 +1137,6 @@ class _TranslationsLiveTvNb extends TranslationsLiveTvEn {
|
||||
@override String get scheduledRecordings => 'Planlagt';
|
||||
@override String get recordingRules => 'Opptaksregler';
|
||||
@override String get noScheduledRecordings => 'Ingen planlagte opptak';
|
||||
@override String get noRecordingRules => 'Ingen opptaksregler ennå';
|
||||
@override String get manageRecording => 'Administrer opptak';
|
||||
@override String get cancelRecording => 'Avbryt opptak';
|
||||
@override String get cancelRecordingTitle => 'Avbryte dette opptaket?';
|
||||
@@ -1175,7 +1153,6 @@ class _TranslationsLiveTvNb extends TranslationsLiveTvEn {
|
||||
@override String get recordingCancelled => 'Opptak avbrutt';
|
||||
@override String get recordingRuleDeleted => 'Opptaksregel slettet';
|
||||
@override String get processRecordingRules => 'Vurder regler på nytt';
|
||||
@override String get loadingRecordings => 'Laster opptak ...';
|
||||
@override String get recordingInProgress => 'Tar opp nå';
|
||||
@override String recordingsCount({required Object count}) => '${count} planlagt';
|
||||
@override String get editRule => 'Rediger regel';
|
||||
@@ -1196,7 +1173,6 @@ class _TranslationsCollectionsNb extends TranslationsCollectionsEn {
|
||||
@override String get title => 'Samlinger';
|
||||
@override String get collection => 'Samling';
|
||||
@override String get empty => 'Samlingen er tom';
|
||||
@override String get unknownLibrarySection => 'Kan ikke slette: Ukjent bibliotekseksjon';
|
||||
@override String get deleteCollection => 'Slett samling';
|
||||
@override String deleteConfirm({required Object title}) => 'Slette "${title}"? Dette kan ikke angres.';
|
||||
@override String get deleted => 'Samling slettet';
|
||||
@@ -1243,6 +1219,7 @@ class _TranslationsPlaylistsNb extends TranslationsPlaylistsEn {
|
||||
@override String get itemAdded => 'Lagt til i spilleliste';
|
||||
@override String get itemRemoved => 'Fjernet fra spilleliste';
|
||||
@override String get selectPlaylist => 'Velg spilleliste';
|
||||
@override String get searchPlaylists => 'Søk i spillelister...';
|
||||
@override String get errorCreating => 'Kunne ikke opprette spilleliste';
|
||||
@override String get errorDeleting => 'Kunne ikke slette spilleliste';
|
||||
@override String get errorLoading => 'Kunne ikke laste spillelister';
|
||||
@@ -1346,15 +1323,15 @@ class _TranslationsWatchTogetherNb extends TranslationsWatchTogetherEn {
|
||||
@override String participantResumed({required Object name}) => '${name} gjenopptok';
|
||||
@override String participantSeeked({required Object name}) => '${name} spolet';
|
||||
@override String participantBuffering({required Object name}) => '${name} buffrer';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} bruker en eldre appversjon — synkronisering er ikke tilgjengelig';
|
||||
@override String resumingWithout({required Object name}) => 'Fortsetter uten ${name}';
|
||||
@override String get waitingForParticipants => 'Venter på at andre laster inn...';
|
||||
@override String waitingForName({required Object name}) => 'Venter på ${name}...';
|
||||
@override String get recentRooms => 'Nylige rom';
|
||||
@override String get renameRoom => 'Gi nytt navn til rom';
|
||||
@override String get removeRoom => 'Fjern';
|
||||
@override String get guestSwitchUnavailable => 'Kunne ikke bytte — server ikke tilgjengelig for synkronisering';
|
||||
@override String get guestSwitchFailed => 'Kunne ikke bytte — innhold ble ikke funnet på denne serveren';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} bruker en eldre appversjon — synkronisering er ikke tilgjengelig';
|
||||
@override String resumingWithout({required Object name}) => 'Fortsetter uten ${name}';
|
||||
@override String waitingForName({required Object name}) => 'Venter på ${name}...';
|
||||
}
|
||||
|
||||
// Path: downloads
|
||||
@@ -1406,7 +1383,6 @@ class _TranslationsDownloadsNb extends TranslationsDownloadsEn {
|
||||
@override String get customAmount => 'Egendefinert antall...';
|
||||
@override String get includeSpecials => 'Inkluder spesialepisoder';
|
||||
@override String get howManyEpisodes => 'Hvor mange episoder?';
|
||||
@override String itemsQueued({required Object count}) => '${count} elementer i nedlastingskø';
|
||||
@override String get keepSynced => 'Hold synkronisert';
|
||||
@override String get downloadOnce => 'Last ned én gang';
|
||||
@override String keepNUnwatched({required Object count}) => 'Behold ${count} usette';
|
||||
@@ -1780,7 +1756,6 @@ class _TranslationsAddServerNb extends TranslationsAddServerEn {
|
||||
@override String quickConnectFailed({required Object error}) => 'Quick Connect mislyktes: ${error}';
|
||||
@override String get addPlexTitle => 'Logg på med Plex';
|
||||
@override String get pinExpired => 'PIN-koden gikk ut før pålogging. Prøv igjen.';
|
||||
@override String get duplicatePlexAccount => 'Allerede logget inn på Plex. Logg ut for å bytte konto.';
|
||||
@override String failedToRegisterAccount({required Object error}) => 'Kunne ikke registrere kontoen: ${error}';
|
||||
@override String get enterJellyfinUrlError => 'Oppgi URL-en til Jellyfin-serveren din';
|
||||
@override String get addConnectionTitle => 'Legg til tilkobling';
|
||||
@@ -1906,7 +1881,6 @@ class _TranslationsLibrariesSortLabelsNb extends TranslationsLibrariesSortLabels
|
||||
@override String get communityRating => 'Fellesskapsvurdering';
|
||||
@override String get criticRating => 'Kritikervurdering';
|
||||
@override String get userRating => 'Brukervurdering';
|
||||
@override String get lastPlayed => 'Sist spilt';
|
||||
@override String get datePlayed => 'Avspillingsdato';
|
||||
@override String get playCount => 'Avspillinger';
|
||||
@override String get productionYear => 'Produksjonsår';
|
||||
@@ -1965,7 +1939,6 @@ class _TranslationsCompanionRemoteSessionNb extends TranslationsCompanionRemoteS
|
||||
|
||||
// Translations
|
||||
@override String get startingServer => 'Starter fjernserver...';
|
||||
@override String get failedToCreate => 'Kunne ikke starte fjernserver:';
|
||||
@override String get hostAddress => 'Vertsadresse';
|
||||
@override String get connected => 'Tilkoblet';
|
||||
@override String get serverRunning => 'Fjernserver aktiv';
|
||||
@@ -2047,6 +2020,8 @@ class _TranslationsCompanionRemoteErrorsNb extends TranslationsCompanionRemoteEr
|
||||
// Translations
|
||||
@override String get noNetworkInterface => 'Fant ingen nettverksgrensesnitt';
|
||||
@override String get authenticationFailed => 'Autentisering mislyktes';
|
||||
@override String serverStartFailed({required Object error}) => 'Kunne ikke starte fjernserveren: ${error}';
|
||||
@override String commandFailed({required Object error}) => 'Kunne ikke sende fjernkommando: ${error}';
|
||||
@override String get joinTimedOut => 'Tidsavbrudd ved tilkobling til økt';
|
||||
@override String get failedToConnectAnyAddress => 'Kunne ikke koble til noen adresse';
|
||||
@override String connectionLostAfterAttempts({required Object attempts}) => 'Tilkobling mistet etter ${attempts} forsøk';
|
||||
@@ -2123,7 +2098,6 @@ extension on TranslationsNb {
|
||||
dynamic _flatMapFunction(String path) {
|
||||
return switch (path) {
|
||||
'app.title' => 'Plezy',
|
||||
'auth.signIn' => 'Logg på',
|
||||
'auth.signInWithPlex' => 'Logg inn med Plex',
|
||||
'auth.showQRCode' => 'Vis QR-kode',
|
||||
'auth.authenticate' => 'Autentiser',
|
||||
@@ -2174,10 +2148,8 @@ extension on TranslationsNb {
|
||||
'common.episodeNumberTitle' => ({required Object number, required Object title}) => 'Episode ${number} - ${title}',
|
||||
'common.chapterNumber' => ({required Object number}) => 'Kapittel ${number}',
|
||||
'common.reconnect' => 'Koble til på nytt',
|
||||
'common.exit' => 'Avslutt',
|
||||
'common.viewAll' => 'Vis alle',
|
||||
'common.checkingNetwork' => 'Sjekker nettverk...',
|
||||
'common.refreshingServers' => 'Oppdaterer servere...',
|
||||
'common.loadingServers' => 'Laster servere...',
|
||||
'common.connectingToServers' => 'Kobler til servere...',
|
||||
'common.startingOfflineMode' => 'Starter frakoblet modus...',
|
||||
@@ -2251,6 +2223,12 @@ extension on TranslationsNb {
|
||||
'settings.tvFullCardLayoutDescription' => 'Bruk bildebaserte TV-kort med skuespillernavn lagt over',
|
||||
'settings.focusGlow' => 'Fokusglød',
|
||||
'settings.focusGlowDescription' => 'Vis en myk glød rundt kortet i fokus',
|
||||
'settings.visualEffects' => 'Visuelle effekter',
|
||||
'settings.visualEffectsAuto' => 'Automatisk',
|
||||
'settings.visualEffectsAutoDescription' => 'Reduser effekter automatisk på enheter med lavt strømforbruk',
|
||||
'settings.visualEffectsFull' => 'Full',
|
||||
'settings.visualEffectsReduced' => 'Redusert',
|
||||
'settings.visualEffectsReducedDescription' => 'Færre animasjoner og grafikk med lavere oppløsning',
|
||||
'settings.hideSpoilers' => 'Skjul spoilere for usette episoder',
|
||||
'settings.hideSpoilersDescription' => 'Slør miniatyrbilder og beskrivelser for usette episoder',
|
||||
'settings.playerBackend' => 'Spillermotor',
|
||||
@@ -2263,7 +2241,7 @@ extension on TranslationsNb {
|
||||
'settings.bufferSizeAuto' => 'Auto (Anbefalt)',
|
||||
'settings.bufferSizeWarning' => ({required Object heap, required Object size}) => '${heap}MB minne tilgjengelig. En buffer på ${size}MB kan påvirke avspilling.',
|
||||
'settings.defaultQualityTitle' => 'Standardkvalitet',
|
||||
'settings.defaultQualityDescription' => 'Brukes ved start av avspilling. Lavere verdier reduserer båndbredden.',
|
||||
'settings.musicQualityTitle' => 'Musikkvalitet',
|
||||
'settings.subtitleStyling' => 'Undertekststil',
|
||||
'settings.subtitleStylingDescription' => 'Tilpass utseendet på undertekster',
|
||||
'settings.smallSkipDuration' => 'Kort hoppvarighet',
|
||||
@@ -2357,10 +2335,9 @@ extension on TranslationsNb {
|
||||
'settings.maxVolumePercent' => ({required Object percent}) => '${percent}%',
|
||||
'settings.discordRichPresence' => 'Discord Rich Presence',
|
||||
'settings.discordRichPresenceDescription' => 'Vis hva du ser på Discord',
|
||||
'settings.trakt' => 'Trakt',
|
||||
'settings.traktDescription' => 'Synkroniser visningshistorikk med Trakt',
|
||||
'settings.services' => 'Tjenester',
|
||||
'settings.servicesDescription' => 'Koble til Trakt, MyAnimeList, Seerr og mer',
|
||||
'settings.manageLibrariesDescription' => 'Omorganiser og skjul biblioteker',
|
||||
'settings.companionRemoteServer' => 'Companion Remote-server',
|
||||
'settings.companionRemoteServerDescription' => 'Tillat mobilenheter på nettverket ditt å styre denne appen',
|
||||
'settings.autoPip' => 'Auto bilde-i-bilde',
|
||||
@@ -2423,7 +2400,6 @@ extension on TranslationsNb {
|
||||
'settings.showNavBarLabels' => 'Vis navigasjonsfeltlabeler',
|
||||
'settings.showNavBarLabelsDescription' => 'Vis tekstlabeler under navigasjonsfeltikoner',
|
||||
'settings.startupSection' => 'Oppstartsseksjon',
|
||||
'settings.startupSectionDescription' => 'Velg hvilken seksjon Plezy åpner ved oppstart',
|
||||
'settings.liveTvDefaultFavorites' => 'Standard til favorittkanaler',
|
||||
'settings.liveTvDefaultFavoritesDescription' => 'Vis kun favorittkanaler når du åpner Live TV',
|
||||
'settings.display' => 'Skjerm',
|
||||
@@ -2435,13 +2411,6 @@ extension on TranslationsNb {
|
||||
'settings.subtitlesAndConfig' => 'Undertekster og konfigurasjon',
|
||||
'settings.seekAndTiming' => 'Søk og tidtaking',
|
||||
'settings.behavior' => 'Atferd',
|
||||
'settings.manageLibrariesDescription' => 'Omorganiser og skjul biblioteker',
|
||||
'settings.visualEffects' => 'Visuelle effekter',
|
||||
'settings.visualEffectsAuto' => 'Automatisk',
|
||||
'settings.visualEffectsAutoDescription' => 'Reduser effekter automatisk på enheter med lavt strømforbruk',
|
||||
'settings.visualEffectsFull' => 'Full',
|
||||
'settings.visualEffectsReduced' => 'Redusert',
|
||||
'settings.visualEffectsReducedDescription' => 'Færre animasjoner og grafikk med lavere oppløsning',
|
||||
'search.hint' => 'Søk i filmer, serier, musikk...',
|
||||
'search.tryDifferentTerm' => 'Prøv et annet søkeord',
|
||||
'search.searchYourMedia' => 'Søk i mediene dine',
|
||||
@@ -2518,14 +2487,11 @@ extension on TranslationsNb {
|
||||
'mediaMenu.playVersion' => 'Spill av versjon...',
|
||||
'rateSheet.title' => 'Vurder',
|
||||
'rateSheet.server' => 'Server',
|
||||
'rateSheet.starValue' => ({required Object rating}) => '${rating} / 5',
|
||||
'rateSheet.scoreValue' => ({required Object score}) => '${score} / 10',
|
||||
'rateSheet.setScore' => 'Sett en poengsum',
|
||||
'rateSheet.favorite' => 'Favoritt',
|
||||
'rateSheet.favorited' => 'Lagt til i favoritter',
|
||||
'rateSheet.saved' => 'Lagret',
|
||||
'rateSheet.notAvailable' => 'Ingen treff',
|
||||
'rateSheet.noConnectedServices' => 'Koble til en tjeneste i Innstillinger for å vurdere her.',
|
||||
'rateSheet.favorite' => 'Favoritt',
|
||||
'rateSheet.favorited' => 'Lagt til i favoritter',
|
||||
'accessibility.mediaCardMovie' => ({required Object title}) => '${title}, film',
|
||||
'accessibility.mediaCardShow' => ({required Object title}) => '${title}, TV-serie',
|
||||
'accessibility.mediaCardEpisode' => ({required Object title, required Object episodeInfo}) => '${title}, ${episodeInfo}',
|
||||
@@ -2534,6 +2500,14 @@ extension on TranslationsNb {
|
||||
'accessibility.mediaCardPartiallyWatched' => ({required Object percent}) => '${percent} prosent sett',
|
||||
'accessibility.mediaCardUnwatched' => 'usett',
|
||||
'accessibility.tapToPlay' => 'Trykk for å spille',
|
||||
'accessibility.decrease' => 'Reduser',
|
||||
'accessibility.increase' => 'Øk',
|
||||
'accessibility.decreaseValue' => ({required Object label}) => 'Reduser ${label}',
|
||||
'accessibility.increaseValue' => ({required Object label}) => 'Øk ${label}',
|
||||
'accessibility.hue' => 'Fargetone',
|
||||
'accessibility.saturation' => 'Metning',
|
||||
'accessibility.brightness' => 'Lysstyrke',
|
||||
'accessibility.hexColor' => 'Heksadesimal farge',
|
||||
'tooltips.shufflePlay' => 'Tilfeldig avspilling',
|
||||
'tooltips.playTrailer' => 'Spill trailer',
|
||||
'tooltips.markAsWatched' => 'Merk som sett',
|
||||
@@ -2575,13 +2549,11 @@ extension on TranslationsNb {
|
||||
'videoControls.settingsButton' => 'Avspillingsinnstillinger',
|
||||
'videoControls.tracksButton' => 'Lyd og undertekster',
|
||||
'videoControls.chaptersButton' => 'Kapitler',
|
||||
'videoControls.versionsButton' => 'Videoversjoner',
|
||||
'videoControls.versionQualityButton' => 'Versjon og kvalitet',
|
||||
'videoControls.versionColumnHeader' => 'Versjon',
|
||||
'videoControls.qualityColumnHeader' => 'Kvalitet',
|
||||
'videoControls.qualityOriginal' => 'Original',
|
||||
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
|
||||
'videoControls.qualityBandwidthEstimate' => ({required Object bitrate}) => '~${bitrate} Mbps',
|
||||
'videoControls.transcodeUnavailableFallback' => 'Transkoding utilgjengelig — spiller av i original kvalitet',
|
||||
'videoControls.pipButton' => 'Bilde-i-bilde-modus',
|
||||
'videoControls.aspectRatioButton' => 'Sideforhold',
|
||||
@@ -2621,10 +2593,6 @@ extension on TranslationsNb {
|
||||
'videoControls.subtitleDownloaded' => 'Undertekst lastet ned',
|
||||
'videoControls.subtitleDownloadFailed' => 'Kunne ikke laste ned undertekst',
|
||||
'videoControls.searchLanguages' => 'Søk etter språk...',
|
||||
'userStatus.admin' => 'Administrator',
|
||||
'userStatus.restricted' => 'Begrenset',
|
||||
'userStatus.protected' => 'Beskyttet',
|
||||
'userStatus.current' => 'GJELDENDE',
|
||||
'messages.markedAsWatched' => 'Merket som sett',
|
||||
'messages.markedAsUnwatched' => 'Merket som usett',
|
||||
'messages.markedAsWatchedOffline' => 'Merket som sett (synkroniseres når tilkoblet)',
|
||||
@@ -2634,8 +2602,6 @@ extension on TranslationsNb {
|
||||
'messages.errorLoading' => ({required Object error}) => 'Feil: ${error}',
|
||||
'messages.streamInterrupted' => 'Avspillingen ble avbrutt. Trykk på Spill av eller spol for å prøve på nytt.',
|
||||
'messages.fileInfoNotAvailable' => 'Filinformasjon ikke tilgjengelig',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Feil ved lasting av filinformasjon: ${error}',
|
||||
'messages.errorLoadingSeries' => 'Feil ved lasting av serie',
|
||||
'messages.musicNotSupported' => 'Musikkavspilling støttes ikke ennå',
|
||||
@@ -2643,6 +2609,8 @@ extension on TranslationsNb {
|
||||
'messages.noProfilesAvailable' => 'Ingen profiler tilgjengelige',
|
||||
'messages.contactAdminForProfiles' => 'Kontakt serveradministratoren din for å legge til profiler',
|
||||
'messages.unableToDetermineLibrarySection' => 'Kan ikke fastslå bibliotekseksjonen for dette elementet',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.logsCleared' => 'Logger tømt',
|
||||
'messages.logsCopied' => 'Logger kopiert til utklippstavle',
|
||||
'messages.noLogsAvailable' => 'Ingen logger tilgjengelig',
|
||||
@@ -2759,7 +2727,6 @@ extension on TranslationsNb {
|
||||
'profiles.pinExplain' => '4-sifret PIN kreves for å bytte profiler.',
|
||||
'profiles.continueButton' => 'Fortsett',
|
||||
'profiles.pinsDontMatch' => 'PIN-ene samsvarer ikke',
|
||||
'profiles.initializeServicesFailed' => 'Kunne ikke initialisere profiltjenester',
|
||||
'connections.sectionTitle' => 'Tilkoblinger',
|
||||
'connections.addConnection' => 'Legg til tilkobling',
|
||||
'connections.addConnectionSubtitleNoProfile' => 'Logg inn med Plex eller koble til en Jellyfin-server',
|
||||
@@ -2770,7 +2737,6 @@ extension on TranslationsNb {
|
||||
'connections.editJellyfinTitle' => 'Rediger Jellyfin-tilkobling',
|
||||
'connections.editJellyfinIntro' => ({required Object serverName}) => 'Legg til eller fjern URL-er for ${serverName}. Plezy bruker den tilgjengelige URL-en med lavest forsinkelse.',
|
||||
'discover.title' => 'Oppdag',
|
||||
'discover.switchProfile' => 'Bytt profil',
|
||||
'discover.noContentAvailable' => 'Ingen innhold tilgjengelig',
|
||||
'discover.addMediaToLibraries' => 'Legg til medier i bibliotekene dine',
|
||||
'discover.continueWatching' => 'Fortsett å se',
|
||||
@@ -2797,8 +2763,6 @@ extension on TranslationsNb {
|
||||
'errors.connectionFailed' => 'Kan ikke koble til medieserver',
|
||||
'errors.failedToLoad' => ({required Object context, required Object error}) => 'Kunne ikke laste ${context}: ${error}',
|
||||
'errors.noClientAvailable' => 'Ingen klient tilgjengelig',
|
||||
'errors.authenticationFailed' => ({required Object error}) => 'Autentisering mislyktes: ${error}',
|
||||
'errors.couldNotLaunchUrl' => 'Kunne ikke åpne autentiserings-URL',
|
||||
'errors.pleaseEnterToken' => 'Vennligst skriv inn et token',
|
||||
'errors.invalidToken' => 'Ugyldig token',
|
||||
'errors.failedToVerifyToken' => ({required Object error}) => 'Kunne ikke verifisere token: ${error}',
|
||||
@@ -2823,6 +2787,8 @@ extension on TranslationsNb {
|
||||
'libraries.allLibrariesHidden' => 'Alle biblioteker er skjult',
|
||||
'libraries.hiddenLibrariesCount' => ({required Object count}) => 'Skjulte biblioteker (${count})',
|
||||
'libraries.thisLibraryIsEmpty' => 'Dette biblioteket er tomt',
|
||||
'libraries.noItemsMatchFilters' => 'Ingen elementer samsvarer med de aktive filtrene',
|
||||
'libraries.resetFilters' => 'Tilbakestill filtre',
|
||||
'libraries.all' => 'Alle',
|
||||
'libraries.clearAll' => 'Tøm alle',
|
||||
'libraries.scanLibraryConfirm' => ({required Object title}) => 'Er du sikker på at du vil skanne "${title}"?',
|
||||
@@ -2871,7 +2837,6 @@ extension on TranslationsNb {
|
||||
'libraries.sortLabels.communityRating' => 'Fellesskapsvurdering',
|
||||
'libraries.sortLabels.criticRating' => 'Kritikervurdering',
|
||||
'libraries.sortLabels.userRating' => 'Brukervurdering',
|
||||
'libraries.sortLabels.lastPlayed' => 'Sist spilt',
|
||||
'libraries.sortLabels.datePlayed' => 'Avspillingsdato',
|
||||
'libraries.sortLabels.playCount' => 'Avspillinger',
|
||||
'libraries.sortLabels.productionYear' => 'Produksjonsår',
|
||||
@@ -2885,14 +2850,11 @@ extension on TranslationsNb {
|
||||
'libraries.sortLabels.dateShared' => 'Delingsdato',
|
||||
'libraries.sortLabels.latestEpisodeAirDate' => 'Siste episodes sendedato',
|
||||
'libraries.sortLabels.lastEpisodeDateAdded' => 'Dato for sist lagt til episode',
|
||||
'libraries.noItemsMatchFilters' => 'Ingen elementer samsvarer med de aktive filtrene',
|
||||
'libraries.resetFilters' => 'Tilbakestill filtre',
|
||||
'about.title' => 'Om',
|
||||
'about.openSourceLicenses' => 'Åpen kildekode-lisenser',
|
||||
'about.versionLabel' => ({required Object version}) => 'Versjon ${version}',
|
||||
'about.appDescription' => 'En vakker Plex- og Jellyfin-klient for Flutter',
|
||||
'about.viewLicensesDescription' => 'Vis lisenser for tredjepartsbiblioteker',
|
||||
'serverSelection.allServerConnectionsFailed' => 'Kunne ikke koble til noen servere. Sjekk nettverket ditt.',
|
||||
'serverSelection.noServersFoundForAccount' => ({required Object username, required Object email}) => 'Ingen servere funnet for ${username} (${email})',
|
||||
'serverSelection.failedToLoadServers' => ({required Object error}) => 'Kunne ikke laste servere: ${error}',
|
||||
'hubDetail.title' => 'Tittel',
|
||||
@@ -2926,10 +2888,6 @@ extension on TranslationsNb {
|
||||
'explore.rows.trending' => 'Trending',
|
||||
'explore.rows.upcomingMovies' => 'Kommende filmer',
|
||||
'explore.rows.upcomingShows' => 'Kommende serier',
|
||||
'explore.searchHint' => ({required Object source}) => 'Søk i ${source}',
|
||||
'explore.searchEmpty' => ({required Object query}) => 'Ingen treff for "${query}"',
|
||||
'explore.searchPrompt' => ({required Object source}) => 'Søk etter filmer og serier på ${source}.',
|
||||
'explore.searchFailed' => 'Søk mislyktes. Sjekk tilkoblingen og prøv igjen.',
|
||||
'explore.status.airing' => 'Sendes',
|
||||
'explore.status.ended' => 'Avsluttet',
|
||||
'explore.status.canceled' => 'Avlyst',
|
||||
@@ -2942,14 +2900,19 @@ extension on TranslationsNb {
|
||||
'explore.watchlistUpdateFailed' => 'Kunne ikke oppdatere ønskelisten',
|
||||
'explore.notInLibrary' => 'Ikke i biblioteket ditt',
|
||||
'explore.inTheseLibraries' => 'I disse bibliotekene',
|
||||
'explore.availableOn' => ({required Object server}) => 'Tilgjengelig på ${server}',
|
||||
'explore.checkingLibrary' => 'Sjekker biblioteket ditt...',
|
||||
'explore.emptyTitle' => 'Ingenting her ennå',
|
||||
'explore.emptyMessage' => ({required Object source}) => 'Rader fra ${source} vises her når de har innhold.',
|
||||
'explore.searchHint' => ({required Object source}) => 'Søk i ${source}',
|
||||
'explore.searchEmpty' => ({required Object query}) => 'Ingen treff for "${query}"',
|
||||
'explore.searchPrompt' => ({required Object source}) => 'Søk etter filmer og serier på ${source}.',
|
||||
'explore.searchFailed' => 'Søk mislyktes. Sjekk tilkoblingen og prøv igjen.',
|
||||
'liveTv.title' => 'Direkte-TV',
|
||||
'liveTv.guide' => 'Programguide',
|
||||
'liveTv.noChannels' => 'Ingen kanaler tilgjengelig',
|
||||
'liveTv.noDvr' => 'Ingen DVR konfigurert på noen server',
|
||||
'liveTv.serverUnavailable' => 'Direkte-TV-serveren er ikke tilgjengelig.',
|
||||
'liveTv.serverNotConnected' => 'Direkte-TV-serveren er ikke tilkoblet.',
|
||||
'liveTv.noPrograms' => 'Ingen programdata tilgjengelig',
|
||||
'liveTv.liveStreamFailed' => 'Direktesending mislyktes',
|
||||
'liveTv.unknownProgram' => 'Ukjent program',
|
||||
@@ -2985,7 +2948,6 @@ extension on TranslationsNb {
|
||||
'liveTv.scheduledRecordings' => 'Planlagt',
|
||||
'liveTv.recordingRules' => 'Opptaksregler',
|
||||
'liveTv.noScheduledRecordings' => 'Ingen planlagte opptak',
|
||||
'liveTv.noRecordingRules' => 'Ingen opptaksregler ennå',
|
||||
'liveTv.manageRecording' => 'Administrer opptak',
|
||||
'liveTv.cancelRecording' => 'Avbryt opptak',
|
||||
'liveTv.cancelRecordingTitle' => 'Avbryte dette opptaket?',
|
||||
@@ -3002,7 +2964,6 @@ extension on TranslationsNb {
|
||||
'liveTv.recordingCancelled' => 'Opptak avbrutt',
|
||||
'liveTv.recordingRuleDeleted' => 'Opptaksregel slettet',
|
||||
'liveTv.processRecordingRules' => 'Vurder regler på nytt',
|
||||
'liveTv.loadingRecordings' => 'Laster opptak ...',
|
||||
'liveTv.recordingInProgress' => 'Tar opp nå',
|
||||
'liveTv.recordingsCount' => ({required Object count}) => '${count} planlagt',
|
||||
'liveTv.editRule' => 'Rediger regel',
|
||||
@@ -3014,7 +2975,6 @@ extension on TranslationsNb {
|
||||
'collections.title' => 'Samlinger',
|
||||
'collections.collection' => 'Samling',
|
||||
'collections.empty' => 'Samlingen er tom',
|
||||
'collections.unknownLibrarySection' => 'Kan ikke slette: Ukjent bibliotekseksjon',
|
||||
'collections.deleteCollection' => 'Slett samling',
|
||||
'collections.deleteConfirm' => ({required Object title}) => 'Slette "${title}"? Dette kan ikke angres.',
|
||||
'collections.deleted' => 'Samling slettet',
|
||||
@@ -3052,6 +3012,7 @@ extension on TranslationsNb {
|
||||
'playlists.itemAdded' => 'Lagt til i spilleliste',
|
||||
'playlists.itemRemoved' => 'Fjernet fra spilleliste',
|
||||
'playlists.selectPlaylist' => 'Velg spilleliste',
|
||||
'playlists.searchPlaylists' => 'Søk i spillelister...',
|
||||
'playlists.errorCreating' => 'Kunne ikke opprette spilleliste',
|
||||
'playlists.errorDeleting' => 'Kunne ikke slette spilleliste',
|
||||
'playlists.errorLoading' => 'Kunne ikke laste spillelister',
|
||||
@@ -3134,22 +3095,20 @@ extension on TranslationsNb {
|
||||
'watchTogether.participantResumed' => ({required Object name}) => '${name} gjenopptok',
|
||||
'watchTogether.participantSeeked' => ({required Object name}) => '${name} spolet',
|
||||
'watchTogether.participantBuffering' => ({required Object name}) => '${name} buffrer',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} bruker en eldre appversjon — synkronisering er ikke tilgjengelig',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Fortsetter uten ${name}',
|
||||
'watchTogether.waitingForParticipants' => 'Venter på at andre laster inn...',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Venter på ${name}...',
|
||||
'watchTogether.recentRooms' => 'Nylige rom',
|
||||
'watchTogether.renameRoom' => 'Gi nytt navn til rom',
|
||||
'watchTogether.removeRoom' => 'Fjern',
|
||||
'watchTogether.guestSwitchUnavailable' => 'Kunne ikke bytte — server ikke tilgjengelig for synkronisering',
|
||||
'watchTogether.guestSwitchFailed' => 'Kunne ikke bytte — innhold ble ikke funnet på denne serveren',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} bruker en eldre appversjon — synkronisering er ikke tilgjengelig',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Fortsetter uten ${name}',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Venter på ${name}...',
|
||||
'downloads.title' => 'Nedlastinger',
|
||||
'downloads.manage' => 'Administrer',
|
||||
'downloads.tvShows' => 'TV-serier',
|
||||
'downloads.movies' => 'Filmer',
|
||||
'downloads.music' => 'Musikk',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.tracksQueued' => ({required Object count}) => '${count} spor i nedlastingskø',
|
||||
'downloads.noDownloads' => 'Ingen nedlastinger ennå',
|
||||
'downloads.noDownloadsDescription' => 'Nedlastet innhold vil vises her for frakoblet visning',
|
||||
@@ -3164,6 +3123,8 @@ extension on TranslationsNb {
|
||||
'downloads.deleteConfirm' => ({required Object title}) => 'Slette "${title}" fra denne enheten?',
|
||||
'downloads.cancelledDownloadTitle' => 'Avbrutt nedlasting',
|
||||
'downloads.cancelledDownloadMessage' => 'Denne nedlastingen ble avbrutt. Hva vil du gjøre?',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.allEpisodesAlreadyDownloaded' => 'Alle episoder er allerede lastet ned',
|
||||
'downloads.resumeDownload' => 'Gjenoppta nedlasting',
|
||||
'downloads.cancelledDownload' => 'Avbrutt nedlasting',
|
||||
@@ -3187,7 +3148,6 @@ extension on TranslationsNb {
|
||||
'downloads.customAmount' => 'Egendefinert antall...',
|
||||
'downloads.includeSpecials' => 'Inkluder spesialepisoder',
|
||||
'downloads.howManyEpisodes' => 'Hvor mange episoder?',
|
||||
'downloads.itemsQueued' => ({required Object count}) => '${count} elementer i nedlastingskø',
|
||||
'downloads.keepSynced' => 'Hold synkronisert',
|
||||
'downloads.downloadOnce' => 'Last ned én gang',
|
||||
'downloads.keepNUnwatched' => ({required Object count}) => 'Behold ${count} usette',
|
||||
@@ -3231,7 +3191,6 @@ extension on TranslationsNb {
|
||||
'companionRemote.connectedTo' => ({required Object name}) => 'Tilkoblet ${name}',
|
||||
'companionRemote.unknownDevice' => 'Ukjent enhet',
|
||||
'companionRemote.session.startingServer' => 'Starter fjernserver...',
|
||||
'companionRemote.session.failedToCreate' => 'Kunne ikke starte fjernserver:',
|
||||
'companionRemote.session.hostAddress' => 'Vertsadresse',
|
||||
'companionRemote.session.connected' => 'Tilkoblet',
|
||||
'companionRemote.session.serverRunning' => 'Fjernserver aktiv',
|
||||
@@ -3286,6 +3245,8 @@ extension on TranslationsNb {
|
||||
'companionRemote.remote.searchHint' => 'Søk på stasjonær...',
|
||||
'companionRemote.errors.noNetworkInterface' => 'Fant ingen nettverksgrensesnitt',
|
||||
'companionRemote.errors.authenticationFailed' => 'Autentisering mislyktes',
|
||||
'companionRemote.errors.serverStartFailed' => ({required Object error}) => 'Kunne ikke starte fjernserveren: ${error}',
|
||||
'companionRemote.errors.commandFailed' => ({required Object error}) => 'Kunne ikke sende fjernkommando: ${error}',
|
||||
'companionRemote.errors.joinTimedOut' => 'Tidsavbrudd ved tilkobling til økt',
|
||||
'companionRemote.errors.failedToConnectAnyAddress' => 'Kunne ikke koble til noen adresse',
|
||||
'companionRemote.errors.connectionLostAfterAttempts' => ({required Object attempts}) => 'Tilkobling mistet etter ${attempts} forsøk',
|
||||
@@ -3530,7 +3491,6 @@ extension on TranslationsNb {
|
||||
'addServer.quickConnectFailed' => ({required Object error}) => 'Quick Connect mislyktes: ${error}',
|
||||
'addServer.addPlexTitle' => 'Logg på med Plex',
|
||||
'addServer.pinExpired' => 'PIN-koden gikk ut før pålogging. Prøv igjen.',
|
||||
'addServer.duplicatePlexAccount' => 'Allerede logget inn på Plex. Logg ut for å bytte konto.',
|
||||
'addServer.failedToRegisterAccount' => ({required Object error}) => 'Kunne ikke registrere kontoen: ${error}',
|
||||
'addServer.enterJellyfinUrlError' => 'Oppgi URL-en til Jellyfin-serveren din',
|
||||
'addServer.addConnectionTitle' => 'Legg til tilkobling',
|
||||
|
||||
+68
-108
@@ -53,7 +53,6 @@ class TranslationsNl extends Translations with BaseTranslations<AppLocale, Trans
|
||||
@override late final _TranslationsAccessibilityNl accessibility = _TranslationsAccessibilityNl._(_root);
|
||||
@override late final _TranslationsTooltipsNl tooltips = _TranslationsTooltipsNl._(_root);
|
||||
@override late final _TranslationsVideoControlsNl videoControls = _TranslationsVideoControlsNl._(_root);
|
||||
@override late final _TranslationsUserStatusNl userStatus = _TranslationsUserStatusNl._(_root);
|
||||
@override late final _TranslationsMessagesNl messages = _TranslationsMessagesNl._(_root);
|
||||
@override late final _TranslationsSubtitlingStylingNl subtitlingStyling = _TranslationsSubtitlingStylingNl._(_root);
|
||||
@override late final _TranslationsMpvConfigNl mpvConfig = _TranslationsMpvConfigNl._(_root);
|
||||
@@ -107,7 +106,6 @@ class _TranslationsAuthNl extends TranslationsAuthEn {
|
||||
final TranslationsNl _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get signIn => 'Inloggen';
|
||||
@override String get signInWithPlex => 'Inloggen met Plex';
|
||||
@override String get showQRCode => 'Toon QR-code';
|
||||
@override String get authenticate => 'Authenticeren';
|
||||
@@ -167,10 +165,8 @@ class _TranslationsCommonNl extends TranslationsCommonEn {
|
||||
@override String episodeNumberTitle({required Object number, required Object title}) => 'Aflevering ${number} - ${title}';
|
||||
@override String chapterNumber({required Object number}) => 'Hoofdstuk ${number}';
|
||||
@override String get reconnect => 'Opnieuw verbinden';
|
||||
@override String get exit => 'Afsluiten';
|
||||
@override String get viewAll => 'Alles weergeven';
|
||||
@override String get checkingNetwork => 'Netwerk controleren...';
|
||||
@override String get refreshingServers => 'Servers vernieuwen...';
|
||||
@override String get loadingServers => 'Servers laden...';
|
||||
@override String get connectingToServers => 'Verbinden met servers...';
|
||||
@override String get startingOfflineMode => 'Offlinemodus starten...';
|
||||
@@ -271,6 +267,12 @@ class _TranslationsSettingsNl extends TranslationsSettingsEn {
|
||||
@override String get tvFullCardLayoutDescription => 'Gebruik tv-kaarten met alleen afbeeldingen en namen van acteurs als overlay';
|
||||
@override String get focusGlow => 'Focusgloed';
|
||||
@override String get focusGlowDescription => 'Toon een zachte gloed rond de kaart met focus';
|
||||
@override String get visualEffects => 'Visuele effecten';
|
||||
@override String get visualEffectsAuto => 'Automatisch';
|
||||
@override String get visualEffectsAutoDescription => 'Effecten automatisch verminderen op apparaten met laag vermogen';
|
||||
@override String get visualEffectsFull => 'Volledig';
|
||||
@override String get visualEffectsReduced => 'Verminderd';
|
||||
@override String get visualEffectsReducedDescription => 'Minder animaties en illustraties met lagere resolutie';
|
||||
@override String get hideSpoilers => 'Spoilers voor ongekeken afleveringen verbergen';
|
||||
@override String get hideSpoilersDescription => 'Vervaag miniaturen en beschrijvingen voor niet-bekeken afleveringen';
|
||||
@override String get playerBackend => 'Speler backend';
|
||||
@@ -283,7 +285,7 @@ class _TranslationsSettingsNl extends TranslationsSettingsEn {
|
||||
@override String get bufferSizeAuto => 'Auto (Aanbevolen)';
|
||||
@override String bufferSizeWarning({required Object heap, required Object size}) => '${heap}MB geheugen beschikbaar. Een buffer van ${size}MB kan afspelen beïnvloeden.';
|
||||
@override String get defaultQualityTitle => 'Standaardkwaliteit';
|
||||
@override String get defaultQualityDescription => 'Wordt gebruikt bij het starten van de weergave. Lagere waarden verminderen de bandbreedte.';
|
||||
@override String get musicQualityTitle => 'Muziekkwaliteit';
|
||||
@override String get subtitleStyling => 'Ondertitel opmaak';
|
||||
@override String get subtitleStylingDescription => 'Pas ondertitel uiterlijk aan';
|
||||
@override String get smallSkipDuration => 'Korte skip duur';
|
||||
@@ -377,10 +379,9 @@ class _TranslationsSettingsNl extends TranslationsSettingsEn {
|
||||
@override String maxVolumePercent({required Object percent}) => '${percent}%';
|
||||
@override String get discordRichPresence => 'Discord Rich Presence';
|
||||
@override String get discordRichPresenceDescription => 'Toon op Discord wat je aan het kijken bent';
|
||||
@override String get trakt => 'Trakt';
|
||||
@override String get traktDescription => 'Kijkgeschiedenis synchroniseren met Trakt';
|
||||
@override String get services => 'Services';
|
||||
@override String get servicesDescription => 'Verbind Trakt, MyAnimeList, Seerr en meer';
|
||||
@override String get manageLibrariesDescription => 'Bibliotheken herordenen en verbergen';
|
||||
@override String get companionRemoteServer => 'Companion Remote-server';
|
||||
@override String get companionRemoteServerDescription => 'Sta mobiele apparaten op je netwerk toe om deze app te bedienen';
|
||||
@override String get autoPip => 'Automatische beeld-in-beeld';
|
||||
@@ -443,7 +444,6 @@ class _TranslationsSettingsNl extends TranslationsSettingsEn {
|
||||
@override String get showNavBarLabels => 'Navigatiebalk labels tonen';
|
||||
@override String get showNavBarLabelsDescription => 'Tekstlabels onder de pictogrammen van de navigatiebalk weergeven';
|
||||
@override String get startupSection => 'Opstartsectie';
|
||||
@override String get startupSectionDescription => 'Kies welke sectie Plezy opent bij het opstarten';
|
||||
@override String get liveTvDefaultFavorites => 'Standaard favoriete zenders';
|
||||
@override String get liveTvDefaultFavoritesDescription => 'Toon alleen favoriete zenders bij het openen van Live TV';
|
||||
@override String get display => 'Weergave';
|
||||
@@ -455,13 +455,6 @@ class _TranslationsSettingsNl extends TranslationsSettingsEn {
|
||||
@override String get subtitlesAndConfig => 'Ondertitels en configuratie';
|
||||
@override String get seekAndTiming => 'Zoeken en timing';
|
||||
@override String get behavior => 'Gedrag';
|
||||
@override String get manageLibrariesDescription => 'Bibliotheken herordenen en verbergen';
|
||||
@override String get visualEffects => 'Visuele effecten';
|
||||
@override String get visualEffectsAuto => 'Automatisch';
|
||||
@override String get visualEffectsAutoDescription => 'Effecten automatisch verminderen op apparaten met laag vermogen';
|
||||
@override String get visualEffectsFull => 'Volledig';
|
||||
@override String get visualEffectsReduced => 'Verminderd';
|
||||
@override String get visualEffectsReducedDescription => 'Minder animaties en illustraties met lagere resolutie';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -559,14 +552,11 @@ class _TranslationsRateSheetNl extends TranslationsRateSheetEn {
|
||||
// Translations
|
||||
@override String get title => 'Beoordelen';
|
||||
@override String get server => 'Server';
|
||||
@override String starValue({required Object rating}) => '${rating} / 5';
|
||||
@override String scoreValue({required Object score}) => '${score} / 10';
|
||||
@override String get setScore => 'Score instellen';
|
||||
@override String get favorite => 'Favoriet';
|
||||
@override String get favorited => 'Toegevoegd aan favorieten';
|
||||
@override String get saved => 'Opgeslagen';
|
||||
@override String get notAvailable => 'Geen match gevonden';
|
||||
@override String get noConnectedServices => 'Verbind een service in Instellingen om daar te beoordelen.';
|
||||
@override String get favorite => 'Favoriet';
|
||||
@override String get favorited => 'Toegevoegd aan favorieten';
|
||||
}
|
||||
|
||||
// Path: accessibility
|
||||
@@ -584,6 +574,14 @@ class _TranslationsAccessibilityNl extends TranslationsAccessibilityEn {
|
||||
@override String mediaCardPartiallyWatched({required Object percent}) => '${percent} procent bekeken';
|
||||
@override String get mediaCardUnwatched => 'niet bekeken';
|
||||
@override String get tapToPlay => 'Tik om af te spelen';
|
||||
@override String get decrease => 'Verlagen';
|
||||
@override String get increase => 'Verhogen';
|
||||
@override String decreaseValue({required Object label}) => '${label} verlagen';
|
||||
@override String increaseValue({required Object label}) => '${label} verhogen';
|
||||
@override String get hue => 'Tint';
|
||||
@override String get saturation => 'Verzadiging';
|
||||
@override String get brightness => 'Helderheid';
|
||||
@override String get hexColor => 'Hexkleur';
|
||||
}
|
||||
|
||||
// Path: tooltips
|
||||
@@ -643,13 +641,11 @@ class _TranslationsVideoControlsNl extends TranslationsVideoControlsEn {
|
||||
@override String get settingsButton => 'Afspeelinstellingen';
|
||||
@override String get tracksButton => 'Audio en ondertitels';
|
||||
@override String get chaptersButton => 'Hoofdstukken';
|
||||
@override String get versionsButton => 'Videoversies';
|
||||
@override String get versionQualityButton => 'Versie en kwaliteit';
|
||||
@override String get versionColumnHeader => 'Versie';
|
||||
@override String get qualityColumnHeader => 'Kwaliteit';
|
||||
@override String get qualityOriginal => 'Origineel';
|
||||
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
|
||||
@override String qualityBandwidthEstimate({required Object bitrate}) => '~${bitrate} Mbps';
|
||||
@override String get transcodeUnavailableFallback => 'Transcoderen niet beschikbaar — originele kwaliteit wordt afgespeeld';
|
||||
@override String get pipButton => 'Beeld-in-beeld modus';
|
||||
@override String get aspectRatioButton => 'Beeldverhouding';
|
||||
@@ -685,19 +681,6 @@ class _TranslationsVideoControlsNl extends TranslationsVideoControlsEn {
|
||||
@override String get searchLanguages => 'Talen zoeken...';
|
||||
}
|
||||
|
||||
// Path: userStatus
|
||||
class _TranslationsUserStatusNl extends TranslationsUserStatusEn {
|
||||
_TranslationsUserStatusNl._(TranslationsNl root) : this._root = root, super.internal(root);
|
||||
|
||||
final TranslationsNl _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get admin => 'Beheerder';
|
||||
@override String get restricted => 'Beperkt';
|
||||
@override String get protected => 'Beschermd';
|
||||
@override String get current => 'HUIDIG';
|
||||
}
|
||||
|
||||
// Path: messages
|
||||
class _TranslationsMessagesNl extends TranslationsMessagesEn {
|
||||
_TranslationsMessagesNl._(TranslationsNl root) : this._root = root, super.internal(root);
|
||||
@@ -873,7 +856,6 @@ class _TranslationsProfilesNl extends TranslationsProfilesEn {
|
||||
@override String get pinExplain => '4-cijferige PIN vereist om profielen te wisselen.';
|
||||
@override String get continueButton => 'Doorgaan';
|
||||
@override String get pinsDontMatch => 'PIN-codes komen niet overeen';
|
||||
@override String get initializeServicesFailed => 'Kan profielservices niet initialiseren';
|
||||
}
|
||||
|
||||
// Path: connections
|
||||
@@ -902,7 +884,6 @@ class _TranslationsDiscoverNl extends TranslationsDiscoverEn {
|
||||
|
||||
// Translations
|
||||
@override String get title => 'Ontdekken';
|
||||
@override String get switchProfile => 'Wissel van profiel';
|
||||
@override String get noContentAvailable => 'Geen inhoud beschikbaar';
|
||||
@override String get addMediaToLibraries => 'Voeg wat media toe aan je bibliotheken';
|
||||
@override String get continueWatching => 'Verder kijken';
|
||||
@@ -938,8 +919,6 @@ class _TranslationsErrorsNl extends TranslationsErrorsEn {
|
||||
@override String get connectionFailed => 'Kan geen verbinding maken met mediaserver';
|
||||
@override String failedToLoad({required Object context, required Object error}) => 'Kon ${context} niet laden: ${error}';
|
||||
@override String get noClientAvailable => 'Geen client beschikbaar';
|
||||
@override String authenticationFailed({required Object error}) => 'Authenticatie mislukt: ${error}';
|
||||
@override String get couldNotLaunchUrl => 'Kon auth URL niet openen';
|
||||
@override String get pleaseEnterToken => 'Voer een token in';
|
||||
@override String get invalidToken => 'Ongeldig token';
|
||||
@override String failedToVerifyToken({required Object error}) => 'Kon token niet verifiëren: ${error}';
|
||||
@@ -973,6 +952,8 @@ class _TranslationsLibrariesNl extends TranslationsLibrariesEn {
|
||||
@override String get allLibrariesHidden => 'Alle bibliotheken zijn verborgen';
|
||||
@override String hiddenLibrariesCount({required Object count}) => 'Verborgen bibliotheken (${count})';
|
||||
@override String get thisLibraryIsEmpty => 'Deze bibliotheek is leeg';
|
||||
@override String get noItemsMatchFilters => 'Geen items komen overeen met de actieve filters';
|
||||
@override String get resetFilters => 'Filters opnieuw instellen';
|
||||
@override String get all => 'Alles';
|
||||
@override String get clearAll => 'Alles wissen';
|
||||
@override String scanLibraryConfirm({required Object title}) => 'Weet je zeker dat je "${title}" wilt scannen?';
|
||||
@@ -998,8 +979,6 @@ class _TranslationsLibrariesNl extends TranslationsLibrariesEn {
|
||||
@override late final _TranslationsLibrariesGroupingsNl groupings = _TranslationsLibrariesGroupingsNl._(_root);
|
||||
@override late final _TranslationsLibrariesFilterCategoriesNl filterCategories = _TranslationsLibrariesFilterCategoriesNl._(_root);
|
||||
@override late final _TranslationsLibrariesSortLabelsNl sortLabels = _TranslationsLibrariesSortLabelsNl._(_root);
|
||||
@override String get noItemsMatchFilters => 'Geen items komen overeen met de actieve filters';
|
||||
@override String get resetFilters => 'Filters opnieuw instellen';
|
||||
}
|
||||
|
||||
// Path: about
|
||||
@@ -1023,7 +1002,6 @@ class _TranslationsServerSelectionNl extends TranslationsServerSelectionEn {
|
||||
final TranslationsNl _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get allServerConnectionsFailed => 'Kon met geen enkele server verbinden. Controleer je netwerk.';
|
||||
@override String noServersFoundForAccount({required Object username, required Object email}) => 'Geen servers gevonden voor ${username} (${email})';
|
||||
@override String failedToLoadServers({required Object error}) => 'Kon servers niet laden: ${error}';
|
||||
}
|
||||
@@ -1090,10 +1068,6 @@ class _TranslationsExploreNl extends TranslationsExploreEn {
|
||||
@override String get title => 'Verkennen';
|
||||
@override String get selectSource => 'Bron kiezen';
|
||||
@override late final _TranslationsExploreRowsNl rows = _TranslationsExploreRowsNl._(_root);
|
||||
@override String searchHint({required Object source}) => 'Zoeken in ${source}';
|
||||
@override String searchEmpty({required Object query}) => 'Geen resultaten voor "${query}"';
|
||||
@override String searchPrompt({required Object source}) => 'Zoek naar films en series op ${source}.';
|
||||
@override String get searchFailed => 'Zoeken mislukt. Controleer je verbinding en probeer opnieuw.';
|
||||
@override late final _TranslationsExploreStatusNl status = _TranslationsExploreStatusNl._(_root);
|
||||
@override String episodeCount({required num n}) => (_root.$meta.cardinalResolver ?? PluralResolvers.cardinal('nl'))(n,
|
||||
one: '${n} aflevering',
|
||||
@@ -1106,10 +1080,13 @@ class _TranslationsExploreNl extends TranslationsExploreEn {
|
||||
@override String get watchlistUpdateFailed => 'Kon kijklijst niet bijwerken';
|
||||
@override String get notInLibrary => 'Niet in je bibliotheek';
|
||||
@override String get inTheseLibraries => 'In deze bibliotheken';
|
||||
@override String availableOn({required Object server}) => 'Beschikbaar op ${server}';
|
||||
@override String get checkingLibrary => 'Je bibliotheek controleren...';
|
||||
@override String get emptyTitle => 'Hier is nog niets';
|
||||
@override String emptyMessage({required Object source}) => 'Rijen van ${source} verschijnen hier zodra ze inhoud hebben.';
|
||||
@override String searchHint({required Object source}) => 'Zoeken in ${source}';
|
||||
@override String searchEmpty({required Object query}) => 'Geen resultaten voor "${query}"';
|
||||
@override String searchPrompt({required Object source}) => 'Zoek naar films en series op ${source}.';
|
||||
@override String get searchFailed => 'Zoeken mislukt. Controleer je verbinding en probeer opnieuw.';
|
||||
}
|
||||
|
||||
// Path: liveTv
|
||||
@@ -1123,6 +1100,8 @@ class _TranslationsLiveTvNl extends TranslationsLiveTvEn {
|
||||
@override String get guide => 'Gids';
|
||||
@override String get noChannels => 'Geen zenders beschikbaar';
|
||||
@override String get noDvr => 'Geen DVR geconfigureerd op een server';
|
||||
@override String get serverUnavailable => 'De live-tv-server is niet beschikbaar.';
|
||||
@override String get serverNotConnected => 'De live-tv-server is niet verbonden.';
|
||||
@override String get noPrograms => 'Geen programmagegevens beschikbaar';
|
||||
@override String get liveStreamFailed => 'Livestream mislukt';
|
||||
@override String get unknownProgram => 'Onbekend programma';
|
||||
@@ -1158,7 +1137,6 @@ class _TranslationsLiveTvNl extends TranslationsLiveTvEn {
|
||||
@override String get scheduledRecordings => 'Gepland';
|
||||
@override String get recordingRules => 'Opnameregels';
|
||||
@override String get noScheduledRecordings => 'Geen geplande opnames';
|
||||
@override String get noRecordingRules => 'Nog geen opnameregels';
|
||||
@override String get manageRecording => 'Opname beheren';
|
||||
@override String get cancelRecording => 'Opname annuleren';
|
||||
@override String get cancelRecordingTitle => 'Deze opname annuleren?';
|
||||
@@ -1175,7 +1153,6 @@ class _TranslationsLiveTvNl extends TranslationsLiveTvEn {
|
||||
@override String get recordingCancelled => 'Opname geannuleerd';
|
||||
@override String get recordingRuleDeleted => 'Opnameregel verwijderd';
|
||||
@override String get processRecordingRules => 'Regels opnieuw evalueren';
|
||||
@override String get loadingRecordings => 'Opnames laden...';
|
||||
@override String get recordingInProgress => 'Nu aan het opnemen';
|
||||
@override String recordingsCount({required Object count}) => '${count} gepland';
|
||||
@override String get editRule => 'Regel bewerken';
|
||||
@@ -1196,7 +1173,6 @@ class _TranslationsCollectionsNl extends TranslationsCollectionsEn {
|
||||
@override String get title => 'Collecties';
|
||||
@override String get collection => 'Collectie';
|
||||
@override String get empty => 'Collectie is leeg';
|
||||
@override String get unknownLibrarySection => 'Kan niet verwijderen: onbekende bibliotheeksectie';
|
||||
@override String get deleteCollection => 'Collectie verwijderen';
|
||||
@override String deleteConfirm({required Object title}) => '"${title}" verwijderen? Dit kan niet ongedaan worden gemaakt.';
|
||||
@override String get deleted => 'Collectie verwijderd';
|
||||
@@ -1243,6 +1219,7 @@ class _TranslationsPlaylistsNl extends TranslationsPlaylistsEn {
|
||||
@override String get itemAdded => 'Toegevoegd aan afspeellijst';
|
||||
@override String get itemRemoved => 'Verwijderd uit afspeellijst';
|
||||
@override String get selectPlaylist => 'Selecteer afspeellijst';
|
||||
@override String get searchPlaylists => 'Afspeellijsten zoeken...';
|
||||
@override String get errorCreating => 'Fout bij maken afspeellijst';
|
||||
@override String get errorDeleting => 'Fout bij verwijderen afspeellijst';
|
||||
@override String get errorLoading => 'Fout bij laden afspeellijsten';
|
||||
@@ -1346,15 +1323,15 @@ class _TranslationsWatchTogetherNl extends TranslationsWatchTogetherEn {
|
||||
@override String participantResumed({required Object name}) => '${name} heeft hervat';
|
||||
@override String participantSeeked({required Object name}) => '${name} heeft gespoeld';
|
||||
@override String participantBuffering({required Object name}) => '${name} is aan het bufferen';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} gebruikt een oudere appversie — synchronisatie niet beschikbaar';
|
||||
@override String resumingWithout({required Object name}) => 'Hervatten zonder ${name}';
|
||||
@override String get waitingForParticipants => 'Wachten tot anderen geladen zijn...';
|
||||
@override String waitingForName({required Object name}) => 'Wachten op ${name}...';
|
||||
@override String get recentRooms => 'Recente kamers';
|
||||
@override String get renameRoom => 'Kamer hernoemen';
|
||||
@override String get removeRoom => 'Verwijderen';
|
||||
@override String get guestSwitchUnavailable => 'Kon niet schakelen — server niet beschikbaar voor synchronisatie';
|
||||
@override String get guestSwitchFailed => 'Kon niet schakelen — inhoud niet gevonden op deze server';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} gebruikt een oudere appversie — synchronisatie niet beschikbaar';
|
||||
@override String resumingWithout({required Object name}) => 'Hervatten zonder ${name}';
|
||||
@override String waitingForName({required Object name}) => 'Wachten op ${name}...';
|
||||
}
|
||||
|
||||
// Path: downloads
|
||||
@@ -1406,7 +1383,6 @@ class _TranslationsDownloadsNl extends TranslationsDownloadsEn {
|
||||
@override String get customAmount => 'Aangepast aantal...';
|
||||
@override String get includeSpecials => 'Specials opnemen';
|
||||
@override String get howManyEpisodes => 'Hoeveel afleveringen?';
|
||||
@override String itemsQueued({required Object count}) => '${count} items in downloadwachtrij';
|
||||
@override String get keepSynced => 'Gesynchroniseerd houden';
|
||||
@override String get downloadOnce => 'Eenmalig downloaden';
|
||||
@override String keepNUnwatched({required Object count}) => '${count} onbekeken behouden';
|
||||
@@ -1780,7 +1756,6 @@ class _TranslationsAddServerNl extends TranslationsAddServerEn {
|
||||
@override String quickConnectFailed({required Object error}) => 'Quick Connect mislukt: ${error}';
|
||||
@override String get addPlexTitle => 'Inloggen met Plex';
|
||||
@override String get pinExpired => 'PIN verlopen vóór inloggen. Probeer opnieuw.';
|
||||
@override String get duplicatePlexAccount => 'Al aangemeld bij Plex. Meld je af om van account te wisselen.';
|
||||
@override String failedToRegisterAccount({required Object error}) => 'Account registreren mislukt: ${error}';
|
||||
@override String get enterJellyfinUrlError => 'Voer de URL van je Jellyfin-server in';
|
||||
@override String get addConnectionTitle => 'Verbinding toevoegen';
|
||||
@@ -1906,7 +1881,6 @@ class _TranslationsLibrariesSortLabelsNl extends TranslationsLibrariesSortLabels
|
||||
@override String get communityRating => 'Communitybeoordeling';
|
||||
@override String get criticRating => 'Criticusbeoordeling';
|
||||
@override String get userRating => 'Gebruikersbeoordeling';
|
||||
@override String get lastPlayed => 'Laatst afgespeeld';
|
||||
@override String get datePlayed => 'Afspeeldatum';
|
||||
@override String get playCount => 'Aantal afspelingen';
|
||||
@override String get productionYear => 'Productiejaar';
|
||||
@@ -1965,7 +1939,6 @@ class _TranslationsCompanionRemoteSessionNl extends TranslationsCompanionRemoteS
|
||||
|
||||
// Translations
|
||||
@override String get startingServer => 'Externe server starten...';
|
||||
@override String get failedToCreate => 'Kan externe server niet starten:';
|
||||
@override String get hostAddress => 'Hostadres';
|
||||
@override String get connected => 'Verbonden';
|
||||
@override String get serverRunning => 'Externe server actief';
|
||||
@@ -2047,6 +2020,8 @@ class _TranslationsCompanionRemoteErrorsNl extends TranslationsCompanionRemoteEr
|
||||
// Translations
|
||||
@override String get noNetworkInterface => 'Geen netwerkinterface gevonden';
|
||||
@override String get authenticationFailed => 'Authenticatie mislukt';
|
||||
@override String serverStartFailed({required Object error}) => 'Kan de externe server niet starten: ${error}';
|
||||
@override String commandFailed({required Object error}) => 'Kan de externe opdracht niet verzenden: ${error}';
|
||||
@override String get joinTimedOut => 'Time-out bij deelnemen aan sessie';
|
||||
@override String get failedToConnectAnyAddress => 'Kan met geen enkel adres verbinden';
|
||||
@override String connectionLostAfterAttempts({required Object attempts}) => 'Verbinding verloren na ${attempts} pogingen';
|
||||
@@ -2123,7 +2098,6 @@ extension on TranslationsNl {
|
||||
dynamic _flatMapFunction(String path) {
|
||||
return switch (path) {
|
||||
'app.title' => 'Plezy',
|
||||
'auth.signIn' => 'Inloggen',
|
||||
'auth.signInWithPlex' => 'Inloggen met Plex',
|
||||
'auth.showQRCode' => 'Toon QR-code',
|
||||
'auth.authenticate' => 'Authenticeren',
|
||||
@@ -2174,10 +2148,8 @@ extension on TranslationsNl {
|
||||
'common.episodeNumberTitle' => ({required Object number, required Object title}) => 'Aflevering ${number} - ${title}',
|
||||
'common.chapterNumber' => ({required Object number}) => 'Hoofdstuk ${number}',
|
||||
'common.reconnect' => 'Opnieuw verbinden',
|
||||
'common.exit' => 'Afsluiten',
|
||||
'common.viewAll' => 'Alles weergeven',
|
||||
'common.checkingNetwork' => 'Netwerk controleren...',
|
||||
'common.refreshingServers' => 'Servers vernieuwen...',
|
||||
'common.loadingServers' => 'Servers laden...',
|
||||
'common.connectingToServers' => 'Verbinden met servers...',
|
||||
'common.startingOfflineMode' => 'Offlinemodus starten...',
|
||||
@@ -2251,6 +2223,12 @@ extension on TranslationsNl {
|
||||
'settings.tvFullCardLayoutDescription' => 'Gebruik tv-kaarten met alleen afbeeldingen en namen van acteurs als overlay',
|
||||
'settings.focusGlow' => 'Focusgloed',
|
||||
'settings.focusGlowDescription' => 'Toon een zachte gloed rond de kaart met focus',
|
||||
'settings.visualEffects' => 'Visuele effecten',
|
||||
'settings.visualEffectsAuto' => 'Automatisch',
|
||||
'settings.visualEffectsAutoDescription' => 'Effecten automatisch verminderen op apparaten met laag vermogen',
|
||||
'settings.visualEffectsFull' => 'Volledig',
|
||||
'settings.visualEffectsReduced' => 'Verminderd',
|
||||
'settings.visualEffectsReducedDescription' => 'Minder animaties en illustraties met lagere resolutie',
|
||||
'settings.hideSpoilers' => 'Spoilers voor ongekeken afleveringen verbergen',
|
||||
'settings.hideSpoilersDescription' => 'Vervaag miniaturen en beschrijvingen voor niet-bekeken afleveringen',
|
||||
'settings.playerBackend' => 'Speler backend',
|
||||
@@ -2263,7 +2241,7 @@ extension on TranslationsNl {
|
||||
'settings.bufferSizeAuto' => 'Auto (Aanbevolen)',
|
||||
'settings.bufferSizeWarning' => ({required Object heap, required Object size}) => '${heap}MB geheugen beschikbaar. Een buffer van ${size}MB kan afspelen beïnvloeden.',
|
||||
'settings.defaultQualityTitle' => 'Standaardkwaliteit',
|
||||
'settings.defaultQualityDescription' => 'Wordt gebruikt bij het starten van de weergave. Lagere waarden verminderen de bandbreedte.',
|
||||
'settings.musicQualityTitle' => 'Muziekkwaliteit',
|
||||
'settings.subtitleStyling' => 'Ondertitel opmaak',
|
||||
'settings.subtitleStylingDescription' => 'Pas ondertitel uiterlijk aan',
|
||||
'settings.smallSkipDuration' => 'Korte skip duur',
|
||||
@@ -2357,10 +2335,9 @@ extension on TranslationsNl {
|
||||
'settings.maxVolumePercent' => ({required Object percent}) => '${percent}%',
|
||||
'settings.discordRichPresence' => 'Discord Rich Presence',
|
||||
'settings.discordRichPresenceDescription' => 'Toon op Discord wat je aan het kijken bent',
|
||||
'settings.trakt' => 'Trakt',
|
||||
'settings.traktDescription' => 'Kijkgeschiedenis synchroniseren met Trakt',
|
||||
'settings.services' => 'Services',
|
||||
'settings.servicesDescription' => 'Verbind Trakt, MyAnimeList, Seerr en meer',
|
||||
'settings.manageLibrariesDescription' => 'Bibliotheken herordenen en verbergen',
|
||||
'settings.companionRemoteServer' => 'Companion Remote-server',
|
||||
'settings.companionRemoteServerDescription' => 'Sta mobiele apparaten op je netwerk toe om deze app te bedienen',
|
||||
'settings.autoPip' => 'Automatische beeld-in-beeld',
|
||||
@@ -2423,7 +2400,6 @@ extension on TranslationsNl {
|
||||
'settings.showNavBarLabels' => 'Navigatiebalk labels tonen',
|
||||
'settings.showNavBarLabelsDescription' => 'Tekstlabels onder de pictogrammen van de navigatiebalk weergeven',
|
||||
'settings.startupSection' => 'Opstartsectie',
|
||||
'settings.startupSectionDescription' => 'Kies welke sectie Plezy opent bij het opstarten',
|
||||
'settings.liveTvDefaultFavorites' => 'Standaard favoriete zenders',
|
||||
'settings.liveTvDefaultFavoritesDescription' => 'Toon alleen favoriete zenders bij het openen van Live TV',
|
||||
'settings.display' => 'Weergave',
|
||||
@@ -2435,13 +2411,6 @@ extension on TranslationsNl {
|
||||
'settings.subtitlesAndConfig' => 'Ondertitels en configuratie',
|
||||
'settings.seekAndTiming' => 'Zoeken en timing',
|
||||
'settings.behavior' => 'Gedrag',
|
||||
'settings.manageLibrariesDescription' => 'Bibliotheken herordenen en verbergen',
|
||||
'settings.visualEffects' => 'Visuele effecten',
|
||||
'settings.visualEffectsAuto' => 'Automatisch',
|
||||
'settings.visualEffectsAutoDescription' => 'Effecten automatisch verminderen op apparaten met laag vermogen',
|
||||
'settings.visualEffectsFull' => 'Volledig',
|
||||
'settings.visualEffectsReduced' => 'Verminderd',
|
||||
'settings.visualEffectsReducedDescription' => 'Minder animaties en illustraties met lagere resolutie',
|
||||
'search.hint' => 'Zoek films, series, muziek...',
|
||||
'search.tryDifferentTerm' => 'Probeer een andere zoekterm',
|
||||
'search.searchYourMedia' => 'Zoek in je media',
|
||||
@@ -2518,14 +2487,11 @@ extension on TranslationsNl {
|
||||
'mediaMenu.playVersion' => 'Versie afspelen...',
|
||||
'rateSheet.title' => 'Beoordelen',
|
||||
'rateSheet.server' => 'Server',
|
||||
'rateSheet.starValue' => ({required Object rating}) => '${rating} / 5',
|
||||
'rateSheet.scoreValue' => ({required Object score}) => '${score} / 10',
|
||||
'rateSheet.setScore' => 'Score instellen',
|
||||
'rateSheet.favorite' => 'Favoriet',
|
||||
'rateSheet.favorited' => 'Toegevoegd aan favorieten',
|
||||
'rateSheet.saved' => 'Opgeslagen',
|
||||
'rateSheet.notAvailable' => 'Geen match gevonden',
|
||||
'rateSheet.noConnectedServices' => 'Verbind een service in Instellingen om daar te beoordelen.',
|
||||
'rateSheet.favorite' => 'Favoriet',
|
||||
'rateSheet.favorited' => 'Toegevoegd aan favorieten',
|
||||
'accessibility.mediaCardMovie' => ({required Object title}) => '${title}, film',
|
||||
'accessibility.mediaCardShow' => ({required Object title}) => '${title}, TV-serie',
|
||||
'accessibility.mediaCardEpisode' => ({required Object title, required Object episodeInfo}) => '${title}, ${episodeInfo}',
|
||||
@@ -2534,6 +2500,14 @@ extension on TranslationsNl {
|
||||
'accessibility.mediaCardPartiallyWatched' => ({required Object percent}) => '${percent} procent bekeken',
|
||||
'accessibility.mediaCardUnwatched' => 'niet bekeken',
|
||||
'accessibility.tapToPlay' => 'Tik om af te spelen',
|
||||
'accessibility.decrease' => 'Verlagen',
|
||||
'accessibility.increase' => 'Verhogen',
|
||||
'accessibility.decreaseValue' => ({required Object label}) => '${label} verlagen',
|
||||
'accessibility.increaseValue' => ({required Object label}) => '${label} verhogen',
|
||||
'accessibility.hue' => 'Tint',
|
||||
'accessibility.saturation' => 'Verzadiging',
|
||||
'accessibility.brightness' => 'Helderheid',
|
||||
'accessibility.hexColor' => 'Hexkleur',
|
||||
'tooltips.shufflePlay' => 'Willekeurig afspelen',
|
||||
'tooltips.playTrailer' => 'Trailer afspelen',
|
||||
'tooltips.markAsWatched' => 'Markeer als gekeken',
|
||||
@@ -2575,13 +2549,11 @@ extension on TranslationsNl {
|
||||
'videoControls.settingsButton' => 'Afspeelinstellingen',
|
||||
'videoControls.tracksButton' => 'Audio en ondertitels',
|
||||
'videoControls.chaptersButton' => 'Hoofdstukken',
|
||||
'videoControls.versionsButton' => 'Videoversies',
|
||||
'videoControls.versionQualityButton' => 'Versie en kwaliteit',
|
||||
'videoControls.versionColumnHeader' => 'Versie',
|
||||
'videoControls.qualityColumnHeader' => 'Kwaliteit',
|
||||
'videoControls.qualityOriginal' => 'Origineel',
|
||||
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
|
||||
'videoControls.qualityBandwidthEstimate' => ({required Object bitrate}) => '~${bitrate} Mbps',
|
||||
'videoControls.transcodeUnavailableFallback' => 'Transcoderen niet beschikbaar — originele kwaliteit wordt afgespeeld',
|
||||
'videoControls.pipButton' => 'Beeld-in-beeld modus',
|
||||
'videoControls.aspectRatioButton' => 'Beeldverhouding',
|
||||
@@ -2621,10 +2593,6 @@ extension on TranslationsNl {
|
||||
'videoControls.subtitleDownloaded' => 'Ondertitel gedownload',
|
||||
'videoControls.subtitleDownloadFailed' => 'Ondertitel downloaden mislukt',
|
||||
'videoControls.searchLanguages' => 'Talen zoeken...',
|
||||
'userStatus.admin' => 'Beheerder',
|
||||
'userStatus.restricted' => 'Beperkt',
|
||||
'userStatus.protected' => 'Beschermd',
|
||||
'userStatus.current' => 'HUIDIG',
|
||||
'messages.markedAsWatched' => 'Gemarkeerd als gekeken',
|
||||
'messages.markedAsUnwatched' => 'Gemarkeerd als ongekeken',
|
||||
'messages.markedAsWatchedOffline' => 'Gemarkeerd als gekeken (sync wanneer online)',
|
||||
@@ -2634,8 +2602,6 @@ extension on TranslationsNl {
|
||||
'messages.errorLoading' => ({required Object error}) => 'Fout: ${error}',
|
||||
'messages.streamInterrupted' => 'De stream is onderbroken. Druk op afspelen of spoel om het opnieuw te proberen.',
|
||||
'messages.fileInfoNotAvailable' => 'Bestand informatie niet beschikbaar',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Fout bij laden bestand info: ${error}',
|
||||
'messages.errorLoadingSeries' => 'Fout bij laden serie',
|
||||
'messages.musicNotSupported' => 'Muziek afspelen wordt nog niet ondersteund',
|
||||
@@ -2643,6 +2609,8 @@ extension on TranslationsNl {
|
||||
'messages.noProfilesAvailable' => 'Geen profielen beschikbaar',
|
||||
'messages.contactAdminForProfiles' => 'Neem contact op met je serverbeheerder om profielen toe te voegen',
|
||||
'messages.unableToDetermineLibrarySection' => 'Kan bibliotheeksectie voor dit item niet bepalen',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.logsCleared' => 'Logs gewist',
|
||||
'messages.logsCopied' => 'Logs gekopieerd naar klembord',
|
||||
'messages.noLogsAvailable' => 'Geen logs beschikbaar',
|
||||
@@ -2759,7 +2727,6 @@ extension on TranslationsNl {
|
||||
'profiles.pinExplain' => '4-cijferige PIN vereist om profielen te wisselen.',
|
||||
'profiles.continueButton' => 'Doorgaan',
|
||||
'profiles.pinsDontMatch' => 'PIN-codes komen niet overeen',
|
||||
'profiles.initializeServicesFailed' => 'Kan profielservices niet initialiseren',
|
||||
'connections.sectionTitle' => 'Verbindingen',
|
||||
'connections.addConnection' => 'Verbinding toevoegen',
|
||||
'connections.addConnectionSubtitleNoProfile' => 'Meld je aan met Plex of verbind een Jellyfin-server',
|
||||
@@ -2770,7 +2737,6 @@ extension on TranslationsNl {
|
||||
'connections.editJellyfinTitle' => 'Jellyfin-verbinding bewerken',
|
||||
'connections.editJellyfinIntro' => ({required Object serverName}) => 'Voeg URL\'s voor ${serverName} toe of verwijder ze. Plezy gebruikt de bereikbare URL met de laagste latentie.',
|
||||
'discover.title' => 'Ontdekken',
|
||||
'discover.switchProfile' => 'Wissel van profiel',
|
||||
'discover.noContentAvailable' => 'Geen inhoud beschikbaar',
|
||||
'discover.addMediaToLibraries' => 'Voeg wat media toe aan je bibliotheken',
|
||||
'discover.continueWatching' => 'Verder kijken',
|
||||
@@ -2797,8 +2763,6 @@ extension on TranslationsNl {
|
||||
'errors.connectionFailed' => 'Kan geen verbinding maken met mediaserver',
|
||||
'errors.failedToLoad' => ({required Object context, required Object error}) => 'Kon ${context} niet laden: ${error}',
|
||||
'errors.noClientAvailable' => 'Geen client beschikbaar',
|
||||
'errors.authenticationFailed' => ({required Object error}) => 'Authenticatie mislukt: ${error}',
|
||||
'errors.couldNotLaunchUrl' => 'Kon auth URL niet openen',
|
||||
'errors.pleaseEnterToken' => 'Voer een token in',
|
||||
'errors.invalidToken' => 'Ongeldig token',
|
||||
'errors.failedToVerifyToken' => ({required Object error}) => 'Kon token niet verifiëren: ${error}',
|
||||
@@ -2823,6 +2787,8 @@ extension on TranslationsNl {
|
||||
'libraries.allLibrariesHidden' => 'Alle bibliotheken zijn verborgen',
|
||||
'libraries.hiddenLibrariesCount' => ({required Object count}) => 'Verborgen bibliotheken (${count})',
|
||||
'libraries.thisLibraryIsEmpty' => 'Deze bibliotheek is leeg',
|
||||
'libraries.noItemsMatchFilters' => 'Geen items komen overeen met de actieve filters',
|
||||
'libraries.resetFilters' => 'Filters opnieuw instellen',
|
||||
'libraries.all' => 'Alles',
|
||||
'libraries.clearAll' => 'Alles wissen',
|
||||
'libraries.scanLibraryConfirm' => ({required Object title}) => 'Weet je zeker dat je "${title}" wilt scannen?',
|
||||
@@ -2871,7 +2837,6 @@ extension on TranslationsNl {
|
||||
'libraries.sortLabels.communityRating' => 'Communitybeoordeling',
|
||||
'libraries.sortLabels.criticRating' => 'Criticusbeoordeling',
|
||||
'libraries.sortLabels.userRating' => 'Gebruikersbeoordeling',
|
||||
'libraries.sortLabels.lastPlayed' => 'Laatst afgespeeld',
|
||||
'libraries.sortLabels.datePlayed' => 'Afspeeldatum',
|
||||
'libraries.sortLabels.playCount' => 'Aantal afspelingen',
|
||||
'libraries.sortLabels.productionYear' => 'Productiejaar',
|
||||
@@ -2885,14 +2850,11 @@ extension on TranslationsNl {
|
||||
'libraries.sortLabels.dateShared' => 'Gedeeld op',
|
||||
'libraries.sortLabels.latestEpisodeAirDate' => 'Laatste afleveringsuitzending',
|
||||
'libraries.sortLabels.lastEpisodeDateAdded' => 'Datum laatst toegevoegde aflevering',
|
||||
'libraries.noItemsMatchFilters' => 'Geen items komen overeen met de actieve filters',
|
||||
'libraries.resetFilters' => 'Filters opnieuw instellen',
|
||||
'about.title' => 'Over',
|
||||
'about.openSourceLicenses' => 'Open Source licenties',
|
||||
'about.versionLabel' => ({required Object version}) => 'Versie ${version}',
|
||||
'about.appDescription' => 'Een mooie Plex- en Jellyfin-client voor Flutter',
|
||||
'about.viewLicensesDescription' => 'Bekijk licenties van third-party bibliotheken',
|
||||
'serverSelection.allServerConnectionsFailed' => 'Kon met geen enkele server verbinden. Controleer je netwerk.',
|
||||
'serverSelection.noServersFoundForAccount' => ({required Object username, required Object email}) => 'Geen servers gevonden voor ${username} (${email})',
|
||||
'serverSelection.failedToLoadServers' => ({required Object error}) => 'Kon servers niet laden: ${error}',
|
||||
'hubDetail.title' => 'Titel',
|
||||
@@ -2926,10 +2888,6 @@ extension on TranslationsNl {
|
||||
'explore.rows.trending' => 'Trending',
|
||||
'explore.rows.upcomingMovies' => 'Aankomende films',
|
||||
'explore.rows.upcomingShows' => 'Aankomende series',
|
||||
'explore.searchHint' => ({required Object source}) => 'Zoeken in ${source}',
|
||||
'explore.searchEmpty' => ({required Object query}) => 'Geen resultaten voor "${query}"',
|
||||
'explore.searchPrompt' => ({required Object source}) => 'Zoek naar films en series op ${source}.',
|
||||
'explore.searchFailed' => 'Zoeken mislukt. Controleer je verbinding en probeer opnieuw.',
|
||||
'explore.status.airing' => 'Lopend',
|
||||
'explore.status.ended' => 'Afgelopen',
|
||||
'explore.status.canceled' => 'Geannuleerd',
|
||||
@@ -2942,14 +2900,19 @@ extension on TranslationsNl {
|
||||
'explore.watchlistUpdateFailed' => 'Kon kijklijst niet bijwerken',
|
||||
'explore.notInLibrary' => 'Niet in je bibliotheek',
|
||||
'explore.inTheseLibraries' => 'In deze bibliotheken',
|
||||
'explore.availableOn' => ({required Object server}) => 'Beschikbaar op ${server}',
|
||||
'explore.checkingLibrary' => 'Je bibliotheek controleren...',
|
||||
'explore.emptyTitle' => 'Hier is nog niets',
|
||||
'explore.emptyMessage' => ({required Object source}) => 'Rijen van ${source} verschijnen hier zodra ze inhoud hebben.',
|
||||
'explore.searchHint' => ({required Object source}) => 'Zoeken in ${source}',
|
||||
'explore.searchEmpty' => ({required Object query}) => 'Geen resultaten voor "${query}"',
|
||||
'explore.searchPrompt' => ({required Object source}) => 'Zoek naar films en series op ${source}.',
|
||||
'explore.searchFailed' => 'Zoeken mislukt. Controleer je verbinding en probeer opnieuw.',
|
||||
'liveTv.title' => 'Live TV',
|
||||
'liveTv.guide' => 'Gids',
|
||||
'liveTv.noChannels' => 'Geen zenders beschikbaar',
|
||||
'liveTv.noDvr' => 'Geen DVR geconfigureerd op een server',
|
||||
'liveTv.serverUnavailable' => 'De live-tv-server is niet beschikbaar.',
|
||||
'liveTv.serverNotConnected' => 'De live-tv-server is niet verbonden.',
|
||||
'liveTv.noPrograms' => 'Geen programmagegevens beschikbaar',
|
||||
'liveTv.liveStreamFailed' => 'Livestream mislukt',
|
||||
'liveTv.unknownProgram' => 'Onbekend programma',
|
||||
@@ -2985,7 +2948,6 @@ extension on TranslationsNl {
|
||||
'liveTv.scheduledRecordings' => 'Gepland',
|
||||
'liveTv.recordingRules' => 'Opnameregels',
|
||||
'liveTv.noScheduledRecordings' => 'Geen geplande opnames',
|
||||
'liveTv.noRecordingRules' => 'Nog geen opnameregels',
|
||||
'liveTv.manageRecording' => 'Opname beheren',
|
||||
'liveTv.cancelRecording' => 'Opname annuleren',
|
||||
'liveTv.cancelRecordingTitle' => 'Deze opname annuleren?',
|
||||
@@ -3002,7 +2964,6 @@ extension on TranslationsNl {
|
||||
'liveTv.recordingCancelled' => 'Opname geannuleerd',
|
||||
'liveTv.recordingRuleDeleted' => 'Opnameregel verwijderd',
|
||||
'liveTv.processRecordingRules' => 'Regels opnieuw evalueren',
|
||||
'liveTv.loadingRecordings' => 'Opnames laden...',
|
||||
'liveTv.recordingInProgress' => 'Nu aan het opnemen',
|
||||
'liveTv.recordingsCount' => ({required Object count}) => '${count} gepland',
|
||||
'liveTv.editRule' => 'Regel bewerken',
|
||||
@@ -3014,7 +2975,6 @@ extension on TranslationsNl {
|
||||
'collections.title' => 'Collecties',
|
||||
'collections.collection' => 'Collectie',
|
||||
'collections.empty' => 'Collectie is leeg',
|
||||
'collections.unknownLibrarySection' => 'Kan niet verwijderen: onbekende bibliotheeksectie',
|
||||
'collections.deleteCollection' => 'Collectie verwijderen',
|
||||
'collections.deleteConfirm' => ({required Object title}) => '"${title}" verwijderen? Dit kan niet ongedaan worden gemaakt.',
|
||||
'collections.deleted' => 'Collectie verwijderd',
|
||||
@@ -3052,6 +3012,7 @@ extension on TranslationsNl {
|
||||
'playlists.itemAdded' => 'Toegevoegd aan afspeellijst',
|
||||
'playlists.itemRemoved' => 'Verwijderd uit afspeellijst',
|
||||
'playlists.selectPlaylist' => 'Selecteer afspeellijst',
|
||||
'playlists.searchPlaylists' => 'Afspeellijsten zoeken...',
|
||||
'playlists.errorCreating' => 'Fout bij maken afspeellijst',
|
||||
'playlists.errorDeleting' => 'Fout bij verwijderen afspeellijst',
|
||||
'playlists.errorLoading' => 'Fout bij laden afspeellijsten',
|
||||
@@ -3134,22 +3095,20 @@ extension on TranslationsNl {
|
||||
'watchTogether.participantResumed' => ({required Object name}) => '${name} heeft hervat',
|
||||
'watchTogether.participantSeeked' => ({required Object name}) => '${name} heeft gespoeld',
|
||||
'watchTogether.participantBuffering' => ({required Object name}) => '${name} is aan het bufferen',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} gebruikt een oudere appversie — synchronisatie niet beschikbaar',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Hervatten zonder ${name}',
|
||||
'watchTogether.waitingForParticipants' => 'Wachten tot anderen geladen zijn...',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Wachten op ${name}...',
|
||||
'watchTogether.recentRooms' => 'Recente kamers',
|
||||
'watchTogether.renameRoom' => 'Kamer hernoemen',
|
||||
'watchTogether.removeRoom' => 'Verwijderen',
|
||||
'watchTogether.guestSwitchUnavailable' => 'Kon niet schakelen — server niet beschikbaar voor synchronisatie',
|
||||
'watchTogether.guestSwitchFailed' => 'Kon niet schakelen — inhoud niet gevonden op deze server',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} gebruikt een oudere appversie — synchronisatie niet beschikbaar',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Hervatten zonder ${name}',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Wachten op ${name}...',
|
||||
'downloads.title' => 'Downloads',
|
||||
'downloads.manage' => 'Beheren',
|
||||
'downloads.tvShows' => 'Series',
|
||||
'downloads.movies' => 'Films',
|
||||
'downloads.music' => 'Muziek',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.tracksQueued' => ({required Object count}) => '${count} nummers in wachtrij voor download',
|
||||
'downloads.noDownloads' => 'Nog geen downloads',
|
||||
'downloads.noDownloadsDescription' => 'Gedownloade content verschijnt hier voor offline weergave',
|
||||
@@ -3164,6 +3123,8 @@ extension on TranslationsNl {
|
||||
'downloads.deleteConfirm' => ({required Object title}) => '"${title}" van dit apparaat verwijderen?',
|
||||
'downloads.cancelledDownloadTitle' => 'Geannuleerde download',
|
||||
'downloads.cancelledDownloadMessage' => 'Deze download is geannuleerd. Wat wil je doen?',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.allEpisodesAlreadyDownloaded' => 'Alle afleveringen zijn al gedownload',
|
||||
'downloads.resumeDownload' => 'Download hervatten',
|
||||
'downloads.cancelledDownload' => 'Geannuleerde download',
|
||||
@@ -3187,7 +3148,6 @@ extension on TranslationsNl {
|
||||
'downloads.customAmount' => 'Aangepast aantal...',
|
||||
'downloads.includeSpecials' => 'Specials opnemen',
|
||||
'downloads.howManyEpisodes' => 'Hoeveel afleveringen?',
|
||||
'downloads.itemsQueued' => ({required Object count}) => '${count} items in downloadwachtrij',
|
||||
'downloads.keepSynced' => 'Gesynchroniseerd houden',
|
||||
'downloads.downloadOnce' => 'Eenmalig downloaden',
|
||||
'downloads.keepNUnwatched' => ({required Object count}) => '${count} onbekeken behouden',
|
||||
@@ -3231,7 +3191,6 @@ extension on TranslationsNl {
|
||||
'companionRemote.connectedTo' => ({required Object name}) => 'Verbonden met ${name}',
|
||||
'companionRemote.unknownDevice' => 'Onbekend apparaat',
|
||||
'companionRemote.session.startingServer' => 'Externe server starten...',
|
||||
'companionRemote.session.failedToCreate' => 'Kan externe server niet starten:',
|
||||
'companionRemote.session.hostAddress' => 'Hostadres',
|
||||
'companionRemote.session.connected' => 'Verbonden',
|
||||
'companionRemote.session.serverRunning' => 'Externe server actief',
|
||||
@@ -3286,6 +3245,8 @@ extension on TranslationsNl {
|
||||
'companionRemote.remote.searchHint' => 'Zoeken op desktop...',
|
||||
'companionRemote.errors.noNetworkInterface' => 'Geen netwerkinterface gevonden',
|
||||
'companionRemote.errors.authenticationFailed' => 'Authenticatie mislukt',
|
||||
'companionRemote.errors.serverStartFailed' => ({required Object error}) => 'Kan de externe server niet starten: ${error}',
|
||||
'companionRemote.errors.commandFailed' => ({required Object error}) => 'Kan de externe opdracht niet verzenden: ${error}',
|
||||
'companionRemote.errors.joinTimedOut' => 'Time-out bij deelnemen aan sessie',
|
||||
'companionRemote.errors.failedToConnectAnyAddress' => 'Kan met geen enkel adres verbinden',
|
||||
'companionRemote.errors.connectionLostAfterAttempts' => ({required Object attempts}) => 'Verbinding verloren na ${attempts} pogingen',
|
||||
@@ -3530,7 +3491,6 @@ extension on TranslationsNl {
|
||||
'addServer.quickConnectFailed' => ({required Object error}) => 'Quick Connect mislukt: ${error}',
|
||||
'addServer.addPlexTitle' => 'Inloggen met Plex',
|
||||
'addServer.pinExpired' => 'PIN verlopen vóór inloggen. Probeer opnieuw.',
|
||||
'addServer.duplicatePlexAccount' => 'Al aangemeld bij Plex. Meld je af om van account te wisselen.',
|
||||
'addServer.failedToRegisterAccount' => ({required Object error}) => 'Account registreren mislukt: ${error}',
|
||||
'addServer.enterJellyfinUrlError' => 'Voer de URL van je Jellyfin-server in',
|
||||
'addServer.addConnectionTitle' => 'Verbinding toevoegen',
|
||||
|
||||
+60
-100
@@ -53,7 +53,6 @@ class TranslationsPl extends Translations with BaseTranslations<AppLocale, Trans
|
||||
@override late final _TranslationsAccessibilityPl accessibility = _TranslationsAccessibilityPl._(_root);
|
||||
@override late final _TranslationsTooltipsPl tooltips = _TranslationsTooltipsPl._(_root);
|
||||
@override late final _TranslationsVideoControlsPl videoControls = _TranslationsVideoControlsPl._(_root);
|
||||
@override late final _TranslationsUserStatusPl userStatus = _TranslationsUserStatusPl._(_root);
|
||||
@override late final _TranslationsMessagesPl messages = _TranslationsMessagesPl._(_root);
|
||||
@override late final _TranslationsSubtitlingStylingPl subtitlingStyling = _TranslationsSubtitlingStylingPl._(_root);
|
||||
@override late final _TranslationsMpvConfigPl mpvConfig = _TranslationsMpvConfigPl._(_root);
|
||||
@@ -107,7 +106,6 @@ class _TranslationsAuthPl extends TranslationsAuthEn {
|
||||
final TranslationsPl _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get signIn => 'Zaloguj się';
|
||||
@override String get signInWithPlex => 'Zaloguj się przez Plex';
|
||||
@override String get showQRCode => 'Pokaż kod QR';
|
||||
@override String get authenticate => 'Uwierzytelnienie';
|
||||
@@ -167,10 +165,8 @@ class _TranslationsCommonPl extends TranslationsCommonEn {
|
||||
@override String episodeNumberTitle({required Object number, required Object title}) => 'Odcinek ${number} - ${title}';
|
||||
@override String chapterNumber({required Object number}) => 'Rozdział ${number}';
|
||||
@override String get reconnect => 'Połącz ponownie';
|
||||
@override String get exit => 'Wyjdź';
|
||||
@override String get viewAll => 'Pokaż wszystko';
|
||||
@override String get checkingNetwork => 'Sprawdzanie sieci...';
|
||||
@override String get refreshingServers => 'Odświeżanie serwerów...';
|
||||
@override String get loadingServers => 'Ładowanie serwerów...';
|
||||
@override String get connectingToServers => 'Łączenie z serwerami...';
|
||||
@override String get startingOfflineMode => 'Uruchamianie trybu offline...';
|
||||
@@ -271,6 +267,12 @@ class _TranslationsSettingsPl extends TranslationsSettingsEn {
|
||||
@override String get tvFullCardLayoutDescription => 'Używaj kart TV tylko z obrazem i nałożonymi nazwiskami aktorów';
|
||||
@override String get focusGlow => 'Poświata zaznaczenia';
|
||||
@override String get focusGlowDescription => 'Wyświetlaj delikatną poświatę wokół zaznaczonej karty';
|
||||
@override String get visualEffects => 'Efekty wizualne';
|
||||
@override String get visualEffectsAuto => 'Automatycznie';
|
||||
@override String get visualEffectsAutoDescription => 'Automatycznie ograniczaj efekty na urządzeniach o niższej wydajności';
|
||||
@override String get visualEffectsFull => 'Pełne';
|
||||
@override String get visualEffectsReduced => 'Ograniczone';
|
||||
@override String get visualEffectsReducedDescription => 'Mniej animacji i grafiki o niższej rozdzielczości';
|
||||
@override String get hideSpoilers => 'Ukryj spoilery nieobejrzanych odcinków';
|
||||
@override String get hideSpoilersDescription => 'Rozmywaj miniatury i opisy nieobejrzanych odcinków';
|
||||
@override String get playerBackend => 'Backend odtwarzacza';
|
||||
@@ -283,7 +285,7 @@ class _TranslationsSettingsPl extends TranslationsSettingsEn {
|
||||
@override String get bufferSizeAuto => 'Automatyczny (Zalecany)';
|
||||
@override String bufferSizeWarning({required Object heap, required Object size}) => 'Dostępna pamięć: ${heap}MB. Bufor ${size}MB może wpłynąć na odtwarzanie.';
|
||||
@override String get defaultQualityTitle => 'Domyślna jakość';
|
||||
@override String get defaultQualityDescription => 'Używane podczas rozpoczynania odtwarzania. Niższe wartości zmniejszają przepustowość.';
|
||||
@override String get musicQualityTitle => 'Jakość muzyki';
|
||||
@override String get subtitleStyling => 'Styl napisów';
|
||||
@override String get subtitleStylingDescription => 'Dostosuj wygląd napisów';
|
||||
@override String get smallSkipDuration => 'Krótki skok';
|
||||
@@ -377,10 +379,9 @@ class _TranslationsSettingsPl extends TranslationsSettingsEn {
|
||||
@override String maxVolumePercent({required Object percent}) => '${percent}%';
|
||||
@override String get discordRichPresence => 'Discord Rich Presence';
|
||||
@override String get discordRichPresenceDescription => 'Pokaż, co oglądasz na Discordzie';
|
||||
@override String get trakt => 'Trakt';
|
||||
@override String get traktDescription => 'Synchronizuj historię oglądania z Trakt';
|
||||
@override String get services => 'Usługi';
|
||||
@override String get servicesDescription => 'Połącz Trakt, MyAnimeList, Seerr i inne';
|
||||
@override String get manageLibrariesDescription => 'Zmieniaj kolejność i ukrywaj biblioteki';
|
||||
@override String get companionRemoteServer => 'Serwer zdalnego sterowania';
|
||||
@override String get companionRemoteServerDescription => 'Pozwól urządzeniom mobilnym w sieci sterować tą aplikacją';
|
||||
@override String get autoPip => 'Automatyczny obraz w obrazie';
|
||||
@@ -443,7 +444,6 @@ class _TranslationsSettingsPl extends TranslationsSettingsEn {
|
||||
@override String get showNavBarLabels => 'Pokaż etykiety paska nawigacji';
|
||||
@override String get showNavBarLabelsDescription => 'Wyświetl tekstowe etykiety pod ikonami paska nawigacji';
|
||||
@override String get startupSection => 'Sekcja startowa';
|
||||
@override String get startupSectionDescription => 'Wybierz, którą sekcję Plezy otwiera przy uruchomieniu';
|
||||
@override String get liveTvDefaultFavorites => 'Domyślnie ulubione kanały';
|
||||
@override String get liveTvDefaultFavoritesDescription => 'Pokaż tylko ulubione kanały po otwarciu telewizji na żywo';
|
||||
@override String get display => 'Ekran';
|
||||
@@ -455,13 +455,6 @@ class _TranslationsSettingsPl extends TranslationsSettingsEn {
|
||||
@override String get subtitlesAndConfig => 'Napisy i konfiguracja';
|
||||
@override String get seekAndTiming => 'Przewijanie i czas';
|
||||
@override String get behavior => 'Zachowanie';
|
||||
@override String get manageLibrariesDescription => 'Zmieniaj kolejność i ukrywaj biblioteki';
|
||||
@override String get visualEffects => 'Efekty wizualne';
|
||||
@override String get visualEffectsAuto => 'Automatycznie';
|
||||
@override String get visualEffectsAutoDescription => 'Automatycznie ograniczaj efekty na urządzeniach o niższej wydajności';
|
||||
@override String get visualEffectsFull => 'Pełne';
|
||||
@override String get visualEffectsReduced => 'Ograniczone';
|
||||
@override String get visualEffectsReducedDescription => 'Mniej animacji i grafiki o niższej rozdzielczości';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -559,14 +552,11 @@ class _TranslationsRateSheetPl extends TranslationsRateSheetEn {
|
||||
// Translations
|
||||
@override String get title => 'Oceń';
|
||||
@override String get server => 'Serwer';
|
||||
@override String starValue({required Object rating}) => '${rating} / 5';
|
||||
@override String scoreValue({required Object score}) => '${score} / 10';
|
||||
@override String get setScore => 'Ustaw ocenę';
|
||||
@override String get favorite => 'Dodaj do ulubionych';
|
||||
@override String get favorited => 'Dodano do ulubionych';
|
||||
@override String get saved => 'Zapisano';
|
||||
@override String get notAvailable => 'Nie znaleziono dopasowania';
|
||||
@override String get noConnectedServices => 'Połącz usługę w Ustawieniach, aby tam oceniać.';
|
||||
@override String get favorite => 'Dodaj do ulubionych';
|
||||
@override String get favorited => 'Dodano do ulubionych';
|
||||
}
|
||||
|
||||
// Path: accessibility
|
||||
@@ -584,6 +574,14 @@ class _TranslationsAccessibilityPl extends TranslationsAccessibilityEn {
|
||||
@override String mediaCardPartiallyWatched({required Object percent}) => '${percent} procent obejrzane';
|
||||
@override String get mediaCardUnwatched => 'nieobejrzane';
|
||||
@override String get tapToPlay => 'Dotknij, aby odtworzyć';
|
||||
@override String get decrease => 'Zmniejsz';
|
||||
@override String get increase => 'Zwiększ';
|
||||
@override String decreaseValue({required Object label}) => 'Zmniejsz ${label}';
|
||||
@override String increaseValue({required Object label}) => 'Zwiększ ${label}';
|
||||
@override String get hue => 'Odcień';
|
||||
@override String get saturation => 'Nasycenie';
|
||||
@override String get brightness => 'Jasność';
|
||||
@override String get hexColor => 'Kolor szesnastkowy';
|
||||
}
|
||||
|
||||
// Path: tooltips
|
||||
@@ -643,13 +641,11 @@ class _TranslationsVideoControlsPl extends TranslationsVideoControlsEn {
|
||||
@override String get settingsButton => 'Ustawienia odtwarzania';
|
||||
@override String get tracksButton => 'Audio i napisy';
|
||||
@override String get chaptersButton => 'Rozdziały';
|
||||
@override String get versionsButton => 'Wersje wideo';
|
||||
@override String get versionQualityButton => 'Wersja i jakość';
|
||||
@override String get versionColumnHeader => 'Wersja';
|
||||
@override String get qualityColumnHeader => 'Jakość';
|
||||
@override String get qualityOriginal => 'Oryginalna';
|
||||
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
|
||||
@override String qualityBandwidthEstimate({required Object bitrate}) => '~${bitrate} Mbps';
|
||||
@override String get transcodeUnavailableFallback => 'Transkodowanie niedostępne — odtwarzanie w oryginalnej jakości';
|
||||
@override String get pipButton => 'Tryb obraz w obrazie';
|
||||
@override String get aspectRatioButton => 'Proporcje';
|
||||
@@ -685,19 +681,6 @@ class _TranslationsVideoControlsPl extends TranslationsVideoControlsEn {
|
||||
@override String get searchLanguages => 'Szukaj języków...';
|
||||
}
|
||||
|
||||
// Path: userStatus
|
||||
class _TranslationsUserStatusPl extends TranslationsUserStatusEn {
|
||||
_TranslationsUserStatusPl._(TranslationsPl root) : this._root = root, super.internal(root);
|
||||
|
||||
final TranslationsPl _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get admin => 'Administrator';
|
||||
@override String get restricted => 'Ograniczony';
|
||||
@override String get protected => 'Chroniony';
|
||||
@override String get current => 'BIEŻĄCY';
|
||||
}
|
||||
|
||||
// Path: messages
|
||||
class _TranslationsMessagesPl extends TranslationsMessagesEn {
|
||||
_TranslationsMessagesPl._(TranslationsPl root) : this._root = root, super.internal(root);
|
||||
@@ -873,7 +856,6 @@ class _TranslationsProfilesPl extends TranslationsProfilesEn {
|
||||
@override String get pinExplain => 'Do przełączania profili wymagany jest 4-cyfrowy PIN.';
|
||||
@override String get continueButton => 'Kontynuuj';
|
||||
@override String get pinsDontMatch => 'PIN-y nie pasują';
|
||||
@override String get initializeServicesFailed => 'Nie udało się zainicjować usług profilu';
|
||||
}
|
||||
|
||||
// Path: connections
|
||||
@@ -902,7 +884,6 @@ class _TranslationsDiscoverPl extends TranslationsDiscoverEn {
|
||||
|
||||
// Translations
|
||||
@override String get title => 'Odkryj';
|
||||
@override String get switchProfile => 'Zmień profil';
|
||||
@override String get noContentAvailable => 'Brak dostępnych treści';
|
||||
@override String get addMediaToLibraries => 'Dodaj multimedia do swoich bibliotek';
|
||||
@override String get continueWatching => 'Kontynuuj oglądanie';
|
||||
@@ -938,8 +919,6 @@ class _TranslationsErrorsPl extends TranslationsErrorsEn {
|
||||
@override String get connectionFailed => 'Nie można połączyć się z serwerem multimediów';
|
||||
@override String failedToLoad({required Object context, required Object error}) => 'Nie udało się załadować ${context}: ${error}';
|
||||
@override String get noClientAvailable => 'Brak dostępnego klienta';
|
||||
@override String authenticationFailed({required Object error}) => 'Uwierzytelnienie nie powiodło się: ${error}';
|
||||
@override String get couldNotLaunchUrl => 'Nie można otworzyć URL uwierzytelniania';
|
||||
@override String get pleaseEnterToken => 'Wprowadź token';
|
||||
@override String get invalidToken => 'Nieprawidłowy token';
|
||||
@override String failedToVerifyToken({required Object error}) => 'Nie udało się zweryfikować tokena: ${error}';
|
||||
@@ -973,6 +952,8 @@ class _TranslationsLibrariesPl extends TranslationsLibrariesEn {
|
||||
@override String get allLibrariesHidden => 'Wszystkie biblioteki są ukryte';
|
||||
@override String hiddenLibrariesCount({required Object count}) => 'Ukryte biblioteki (${count})';
|
||||
@override String get thisLibraryIsEmpty => 'Ta biblioteka jest pusta';
|
||||
@override String get noItemsMatchFilters => 'Żadne elementy nie pasują do aktywnych filtrów';
|
||||
@override String get resetFilters => 'Resetuj filtry';
|
||||
@override String get all => 'Wszystkie';
|
||||
@override String get clearAll => 'Wyczyść wszystko';
|
||||
@override String scanLibraryConfirm({required Object title}) => 'Czy na pewno chcesz zeskanować "${title}"?';
|
||||
@@ -998,8 +979,6 @@ class _TranslationsLibrariesPl extends TranslationsLibrariesEn {
|
||||
@override late final _TranslationsLibrariesGroupingsPl groupings = _TranslationsLibrariesGroupingsPl._(_root);
|
||||
@override late final _TranslationsLibrariesFilterCategoriesPl filterCategories = _TranslationsLibrariesFilterCategoriesPl._(_root);
|
||||
@override late final _TranslationsLibrariesSortLabelsPl sortLabels = _TranslationsLibrariesSortLabelsPl._(_root);
|
||||
@override String get noItemsMatchFilters => 'Żadne elementy nie pasują do aktywnych filtrów';
|
||||
@override String get resetFilters => 'Resetuj filtry';
|
||||
}
|
||||
|
||||
// Path: about
|
||||
@@ -1023,7 +1002,6 @@ class _TranslationsServerSelectionPl extends TranslationsServerSelectionEn {
|
||||
final TranslationsPl _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get allServerConnectionsFailed => 'Nie udało się połączyć z żadnym serwerem. Sprawdź sieć.';
|
||||
@override String noServersFoundForAccount({required Object username, required Object email}) => 'Nie znaleziono serwerów dla ${username} (${email})';
|
||||
@override String failedToLoadServers({required Object error}) => 'Nie udało się załadować serwerów: ${error}';
|
||||
}
|
||||
@@ -1104,7 +1082,6 @@ class _TranslationsExplorePl extends TranslationsExploreEn {
|
||||
@override String get watchlistUpdateFailed => 'Nie udało się zaktualizować listy do obejrzenia';
|
||||
@override String get notInLibrary => 'Nie ma tego w Twojej bibliotece';
|
||||
@override String get inTheseLibraries => 'W tych bibliotekach';
|
||||
@override String availableOn({required Object server}) => 'Dostępne na ${server}';
|
||||
@override String get checkingLibrary => 'Sprawdzanie Twojej biblioteki...';
|
||||
@override String get emptyTitle => 'Jeszcze nic tu nie ma';
|
||||
@override String emptyMessage({required Object source}) => 'Wiersze z ${source} pojawią się tutaj, gdy będą zawierać treści.';
|
||||
@@ -1125,6 +1102,8 @@ class _TranslationsLiveTvPl extends TranslationsLiveTvEn {
|
||||
@override String get guide => 'Przewodnik';
|
||||
@override String get noChannels => 'Brak dostępnych kanałów';
|
||||
@override String get noDvr => 'Brak skonfigurowanego DVR na żadnym serwerze';
|
||||
@override String get serverUnavailable => 'Serwer telewizji na żywo jest niedostępny.';
|
||||
@override String get serverNotConnected => 'Serwer telewizji na żywo nie jest połączony.';
|
||||
@override String get noPrograms => 'Brak danych o programach';
|
||||
@override String get liveStreamFailed => 'Transmisja na żywo nie powiodła się';
|
||||
@override String get unknownProgram => 'Nieznany program';
|
||||
@@ -1160,7 +1139,6 @@ class _TranslationsLiveTvPl extends TranslationsLiveTvEn {
|
||||
@override String get scheduledRecordings => 'Zaplanowane';
|
||||
@override String get recordingRules => 'Reguły nagrywania';
|
||||
@override String get noScheduledRecordings => 'Brak zaplanowanych nagrań';
|
||||
@override String get noRecordingRules => 'Brak reguł nagrywania';
|
||||
@override String get manageRecording => 'Zarządzaj nagraniem';
|
||||
@override String get cancelRecording => 'Anuluj nagrywanie';
|
||||
@override String get cancelRecordingTitle => 'Anulować to nagrywanie?';
|
||||
@@ -1177,7 +1155,6 @@ class _TranslationsLiveTvPl extends TranslationsLiveTvEn {
|
||||
@override String get recordingCancelled => 'Nagrywanie anulowane';
|
||||
@override String get recordingRuleDeleted => 'Reguła nagrywania usunięta';
|
||||
@override String get processRecordingRules => 'Ponów ocenę reguł';
|
||||
@override String get loadingRecordings => 'Wczytywanie nagrań...';
|
||||
@override String get recordingInProgress => 'Trwa nagrywanie';
|
||||
@override String recordingsCount({required Object count}) => '${count} zaplanowanych';
|
||||
@override String get editRule => 'Edytuj regułę';
|
||||
@@ -1198,7 +1175,6 @@ class _TranslationsCollectionsPl extends TranslationsCollectionsEn {
|
||||
@override String get title => 'Kolekcje';
|
||||
@override String get collection => 'Kolekcja';
|
||||
@override String get empty => 'Kolekcja jest pusta';
|
||||
@override String get unknownLibrarySection => 'Nie można usunąć: Nieznana sekcja biblioteki';
|
||||
@override String get deleteCollection => 'Usuń kolekcję';
|
||||
@override String deleteConfirm({required Object title}) => 'Usunąć "${title}"? Tego nie można cofnąć.';
|
||||
@override String get deleted => 'Kolekcja usunięta';
|
||||
@@ -1245,6 +1221,7 @@ class _TranslationsPlaylistsPl extends TranslationsPlaylistsEn {
|
||||
@override String get itemAdded => 'Dodano do playlisty';
|
||||
@override String get itemRemoved => 'Usunięto z playlisty';
|
||||
@override String get selectPlaylist => 'Wybierz playlistę';
|
||||
@override String get searchPlaylists => 'Szukaj playlist...';
|
||||
@override String get errorCreating => 'Nie udało się utworzyć playlisty';
|
||||
@override String get errorDeleting => 'Nie udało się usunąć playlisty';
|
||||
@override String get errorLoading => 'Nie udało się załadować playlist';
|
||||
@@ -1350,15 +1327,15 @@ class _TranslationsWatchTogetherPl extends TranslationsWatchTogetherEn {
|
||||
@override String participantResumed({required Object name}) => '${name} wznowił';
|
||||
@override String participantSeeked({required Object name}) => '${name} przewinął';
|
||||
@override String participantBuffering({required Object name}) => '${name} buforuje';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} używa starszej wersji aplikacji — synchronizacja jest niedostępna';
|
||||
@override String resumingWithout({required Object name}) => 'Wznawianie bez ${name}';
|
||||
@override String get waitingForParticipants => 'Oczekiwanie na załadowanie u innych...';
|
||||
@override String waitingForName({required Object name}) => 'Oczekiwanie na ${name}...';
|
||||
@override String get recentRooms => 'Ostatnie pokoje';
|
||||
@override String get renameRoom => 'Zmień nazwę pokoju';
|
||||
@override String get removeRoom => 'Usuń';
|
||||
@override String get guestSwitchUnavailable => 'Nie można przełączyć — serwer niedostępny do synchronizacji';
|
||||
@override String get guestSwitchFailed => 'Nie można przełączyć — nie znaleziono treści na tym serwerze';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} używa starszej wersji aplikacji — synchronizacja jest niedostępna';
|
||||
@override String resumingWithout({required Object name}) => 'Wznawianie bez ${name}';
|
||||
@override String waitingForName({required Object name}) => 'Oczekiwanie na ${name}...';
|
||||
}
|
||||
|
||||
// Path: downloads
|
||||
@@ -1410,7 +1387,6 @@ class _TranslationsDownloadsPl extends TranslationsDownloadsEn {
|
||||
@override String get customAmount => 'Własna ilość...';
|
||||
@override String get includeSpecials => 'Uwzględnij odcinki specjalne';
|
||||
@override String get howManyEpisodes => 'Ile odcinków?';
|
||||
@override String itemsQueued({required Object count}) => '${count} elementów dodanych do kolejki pobierania';
|
||||
@override String get keepSynced => 'Synchronizuj na bieżąco';
|
||||
@override String get downloadOnce => 'Pobierz raz';
|
||||
@override String keepNUnwatched({required Object count}) => 'Zachowaj ${count} nieobejrzanych';
|
||||
@@ -1784,7 +1760,6 @@ class _TranslationsAddServerPl extends TranslationsAddServerEn {
|
||||
@override String quickConnectFailed({required Object error}) => 'Quick Connect nie powiodło się: ${error}';
|
||||
@override String get addPlexTitle => 'Zaloguj się przez Plex';
|
||||
@override String get pinExpired => 'PIN wygasł przed zalogowaniem. Spróbuj ponownie.';
|
||||
@override String get duplicatePlexAccount => 'Już zalogowano do Plex. Wyloguj się, aby zmienić konto.';
|
||||
@override String failedToRegisterAccount({required Object error}) => 'Nie udało się zarejestrować konta: ${error}';
|
||||
@override String get enterJellyfinUrlError => 'Podaj URL serwera Jellyfin';
|
||||
@override String get addConnectionTitle => 'Dodaj połączenie';
|
||||
@@ -1910,7 +1885,6 @@ class _TranslationsLibrariesSortLabelsPl extends TranslationsLibrariesSortLabels
|
||||
@override String get communityRating => 'Ocena społeczności';
|
||||
@override String get criticRating => 'Ocena krytyków';
|
||||
@override String get userRating => 'Ocena użytkownika';
|
||||
@override String get lastPlayed => 'Ostatnio odtwarzane';
|
||||
@override String get datePlayed => 'Data odtworzenia';
|
||||
@override String get playCount => 'Liczba odtworzeń';
|
||||
@override String get productionYear => 'Rok produkcji';
|
||||
@@ -1969,7 +1943,6 @@ class _TranslationsCompanionRemoteSessionPl extends TranslationsCompanionRemoteS
|
||||
|
||||
// Translations
|
||||
@override String get startingServer => 'Uruchamianie serwera zdalnego...';
|
||||
@override String get failedToCreate => 'Nie udało się uruchomić serwera zdalnego:';
|
||||
@override String get hostAddress => 'Adres hosta';
|
||||
@override String get connected => 'Połączono';
|
||||
@override String get serverRunning => 'Serwer zdalny aktywny';
|
||||
@@ -2051,6 +2024,8 @@ class _TranslationsCompanionRemoteErrorsPl extends TranslationsCompanionRemoteEr
|
||||
// Translations
|
||||
@override String get noNetworkInterface => 'Nie znaleziono interfejsu sieciowego';
|
||||
@override String get authenticationFailed => 'Uwierzytelnianie nie powiodło się';
|
||||
@override String serverStartFailed({required Object error}) => 'Nie udało się uruchomić serwera zdalnego: ${error}';
|
||||
@override String commandFailed({required Object error}) => 'Nie udało się wysłać polecenia zdalnego: ${error}';
|
||||
@override String get joinTimedOut => 'Upłynął limit czasu dołączania do sesji';
|
||||
@override String get failedToConnectAnyAddress => 'Nie udało się połączyć z żadnym adresem';
|
||||
@override String connectionLostAfterAttempts({required Object attempts}) => 'Połączenie utracone po ${attempts} próbach';
|
||||
@@ -2127,7 +2102,6 @@ extension on TranslationsPl {
|
||||
dynamic _flatMapFunction(String path) {
|
||||
return switch (path) {
|
||||
'app.title' => 'Plezy',
|
||||
'auth.signIn' => 'Zaloguj się',
|
||||
'auth.signInWithPlex' => 'Zaloguj się przez Plex',
|
||||
'auth.showQRCode' => 'Pokaż kod QR',
|
||||
'auth.authenticate' => 'Uwierzytelnienie',
|
||||
@@ -2178,10 +2152,8 @@ extension on TranslationsPl {
|
||||
'common.episodeNumberTitle' => ({required Object number, required Object title}) => 'Odcinek ${number} - ${title}',
|
||||
'common.chapterNumber' => ({required Object number}) => 'Rozdział ${number}',
|
||||
'common.reconnect' => 'Połącz ponownie',
|
||||
'common.exit' => 'Wyjdź',
|
||||
'common.viewAll' => 'Pokaż wszystko',
|
||||
'common.checkingNetwork' => 'Sprawdzanie sieci...',
|
||||
'common.refreshingServers' => 'Odświeżanie serwerów...',
|
||||
'common.loadingServers' => 'Ładowanie serwerów...',
|
||||
'common.connectingToServers' => 'Łączenie z serwerami...',
|
||||
'common.startingOfflineMode' => 'Uruchamianie trybu offline...',
|
||||
@@ -2255,6 +2227,12 @@ extension on TranslationsPl {
|
||||
'settings.tvFullCardLayoutDescription' => 'Używaj kart TV tylko z obrazem i nałożonymi nazwiskami aktorów',
|
||||
'settings.focusGlow' => 'Poświata zaznaczenia',
|
||||
'settings.focusGlowDescription' => 'Wyświetlaj delikatną poświatę wokół zaznaczonej karty',
|
||||
'settings.visualEffects' => 'Efekty wizualne',
|
||||
'settings.visualEffectsAuto' => 'Automatycznie',
|
||||
'settings.visualEffectsAutoDescription' => 'Automatycznie ograniczaj efekty na urządzeniach o niższej wydajności',
|
||||
'settings.visualEffectsFull' => 'Pełne',
|
||||
'settings.visualEffectsReduced' => 'Ograniczone',
|
||||
'settings.visualEffectsReducedDescription' => 'Mniej animacji i grafiki o niższej rozdzielczości',
|
||||
'settings.hideSpoilers' => 'Ukryj spoilery nieobejrzanych odcinków',
|
||||
'settings.hideSpoilersDescription' => 'Rozmywaj miniatury i opisy nieobejrzanych odcinków',
|
||||
'settings.playerBackend' => 'Backend odtwarzacza',
|
||||
@@ -2267,7 +2245,7 @@ extension on TranslationsPl {
|
||||
'settings.bufferSizeAuto' => 'Automatyczny (Zalecany)',
|
||||
'settings.bufferSizeWarning' => ({required Object heap, required Object size}) => 'Dostępna pamięć: ${heap}MB. Bufor ${size}MB może wpłynąć na odtwarzanie.',
|
||||
'settings.defaultQualityTitle' => 'Domyślna jakość',
|
||||
'settings.defaultQualityDescription' => 'Używane podczas rozpoczynania odtwarzania. Niższe wartości zmniejszają przepustowość.',
|
||||
'settings.musicQualityTitle' => 'Jakość muzyki',
|
||||
'settings.subtitleStyling' => 'Styl napisów',
|
||||
'settings.subtitleStylingDescription' => 'Dostosuj wygląd napisów',
|
||||
'settings.smallSkipDuration' => 'Krótki skok',
|
||||
@@ -2361,10 +2339,9 @@ extension on TranslationsPl {
|
||||
'settings.maxVolumePercent' => ({required Object percent}) => '${percent}%',
|
||||
'settings.discordRichPresence' => 'Discord Rich Presence',
|
||||
'settings.discordRichPresenceDescription' => 'Pokaż, co oglądasz na Discordzie',
|
||||
'settings.trakt' => 'Trakt',
|
||||
'settings.traktDescription' => 'Synchronizuj historię oglądania z Trakt',
|
||||
'settings.services' => 'Usługi',
|
||||
'settings.servicesDescription' => 'Połącz Trakt, MyAnimeList, Seerr i inne',
|
||||
'settings.manageLibrariesDescription' => 'Zmieniaj kolejność i ukrywaj biblioteki',
|
||||
'settings.companionRemoteServer' => 'Serwer zdalnego sterowania',
|
||||
'settings.companionRemoteServerDescription' => 'Pozwól urządzeniom mobilnym w sieci sterować tą aplikacją',
|
||||
'settings.autoPip' => 'Automatyczny obraz w obrazie',
|
||||
@@ -2427,7 +2404,6 @@ extension on TranslationsPl {
|
||||
'settings.showNavBarLabels' => 'Pokaż etykiety paska nawigacji',
|
||||
'settings.showNavBarLabelsDescription' => 'Wyświetl tekstowe etykiety pod ikonami paska nawigacji',
|
||||
'settings.startupSection' => 'Sekcja startowa',
|
||||
'settings.startupSectionDescription' => 'Wybierz, którą sekcję Plezy otwiera przy uruchomieniu',
|
||||
'settings.liveTvDefaultFavorites' => 'Domyślnie ulubione kanały',
|
||||
'settings.liveTvDefaultFavoritesDescription' => 'Pokaż tylko ulubione kanały po otwarciu telewizji na żywo',
|
||||
'settings.display' => 'Ekran',
|
||||
@@ -2439,13 +2415,6 @@ extension on TranslationsPl {
|
||||
'settings.subtitlesAndConfig' => 'Napisy i konfiguracja',
|
||||
'settings.seekAndTiming' => 'Przewijanie i czas',
|
||||
'settings.behavior' => 'Zachowanie',
|
||||
'settings.manageLibrariesDescription' => 'Zmieniaj kolejność i ukrywaj biblioteki',
|
||||
'settings.visualEffects' => 'Efekty wizualne',
|
||||
'settings.visualEffectsAuto' => 'Automatycznie',
|
||||
'settings.visualEffectsAutoDescription' => 'Automatycznie ograniczaj efekty na urządzeniach o niższej wydajności',
|
||||
'settings.visualEffectsFull' => 'Pełne',
|
||||
'settings.visualEffectsReduced' => 'Ograniczone',
|
||||
'settings.visualEffectsReducedDescription' => 'Mniej animacji i grafiki o niższej rozdzielczości',
|
||||
'search.hint' => 'Szukaj filmów, seriali, muzyki...',
|
||||
'search.tryDifferentTerm' => 'Spróbuj innego wyszukiwania',
|
||||
'search.searchYourMedia' => 'Przeszukaj swoje media',
|
||||
@@ -2522,14 +2491,11 @@ extension on TranslationsPl {
|
||||
'mediaMenu.playVersion' => 'Odtwórz wersję...',
|
||||
'rateSheet.title' => 'Oceń',
|
||||
'rateSheet.server' => 'Serwer',
|
||||
'rateSheet.starValue' => ({required Object rating}) => '${rating} / 5',
|
||||
'rateSheet.scoreValue' => ({required Object score}) => '${score} / 10',
|
||||
'rateSheet.setScore' => 'Ustaw ocenę',
|
||||
'rateSheet.favorite' => 'Dodaj do ulubionych',
|
||||
'rateSheet.favorited' => 'Dodano do ulubionych',
|
||||
'rateSheet.saved' => 'Zapisano',
|
||||
'rateSheet.notAvailable' => 'Nie znaleziono dopasowania',
|
||||
'rateSheet.noConnectedServices' => 'Połącz usługę w Ustawieniach, aby tam oceniać.',
|
||||
'rateSheet.favorite' => 'Dodaj do ulubionych',
|
||||
'rateSheet.favorited' => 'Dodano do ulubionych',
|
||||
'accessibility.mediaCardMovie' => ({required Object title}) => '${title}, film',
|
||||
'accessibility.mediaCardShow' => ({required Object title}) => '${title}, serial TV',
|
||||
'accessibility.mediaCardEpisode' => ({required Object title, required Object episodeInfo}) => '${title}, ${episodeInfo}',
|
||||
@@ -2538,6 +2504,14 @@ extension on TranslationsPl {
|
||||
'accessibility.mediaCardPartiallyWatched' => ({required Object percent}) => '${percent} procent obejrzane',
|
||||
'accessibility.mediaCardUnwatched' => 'nieobejrzane',
|
||||
'accessibility.tapToPlay' => 'Dotknij, aby odtworzyć',
|
||||
'accessibility.decrease' => 'Zmniejsz',
|
||||
'accessibility.increase' => 'Zwiększ',
|
||||
'accessibility.decreaseValue' => ({required Object label}) => 'Zmniejsz ${label}',
|
||||
'accessibility.increaseValue' => ({required Object label}) => 'Zwiększ ${label}',
|
||||
'accessibility.hue' => 'Odcień',
|
||||
'accessibility.saturation' => 'Nasycenie',
|
||||
'accessibility.brightness' => 'Jasność',
|
||||
'accessibility.hexColor' => 'Kolor szesnastkowy',
|
||||
'tooltips.shufflePlay' => 'Odtwarzanie losowe',
|
||||
'tooltips.playTrailer' => 'Odtwórz zwiastun',
|
||||
'tooltips.markAsWatched' => 'Oznacz jako obejrzane',
|
||||
@@ -2579,13 +2553,11 @@ extension on TranslationsPl {
|
||||
'videoControls.settingsButton' => 'Ustawienia odtwarzania',
|
||||
'videoControls.tracksButton' => 'Audio i napisy',
|
||||
'videoControls.chaptersButton' => 'Rozdziały',
|
||||
'videoControls.versionsButton' => 'Wersje wideo',
|
||||
'videoControls.versionQualityButton' => 'Wersja i jakość',
|
||||
'videoControls.versionColumnHeader' => 'Wersja',
|
||||
'videoControls.qualityColumnHeader' => 'Jakość',
|
||||
'videoControls.qualityOriginal' => 'Oryginalna',
|
||||
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
|
||||
'videoControls.qualityBandwidthEstimate' => ({required Object bitrate}) => '~${bitrate} Mbps',
|
||||
'videoControls.transcodeUnavailableFallback' => 'Transkodowanie niedostępne — odtwarzanie w oryginalnej jakości',
|
||||
'videoControls.pipButton' => 'Tryb obraz w obrazie',
|
||||
'videoControls.aspectRatioButton' => 'Proporcje',
|
||||
@@ -2625,10 +2597,6 @@ extension on TranslationsPl {
|
||||
'videoControls.subtitleDownloaded' => 'Napisy pobrane',
|
||||
'videoControls.subtitleDownloadFailed' => 'Nie udało się pobrać napisów',
|
||||
'videoControls.searchLanguages' => 'Szukaj języków...',
|
||||
'userStatus.admin' => 'Administrator',
|
||||
'userStatus.restricted' => 'Ograniczony',
|
||||
'userStatus.protected' => 'Chroniony',
|
||||
'userStatus.current' => 'BIEŻĄCY',
|
||||
'messages.markedAsWatched' => 'Oznaczono jako obejrzane',
|
||||
'messages.markedAsUnwatched' => 'Oznaczono jako nieobejrzane',
|
||||
'messages.markedAsWatchedOffline' => 'Oznaczono jako obejrzane (zsynchronizuje się po połączeniu)',
|
||||
@@ -2638,8 +2606,6 @@ extension on TranslationsPl {
|
||||
'messages.errorLoading' => ({required Object error}) => 'Błąd: ${error}',
|
||||
'messages.streamInterrupted' => 'Strumień został przerwany. Naciśnij odtwarzanie lub przewiń, aby spróbować ponownie.',
|
||||
'messages.fileInfoNotAvailable' => 'Informacje o pliku niedostępne',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Błąd ładowania informacji o pliku: ${error}',
|
||||
'messages.errorLoadingSeries' => 'Błąd ładowania serialu',
|
||||
'messages.musicNotSupported' => 'Odtwarzanie muzyki nie jest jeszcze obsługiwane',
|
||||
@@ -2647,6 +2613,8 @@ extension on TranslationsPl {
|
||||
'messages.noProfilesAvailable' => 'Brak dostępnych profili',
|
||||
'messages.contactAdminForProfiles' => 'Skontaktuj się z administratorem serwera, aby dodać profile',
|
||||
'messages.unableToDetermineLibrarySection' => 'Nie można określić sekcji biblioteki dla tego elementu',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.logsCleared' => 'Logi wyczyszczone',
|
||||
'messages.logsCopied' => 'Logi skopiowane do schowka',
|
||||
'messages.noLogsAvailable' => 'Brak dostępnych logów',
|
||||
@@ -2763,7 +2731,6 @@ extension on TranslationsPl {
|
||||
'profiles.pinExplain' => 'Do przełączania profili wymagany jest 4-cyfrowy PIN.',
|
||||
'profiles.continueButton' => 'Kontynuuj',
|
||||
'profiles.pinsDontMatch' => 'PIN-y nie pasują',
|
||||
'profiles.initializeServicesFailed' => 'Nie udało się zainicjować usług profilu',
|
||||
'connections.sectionTitle' => 'Połączenia',
|
||||
'connections.addConnection' => 'Dodaj połączenie',
|
||||
'connections.addConnectionSubtitleNoProfile' => 'Zaloguj się przez Plex lub połącz serwer Jellyfin',
|
||||
@@ -2774,7 +2741,6 @@ extension on TranslationsPl {
|
||||
'connections.editJellyfinTitle' => 'Edytuj połączenie Jellyfin',
|
||||
'connections.editJellyfinIntro' => ({required Object serverName}) => 'Dodaj lub usuń adresy URL dla ${serverName}. Plezy użyje osiągalnego URL-a o najniższym opóźnieniu.',
|
||||
'discover.title' => 'Odkryj',
|
||||
'discover.switchProfile' => 'Zmień profil',
|
||||
'discover.noContentAvailable' => 'Brak dostępnych treści',
|
||||
'discover.addMediaToLibraries' => 'Dodaj multimedia do swoich bibliotek',
|
||||
'discover.continueWatching' => 'Kontynuuj oglądanie',
|
||||
@@ -2801,8 +2767,6 @@ extension on TranslationsPl {
|
||||
'errors.connectionFailed' => 'Nie można połączyć się z serwerem multimediów',
|
||||
'errors.failedToLoad' => ({required Object context, required Object error}) => 'Nie udało się załadować ${context}: ${error}',
|
||||
'errors.noClientAvailable' => 'Brak dostępnego klienta',
|
||||
'errors.authenticationFailed' => ({required Object error}) => 'Uwierzytelnienie nie powiodło się: ${error}',
|
||||
'errors.couldNotLaunchUrl' => 'Nie można otworzyć URL uwierzytelniania',
|
||||
'errors.pleaseEnterToken' => 'Wprowadź token',
|
||||
'errors.invalidToken' => 'Nieprawidłowy token',
|
||||
'errors.failedToVerifyToken' => ({required Object error}) => 'Nie udało się zweryfikować tokena: ${error}',
|
||||
@@ -2827,6 +2791,8 @@ extension on TranslationsPl {
|
||||
'libraries.allLibrariesHidden' => 'Wszystkie biblioteki są ukryte',
|
||||
'libraries.hiddenLibrariesCount' => ({required Object count}) => 'Ukryte biblioteki (${count})',
|
||||
'libraries.thisLibraryIsEmpty' => 'Ta biblioteka jest pusta',
|
||||
'libraries.noItemsMatchFilters' => 'Żadne elementy nie pasują do aktywnych filtrów',
|
||||
'libraries.resetFilters' => 'Resetuj filtry',
|
||||
'libraries.all' => 'Wszystkie',
|
||||
'libraries.clearAll' => 'Wyczyść wszystko',
|
||||
'libraries.scanLibraryConfirm' => ({required Object title}) => 'Czy na pewno chcesz zeskanować "${title}"?',
|
||||
@@ -2875,7 +2841,6 @@ extension on TranslationsPl {
|
||||
'libraries.sortLabels.communityRating' => 'Ocena społeczności',
|
||||
'libraries.sortLabels.criticRating' => 'Ocena krytyków',
|
||||
'libraries.sortLabels.userRating' => 'Ocena użytkownika',
|
||||
'libraries.sortLabels.lastPlayed' => 'Ostatnio odtwarzane',
|
||||
'libraries.sortLabels.datePlayed' => 'Data odtworzenia',
|
||||
'libraries.sortLabels.playCount' => 'Liczba odtworzeń',
|
||||
'libraries.sortLabels.productionYear' => 'Rok produkcji',
|
||||
@@ -2889,14 +2854,11 @@ extension on TranslationsPl {
|
||||
'libraries.sortLabels.dateShared' => 'Data udostępnienia',
|
||||
'libraries.sortLabels.latestEpisodeAirDate' => 'Data emisji ostatniego odcinka',
|
||||
'libraries.sortLabels.lastEpisodeDateAdded' => 'Data dodania ostatniego odcinka',
|
||||
'libraries.noItemsMatchFilters' => 'Żadne elementy nie pasują do aktywnych filtrów',
|
||||
'libraries.resetFilters' => 'Resetuj filtry',
|
||||
'about.title' => 'O aplikacji',
|
||||
'about.openSourceLicenses' => 'Licencje open source',
|
||||
'about.versionLabel' => ({required Object version}) => 'Wersja ${version}',
|
||||
'about.appDescription' => 'Piękny klient Plex i Jellyfin na Flutter',
|
||||
'about.viewLicensesDescription' => 'Zobacz licencje bibliotek zewnętrznych',
|
||||
'serverSelection.allServerConnectionsFailed' => 'Nie udało się połączyć z żadnym serwerem. Sprawdź sieć.',
|
||||
'serverSelection.noServersFoundForAccount' => ({required Object username, required Object email}) => 'Nie znaleziono serwerów dla ${username} (${email})',
|
||||
'serverSelection.failedToLoadServers' => ({required Object error}) => 'Nie udało się załadować serwerów: ${error}',
|
||||
'hubDetail.title' => 'Tytuł',
|
||||
@@ -2942,7 +2904,6 @@ extension on TranslationsPl {
|
||||
'explore.watchlistUpdateFailed' => 'Nie udało się zaktualizować listy do obejrzenia',
|
||||
'explore.notInLibrary' => 'Nie ma tego w Twojej bibliotece',
|
||||
'explore.inTheseLibraries' => 'W tych bibliotekach',
|
||||
'explore.availableOn' => ({required Object server}) => 'Dostępne na ${server}',
|
||||
'explore.checkingLibrary' => 'Sprawdzanie Twojej biblioteki...',
|
||||
'explore.emptyTitle' => 'Jeszcze nic tu nie ma',
|
||||
'explore.emptyMessage' => ({required Object source}) => 'Wiersze z ${source} pojawią się tutaj, gdy będą zawierać treści.',
|
||||
@@ -2954,6 +2915,8 @@ extension on TranslationsPl {
|
||||
'liveTv.guide' => 'Przewodnik',
|
||||
'liveTv.noChannels' => 'Brak dostępnych kanałów',
|
||||
'liveTv.noDvr' => 'Brak skonfigurowanego DVR na żadnym serwerze',
|
||||
'liveTv.serverUnavailable' => 'Serwer telewizji na żywo jest niedostępny.',
|
||||
'liveTv.serverNotConnected' => 'Serwer telewizji na żywo nie jest połączony.',
|
||||
'liveTv.noPrograms' => 'Brak danych o programach',
|
||||
'liveTv.liveStreamFailed' => 'Transmisja na żywo nie powiodła się',
|
||||
'liveTv.unknownProgram' => 'Nieznany program',
|
||||
@@ -2989,7 +2952,6 @@ extension on TranslationsPl {
|
||||
'liveTv.scheduledRecordings' => 'Zaplanowane',
|
||||
'liveTv.recordingRules' => 'Reguły nagrywania',
|
||||
'liveTv.noScheduledRecordings' => 'Brak zaplanowanych nagrań',
|
||||
'liveTv.noRecordingRules' => 'Brak reguł nagrywania',
|
||||
'liveTv.manageRecording' => 'Zarządzaj nagraniem',
|
||||
'liveTv.cancelRecording' => 'Anuluj nagrywanie',
|
||||
'liveTv.cancelRecordingTitle' => 'Anulować to nagrywanie?',
|
||||
@@ -3006,7 +2968,6 @@ extension on TranslationsPl {
|
||||
'liveTv.recordingCancelled' => 'Nagrywanie anulowane',
|
||||
'liveTv.recordingRuleDeleted' => 'Reguła nagrywania usunięta',
|
||||
'liveTv.processRecordingRules' => 'Ponów ocenę reguł',
|
||||
'liveTv.loadingRecordings' => 'Wczytywanie nagrań...',
|
||||
'liveTv.recordingInProgress' => 'Trwa nagrywanie',
|
||||
'liveTv.recordingsCount' => ({required Object count}) => '${count} zaplanowanych',
|
||||
'liveTv.editRule' => 'Edytuj regułę',
|
||||
@@ -3018,7 +2979,6 @@ extension on TranslationsPl {
|
||||
'collections.title' => 'Kolekcje',
|
||||
'collections.collection' => 'Kolekcja',
|
||||
'collections.empty' => 'Kolekcja jest pusta',
|
||||
'collections.unknownLibrarySection' => 'Nie można usunąć: Nieznana sekcja biblioteki',
|
||||
'collections.deleteCollection' => 'Usuń kolekcję',
|
||||
'collections.deleteConfirm' => ({required Object title}) => 'Usunąć "${title}"? Tego nie można cofnąć.',
|
||||
'collections.deleted' => 'Kolekcja usunięta',
|
||||
@@ -3056,6 +3016,7 @@ extension on TranslationsPl {
|
||||
'playlists.itemAdded' => 'Dodano do playlisty',
|
||||
'playlists.itemRemoved' => 'Usunięto z playlisty',
|
||||
'playlists.selectPlaylist' => 'Wybierz playlistę',
|
||||
'playlists.searchPlaylists' => 'Szukaj playlist...',
|
||||
'playlists.errorCreating' => 'Nie udało się utworzyć playlisty',
|
||||
'playlists.errorDeleting' => 'Nie udało się usunąć playlisty',
|
||||
'playlists.errorLoading' => 'Nie udało się załadować playlist',
|
||||
@@ -3138,22 +3099,20 @@ extension on TranslationsPl {
|
||||
'watchTogether.participantResumed' => ({required Object name}) => '${name} wznowił',
|
||||
'watchTogether.participantSeeked' => ({required Object name}) => '${name} przewinął',
|
||||
'watchTogether.participantBuffering' => ({required Object name}) => '${name} buforuje',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} używa starszej wersji aplikacji — synchronizacja jest niedostępna',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Wznawianie bez ${name}',
|
||||
'watchTogether.waitingForParticipants' => 'Oczekiwanie na załadowanie u innych...',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Oczekiwanie na ${name}...',
|
||||
'watchTogether.recentRooms' => 'Ostatnie pokoje',
|
||||
'watchTogether.renameRoom' => 'Zmień nazwę pokoju',
|
||||
'watchTogether.removeRoom' => 'Usuń',
|
||||
'watchTogether.guestSwitchUnavailable' => 'Nie można przełączyć — serwer niedostępny do synchronizacji',
|
||||
'watchTogether.guestSwitchFailed' => 'Nie można przełączyć — nie znaleziono treści na tym serwerze',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} używa starszej wersji aplikacji — synchronizacja jest niedostępna',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Wznawianie bez ${name}',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Oczekiwanie na ${name}...',
|
||||
'downloads.title' => 'Pobrania',
|
||||
'downloads.manage' => 'Zarządzaj',
|
||||
'downloads.tvShows' => 'Seriale TV',
|
||||
'downloads.movies' => 'Filmy',
|
||||
'downloads.music' => 'Muzyka',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.tracksQueued' => ({required Object count}) => '${count} utworów w kolejce do pobrania',
|
||||
'downloads.noDownloads' => 'Brak pobrań',
|
||||
'downloads.noDownloadsDescription' => 'Pobrane treści pojawią się tutaj do oglądania offline',
|
||||
@@ -3168,6 +3127,8 @@ extension on TranslationsPl {
|
||||
'downloads.deleteConfirm' => ({required Object title}) => 'Usunąć "${title}" z tego urządzenia?',
|
||||
'downloads.cancelledDownloadTitle' => 'Anulowane pobieranie',
|
||||
'downloads.cancelledDownloadMessage' => 'To pobieranie zostało anulowane. Co chcesz zrobić?',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.allEpisodesAlreadyDownloaded' => 'Wszystkie odcinki są już pobrane',
|
||||
'downloads.resumeDownload' => 'Wznów pobieranie',
|
||||
'downloads.cancelledDownload' => 'Anulowane pobieranie',
|
||||
@@ -3191,7 +3152,6 @@ extension on TranslationsPl {
|
||||
'downloads.customAmount' => 'Własna ilość...',
|
||||
'downloads.includeSpecials' => 'Uwzględnij odcinki specjalne',
|
||||
'downloads.howManyEpisodes' => 'Ile odcinków?',
|
||||
'downloads.itemsQueued' => ({required Object count}) => '${count} elementów dodanych do kolejki pobierania',
|
||||
'downloads.keepSynced' => 'Synchronizuj na bieżąco',
|
||||
'downloads.downloadOnce' => 'Pobierz raz',
|
||||
'downloads.keepNUnwatched' => ({required Object count}) => 'Zachowaj ${count} nieobejrzanych',
|
||||
@@ -3235,7 +3195,6 @@ extension on TranslationsPl {
|
||||
'companionRemote.connectedTo' => ({required Object name}) => 'Połączono z ${name}',
|
||||
'companionRemote.unknownDevice' => 'Nieznane urządzenie',
|
||||
'companionRemote.session.startingServer' => 'Uruchamianie serwera zdalnego...',
|
||||
'companionRemote.session.failedToCreate' => 'Nie udało się uruchomić serwera zdalnego:',
|
||||
'companionRemote.session.hostAddress' => 'Adres hosta',
|
||||
'companionRemote.session.connected' => 'Połączono',
|
||||
'companionRemote.session.serverRunning' => 'Serwer zdalny aktywny',
|
||||
@@ -3290,6 +3249,8 @@ extension on TranslationsPl {
|
||||
'companionRemote.remote.searchHint' => 'Szukaj na komputerze...',
|
||||
'companionRemote.errors.noNetworkInterface' => 'Nie znaleziono interfejsu sieciowego',
|
||||
'companionRemote.errors.authenticationFailed' => 'Uwierzytelnianie nie powiodło się',
|
||||
'companionRemote.errors.serverStartFailed' => ({required Object error}) => 'Nie udało się uruchomić serwera zdalnego: ${error}',
|
||||
'companionRemote.errors.commandFailed' => ({required Object error}) => 'Nie udało się wysłać polecenia zdalnego: ${error}',
|
||||
'companionRemote.errors.joinTimedOut' => 'Upłynął limit czasu dołączania do sesji',
|
||||
'companionRemote.errors.failedToConnectAnyAddress' => 'Nie udało się połączyć z żadnym adresem',
|
||||
'companionRemote.errors.connectionLostAfterAttempts' => ({required Object attempts}) => 'Połączenie utracone po ${attempts} próbach',
|
||||
@@ -3534,7 +3495,6 @@ extension on TranslationsPl {
|
||||
'addServer.quickConnectFailed' => ({required Object error}) => 'Quick Connect nie powiodło się: ${error}',
|
||||
'addServer.addPlexTitle' => 'Zaloguj się przez Plex',
|
||||
'addServer.pinExpired' => 'PIN wygasł przed zalogowaniem. Spróbuj ponownie.',
|
||||
'addServer.duplicatePlexAccount' => 'Już zalogowano do Plex. Wyloguj się, aby zmienić konto.',
|
||||
'addServer.failedToRegisterAccount' => ({required Object error}) => 'Nie udało się zarejestrować konta: ${error}',
|
||||
'addServer.enterJellyfinUrlError' => 'Podaj URL serwera Jellyfin',
|
||||
'addServer.addConnectionTitle' => 'Dodaj połączenie',
|
||||
|
||||
+60
-100
@@ -53,7 +53,6 @@ class TranslationsPt extends Translations with BaseTranslations<AppLocale, Trans
|
||||
@override late final _TranslationsAccessibilityPt accessibility = _TranslationsAccessibilityPt._(_root);
|
||||
@override late final _TranslationsTooltipsPt tooltips = _TranslationsTooltipsPt._(_root);
|
||||
@override late final _TranslationsVideoControlsPt videoControls = _TranslationsVideoControlsPt._(_root);
|
||||
@override late final _TranslationsUserStatusPt userStatus = _TranslationsUserStatusPt._(_root);
|
||||
@override late final _TranslationsMessagesPt messages = _TranslationsMessagesPt._(_root);
|
||||
@override late final _TranslationsSubtitlingStylingPt subtitlingStyling = _TranslationsSubtitlingStylingPt._(_root);
|
||||
@override late final _TranslationsMpvConfigPt mpvConfig = _TranslationsMpvConfigPt._(_root);
|
||||
@@ -107,7 +106,6 @@ class _TranslationsAuthPt extends TranslationsAuthEn {
|
||||
final TranslationsPt _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get signIn => 'Entrar';
|
||||
@override String get signInWithPlex => 'Entrar com Plex';
|
||||
@override String get showQRCode => 'Mostrar QR Code';
|
||||
@override String get authenticate => 'Autenticar';
|
||||
@@ -167,10 +165,8 @@ class _TranslationsCommonPt extends TranslationsCommonEn {
|
||||
@override String episodeNumberTitle({required Object number, required Object title}) => 'Episódio ${number} - ${title}';
|
||||
@override String chapterNumber({required Object number}) => 'Capítulo ${number}';
|
||||
@override String get reconnect => 'Reconectar';
|
||||
@override String get exit => 'Sair';
|
||||
@override String get viewAll => 'Ver Tudo';
|
||||
@override String get checkingNetwork => 'Verificando rede...';
|
||||
@override String get refreshingServers => 'Atualizando servidores...';
|
||||
@override String get loadingServers => 'Carregando servidores...';
|
||||
@override String get connectingToServers => 'Conectando aos servidores...';
|
||||
@override String get startingOfflineMode => 'Iniciando modo offline...';
|
||||
@@ -271,6 +267,12 @@ class _TranslationsSettingsPt extends TranslationsSettingsEn {
|
||||
@override String get tvFullCardLayoutDescription => 'Usar cartões de TV só com imagem e nomes dos atores sobrepostos';
|
||||
@override String get focusGlow => 'Brilho de foco';
|
||||
@override String get focusGlowDescription => 'Mostrar um brilho suave à volta do cartão em foco';
|
||||
@override String get visualEffects => 'Efeitos visuais';
|
||||
@override String get visualEffectsAuto => 'Automático';
|
||||
@override String get visualEffectsAutoDescription => 'Reduza automaticamente os efeitos em dispositivos de baixo consumo';
|
||||
@override String get visualEffectsFull => 'Completos';
|
||||
@override String get visualEffectsReduced => 'Reduzidos';
|
||||
@override String get visualEffectsReducedDescription => 'Menos animações e artes em menor resolução';
|
||||
@override String get hideSpoilers => 'Ocultar Spoilers de Episódios Não Assistidos';
|
||||
@override String get hideSpoilersDescription => 'Desfocar miniaturas e descrições de episódios não vistos';
|
||||
@override String get playerBackend => 'Backend do Player';
|
||||
@@ -283,7 +285,7 @@ class _TranslationsSettingsPt extends TranslationsSettingsEn {
|
||||
@override String get bufferSizeAuto => 'Automático (Recomendado)';
|
||||
@override String bufferSizeWarning({required Object heap, required Object size}) => '${heap}MB de memória disponível. Um buffer de ${size}MB pode afetar a reprodução.';
|
||||
@override String get defaultQualityTitle => 'Qualidade padrão';
|
||||
@override String get defaultQualityDescription => 'Usado ao iniciar a reprodução. Valores menores reduzem a largura de banda.';
|
||||
@override String get musicQualityTitle => 'Qualidade da música';
|
||||
@override String get subtitleStyling => 'Estilo de Legendas';
|
||||
@override String get subtitleStylingDescription => 'Personalizar aparência das legendas';
|
||||
@override String get smallSkipDuration => 'Duração do Avanço Curto';
|
||||
@@ -377,10 +379,9 @@ class _TranslationsSettingsPt extends TranslationsSettingsEn {
|
||||
@override String maxVolumePercent({required Object percent}) => '${percent}%';
|
||||
@override String get discordRichPresence => 'Discord Rich Presence';
|
||||
@override String get discordRichPresenceDescription => 'Mostrar o que você está assistindo no Discord';
|
||||
@override String get trakt => 'Trakt';
|
||||
@override String get traktDescription => 'Sincronizar histórico de exibição com Trakt';
|
||||
@override String get services => 'Serviços';
|
||||
@override String get servicesDescription => 'Conecte Trakt, MyAnimeList, Seerr e mais';
|
||||
@override String get manageLibrariesDescription => 'Reordene e oculte bibliotecas';
|
||||
@override String get companionRemoteServer => 'Servidor de controlo remoto';
|
||||
@override String get companionRemoteServerDescription => 'Permitir que dispositivos móveis na sua rede controlem esta aplicação';
|
||||
@override String get autoPip => 'Picture-in-Picture Automático';
|
||||
@@ -443,7 +444,6 @@ class _TranslationsSettingsPt extends TranslationsSettingsEn {
|
||||
@override String get showNavBarLabels => 'Mostrar Rótulos da Barra de Navegação';
|
||||
@override String get showNavBarLabelsDescription => 'Exibir rótulos de texto sob os ícones da barra de navegação';
|
||||
@override String get startupSection => 'Seção inicial';
|
||||
@override String get startupSectionDescription => 'Escolha qual seção o Plezy abre ao iniciar';
|
||||
@override String get liveTvDefaultFavorites => 'Canais favoritos por padrão';
|
||||
@override String get liveTvDefaultFavoritesDescription => 'Mostrar apenas canais favoritos ao abrir TV ao vivo';
|
||||
@override String get display => 'Tela';
|
||||
@@ -455,13 +455,6 @@ class _TranslationsSettingsPt extends TranslationsSettingsEn {
|
||||
@override String get subtitlesAndConfig => 'Legendas e configuração';
|
||||
@override String get seekAndTiming => 'Busca e tempo';
|
||||
@override String get behavior => 'Comportamento';
|
||||
@override String get manageLibrariesDescription => 'Reordene e oculte bibliotecas';
|
||||
@override String get visualEffects => 'Efeitos visuais';
|
||||
@override String get visualEffectsAuto => 'Automático';
|
||||
@override String get visualEffectsAutoDescription => 'Reduza automaticamente os efeitos em dispositivos de baixo consumo';
|
||||
@override String get visualEffectsFull => 'Completos';
|
||||
@override String get visualEffectsReduced => 'Reduzidos';
|
||||
@override String get visualEffectsReducedDescription => 'Menos animações e artes em menor resolução';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -559,14 +552,11 @@ class _TranslationsRateSheetPt extends TranslationsRateSheetEn {
|
||||
// Translations
|
||||
@override String get title => 'Avaliar';
|
||||
@override String get server => 'Servidor';
|
||||
@override String starValue({required Object rating}) => '${rating} / 5';
|
||||
@override String scoreValue({required Object score}) => '${score} / 10';
|
||||
@override String get setScore => 'Definir pontuação';
|
||||
@override String get favorite => 'Favorito';
|
||||
@override String get favorited => 'Adicionado aos favoritos';
|
||||
@override String get saved => 'Salvo';
|
||||
@override String get notAvailable => 'Nenhuma correspondência encontrada';
|
||||
@override String get noConnectedServices => 'Conecte um serviço nas Configurações para avaliar por lá.';
|
||||
@override String get favorite => 'Favorito';
|
||||
@override String get favorited => 'Adicionado aos favoritos';
|
||||
}
|
||||
|
||||
// Path: accessibility
|
||||
@@ -584,6 +574,14 @@ class _TranslationsAccessibilityPt extends TranslationsAccessibilityEn {
|
||||
@override String mediaCardPartiallyWatched({required Object percent}) => '${percent} por cento assistido';
|
||||
@override String get mediaCardUnwatched => 'não assistido';
|
||||
@override String get tapToPlay => 'Toque para reproduzir';
|
||||
@override String get decrease => 'Diminuir';
|
||||
@override String get increase => 'Aumentar';
|
||||
@override String decreaseValue({required Object label}) => 'Diminuir ${label}';
|
||||
@override String increaseValue({required Object label}) => 'Aumentar ${label}';
|
||||
@override String get hue => 'Matiz';
|
||||
@override String get saturation => 'Saturação';
|
||||
@override String get brightness => 'Brilho';
|
||||
@override String get hexColor => 'Cor hexadecimal';
|
||||
}
|
||||
|
||||
// Path: tooltips
|
||||
@@ -643,13 +641,11 @@ class _TranslationsVideoControlsPt extends TranslationsVideoControlsEn {
|
||||
@override String get settingsButton => 'Configurações de Reprodução';
|
||||
@override String get tracksButton => 'Áudio e Legendas';
|
||||
@override String get chaptersButton => 'Capítulos';
|
||||
@override String get versionsButton => 'Versões do vídeo';
|
||||
@override String get versionQualityButton => 'Versão e qualidade';
|
||||
@override String get versionColumnHeader => 'Versão';
|
||||
@override String get qualityColumnHeader => 'Qualidade';
|
||||
@override String get qualityOriginal => 'Original';
|
||||
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
|
||||
@override String qualityBandwidthEstimate({required Object bitrate}) => '~${bitrate} Mbps';
|
||||
@override String get transcodeUnavailableFallback => 'Transcodificação indisponível — reproduzindo qualidade original';
|
||||
@override String get pipButton => 'Modo Picture-in-Picture';
|
||||
@override String get aspectRatioButton => 'Proporção';
|
||||
@@ -685,19 +681,6 @@ class _TranslationsVideoControlsPt extends TranslationsVideoControlsEn {
|
||||
@override String get searchLanguages => 'Pesquisar idiomas...';
|
||||
}
|
||||
|
||||
// Path: userStatus
|
||||
class _TranslationsUserStatusPt extends TranslationsUserStatusEn {
|
||||
_TranslationsUserStatusPt._(TranslationsPt root) : this._root = root, super.internal(root);
|
||||
|
||||
final TranslationsPt _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get admin => 'Admin';
|
||||
@override String get restricted => 'Restrito';
|
||||
@override String get protected => 'Protegido';
|
||||
@override String get current => 'ATUAL';
|
||||
}
|
||||
|
||||
// Path: messages
|
||||
class _TranslationsMessagesPt extends TranslationsMessagesEn {
|
||||
_TranslationsMessagesPt._(TranslationsPt root) : this._root = root, super.internal(root);
|
||||
@@ -873,7 +856,6 @@ class _TranslationsProfilesPt extends TranslationsProfilesEn {
|
||||
@override String get pinExplain => 'PIN de 4 dígitos necessário para trocar perfis.';
|
||||
@override String get continueButton => 'Continuar';
|
||||
@override String get pinsDontMatch => 'Os PINs não correspondem';
|
||||
@override String get initializeServicesFailed => 'Falha ao inicializar serviços de perfil';
|
||||
}
|
||||
|
||||
// Path: connections
|
||||
@@ -902,7 +884,6 @@ class _TranslationsDiscoverPt extends TranslationsDiscoverEn {
|
||||
|
||||
// Translations
|
||||
@override String get title => 'Descobrir';
|
||||
@override String get switchProfile => 'Trocar Perfil';
|
||||
@override String get noContentAvailable => 'Nenhum conteúdo disponível';
|
||||
@override String get addMediaToLibraries => 'Adicione mídias às suas bibliotecas';
|
||||
@override String get continueWatching => 'Continuar Assistindo';
|
||||
@@ -938,8 +919,6 @@ class _TranslationsErrorsPt extends TranslationsErrorsEn {
|
||||
@override String get connectionFailed => 'Não foi possível conectar ao servidor de mídia';
|
||||
@override String failedToLoad({required Object context, required Object error}) => 'Falha ao carregar ${context}: ${error}';
|
||||
@override String get noClientAvailable => 'Nenhum cliente disponível';
|
||||
@override String authenticationFailed({required Object error}) => 'Falha na autenticação: ${error}';
|
||||
@override String get couldNotLaunchUrl => 'Não foi possível abrir a URL de autenticação';
|
||||
@override String get pleaseEnterToken => 'Insira um token';
|
||||
@override String get invalidToken => 'Token inválido';
|
||||
@override String failedToVerifyToken({required Object error}) => 'Falha ao verificar token: ${error}';
|
||||
@@ -973,6 +952,8 @@ class _TranslationsLibrariesPt extends TranslationsLibrariesEn {
|
||||
@override String get allLibrariesHidden => 'Todas as bibliotecas estão ocultas';
|
||||
@override String hiddenLibrariesCount({required Object count}) => 'Bibliotecas ocultas (${count})';
|
||||
@override String get thisLibraryIsEmpty => 'Esta biblioteca está vazia';
|
||||
@override String get noItemsMatchFilters => 'Nenhum item corresponde aos filtros ativos';
|
||||
@override String get resetFilters => 'Redefinir filtros';
|
||||
@override String get all => 'Todos';
|
||||
@override String get clearAll => 'Limpar Tudo';
|
||||
@override String scanLibraryConfirm({required Object title}) => 'Tem certeza que deseja escanear "${title}"?';
|
||||
@@ -998,8 +979,6 @@ class _TranslationsLibrariesPt extends TranslationsLibrariesEn {
|
||||
@override late final _TranslationsLibrariesGroupingsPt groupings = _TranslationsLibrariesGroupingsPt._(_root);
|
||||
@override late final _TranslationsLibrariesFilterCategoriesPt filterCategories = _TranslationsLibrariesFilterCategoriesPt._(_root);
|
||||
@override late final _TranslationsLibrariesSortLabelsPt sortLabels = _TranslationsLibrariesSortLabelsPt._(_root);
|
||||
@override String get noItemsMatchFilters => 'Nenhum item corresponde aos filtros ativos';
|
||||
@override String get resetFilters => 'Redefinir filtros';
|
||||
}
|
||||
|
||||
// Path: about
|
||||
@@ -1023,7 +1002,6 @@ class _TranslationsServerSelectionPt extends TranslationsServerSelectionEn {
|
||||
final TranslationsPt _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get allServerConnectionsFailed => 'Não foi possível conectar a nenhum servidor. Verifique sua rede.';
|
||||
@override String noServersFoundForAccount({required Object username, required Object email}) => 'Nenhum servidor encontrado para ${username} (${email})';
|
||||
@override String failedToLoadServers({required Object error}) => 'Falha ao carregar servidores: ${error}';
|
||||
}
|
||||
@@ -1102,7 +1080,6 @@ class _TranslationsExplorePt extends TranslationsExploreEn {
|
||||
@override String get watchlistUpdateFailed => 'Não foi possível atualizar a lista para ver';
|
||||
@override String get notInLibrary => 'Não está na sua biblioteca';
|
||||
@override String get inTheseLibraries => 'Nestas bibliotecas';
|
||||
@override String availableOn({required Object server}) => 'Disponível em ${server}';
|
||||
@override String get checkingLibrary => 'Verificando a sua biblioteca...';
|
||||
@override String get emptyTitle => 'Ainda não há nada aqui';
|
||||
@override String emptyMessage({required Object source}) => 'As linhas de ${source} aparecerão aqui quando tiverem conteúdo.';
|
||||
@@ -1123,6 +1100,8 @@ class _TranslationsLiveTvPt extends TranslationsLiveTvEn {
|
||||
@override String get guide => 'Guia';
|
||||
@override String get noChannels => 'Nenhum canal disponível';
|
||||
@override String get noDvr => 'Nenhum DVR configurado em nenhum servidor';
|
||||
@override String get serverUnavailable => 'O servidor de TV em direto não está disponível.';
|
||||
@override String get serverNotConnected => 'O servidor de TV em direto não está ligado.';
|
||||
@override String get noPrograms => 'Nenhum dado de programação disponível';
|
||||
@override String get liveStreamFailed => 'Falha no stream ao vivo';
|
||||
@override String get unknownProgram => 'Programa desconhecido';
|
||||
@@ -1158,7 +1137,6 @@ class _TranslationsLiveTvPt extends TranslationsLiveTvEn {
|
||||
@override String get scheduledRecordings => 'Agendadas';
|
||||
@override String get recordingRules => 'Regras de gravação';
|
||||
@override String get noScheduledRecordings => 'Sem gravações agendadas';
|
||||
@override String get noRecordingRules => 'Sem regras de gravação';
|
||||
@override String get manageRecording => 'Gerenciar gravação';
|
||||
@override String get cancelRecording => 'Cancelar gravação';
|
||||
@override String get cancelRecordingTitle => 'Cancelar esta gravação?';
|
||||
@@ -1175,7 +1153,6 @@ class _TranslationsLiveTvPt extends TranslationsLiveTvEn {
|
||||
@override String get recordingCancelled => 'Gravação cancelada';
|
||||
@override String get recordingRuleDeleted => 'Regra de gravação excluída';
|
||||
@override String get processRecordingRules => 'Reavaliar regras';
|
||||
@override String get loadingRecordings => 'Carregando gravações...';
|
||||
@override String get recordingInProgress => 'Gravando agora';
|
||||
@override String recordingsCount({required Object count}) => '${count} agendadas';
|
||||
@override String get editRule => 'Editar regra';
|
||||
@@ -1196,7 +1173,6 @@ class _TranslationsCollectionsPt extends TranslationsCollectionsEn {
|
||||
@override String get title => 'Coleções';
|
||||
@override String get collection => 'Coleção';
|
||||
@override String get empty => 'A coleção está vazia';
|
||||
@override String get unknownLibrarySection => 'Não é possível excluir: Seção de biblioteca desconhecida';
|
||||
@override String get deleteCollection => 'Excluir Coleção';
|
||||
@override String deleteConfirm({required Object title}) => 'Excluir "${title}"? Não pode ser desfeito.';
|
||||
@override String get deleted => 'Coleção excluída';
|
||||
@@ -1243,6 +1219,7 @@ class _TranslationsPlaylistsPt extends TranslationsPlaylistsEn {
|
||||
@override String get itemAdded => 'Adicionado à playlist';
|
||||
@override String get itemRemoved => 'Removido da playlist';
|
||||
@override String get selectPlaylist => 'Selecionar Playlist';
|
||||
@override String get searchPlaylists => 'Pesquisar playlists...';
|
||||
@override String get errorCreating => 'Falha ao criar playlist';
|
||||
@override String get errorDeleting => 'Falha ao excluir playlist';
|
||||
@override String get errorLoading => 'Falha ao carregar playlists';
|
||||
@@ -1346,15 +1323,15 @@ class _TranslationsWatchTogetherPt extends TranslationsWatchTogetherEn {
|
||||
@override String participantResumed({required Object name}) => '${name} retomou';
|
||||
@override String participantSeeked({required Object name}) => '${name} avançou';
|
||||
@override String participantBuffering({required Object name}) => '${name} está carregando';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} está em uma versão mais antiga do aplicativo — sincronização indisponível';
|
||||
@override String resumingWithout({required Object name}) => 'Retomando sem ${name}';
|
||||
@override String get waitingForParticipants => 'Aguardando outros carregarem...';
|
||||
@override String waitingForName({required Object name}) => 'Aguardando ${name}...';
|
||||
@override String get recentRooms => 'Salas recentes';
|
||||
@override String get renameRoom => 'Renomear sala';
|
||||
@override String get removeRoom => 'Remover';
|
||||
@override String get guestSwitchUnavailable => 'Não foi possível trocar — servidor indisponível para sincronização';
|
||||
@override String get guestSwitchFailed => 'Não foi possível trocar — conteúdo não encontrado neste servidor';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} está em uma versão mais antiga do aplicativo — sincronização indisponível';
|
||||
@override String resumingWithout({required Object name}) => 'Retomando sem ${name}';
|
||||
@override String waitingForName({required Object name}) => 'Aguardando ${name}...';
|
||||
}
|
||||
|
||||
// Path: downloads
|
||||
@@ -1406,7 +1383,6 @@ class _TranslationsDownloadsPt extends TranslationsDownloadsEn {
|
||||
@override String get customAmount => 'Quantidade personalizada...';
|
||||
@override String get includeSpecials => 'Incluir especiais';
|
||||
@override String get howManyEpisodes => 'Quantos episódios?';
|
||||
@override String itemsQueued({required Object count}) => '${count} itens na fila de download';
|
||||
@override String get keepSynced => 'Manter sincronizado';
|
||||
@override String get downloadOnce => 'Baixar uma vez';
|
||||
@override String keepNUnwatched({required Object count}) => 'Manter ${count} não assistidos';
|
||||
@@ -1780,7 +1756,6 @@ class _TranslationsAddServerPt extends TranslationsAddServerEn {
|
||||
@override String quickConnectFailed({required Object error}) => 'Quick Connect falhou: ${error}';
|
||||
@override String get addPlexTitle => 'Entrar com Plex';
|
||||
@override String get pinExpired => 'O PIN expirou antes do login. Tente novamente.';
|
||||
@override String get duplicatePlexAccount => 'Você já entrou no Plex. Saia para trocar de conta.';
|
||||
@override String failedToRegisterAccount({required Object error}) => 'Falha ao registrar a conta: ${error}';
|
||||
@override String get enterJellyfinUrlError => 'Insira a URL do seu servidor Jellyfin';
|
||||
@override String get addConnectionTitle => 'Adicionar conexão';
|
||||
@@ -1906,7 +1881,6 @@ class _TranslationsLibrariesSortLabelsPt extends TranslationsLibrariesSortLabels
|
||||
@override String get communityRating => 'Avaliação da comunidade';
|
||||
@override String get criticRating => 'Avaliação da crítica';
|
||||
@override String get userRating => 'Avaliação do usuário';
|
||||
@override String get lastPlayed => 'Última reprodução';
|
||||
@override String get datePlayed => 'Data de reprodução';
|
||||
@override String get playCount => 'Reproduções';
|
||||
@override String get productionYear => 'Ano de produção';
|
||||
@@ -1965,7 +1939,6 @@ class _TranslationsCompanionRemoteSessionPt extends TranslationsCompanionRemoteS
|
||||
|
||||
// Translations
|
||||
@override String get startingServer => 'A iniciar servidor remoto...';
|
||||
@override String get failedToCreate => 'Falha ao iniciar o servidor remoto:';
|
||||
@override String get hostAddress => 'Endereço do host';
|
||||
@override String get connected => 'Conectado';
|
||||
@override String get serverRunning => 'Servidor remoto ativo';
|
||||
@@ -2047,6 +2020,8 @@ class _TranslationsCompanionRemoteErrorsPt extends TranslationsCompanionRemoteEr
|
||||
// Translations
|
||||
@override String get noNetworkInterface => 'Nenhuma interface de rede encontrada';
|
||||
@override String get authenticationFailed => 'Falha na autenticação';
|
||||
@override String serverStartFailed({required Object error}) => 'Falha ao iniciar o servidor remoto: ${error}';
|
||||
@override String commandFailed({required Object error}) => 'Falha ao enviar o comando remoto: ${error}';
|
||||
@override String get joinTimedOut => 'Tempo esgotado ao entrar na sessão';
|
||||
@override String get failedToConnectAnyAddress => 'Falha ao conectar a qualquer endereço';
|
||||
@override String connectionLostAfterAttempts({required Object attempts}) => 'Conexão perdida após ${attempts} tentativas';
|
||||
@@ -2123,7 +2098,6 @@ extension on TranslationsPt {
|
||||
dynamic _flatMapFunction(String path) {
|
||||
return switch (path) {
|
||||
'app.title' => 'Plezy',
|
||||
'auth.signIn' => 'Entrar',
|
||||
'auth.signInWithPlex' => 'Entrar com Plex',
|
||||
'auth.showQRCode' => 'Mostrar QR Code',
|
||||
'auth.authenticate' => 'Autenticar',
|
||||
@@ -2174,10 +2148,8 @@ extension on TranslationsPt {
|
||||
'common.episodeNumberTitle' => ({required Object number, required Object title}) => 'Episódio ${number} - ${title}',
|
||||
'common.chapterNumber' => ({required Object number}) => 'Capítulo ${number}',
|
||||
'common.reconnect' => 'Reconectar',
|
||||
'common.exit' => 'Sair',
|
||||
'common.viewAll' => 'Ver Tudo',
|
||||
'common.checkingNetwork' => 'Verificando rede...',
|
||||
'common.refreshingServers' => 'Atualizando servidores...',
|
||||
'common.loadingServers' => 'Carregando servidores...',
|
||||
'common.connectingToServers' => 'Conectando aos servidores...',
|
||||
'common.startingOfflineMode' => 'Iniciando modo offline...',
|
||||
@@ -2251,6 +2223,12 @@ extension on TranslationsPt {
|
||||
'settings.tvFullCardLayoutDescription' => 'Usar cartões de TV só com imagem e nomes dos atores sobrepostos',
|
||||
'settings.focusGlow' => 'Brilho de foco',
|
||||
'settings.focusGlowDescription' => 'Mostrar um brilho suave à volta do cartão em foco',
|
||||
'settings.visualEffects' => 'Efeitos visuais',
|
||||
'settings.visualEffectsAuto' => 'Automático',
|
||||
'settings.visualEffectsAutoDescription' => 'Reduza automaticamente os efeitos em dispositivos de baixo consumo',
|
||||
'settings.visualEffectsFull' => 'Completos',
|
||||
'settings.visualEffectsReduced' => 'Reduzidos',
|
||||
'settings.visualEffectsReducedDescription' => 'Menos animações e artes em menor resolução',
|
||||
'settings.hideSpoilers' => 'Ocultar Spoilers de Episódios Não Assistidos',
|
||||
'settings.hideSpoilersDescription' => 'Desfocar miniaturas e descrições de episódios não vistos',
|
||||
'settings.playerBackend' => 'Backend do Player',
|
||||
@@ -2263,7 +2241,7 @@ extension on TranslationsPt {
|
||||
'settings.bufferSizeAuto' => 'Automático (Recomendado)',
|
||||
'settings.bufferSizeWarning' => ({required Object heap, required Object size}) => '${heap}MB de memória disponível. Um buffer de ${size}MB pode afetar a reprodução.',
|
||||
'settings.defaultQualityTitle' => 'Qualidade padrão',
|
||||
'settings.defaultQualityDescription' => 'Usado ao iniciar a reprodução. Valores menores reduzem a largura de banda.',
|
||||
'settings.musicQualityTitle' => 'Qualidade da música',
|
||||
'settings.subtitleStyling' => 'Estilo de Legendas',
|
||||
'settings.subtitleStylingDescription' => 'Personalizar aparência das legendas',
|
||||
'settings.smallSkipDuration' => 'Duração do Avanço Curto',
|
||||
@@ -2357,10 +2335,9 @@ extension on TranslationsPt {
|
||||
'settings.maxVolumePercent' => ({required Object percent}) => '${percent}%',
|
||||
'settings.discordRichPresence' => 'Discord Rich Presence',
|
||||
'settings.discordRichPresenceDescription' => 'Mostrar o que você está assistindo no Discord',
|
||||
'settings.trakt' => 'Trakt',
|
||||
'settings.traktDescription' => 'Sincronizar histórico de exibição com Trakt',
|
||||
'settings.services' => 'Serviços',
|
||||
'settings.servicesDescription' => 'Conecte Trakt, MyAnimeList, Seerr e mais',
|
||||
'settings.manageLibrariesDescription' => 'Reordene e oculte bibliotecas',
|
||||
'settings.companionRemoteServer' => 'Servidor de controlo remoto',
|
||||
'settings.companionRemoteServerDescription' => 'Permitir que dispositivos móveis na sua rede controlem esta aplicação',
|
||||
'settings.autoPip' => 'Picture-in-Picture Automático',
|
||||
@@ -2423,7 +2400,6 @@ extension on TranslationsPt {
|
||||
'settings.showNavBarLabels' => 'Mostrar Rótulos da Barra de Navegação',
|
||||
'settings.showNavBarLabelsDescription' => 'Exibir rótulos de texto sob os ícones da barra de navegação',
|
||||
'settings.startupSection' => 'Seção inicial',
|
||||
'settings.startupSectionDescription' => 'Escolha qual seção o Plezy abre ao iniciar',
|
||||
'settings.liveTvDefaultFavorites' => 'Canais favoritos por padrão',
|
||||
'settings.liveTvDefaultFavoritesDescription' => 'Mostrar apenas canais favoritos ao abrir TV ao vivo',
|
||||
'settings.display' => 'Tela',
|
||||
@@ -2435,13 +2411,6 @@ extension on TranslationsPt {
|
||||
'settings.subtitlesAndConfig' => 'Legendas e configuração',
|
||||
'settings.seekAndTiming' => 'Busca e tempo',
|
||||
'settings.behavior' => 'Comportamento',
|
||||
'settings.manageLibrariesDescription' => 'Reordene e oculte bibliotecas',
|
||||
'settings.visualEffects' => 'Efeitos visuais',
|
||||
'settings.visualEffectsAuto' => 'Automático',
|
||||
'settings.visualEffectsAutoDescription' => 'Reduza automaticamente os efeitos em dispositivos de baixo consumo',
|
||||
'settings.visualEffectsFull' => 'Completos',
|
||||
'settings.visualEffectsReduced' => 'Reduzidos',
|
||||
'settings.visualEffectsReducedDescription' => 'Menos animações e artes em menor resolução',
|
||||
'search.hint' => 'Buscar filmes, séries, músicas...',
|
||||
'search.tryDifferentTerm' => 'Tente um termo de busca diferente',
|
||||
'search.searchYourMedia' => 'Buscar suas mídias',
|
||||
@@ -2518,14 +2487,11 @@ extension on TranslationsPt {
|
||||
'mediaMenu.playVersion' => 'Reproduzir versão...',
|
||||
'rateSheet.title' => 'Avaliar',
|
||||
'rateSheet.server' => 'Servidor',
|
||||
'rateSheet.starValue' => ({required Object rating}) => '${rating} / 5',
|
||||
'rateSheet.scoreValue' => ({required Object score}) => '${score} / 10',
|
||||
'rateSheet.setScore' => 'Definir pontuação',
|
||||
'rateSheet.favorite' => 'Favorito',
|
||||
'rateSheet.favorited' => 'Adicionado aos favoritos',
|
||||
'rateSheet.saved' => 'Salvo',
|
||||
'rateSheet.notAvailable' => 'Nenhuma correspondência encontrada',
|
||||
'rateSheet.noConnectedServices' => 'Conecte um serviço nas Configurações para avaliar por lá.',
|
||||
'rateSheet.favorite' => 'Favorito',
|
||||
'rateSheet.favorited' => 'Adicionado aos favoritos',
|
||||
'accessibility.mediaCardMovie' => ({required Object title}) => '${title}, filme',
|
||||
'accessibility.mediaCardShow' => ({required Object title}) => '${title}, série de TV',
|
||||
'accessibility.mediaCardEpisode' => ({required Object title, required Object episodeInfo}) => '${title}, ${episodeInfo}',
|
||||
@@ -2534,6 +2500,14 @@ extension on TranslationsPt {
|
||||
'accessibility.mediaCardPartiallyWatched' => ({required Object percent}) => '${percent} por cento assistido',
|
||||
'accessibility.mediaCardUnwatched' => 'não assistido',
|
||||
'accessibility.tapToPlay' => 'Toque para reproduzir',
|
||||
'accessibility.decrease' => 'Diminuir',
|
||||
'accessibility.increase' => 'Aumentar',
|
||||
'accessibility.decreaseValue' => ({required Object label}) => 'Diminuir ${label}',
|
||||
'accessibility.increaseValue' => ({required Object label}) => 'Aumentar ${label}',
|
||||
'accessibility.hue' => 'Matiz',
|
||||
'accessibility.saturation' => 'Saturação',
|
||||
'accessibility.brightness' => 'Brilho',
|
||||
'accessibility.hexColor' => 'Cor hexadecimal',
|
||||
'tooltips.shufflePlay' => 'Reprodução aleatória',
|
||||
'tooltips.playTrailer' => 'Reproduzir trailer',
|
||||
'tooltips.markAsWatched' => 'Marcar como assistido',
|
||||
@@ -2575,13 +2549,11 @@ extension on TranslationsPt {
|
||||
'videoControls.settingsButton' => 'Configurações de Reprodução',
|
||||
'videoControls.tracksButton' => 'Áudio e Legendas',
|
||||
'videoControls.chaptersButton' => 'Capítulos',
|
||||
'videoControls.versionsButton' => 'Versões do vídeo',
|
||||
'videoControls.versionQualityButton' => 'Versão e qualidade',
|
||||
'videoControls.versionColumnHeader' => 'Versão',
|
||||
'videoControls.qualityColumnHeader' => 'Qualidade',
|
||||
'videoControls.qualityOriginal' => 'Original',
|
||||
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
|
||||
'videoControls.qualityBandwidthEstimate' => ({required Object bitrate}) => '~${bitrate} Mbps',
|
||||
'videoControls.transcodeUnavailableFallback' => 'Transcodificação indisponível — reproduzindo qualidade original',
|
||||
'videoControls.pipButton' => 'Modo Picture-in-Picture',
|
||||
'videoControls.aspectRatioButton' => 'Proporção',
|
||||
@@ -2621,10 +2593,6 @@ extension on TranslationsPt {
|
||||
'videoControls.subtitleDownloaded' => 'Legenda baixada',
|
||||
'videoControls.subtitleDownloadFailed' => 'Falha ao baixar legenda',
|
||||
'videoControls.searchLanguages' => 'Pesquisar idiomas...',
|
||||
'userStatus.admin' => 'Admin',
|
||||
'userStatus.restricted' => 'Restrito',
|
||||
'userStatus.protected' => 'Protegido',
|
||||
'userStatus.current' => 'ATUAL',
|
||||
'messages.markedAsWatched' => 'Marcado como assistido',
|
||||
'messages.markedAsUnwatched' => 'Marcado como não assistido',
|
||||
'messages.markedAsWatchedOffline' => 'Marcado como assistido (será sincronizado quando online)',
|
||||
@@ -2634,8 +2602,6 @@ extension on TranslationsPt {
|
||||
'messages.errorLoading' => ({required Object error}) => 'Erro: ${error}',
|
||||
'messages.streamInterrupted' => 'A transmissão foi interrompida. Toque em reproduzir ou avance para tentar novamente.',
|
||||
'messages.fileInfoNotAvailable' => 'Informações do arquivo não disponíveis',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Erro ao carregar info do arquivo: ${error}',
|
||||
'messages.errorLoadingSeries' => 'Erro ao carregar série',
|
||||
'messages.musicNotSupported' => 'Reprodução de música ainda não é suportada',
|
||||
@@ -2643,6 +2609,8 @@ extension on TranslationsPt {
|
||||
'messages.noProfilesAvailable' => 'Nenhum perfil disponível',
|
||||
'messages.contactAdminForProfiles' => 'Contate o administrador do servidor para adicionar perfis',
|
||||
'messages.unableToDetermineLibrarySection' => 'Não é possível determinar a secção da biblioteca para este item',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.logsCleared' => 'Logs limpos',
|
||||
'messages.logsCopied' => 'Logs copiados para a área de transferência',
|
||||
'messages.noLogsAvailable' => 'Nenhum log disponível',
|
||||
@@ -2759,7 +2727,6 @@ extension on TranslationsPt {
|
||||
'profiles.pinExplain' => 'PIN de 4 dígitos necessário para trocar perfis.',
|
||||
'profiles.continueButton' => 'Continuar',
|
||||
'profiles.pinsDontMatch' => 'Os PINs não correspondem',
|
||||
'profiles.initializeServicesFailed' => 'Falha ao inicializar serviços de perfil',
|
||||
'connections.sectionTitle' => 'Conexões',
|
||||
'connections.addConnection' => 'Adicionar conexão',
|
||||
'connections.addConnectionSubtitleNoProfile' => 'Faça login com Plex ou conecte um servidor Jellyfin',
|
||||
@@ -2770,7 +2737,6 @@ extension on TranslationsPt {
|
||||
'connections.editJellyfinTitle' => 'Editar conexão Jellyfin',
|
||||
'connections.editJellyfinIntro' => ({required Object serverName}) => 'Adicione ou remova URLs de ${serverName}. O Plezy usará a URL acessível com a menor latência.',
|
||||
'discover.title' => 'Descobrir',
|
||||
'discover.switchProfile' => 'Trocar Perfil',
|
||||
'discover.noContentAvailable' => 'Nenhum conteúdo disponível',
|
||||
'discover.addMediaToLibraries' => 'Adicione mídias às suas bibliotecas',
|
||||
'discover.continueWatching' => 'Continuar Assistindo',
|
||||
@@ -2797,8 +2763,6 @@ extension on TranslationsPt {
|
||||
'errors.connectionFailed' => 'Não foi possível conectar ao servidor de mídia',
|
||||
'errors.failedToLoad' => ({required Object context, required Object error}) => 'Falha ao carregar ${context}: ${error}',
|
||||
'errors.noClientAvailable' => 'Nenhum cliente disponível',
|
||||
'errors.authenticationFailed' => ({required Object error}) => 'Falha na autenticação: ${error}',
|
||||
'errors.couldNotLaunchUrl' => 'Não foi possível abrir a URL de autenticação',
|
||||
'errors.pleaseEnterToken' => 'Insira um token',
|
||||
'errors.invalidToken' => 'Token inválido',
|
||||
'errors.failedToVerifyToken' => ({required Object error}) => 'Falha ao verificar token: ${error}',
|
||||
@@ -2823,6 +2787,8 @@ extension on TranslationsPt {
|
||||
'libraries.allLibrariesHidden' => 'Todas as bibliotecas estão ocultas',
|
||||
'libraries.hiddenLibrariesCount' => ({required Object count}) => 'Bibliotecas ocultas (${count})',
|
||||
'libraries.thisLibraryIsEmpty' => 'Esta biblioteca está vazia',
|
||||
'libraries.noItemsMatchFilters' => 'Nenhum item corresponde aos filtros ativos',
|
||||
'libraries.resetFilters' => 'Redefinir filtros',
|
||||
'libraries.all' => 'Todos',
|
||||
'libraries.clearAll' => 'Limpar Tudo',
|
||||
'libraries.scanLibraryConfirm' => ({required Object title}) => 'Tem certeza que deseja escanear "${title}"?',
|
||||
@@ -2871,7 +2837,6 @@ extension on TranslationsPt {
|
||||
'libraries.sortLabels.communityRating' => 'Avaliação da comunidade',
|
||||
'libraries.sortLabels.criticRating' => 'Avaliação da crítica',
|
||||
'libraries.sortLabels.userRating' => 'Avaliação do usuário',
|
||||
'libraries.sortLabels.lastPlayed' => 'Última reprodução',
|
||||
'libraries.sortLabels.datePlayed' => 'Data de reprodução',
|
||||
'libraries.sortLabels.playCount' => 'Reproduções',
|
||||
'libraries.sortLabels.productionYear' => 'Ano de produção',
|
||||
@@ -2885,14 +2850,11 @@ extension on TranslationsPt {
|
||||
'libraries.sortLabels.dateShared' => 'Data de compartilhamento',
|
||||
'libraries.sortLabels.latestEpisodeAirDate' => 'Última data de exibição do episódio',
|
||||
'libraries.sortLabels.lastEpisodeDateAdded' => 'Data de adição do último episódio',
|
||||
'libraries.noItemsMatchFilters' => 'Nenhum item corresponde aos filtros ativos',
|
||||
'libraries.resetFilters' => 'Redefinir filtros',
|
||||
'about.title' => 'Sobre',
|
||||
'about.openSourceLicenses' => 'Licenças Open Source',
|
||||
'about.versionLabel' => ({required Object version}) => 'Versão ${version}',
|
||||
'about.appDescription' => 'Um belo cliente Plex e Jellyfin para Flutter',
|
||||
'about.viewLicensesDescription' => 'Ver licenças de bibliotecas de terceiros',
|
||||
'serverSelection.allServerConnectionsFailed' => 'Não foi possível conectar a nenhum servidor. Verifique sua rede.',
|
||||
'serverSelection.noServersFoundForAccount' => ({required Object username, required Object email}) => 'Nenhum servidor encontrado para ${username} (${email})',
|
||||
'serverSelection.failedToLoadServers' => ({required Object error}) => 'Falha ao carregar servidores: ${error}',
|
||||
'hubDetail.title' => 'Título',
|
||||
@@ -2938,7 +2900,6 @@ extension on TranslationsPt {
|
||||
'explore.watchlistUpdateFailed' => 'Não foi possível atualizar a lista para ver',
|
||||
'explore.notInLibrary' => 'Não está na sua biblioteca',
|
||||
'explore.inTheseLibraries' => 'Nestas bibliotecas',
|
||||
'explore.availableOn' => ({required Object server}) => 'Disponível em ${server}',
|
||||
'explore.checkingLibrary' => 'Verificando a sua biblioteca...',
|
||||
'explore.emptyTitle' => 'Ainda não há nada aqui',
|
||||
'explore.emptyMessage' => ({required Object source}) => 'As linhas de ${source} aparecerão aqui quando tiverem conteúdo.',
|
||||
@@ -2950,6 +2911,8 @@ extension on TranslationsPt {
|
||||
'liveTv.guide' => 'Guia',
|
||||
'liveTv.noChannels' => 'Nenhum canal disponível',
|
||||
'liveTv.noDvr' => 'Nenhum DVR configurado em nenhum servidor',
|
||||
'liveTv.serverUnavailable' => 'O servidor de TV em direto não está disponível.',
|
||||
'liveTv.serverNotConnected' => 'O servidor de TV em direto não está ligado.',
|
||||
'liveTv.noPrograms' => 'Nenhum dado de programação disponível',
|
||||
'liveTv.liveStreamFailed' => 'Falha no stream ao vivo',
|
||||
'liveTv.unknownProgram' => 'Programa desconhecido',
|
||||
@@ -2985,7 +2948,6 @@ extension on TranslationsPt {
|
||||
'liveTv.scheduledRecordings' => 'Agendadas',
|
||||
'liveTv.recordingRules' => 'Regras de gravação',
|
||||
'liveTv.noScheduledRecordings' => 'Sem gravações agendadas',
|
||||
'liveTv.noRecordingRules' => 'Sem regras de gravação',
|
||||
'liveTv.manageRecording' => 'Gerenciar gravação',
|
||||
'liveTv.cancelRecording' => 'Cancelar gravação',
|
||||
'liveTv.cancelRecordingTitle' => 'Cancelar esta gravação?',
|
||||
@@ -3002,7 +2964,6 @@ extension on TranslationsPt {
|
||||
'liveTv.recordingCancelled' => 'Gravação cancelada',
|
||||
'liveTv.recordingRuleDeleted' => 'Regra de gravação excluída',
|
||||
'liveTv.processRecordingRules' => 'Reavaliar regras',
|
||||
'liveTv.loadingRecordings' => 'Carregando gravações...',
|
||||
'liveTv.recordingInProgress' => 'Gravando agora',
|
||||
'liveTv.recordingsCount' => ({required Object count}) => '${count} agendadas',
|
||||
'liveTv.editRule' => 'Editar regra',
|
||||
@@ -3014,7 +2975,6 @@ extension on TranslationsPt {
|
||||
'collections.title' => 'Coleções',
|
||||
'collections.collection' => 'Coleção',
|
||||
'collections.empty' => 'A coleção está vazia',
|
||||
'collections.unknownLibrarySection' => 'Não é possível excluir: Seção de biblioteca desconhecida',
|
||||
'collections.deleteCollection' => 'Excluir Coleção',
|
||||
'collections.deleteConfirm' => ({required Object title}) => 'Excluir "${title}"? Não pode ser desfeito.',
|
||||
'collections.deleted' => 'Coleção excluída',
|
||||
@@ -3052,6 +3012,7 @@ extension on TranslationsPt {
|
||||
'playlists.itemAdded' => 'Adicionado à playlist',
|
||||
'playlists.itemRemoved' => 'Removido da playlist',
|
||||
'playlists.selectPlaylist' => 'Selecionar Playlist',
|
||||
'playlists.searchPlaylists' => 'Pesquisar playlists...',
|
||||
'playlists.errorCreating' => 'Falha ao criar playlist',
|
||||
'playlists.errorDeleting' => 'Falha ao excluir playlist',
|
||||
'playlists.errorLoading' => 'Falha ao carregar playlists',
|
||||
@@ -3134,22 +3095,20 @@ extension on TranslationsPt {
|
||||
'watchTogether.participantResumed' => ({required Object name}) => '${name} retomou',
|
||||
'watchTogether.participantSeeked' => ({required Object name}) => '${name} avançou',
|
||||
'watchTogether.participantBuffering' => ({required Object name}) => '${name} está carregando',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} está em uma versão mais antiga do aplicativo — sincronização indisponível',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Retomando sem ${name}',
|
||||
'watchTogether.waitingForParticipants' => 'Aguardando outros carregarem...',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Aguardando ${name}...',
|
||||
'watchTogether.recentRooms' => 'Salas recentes',
|
||||
'watchTogether.renameRoom' => 'Renomear sala',
|
||||
'watchTogether.removeRoom' => 'Remover',
|
||||
'watchTogether.guestSwitchUnavailable' => 'Não foi possível trocar — servidor indisponível para sincronização',
|
||||
'watchTogether.guestSwitchFailed' => 'Não foi possível trocar — conteúdo não encontrado neste servidor',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} está em uma versão mais antiga do aplicativo — sincronização indisponível',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Retomando sem ${name}',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Aguardando ${name}...',
|
||||
'downloads.title' => 'Downloads',
|
||||
'downloads.manage' => 'Gerenciar',
|
||||
'downloads.tvShows' => 'Séries de TV',
|
||||
'downloads.movies' => 'Filmes',
|
||||
'downloads.music' => 'Música',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.tracksQueued' => ({required Object count}) => '${count} faixas na fila para download',
|
||||
'downloads.noDownloads' => 'Nenhum download ainda',
|
||||
'downloads.noDownloadsDescription' => 'Conteúdo baixado aparecerá aqui para visualização offline',
|
||||
@@ -3164,6 +3123,8 @@ extension on TranslationsPt {
|
||||
'downloads.deleteConfirm' => ({required Object title}) => 'Excluir "${title}" deste dispositivo?',
|
||||
'downloads.cancelledDownloadTitle' => 'Download cancelado',
|
||||
'downloads.cancelledDownloadMessage' => 'Este download foi cancelado. O que você deseja fazer?',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.allEpisodesAlreadyDownloaded' => 'Todos os episódios já foram baixados',
|
||||
'downloads.resumeDownload' => 'Retomar download',
|
||||
'downloads.cancelledDownload' => 'Download cancelado',
|
||||
@@ -3187,7 +3148,6 @@ extension on TranslationsPt {
|
||||
'downloads.customAmount' => 'Quantidade personalizada...',
|
||||
'downloads.includeSpecials' => 'Incluir especiais',
|
||||
'downloads.howManyEpisodes' => 'Quantos episódios?',
|
||||
'downloads.itemsQueued' => ({required Object count}) => '${count} itens na fila de download',
|
||||
'downloads.keepSynced' => 'Manter sincronizado',
|
||||
'downloads.downloadOnce' => 'Baixar uma vez',
|
||||
'downloads.keepNUnwatched' => ({required Object count}) => 'Manter ${count} não assistidos',
|
||||
@@ -3231,7 +3191,6 @@ extension on TranslationsPt {
|
||||
'companionRemote.connectedTo' => ({required Object name}) => 'Conectado a ${name}',
|
||||
'companionRemote.unknownDevice' => 'Dispositivo desconhecido',
|
||||
'companionRemote.session.startingServer' => 'A iniciar servidor remoto...',
|
||||
'companionRemote.session.failedToCreate' => 'Falha ao iniciar o servidor remoto:',
|
||||
'companionRemote.session.hostAddress' => 'Endereço do host',
|
||||
'companionRemote.session.connected' => 'Conectado',
|
||||
'companionRemote.session.serverRunning' => 'Servidor remoto ativo',
|
||||
@@ -3286,6 +3245,8 @@ extension on TranslationsPt {
|
||||
'companionRemote.remote.searchHint' => 'Buscar no desktop...',
|
||||
'companionRemote.errors.noNetworkInterface' => 'Nenhuma interface de rede encontrada',
|
||||
'companionRemote.errors.authenticationFailed' => 'Falha na autenticação',
|
||||
'companionRemote.errors.serverStartFailed' => ({required Object error}) => 'Falha ao iniciar o servidor remoto: ${error}',
|
||||
'companionRemote.errors.commandFailed' => ({required Object error}) => 'Falha ao enviar o comando remoto: ${error}',
|
||||
'companionRemote.errors.joinTimedOut' => 'Tempo esgotado ao entrar na sessão',
|
||||
'companionRemote.errors.failedToConnectAnyAddress' => 'Falha ao conectar a qualquer endereço',
|
||||
'companionRemote.errors.connectionLostAfterAttempts' => ({required Object attempts}) => 'Conexão perdida após ${attempts} tentativas',
|
||||
@@ -3530,7 +3491,6 @@ extension on TranslationsPt {
|
||||
'addServer.quickConnectFailed' => ({required Object error}) => 'Quick Connect falhou: ${error}',
|
||||
'addServer.addPlexTitle' => 'Entrar com Plex',
|
||||
'addServer.pinExpired' => 'O PIN expirou antes do login. Tente novamente.',
|
||||
'addServer.duplicatePlexAccount' => 'Você já entrou no Plex. Saia para trocar de conta.',
|
||||
'addServer.failedToRegisterAccount' => ({required Object error}) => 'Falha ao registrar a conta: ${error}',
|
||||
'addServer.enterJellyfinUrlError' => 'Insira a URL do seu servidor Jellyfin',
|
||||
'addServer.addConnectionTitle' => 'Adicionar conexão',
|
||||
|
||||
+60
-100
@@ -53,7 +53,6 @@ class TranslationsRu extends Translations with BaseTranslations<AppLocale, Trans
|
||||
@override late final _TranslationsAccessibilityRu accessibility = _TranslationsAccessibilityRu._(_root);
|
||||
@override late final _TranslationsTooltipsRu tooltips = _TranslationsTooltipsRu._(_root);
|
||||
@override late final _TranslationsVideoControlsRu videoControls = _TranslationsVideoControlsRu._(_root);
|
||||
@override late final _TranslationsUserStatusRu userStatus = _TranslationsUserStatusRu._(_root);
|
||||
@override late final _TranslationsMessagesRu messages = _TranslationsMessagesRu._(_root);
|
||||
@override late final _TranslationsSubtitlingStylingRu subtitlingStyling = _TranslationsSubtitlingStylingRu._(_root);
|
||||
@override late final _TranslationsMpvConfigRu mpvConfig = _TranslationsMpvConfigRu._(_root);
|
||||
@@ -107,7 +106,6 @@ class _TranslationsAuthRu extends TranslationsAuthEn {
|
||||
final TranslationsRu _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get signIn => 'Войти';
|
||||
@override String get signInWithPlex => 'Войти через Plex';
|
||||
@override String get showQRCode => 'Показать QR-код';
|
||||
@override String get authenticate => 'Аутентификация';
|
||||
@@ -167,10 +165,8 @@ class _TranslationsCommonRu extends TranslationsCommonEn {
|
||||
@override String episodeNumberTitle({required Object number, required Object title}) => 'Эпизод ${number} - ${title}';
|
||||
@override String chapterNumber({required Object number}) => 'Глава ${number}';
|
||||
@override String get reconnect => 'Переподключить';
|
||||
@override String get exit => 'Выход';
|
||||
@override String get viewAll => 'Показать все';
|
||||
@override String get checkingNetwork => 'Проверка сети...';
|
||||
@override String get refreshingServers => 'Обновление серверов...';
|
||||
@override String get loadingServers => 'Загрузка серверов...';
|
||||
@override String get connectingToServers => 'Подключение к серверам...';
|
||||
@override String get startingOfflineMode => 'Запуск автономного режима...';
|
||||
@@ -271,6 +267,12 @@ class _TranslationsSettingsRu extends TranslationsSettingsEn {
|
||||
@override String get tvFullCardLayoutDescription => 'Использовать TV-карточки только с изображением и именами актёров поверх него';
|
||||
@override String get focusGlow => 'Свечение при фокусе';
|
||||
@override String get focusGlowDescription => 'Показывать мягкое свечение вокруг карточки в фокусе';
|
||||
@override String get visualEffects => 'Визуальные эффекты';
|
||||
@override String get visualEffectsAuto => 'Автоматически';
|
||||
@override String get visualEffectsAutoDescription => 'Автоматически уменьшать эффекты на маломощных устройствах';
|
||||
@override String get visualEffectsFull => 'Полные';
|
||||
@override String get visualEffectsReduced => 'Уменьшенные';
|
||||
@override String get visualEffectsReducedDescription => 'Меньше анимаций и графика с более низким разрешением';
|
||||
@override String get hideSpoilers => 'Скрыть спойлеры непросмотренных эпизодов';
|
||||
@override String get hideSpoilersDescription => 'Размывать миниатюры и описания непросмотренных серий';
|
||||
@override String get playerBackend => 'Бэкенд плеера';
|
||||
@@ -283,7 +285,7 @@ class _TranslationsSettingsRu extends TranslationsSettingsEn {
|
||||
@override String get bufferSizeAuto => 'Авто (Рекомендуется)';
|
||||
@override String bufferSizeWarning({required Object heap, required Object size}) => 'Доступно памяти: ${heap}MB. Буфер ${size}MB может повлиять на воспроизведение.';
|
||||
@override String get defaultQualityTitle => 'Качество по умолчанию';
|
||||
@override String get defaultQualityDescription => 'Используется при запуске воспроизведения. Более низкие значения снижают пропускную способность.';
|
||||
@override String get musicQualityTitle => 'Качество музыки';
|
||||
@override String get subtitleStyling => 'Стиль субтитров';
|
||||
@override String get subtitleStylingDescription => 'Настроить внешний вид субтитров';
|
||||
@override String get smallSkipDuration => 'Малая перемотка';
|
||||
@@ -377,10 +379,9 @@ class _TranslationsSettingsRu extends TranslationsSettingsEn {
|
||||
@override String maxVolumePercent({required Object percent}) => '${percent}%';
|
||||
@override String get discordRichPresence => 'Discord Rich Presence';
|
||||
@override String get discordRichPresenceDescription => 'Показывать, что вы смотрите, в Discord';
|
||||
@override String get trakt => 'Trakt';
|
||||
@override String get traktDescription => 'Синхронизировать историю просмотров с Trakt';
|
||||
@override String get services => 'Сервисы';
|
||||
@override String get servicesDescription => 'Подключите Trakt, MyAnimeList, Seerr и другие';
|
||||
@override String get manageLibrariesDescription => 'Изменять порядок и скрывать библиотеки';
|
||||
@override String get companionRemoteServer => 'Сервер удалённого управления';
|
||||
@override String get companionRemoteServerDescription => 'Разрешить мобильным устройствам в сети управлять этим приложением';
|
||||
@override String get autoPip => 'Автоматический «картинка в картинке»';
|
||||
@@ -443,7 +444,6 @@ class _TranslationsSettingsRu extends TranslationsSettingsEn {
|
||||
@override String get showNavBarLabels => 'Показывать подписи панели навигации';
|
||||
@override String get showNavBarLabelsDescription => 'Отображать текстовые подписи под иконками панели навигации';
|
||||
@override String get startupSection => 'Начальный раздел';
|
||||
@override String get startupSectionDescription => 'Выберите, какой раздел Plezy открывает при запуске';
|
||||
@override String get liveTvDefaultFavorites => 'Избранные каналы по умолчанию';
|
||||
@override String get liveTvDefaultFavoritesDescription => 'Показывать только избранные каналы при открытии ТВ';
|
||||
@override String get display => 'Экран';
|
||||
@@ -455,13 +455,6 @@ class _TranslationsSettingsRu extends TranslationsSettingsEn {
|
||||
@override String get subtitlesAndConfig => 'Субтитры и конфигурация';
|
||||
@override String get seekAndTiming => 'Перемотка и время';
|
||||
@override String get behavior => 'Поведение';
|
||||
@override String get manageLibrariesDescription => 'Изменять порядок и скрывать библиотеки';
|
||||
@override String get visualEffects => 'Визуальные эффекты';
|
||||
@override String get visualEffectsAuto => 'Автоматически';
|
||||
@override String get visualEffectsAutoDescription => 'Автоматически уменьшать эффекты на маломощных устройствах';
|
||||
@override String get visualEffectsFull => 'Полные';
|
||||
@override String get visualEffectsReduced => 'Уменьшенные';
|
||||
@override String get visualEffectsReducedDescription => 'Меньше анимаций и графика с более низким разрешением';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -559,14 +552,11 @@ class _TranslationsRateSheetRu extends TranslationsRateSheetEn {
|
||||
// Translations
|
||||
@override String get title => 'Оценить';
|
||||
@override String get server => 'Сервер';
|
||||
@override String starValue({required Object rating}) => '${rating} / 5';
|
||||
@override String scoreValue({required Object score}) => '${score} / 10';
|
||||
@override String get setScore => 'Установить оценку';
|
||||
@override String get favorite => 'Добавить в избранное';
|
||||
@override String get favorited => 'Добавлено в избранное';
|
||||
@override String get saved => 'Сохранено';
|
||||
@override String get notAvailable => 'Совпадений не найдено';
|
||||
@override String get noConnectedServices => 'Подключите сервис в настройках, чтобы оценивать здесь.';
|
||||
@override String get favorite => 'Добавить в избранное';
|
||||
@override String get favorited => 'Добавлено в избранное';
|
||||
}
|
||||
|
||||
// Path: accessibility
|
||||
@@ -584,6 +574,14 @@ class _TranslationsAccessibilityRu extends TranslationsAccessibilityEn {
|
||||
@override String mediaCardPartiallyWatched({required Object percent}) => 'просмотрено ${percent} процентов';
|
||||
@override String get mediaCardUnwatched => 'не просмотрено';
|
||||
@override String get tapToPlay => 'Нажмите для воспроизведения';
|
||||
@override String get decrease => 'Уменьшить';
|
||||
@override String get increase => 'Увеличить';
|
||||
@override String decreaseValue({required Object label}) => 'Уменьшить ${label}';
|
||||
@override String increaseValue({required Object label}) => 'Увеличить ${label}';
|
||||
@override String get hue => 'Цветовой тон';
|
||||
@override String get saturation => 'Насыщенность';
|
||||
@override String get brightness => 'Яркость';
|
||||
@override String get hexColor => 'Шестнадцатеричный цвет';
|
||||
}
|
||||
|
||||
// Path: tooltips
|
||||
@@ -643,13 +641,11 @@ class _TranslationsVideoControlsRu extends TranslationsVideoControlsEn {
|
||||
@override String get settingsButton => 'Настройки воспроизведения';
|
||||
@override String get tracksButton => 'Аудио и субтитры';
|
||||
@override String get chaptersButton => 'Главы';
|
||||
@override String get versionsButton => 'Версии видео';
|
||||
@override String get versionQualityButton => 'Версия и качество';
|
||||
@override String get versionColumnHeader => 'Версия';
|
||||
@override String get qualityColumnHeader => 'Качество';
|
||||
@override String get qualityOriginal => 'Оригинал';
|
||||
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
|
||||
@override String qualityBandwidthEstimate({required Object bitrate}) => '~${bitrate} Mbps';
|
||||
@override String get transcodeUnavailableFallback => 'Транскодирование недоступно — воспроизведение в оригинальном качестве';
|
||||
@override String get pipButton => 'Режим «картинка в картинке»';
|
||||
@override String get aspectRatioButton => 'Соотношение сторон';
|
||||
@@ -685,19 +681,6 @@ class _TranslationsVideoControlsRu extends TranslationsVideoControlsEn {
|
||||
@override String get searchLanguages => 'Поиск языков...';
|
||||
}
|
||||
|
||||
// Path: userStatus
|
||||
class _TranslationsUserStatusRu extends TranslationsUserStatusEn {
|
||||
_TranslationsUserStatusRu._(TranslationsRu root) : this._root = root, super.internal(root);
|
||||
|
||||
final TranslationsRu _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get admin => 'Администратор';
|
||||
@override String get restricted => 'Ограниченный';
|
||||
@override String get protected => 'Защищённый';
|
||||
@override String get current => 'ТЕКУЩИЙ';
|
||||
}
|
||||
|
||||
// Path: messages
|
||||
class _TranslationsMessagesRu extends TranslationsMessagesEn {
|
||||
_TranslationsMessagesRu._(TranslationsRu root) : this._root = root, super.internal(root);
|
||||
@@ -873,7 +856,6 @@ class _TranslationsProfilesRu extends TranslationsProfilesEn {
|
||||
@override String get pinExplain => 'Для переключения профилей нужен 4-значный PIN.';
|
||||
@override String get continueButton => 'Продолжить';
|
||||
@override String get pinsDontMatch => 'PIN-коды не совпадают';
|
||||
@override String get initializeServicesFailed => 'Не удалось инициализировать службы профиля';
|
||||
}
|
||||
|
||||
// Path: connections
|
||||
@@ -902,7 +884,6 @@ class _TranslationsDiscoverRu extends TranslationsDiscoverEn {
|
||||
|
||||
// Translations
|
||||
@override String get title => 'Обзор';
|
||||
@override String get switchProfile => 'Сменить профиль';
|
||||
@override String get noContentAvailable => 'Контент недоступен';
|
||||
@override String get addMediaToLibraries => 'Добавьте медиафайлы в ваши библиотеки';
|
||||
@override String get continueWatching => 'Продолжить просмотр';
|
||||
@@ -938,8 +919,6 @@ class _TranslationsErrorsRu extends TranslationsErrorsEn {
|
||||
@override String get connectionFailed => 'Не удалось подключиться к медиасерверу';
|
||||
@override String failedToLoad({required Object context, required Object error}) => 'Не удалось загрузить ${context}: ${error}';
|
||||
@override String get noClientAvailable => 'Клиент недоступен';
|
||||
@override String authenticationFailed({required Object error}) => 'Ошибка аутентификации: ${error}';
|
||||
@override String get couldNotLaunchUrl => 'Не удалось открыть URL аутентификации';
|
||||
@override String get pleaseEnterToken => 'Введите токен';
|
||||
@override String get invalidToken => 'Недействительный токен';
|
||||
@override String failedToVerifyToken({required Object error}) => 'Не удалось проверить токен: ${error}';
|
||||
@@ -973,6 +952,8 @@ class _TranslationsLibrariesRu extends TranslationsLibrariesEn {
|
||||
@override String get allLibrariesHidden => 'Все библиотеки скрыты';
|
||||
@override String hiddenLibrariesCount({required Object count}) => 'Скрытые библиотеки (${count})';
|
||||
@override String get thisLibraryIsEmpty => 'Эта библиотека пуста';
|
||||
@override String get noItemsMatchFilters => 'Нет элементов, соответствующих активным фильтрам';
|
||||
@override String get resetFilters => 'Сбросить фильтры';
|
||||
@override String get all => 'Все';
|
||||
@override String get clearAll => 'Очистить все';
|
||||
@override String scanLibraryConfirm({required Object title}) => 'Вы уверены, что хотите сканировать "${title}"?';
|
||||
@@ -998,8 +979,6 @@ class _TranslationsLibrariesRu extends TranslationsLibrariesEn {
|
||||
@override late final _TranslationsLibrariesGroupingsRu groupings = _TranslationsLibrariesGroupingsRu._(_root);
|
||||
@override late final _TranslationsLibrariesFilterCategoriesRu filterCategories = _TranslationsLibrariesFilterCategoriesRu._(_root);
|
||||
@override late final _TranslationsLibrariesSortLabelsRu sortLabels = _TranslationsLibrariesSortLabelsRu._(_root);
|
||||
@override String get noItemsMatchFilters => 'Нет элементов, соответствующих активным фильтрам';
|
||||
@override String get resetFilters => 'Сбросить фильтры';
|
||||
}
|
||||
|
||||
// Path: about
|
||||
@@ -1023,7 +1002,6 @@ class _TranslationsServerSelectionRu extends TranslationsServerSelectionEn {
|
||||
final TranslationsRu _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get allServerConnectionsFailed => 'Не удалось подключиться ни к одному серверу. Проверьте сеть.';
|
||||
@override String noServersFoundForAccount({required Object username, required Object email}) => 'Серверы не найдены для ${username} (${email})';
|
||||
@override String failedToLoadServers({required Object error}) => 'Не удалось загрузить серверы: ${error}';
|
||||
}
|
||||
@@ -1104,7 +1082,6 @@ class _TranslationsExploreRu extends TranslationsExploreEn {
|
||||
@override String get watchlistUpdateFailed => 'Не удалось обновить список для просмотра';
|
||||
@override String get notInLibrary => 'Нет в вашей библиотеке';
|
||||
@override String get inTheseLibraries => 'В этих библиотеках';
|
||||
@override String availableOn({required Object server}) => 'Доступно на ${server}';
|
||||
@override String get checkingLibrary => 'Проверка вашей библиотеки...';
|
||||
@override String get emptyTitle => 'Здесь пока ничего нет';
|
||||
@override String emptyMessage({required Object source}) => 'Строки из ${source} появятся здесь, когда в них будет контент.';
|
||||
@@ -1125,6 +1102,8 @@ class _TranslationsLiveTvRu extends TranslationsLiveTvEn {
|
||||
@override String get guide => 'Программа';
|
||||
@override String get noChannels => 'Нет доступных каналов';
|
||||
@override String get noDvr => 'DVR не настроен ни на одном сервере';
|
||||
@override String get serverUnavailable => 'Сервер прямого эфира недоступен.';
|
||||
@override String get serverNotConnected => 'Сервер прямого эфира не подключён.';
|
||||
@override String get noPrograms => 'Нет данных о программах';
|
||||
@override String get liveStreamFailed => 'Не удалось запустить прямой эфир';
|
||||
@override String get unknownProgram => 'Неизвестная программа';
|
||||
@@ -1160,7 +1139,6 @@ class _TranslationsLiveTvRu extends TranslationsLiveTvEn {
|
||||
@override String get scheduledRecordings => 'Запланировано';
|
||||
@override String get recordingRules => 'Правила записи';
|
||||
@override String get noScheduledRecordings => 'Нет запланированных записей';
|
||||
@override String get noRecordingRules => 'Правил записи пока нет';
|
||||
@override String get manageRecording => 'Управление записью';
|
||||
@override String get cancelRecording => 'Отменить запись';
|
||||
@override String get cancelRecordingTitle => 'Отменить эту запись?';
|
||||
@@ -1177,7 +1155,6 @@ class _TranslationsLiveTvRu extends TranslationsLiveTvEn {
|
||||
@override String get recordingCancelled => 'Запись отменена';
|
||||
@override String get recordingRuleDeleted => 'Правило записи удалено';
|
||||
@override String get processRecordingRules => 'Пересчитать правила';
|
||||
@override String get loadingRecordings => 'Загрузка записей...';
|
||||
@override String get recordingInProgress => 'Идёт запись';
|
||||
@override String recordingsCount({required Object count}) => 'Запланировано: ${count}';
|
||||
@override String get editRule => 'Изменить правило';
|
||||
@@ -1198,7 +1175,6 @@ class _TranslationsCollectionsRu extends TranslationsCollectionsEn {
|
||||
@override String get title => 'Коллекции';
|
||||
@override String get collection => 'Коллекция';
|
||||
@override String get empty => 'Коллекция пуста';
|
||||
@override String get unknownLibrarySection => 'Невозможно удалить: неизвестный раздел библиотеки';
|
||||
@override String get deleteCollection => 'Удалить коллекцию';
|
||||
@override String deleteConfirm({required Object title}) => 'Удалить "${title}"? Это нельзя отменить.';
|
||||
@override String get deleted => 'Коллекция удалена';
|
||||
@@ -1245,6 +1221,7 @@ class _TranslationsPlaylistsRu extends TranslationsPlaylistsEn {
|
||||
@override String get itemAdded => 'Добавлено в плейлист';
|
||||
@override String get itemRemoved => 'Удалено из плейлиста';
|
||||
@override String get selectPlaylist => 'Выбрать плейлист';
|
||||
@override String get searchPlaylists => 'Поиск плейлистов...';
|
||||
@override String get errorCreating => 'Не удалось создать плейлист';
|
||||
@override String get errorDeleting => 'Не удалось удалить плейлист';
|
||||
@override String get errorLoading => 'Не удалось загрузить плейлисты';
|
||||
@@ -1350,15 +1327,15 @@ class _TranslationsWatchTogetherRu extends TranslationsWatchTogetherEn {
|
||||
@override String participantResumed({required Object name}) => '${name} возобновил';
|
||||
@override String participantSeeked({required Object name}) => '${name} перемотал';
|
||||
@override String participantBuffering({required Object name}) => '${name} буферизует';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} использует старую версию приложения — синхронизация недоступна';
|
||||
@override String resumingWithout({required Object name}) => 'Возобновление без ${name}';
|
||||
@override String get waitingForParticipants => 'Ожидание загрузки у других...';
|
||||
@override String waitingForName({required Object name}) => 'Ожидание ${name}...';
|
||||
@override String get recentRooms => 'Недавние комнаты';
|
||||
@override String get renameRoom => 'Переименовать комнату';
|
||||
@override String get removeRoom => 'Удалить';
|
||||
@override String get guestSwitchUnavailable => 'Не удалось переключиться — сервер недоступен для синхронизации';
|
||||
@override String get guestSwitchFailed => 'Не удалось переключиться — содержимое не найдено на этом сервере';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} использует старую версию приложения — синхронизация недоступна';
|
||||
@override String resumingWithout({required Object name}) => 'Возобновление без ${name}';
|
||||
@override String waitingForName({required Object name}) => 'Ожидание ${name}...';
|
||||
}
|
||||
|
||||
// Path: downloads
|
||||
@@ -1410,7 +1387,6 @@ class _TranslationsDownloadsRu extends TranslationsDownloadsEn {
|
||||
@override String get customAmount => 'Указать количество...';
|
||||
@override String get includeSpecials => 'Включить спецвыпуски';
|
||||
@override String get howManyEpisodes => 'Сколько эпизодов?';
|
||||
@override String itemsQueued({required Object count}) => '${count} элементов добавлено в очередь загрузки';
|
||||
@override String get keepSynced => 'Синхронизировать';
|
||||
@override String get downloadOnce => 'Скачать один раз';
|
||||
@override String keepNUnwatched({required Object count}) => 'Хранить ${count} непросмотренных';
|
||||
@@ -1784,7 +1760,6 @@ class _TranslationsAddServerRu extends TranslationsAddServerEn {
|
||||
@override String quickConnectFailed({required Object error}) => 'Quick Connect не удался: ${error}';
|
||||
@override String get addPlexTitle => 'Войти через Plex';
|
||||
@override String get pinExpired => 'Срок действия PIN истёк до входа. Попробуйте снова.';
|
||||
@override String get duplicatePlexAccount => 'В Plex уже выполнен вход. Выйдите, чтобы сменить аккаунт.';
|
||||
@override String failedToRegisterAccount({required Object error}) => 'Не удалось зарегистрировать учётную запись: ${error}';
|
||||
@override String get enterJellyfinUrlError => 'Введите URL вашего сервера Jellyfin';
|
||||
@override String get addConnectionTitle => 'Добавить подключение';
|
||||
@@ -1910,7 +1885,6 @@ class _TranslationsLibrariesSortLabelsRu extends TranslationsLibrariesSortLabels
|
||||
@override String get communityRating => 'Оценка сообщества';
|
||||
@override String get criticRating => 'Оценка критиков';
|
||||
@override String get userRating => 'Пользовательская оценка';
|
||||
@override String get lastPlayed => 'Последний просмотр';
|
||||
@override String get datePlayed => 'Дата просмотра';
|
||||
@override String get playCount => 'Количество просмотров';
|
||||
@override String get productionYear => 'Год производства';
|
||||
@@ -1969,7 +1943,6 @@ class _TranslationsCompanionRemoteSessionRu extends TranslationsCompanionRemoteS
|
||||
|
||||
// Translations
|
||||
@override String get startingServer => 'Запуск удалённого сервера...';
|
||||
@override String get failedToCreate => 'Не удалось запустить удалённый сервер:';
|
||||
@override String get hostAddress => 'Адрес хоста';
|
||||
@override String get connected => 'Подключено';
|
||||
@override String get serverRunning => 'Удалённый сервер активен';
|
||||
@@ -2051,6 +2024,8 @@ class _TranslationsCompanionRemoteErrorsRu extends TranslationsCompanionRemoteEr
|
||||
// Translations
|
||||
@override String get noNetworkInterface => 'Сетевой интерфейс не найден';
|
||||
@override String get authenticationFailed => 'Ошибка аутентификации';
|
||||
@override String serverStartFailed({required Object error}) => 'Не удалось запустить удалённый сервер: ${error}';
|
||||
@override String commandFailed({required Object error}) => 'Не удалось отправить удалённую команду: ${error}';
|
||||
@override String get joinTimedOut => 'Время подключения к сеансу истекло';
|
||||
@override String get failedToConnectAnyAddress => 'Не удалось подключиться ни к одному адресу';
|
||||
@override String connectionLostAfterAttempts({required Object attempts}) => 'Соединение потеряно после ${attempts} попыток';
|
||||
@@ -2127,7 +2102,6 @@ extension on TranslationsRu {
|
||||
dynamic _flatMapFunction(String path) {
|
||||
return switch (path) {
|
||||
'app.title' => 'Plezy',
|
||||
'auth.signIn' => 'Войти',
|
||||
'auth.signInWithPlex' => 'Войти через Plex',
|
||||
'auth.showQRCode' => 'Показать QR-код',
|
||||
'auth.authenticate' => 'Аутентификация',
|
||||
@@ -2178,10 +2152,8 @@ extension on TranslationsRu {
|
||||
'common.episodeNumberTitle' => ({required Object number, required Object title}) => 'Эпизод ${number} - ${title}',
|
||||
'common.chapterNumber' => ({required Object number}) => 'Глава ${number}',
|
||||
'common.reconnect' => 'Переподключить',
|
||||
'common.exit' => 'Выход',
|
||||
'common.viewAll' => 'Показать все',
|
||||
'common.checkingNetwork' => 'Проверка сети...',
|
||||
'common.refreshingServers' => 'Обновление серверов...',
|
||||
'common.loadingServers' => 'Загрузка серверов...',
|
||||
'common.connectingToServers' => 'Подключение к серверам...',
|
||||
'common.startingOfflineMode' => 'Запуск автономного режима...',
|
||||
@@ -2255,6 +2227,12 @@ extension on TranslationsRu {
|
||||
'settings.tvFullCardLayoutDescription' => 'Использовать TV-карточки только с изображением и именами актёров поверх него',
|
||||
'settings.focusGlow' => 'Свечение при фокусе',
|
||||
'settings.focusGlowDescription' => 'Показывать мягкое свечение вокруг карточки в фокусе',
|
||||
'settings.visualEffects' => 'Визуальные эффекты',
|
||||
'settings.visualEffectsAuto' => 'Автоматически',
|
||||
'settings.visualEffectsAutoDescription' => 'Автоматически уменьшать эффекты на маломощных устройствах',
|
||||
'settings.visualEffectsFull' => 'Полные',
|
||||
'settings.visualEffectsReduced' => 'Уменьшенные',
|
||||
'settings.visualEffectsReducedDescription' => 'Меньше анимаций и графика с более низким разрешением',
|
||||
'settings.hideSpoilers' => 'Скрыть спойлеры непросмотренных эпизодов',
|
||||
'settings.hideSpoilersDescription' => 'Размывать миниатюры и описания непросмотренных серий',
|
||||
'settings.playerBackend' => 'Бэкенд плеера',
|
||||
@@ -2267,7 +2245,7 @@ extension on TranslationsRu {
|
||||
'settings.bufferSizeAuto' => 'Авто (Рекомендуется)',
|
||||
'settings.bufferSizeWarning' => ({required Object heap, required Object size}) => 'Доступно памяти: ${heap}MB. Буфер ${size}MB может повлиять на воспроизведение.',
|
||||
'settings.defaultQualityTitle' => 'Качество по умолчанию',
|
||||
'settings.defaultQualityDescription' => 'Используется при запуске воспроизведения. Более низкие значения снижают пропускную способность.',
|
||||
'settings.musicQualityTitle' => 'Качество музыки',
|
||||
'settings.subtitleStyling' => 'Стиль субтитров',
|
||||
'settings.subtitleStylingDescription' => 'Настроить внешний вид субтитров',
|
||||
'settings.smallSkipDuration' => 'Малая перемотка',
|
||||
@@ -2361,10 +2339,9 @@ extension on TranslationsRu {
|
||||
'settings.maxVolumePercent' => ({required Object percent}) => '${percent}%',
|
||||
'settings.discordRichPresence' => 'Discord Rich Presence',
|
||||
'settings.discordRichPresenceDescription' => 'Показывать, что вы смотрите, в Discord',
|
||||
'settings.trakt' => 'Trakt',
|
||||
'settings.traktDescription' => 'Синхронизировать историю просмотров с Trakt',
|
||||
'settings.services' => 'Сервисы',
|
||||
'settings.servicesDescription' => 'Подключите Trakt, MyAnimeList, Seerr и другие',
|
||||
'settings.manageLibrariesDescription' => 'Изменять порядок и скрывать библиотеки',
|
||||
'settings.companionRemoteServer' => 'Сервер удалённого управления',
|
||||
'settings.companionRemoteServerDescription' => 'Разрешить мобильным устройствам в сети управлять этим приложением',
|
||||
'settings.autoPip' => 'Автоматический «картинка в картинке»',
|
||||
@@ -2427,7 +2404,6 @@ extension on TranslationsRu {
|
||||
'settings.showNavBarLabels' => 'Показывать подписи панели навигации',
|
||||
'settings.showNavBarLabelsDescription' => 'Отображать текстовые подписи под иконками панели навигации',
|
||||
'settings.startupSection' => 'Начальный раздел',
|
||||
'settings.startupSectionDescription' => 'Выберите, какой раздел Plezy открывает при запуске',
|
||||
'settings.liveTvDefaultFavorites' => 'Избранные каналы по умолчанию',
|
||||
'settings.liveTvDefaultFavoritesDescription' => 'Показывать только избранные каналы при открытии ТВ',
|
||||
'settings.display' => 'Экран',
|
||||
@@ -2439,13 +2415,6 @@ extension on TranslationsRu {
|
||||
'settings.subtitlesAndConfig' => 'Субтитры и конфигурация',
|
||||
'settings.seekAndTiming' => 'Перемотка и время',
|
||||
'settings.behavior' => 'Поведение',
|
||||
'settings.manageLibrariesDescription' => 'Изменять порядок и скрывать библиотеки',
|
||||
'settings.visualEffects' => 'Визуальные эффекты',
|
||||
'settings.visualEffectsAuto' => 'Автоматически',
|
||||
'settings.visualEffectsAutoDescription' => 'Автоматически уменьшать эффекты на маломощных устройствах',
|
||||
'settings.visualEffectsFull' => 'Полные',
|
||||
'settings.visualEffectsReduced' => 'Уменьшенные',
|
||||
'settings.visualEffectsReducedDescription' => 'Меньше анимаций и графика с более низким разрешением',
|
||||
'search.hint' => 'Поиск фильмов, сериалов, музыки...',
|
||||
'search.tryDifferentTerm' => 'Попробуйте другой запрос',
|
||||
'search.searchYourMedia' => 'Поиск в вашей медиатеке',
|
||||
@@ -2522,14 +2491,11 @@ extension on TranslationsRu {
|
||||
'mediaMenu.playVersion' => 'Воспроизвести версию...',
|
||||
'rateSheet.title' => 'Оценить',
|
||||
'rateSheet.server' => 'Сервер',
|
||||
'rateSheet.starValue' => ({required Object rating}) => '${rating} / 5',
|
||||
'rateSheet.scoreValue' => ({required Object score}) => '${score} / 10',
|
||||
'rateSheet.setScore' => 'Установить оценку',
|
||||
'rateSheet.favorite' => 'Добавить в избранное',
|
||||
'rateSheet.favorited' => 'Добавлено в избранное',
|
||||
'rateSheet.saved' => 'Сохранено',
|
||||
'rateSheet.notAvailable' => 'Совпадений не найдено',
|
||||
'rateSheet.noConnectedServices' => 'Подключите сервис в настройках, чтобы оценивать здесь.',
|
||||
'rateSheet.favorite' => 'Добавить в избранное',
|
||||
'rateSheet.favorited' => 'Добавлено в избранное',
|
||||
'accessibility.mediaCardMovie' => ({required Object title}) => '${title}, фильм',
|
||||
'accessibility.mediaCardShow' => ({required Object title}) => '${title}, сериал',
|
||||
'accessibility.mediaCardEpisode' => ({required Object title, required Object episodeInfo}) => '${title}, ${episodeInfo}',
|
||||
@@ -2538,6 +2504,14 @@ extension on TranslationsRu {
|
||||
'accessibility.mediaCardPartiallyWatched' => ({required Object percent}) => 'просмотрено ${percent} процентов',
|
||||
'accessibility.mediaCardUnwatched' => 'не просмотрено',
|
||||
'accessibility.tapToPlay' => 'Нажмите для воспроизведения',
|
||||
'accessibility.decrease' => 'Уменьшить',
|
||||
'accessibility.increase' => 'Увеличить',
|
||||
'accessibility.decreaseValue' => ({required Object label}) => 'Уменьшить ${label}',
|
||||
'accessibility.increaseValue' => ({required Object label}) => 'Увеличить ${label}',
|
||||
'accessibility.hue' => 'Цветовой тон',
|
||||
'accessibility.saturation' => 'Насыщенность',
|
||||
'accessibility.brightness' => 'Яркость',
|
||||
'accessibility.hexColor' => 'Шестнадцатеричный цвет',
|
||||
'tooltips.shufflePlay' => 'Случайное воспроизведение',
|
||||
'tooltips.playTrailer' => 'Воспроизвести трейлер',
|
||||
'tooltips.markAsWatched' => 'Отметить как просмотренное',
|
||||
@@ -2579,13 +2553,11 @@ extension on TranslationsRu {
|
||||
'videoControls.settingsButton' => 'Настройки воспроизведения',
|
||||
'videoControls.tracksButton' => 'Аудио и субтитры',
|
||||
'videoControls.chaptersButton' => 'Главы',
|
||||
'videoControls.versionsButton' => 'Версии видео',
|
||||
'videoControls.versionQualityButton' => 'Версия и качество',
|
||||
'videoControls.versionColumnHeader' => 'Версия',
|
||||
'videoControls.qualityColumnHeader' => 'Качество',
|
||||
'videoControls.qualityOriginal' => 'Оригинал',
|
||||
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
|
||||
'videoControls.qualityBandwidthEstimate' => ({required Object bitrate}) => '~${bitrate} Mbps',
|
||||
'videoControls.transcodeUnavailableFallback' => 'Транскодирование недоступно — воспроизведение в оригинальном качестве',
|
||||
'videoControls.pipButton' => 'Режим «картинка в картинке»',
|
||||
'videoControls.aspectRatioButton' => 'Соотношение сторон',
|
||||
@@ -2625,10 +2597,6 @@ extension on TranslationsRu {
|
||||
'videoControls.subtitleDownloaded' => 'Субтитры загружены',
|
||||
'videoControls.subtitleDownloadFailed' => 'Не удалось загрузить субтитры',
|
||||
'videoControls.searchLanguages' => 'Поиск языков...',
|
||||
'userStatus.admin' => 'Администратор',
|
||||
'userStatus.restricted' => 'Ограниченный',
|
||||
'userStatus.protected' => 'Защищённый',
|
||||
'userStatus.current' => 'ТЕКУЩИЙ',
|
||||
'messages.markedAsWatched' => 'Отмечено как просмотренное',
|
||||
'messages.markedAsUnwatched' => 'Отмечено как непросмотренное',
|
||||
'messages.markedAsWatchedOffline' => 'Отмечено как просмотренное (синхронизируется при подключении)',
|
||||
@@ -2638,8 +2606,6 @@ extension on TranslationsRu {
|
||||
'messages.errorLoading' => ({required Object error}) => 'Ошибка: ${error}',
|
||||
'messages.streamInterrupted' => 'Поток прервался. Нажмите «Воспроизвести» или перемотайте, чтобы повторить попытку.',
|
||||
'messages.fileInfoNotAvailable' => 'Информация о файле недоступна',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Ошибка загрузки информации о файле: ${error}',
|
||||
'messages.errorLoadingSeries' => 'Ошибка загрузки сериала',
|
||||
'messages.musicNotSupported' => 'Воспроизведение музыки пока не поддерживается',
|
||||
@@ -2647,6 +2613,8 @@ extension on TranslationsRu {
|
||||
'messages.noProfilesAvailable' => 'Профили недоступны',
|
||||
'messages.contactAdminForProfiles' => 'Обратитесь к администратору сервера для добавления профилей',
|
||||
'messages.unableToDetermineLibrarySection' => 'Не удаётся определить раздел библиотеки для этого элемента',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.logsCleared' => 'Логи очищены',
|
||||
'messages.logsCopied' => 'Логи скопированы в буфер обмена',
|
||||
'messages.noLogsAvailable' => 'Логи отсутствуют',
|
||||
@@ -2763,7 +2731,6 @@ extension on TranslationsRu {
|
||||
'profiles.pinExplain' => 'Для переключения профилей нужен 4-значный PIN.',
|
||||
'profiles.continueButton' => 'Продолжить',
|
||||
'profiles.pinsDontMatch' => 'PIN-коды не совпадают',
|
||||
'profiles.initializeServicesFailed' => 'Не удалось инициализировать службы профиля',
|
||||
'connections.sectionTitle' => 'Подключения',
|
||||
'connections.addConnection' => 'Добавить подключение',
|
||||
'connections.addConnectionSubtitleNoProfile' => 'Войдите через Plex или подключите сервер Jellyfin',
|
||||
@@ -2774,7 +2741,6 @@ extension on TranslationsRu {
|
||||
'connections.editJellyfinTitle' => 'Изменить подключение Jellyfin',
|
||||
'connections.editJellyfinIntro' => ({required Object serverName}) => 'Добавьте или удалите URL для ${serverName}. Plezy будет использовать доступный URL с минимальной задержкой.',
|
||||
'discover.title' => 'Обзор',
|
||||
'discover.switchProfile' => 'Сменить профиль',
|
||||
'discover.noContentAvailable' => 'Контент недоступен',
|
||||
'discover.addMediaToLibraries' => 'Добавьте медиафайлы в ваши библиотеки',
|
||||
'discover.continueWatching' => 'Продолжить просмотр',
|
||||
@@ -2801,8 +2767,6 @@ extension on TranslationsRu {
|
||||
'errors.connectionFailed' => 'Не удалось подключиться к медиасерверу',
|
||||
'errors.failedToLoad' => ({required Object context, required Object error}) => 'Не удалось загрузить ${context}: ${error}',
|
||||
'errors.noClientAvailable' => 'Клиент недоступен',
|
||||
'errors.authenticationFailed' => ({required Object error}) => 'Ошибка аутентификации: ${error}',
|
||||
'errors.couldNotLaunchUrl' => 'Не удалось открыть URL аутентификации',
|
||||
'errors.pleaseEnterToken' => 'Введите токен',
|
||||
'errors.invalidToken' => 'Недействительный токен',
|
||||
'errors.failedToVerifyToken' => ({required Object error}) => 'Не удалось проверить токен: ${error}',
|
||||
@@ -2827,6 +2791,8 @@ extension on TranslationsRu {
|
||||
'libraries.allLibrariesHidden' => 'Все библиотеки скрыты',
|
||||
'libraries.hiddenLibrariesCount' => ({required Object count}) => 'Скрытые библиотеки (${count})',
|
||||
'libraries.thisLibraryIsEmpty' => 'Эта библиотека пуста',
|
||||
'libraries.noItemsMatchFilters' => 'Нет элементов, соответствующих активным фильтрам',
|
||||
'libraries.resetFilters' => 'Сбросить фильтры',
|
||||
'libraries.all' => 'Все',
|
||||
'libraries.clearAll' => 'Очистить все',
|
||||
'libraries.scanLibraryConfirm' => ({required Object title}) => 'Вы уверены, что хотите сканировать "${title}"?',
|
||||
@@ -2875,7 +2841,6 @@ extension on TranslationsRu {
|
||||
'libraries.sortLabels.communityRating' => 'Оценка сообщества',
|
||||
'libraries.sortLabels.criticRating' => 'Оценка критиков',
|
||||
'libraries.sortLabels.userRating' => 'Пользовательская оценка',
|
||||
'libraries.sortLabels.lastPlayed' => 'Последний просмотр',
|
||||
'libraries.sortLabels.datePlayed' => 'Дата просмотра',
|
||||
'libraries.sortLabels.playCount' => 'Количество просмотров',
|
||||
'libraries.sortLabels.productionYear' => 'Год производства',
|
||||
@@ -2889,14 +2854,11 @@ extension on TranslationsRu {
|
||||
'libraries.sortLabels.dateShared' => 'Дата открытия доступа',
|
||||
'libraries.sortLabels.latestEpisodeAirDate' => 'Дата выхода последнего эпизода',
|
||||
'libraries.sortLabels.lastEpisodeDateAdded' => 'Дата добавления последнего эпизода',
|
||||
'libraries.noItemsMatchFilters' => 'Нет элементов, соответствующих активным фильтрам',
|
||||
'libraries.resetFilters' => 'Сбросить фильтры',
|
||||
'about.title' => 'О приложении',
|
||||
'about.openSourceLicenses' => 'Лицензии открытого ПО',
|
||||
'about.versionLabel' => ({required Object version}) => 'Версия ${version}',
|
||||
'about.appDescription' => 'Красивый клиент Plex и Jellyfin на Flutter',
|
||||
'about.viewLicensesDescription' => 'Просмотр лицензий сторонних библиотек',
|
||||
'serverSelection.allServerConnectionsFailed' => 'Не удалось подключиться ни к одному серверу. Проверьте сеть.',
|
||||
'serverSelection.noServersFoundForAccount' => ({required Object username, required Object email}) => 'Серверы не найдены для ${username} (${email})',
|
||||
'serverSelection.failedToLoadServers' => ({required Object error}) => 'Не удалось загрузить серверы: ${error}',
|
||||
'hubDetail.title' => 'Название',
|
||||
@@ -2942,7 +2904,6 @@ extension on TranslationsRu {
|
||||
'explore.watchlistUpdateFailed' => 'Не удалось обновить список для просмотра',
|
||||
'explore.notInLibrary' => 'Нет в вашей библиотеке',
|
||||
'explore.inTheseLibraries' => 'В этих библиотеках',
|
||||
'explore.availableOn' => ({required Object server}) => 'Доступно на ${server}',
|
||||
'explore.checkingLibrary' => 'Проверка вашей библиотеки...',
|
||||
'explore.emptyTitle' => 'Здесь пока ничего нет',
|
||||
'explore.emptyMessage' => ({required Object source}) => 'Строки из ${source} появятся здесь, когда в них будет контент.',
|
||||
@@ -2954,6 +2915,8 @@ extension on TranslationsRu {
|
||||
'liveTv.guide' => 'Программа',
|
||||
'liveTv.noChannels' => 'Нет доступных каналов',
|
||||
'liveTv.noDvr' => 'DVR не настроен ни на одном сервере',
|
||||
'liveTv.serverUnavailable' => 'Сервер прямого эфира недоступен.',
|
||||
'liveTv.serverNotConnected' => 'Сервер прямого эфира не подключён.',
|
||||
'liveTv.noPrograms' => 'Нет данных о программах',
|
||||
'liveTv.liveStreamFailed' => 'Не удалось запустить прямой эфир',
|
||||
'liveTv.unknownProgram' => 'Неизвестная программа',
|
||||
@@ -2989,7 +2952,6 @@ extension on TranslationsRu {
|
||||
'liveTv.scheduledRecordings' => 'Запланировано',
|
||||
'liveTv.recordingRules' => 'Правила записи',
|
||||
'liveTv.noScheduledRecordings' => 'Нет запланированных записей',
|
||||
'liveTv.noRecordingRules' => 'Правил записи пока нет',
|
||||
'liveTv.manageRecording' => 'Управление записью',
|
||||
'liveTv.cancelRecording' => 'Отменить запись',
|
||||
'liveTv.cancelRecordingTitle' => 'Отменить эту запись?',
|
||||
@@ -3006,7 +2968,6 @@ extension on TranslationsRu {
|
||||
'liveTv.recordingCancelled' => 'Запись отменена',
|
||||
'liveTv.recordingRuleDeleted' => 'Правило записи удалено',
|
||||
'liveTv.processRecordingRules' => 'Пересчитать правила',
|
||||
'liveTv.loadingRecordings' => 'Загрузка записей...',
|
||||
'liveTv.recordingInProgress' => 'Идёт запись',
|
||||
'liveTv.recordingsCount' => ({required Object count}) => 'Запланировано: ${count}',
|
||||
'liveTv.editRule' => 'Изменить правило',
|
||||
@@ -3018,7 +2979,6 @@ extension on TranslationsRu {
|
||||
'collections.title' => 'Коллекции',
|
||||
'collections.collection' => 'Коллекция',
|
||||
'collections.empty' => 'Коллекция пуста',
|
||||
'collections.unknownLibrarySection' => 'Невозможно удалить: неизвестный раздел библиотеки',
|
||||
'collections.deleteCollection' => 'Удалить коллекцию',
|
||||
'collections.deleteConfirm' => ({required Object title}) => 'Удалить "${title}"? Это нельзя отменить.',
|
||||
'collections.deleted' => 'Коллекция удалена',
|
||||
@@ -3056,6 +3016,7 @@ extension on TranslationsRu {
|
||||
'playlists.itemAdded' => 'Добавлено в плейлист',
|
||||
'playlists.itemRemoved' => 'Удалено из плейлиста',
|
||||
'playlists.selectPlaylist' => 'Выбрать плейлист',
|
||||
'playlists.searchPlaylists' => 'Поиск плейлистов...',
|
||||
'playlists.errorCreating' => 'Не удалось создать плейлист',
|
||||
'playlists.errorDeleting' => 'Не удалось удалить плейлист',
|
||||
'playlists.errorLoading' => 'Не удалось загрузить плейлисты',
|
||||
@@ -3138,22 +3099,20 @@ extension on TranslationsRu {
|
||||
'watchTogether.participantResumed' => ({required Object name}) => '${name} возобновил',
|
||||
'watchTogether.participantSeeked' => ({required Object name}) => '${name} перемотал',
|
||||
'watchTogether.participantBuffering' => ({required Object name}) => '${name} буферизует',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} использует старую версию приложения — синхронизация недоступна',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Возобновление без ${name}',
|
||||
'watchTogether.waitingForParticipants' => 'Ожидание загрузки у других...',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Ожидание ${name}...',
|
||||
'watchTogether.recentRooms' => 'Недавние комнаты',
|
||||
'watchTogether.renameRoom' => 'Переименовать комнату',
|
||||
'watchTogether.removeRoom' => 'Удалить',
|
||||
'watchTogether.guestSwitchUnavailable' => 'Не удалось переключиться — сервер недоступен для синхронизации',
|
||||
'watchTogether.guestSwitchFailed' => 'Не удалось переключиться — содержимое не найдено на этом сервере',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} использует старую версию приложения — синхронизация недоступна',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Возобновление без ${name}',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Ожидание ${name}...',
|
||||
'downloads.title' => 'Загрузки',
|
||||
'downloads.manage' => 'Управление',
|
||||
'downloads.tvShows' => 'Сериалы',
|
||||
'downloads.movies' => 'Фильмы',
|
||||
'downloads.music' => 'Музыка',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.tracksQueued' => ({required Object count}) => '${count} треков в очереди на загрузку',
|
||||
'downloads.noDownloads' => 'Загрузок пока нет',
|
||||
'downloads.noDownloadsDescription' => 'Загруженный контент появится здесь для просмотра офлайн',
|
||||
@@ -3168,6 +3127,8 @@ extension on TranslationsRu {
|
||||
'downloads.deleteConfirm' => ({required Object title}) => 'Удалить "${title}" с этого устройства?',
|
||||
'downloads.cancelledDownloadTitle' => 'Загрузка отменена',
|
||||
'downloads.cancelledDownloadMessage' => 'Эта загрузка была отменена. Что вы хотите сделать?',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.allEpisodesAlreadyDownloaded' => 'Все эпизоды уже загружены',
|
||||
'downloads.resumeDownload' => 'Возобновить загрузку',
|
||||
'downloads.cancelledDownload' => 'Загрузка отменена',
|
||||
@@ -3191,7 +3152,6 @@ extension on TranslationsRu {
|
||||
'downloads.customAmount' => 'Указать количество...',
|
||||
'downloads.includeSpecials' => 'Включить спецвыпуски',
|
||||
'downloads.howManyEpisodes' => 'Сколько эпизодов?',
|
||||
'downloads.itemsQueued' => ({required Object count}) => '${count} элементов добавлено в очередь загрузки',
|
||||
'downloads.keepSynced' => 'Синхронизировать',
|
||||
'downloads.downloadOnce' => 'Скачать один раз',
|
||||
'downloads.keepNUnwatched' => ({required Object count}) => 'Хранить ${count} непросмотренных',
|
||||
@@ -3235,7 +3195,6 @@ extension on TranslationsRu {
|
||||
'companionRemote.connectedTo' => ({required Object name}) => 'Подключено к ${name}',
|
||||
'companionRemote.unknownDevice' => 'Неизвестное устройство',
|
||||
'companionRemote.session.startingServer' => 'Запуск удалённого сервера...',
|
||||
'companionRemote.session.failedToCreate' => 'Не удалось запустить удалённый сервер:',
|
||||
'companionRemote.session.hostAddress' => 'Адрес хоста',
|
||||
'companionRemote.session.connected' => 'Подключено',
|
||||
'companionRemote.session.serverRunning' => 'Удалённый сервер активен',
|
||||
@@ -3290,6 +3249,8 @@ extension on TranslationsRu {
|
||||
'companionRemote.remote.searchHint' => 'Поиск на десктопе...',
|
||||
'companionRemote.errors.noNetworkInterface' => 'Сетевой интерфейс не найден',
|
||||
'companionRemote.errors.authenticationFailed' => 'Ошибка аутентификации',
|
||||
'companionRemote.errors.serverStartFailed' => ({required Object error}) => 'Не удалось запустить удалённый сервер: ${error}',
|
||||
'companionRemote.errors.commandFailed' => ({required Object error}) => 'Не удалось отправить удалённую команду: ${error}',
|
||||
'companionRemote.errors.joinTimedOut' => 'Время подключения к сеансу истекло',
|
||||
'companionRemote.errors.failedToConnectAnyAddress' => 'Не удалось подключиться ни к одному адресу',
|
||||
'companionRemote.errors.connectionLostAfterAttempts' => ({required Object attempts}) => 'Соединение потеряно после ${attempts} попыток',
|
||||
@@ -3534,7 +3495,6 @@ extension on TranslationsRu {
|
||||
'addServer.quickConnectFailed' => ({required Object error}) => 'Quick Connect не удался: ${error}',
|
||||
'addServer.addPlexTitle' => 'Войти через Plex',
|
||||
'addServer.pinExpired' => 'Срок действия PIN истёк до входа. Попробуйте снова.',
|
||||
'addServer.duplicatePlexAccount' => 'В Plex уже выполнен вход. Выйдите, чтобы сменить аккаунт.',
|
||||
'addServer.failedToRegisterAccount' => ({required Object error}) => 'Не удалось зарегистрировать учётную запись: ${error}',
|
||||
'addServer.enterJellyfinUrlError' => 'Введите URL вашего сервера Jellyfin',
|
||||
'addServer.addConnectionTitle' => 'Добавить подключение',
|
||||
|
||||
+60
-100
@@ -53,7 +53,6 @@ class TranslationsSv extends Translations with BaseTranslations<AppLocale, Trans
|
||||
@override late final _TranslationsAccessibilitySv accessibility = _TranslationsAccessibilitySv._(_root);
|
||||
@override late final _TranslationsTooltipsSv tooltips = _TranslationsTooltipsSv._(_root);
|
||||
@override late final _TranslationsVideoControlsSv videoControls = _TranslationsVideoControlsSv._(_root);
|
||||
@override late final _TranslationsUserStatusSv userStatus = _TranslationsUserStatusSv._(_root);
|
||||
@override late final _TranslationsMessagesSv messages = _TranslationsMessagesSv._(_root);
|
||||
@override late final _TranslationsSubtitlingStylingSv subtitlingStyling = _TranslationsSubtitlingStylingSv._(_root);
|
||||
@override late final _TranslationsMpvConfigSv mpvConfig = _TranslationsMpvConfigSv._(_root);
|
||||
@@ -107,7 +106,6 @@ class _TranslationsAuthSv extends TranslationsAuthEn {
|
||||
final TranslationsSv _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get signIn => 'Logga in';
|
||||
@override String get signInWithPlex => 'Logga in med Plex';
|
||||
@override String get showQRCode => 'Visa QR-kod';
|
||||
@override String get authenticate => 'Autentisera';
|
||||
@@ -167,10 +165,8 @@ class _TranslationsCommonSv extends TranslationsCommonEn {
|
||||
@override String episodeNumberTitle({required Object number, required Object title}) => 'Avsnitt ${number} - ${title}';
|
||||
@override String chapterNumber({required Object number}) => 'Kapitel ${number}';
|
||||
@override String get reconnect => 'Återanslut';
|
||||
@override String get exit => 'Avsluta';
|
||||
@override String get viewAll => 'Visa alla';
|
||||
@override String get checkingNetwork => 'Kontrollerar nätverk...';
|
||||
@override String get refreshingServers => 'Uppdaterar servrar...';
|
||||
@override String get loadingServers => 'Laddar servrar...';
|
||||
@override String get connectingToServers => 'Ansluter till servrar...';
|
||||
@override String get startingOfflineMode => 'Startar offlineläge...';
|
||||
@@ -271,6 +267,12 @@ class _TranslationsSettingsSv extends TranslationsSettingsEn {
|
||||
@override String get tvFullCardLayoutDescription => 'Använd TV-kort med enbart bild och skådespelarnamn ovanpå';
|
||||
@override String get focusGlow => 'Fokusglöd';
|
||||
@override String get focusGlowDescription => 'Visa en mjuk glöd runt kortet i fokus';
|
||||
@override String get visualEffects => 'Visuella effekter';
|
||||
@override String get visualEffectsAuto => 'Automatiskt';
|
||||
@override String get visualEffectsAutoDescription => 'Minska effekter automatiskt på enheter med låg effekt';
|
||||
@override String get visualEffectsFull => 'Fullständiga';
|
||||
@override String get visualEffectsReduced => 'Minskade';
|
||||
@override String get visualEffectsReducedDescription => 'Färre animationer och grafik med lägre upplösning';
|
||||
@override String get hideSpoilers => 'Dölj spoilers för osedda avsnitt';
|
||||
@override String get hideSpoilersDescription => 'Sudda miniatyrbilder och beskrivningar för osedda avsnitt';
|
||||
@override String get playerBackend => 'Spelarmotor';
|
||||
@@ -283,7 +285,7 @@ class _TranslationsSettingsSv extends TranslationsSettingsEn {
|
||||
@override String get bufferSizeAuto => 'Auto (Rekommenderat)';
|
||||
@override String bufferSizeWarning({required Object heap, required Object size}) => '${heap}MB minne tillgängligt. En buffert på ${size}MB kan påverka uppspelningen.';
|
||||
@override String get defaultQualityTitle => 'Standardkvalitet';
|
||||
@override String get defaultQualityDescription => 'Används vid start av uppspelning. Lägre värden minskar bandbredden.';
|
||||
@override String get musicQualityTitle => 'Musikkvalitet';
|
||||
@override String get subtitleStyling => 'Undertext-styling';
|
||||
@override String get subtitleStylingDescription => 'Anpassa undertextutseende';
|
||||
@override String get smallSkipDuration => 'Kort hoppvaraktighet';
|
||||
@@ -377,10 +379,9 @@ class _TranslationsSettingsSv extends TranslationsSettingsEn {
|
||||
@override String maxVolumePercent({required Object percent}) => '${percent}%';
|
||||
@override String get discordRichPresence => 'Discord Rich Presence';
|
||||
@override String get discordRichPresenceDescription => 'Visa vad du tittar på i Discord';
|
||||
@override String get trakt => 'Trakt';
|
||||
@override String get traktDescription => 'Synkronisera visningshistorik med Trakt';
|
||||
@override String get services => 'Tjänster';
|
||||
@override String get servicesDescription => 'Anslut Trakt, MyAnimeList, Seerr med mera';
|
||||
@override String get manageLibrariesDescription => 'Ordna om och dölj bibliotek';
|
||||
@override String get companionRemoteServer => 'Companion Remote-server';
|
||||
@override String get companionRemoteServerDescription => 'Tillåt mobila enheter i ditt nätverk att styra denna app';
|
||||
@override String get autoPip => 'Automatisk bild-i-bild';
|
||||
@@ -443,7 +444,6 @@ class _TranslationsSettingsSv extends TranslationsSettingsEn {
|
||||
@override String get showNavBarLabels => 'Visa navigeringsfältets etiketter';
|
||||
@override String get showNavBarLabelsDescription => 'Visa textetiketter under navigeringsfältets ikoner';
|
||||
@override String get startupSection => 'Startsektion';
|
||||
@override String get startupSectionDescription => 'Välj vilken sektion Plezy öppnar vid start';
|
||||
@override String get liveTvDefaultFavorites => 'Standard till favoritkanaler';
|
||||
@override String get liveTvDefaultFavoritesDescription => 'Visa bara favoritkanaler när du öppnar Live TV';
|
||||
@override String get display => 'Skärm';
|
||||
@@ -455,13 +455,6 @@ class _TranslationsSettingsSv extends TranslationsSettingsEn {
|
||||
@override String get subtitlesAndConfig => 'Undertexter och konfiguration';
|
||||
@override String get seekAndTiming => 'Sök och timing';
|
||||
@override String get behavior => 'Beteende';
|
||||
@override String get manageLibrariesDescription => 'Ordna om och dölj bibliotek';
|
||||
@override String get visualEffects => 'Visuella effekter';
|
||||
@override String get visualEffectsAuto => 'Automatiskt';
|
||||
@override String get visualEffectsAutoDescription => 'Minska effekter automatiskt på enheter med låg effekt';
|
||||
@override String get visualEffectsFull => 'Fullständiga';
|
||||
@override String get visualEffectsReduced => 'Minskade';
|
||||
@override String get visualEffectsReducedDescription => 'Färre animationer och grafik med lägre upplösning';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -559,14 +552,11 @@ class _TranslationsRateSheetSv extends TranslationsRateSheetEn {
|
||||
// Translations
|
||||
@override String get title => 'Betygsätt';
|
||||
@override String get server => 'Server';
|
||||
@override String starValue({required Object rating}) => '${rating} / 5';
|
||||
@override String scoreValue({required Object score}) => '${score} / 10';
|
||||
@override String get setScore => 'Ange betyg';
|
||||
@override String get favorite => 'Favorit';
|
||||
@override String get favorited => 'Tillagd i favoriter';
|
||||
@override String get saved => 'Sparat';
|
||||
@override String get notAvailable => 'Ingen matchning hittades';
|
||||
@override String get noConnectedServices => 'Anslut en tjänst i Inställningar för att betygsätta där.';
|
||||
@override String get favorite => 'Favorit';
|
||||
@override String get favorited => 'Tillagd i favoriter';
|
||||
}
|
||||
|
||||
// Path: accessibility
|
||||
@@ -584,6 +574,14 @@ class _TranslationsAccessibilitySv extends TranslationsAccessibilityEn {
|
||||
@override String mediaCardPartiallyWatched({required Object percent}) => '${percent} procent sedd';
|
||||
@override String get mediaCardUnwatched => 'osedd';
|
||||
@override String get tapToPlay => 'Tryck för att spela';
|
||||
@override String get decrease => 'Minska';
|
||||
@override String get increase => 'Öka';
|
||||
@override String decreaseValue({required Object label}) => 'Minska ${label}';
|
||||
@override String increaseValue({required Object label}) => 'Öka ${label}';
|
||||
@override String get hue => 'Nyans';
|
||||
@override String get saturation => 'Mättnad';
|
||||
@override String get brightness => 'Ljusstyrka';
|
||||
@override String get hexColor => 'Hexfärg';
|
||||
}
|
||||
|
||||
// Path: tooltips
|
||||
@@ -643,13 +641,11 @@ class _TranslationsVideoControlsSv extends TranslationsVideoControlsEn {
|
||||
@override String get settingsButton => 'Uppspelningsinställningar';
|
||||
@override String get tracksButton => 'Ljud och undertexter';
|
||||
@override String get chaptersButton => 'Kapitel';
|
||||
@override String get versionsButton => 'Videoversioner';
|
||||
@override String get versionQualityButton => 'Version och kvalitet';
|
||||
@override String get versionColumnHeader => 'Version';
|
||||
@override String get qualityColumnHeader => 'Kvalitet';
|
||||
@override String get qualityOriginal => 'Original';
|
||||
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
|
||||
@override String qualityBandwidthEstimate({required Object bitrate}) => '~${bitrate} Mbps';
|
||||
@override String get transcodeUnavailableFallback => 'Transkodning otillgänglig — spelar upp i originalkvalitet';
|
||||
@override String get pipButton => 'Bild-i-bild läge';
|
||||
@override String get aspectRatioButton => 'Bildförhållande';
|
||||
@@ -685,19 +681,6 @@ class _TranslationsVideoControlsSv extends TranslationsVideoControlsEn {
|
||||
@override String get searchLanguages => 'Sök språk...';
|
||||
}
|
||||
|
||||
// Path: userStatus
|
||||
class _TranslationsUserStatusSv extends TranslationsUserStatusEn {
|
||||
_TranslationsUserStatusSv._(TranslationsSv root) : this._root = root, super.internal(root);
|
||||
|
||||
final TranslationsSv _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get admin => 'Admin';
|
||||
@override String get restricted => 'Begränsad';
|
||||
@override String get protected => 'Skyddad';
|
||||
@override String get current => 'NUVARANDE';
|
||||
}
|
||||
|
||||
// Path: messages
|
||||
class _TranslationsMessagesSv extends TranslationsMessagesEn {
|
||||
_TranslationsMessagesSv._(TranslationsSv root) : this._root = root, super.internal(root);
|
||||
@@ -873,7 +856,6 @@ class _TranslationsProfilesSv extends TranslationsProfilesEn {
|
||||
@override String get pinExplain => '4-siffrig PIN krävs för att byta profiler.';
|
||||
@override String get continueButton => 'Fortsätt';
|
||||
@override String get pinsDontMatch => 'PIN-koderna stämmer inte överens';
|
||||
@override String get initializeServicesFailed => 'Kunde inte initiera profiltjänster';
|
||||
}
|
||||
|
||||
// Path: connections
|
||||
@@ -902,7 +884,6 @@ class _TranslationsDiscoverSv extends TranslationsDiscoverEn {
|
||||
|
||||
// Translations
|
||||
@override String get title => 'Upptäck';
|
||||
@override String get switchProfile => 'Byt profil';
|
||||
@override String get noContentAvailable => 'Inget innehåll tillgängligt';
|
||||
@override String get addMediaToLibraries => 'Lägg till media till dina bibliotek';
|
||||
@override String get continueWatching => 'Fortsätt titta';
|
||||
@@ -938,8 +919,6 @@ class _TranslationsErrorsSv extends TranslationsErrorsEn {
|
||||
@override String get connectionFailed => 'Kan inte ansluta till mediaserver';
|
||||
@override String failedToLoad({required Object context, required Object error}) => 'Misslyckades att ladda ${context}: ${error}';
|
||||
@override String get noClientAvailable => 'Ingen klient tillgänglig';
|
||||
@override String authenticationFailed({required Object error}) => 'Autentisering misslyckades: ${error}';
|
||||
@override String get couldNotLaunchUrl => 'Kunde inte öppna autentiserings-URL';
|
||||
@override String get pleaseEnterToken => 'Vänligen ange en token';
|
||||
@override String get invalidToken => 'Ogiltig token';
|
||||
@override String failedToVerifyToken({required Object error}) => 'Misslyckades att verifiera token: ${error}';
|
||||
@@ -973,6 +952,8 @@ class _TranslationsLibrariesSv extends TranslationsLibrariesEn {
|
||||
@override String get allLibrariesHidden => 'Alla bibliotek är dolda';
|
||||
@override String hiddenLibrariesCount({required Object count}) => 'Dolda bibliotek (${count})';
|
||||
@override String get thisLibraryIsEmpty => 'Detta bibliotek är tomt';
|
||||
@override String get noItemsMatchFilters => 'Inga objekt matchar de aktiva filtren';
|
||||
@override String get resetFilters => 'Återställ filter';
|
||||
@override String get all => 'Alla';
|
||||
@override String get clearAll => 'Rensa alla';
|
||||
@override String scanLibraryConfirm({required Object title}) => 'Är du säker på att du vill skanna "${title}"?';
|
||||
@@ -998,8 +979,6 @@ class _TranslationsLibrariesSv extends TranslationsLibrariesEn {
|
||||
@override late final _TranslationsLibrariesGroupingsSv groupings = _TranslationsLibrariesGroupingsSv._(_root);
|
||||
@override late final _TranslationsLibrariesFilterCategoriesSv filterCategories = _TranslationsLibrariesFilterCategoriesSv._(_root);
|
||||
@override late final _TranslationsLibrariesSortLabelsSv sortLabels = _TranslationsLibrariesSortLabelsSv._(_root);
|
||||
@override String get noItemsMatchFilters => 'Inga objekt matchar de aktiva filtren';
|
||||
@override String get resetFilters => 'Återställ filter';
|
||||
}
|
||||
|
||||
// Path: about
|
||||
@@ -1023,7 +1002,6 @@ class _TranslationsServerSelectionSv extends TranslationsServerSelectionEn {
|
||||
final TranslationsSv _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get allServerConnectionsFailed => 'Kunde inte ansluta till några servrar. Kontrollera nätverket.';
|
||||
@override String noServersFoundForAccount({required Object username, required Object email}) => 'Inga servrar hittades för ${username} (${email})';
|
||||
@override String failedToLoadServers({required Object error}) => 'Misslyckades att ladda servrar: ${error}';
|
||||
}
|
||||
@@ -1102,7 +1080,6 @@ class _TranslationsExploreSv extends TranslationsExploreEn {
|
||||
@override String get watchlistUpdateFailed => 'Det gick inte att uppdatera bevakningslistan';
|
||||
@override String get notInLibrary => 'Finns inte i ditt bibliotek';
|
||||
@override String get inTheseLibraries => 'I dessa bibliotek';
|
||||
@override String availableOn({required Object server}) => 'Tillgänglig på ${server}';
|
||||
@override String get checkingLibrary => 'Kontrollerar ditt bibliotek...';
|
||||
@override String get emptyTitle => 'Inget här ännu';
|
||||
@override String emptyMessage({required Object source}) => 'Rader från ${source} visas här när de har innehåll.';
|
||||
@@ -1123,6 +1100,8 @@ class _TranslationsLiveTvSv extends TranslationsLiveTvEn {
|
||||
@override String get guide => 'Programguide';
|
||||
@override String get noChannels => 'Inga kanaler tillgängliga';
|
||||
@override String get noDvr => 'Ingen DVR konfigurerad på någon server';
|
||||
@override String get serverUnavailable => 'Live-tv-servern är inte tillgänglig.';
|
||||
@override String get serverNotConnected => 'Live-tv-servern är inte ansluten.';
|
||||
@override String get noPrograms => 'Ingen programdata tillgänglig';
|
||||
@override String get liveStreamFailed => 'Liveström misslyckades';
|
||||
@override String get unknownProgram => 'Okänt program';
|
||||
@@ -1158,7 +1137,6 @@ class _TranslationsLiveTvSv extends TranslationsLiveTvEn {
|
||||
@override String get scheduledRecordings => 'Schemalagda';
|
||||
@override String get recordingRules => 'Inspelningsregler';
|
||||
@override String get noScheduledRecordings => 'Inga schemalagda inspelningar';
|
||||
@override String get noRecordingRules => 'Inga inspelningsregler än';
|
||||
@override String get manageRecording => 'Hantera inspelning';
|
||||
@override String get cancelRecording => 'Avbryt inspelning';
|
||||
@override String get cancelRecordingTitle => 'Avbryt denna inspelning?';
|
||||
@@ -1175,7 +1153,6 @@ class _TranslationsLiveTvSv extends TranslationsLiveTvEn {
|
||||
@override String get recordingCancelled => 'Inspelning avbruten';
|
||||
@override String get recordingRuleDeleted => 'Inspelningsregel borttagen';
|
||||
@override String get processRecordingRules => 'Utvärdera regler igen';
|
||||
@override String get loadingRecordings => 'Laddar inspelningar ...';
|
||||
@override String get recordingInProgress => 'Spelar in nu';
|
||||
@override String recordingsCount({required Object count}) => '${count} schemalagda';
|
||||
@override String get editRule => 'Redigera regel';
|
||||
@@ -1196,7 +1173,6 @@ class _TranslationsCollectionsSv extends TranslationsCollectionsEn {
|
||||
@override String get title => 'Samlingar';
|
||||
@override String get collection => 'Samling';
|
||||
@override String get empty => 'Samlingen är tom';
|
||||
@override String get unknownLibrarySection => 'Kan inte ta bort: okänd bibliotekssektion';
|
||||
@override String get deleteCollection => 'Ta bort samling';
|
||||
@override String deleteConfirm({required Object title}) => 'Ta bort "${title}"? Detta kan inte ångras.';
|
||||
@override String get deleted => 'Samling borttagen';
|
||||
@@ -1243,6 +1219,7 @@ class _TranslationsPlaylistsSv extends TranslationsPlaylistsEn {
|
||||
@override String get itemAdded => 'Tillagd i spellista';
|
||||
@override String get itemRemoved => 'Borttagen från spellista';
|
||||
@override String get selectPlaylist => 'Välj spellista';
|
||||
@override String get searchPlaylists => 'Sök i spellistor...';
|
||||
@override String get errorCreating => 'Det gick inte att skapa spellista';
|
||||
@override String get errorDeleting => 'Det gick inte att ta bort spellista';
|
||||
@override String get errorLoading => 'Det gick inte att ladda spellistor';
|
||||
@@ -1346,15 +1323,15 @@ class _TranslationsWatchTogetherSv extends TranslationsWatchTogetherEn {
|
||||
@override String participantResumed({required Object name}) => '${name} återupptog';
|
||||
@override String participantSeeked({required Object name}) => '${name} spolade';
|
||||
@override String participantBuffering({required Object name}) => '${name} buffrar';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} använder en äldre appversion — synkronisering är inte tillgänglig';
|
||||
@override String resumingWithout({required Object name}) => 'Återupptar utan ${name}';
|
||||
@override String get waitingForParticipants => 'Väntar på att andra laddar...';
|
||||
@override String waitingForName({required Object name}) => 'Väntar på ${name}...';
|
||||
@override String get recentRooms => 'Senaste rum';
|
||||
@override String get renameRoom => 'Byt namn på rum';
|
||||
@override String get removeRoom => 'Ta bort';
|
||||
@override String get guestSwitchUnavailable => 'Kunde inte byta — server inte tillgänglig för synkronisering';
|
||||
@override String get guestSwitchFailed => 'Kunde inte byta — innehåll hittades inte på denna server';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} använder en äldre appversion — synkronisering är inte tillgänglig';
|
||||
@override String resumingWithout({required Object name}) => 'Återupptar utan ${name}';
|
||||
@override String waitingForName({required Object name}) => 'Väntar på ${name}...';
|
||||
}
|
||||
|
||||
// Path: downloads
|
||||
@@ -1406,7 +1383,6 @@ class _TranslationsDownloadsSv extends TranslationsDownloadsEn {
|
||||
@override String get customAmount => 'Ange antal...';
|
||||
@override String get includeSpecials => 'Inkludera specialavsnitt';
|
||||
@override String get howManyEpisodes => 'Hur många avsnitt?';
|
||||
@override String itemsQueued({required Object count}) => '${count} objekt köade för nedladdning';
|
||||
@override String get keepSynced => 'Håll synkroniserad';
|
||||
@override String get downloadOnce => 'Ladda ner en gång';
|
||||
@override String keepNUnwatched({required Object count}) => 'Behåll ${count} osedda';
|
||||
@@ -1780,7 +1756,6 @@ class _TranslationsAddServerSv extends TranslationsAddServerEn {
|
||||
@override String quickConnectFailed({required Object error}) => 'Quick Connect misslyckades: ${error}';
|
||||
@override String get addPlexTitle => 'Logga in med Plex';
|
||||
@override String get pinExpired => 'PIN-koden gick ut innan inloggning. Försök igen.';
|
||||
@override String get duplicatePlexAccount => 'Redan inloggad på Plex. Logga ut för att byta konto.';
|
||||
@override String failedToRegisterAccount({required Object error}) => 'Kunde inte registrera kontot: ${error}';
|
||||
@override String get enterJellyfinUrlError => 'Ange URL till din Jellyfin-server';
|
||||
@override String get addConnectionTitle => 'Lägg till anslutning';
|
||||
@@ -1906,7 +1881,6 @@ class _TranslationsLibrariesSortLabelsSv extends TranslationsLibrariesSortLabels
|
||||
@override String get communityRating => 'Användarbetyg';
|
||||
@override String get criticRating => 'Kritikerbetyg';
|
||||
@override String get userRating => 'Användarbetyg';
|
||||
@override String get lastPlayed => 'Senast spelad';
|
||||
@override String get datePlayed => 'Speldatum';
|
||||
@override String get playCount => 'Antal spelningar';
|
||||
@override String get productionYear => 'Produktionsår';
|
||||
@@ -1965,7 +1939,6 @@ class _TranslationsCompanionRemoteSessionSv extends TranslationsCompanionRemoteS
|
||||
|
||||
// Translations
|
||||
@override String get startingServer => 'Startar fjärrserver...';
|
||||
@override String get failedToCreate => 'Kunde inte starta fjärrserver:';
|
||||
@override String get hostAddress => 'Värdadress';
|
||||
@override String get connected => 'Ansluten';
|
||||
@override String get serverRunning => 'Fjärrserver aktiv';
|
||||
@@ -2047,6 +2020,8 @@ class _TranslationsCompanionRemoteErrorsSv extends TranslationsCompanionRemoteEr
|
||||
// Translations
|
||||
@override String get noNetworkInterface => 'Inget nätverksgränssnitt hittades';
|
||||
@override String get authenticationFailed => 'Autentisering misslyckades';
|
||||
@override String serverStartFailed({required Object error}) => 'Det gick inte att starta fjärrservern: ${error}';
|
||||
@override String commandFailed({required Object error}) => 'Det gick inte att skicka fjärrkommandot: ${error}';
|
||||
@override String get joinTimedOut => 'Tidsgräns vid anslutning till session';
|
||||
@override String get failedToConnectAnyAddress => 'Kunde inte ansluta till någon adress';
|
||||
@override String connectionLostAfterAttempts({required Object attempts}) => 'Anslutning förlorad efter ${attempts} försök';
|
||||
@@ -2123,7 +2098,6 @@ extension on TranslationsSv {
|
||||
dynamic _flatMapFunction(String path) {
|
||||
return switch (path) {
|
||||
'app.title' => 'Plezy',
|
||||
'auth.signIn' => 'Logga in',
|
||||
'auth.signInWithPlex' => 'Logga in med Plex',
|
||||
'auth.showQRCode' => 'Visa QR-kod',
|
||||
'auth.authenticate' => 'Autentisera',
|
||||
@@ -2174,10 +2148,8 @@ extension on TranslationsSv {
|
||||
'common.episodeNumberTitle' => ({required Object number, required Object title}) => 'Avsnitt ${number} - ${title}',
|
||||
'common.chapterNumber' => ({required Object number}) => 'Kapitel ${number}',
|
||||
'common.reconnect' => 'Återanslut',
|
||||
'common.exit' => 'Avsluta',
|
||||
'common.viewAll' => 'Visa alla',
|
||||
'common.checkingNetwork' => 'Kontrollerar nätverk...',
|
||||
'common.refreshingServers' => 'Uppdaterar servrar...',
|
||||
'common.loadingServers' => 'Laddar servrar...',
|
||||
'common.connectingToServers' => 'Ansluter till servrar...',
|
||||
'common.startingOfflineMode' => 'Startar offlineläge...',
|
||||
@@ -2251,6 +2223,12 @@ extension on TranslationsSv {
|
||||
'settings.tvFullCardLayoutDescription' => 'Använd TV-kort med enbart bild och skådespelarnamn ovanpå',
|
||||
'settings.focusGlow' => 'Fokusglöd',
|
||||
'settings.focusGlowDescription' => 'Visa en mjuk glöd runt kortet i fokus',
|
||||
'settings.visualEffects' => 'Visuella effekter',
|
||||
'settings.visualEffectsAuto' => 'Automatiskt',
|
||||
'settings.visualEffectsAutoDescription' => 'Minska effekter automatiskt på enheter med låg effekt',
|
||||
'settings.visualEffectsFull' => 'Fullständiga',
|
||||
'settings.visualEffectsReduced' => 'Minskade',
|
||||
'settings.visualEffectsReducedDescription' => 'Färre animationer och grafik med lägre upplösning',
|
||||
'settings.hideSpoilers' => 'Dölj spoilers för osedda avsnitt',
|
||||
'settings.hideSpoilersDescription' => 'Sudda miniatyrbilder och beskrivningar för osedda avsnitt',
|
||||
'settings.playerBackend' => 'Spelarmotor',
|
||||
@@ -2263,7 +2241,7 @@ extension on TranslationsSv {
|
||||
'settings.bufferSizeAuto' => 'Auto (Rekommenderat)',
|
||||
'settings.bufferSizeWarning' => ({required Object heap, required Object size}) => '${heap}MB minne tillgängligt. En buffert på ${size}MB kan påverka uppspelningen.',
|
||||
'settings.defaultQualityTitle' => 'Standardkvalitet',
|
||||
'settings.defaultQualityDescription' => 'Används vid start av uppspelning. Lägre värden minskar bandbredden.',
|
||||
'settings.musicQualityTitle' => 'Musikkvalitet',
|
||||
'settings.subtitleStyling' => 'Undertext-styling',
|
||||
'settings.subtitleStylingDescription' => 'Anpassa undertextutseende',
|
||||
'settings.smallSkipDuration' => 'Kort hoppvaraktighet',
|
||||
@@ -2357,10 +2335,9 @@ extension on TranslationsSv {
|
||||
'settings.maxVolumePercent' => ({required Object percent}) => '${percent}%',
|
||||
'settings.discordRichPresence' => 'Discord Rich Presence',
|
||||
'settings.discordRichPresenceDescription' => 'Visa vad du tittar på i Discord',
|
||||
'settings.trakt' => 'Trakt',
|
||||
'settings.traktDescription' => 'Synkronisera visningshistorik med Trakt',
|
||||
'settings.services' => 'Tjänster',
|
||||
'settings.servicesDescription' => 'Anslut Trakt, MyAnimeList, Seerr med mera',
|
||||
'settings.manageLibrariesDescription' => 'Ordna om och dölj bibliotek',
|
||||
'settings.companionRemoteServer' => 'Companion Remote-server',
|
||||
'settings.companionRemoteServerDescription' => 'Tillåt mobila enheter i ditt nätverk att styra denna app',
|
||||
'settings.autoPip' => 'Automatisk bild-i-bild',
|
||||
@@ -2423,7 +2400,6 @@ extension on TranslationsSv {
|
||||
'settings.showNavBarLabels' => 'Visa navigeringsfältets etiketter',
|
||||
'settings.showNavBarLabelsDescription' => 'Visa textetiketter under navigeringsfältets ikoner',
|
||||
'settings.startupSection' => 'Startsektion',
|
||||
'settings.startupSectionDescription' => 'Välj vilken sektion Plezy öppnar vid start',
|
||||
'settings.liveTvDefaultFavorites' => 'Standard till favoritkanaler',
|
||||
'settings.liveTvDefaultFavoritesDescription' => 'Visa bara favoritkanaler när du öppnar Live TV',
|
||||
'settings.display' => 'Skärm',
|
||||
@@ -2435,13 +2411,6 @@ extension on TranslationsSv {
|
||||
'settings.subtitlesAndConfig' => 'Undertexter och konfiguration',
|
||||
'settings.seekAndTiming' => 'Sök och timing',
|
||||
'settings.behavior' => 'Beteende',
|
||||
'settings.manageLibrariesDescription' => 'Ordna om och dölj bibliotek',
|
||||
'settings.visualEffects' => 'Visuella effekter',
|
||||
'settings.visualEffectsAuto' => 'Automatiskt',
|
||||
'settings.visualEffectsAutoDescription' => 'Minska effekter automatiskt på enheter med låg effekt',
|
||||
'settings.visualEffectsFull' => 'Fullständiga',
|
||||
'settings.visualEffectsReduced' => 'Minskade',
|
||||
'settings.visualEffectsReducedDescription' => 'Färre animationer och grafik med lägre upplösning',
|
||||
'search.hint' => 'Sök filmer, serier, musik...',
|
||||
'search.tryDifferentTerm' => 'Prova en annan sökterm',
|
||||
'search.searchYourMedia' => 'Sök i dina media',
|
||||
@@ -2518,14 +2487,11 @@ extension on TranslationsSv {
|
||||
'mediaMenu.playVersion' => 'Spela version...',
|
||||
'rateSheet.title' => 'Betygsätt',
|
||||
'rateSheet.server' => 'Server',
|
||||
'rateSheet.starValue' => ({required Object rating}) => '${rating} / 5',
|
||||
'rateSheet.scoreValue' => ({required Object score}) => '${score} / 10',
|
||||
'rateSheet.setScore' => 'Ange betyg',
|
||||
'rateSheet.favorite' => 'Favorit',
|
||||
'rateSheet.favorited' => 'Tillagd i favoriter',
|
||||
'rateSheet.saved' => 'Sparat',
|
||||
'rateSheet.notAvailable' => 'Ingen matchning hittades',
|
||||
'rateSheet.noConnectedServices' => 'Anslut en tjänst i Inställningar för att betygsätta där.',
|
||||
'rateSheet.favorite' => 'Favorit',
|
||||
'rateSheet.favorited' => 'Tillagd i favoriter',
|
||||
'accessibility.mediaCardMovie' => ({required Object title}) => '${title}, film',
|
||||
'accessibility.mediaCardShow' => ({required Object title}) => '${title}, TV-serie',
|
||||
'accessibility.mediaCardEpisode' => ({required Object title, required Object episodeInfo}) => '${title}, ${episodeInfo}',
|
||||
@@ -2534,6 +2500,14 @@ extension on TranslationsSv {
|
||||
'accessibility.mediaCardPartiallyWatched' => ({required Object percent}) => '${percent} procent sedd',
|
||||
'accessibility.mediaCardUnwatched' => 'osedd',
|
||||
'accessibility.tapToPlay' => 'Tryck för att spela',
|
||||
'accessibility.decrease' => 'Minska',
|
||||
'accessibility.increase' => 'Öka',
|
||||
'accessibility.decreaseValue' => ({required Object label}) => 'Minska ${label}',
|
||||
'accessibility.increaseValue' => ({required Object label}) => 'Öka ${label}',
|
||||
'accessibility.hue' => 'Nyans',
|
||||
'accessibility.saturation' => 'Mättnad',
|
||||
'accessibility.brightness' => 'Ljusstyrka',
|
||||
'accessibility.hexColor' => 'Hexfärg',
|
||||
'tooltips.shufflePlay' => 'Blanda uppspelning',
|
||||
'tooltips.playTrailer' => 'Spela trailer',
|
||||
'tooltips.markAsWatched' => 'Markera som sedd',
|
||||
@@ -2575,13 +2549,11 @@ extension on TranslationsSv {
|
||||
'videoControls.settingsButton' => 'Uppspelningsinställningar',
|
||||
'videoControls.tracksButton' => 'Ljud och undertexter',
|
||||
'videoControls.chaptersButton' => 'Kapitel',
|
||||
'videoControls.versionsButton' => 'Videoversioner',
|
||||
'videoControls.versionQualityButton' => 'Version och kvalitet',
|
||||
'videoControls.versionColumnHeader' => 'Version',
|
||||
'videoControls.qualityColumnHeader' => 'Kvalitet',
|
||||
'videoControls.qualityOriginal' => 'Original',
|
||||
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
|
||||
'videoControls.qualityBandwidthEstimate' => ({required Object bitrate}) => '~${bitrate} Mbps',
|
||||
'videoControls.transcodeUnavailableFallback' => 'Transkodning otillgänglig — spelar upp i originalkvalitet',
|
||||
'videoControls.pipButton' => 'Bild-i-bild läge',
|
||||
'videoControls.aspectRatioButton' => 'Bildförhållande',
|
||||
@@ -2621,10 +2593,6 @@ extension on TranslationsSv {
|
||||
'videoControls.subtitleDownloaded' => 'Undertext nedladdad',
|
||||
'videoControls.subtitleDownloadFailed' => 'Kunde inte ladda ner undertext',
|
||||
'videoControls.searchLanguages' => 'Sök språk...',
|
||||
'userStatus.admin' => 'Admin',
|
||||
'userStatus.restricted' => 'Begränsad',
|
||||
'userStatus.protected' => 'Skyddad',
|
||||
'userStatus.current' => 'NUVARANDE',
|
||||
'messages.markedAsWatched' => 'Markerad som sedd',
|
||||
'messages.markedAsUnwatched' => 'Markerad som osedd',
|
||||
'messages.markedAsWatchedOffline' => 'Markerad som sedd (synkroniseras när online)',
|
||||
@@ -2634,8 +2602,6 @@ extension on TranslationsSv {
|
||||
'messages.errorLoading' => ({required Object error}) => 'Fel: ${error}',
|
||||
'messages.streamInterrupted' => 'Uppspelningen avbröts. Tryck på play eller spola för att försöka igen.',
|
||||
'messages.fileInfoNotAvailable' => 'Filinformation inte tillgänglig',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Fel vid laddning av filinformation: ${error}',
|
||||
'messages.errorLoadingSeries' => 'Fel vid laddning av serie',
|
||||
'messages.musicNotSupported' => 'Musikuppspelning stöds inte ännu',
|
||||
@@ -2643,6 +2609,8 @@ extension on TranslationsSv {
|
||||
'messages.noProfilesAvailable' => 'Inga profiler tillgängliga',
|
||||
'messages.contactAdminForProfiles' => 'Kontakta din serveradministratör för att lägga till profiler',
|
||||
'messages.unableToDetermineLibrarySection' => 'Kan inte avgöra biblioteksavdelningen för detta objekt',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.logsCleared' => 'Loggar rensade',
|
||||
'messages.logsCopied' => 'Loggar kopierade till urklipp',
|
||||
'messages.noLogsAvailable' => 'Inga loggar tillgängliga',
|
||||
@@ -2759,7 +2727,6 @@ extension on TranslationsSv {
|
||||
'profiles.pinExplain' => '4-siffrig PIN krävs för att byta profiler.',
|
||||
'profiles.continueButton' => 'Fortsätt',
|
||||
'profiles.pinsDontMatch' => 'PIN-koderna stämmer inte överens',
|
||||
'profiles.initializeServicesFailed' => 'Kunde inte initiera profiltjänster',
|
||||
'connections.sectionTitle' => 'Anslutningar',
|
||||
'connections.addConnection' => 'Lägg till anslutning',
|
||||
'connections.addConnectionSubtitleNoProfile' => 'Logga in med Plex eller anslut en Jellyfin-server',
|
||||
@@ -2770,7 +2737,6 @@ extension on TranslationsSv {
|
||||
'connections.editJellyfinTitle' => 'Redigera Jellyfin-anslutning',
|
||||
'connections.editJellyfinIntro' => ({required Object serverName}) => 'Lägg till eller ta bort URL:er för ${serverName}. Plezy använder den nåbara URL:en med lägst latens.',
|
||||
'discover.title' => 'Upptäck',
|
||||
'discover.switchProfile' => 'Byt profil',
|
||||
'discover.noContentAvailable' => 'Inget innehåll tillgängligt',
|
||||
'discover.addMediaToLibraries' => 'Lägg till media till dina bibliotek',
|
||||
'discover.continueWatching' => 'Fortsätt titta',
|
||||
@@ -2797,8 +2763,6 @@ extension on TranslationsSv {
|
||||
'errors.connectionFailed' => 'Kan inte ansluta till mediaserver',
|
||||
'errors.failedToLoad' => ({required Object context, required Object error}) => 'Misslyckades att ladda ${context}: ${error}',
|
||||
'errors.noClientAvailable' => 'Ingen klient tillgänglig',
|
||||
'errors.authenticationFailed' => ({required Object error}) => 'Autentisering misslyckades: ${error}',
|
||||
'errors.couldNotLaunchUrl' => 'Kunde inte öppna autentiserings-URL',
|
||||
'errors.pleaseEnterToken' => 'Vänligen ange en token',
|
||||
'errors.invalidToken' => 'Ogiltig token',
|
||||
'errors.failedToVerifyToken' => ({required Object error}) => 'Misslyckades att verifiera token: ${error}',
|
||||
@@ -2823,6 +2787,8 @@ extension on TranslationsSv {
|
||||
'libraries.allLibrariesHidden' => 'Alla bibliotek är dolda',
|
||||
'libraries.hiddenLibrariesCount' => ({required Object count}) => 'Dolda bibliotek (${count})',
|
||||
'libraries.thisLibraryIsEmpty' => 'Detta bibliotek är tomt',
|
||||
'libraries.noItemsMatchFilters' => 'Inga objekt matchar de aktiva filtren',
|
||||
'libraries.resetFilters' => 'Återställ filter',
|
||||
'libraries.all' => 'Alla',
|
||||
'libraries.clearAll' => 'Rensa alla',
|
||||
'libraries.scanLibraryConfirm' => ({required Object title}) => 'Är du säker på att du vill skanna "${title}"?',
|
||||
@@ -2871,7 +2837,6 @@ extension on TranslationsSv {
|
||||
'libraries.sortLabels.communityRating' => 'Användarbetyg',
|
||||
'libraries.sortLabels.criticRating' => 'Kritikerbetyg',
|
||||
'libraries.sortLabels.userRating' => 'Användarbetyg',
|
||||
'libraries.sortLabels.lastPlayed' => 'Senast spelad',
|
||||
'libraries.sortLabels.datePlayed' => 'Speldatum',
|
||||
'libraries.sortLabels.playCount' => 'Antal spelningar',
|
||||
'libraries.sortLabels.productionYear' => 'Produktionsår',
|
||||
@@ -2885,14 +2850,11 @@ extension on TranslationsSv {
|
||||
'libraries.sortLabels.dateShared' => 'Delningsdatum',
|
||||
'libraries.sortLabels.latestEpisodeAirDate' => 'Senaste avsnittets sändningsdatum',
|
||||
'libraries.sortLabels.lastEpisodeDateAdded' => 'Datum då senaste avsnittet lades till',
|
||||
'libraries.noItemsMatchFilters' => 'Inga objekt matchar de aktiva filtren',
|
||||
'libraries.resetFilters' => 'Återställ filter',
|
||||
'about.title' => 'Om',
|
||||
'about.openSourceLicenses' => 'Öppen källkod-licenser',
|
||||
'about.versionLabel' => ({required Object version}) => 'Version ${version}',
|
||||
'about.appDescription' => 'En vacker Plex- och Jellyfin-klient för Flutter',
|
||||
'about.viewLicensesDescription' => 'Visa licenser för tredjepartsbibliotek',
|
||||
'serverSelection.allServerConnectionsFailed' => 'Kunde inte ansluta till några servrar. Kontrollera nätverket.',
|
||||
'serverSelection.noServersFoundForAccount' => ({required Object username, required Object email}) => 'Inga servrar hittades för ${username} (${email})',
|
||||
'serverSelection.failedToLoadServers' => ({required Object error}) => 'Misslyckades att ladda servrar: ${error}',
|
||||
'hubDetail.title' => 'Titel',
|
||||
@@ -2938,7 +2900,6 @@ extension on TranslationsSv {
|
||||
'explore.watchlistUpdateFailed' => 'Det gick inte att uppdatera bevakningslistan',
|
||||
'explore.notInLibrary' => 'Finns inte i ditt bibliotek',
|
||||
'explore.inTheseLibraries' => 'I dessa bibliotek',
|
||||
'explore.availableOn' => ({required Object server}) => 'Tillgänglig på ${server}',
|
||||
'explore.checkingLibrary' => 'Kontrollerar ditt bibliotek...',
|
||||
'explore.emptyTitle' => 'Inget här ännu',
|
||||
'explore.emptyMessage' => ({required Object source}) => 'Rader från ${source} visas här när de har innehåll.',
|
||||
@@ -2950,6 +2911,8 @@ extension on TranslationsSv {
|
||||
'liveTv.guide' => 'Programguide',
|
||||
'liveTv.noChannels' => 'Inga kanaler tillgängliga',
|
||||
'liveTv.noDvr' => 'Ingen DVR konfigurerad på någon server',
|
||||
'liveTv.serverUnavailable' => 'Live-tv-servern är inte tillgänglig.',
|
||||
'liveTv.serverNotConnected' => 'Live-tv-servern är inte ansluten.',
|
||||
'liveTv.noPrograms' => 'Ingen programdata tillgänglig',
|
||||
'liveTv.liveStreamFailed' => 'Liveström misslyckades',
|
||||
'liveTv.unknownProgram' => 'Okänt program',
|
||||
@@ -2985,7 +2948,6 @@ extension on TranslationsSv {
|
||||
'liveTv.scheduledRecordings' => 'Schemalagda',
|
||||
'liveTv.recordingRules' => 'Inspelningsregler',
|
||||
'liveTv.noScheduledRecordings' => 'Inga schemalagda inspelningar',
|
||||
'liveTv.noRecordingRules' => 'Inga inspelningsregler än',
|
||||
'liveTv.manageRecording' => 'Hantera inspelning',
|
||||
'liveTv.cancelRecording' => 'Avbryt inspelning',
|
||||
'liveTv.cancelRecordingTitle' => 'Avbryt denna inspelning?',
|
||||
@@ -3002,7 +2964,6 @@ extension on TranslationsSv {
|
||||
'liveTv.recordingCancelled' => 'Inspelning avbruten',
|
||||
'liveTv.recordingRuleDeleted' => 'Inspelningsregel borttagen',
|
||||
'liveTv.processRecordingRules' => 'Utvärdera regler igen',
|
||||
'liveTv.loadingRecordings' => 'Laddar inspelningar ...',
|
||||
'liveTv.recordingInProgress' => 'Spelar in nu',
|
||||
'liveTv.recordingsCount' => ({required Object count}) => '${count} schemalagda',
|
||||
'liveTv.editRule' => 'Redigera regel',
|
||||
@@ -3014,7 +2975,6 @@ extension on TranslationsSv {
|
||||
'collections.title' => 'Samlingar',
|
||||
'collections.collection' => 'Samling',
|
||||
'collections.empty' => 'Samlingen är tom',
|
||||
'collections.unknownLibrarySection' => 'Kan inte ta bort: okänd bibliotekssektion',
|
||||
'collections.deleteCollection' => 'Ta bort samling',
|
||||
'collections.deleteConfirm' => ({required Object title}) => 'Ta bort "${title}"? Detta kan inte ångras.',
|
||||
'collections.deleted' => 'Samling borttagen',
|
||||
@@ -3052,6 +3012,7 @@ extension on TranslationsSv {
|
||||
'playlists.itemAdded' => 'Tillagd i spellista',
|
||||
'playlists.itemRemoved' => 'Borttagen från spellista',
|
||||
'playlists.selectPlaylist' => 'Välj spellista',
|
||||
'playlists.searchPlaylists' => 'Sök i spellistor...',
|
||||
'playlists.errorCreating' => 'Det gick inte att skapa spellista',
|
||||
'playlists.errorDeleting' => 'Det gick inte att ta bort spellista',
|
||||
'playlists.errorLoading' => 'Det gick inte att ladda spellistor',
|
||||
@@ -3134,22 +3095,20 @@ extension on TranslationsSv {
|
||||
'watchTogether.participantResumed' => ({required Object name}) => '${name} återupptog',
|
||||
'watchTogether.participantSeeked' => ({required Object name}) => '${name} spolade',
|
||||
'watchTogether.participantBuffering' => ({required Object name}) => '${name} buffrar',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} använder en äldre appversion — synkronisering är inte tillgänglig',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Återupptar utan ${name}',
|
||||
'watchTogether.waitingForParticipants' => 'Väntar på att andra laddar...',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Väntar på ${name}...',
|
||||
'watchTogether.recentRooms' => 'Senaste rum',
|
||||
'watchTogether.renameRoom' => 'Byt namn på rum',
|
||||
'watchTogether.removeRoom' => 'Ta bort',
|
||||
'watchTogether.guestSwitchUnavailable' => 'Kunde inte byta — server inte tillgänglig för synkronisering',
|
||||
'watchTogether.guestSwitchFailed' => 'Kunde inte byta — innehåll hittades inte på denna server',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} använder en äldre appversion — synkronisering är inte tillgänglig',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => 'Återupptar utan ${name}',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => 'Väntar på ${name}...',
|
||||
'downloads.title' => 'Nedladdningar',
|
||||
'downloads.manage' => 'Hantera',
|
||||
'downloads.tvShows' => 'TV-serier',
|
||||
'downloads.movies' => 'Filmer',
|
||||
'downloads.music' => 'Musik',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.tracksQueued' => ({required Object count}) => '${count} låtar i nedladdningskö',
|
||||
'downloads.noDownloads' => 'Inga nedladdningar ännu',
|
||||
'downloads.noDownloadsDescription' => 'Nedladdat innehåll visas här för offline-visning',
|
||||
@@ -3164,6 +3123,8 @@ extension on TranslationsSv {
|
||||
'downloads.deleteConfirm' => ({required Object title}) => 'Ta bort "${title}" från den här enheten?',
|
||||
'downloads.cancelledDownloadTitle' => 'Avbruten nedladdning',
|
||||
'downloads.cancelledDownloadMessage' => 'Den här nedladdningen avbröts. Vad vill du göra?',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.allEpisodesAlreadyDownloaded' => 'Alla avsnitt är redan nedladdade',
|
||||
'downloads.resumeDownload' => 'Återuppta nedladdning',
|
||||
'downloads.cancelledDownload' => 'Avbruten nedladdning',
|
||||
@@ -3187,7 +3148,6 @@ extension on TranslationsSv {
|
||||
'downloads.customAmount' => 'Ange antal...',
|
||||
'downloads.includeSpecials' => 'Inkludera specialavsnitt',
|
||||
'downloads.howManyEpisodes' => 'Hur många avsnitt?',
|
||||
'downloads.itemsQueued' => ({required Object count}) => '${count} objekt köade för nedladdning',
|
||||
'downloads.keepSynced' => 'Håll synkroniserad',
|
||||
'downloads.downloadOnce' => 'Ladda ner en gång',
|
||||
'downloads.keepNUnwatched' => ({required Object count}) => 'Behåll ${count} osedda',
|
||||
@@ -3231,7 +3191,6 @@ extension on TranslationsSv {
|
||||
'companionRemote.connectedTo' => ({required Object name}) => 'Ansluten till ${name}',
|
||||
'companionRemote.unknownDevice' => 'Okänd enhet',
|
||||
'companionRemote.session.startingServer' => 'Startar fjärrserver...',
|
||||
'companionRemote.session.failedToCreate' => 'Kunde inte starta fjärrserver:',
|
||||
'companionRemote.session.hostAddress' => 'Värdadress',
|
||||
'companionRemote.session.connected' => 'Ansluten',
|
||||
'companionRemote.session.serverRunning' => 'Fjärrserver aktiv',
|
||||
@@ -3286,6 +3245,8 @@ extension on TranslationsSv {
|
||||
'companionRemote.remote.searchHint' => 'Sök på datorn...',
|
||||
'companionRemote.errors.noNetworkInterface' => 'Inget nätverksgränssnitt hittades',
|
||||
'companionRemote.errors.authenticationFailed' => 'Autentisering misslyckades',
|
||||
'companionRemote.errors.serverStartFailed' => ({required Object error}) => 'Det gick inte att starta fjärrservern: ${error}',
|
||||
'companionRemote.errors.commandFailed' => ({required Object error}) => 'Det gick inte att skicka fjärrkommandot: ${error}',
|
||||
'companionRemote.errors.joinTimedOut' => 'Tidsgräns vid anslutning till session',
|
||||
'companionRemote.errors.failedToConnectAnyAddress' => 'Kunde inte ansluta till någon adress',
|
||||
'companionRemote.errors.connectionLostAfterAttempts' => ({required Object attempts}) => 'Anslutning förlorad efter ${attempts} försök',
|
||||
@@ -3530,7 +3491,6 @@ extension on TranslationsSv {
|
||||
'addServer.quickConnectFailed' => ({required Object error}) => 'Quick Connect misslyckades: ${error}',
|
||||
'addServer.addPlexTitle' => 'Logga in med Plex',
|
||||
'addServer.pinExpired' => 'PIN-koden gick ut innan inloggning. Försök igen.',
|
||||
'addServer.duplicatePlexAccount' => 'Redan inloggad på Plex. Logga ut för att byta konto.',
|
||||
'addServer.failedToRegisterAccount' => ({required Object error}) => 'Kunde inte registrera kontot: ${error}',
|
||||
'addServer.enterJellyfinUrlError' => 'Ange URL till din Jellyfin-server',
|
||||
'addServer.addConnectionTitle' => 'Lägg till anslutning',
|
||||
|
||||
+60
-100
@@ -53,7 +53,6 @@ class TranslationsZh extends Translations with BaseTranslations<AppLocale, Trans
|
||||
@override late final _TranslationsAccessibilityZh accessibility = _TranslationsAccessibilityZh._(_root);
|
||||
@override late final _TranslationsTooltipsZh tooltips = _TranslationsTooltipsZh._(_root);
|
||||
@override late final _TranslationsVideoControlsZh videoControls = _TranslationsVideoControlsZh._(_root);
|
||||
@override late final _TranslationsUserStatusZh userStatus = _TranslationsUserStatusZh._(_root);
|
||||
@override late final _TranslationsMessagesZh messages = _TranslationsMessagesZh._(_root);
|
||||
@override late final _TranslationsSubtitlingStylingZh subtitlingStyling = _TranslationsSubtitlingStylingZh._(_root);
|
||||
@override late final _TranslationsMpvConfigZh mpvConfig = _TranslationsMpvConfigZh._(_root);
|
||||
@@ -107,7 +106,6 @@ class _TranslationsAuthZh extends TranslationsAuthEn {
|
||||
final TranslationsZh _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get signIn => '登录';
|
||||
@override String get signInWithPlex => '使用 Plex 登录';
|
||||
@override String get showQRCode => '显示二维码';
|
||||
@override String get authenticate => '验证';
|
||||
@@ -167,10 +165,8 @@ class _TranslationsCommonZh extends TranslationsCommonEn {
|
||||
@override String episodeNumberTitle({required Object number, required Object title}) => '第${number}集 - ${title}';
|
||||
@override String chapterNumber({required Object number}) => '章节 ${number}';
|
||||
@override String get reconnect => '重新连接';
|
||||
@override String get exit => '退出';
|
||||
@override String get viewAll => '查看全部';
|
||||
@override String get checkingNetwork => '正在检查网络...';
|
||||
@override String get refreshingServers => '正在刷新服务器...';
|
||||
@override String get loadingServers => '正在加载服务器...';
|
||||
@override String get connectingToServers => '正在连接服务器...';
|
||||
@override String get startingOfflineMode => '正在启动离线模式...';
|
||||
@@ -271,6 +267,12 @@ class _TranslationsSettingsZh extends TranslationsSettingsEn {
|
||||
@override String get tvFullCardLayoutDescription => '使用仅显示图片的 TV 卡片,并叠加演员姓名';
|
||||
@override String get focusGlow => '焦点光晕';
|
||||
@override String get focusGlowDescription => '在获得焦点的卡片周围显示柔和的光晕';
|
||||
@override String get visualEffects => '视觉效果';
|
||||
@override String get visualEffectsAuto => '自动';
|
||||
@override String get visualEffectsAutoDescription => '在性能较低的设备上自动减少效果';
|
||||
@override String get visualEffectsFull => '完整';
|
||||
@override String get visualEffectsReduced => '简化';
|
||||
@override String get visualEffectsReducedDescription => '减少动画并使用较低分辨率的封面图片';
|
||||
@override String get hideSpoilers => '隐藏未看剧集的剧透内容';
|
||||
@override String get hideSpoilersDescription => '模糊未观看剧集的缩略图和描述';
|
||||
@override String get playerBackend => '播放器引擎';
|
||||
@@ -283,7 +285,7 @@ class _TranslationsSettingsZh extends TranslationsSettingsEn {
|
||||
@override String get bufferSizeAuto => '自动(推荐)';
|
||||
@override String bufferSizeWarning({required Object heap, required Object size}) => '可用内存 ${heap}MB。${size}MB 缓冲可能影响播放。';
|
||||
@override String get defaultQualityTitle => '默认画质';
|
||||
@override String get defaultQualityDescription => '开始播放时使用。较低的值可减少带宽。';
|
||||
@override String get musicQualityTitle => '音乐质量';
|
||||
@override String get subtitleStyling => '字幕样式';
|
||||
@override String get subtitleStylingDescription => '调整字幕外观';
|
||||
@override String get smallSkipDuration => '短跳过时长';
|
||||
@@ -377,10 +379,9 @@ class _TranslationsSettingsZh extends TranslationsSettingsEn {
|
||||
@override String maxVolumePercent({required Object percent}) => '${percent}%';
|
||||
@override String get discordRichPresence => 'Discord 动态状态';
|
||||
@override String get discordRichPresenceDescription => '在 Discord 上显示您正在观看的内容';
|
||||
@override String get trakt => 'Trakt';
|
||||
@override String get traktDescription => '将观看历史与 Trakt 同步';
|
||||
@override String get services => '服务';
|
||||
@override String get servicesDescription => '连接 Trakt、MyAnimeList、Seerr 等';
|
||||
@override String get manageLibrariesDescription => '重新排序和隐藏媒体库';
|
||||
@override String get companionRemoteServer => '配套遥控服务器';
|
||||
@override String get companionRemoteServerDescription => '允许网络上的移动设备控制此应用';
|
||||
@override String get autoPip => '自动画中画';
|
||||
@@ -443,7 +444,6 @@ class _TranslationsSettingsZh extends TranslationsSettingsEn {
|
||||
@override String get showNavBarLabels => '显示导航栏标签';
|
||||
@override String get showNavBarLabelsDescription => '在导航栏图标下方显示文字标签';
|
||||
@override String get startupSection => '启动页面';
|
||||
@override String get startupSectionDescription => '选择 Plezy 启动时打开的页面';
|
||||
@override String get liveTvDefaultFavorites => '默认显示收藏频道';
|
||||
@override String get liveTvDefaultFavoritesDescription => '打开直播电视时仅显示收藏频道';
|
||||
@override String get display => '显示';
|
||||
@@ -455,13 +455,6 @@ class _TranslationsSettingsZh extends TranslationsSettingsEn {
|
||||
@override String get subtitlesAndConfig => '字幕与配置';
|
||||
@override String get seekAndTiming => '跳转与计时';
|
||||
@override String get behavior => '行为';
|
||||
@override String get manageLibrariesDescription => '重新排序和隐藏媒体库';
|
||||
@override String get visualEffects => '视觉效果';
|
||||
@override String get visualEffectsAuto => '自动';
|
||||
@override String get visualEffectsAutoDescription => '在性能较低的设备上自动减少效果';
|
||||
@override String get visualEffectsFull => '完整';
|
||||
@override String get visualEffectsReduced => '简化';
|
||||
@override String get visualEffectsReducedDescription => '减少动画并使用较低分辨率的封面图片';
|
||||
}
|
||||
|
||||
// Path: search
|
||||
@@ -559,14 +552,11 @@ class _TranslationsRateSheetZh extends TranslationsRateSheetEn {
|
||||
// Translations
|
||||
@override String get title => '评分';
|
||||
@override String get server => '服务器';
|
||||
@override String starValue({required Object rating}) => '${rating} / 5';
|
||||
@override String scoreValue({required Object score}) => '${score} / 10';
|
||||
@override String get setScore => '设置分数';
|
||||
@override String get favorite => '收藏';
|
||||
@override String get favorited => '已收藏';
|
||||
@override String get saved => '已保存';
|
||||
@override String get notAvailable => '未找到匹配项';
|
||||
@override String get noConnectedServices => '在设置中连接服务,即可在此评分。';
|
||||
@override String get favorite => '收藏';
|
||||
@override String get favorited => '已收藏';
|
||||
}
|
||||
|
||||
// Path: accessibility
|
||||
@@ -584,6 +574,14 @@ class _TranslationsAccessibilityZh extends TranslationsAccessibilityEn {
|
||||
@override String mediaCardPartiallyWatched({required Object percent}) => '已观看 ${percent} 百分比';
|
||||
@override String get mediaCardUnwatched => '未观看';
|
||||
@override String get tapToPlay => '点击播放';
|
||||
@override String get decrease => '减小';
|
||||
@override String get increase => '增大';
|
||||
@override String decreaseValue({required Object label}) => '减小${label}';
|
||||
@override String increaseValue({required Object label}) => '增大${label}';
|
||||
@override String get hue => '色相';
|
||||
@override String get saturation => '饱和度';
|
||||
@override String get brightness => '亮度';
|
||||
@override String get hexColor => '十六进制颜色';
|
||||
}
|
||||
|
||||
// Path: tooltips
|
||||
@@ -643,13 +641,11 @@ class _TranslationsVideoControlsZh extends TranslationsVideoControlsEn {
|
||||
@override String get settingsButton => '播放设置';
|
||||
@override String get tracksButton => '音频和字幕';
|
||||
@override String get chaptersButton => '章节';
|
||||
@override String get versionsButton => '视频版本';
|
||||
@override String get versionQualityButton => '版本与画质';
|
||||
@override String get versionColumnHeader => '版本';
|
||||
@override String get qualityColumnHeader => '画质';
|
||||
@override String get qualityOriginal => '原始';
|
||||
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
|
||||
@override String qualityBandwidthEstimate({required Object bitrate}) => '~${bitrate} Mbps';
|
||||
@override String get transcodeUnavailableFallback => '转码不可用 — 以原始画质播放';
|
||||
@override String get pipButton => '画中画模式';
|
||||
@override String get aspectRatioButton => '宽高比';
|
||||
@@ -685,19 +681,6 @@ class _TranslationsVideoControlsZh extends TranslationsVideoControlsEn {
|
||||
@override String get searchLanguages => '搜索语言...';
|
||||
}
|
||||
|
||||
// Path: userStatus
|
||||
class _TranslationsUserStatusZh extends TranslationsUserStatusEn {
|
||||
_TranslationsUserStatusZh._(TranslationsZh root) : this._root = root, super.internal(root);
|
||||
|
||||
final TranslationsZh _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get admin => '管理员';
|
||||
@override String get restricted => '受限';
|
||||
@override String get protected => '受保护';
|
||||
@override String get current => '当前';
|
||||
}
|
||||
|
||||
// Path: messages
|
||||
class _TranslationsMessagesZh extends TranslationsMessagesEn {
|
||||
_TranslationsMessagesZh._(TranslationsZh root) : this._root = root, super.internal(root);
|
||||
@@ -873,7 +856,6 @@ class _TranslationsProfilesZh extends TranslationsProfilesEn {
|
||||
@override String get pinExplain => '切换个人资料需要 4 位 PIN。';
|
||||
@override String get continueButton => '继续';
|
||||
@override String get pinsDontMatch => 'PIN 不匹配';
|
||||
@override String get initializeServicesFailed => '无法初始化个人资料服务';
|
||||
}
|
||||
|
||||
// Path: connections
|
||||
@@ -902,7 +884,6 @@ class _TranslationsDiscoverZh extends TranslationsDiscoverEn {
|
||||
|
||||
// Translations
|
||||
@override String get title => '发现';
|
||||
@override String get switchProfile => '切换用户';
|
||||
@override String get noContentAvailable => '没有可用内容';
|
||||
@override String get addMediaToLibraries => '请向你的媒体库添加一些媒体';
|
||||
@override String get continueWatching => '继续观看';
|
||||
@@ -938,8 +919,6 @@ class _TranslationsErrorsZh extends TranslationsErrorsEn {
|
||||
@override String get connectionFailed => '无法连接到媒体服务器';
|
||||
@override String failedToLoad({required Object context, required Object error}) => '无法加载 ${context}: ${error}';
|
||||
@override String get noClientAvailable => '没有可用客户端';
|
||||
@override String authenticationFailed({required Object error}) => '验证失败: ${error}';
|
||||
@override String get couldNotLaunchUrl => '无法打开授权 URL';
|
||||
@override String get pleaseEnterToken => '请输入一个令牌';
|
||||
@override String get invalidToken => '令牌无效';
|
||||
@override String failedToVerifyToken({required Object error}) => '无法验证令牌: ${error}';
|
||||
@@ -973,6 +952,8 @@ class _TranslationsLibrariesZh extends TranslationsLibrariesEn {
|
||||
@override String get allLibrariesHidden => '所有媒体库已隐藏';
|
||||
@override String hiddenLibrariesCount({required Object count}) => '已隐藏的媒体库 (${count})';
|
||||
@override String get thisLibraryIsEmpty => '此媒体库为空';
|
||||
@override String get noItemsMatchFilters => '没有项目符合当前筛选条件';
|
||||
@override String get resetFilters => '重置筛选条件';
|
||||
@override String get all => '全部';
|
||||
@override String get clearAll => '全部清除';
|
||||
@override String scanLibraryConfirm({required Object title}) => '确定要扫描 “${title}” 吗?';
|
||||
@@ -998,8 +979,6 @@ class _TranslationsLibrariesZh extends TranslationsLibrariesEn {
|
||||
@override late final _TranslationsLibrariesGroupingsZh groupings = _TranslationsLibrariesGroupingsZh._(_root);
|
||||
@override late final _TranslationsLibrariesFilterCategoriesZh filterCategories = _TranslationsLibrariesFilterCategoriesZh._(_root);
|
||||
@override late final _TranslationsLibrariesSortLabelsZh sortLabels = _TranslationsLibrariesSortLabelsZh._(_root);
|
||||
@override String get noItemsMatchFilters => '没有项目符合当前筛选条件';
|
||||
@override String get resetFilters => '重置筛选条件';
|
||||
}
|
||||
|
||||
// Path: about
|
||||
@@ -1023,7 +1002,6 @@ class _TranslationsServerSelectionZh extends TranslationsServerSelectionEn {
|
||||
final TranslationsZh _root; // ignore: unused_field
|
||||
|
||||
// Translations
|
||||
@override String get allServerConnectionsFailed => '无法连接到任何服务器。请检查网络。';
|
||||
@override String noServersFoundForAccount({required Object username, required Object email}) => '未找到 ${username} (${email}) 的服务器';
|
||||
@override String failedToLoadServers({required Object error}) => '无法加载服务器: ${error}';
|
||||
}
|
||||
@@ -1101,7 +1079,6 @@ class _TranslationsExploreZh extends TranslationsExploreEn {
|
||||
@override String get watchlistUpdateFailed => '无法更新想看列表';
|
||||
@override String get notInLibrary => '不在你的媒体库中';
|
||||
@override String get inTheseLibraries => '在这些媒体库中';
|
||||
@override String availableOn({required Object server}) => '在 ${server} 上可用';
|
||||
@override String get checkingLibrary => '正在检查你的媒体库...';
|
||||
@override String get emptyTitle => '这里还什么都没有';
|
||||
@override String emptyMessage({required Object source}) => '当 ${source} 有内容时,相关内容将显示在这里。';
|
||||
@@ -1122,6 +1099,8 @@ class _TranslationsLiveTvZh extends TranslationsLiveTvEn {
|
||||
@override String get guide => '节目指南';
|
||||
@override String get noChannels => '没有可用的频道';
|
||||
@override String get noDvr => '没有服务器配置了DVR';
|
||||
@override String get serverUnavailable => '直播电视服务器不可用。';
|
||||
@override String get serverNotConnected => '直播电视服务器未连接。';
|
||||
@override String get noPrograms => '没有可用的节目数据';
|
||||
@override String get liveStreamFailed => '直播流失败';
|
||||
@override String get unknownProgram => '未知节目';
|
||||
@@ -1157,7 +1136,6 @@ class _TranslationsLiveTvZh extends TranslationsLiveTvEn {
|
||||
@override String get scheduledRecordings => '已安排';
|
||||
@override String get recordingRules => '录制规则';
|
||||
@override String get noScheduledRecordings => '没有安排的录制';
|
||||
@override String get noRecordingRules => '还没有录制规则';
|
||||
@override String get manageRecording => '管理录制';
|
||||
@override String get cancelRecording => '取消录制';
|
||||
@override String get cancelRecordingTitle => '取消此次录制?';
|
||||
@@ -1174,7 +1152,6 @@ class _TranslationsLiveTvZh extends TranslationsLiveTvEn {
|
||||
@override String get recordingCancelled => '录制已取消';
|
||||
@override String get recordingRuleDeleted => '录制规则已删除';
|
||||
@override String get processRecordingRules => '重新评估规则';
|
||||
@override String get loadingRecordings => '正在加载录制内容...';
|
||||
@override String get recordingInProgress => '正在录制';
|
||||
@override String recordingsCount({required Object count}) => '已安排 ${count} 个';
|
||||
@override String get editRule => '编辑规则';
|
||||
@@ -1195,7 +1172,6 @@ class _TranslationsCollectionsZh extends TranslationsCollectionsEn {
|
||||
@override String get title => '合集';
|
||||
@override String get collection => '合集';
|
||||
@override String get empty => '合集为空';
|
||||
@override String get unknownLibrarySection => '无法删除:未知的媒体库分区';
|
||||
@override String get deleteCollection => '删除合集';
|
||||
@override String deleteConfirm({required Object title}) => '要删除“${title}”吗?此操作无法撤销。';
|
||||
@override String get deleted => '已删除合集';
|
||||
@@ -1242,6 +1218,7 @@ class _TranslationsPlaylistsZh extends TranslationsPlaylistsEn {
|
||||
@override String get itemAdded => '已添加到播放列表';
|
||||
@override String get itemRemoved => '已从播放列表中移除';
|
||||
@override String get selectPlaylist => '选择播放列表';
|
||||
@override String get searchPlaylists => '搜索播放列表...';
|
||||
@override String get errorCreating => '创建播放列表失败';
|
||||
@override String get errorDeleting => '删除播放列表失败';
|
||||
@override String get errorLoading => '加载播放列表失败';
|
||||
@@ -1344,15 +1321,15 @@ class _TranslationsWatchTogetherZh extends TranslationsWatchTogetherEn {
|
||||
@override String participantResumed({required Object name}) => '${name} 继续播放了';
|
||||
@override String participantSeeked({required Object name}) => '${name} 跳转了';
|
||||
@override String participantBuffering({required Object name}) => '${name} 正在缓冲';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} 正在使用较旧版本的应用,无法同步';
|
||||
@override String resumingWithout({required Object name}) => '不等待 ${name},继续播放';
|
||||
@override String get waitingForParticipants => '等待其他人加载...';
|
||||
@override String waitingForName({required Object name}) => '正在等待 ${name}...';
|
||||
@override String get recentRooms => '最近的房间';
|
||||
@override String get renameRoom => '重命名房间';
|
||||
@override String get removeRoom => '移除';
|
||||
@override String get guestSwitchUnavailable => '无法切换 — 服务器无法同步';
|
||||
@override String get guestSwitchFailed => '无法切换 — 在此服务器上未找到内容';
|
||||
@override String participantNeedsUpdate({required Object name}) => '${name} 正在使用较旧版本的应用,无法同步';
|
||||
@override String resumingWithout({required Object name}) => '不等待 ${name},继续播放';
|
||||
@override String waitingForName({required Object name}) => '正在等待 ${name}...';
|
||||
}
|
||||
|
||||
// Path: downloads
|
||||
@@ -1404,7 +1381,6 @@ class _TranslationsDownloadsZh extends TranslationsDownloadsEn {
|
||||
@override String get customAmount => '自定义数量...';
|
||||
@override String get includeSpecials => '包含特别篇';
|
||||
@override String get howManyEpisodes => '下载几集?';
|
||||
@override String itemsQueued({required Object count}) => '${count} 个项目已加入下载队列';
|
||||
@override String get keepSynced => '保持同步';
|
||||
@override String get downloadOnce => '下载一次';
|
||||
@override String keepNUnwatched({required Object count}) => '保留${count}个未观看';
|
||||
@@ -1778,7 +1754,6 @@ class _TranslationsAddServerZh extends TranslationsAddServerEn {
|
||||
@override String quickConnectFailed({required Object error}) => 'Quick Connect 失败: ${error}';
|
||||
@override String get addPlexTitle => '使用 Plex 登录';
|
||||
@override String get pinExpired => 'PIN 在登录前已过期。请重试。';
|
||||
@override String get duplicatePlexAccount => '已登录 Plex。请退出登录以切换账号。';
|
||||
@override String failedToRegisterAccount({required Object error}) => '注册帐户失败: ${error}';
|
||||
@override String get enterJellyfinUrlError => '输入你的 Jellyfin 服务器 URL';
|
||||
@override String get addConnectionTitle => '添加连接';
|
||||
@@ -1904,7 +1879,6 @@ class _TranslationsLibrariesSortLabelsZh extends TranslationsLibrariesSortLabels
|
||||
@override String get communityRating => '社区评分';
|
||||
@override String get criticRating => '影评人评分';
|
||||
@override String get userRating => '用户评分';
|
||||
@override String get lastPlayed => '最近播放';
|
||||
@override String get datePlayed => '播放日期';
|
||||
@override String get playCount => '播放次数';
|
||||
@override String get productionYear => '制作年份';
|
||||
@@ -1963,7 +1937,6 @@ class _TranslationsCompanionRemoteSessionZh extends TranslationsCompanionRemoteS
|
||||
|
||||
// Translations
|
||||
@override String get startingServer => '正在启动远程服务器...';
|
||||
@override String get failedToCreate => '启动远程服务器失败:';
|
||||
@override String get hostAddress => '主机地址';
|
||||
@override String get connected => '已连接';
|
||||
@override String get serverRunning => '远程服务器已启动';
|
||||
@@ -2045,6 +2018,8 @@ class _TranslationsCompanionRemoteErrorsZh extends TranslationsCompanionRemoteEr
|
||||
// Translations
|
||||
@override String get noNetworkInterface => '未找到网络接口';
|
||||
@override String get authenticationFailed => '身份验证失败';
|
||||
@override String serverStartFailed({required Object error}) => '无法启动远程服务器:${error}';
|
||||
@override String commandFailed({required Object error}) => '无法发送远程命令:${error}';
|
||||
@override String get joinTimedOut => '加入会话超时';
|
||||
@override String get failedToConnectAnyAddress => '无法连接到任何地址';
|
||||
@override String connectionLostAfterAttempts({required Object attempts}) => '${attempts} 次尝试后连接丢失';
|
||||
@@ -2121,7 +2096,6 @@ extension on TranslationsZh {
|
||||
dynamic _flatMapFunction(String path) {
|
||||
return switch (path) {
|
||||
'app.title' => 'Plezy',
|
||||
'auth.signIn' => '登录',
|
||||
'auth.signInWithPlex' => '使用 Plex 登录',
|
||||
'auth.showQRCode' => '显示二维码',
|
||||
'auth.authenticate' => '验证',
|
||||
@@ -2172,10 +2146,8 @@ extension on TranslationsZh {
|
||||
'common.episodeNumberTitle' => ({required Object number, required Object title}) => '第${number}集 - ${title}',
|
||||
'common.chapterNumber' => ({required Object number}) => '章节 ${number}',
|
||||
'common.reconnect' => '重新连接',
|
||||
'common.exit' => '退出',
|
||||
'common.viewAll' => '查看全部',
|
||||
'common.checkingNetwork' => '正在检查网络...',
|
||||
'common.refreshingServers' => '正在刷新服务器...',
|
||||
'common.loadingServers' => '正在加载服务器...',
|
||||
'common.connectingToServers' => '正在连接服务器...',
|
||||
'common.startingOfflineMode' => '正在启动离线模式...',
|
||||
@@ -2249,6 +2221,12 @@ extension on TranslationsZh {
|
||||
'settings.tvFullCardLayoutDescription' => '使用仅显示图片的 TV 卡片,并叠加演员姓名',
|
||||
'settings.focusGlow' => '焦点光晕',
|
||||
'settings.focusGlowDescription' => '在获得焦点的卡片周围显示柔和的光晕',
|
||||
'settings.visualEffects' => '视觉效果',
|
||||
'settings.visualEffectsAuto' => '自动',
|
||||
'settings.visualEffectsAutoDescription' => '在性能较低的设备上自动减少效果',
|
||||
'settings.visualEffectsFull' => '完整',
|
||||
'settings.visualEffectsReduced' => '简化',
|
||||
'settings.visualEffectsReducedDescription' => '减少动画并使用较低分辨率的封面图片',
|
||||
'settings.hideSpoilers' => '隐藏未看剧集的剧透内容',
|
||||
'settings.hideSpoilersDescription' => '模糊未观看剧集的缩略图和描述',
|
||||
'settings.playerBackend' => '播放器引擎',
|
||||
@@ -2261,7 +2239,7 @@ extension on TranslationsZh {
|
||||
'settings.bufferSizeAuto' => '自动(推荐)',
|
||||
'settings.bufferSizeWarning' => ({required Object heap, required Object size}) => '可用内存 ${heap}MB。${size}MB 缓冲可能影响播放。',
|
||||
'settings.defaultQualityTitle' => '默认画质',
|
||||
'settings.defaultQualityDescription' => '开始播放时使用。较低的值可减少带宽。',
|
||||
'settings.musicQualityTitle' => '音乐质量',
|
||||
'settings.subtitleStyling' => '字幕样式',
|
||||
'settings.subtitleStylingDescription' => '调整字幕外观',
|
||||
'settings.smallSkipDuration' => '短跳过时长',
|
||||
@@ -2355,10 +2333,9 @@ extension on TranslationsZh {
|
||||
'settings.maxVolumePercent' => ({required Object percent}) => '${percent}%',
|
||||
'settings.discordRichPresence' => 'Discord 动态状态',
|
||||
'settings.discordRichPresenceDescription' => '在 Discord 上显示您正在观看的内容',
|
||||
'settings.trakt' => 'Trakt',
|
||||
'settings.traktDescription' => '将观看历史与 Trakt 同步',
|
||||
'settings.services' => '服务',
|
||||
'settings.servicesDescription' => '连接 Trakt、MyAnimeList、Seerr 等',
|
||||
'settings.manageLibrariesDescription' => '重新排序和隐藏媒体库',
|
||||
'settings.companionRemoteServer' => '配套遥控服务器',
|
||||
'settings.companionRemoteServerDescription' => '允许网络上的移动设备控制此应用',
|
||||
'settings.autoPip' => '自动画中画',
|
||||
@@ -2421,7 +2398,6 @@ extension on TranslationsZh {
|
||||
'settings.showNavBarLabels' => '显示导航栏标签',
|
||||
'settings.showNavBarLabelsDescription' => '在导航栏图标下方显示文字标签',
|
||||
'settings.startupSection' => '启动页面',
|
||||
'settings.startupSectionDescription' => '选择 Plezy 启动时打开的页面',
|
||||
'settings.liveTvDefaultFavorites' => '默认显示收藏频道',
|
||||
'settings.liveTvDefaultFavoritesDescription' => '打开直播电视时仅显示收藏频道',
|
||||
'settings.display' => '显示',
|
||||
@@ -2433,13 +2409,6 @@ extension on TranslationsZh {
|
||||
'settings.subtitlesAndConfig' => '字幕与配置',
|
||||
'settings.seekAndTiming' => '跳转与计时',
|
||||
'settings.behavior' => '行为',
|
||||
'settings.manageLibrariesDescription' => '重新排序和隐藏媒体库',
|
||||
'settings.visualEffects' => '视觉效果',
|
||||
'settings.visualEffectsAuto' => '自动',
|
||||
'settings.visualEffectsAutoDescription' => '在性能较低的设备上自动减少效果',
|
||||
'settings.visualEffectsFull' => '完整',
|
||||
'settings.visualEffectsReduced' => '简化',
|
||||
'settings.visualEffectsReducedDescription' => '减少动画并使用较低分辨率的封面图片',
|
||||
'search.hint' => '搜索电影、系列、音乐...',
|
||||
'search.tryDifferentTerm' => '尝试不同的搜索词',
|
||||
'search.searchYourMedia' => '搜索媒体',
|
||||
@@ -2516,14 +2485,11 @@ extension on TranslationsZh {
|
||||
'mediaMenu.playVersion' => '播放版本...',
|
||||
'rateSheet.title' => '评分',
|
||||
'rateSheet.server' => '服务器',
|
||||
'rateSheet.starValue' => ({required Object rating}) => '${rating} / 5',
|
||||
'rateSheet.scoreValue' => ({required Object score}) => '${score} / 10',
|
||||
'rateSheet.setScore' => '设置分数',
|
||||
'rateSheet.favorite' => '收藏',
|
||||
'rateSheet.favorited' => '已收藏',
|
||||
'rateSheet.saved' => '已保存',
|
||||
'rateSheet.notAvailable' => '未找到匹配项',
|
||||
'rateSheet.noConnectedServices' => '在设置中连接服务,即可在此评分。',
|
||||
'rateSheet.favorite' => '收藏',
|
||||
'rateSheet.favorited' => '已收藏',
|
||||
'accessibility.mediaCardMovie' => ({required Object title}) => '${title}, 电影',
|
||||
'accessibility.mediaCardShow' => ({required Object title}) => '${title}, 电视剧',
|
||||
'accessibility.mediaCardEpisode' => ({required Object title, required Object episodeInfo}) => '${title}, ${episodeInfo}',
|
||||
@@ -2532,6 +2498,14 @@ extension on TranslationsZh {
|
||||
'accessibility.mediaCardPartiallyWatched' => ({required Object percent}) => '已观看 ${percent} 百分比',
|
||||
'accessibility.mediaCardUnwatched' => '未观看',
|
||||
'accessibility.tapToPlay' => '点击播放',
|
||||
'accessibility.decrease' => '减小',
|
||||
'accessibility.increase' => '增大',
|
||||
'accessibility.decreaseValue' => ({required Object label}) => '减小${label}',
|
||||
'accessibility.increaseValue' => ({required Object label}) => '增大${label}',
|
||||
'accessibility.hue' => '色相',
|
||||
'accessibility.saturation' => '饱和度',
|
||||
'accessibility.brightness' => '亮度',
|
||||
'accessibility.hexColor' => '十六进制颜色',
|
||||
'tooltips.shufflePlay' => '随机播放',
|
||||
'tooltips.playTrailer' => '播放预告片',
|
||||
'tooltips.markAsWatched' => '标记为已观看',
|
||||
@@ -2573,13 +2547,11 @@ extension on TranslationsZh {
|
||||
'videoControls.settingsButton' => '播放设置',
|
||||
'videoControls.tracksButton' => '音频和字幕',
|
||||
'videoControls.chaptersButton' => '章节',
|
||||
'videoControls.versionsButton' => '视频版本',
|
||||
'videoControls.versionQualityButton' => '版本与画质',
|
||||
'videoControls.versionColumnHeader' => '版本',
|
||||
'videoControls.qualityColumnHeader' => '画质',
|
||||
'videoControls.qualityOriginal' => '原始',
|
||||
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
|
||||
'videoControls.qualityBandwidthEstimate' => ({required Object bitrate}) => '~${bitrate} Mbps',
|
||||
'videoControls.transcodeUnavailableFallback' => '转码不可用 — 以原始画质播放',
|
||||
'videoControls.pipButton' => '画中画模式',
|
||||
'videoControls.aspectRatioButton' => '宽高比',
|
||||
@@ -2619,10 +2591,6 @@ extension on TranslationsZh {
|
||||
'videoControls.subtitleDownloaded' => '字幕已下载',
|
||||
'videoControls.subtitleDownloadFailed' => '字幕下载失败',
|
||||
'videoControls.searchLanguages' => '搜索语言...',
|
||||
'userStatus.admin' => '管理员',
|
||||
'userStatus.restricted' => '受限',
|
||||
'userStatus.protected' => '受保护',
|
||||
'userStatus.current' => '当前',
|
||||
'messages.markedAsWatched' => '已标记为已观看',
|
||||
'messages.markedAsUnwatched' => '已标记为未观看',
|
||||
'messages.markedAsWatchedOffline' => '已标记为已观看 (将在联网时同步)',
|
||||
@@ -2632,8 +2600,6 @@ extension on TranslationsZh {
|
||||
'messages.errorLoading' => ({required Object error}) => '错误: ${error}',
|
||||
'messages.streamInterrupted' => '视频流已中断。按播放键或拖动进度条重试。',
|
||||
'messages.fileInfoNotAvailable' => '文件信息不可用',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.errorLoadingFileInfo' => ({required Object error}) => '加载文件信息时出错: ${error}',
|
||||
'messages.errorLoadingSeries' => '加载系列时出错',
|
||||
'messages.musicNotSupported' => '尚不支持播放音乐',
|
||||
@@ -2641,6 +2607,8 @@ extension on TranslationsZh {
|
||||
'messages.noProfilesAvailable' => '没有可用的用户',
|
||||
'messages.contactAdminForProfiles' => '请联系服务器管理员添加用户配置',
|
||||
'messages.unableToDetermineLibrarySection' => '无法确定此项目的库分区',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'messages.logsCleared' => '日志已清除',
|
||||
'messages.logsCopied' => '日志已复制到剪贴板',
|
||||
'messages.noLogsAvailable' => '没有可用日志',
|
||||
@@ -2757,7 +2725,6 @@ extension on TranslationsZh {
|
||||
'profiles.pinExplain' => '切换个人资料需要 4 位 PIN。',
|
||||
'profiles.continueButton' => '继续',
|
||||
'profiles.pinsDontMatch' => 'PIN 不匹配',
|
||||
'profiles.initializeServicesFailed' => '无法初始化个人资料服务',
|
||||
'connections.sectionTitle' => '连接',
|
||||
'connections.addConnection' => '添加连接',
|
||||
'connections.addConnectionSubtitleNoProfile' => '使用 Plex 登录或连接 Jellyfin 服务器',
|
||||
@@ -2768,7 +2735,6 @@ extension on TranslationsZh {
|
||||
'connections.editJellyfinTitle' => '编辑 Jellyfin 连接',
|
||||
'connections.editJellyfinIntro' => ({required Object serverName}) => '添加或移除 ${serverName} 的 URL。Plezy 会使用可访问且延迟最低的 URL。',
|
||||
'discover.title' => '发现',
|
||||
'discover.switchProfile' => '切换用户',
|
||||
'discover.noContentAvailable' => '没有可用内容',
|
||||
'discover.addMediaToLibraries' => '请向你的媒体库添加一些媒体',
|
||||
'discover.continueWatching' => '继续观看',
|
||||
@@ -2795,8 +2761,6 @@ extension on TranslationsZh {
|
||||
'errors.connectionFailed' => '无法连接到媒体服务器',
|
||||
'errors.failedToLoad' => ({required Object context, required Object error}) => '无法加载 ${context}: ${error}',
|
||||
'errors.noClientAvailable' => '没有可用客户端',
|
||||
'errors.authenticationFailed' => ({required Object error}) => '验证失败: ${error}',
|
||||
'errors.couldNotLaunchUrl' => '无法打开授权 URL',
|
||||
'errors.pleaseEnterToken' => '请输入一个令牌',
|
||||
'errors.invalidToken' => '令牌无效',
|
||||
'errors.failedToVerifyToken' => ({required Object error}) => '无法验证令牌: ${error}',
|
||||
@@ -2821,6 +2785,8 @@ extension on TranslationsZh {
|
||||
'libraries.allLibrariesHidden' => '所有媒体库已隐藏',
|
||||
'libraries.hiddenLibrariesCount' => ({required Object count}) => '已隐藏的媒体库 (${count})',
|
||||
'libraries.thisLibraryIsEmpty' => '此媒体库为空',
|
||||
'libraries.noItemsMatchFilters' => '没有项目符合当前筛选条件',
|
||||
'libraries.resetFilters' => '重置筛选条件',
|
||||
'libraries.all' => '全部',
|
||||
'libraries.clearAll' => '全部清除',
|
||||
'libraries.scanLibraryConfirm' => ({required Object title}) => '确定要扫描 “${title}” 吗?',
|
||||
@@ -2869,7 +2835,6 @@ extension on TranslationsZh {
|
||||
'libraries.sortLabels.communityRating' => '社区评分',
|
||||
'libraries.sortLabels.criticRating' => '影评人评分',
|
||||
'libraries.sortLabels.userRating' => '用户评分',
|
||||
'libraries.sortLabels.lastPlayed' => '最近播放',
|
||||
'libraries.sortLabels.datePlayed' => '播放日期',
|
||||
'libraries.sortLabels.playCount' => '播放次数',
|
||||
'libraries.sortLabels.productionYear' => '制作年份',
|
||||
@@ -2883,14 +2848,11 @@ extension on TranslationsZh {
|
||||
'libraries.sortLabels.dateShared' => '共享日期',
|
||||
'libraries.sortLabels.latestEpisodeAirDate' => '最新一集播出日期',
|
||||
'libraries.sortLabels.lastEpisodeDateAdded' => '最新一集添加日期',
|
||||
'libraries.noItemsMatchFilters' => '没有项目符合当前筛选条件',
|
||||
'libraries.resetFilters' => '重置筛选条件',
|
||||
'about.title' => '关于',
|
||||
'about.openSourceLicenses' => '开源许可证',
|
||||
'about.versionLabel' => ({required Object version}) => '版本 ${version}',
|
||||
'about.appDescription' => '一款精美的 Flutter Plex 和 Jellyfin 客户端',
|
||||
'about.viewLicensesDescription' => '查看第三方库的许可证',
|
||||
'serverSelection.allServerConnectionsFailed' => '无法连接到任何服务器。请检查网络。',
|
||||
'serverSelection.noServersFoundForAccount' => ({required Object username, required Object email}) => '未找到 ${username} (${email}) 的服务器',
|
||||
'serverSelection.failedToLoadServers' => ({required Object error}) => '无法加载服务器: ${error}',
|
||||
'hubDetail.title' => '标题',
|
||||
@@ -2936,7 +2898,6 @@ extension on TranslationsZh {
|
||||
'explore.watchlistUpdateFailed' => '无法更新想看列表',
|
||||
'explore.notInLibrary' => '不在你的媒体库中',
|
||||
'explore.inTheseLibraries' => '在这些媒体库中',
|
||||
'explore.availableOn' => ({required Object server}) => '在 ${server} 上可用',
|
||||
'explore.checkingLibrary' => '正在检查你的媒体库...',
|
||||
'explore.emptyTitle' => '这里还什么都没有',
|
||||
'explore.emptyMessage' => ({required Object source}) => '当 ${source} 有内容时,相关内容将显示在这里。',
|
||||
@@ -2948,6 +2909,8 @@ extension on TranslationsZh {
|
||||
'liveTv.guide' => '节目指南',
|
||||
'liveTv.noChannels' => '没有可用的频道',
|
||||
'liveTv.noDvr' => '没有服务器配置了DVR',
|
||||
'liveTv.serverUnavailable' => '直播电视服务器不可用。',
|
||||
'liveTv.serverNotConnected' => '直播电视服务器未连接。',
|
||||
'liveTv.noPrograms' => '没有可用的节目数据',
|
||||
'liveTv.liveStreamFailed' => '直播流失败',
|
||||
'liveTv.unknownProgram' => '未知节目',
|
||||
@@ -2983,7 +2946,6 @@ extension on TranslationsZh {
|
||||
'liveTv.scheduledRecordings' => '已安排',
|
||||
'liveTv.recordingRules' => '录制规则',
|
||||
'liveTv.noScheduledRecordings' => '没有安排的录制',
|
||||
'liveTv.noRecordingRules' => '还没有录制规则',
|
||||
'liveTv.manageRecording' => '管理录制',
|
||||
'liveTv.cancelRecording' => '取消录制',
|
||||
'liveTv.cancelRecordingTitle' => '取消此次录制?',
|
||||
@@ -3000,7 +2962,6 @@ extension on TranslationsZh {
|
||||
'liveTv.recordingCancelled' => '录制已取消',
|
||||
'liveTv.recordingRuleDeleted' => '录制规则已删除',
|
||||
'liveTv.processRecordingRules' => '重新评估规则',
|
||||
'liveTv.loadingRecordings' => '正在加载录制内容...',
|
||||
'liveTv.recordingInProgress' => '正在录制',
|
||||
'liveTv.recordingsCount' => ({required Object count}) => '已安排 ${count} 个',
|
||||
'liveTv.editRule' => '编辑规则',
|
||||
@@ -3012,7 +2973,6 @@ extension on TranslationsZh {
|
||||
'collections.title' => '合集',
|
||||
'collections.collection' => '合集',
|
||||
'collections.empty' => '合集为空',
|
||||
'collections.unknownLibrarySection' => '无法删除:未知的媒体库分区',
|
||||
'collections.deleteCollection' => '删除合集',
|
||||
'collections.deleteConfirm' => ({required Object title}) => '要删除“${title}”吗?此操作无法撤销。',
|
||||
'collections.deleted' => '已删除合集',
|
||||
@@ -3050,6 +3010,7 @@ extension on TranslationsZh {
|
||||
'playlists.itemAdded' => '已添加到播放列表',
|
||||
'playlists.itemRemoved' => '已从播放列表中移除',
|
||||
'playlists.selectPlaylist' => '选择播放列表',
|
||||
'playlists.searchPlaylists' => '搜索播放列表...',
|
||||
'playlists.errorCreating' => '创建播放列表失败',
|
||||
'playlists.errorDeleting' => '删除播放列表失败',
|
||||
'playlists.errorLoading' => '加载播放列表失败',
|
||||
@@ -3132,22 +3093,20 @@ extension on TranslationsZh {
|
||||
'watchTogether.participantResumed' => ({required Object name}) => '${name} 继续播放了',
|
||||
'watchTogether.participantSeeked' => ({required Object name}) => '${name} 跳转了',
|
||||
'watchTogether.participantBuffering' => ({required Object name}) => '${name} 正在缓冲',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} 正在使用较旧版本的应用,无法同步',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => '不等待 ${name},继续播放',
|
||||
'watchTogether.waitingForParticipants' => '等待其他人加载...',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => '正在等待 ${name}...',
|
||||
'watchTogether.recentRooms' => '最近的房间',
|
||||
'watchTogether.renameRoom' => '重命名房间',
|
||||
'watchTogether.removeRoom' => '移除',
|
||||
'watchTogether.guestSwitchUnavailable' => '无法切换 — 服务器无法同步',
|
||||
'watchTogether.guestSwitchFailed' => '无法切换 — 在此服务器上未找到内容',
|
||||
'watchTogether.participantNeedsUpdate' => ({required Object name}) => '${name} 正在使用较旧版本的应用,无法同步',
|
||||
'watchTogether.resumingWithout' => ({required Object name}) => '不等待 ${name},继续播放',
|
||||
'watchTogether.waitingForName' => ({required Object name}) => '正在等待 ${name}...',
|
||||
'downloads.title' => '下载',
|
||||
'downloads.manage' => '管理',
|
||||
'downloads.tvShows' => '电视剧',
|
||||
'downloads.movies' => '电影',
|
||||
'downloads.music' => '音乐',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.tracksQueued' => ({required Object count}) => '${count} 首曲目已加入下载队列',
|
||||
'downloads.noDownloads' => '暂无下载',
|
||||
'downloads.noDownloadsDescription' => '下载的内容将在此处显示以供离线观看',
|
||||
@@ -3162,6 +3121,8 @@ extension on TranslationsZh {
|
||||
'downloads.deleteConfirm' => ({required Object title}) => '要从此设备删除“${title}”吗?',
|
||||
'downloads.cancelledDownloadTitle' => '已取消的下载',
|
||||
'downloads.cancelledDownloadMessage' => '此下载已取消。你想怎么做?',
|
||||
_ => null,
|
||||
} ?? switch (path) {
|
||||
'downloads.allEpisodesAlreadyDownloaded' => '所有剧集均已下载',
|
||||
'downloads.resumeDownload' => '继续下载',
|
||||
'downloads.cancelledDownload' => '已取消的下载',
|
||||
@@ -3185,7 +3146,6 @@ extension on TranslationsZh {
|
||||
'downloads.customAmount' => '自定义数量...',
|
||||
'downloads.includeSpecials' => '包含特别篇',
|
||||
'downloads.howManyEpisodes' => '下载几集?',
|
||||
'downloads.itemsQueued' => ({required Object count}) => '${count} 个项目已加入下载队列',
|
||||
'downloads.keepSynced' => '保持同步',
|
||||
'downloads.downloadOnce' => '下载一次',
|
||||
'downloads.keepNUnwatched' => ({required Object count}) => '保留${count}个未观看',
|
||||
@@ -3229,7 +3189,6 @@ extension on TranslationsZh {
|
||||
'companionRemote.connectedTo' => ({required Object name}) => '已连接到 ${name}',
|
||||
'companionRemote.unknownDevice' => '未知设备',
|
||||
'companionRemote.session.startingServer' => '正在启动远程服务器...',
|
||||
'companionRemote.session.failedToCreate' => '启动远程服务器失败:',
|
||||
'companionRemote.session.hostAddress' => '主机地址',
|
||||
'companionRemote.session.connected' => '已连接',
|
||||
'companionRemote.session.serverRunning' => '远程服务器已启动',
|
||||
@@ -3284,6 +3243,8 @@ extension on TranslationsZh {
|
||||
'companionRemote.remote.searchHint' => '在桌面上搜索...',
|
||||
'companionRemote.errors.noNetworkInterface' => '未找到网络接口',
|
||||
'companionRemote.errors.authenticationFailed' => '身份验证失败',
|
||||
'companionRemote.errors.serverStartFailed' => ({required Object error}) => '无法启动远程服务器:${error}',
|
||||
'companionRemote.errors.commandFailed' => ({required Object error}) => '无法发送远程命令:${error}',
|
||||
'companionRemote.errors.joinTimedOut' => '加入会话超时',
|
||||
'companionRemote.errors.failedToConnectAnyAddress' => '无法连接到任何地址',
|
||||
'companionRemote.errors.connectionLostAfterAttempts' => ({required Object attempts}) => '${attempts} 次尝试后连接丢失',
|
||||
@@ -3528,7 +3489,6 @@ extension on TranslationsZh {
|
||||
'addServer.quickConnectFailed' => ({required Object error}) => 'Quick Connect 失败: ${error}',
|
||||
'addServer.addPlexTitle' => '使用 Plex 登录',
|
||||
'addServer.pinExpired' => 'PIN 在登录前已过期。请重试。',
|
||||
'addServer.duplicatePlexAccount' => '已登录 Plex。请退出登录以切换账号。',
|
||||
'addServer.failedToRegisterAccount' => ({required Object error}) => '注册帐户失败: ${error}',
|
||||
'addServer.enterJellyfinUrlError' => '输入你的 Jellyfin 服务器 URL',
|
||||
'addServer.addConnectionTitle' => '添加连接',
|
||||
|
||||
+35
-51
@@ -3,7 +3,6 @@
|
||||
"title": "Plezy"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "Logga in",
|
||||
"signInWithPlex": "Logga in med Plex",
|
||||
"showQRCode": "Visa QR-kod",
|
||||
"authenticate": "Autentisera",
|
||||
@@ -56,10 +55,8 @@
|
||||
"episodeNumberTitle": "Avsnitt ${number} - ${title}",
|
||||
"chapterNumber": "Kapitel ${number}",
|
||||
"reconnect": "Återanslut",
|
||||
"exit": "Avsluta",
|
||||
"viewAll": "Visa alla",
|
||||
"checkingNetwork": "Kontrollerar nätverk...",
|
||||
"refreshingServers": "Uppdaterar servrar...",
|
||||
"loadingServers": "Laddar servrar...",
|
||||
"connectingToServers": "Ansluter till servrar...",
|
||||
"startingOfflineMode": "Startar offlineläge...",
|
||||
@@ -139,6 +136,12 @@
|
||||
"tvFullCardLayoutDescription": "Använd TV-kort med enbart bild och skådespelarnamn ovanpå",
|
||||
"focusGlow": "Fokusglöd",
|
||||
"focusGlowDescription": "Visa en mjuk glöd runt kortet i fokus",
|
||||
"visualEffects": "Visuella effekter",
|
||||
"visualEffectsAuto": "Automatiskt",
|
||||
"visualEffectsAutoDescription": "Minska effekter automatiskt på enheter med låg effekt",
|
||||
"visualEffectsFull": "Fullständiga",
|
||||
"visualEffectsReduced": "Minskade",
|
||||
"visualEffectsReducedDescription": "Färre animationer och grafik med lägre upplösning",
|
||||
"hideSpoilers": "Dölj spoilers för osedda avsnitt",
|
||||
"hideSpoilersDescription": "Sudda miniatyrbilder och beskrivningar för osedda avsnitt",
|
||||
"playerBackend": "Spelarmotor",
|
||||
@@ -151,7 +154,7 @@
|
||||
"bufferSizeAuto": "Auto (Rekommenderat)",
|
||||
"bufferSizeWarning": "${heap}MB minne tillgängligt. En buffert på ${size}MB kan påverka uppspelningen.",
|
||||
"defaultQualityTitle": "Standardkvalitet",
|
||||
"defaultQualityDescription": "Används vid start av uppspelning. Lägre värden minskar bandbredden.",
|
||||
"musicQualityTitle": "Musikkvalitet",
|
||||
"subtitleStyling": "Undertext-styling",
|
||||
"subtitleStylingDescription": "Anpassa undertextutseende",
|
||||
"smallSkipDuration": "Kort hoppvaraktighet",
|
||||
@@ -245,10 +248,9 @@
|
||||
"maxVolumePercent": "${percent}%",
|
||||
"discordRichPresence": "Discord Rich Presence",
|
||||
"discordRichPresenceDescription": "Visa vad du tittar på i Discord",
|
||||
"trakt": "Trakt",
|
||||
"traktDescription": "Synkronisera visningshistorik med Trakt",
|
||||
"services": "Tjänster",
|
||||
"servicesDescription": "Anslut Trakt, MyAnimeList, Seerr med mera",
|
||||
"manageLibrariesDescription": "Ordna om och dölj bibliotek",
|
||||
"companionRemoteServer": "Companion Remote-server",
|
||||
"companionRemoteServerDescription": "Tillåt mobila enheter i ditt nätverk att styra denna app",
|
||||
"autoPip": "Automatisk bild-i-bild",
|
||||
@@ -311,7 +313,6 @@
|
||||
"showNavBarLabels": "Visa navigeringsfältets etiketter",
|
||||
"showNavBarLabelsDescription": "Visa textetiketter under navigeringsfältets ikoner",
|
||||
"startupSection": "Startsektion",
|
||||
"startupSectionDescription": "Välj vilken sektion Plezy öppnar vid start",
|
||||
"liveTvDefaultFavorites": "Standard till favoritkanaler",
|
||||
"liveTvDefaultFavoritesDescription": "Visa bara favoritkanaler när du öppnar Live TV",
|
||||
"display": "Skärm",
|
||||
@@ -322,14 +323,7 @@
|
||||
"player": "Spelare",
|
||||
"subtitlesAndConfig": "Undertexter och konfiguration",
|
||||
"seekAndTiming": "Sök och timing",
|
||||
"behavior": "Beteende",
|
||||
"manageLibrariesDescription": "Ordna om och dölj bibliotek",
|
||||
"visualEffects": "Visuella effekter",
|
||||
"visualEffectsAuto": "Automatiskt",
|
||||
"visualEffectsAutoDescription": "Minska effekter automatiskt på enheter med låg effekt",
|
||||
"visualEffectsFull": "Fullständiga",
|
||||
"visualEffectsReduced": "Minskade",
|
||||
"visualEffectsReducedDescription": "Färre animationer och grafik med lägre upplösning"
|
||||
"behavior": "Beteende"
|
||||
},
|
||||
"search": {
|
||||
"hint": "Sök filmer, serier, musik...",
|
||||
@@ -418,14 +412,11 @@
|
||||
"rateSheet": {
|
||||
"title": "Betygsätt",
|
||||
"server": "Server",
|
||||
"starValue": "${rating} / 5",
|
||||
"scoreValue": "${score} / 10",
|
||||
"setScore": "Ange betyg",
|
||||
"favorite": "Favorit",
|
||||
"favorited": "Tillagd i favoriter",
|
||||
"saved": "Sparat",
|
||||
"notAvailable": "Ingen matchning hittades",
|
||||
"noConnectedServices": "Anslut en tjänst i Inställningar för att betygsätta där.",
|
||||
"favorite": "Favorit",
|
||||
"favorited": "Tillagd i favoriter"
|
||||
"noConnectedServices": "Anslut en tjänst i Inställningar för att betygsätta där."
|
||||
},
|
||||
"accessibility": {
|
||||
"mediaCardMovie": "${title}, film",
|
||||
@@ -435,7 +426,15 @@
|
||||
"mediaCardWatched": "sedd",
|
||||
"mediaCardPartiallyWatched": "${percent} procent sedd",
|
||||
"mediaCardUnwatched": "osedd",
|
||||
"tapToPlay": "Tryck för att spela"
|
||||
"tapToPlay": "Tryck för att spela",
|
||||
"decrease": "Minska",
|
||||
"increase": "Öka",
|
||||
"decreaseValue": "Minska ${label}",
|
||||
"increaseValue": "Öka ${label}",
|
||||
"hue": "Nyans",
|
||||
"saturation": "Mättnad",
|
||||
"brightness": "Ljusstyrka",
|
||||
"hexColor": "Hexfärg"
|
||||
},
|
||||
"tooltips": {
|
||||
"shufflePlay": "Blanda uppspelning",
|
||||
@@ -481,13 +480,11 @@
|
||||
"settingsButton": "Uppspelningsinställningar",
|
||||
"tracksButton": "Ljud och undertexter",
|
||||
"chaptersButton": "Kapitel",
|
||||
"versionsButton": "Videoversioner",
|
||||
"versionQualityButton": "Version och kvalitet",
|
||||
"versionColumnHeader": "Version",
|
||||
"qualityColumnHeader": "Kvalitet",
|
||||
"qualityOriginal": "Original",
|
||||
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
||||
"qualityBandwidthEstimate": "~${bitrate} Mbps",
|
||||
"transcodeUnavailableFallback": "Transkodning otillgänglig — spelar upp i originalkvalitet",
|
||||
"pipButton": "Bild-i-bild läge",
|
||||
"aspectRatioButton": "Bildförhållande",
|
||||
@@ -530,12 +527,7 @@
|
||||
"subtitleDownloadFailed": "Kunde inte ladda ner undertext",
|
||||
"searchLanguages": "Sök språk..."
|
||||
},
|
||||
"userStatus": {
|
||||
"admin": "Admin",
|
||||
"restricted": "Begränsad",
|
||||
"protected": "Skyddad",
|
||||
"current": "NUVARANDE"
|
||||
},
|
||||
"userStatus": {},
|
||||
"messages": {
|
||||
"markedAsWatched": "Markerad som sedd",
|
||||
"markedAsUnwatched": "Markerad som osedd",
|
||||
@@ -676,8 +668,7 @@
|
||||
"pinProtectionOptional": "PIN-skydd (valfritt)",
|
||||
"pinExplain": "4-siffrig PIN krävs för att byta profiler.",
|
||||
"continueButton": "Fortsätt",
|
||||
"pinsDontMatch": "PIN-koderna stämmer inte överens",
|
||||
"initializeServicesFailed": "Kunde inte initiera profiltjänster"
|
||||
"pinsDontMatch": "PIN-koderna stämmer inte överens"
|
||||
},
|
||||
"connections": {
|
||||
"sectionTitle": "Anslutningar",
|
||||
@@ -692,7 +683,6 @@
|
||||
},
|
||||
"discover": {
|
||||
"title": "Upptäck",
|
||||
"switchProfile": "Byt profil",
|
||||
"noContentAvailable": "Inget innehåll tillgängligt",
|
||||
"addMediaToLibraries": "Lägg till media till dina bibliotek",
|
||||
"continueWatching": "Fortsätt titta",
|
||||
@@ -721,8 +711,6 @@
|
||||
"connectionFailed": "Kan inte ansluta till mediaserver",
|
||||
"failedToLoad": "Misslyckades att ladda ${context}: ${error}",
|
||||
"noClientAvailable": "Ingen klient tillgänglig",
|
||||
"authenticationFailed": "Autentisering misslyckades: ${error}",
|
||||
"couldNotLaunchUrl": "Kunde inte öppna autentiserings-URL",
|
||||
"pleaseEnterToken": "Vänligen ange en token",
|
||||
"invalidToken": "Ogiltig token",
|
||||
"failedToVerifyToken": "Misslyckades att verifiera token: ${error}",
|
||||
@@ -749,6 +737,8 @@
|
||||
"allLibrariesHidden": "Alla bibliotek är dolda",
|
||||
"hiddenLibrariesCount": "Dolda bibliotek (${count})",
|
||||
"thisLibraryIsEmpty": "Detta bibliotek är tomt",
|
||||
"noItemsMatchFilters": "Inga objekt matchar de aktiva filtren",
|
||||
"resetFilters": "Återställ filter",
|
||||
"all": "Alla",
|
||||
"clearAll": "Rensa alla",
|
||||
"scanLibraryConfirm": "Är du säker på att du vill skanna \"${title}\"?",
|
||||
@@ -804,7 +794,6 @@
|
||||
"communityRating": "Användarbetyg",
|
||||
"criticRating": "Kritikerbetyg",
|
||||
"userRating": "Användarbetyg",
|
||||
"lastPlayed": "Senast spelad",
|
||||
"datePlayed": "Speldatum",
|
||||
"playCount": "Antal spelningar",
|
||||
"productionYear": "Produktionsår",
|
||||
@@ -818,9 +807,7 @@
|
||||
"dateShared": "Delningsdatum",
|
||||
"latestEpisodeAirDate": "Senaste avsnittets sändningsdatum",
|
||||
"lastEpisodeDateAdded": "Datum då senaste avsnittet lades till"
|
||||
},
|
||||
"noItemsMatchFilters": "Inga objekt matchar de aktiva filtren",
|
||||
"resetFilters": "Återställ filter"
|
||||
}
|
||||
},
|
||||
"about": {
|
||||
"title": "Om",
|
||||
@@ -830,7 +817,6 @@
|
||||
"viewLicensesDescription": "Visa licenser för tredjepartsbibliotek"
|
||||
},
|
||||
"serverSelection": {
|
||||
"allServerConnectionsFailed": "Kunde inte ansluta till några servrar. Kontrollera nätverket.",
|
||||
"noServersFoundForAccount": "Inga servrar hittades för ${username} (${email})",
|
||||
"failedToLoadServers": "Misslyckades att ladda servrar: ${error}"
|
||||
},
|
||||
@@ -893,7 +879,6 @@
|
||||
"watchlistUpdateFailed": "Det gick inte att uppdatera bevakningslistan",
|
||||
"notInLibrary": "Finns inte i ditt bibliotek",
|
||||
"inTheseLibraries": "I dessa bibliotek",
|
||||
"availableOn": "Tillgänglig på ${server}",
|
||||
"checkingLibrary": "Kontrollerar ditt bibliotek...",
|
||||
"emptyTitle": "Inget här ännu",
|
||||
"emptyMessage": "Rader från ${source} visas här när de har innehåll.",
|
||||
@@ -907,6 +892,8 @@
|
||||
"guide": "Programguide",
|
||||
"noChannels": "Inga kanaler tillgängliga",
|
||||
"noDvr": "Ingen DVR konfigurerad på någon server",
|
||||
"serverUnavailable": "Live-tv-servern är inte tillgänglig.",
|
||||
"serverNotConnected": "Live-tv-servern är inte ansluten.",
|
||||
"noPrograms": "Ingen programdata tillgänglig",
|
||||
"liveStreamFailed": "Liveström misslyckades",
|
||||
"unknownProgram": "Okänt program",
|
||||
@@ -942,7 +929,6 @@
|
||||
"scheduledRecordings": "Schemalagda",
|
||||
"recordingRules": "Inspelningsregler",
|
||||
"noScheduledRecordings": "Inga schemalagda inspelningar",
|
||||
"noRecordingRules": "Inga inspelningsregler än",
|
||||
"manageRecording": "Hantera inspelning",
|
||||
"cancelRecording": "Avbryt inspelning",
|
||||
"cancelRecordingTitle": "Avbryt denna inspelning?",
|
||||
@@ -959,7 +945,6 @@
|
||||
"recordingCancelled": "Inspelning avbruten",
|
||||
"recordingRuleDeleted": "Inspelningsregel borttagen",
|
||||
"processRecordingRules": "Utvärdera regler igen",
|
||||
"loadingRecordings": "Laddar inspelningar ...",
|
||||
"recordingInProgress": "Spelar in nu",
|
||||
"recordingsCount": "${count} schemalagda",
|
||||
"editRule": "Redigera regel",
|
||||
@@ -973,7 +958,6 @@
|
||||
"title": "Samlingar",
|
||||
"collection": "Samling",
|
||||
"empty": "Samlingen är tom",
|
||||
"unknownLibrarySection": "Kan inte ta bort: okänd bibliotekssektion",
|
||||
"deleteCollection": "Ta bort samling",
|
||||
"deleteConfirm": "Ta bort \"${title}\"? Detta kan inte ångras.",
|
||||
"deleted": "Samling borttagen",
|
||||
@@ -1013,6 +997,7 @@
|
||||
"itemAdded": "Tillagd i spellista",
|
||||
"itemRemoved": "Borttagen från spellista",
|
||||
"selectPlaylist": "Välj spellista",
|
||||
"searchPlaylists": "Sök i spellistor...",
|
||||
"errorCreating": "Det gick inte att skapa spellista",
|
||||
"errorDeleting": "Det gick inte att ta bort spellista",
|
||||
"errorLoading": "Det gick inte att ladda spellistor",
|
||||
@@ -1102,15 +1087,15 @@
|
||||
"participantResumed": "${name} återupptog",
|
||||
"participantSeeked": "${name} spolade",
|
||||
"participantBuffering": "${name} buffrar",
|
||||
"participantNeedsUpdate": "${name} använder en äldre appversion — synkronisering är inte tillgänglig",
|
||||
"resumingWithout": "Återupptar utan ${name}",
|
||||
"waitingForParticipants": "Väntar på att andra laddar...",
|
||||
"waitingForName": "Väntar på ${name}...",
|
||||
"recentRooms": "Senaste rum",
|
||||
"renameRoom": "Byt namn på rum",
|
||||
"removeRoom": "Ta bort",
|
||||
"guestSwitchUnavailable": "Kunde inte byta — server inte tillgänglig för synkronisering",
|
||||
"guestSwitchFailed": "Kunde inte byta — innehåll hittades inte på denna server",
|
||||
"participantNeedsUpdate": "${name} använder en äldre appversion — synkronisering är inte tillgänglig",
|
||||
"resumingWithout": "Återupptar utan ${name}",
|
||||
"waitingForName": "Väntar på ${name}..."
|
||||
"guestSwitchFailed": "Kunde inte byta — innehåll hittades inte på denna server"
|
||||
},
|
||||
"downloads": {
|
||||
"title": "Nedladdningar",
|
||||
@@ -1155,7 +1140,6 @@
|
||||
"customAmount": "Ange antal...",
|
||||
"includeSpecials": "Inkludera specialavsnitt",
|
||||
"howManyEpisodes": "Hur många avsnitt?",
|
||||
"itemsQueued": "${count} objekt köade för nedladdning",
|
||||
"keepSynced": "Håll synkroniserad",
|
||||
"downloadOnce": "Ladda ner en gång",
|
||||
"keepNUnwatched": "Behåll ${count} osedda",
|
||||
@@ -1204,7 +1188,6 @@
|
||||
"unknownDevice": "Okänd enhet",
|
||||
"session": {
|
||||
"startingServer": "Startar fjärrserver...",
|
||||
"failedToCreate": "Kunde inte starta fjärrserver:",
|
||||
"hostAddress": "Värdadress",
|
||||
"connected": "Ansluten",
|
||||
"serverRunning": "Fjärrserver aktiv",
|
||||
@@ -1265,6 +1248,8 @@
|
||||
"errors": {
|
||||
"noNetworkInterface": "Inget nätverksgränssnitt hittades",
|
||||
"authenticationFailed": "Autentisering misslyckades",
|
||||
"serverStartFailed": "Det gick inte att starta fjärrservern: ${error}",
|
||||
"commandFailed": "Det gick inte att skicka fjärrkommandot: ${error}",
|
||||
"joinTimedOut": "Tidsgräns vid anslutning till session",
|
||||
"failedToConnectAnyAddress": "Kunde inte ansluta till någon adress",
|
||||
"connectionLostAfterAttempts": "Anslutning förlorad efter ${attempts} försök",
|
||||
@@ -1538,7 +1523,6 @@
|
||||
"quickConnectFailed": "Quick Connect misslyckades: ${error}",
|
||||
"addPlexTitle": "Logga in med Plex",
|
||||
"pinExpired": "PIN-koden gick ut innan inloggning. Försök igen.",
|
||||
"duplicatePlexAccount": "Redan inloggad på Plex. Logga ut för att byta konto.",
|
||||
"failedToRegisterAccount": "Kunde inte registrera kontot: ${error}",
|
||||
"enterJellyfinUrlError": "Ange URL till din Jellyfin-server",
|
||||
"addConnectionTitle": "Lägg till anslutning",
|
||||
|
||||
+35
-51
@@ -3,7 +3,6 @@
|
||||
"title": "Plezy"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "登录",
|
||||
"signInWithPlex": "使用 Plex 登录",
|
||||
"showQRCode": "显示二维码",
|
||||
"authenticate": "验证",
|
||||
@@ -56,10 +55,8 @@
|
||||
"episodeNumberTitle": "第${number}集 - ${title}",
|
||||
"chapterNumber": "章节 ${number}",
|
||||
"reconnect": "重新连接",
|
||||
"exit": "退出",
|
||||
"viewAll": "查看全部",
|
||||
"checkingNetwork": "正在检查网络...",
|
||||
"refreshingServers": "正在刷新服务器...",
|
||||
"loadingServers": "正在加载服务器...",
|
||||
"connectingToServers": "正在连接服务器...",
|
||||
"startingOfflineMode": "正在启动离线模式...",
|
||||
@@ -139,6 +136,12 @@
|
||||
"tvFullCardLayoutDescription": "使用仅显示图片的 TV 卡片,并叠加演员姓名",
|
||||
"focusGlow": "焦点光晕",
|
||||
"focusGlowDescription": "在获得焦点的卡片周围显示柔和的光晕",
|
||||
"visualEffects": "视觉效果",
|
||||
"visualEffectsAuto": "自动",
|
||||
"visualEffectsAutoDescription": "在性能较低的设备上自动减少效果",
|
||||
"visualEffectsFull": "完整",
|
||||
"visualEffectsReduced": "简化",
|
||||
"visualEffectsReducedDescription": "减少动画并使用较低分辨率的封面图片",
|
||||
"hideSpoilers": "隐藏未看剧集的剧透内容",
|
||||
"hideSpoilersDescription": "模糊未观看剧集的缩略图和描述",
|
||||
"playerBackend": "播放器引擎",
|
||||
@@ -151,7 +154,7 @@
|
||||
"bufferSizeAuto": "自动(推荐)",
|
||||
"bufferSizeWarning": "可用内存 ${heap}MB。${size}MB 缓冲可能影响播放。",
|
||||
"defaultQualityTitle": "默认画质",
|
||||
"defaultQualityDescription": "开始播放时使用。较低的值可减少带宽。",
|
||||
"musicQualityTitle": "音乐质量",
|
||||
"subtitleStyling": "字幕样式",
|
||||
"subtitleStylingDescription": "调整字幕外观",
|
||||
"smallSkipDuration": "短跳过时长",
|
||||
@@ -245,10 +248,9 @@
|
||||
"maxVolumePercent": "${percent}%",
|
||||
"discordRichPresence": "Discord 动态状态",
|
||||
"discordRichPresenceDescription": "在 Discord 上显示您正在观看的内容",
|
||||
"trakt": "Trakt",
|
||||
"traktDescription": "将观看历史与 Trakt 同步",
|
||||
"services": "服务",
|
||||
"servicesDescription": "连接 Trakt、MyAnimeList、Seerr 等",
|
||||
"manageLibrariesDescription": "重新排序和隐藏媒体库",
|
||||
"companionRemoteServer": "配套遥控服务器",
|
||||
"companionRemoteServerDescription": "允许网络上的移动设备控制此应用",
|
||||
"autoPip": "自动画中画",
|
||||
@@ -311,7 +313,6 @@
|
||||
"showNavBarLabels": "显示导航栏标签",
|
||||
"showNavBarLabelsDescription": "在导航栏图标下方显示文字标签",
|
||||
"startupSection": "启动页面",
|
||||
"startupSectionDescription": "选择 Plezy 启动时打开的页面",
|
||||
"liveTvDefaultFavorites": "默认显示收藏频道",
|
||||
"liveTvDefaultFavoritesDescription": "打开直播电视时仅显示收藏频道",
|
||||
"display": "显示",
|
||||
@@ -322,14 +323,7 @@
|
||||
"player": "播放器",
|
||||
"subtitlesAndConfig": "字幕与配置",
|
||||
"seekAndTiming": "跳转与计时",
|
||||
"behavior": "行为",
|
||||
"manageLibrariesDescription": "重新排序和隐藏媒体库",
|
||||
"visualEffects": "视觉效果",
|
||||
"visualEffectsAuto": "自动",
|
||||
"visualEffectsAutoDescription": "在性能较低的设备上自动减少效果",
|
||||
"visualEffectsFull": "完整",
|
||||
"visualEffectsReduced": "简化",
|
||||
"visualEffectsReducedDescription": "减少动画并使用较低分辨率的封面图片"
|
||||
"behavior": "行为"
|
||||
},
|
||||
"search": {
|
||||
"hint": "搜索电影、系列、音乐...",
|
||||
@@ -418,14 +412,11 @@
|
||||
"rateSheet": {
|
||||
"title": "评分",
|
||||
"server": "服务器",
|
||||
"starValue": "${rating} / 5",
|
||||
"scoreValue": "${score} / 10",
|
||||
"setScore": "设置分数",
|
||||
"favorite": "收藏",
|
||||
"favorited": "已收藏",
|
||||
"saved": "已保存",
|
||||
"notAvailable": "未找到匹配项",
|
||||
"noConnectedServices": "在设置中连接服务,即可在此评分。",
|
||||
"favorite": "收藏",
|
||||
"favorited": "已收藏"
|
||||
"noConnectedServices": "在设置中连接服务,即可在此评分。"
|
||||
},
|
||||
"accessibility": {
|
||||
"mediaCardMovie": "${title}, 电影",
|
||||
@@ -435,7 +426,15 @@
|
||||
"mediaCardWatched": "已观看",
|
||||
"mediaCardPartiallyWatched": "已观看 ${percent} 百分比",
|
||||
"mediaCardUnwatched": "未观看",
|
||||
"tapToPlay": "点击播放"
|
||||
"tapToPlay": "点击播放",
|
||||
"decrease": "减小",
|
||||
"increase": "增大",
|
||||
"decreaseValue": "减小${label}",
|
||||
"increaseValue": "增大${label}",
|
||||
"hue": "色相",
|
||||
"saturation": "饱和度",
|
||||
"brightness": "亮度",
|
||||
"hexColor": "十六进制颜色"
|
||||
},
|
||||
"tooltips": {
|
||||
"shufflePlay": "随机播放",
|
||||
@@ -481,13 +480,11 @@
|
||||
"settingsButton": "播放设置",
|
||||
"tracksButton": "音频和字幕",
|
||||
"chaptersButton": "章节",
|
||||
"versionsButton": "视频版本",
|
||||
"versionQualityButton": "版本与画质",
|
||||
"versionColumnHeader": "版本",
|
||||
"qualityColumnHeader": "画质",
|
||||
"qualityOriginal": "原始",
|
||||
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
||||
"qualityBandwidthEstimate": "~${bitrate} Mbps",
|
||||
"transcodeUnavailableFallback": "转码不可用 — 以原始画质播放",
|
||||
"pipButton": "画中画模式",
|
||||
"aspectRatioButton": "宽高比",
|
||||
@@ -530,12 +527,7 @@
|
||||
"subtitleDownloadFailed": "字幕下载失败",
|
||||
"searchLanguages": "搜索语言..."
|
||||
},
|
||||
"userStatus": {
|
||||
"admin": "管理员",
|
||||
"restricted": "受限",
|
||||
"protected": "受保护",
|
||||
"current": "当前"
|
||||
},
|
||||
"userStatus": {},
|
||||
"messages": {
|
||||
"markedAsWatched": "已标记为已观看",
|
||||
"markedAsUnwatched": "已标记为未观看",
|
||||
@@ -676,8 +668,7 @@
|
||||
"pinProtectionOptional": "PIN 保护(可选)",
|
||||
"pinExplain": "切换个人资料需要 4 位 PIN。",
|
||||
"continueButton": "继续",
|
||||
"pinsDontMatch": "PIN 不匹配",
|
||||
"initializeServicesFailed": "无法初始化个人资料服务"
|
||||
"pinsDontMatch": "PIN 不匹配"
|
||||
},
|
||||
"connections": {
|
||||
"sectionTitle": "连接",
|
||||
@@ -692,7 +683,6 @@
|
||||
},
|
||||
"discover": {
|
||||
"title": "发现",
|
||||
"switchProfile": "切换用户",
|
||||
"noContentAvailable": "没有可用内容",
|
||||
"addMediaToLibraries": "请向你的媒体库添加一些媒体",
|
||||
"continueWatching": "继续观看",
|
||||
@@ -721,8 +711,6 @@
|
||||
"connectionFailed": "无法连接到媒体服务器",
|
||||
"failedToLoad": "无法加载 ${context}: ${error}",
|
||||
"noClientAvailable": "没有可用客户端",
|
||||
"authenticationFailed": "验证失败: ${error}",
|
||||
"couldNotLaunchUrl": "无法打开授权 URL",
|
||||
"pleaseEnterToken": "请输入一个令牌",
|
||||
"invalidToken": "令牌无效",
|
||||
"failedToVerifyToken": "无法验证令牌: ${error}",
|
||||
@@ -749,6 +737,8 @@
|
||||
"allLibrariesHidden": "所有媒体库已隐藏",
|
||||
"hiddenLibrariesCount": "已隐藏的媒体库 (${count})",
|
||||
"thisLibraryIsEmpty": "此媒体库为空",
|
||||
"noItemsMatchFilters": "没有项目符合当前筛选条件",
|
||||
"resetFilters": "重置筛选条件",
|
||||
"all": "全部",
|
||||
"clearAll": "全部清除",
|
||||
"scanLibraryConfirm": "确定要扫描 “${title}” 吗?",
|
||||
@@ -804,7 +794,6 @@
|
||||
"communityRating": "社区评分",
|
||||
"criticRating": "影评人评分",
|
||||
"userRating": "用户评分",
|
||||
"lastPlayed": "最近播放",
|
||||
"datePlayed": "播放日期",
|
||||
"playCount": "播放次数",
|
||||
"productionYear": "制作年份",
|
||||
@@ -818,9 +807,7 @@
|
||||
"dateShared": "共享日期",
|
||||
"latestEpisodeAirDate": "最新一集播出日期",
|
||||
"lastEpisodeDateAdded": "最新一集添加日期"
|
||||
},
|
||||
"noItemsMatchFilters": "没有项目符合当前筛选条件",
|
||||
"resetFilters": "重置筛选条件"
|
||||
}
|
||||
},
|
||||
"about": {
|
||||
"title": "关于",
|
||||
@@ -830,7 +817,6 @@
|
||||
"viewLicensesDescription": "查看第三方库的许可证"
|
||||
},
|
||||
"serverSelection": {
|
||||
"allServerConnectionsFailed": "无法连接到任何服务器。请检查网络。",
|
||||
"noServersFoundForAccount": "未找到 ${username} (${email}) 的服务器",
|
||||
"failedToLoadServers": "无法加载服务器: ${error}"
|
||||
},
|
||||
@@ -892,7 +878,6 @@
|
||||
"watchlistUpdateFailed": "无法更新想看列表",
|
||||
"notInLibrary": "不在你的媒体库中",
|
||||
"inTheseLibraries": "在这些媒体库中",
|
||||
"availableOn": "在 ${server} 上可用",
|
||||
"checkingLibrary": "正在检查你的媒体库...",
|
||||
"emptyTitle": "这里还什么都没有",
|
||||
"emptyMessage": "当 ${source} 有内容时,相关内容将显示在这里。",
|
||||
@@ -906,6 +891,8 @@
|
||||
"guide": "节目指南",
|
||||
"noChannels": "没有可用的频道",
|
||||
"noDvr": "没有服务器配置了DVR",
|
||||
"serverUnavailable": "直播电视服务器不可用。",
|
||||
"serverNotConnected": "直播电视服务器未连接。",
|
||||
"noPrograms": "没有可用的节目数据",
|
||||
"liveStreamFailed": "直播流失败",
|
||||
"unknownProgram": "未知节目",
|
||||
@@ -941,7 +928,6 @@
|
||||
"scheduledRecordings": "已安排",
|
||||
"recordingRules": "录制规则",
|
||||
"noScheduledRecordings": "没有安排的录制",
|
||||
"noRecordingRules": "还没有录制规则",
|
||||
"manageRecording": "管理录制",
|
||||
"cancelRecording": "取消录制",
|
||||
"cancelRecordingTitle": "取消此次录制?",
|
||||
@@ -958,7 +944,6 @@
|
||||
"recordingCancelled": "录制已取消",
|
||||
"recordingRuleDeleted": "录制规则已删除",
|
||||
"processRecordingRules": "重新评估规则",
|
||||
"loadingRecordings": "正在加载录制内容...",
|
||||
"recordingInProgress": "正在录制",
|
||||
"recordingsCount": "已安排 ${count} 个",
|
||||
"editRule": "编辑规则",
|
||||
@@ -972,7 +957,6 @@
|
||||
"title": "合集",
|
||||
"collection": "合集",
|
||||
"empty": "合集为空",
|
||||
"unknownLibrarySection": "无法删除:未知的媒体库分区",
|
||||
"deleteCollection": "删除合集",
|
||||
"deleteConfirm": "要删除“${title}”吗?此操作无法撤销。",
|
||||
"deleted": "已删除合集",
|
||||
@@ -1012,6 +996,7 @@
|
||||
"itemAdded": "已添加到播放列表",
|
||||
"itemRemoved": "已从播放列表中移除",
|
||||
"selectPlaylist": "选择播放列表",
|
||||
"searchPlaylists": "搜索播放列表...",
|
||||
"errorCreating": "创建播放列表失败",
|
||||
"errorDeleting": "删除播放列表失败",
|
||||
"errorLoading": "加载播放列表失败",
|
||||
@@ -1100,15 +1085,15 @@
|
||||
"participantResumed": "${name} 继续播放了",
|
||||
"participantSeeked": "${name} 跳转了",
|
||||
"participantBuffering": "${name} 正在缓冲",
|
||||
"participantNeedsUpdate": "${name} 正在使用较旧版本的应用,无法同步",
|
||||
"resumingWithout": "不等待 ${name},继续播放",
|
||||
"waitingForParticipants": "等待其他人加载...",
|
||||
"waitingForName": "正在等待 ${name}...",
|
||||
"recentRooms": "最近的房间",
|
||||
"renameRoom": "重命名房间",
|
||||
"removeRoom": "移除",
|
||||
"guestSwitchUnavailable": "无法切换 — 服务器无法同步",
|
||||
"guestSwitchFailed": "无法切换 — 在此服务器上未找到内容",
|
||||
"participantNeedsUpdate": "${name} 正在使用较旧版本的应用,无法同步",
|
||||
"resumingWithout": "不等待 ${name},继续播放",
|
||||
"waitingForName": "正在等待 ${name}..."
|
||||
"guestSwitchFailed": "无法切换 — 在此服务器上未找到内容"
|
||||
},
|
||||
"downloads": {
|
||||
"title": "下载",
|
||||
@@ -1153,7 +1138,6 @@
|
||||
"customAmount": "自定义数量...",
|
||||
"includeSpecials": "包含特别篇",
|
||||
"howManyEpisodes": "下载几集?",
|
||||
"itemsQueued": "${count} 个项目已加入下载队列",
|
||||
"keepSynced": "保持同步",
|
||||
"downloadOnce": "下载一次",
|
||||
"keepNUnwatched": "保留${count}个未观看",
|
||||
@@ -1202,7 +1186,6 @@
|
||||
"unknownDevice": "未知设备",
|
||||
"session": {
|
||||
"startingServer": "正在启动远程服务器...",
|
||||
"failedToCreate": "启动远程服务器失败:",
|
||||
"hostAddress": "主机地址",
|
||||
"connected": "已连接",
|
||||
"serverRunning": "远程服务器已启动",
|
||||
@@ -1263,6 +1246,8 @@
|
||||
"errors": {
|
||||
"noNetworkInterface": "未找到网络接口",
|
||||
"authenticationFailed": "身份验证失败",
|
||||
"serverStartFailed": "无法启动远程服务器:${error}",
|
||||
"commandFailed": "无法发送远程命令:${error}",
|
||||
"joinTimedOut": "加入会话超时",
|
||||
"failedToConnectAnyAddress": "无法连接到任何地址",
|
||||
"connectionLostAfterAttempts": "${attempts} 次尝试后连接丢失",
|
||||
@@ -1536,7 +1521,6 @@
|
||||
"quickConnectFailed": "Quick Connect 失败: ${error}",
|
||||
"addPlexTitle": "使用 Plex 登录",
|
||||
"pinExpired": "PIN 在登录前已过期。请重试。",
|
||||
"duplicatePlexAccount": "已登录 Plex。请退出登录以切换账号。",
|
||||
"failedToRegisterAccount": "注册帐户失败: ${error}",
|
||||
"enterJellyfinUrlError": "输入你的 Jellyfin 服务器 URL",
|
||||
"addConnectionTitle": "添加连接",
|
||||
|
||||
@@ -26,6 +26,11 @@ export '../services/companion_remote/lan_discovery_service.dart' show Discovered
|
||||
typedef CommandReceivedCallback = void Function(RemoteCommand command);
|
||||
typedef PlexHomeResolver = Future<PlexHome?> Function(String connectionId);
|
||||
|
||||
String _localizedRemoteError(Object error, String Function(String details) fallback) {
|
||||
if (error is RemotePeerError) return error.message;
|
||||
return fallback(error.toString().replaceFirst('Exception: ', ''));
|
||||
}
|
||||
|
||||
class CompanionRemoteProvider with ChangeNotifier, DisposableChangeNotifierMixin {
|
||||
RemoteSession? _session;
|
||||
CompanionRemotePeerService? _peerService;
|
||||
@@ -486,7 +491,7 @@ class CompanionRemoteProvider with ChangeNotifier, DisposableChangeNotifierMixin
|
||||
_session = RemoteSession(
|
||||
role: RemoteSessionRole.host,
|
||||
status: RemoteSessionStatus.error,
|
||||
errorMessage: e.toString(),
|
||||
errorMessage: _localizedRemoteError(e, (details) => t.companionRemote.errors.serverStartFailed(error: details)),
|
||||
createdAt: DateTime.now(),
|
||||
);
|
||||
safeNotifyListeners();
|
||||
@@ -530,11 +535,11 @@ class CompanionRemoteProvider with ChangeNotifier, DisposableChangeNotifierMixin
|
||||
/// Connect to a discovered host as a remote client.
|
||||
Future<void> connectToDiscoveredHost(DiscoveredHost host) async {
|
||||
if (!isCryptoReady) {
|
||||
throw StateError('Crypto not initialized');
|
||||
throw RemotePeerError(type: RemotePeerErrorType.authFailed, message: t.companionRemote.pairing.cryptoInitFailed);
|
||||
}
|
||||
final authContext = _authContextForId(host.authContextId);
|
||||
if (authContext == null) {
|
||||
throw StateError('Matching auth context is no longer available');
|
||||
throw RemotePeerError(type: RemotePeerErrorType.authFailed, message: t.companionRemote.pairing.authFailed);
|
||||
}
|
||||
|
||||
await leaveSession();
|
||||
@@ -573,7 +578,10 @@ class CompanionRemoteProvider with ChangeNotifier, DisposableChangeNotifierMixin
|
||||
appLogger.d('CompanionRemote: Connected to ${host.name} via $winner');
|
||||
} catch (e) {
|
||||
appLogger.e('CompanionRemote: Failed to connect to host', error: e);
|
||||
_session = _session?.copyWith(status: RemoteSessionStatus.error, errorMessage: e.toString());
|
||||
_session = _session?.copyWith(
|
||||
status: RemoteSessionStatus.error,
|
||||
errorMessage: _localizedRemoteError(e, (details) => t.companionRemote.pairing.failedToConnect(error: details)),
|
||||
);
|
||||
safeNotifyListeners();
|
||||
rethrow;
|
||||
}
|
||||
@@ -582,7 +590,7 @@ class CompanionRemoteProvider with ChangeNotifier, DisposableChangeNotifierMixin
|
||||
/// Connect to a host by manual IP:port entry.
|
||||
Future<void> connectToManualHost(String hostAddress) async {
|
||||
if (!isCryptoReady) {
|
||||
throw StateError('Crypto not initialized');
|
||||
throw RemotePeerError(type: RemotePeerErrorType.authFailed, message: t.companionRemote.pairing.cryptoInitFailed);
|
||||
}
|
||||
|
||||
await leaveSession();
|
||||
@@ -612,7 +620,10 @@ class CompanionRemoteProvider with ChangeNotifier, DisposableChangeNotifierMixin
|
||||
safeNotifyListeners();
|
||||
} catch (e) {
|
||||
appLogger.e('CompanionRemote: Failed to connect to manual host', error: e);
|
||||
_session = _session?.copyWith(status: RemoteSessionStatus.error, errorMessage: e.toString());
|
||||
_session = _session?.copyWith(
|
||||
status: RemoteSessionStatus.error,
|
||||
errorMessage: _localizedRemoteError(e, (details) => t.companionRemote.pairing.failedToConnect(error: details)),
|
||||
);
|
||||
safeNotifyListeners();
|
||||
rethrow;
|
||||
}
|
||||
|
||||
@@ -117,7 +117,10 @@ class CompanionRemotePeerService with KeepaliveMixin {
|
||||
List<RemoteAuthContext> authContexts,
|
||||
) async {
|
||||
if (authContexts.isEmpty) {
|
||||
throw const RemotePeerError(type: RemotePeerErrorType.authFailed, message: 'No auth contexts available');
|
||||
throw RemotePeerError(
|
||||
type: RemotePeerErrorType.authFailed,
|
||||
message: t.companionRemote.errors.authenticationFailed,
|
||||
);
|
||||
}
|
||||
|
||||
if (_server != null) {
|
||||
@@ -168,7 +171,7 @@ class CompanionRemotePeerService with KeepaliveMixin {
|
||||
_errorController.add(
|
||||
RemotePeerError(
|
||||
type: RemotePeerErrorType.serverError,
|
||||
message: 'Failed to create server: $e',
|
||||
message: t.companionRemote.errors.serverStartFailed(error: e.toString()),
|
||||
originalError: e,
|
||||
),
|
||||
);
|
||||
@@ -369,7 +372,7 @@ class CompanionRemotePeerService with KeepaliveMixin {
|
||||
_errorController.add(
|
||||
RemotePeerError(
|
||||
type: RemotePeerErrorType.dataChannelError,
|
||||
message: 'WebSocket error: $error',
|
||||
message: t.companionRemote.pairing.failedToConnect(error: error.toString()),
|
||||
originalError: error,
|
||||
),
|
||||
);
|
||||
@@ -396,7 +399,10 @@ class CompanionRemotePeerService with KeepaliveMixin {
|
||||
String expectedHostClientId = '',
|
||||
}) async {
|
||||
if (authContexts.isEmpty) {
|
||||
throw const RemotePeerError(type: RemotePeerErrorType.authFailed, message: 'No auth contexts available');
|
||||
throw RemotePeerError(
|
||||
type: RemotePeerErrorType.authFailed,
|
||||
message: t.companionRemote.errors.authenticationFailed,
|
||||
);
|
||||
}
|
||||
|
||||
if (_channel != null) {
|
||||
@@ -506,7 +512,10 @@ class CompanionRemotePeerService with KeepaliveMixin {
|
||||
appLogger.w('CompanionRemote: No shared auth context with host');
|
||||
if (!completer.isCompleted) {
|
||||
completer.completeError(
|
||||
const RemotePeerError(type: RemotePeerErrorType.authFailed, message: 'No shared identity'),
|
||||
RemotePeerError(
|
||||
type: RemotePeerErrorType.authFailed,
|
||||
message: t.companionRemote.errors.authenticationFailed,
|
||||
),
|
||||
);
|
||||
}
|
||||
unawaited(_channel?.sink.close(4003, 'Authentication failed'));
|
||||
@@ -520,7 +529,10 @@ class CompanionRemotePeerService with KeepaliveMixin {
|
||||
appLogger.w('CompanionRemote: Host client ID mismatch');
|
||||
if (!completer.isCompleted) {
|
||||
completer.completeError(
|
||||
const RemotePeerError(type: RemotePeerErrorType.authFailed, message: 'Host identity mismatch'),
|
||||
RemotePeerError(
|
||||
type: RemotePeerErrorType.authFailed,
|
||||
message: t.companionRemote.errors.authenticationFailed,
|
||||
),
|
||||
);
|
||||
}
|
||||
unawaited(_channel?.sink.close(4003, 'Authentication failed'));
|
||||
@@ -599,7 +611,7 @@ class CompanionRemotePeerService with KeepaliveMixin {
|
||||
_errorController.add(
|
||||
RemotePeerError(
|
||||
type: RemotePeerErrorType.connectionFailed,
|
||||
message: 'Connection error: $error',
|
||||
message: t.companionRemote.pairing.failedToConnect(error: error.toString()),
|
||||
originalError: error,
|
||||
),
|
||||
);
|
||||
@@ -614,7 +626,11 @@ class CompanionRemotePeerService with KeepaliveMixin {
|
||||
}
|
||||
|
||||
_errorController.add(
|
||||
RemotePeerError(type: RemotePeerErrorType.connectionFailed, message: 'Failed to connect: $e', originalError: e),
|
||||
RemotePeerError(
|
||||
type: RemotePeerErrorType.connectionFailed,
|
||||
message: t.companionRemote.pairing.failedToConnect(error: e.toString()),
|
||||
originalError: e,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -644,7 +660,10 @@ class CompanionRemotePeerService with KeepaliveMixin {
|
||||
String expectedHostClientId = '',
|
||||
}) async {
|
||||
if (authContexts.isEmpty) {
|
||||
throw const RemotePeerError(type: RemotePeerErrorType.authFailed, message: 'No auth contexts available');
|
||||
throw RemotePeerError(
|
||||
type: RemotePeerErrorType.authFailed,
|
||||
message: t.companionRemote.errors.authenticationFailed,
|
||||
);
|
||||
}
|
||||
|
||||
if (hostAddresses.length == 1) {
|
||||
@@ -743,7 +762,7 @@ class CompanionRemotePeerService with KeepaliveMixin {
|
||||
return winner;
|
||||
} on TimeoutException {
|
||||
cleanup();
|
||||
throw const RemotePeerError(type: RemotePeerErrorType.timeout, message: 'Timed out connecting to all addresses');
|
||||
throw RemotePeerError(type: RemotePeerErrorType.timeout, message: t.companionRemote.errors.joinTimedOut);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -878,7 +897,7 @@ class CompanionRemotePeerService with KeepaliveMixin {
|
||||
_errorController.add(
|
||||
RemotePeerError(
|
||||
type: RemotePeerErrorType.dataChannelError,
|
||||
message: 'Failed to send command: $e',
|
||||
message: t.companionRemote.errors.commandFailed(error: e.toString()),
|
||||
originalError: e,
|
||||
),
|
||||
);
|
||||
|
||||
@@ -2,6 +2,7 @@ import 'dart:async';
|
||||
import '../media/ids.dart';
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
import '../i18n/strings.g.dart';
|
||||
|
||||
import '../media/media_item.dart';
|
||||
import '../media/media_kind.dart';
|
||||
@@ -28,13 +29,13 @@ Future<void> navigateToLiveTv(
|
||||
}) async {
|
||||
final serverInfo = liveTvServerInfoForChannel(multiServer, channel);
|
||||
if (serverInfo == null) {
|
||||
showErrorSnackBar(context, 'Live TV server is not available.');
|
||||
showErrorSnackBar(context, Translations.of(context).liveTv.serverUnavailable);
|
||||
return;
|
||||
}
|
||||
|
||||
final client = multiServer.getClientForServer(ServerId(serverInfo.serverId));
|
||||
if (client == null) {
|
||||
showErrorSnackBar(context, 'Live TV server is not connected.');
|
||||
showErrorSnackBar(context, Translations.of(context).liveTv.serverNotConnected);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -64,7 +64,7 @@ class _RemoteSessionDialogState extends State<RemoteSessionDialog> with MountedS
|
||||
} catch (e) {
|
||||
setStateIfMounted(() {
|
||||
_isStarting = false;
|
||||
_errorMessage = e.toString();
|
||||
_errorMessage = t.companionRemote.errors.serverStartFailed(error: e.toString().replaceFirst('Exception: ', ''));
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -113,15 +113,7 @@ class _RemoteSessionDialogState extends State<RemoteSessionDialog> with MountedS
|
||||
if (_errorMessage != null) {
|
||||
return AlertDialog(
|
||||
title: Text(t.common.error),
|
||||
content: Column(
|
||||
mainAxisSize: .min,
|
||||
crossAxisAlignment: .start,
|
||||
children: [
|
||||
Text(t.companionRemote.session.failedToCreate),
|
||||
const SizedBox(height: 8),
|
||||
Text(_errorMessage!, style: const TextStyle(fontFamily: 'monospace')),
|
||||
],
|
||||
),
|
||||
content: Text(_errorMessage!, style: const TextStyle(fontFamily: 'monospace')),
|
||||
actions: [
|
||||
FocusableButton(
|
||||
autofocus: true,
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
|
||||
import '../i18n/strings.g.dart';
|
||||
import '../focus/dpad_navigator.dart';
|
||||
import '../focus/focus_theme.dart';
|
||||
import '../focus/focusable_text_field.dart';
|
||||
@@ -124,6 +125,7 @@ class _TvColorPickerState extends State<TvColorPicker> with ControllerDisposerMi
|
||||
const SizedBox(height: 16),
|
||||
_ColorChannelRow(
|
||||
label: 'H',
|
||||
semanticLabel: Translations.of(context).accessibility.hue,
|
||||
value: _hue,
|
||||
min: 0,
|
||||
max: 360,
|
||||
@@ -139,6 +141,7 @@ class _TvColorPickerState extends State<TvColorPicker> with ControllerDisposerMi
|
||||
const SizedBox(height: 8),
|
||||
_ColorChannelRow(
|
||||
label: 'S',
|
||||
semanticLabel: Translations.of(context).accessibility.saturation,
|
||||
value: _saturation,
|
||||
min: 0,
|
||||
max: 100,
|
||||
@@ -153,6 +156,7 @@ class _TvColorPickerState extends State<TvColorPicker> with ControllerDisposerMi
|
||||
const SizedBox(height: 8),
|
||||
_ColorChannelRow(
|
||||
label: 'V',
|
||||
semanticLabel: Translations.of(context).accessibility.brightness,
|
||||
value: _value,
|
||||
min: 0,
|
||||
max: 100,
|
||||
@@ -168,7 +172,11 @@ class _TvColorPickerState extends State<TvColorPicker> with ControllerDisposerMi
|
||||
FocusableTextField(
|
||||
controller: _hexController,
|
||||
focusNode: _hexFocusNode,
|
||||
decoration: const InputDecoration(prefixText: '#', labelText: 'Hex', border: OutlineInputBorder()),
|
||||
decoration: InputDecoration(
|
||||
prefixText: '#',
|
||||
labelText: Translations.of(context).accessibility.hexColor,
|
||||
border: const OutlineInputBorder(),
|
||||
),
|
||||
maxLength: 6,
|
||||
inputFormatters: [FilteringTextInputFormatter.allow(RegExp(r'[0-9a-fA-F]'))],
|
||||
onChanged: _onHexChanged,
|
||||
@@ -184,6 +192,7 @@ class _TvColorPickerState extends State<TvColorPicker> with ControllerDisposerMi
|
||||
/// UP/DOWN are ignored so focus traverses normally between rows.
|
||||
class _ColorChannelRow extends StatefulWidget {
|
||||
final String label;
|
||||
final String semanticLabel;
|
||||
final int value;
|
||||
final int min;
|
||||
final int max;
|
||||
@@ -197,6 +206,7 @@ class _ColorChannelRow extends StatefulWidget {
|
||||
|
||||
const _ColorChannelRow({
|
||||
required this.label,
|
||||
required this.semanticLabel,
|
||||
required this.value,
|
||||
required this.min,
|
||||
required this.max,
|
||||
@@ -317,7 +327,7 @@ class _ColorChannelRowState extends State<_ColorChannelRow> with KeyRepeatHelper
|
||||
_ChannelButton(
|
||||
icon: Symbols.remove_rounded,
|
||||
onPressed: canDecrement ? _decrement : null,
|
||||
semanticLabel: 'Decrease ${widget.label}',
|
||||
semanticLabel: Translations.of(context).accessibility.decreaseValue(label: widget.semanticLabel),
|
||||
),
|
||||
const SizedBox(width: 8),
|
||||
Container(
|
||||
@@ -329,7 +339,7 @@ class _ColorChannelRowState extends State<_ColorChannelRow> with KeyRepeatHelper
|
||||
_ChannelButton(
|
||||
icon: Symbols.add_rounded,
|
||||
onPressed: canIncrement ? _increment : null,
|
||||
semanticLabel: 'Increase ${widget.label}',
|
||||
semanticLabel: Translations.of(context).accessibility.increaseValue(label: widget.semanticLabel),
|
||||
),
|
||||
],
|
||||
),
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
|
||||
import '../i18n/strings.g.dart';
|
||||
import '../focus/dpad_navigator.dart';
|
||||
import '../focus/focus_theme.dart';
|
||||
import '../focus/input_mode_tracker.dart';
|
||||
@@ -155,7 +156,7 @@ class _TvNumberSpinnerState extends State<TvNumberSpinner> with KeyRepeatHelper<
|
||||
onPressed: canDecrement ? _decrement : null,
|
||||
onLongPressStart: canDecrement ? () => startRepeat(_decrement) : null,
|
||||
onLongPressEnd: stopRepeat,
|
||||
semanticLabel: 'Decrease',
|
||||
semanticLabel: Translations.of(context).accessibility.decrease,
|
||||
),
|
||||
const SizedBox(width: 16),
|
||||
Container(
|
||||
@@ -172,7 +173,7 @@ class _TvNumberSpinnerState extends State<TvNumberSpinner> with KeyRepeatHelper<
|
||||
onPressed: canIncrement ? _increment : null,
|
||||
onLongPressStart: canIncrement ? () => startRepeat(_increment) : null,
|
||||
onLongPressEnd: stopRepeat,
|
||||
semanticLabel: 'Increase',
|
||||
semanticLabel: Translations.of(context).accessibility.increase,
|
||||
),
|
||||
],
|
||||
),
|
||||
|
||||
Reference in New Issue
Block a user