diff --git a/lib/l10n/app_de.arb b/lib/l10n/app_de.arb index ee34fc01..3a4ed540 100644 --- a/lib/l10n/app_de.arb +++ b/lib/l10n/app_de.arb @@ -1328,5 +1328,17 @@ "feedbackDisclaimer": "Um Feedback einzureichen, benötigen Sie ein GitHub-Konto und Ihr Screenshot wird anonym an Imgur übermittelt.", "@feedbackDisclaimer": { "description": "Content of dialog shown before submitting feedback to make sure the user is ok whith where the data is going" + }, + "returnYoutubeUrlValidation": "Die Url muss mit http:// oder https:// beginnen", + "@returnYoutubeUrlValidation": { + "description": "error message for invalid custom url for return to youtube" + }, + "rydCustomInstance": "Benutzerdefinierte RYD-Instanz url", + "@rydCustomInstance": { + "description": "title for setting to set a custom ryd instance" + }, + "rydCustomInstanceDescription": "Eine andere RYD-Instanz verwenden, leer lassen, um die Standardinstanz zu verwenden", + "@rydCustomInstanceDescription": { + "description": "description for custom ryd instancr setting" } } diff --git a/lib/l10n/app_es.arb b/lib/l10n/app_es.arb index 3b54f7dd..6d65e5a5 100644 --- a/lib/l10n/app_es.arb +++ b/lib/l10n/app_es.arb @@ -1175,7 +1175,7 @@ "@subtitlesBackground": { "description": "Title for settings to set black background for subtitles" }, - "deArrowWarning": "Activar DeArrow puede reducir significativamente la velocidad de navegación de la aplicación, ya que se necesitan peticiones http adicionales para cada vídeo", + "deArrowWarning": "Habilitar DeArrow puede reducir significativamente la velocidad de navegación de la aplicación, ya que se necesitan solicitudes http adicionales para cada video", "@deArrowWarning": { "description": "Warning message when the user enables DeArrow" }, diff --git a/lib/l10n/app_fr.arb b/lib/l10n/app_fr.arb index 66944a1f..73ff4d9d 100644 --- a/lib/l10n/app_fr.arb +++ b/lib/l10n/app_fr.arb @@ -853,7 +853,7 @@ "@videoDownloadAudioOnly": { "description": "Label for toggle to download audio only " }, - "itemListErrorInvalidScope": "Vous n'avez pas l'autorisation de voir ceci, si vous vous êtes connecté·e en utilisant la méthode du jeton, essayez de vous déconnecter et de vous reconnecter", + "itemListErrorInvalidScope": "Vous n''avez pas l''autorisation de voir ceci, si vous vous êtes connecté·e en utilisant la méthode du jeton, essayez de vous déconnecter et de vous reconnecter", "@itemListErrorInvalidScope": { "description": "Error when the user doesn't have the proper scope to its current token" }, @@ -987,11 +987,11 @@ "@searchSortBy": { "description": "Search sorting option" }, - "layoutEditorExplanation": "Vous pouvez décider ce qui s'affiche sur la page principale, vous pouvez avoir jusqu'à 2 petits aperçus avec défilement horizontal et 1 grand aperçu.", + "layoutEditorExplanation": "Vous pouvez décider ce qui s''affiche sur la page principale, vous pouvez avoir jusqu''à 2 petits aperçus avec défilement horizontal et 1 grand aperçu.", "@layoutEditorExplanation": { "description": "text to explain the home layout editor" }, - "customizeAppLayoutExplanation": "Sélectionnez quels icônes apparaissent dans la barre de navigation. Cliquez sur le bouton « Accueil » pour sélectionner quel page s'ouvre quand l'application démarre. Vous pouvez réordonné les section par glisser-déposer.", + "customizeAppLayoutExplanation": "Sélectionnez quels icônes apparaissent dans la barre de navigation. Cliquez sur le bouton « Accueil » pour sélectionner quel page s''ouvre quand l''application démarre. Vous pouvez réordonné les section par glisser-déposer.", "@customizeAppLayoutExplanation": { "description": "" }, @@ -1045,7 +1045,7 @@ "@videoFilterApplyDateToFilter": { "description": "Label for switch to allow user to customize video filter and set days of week and time to them" }, - "videoFilterDayOfWeekDescription": "Vous pouvez choisir sélectivement les jours de la semaine et le temps auquel les filtres s'appliquent, par exemple, éviter les divulgâchis d'évènements sportifs.", + "videoFilterDayOfWeekDescription": "Vous pouvez choisir sélectivement les jours de la semaine et le temps auquel les filtres s''appliquent, par exemple, éviter les divulgâchis d''évènements sportifs.", "@videoFilterDayOfWeekDescription": { "description": "" }, @@ -1109,11 +1109,11 @@ "@deArrowWarning": { "description": "Warning message when the user enables DeArrow" }, - "submitFeedbackDescription": "Vous avez trouvé un bug ou avez une suggestion ? Utilisez cet outil pour prendre une capture d''écran de l'application, l'annoter, et envoyer un retour", + "submitFeedbackDescription": "Vous avez trouvé un bug ou avez une suggestion ? Utilisez cet outil pour prendre une capture d''écran de l''application, l''annoter, et envoyer un retour", "@submitFeedbackDescription": { "description": "Setting tile descriptions for feedback submission" }, - "feedbackDisclaimer": "Pour envoyer un retour, vous aurez besoin d'un compte GitHub et votre capture d'écran sera envoyé par Imgur anonymement.", + "feedbackDisclaimer": "Pour envoyer un retour, vous aurez besoin d''un compte GitHub et votre capture d''écran sera envoyé par Imgur anonymement.", "@feedbackDisclaimer": { "description": "Content of dialog shown before submitting feedback to make sure the user is ok whith where the data is going" }, @@ -1147,7 +1147,7 @@ "@enabled": { "description": "Text to show something is enabled" }, - "seeking": "Recherche", + "seeking": "Chercher", "@seeking": { "description": "category for settings related to seeking in a video" }, @@ -1175,7 +1175,7 @@ "@history": { "description": "User view history label" }, - "fullscreenOnLandscapeDescription": "Basculez en plein écran quand l'appareil est tourné à l'horizontal", + "fullscreenOnLandscapeDescription": "Basculez en plein écran quand l''appareil est tourné à l''horizontal", "@fullscreenOnLandscapeDescription": { "description": "Setting to enable full screen on landscape orientation" }, @@ -1236,5 +1236,115 @@ "channelSortByPopular": "Populaire", "@channelSortByPopular": { "description": "Sort channel videos by popularity" + }, + "foregroundServiceNotificationContent": "Va vérifier pour une nouvelle vidéo une fois {hours, select, 1{par heure} 24{par jour} other{chaque {hours} heures}}", + "@foregroundServiceNotificationContent": { + "description": "Content for the foreground service running notification when the user wants to receive notifications", + "hours": { + "type": "num", + "format": "compact" + } + }, + "deArrowReplaceThumbnails": "Remplacer les vignettes", + "@deArrowReplaceThumbnails": { + "description": "Settings title for checkbox on whether the thumbnail should be replaced as well" + }, + "exponentialSkip": "Avancer/Reculer exponentiellement", + "@exponentialSkip": { + "description": "Title for the setting to enable the exponential skipping" + }, + "skipStep": "Pas d''avancement/de recul", + "@skipStep": { + "description": "Title for the settings to set the skipping step" + }, + "skipStepDescription": "Secondes à sauter lors d''une action d''avancement/de recul", + "@skipStepDescription": { + "description": "Title for the settings to set the skipping step" + }, + "fullscreenOnLandscape": "Plein écran en mode paysage", + "@fullscreenOnLandscape": { + "description": "Setting title to enable full screen on landscape orientation" + }, + "copySettingsAsJson": "Copier les paramètres en JSON au presse-papiers", + "@copySettingsAsJson": { + "description": "title for settings sections to allow users to copy their settings as json to make debugging easier" + }, + "returnYoutubeUrlValidation": "L''URL doit commencer par http:// ou https://", + "@returnYoutubeUrlValidation": { + "description": "error message for invalid custom url for return to youtube" + }, + "askForDisableBatteryOptimizationContent": "Pour pouvoir envoyer des notifications, Clipious doit exécuter un service en arrière-plan. Pour être exécuté sans problème, il est requis pour Clipious d''avoir accés a l''utilisation de la batterie sans restriction. Appuyer sur ok va ouvrir les paramètres d''optimisation de la batterie.", + "@askForDisableBatteryOptimizationContent": { + "description": "Content for the dialog asking the user to turn off disabling battery optimization when turning on notifications" + }, + "notificationFrequencySliderLabel": "{hours, select, 24{1j} other{{hours}h}}", + "@notificationFrequencySliderLabel": { + "description": "Short form for a number of hours going up to 1 day", + "hours": { + "type": "num", + "format": "compact" + } + }, + "playlistNotificationContent": "Il {count, plural, =0{n''y a aucune nouvelle vidéo} =1{y a 1 nouvelle vidéo} other{{count} nouvelles vidéos}} sur la liste de lecture {playlist}", + "@playlistNotificationContent": { + "description": "Content for playlist notification when there are new videos", + "placeholders": { + "playlist": { + "type": "String", + "example": "Lo-Fi girl" + }, + "count": { + "type": "num", + "format": "compact" + } + } + }, + "subscriptionNotificationContent": "Il {count, plural, =0{n''y a aucune nouvelle vidéo} =1{y a 1 nouvelle vidéo} other{y a {count} nouvelles vidéos}} dans votre flux d''abonnement", + "@subscriptionNotificationContent": { + "description": "Content for subscription notification", + "placeholders": { + "count": { + "type": "num", + "format": "compact" + } + } + }, + "rydCustomInstanceDescription": "Utiliser une instance de RYD différente, laissez vide pour utiliser l''instance par défaut", + "@rydCustomInstanceDescription": { + "description": "description for custom ryd instancr setting" + }, + "rydCustomInstance": "URL d''une instance RYD personalisée", + "@rydCustomInstance": { + "description": "title for setting to set a custom ryd instance" + }, + "askForDisableBatteryOptimizationTitle": "Désactivation de l''optimisation de la batterie requise", + "@askForDisableBatteryOptimizationTitle": { + "description": "Title for the dialog asking the user to turn off disabling battery optimization when turning on notifications" + }, + "channelNotificationContent": "Il {count, plural, =0{n''y a aucune nouvelle vidéo} =1{y a 1 nouvelle vidéo} other{y a {count} nouvelles vidéos}} de {channel}", + "@channelNotificationContent": { + "description": "Content for channel notification when there are new videos", + "placeholders": { + "channel": { + "type": "String", + "example": "MKBHD" + }, + "count": { + "type": "num", + "format": "compact" + } + } + }, + "foregroundServiceNotificationTitle": "Surveillance de vidéos", + "@foregroundServiceNotificationTitle": { + "description": "Title for the foreground service running notification when the user wants to receive notifications" + }, + "deArrowSettingDescription": "Remplacer les titres et les vignettes pièges à clics", + "@deArrowSettingDescription": { + "description": "Description for dearrow" + }, + "deArrowReplaceThumbnailsDescription": "Remplacer les vignettes des vidéos, ainsi que les titres", + "@deArrowReplaceThumbnailsDescription": { + "description": "Description for DeArrow setting switch" } } diff --git a/lib/l10n/app_ko.arb b/lib/l10n/app_ko.arb index 84ee1b5f..71760349 100644 --- a/lib/l10n/app_ko.arb +++ b/lib/l10n/app_ko.arb @@ -266,5 +266,37 @@ "browsing": "탐색", "@browsing": { "description": "video browsing preferences" + }, + "showOnStart": "앱 시작 화면 선택", + "@showOnStart": { + "description": "Title of dialog asking which screen the users prefers to see" + }, + "about": "정보", + "@about": { + "description": "About" + }, + "build": "빌드", + "@build": { + "description": "build label" + }, + "logIn": "로그인", + "@logIn": { + "description": "CTA to log in to server" + }, + "invalidInvidiousServer": "유효하지 않은 Invidious 서버", + "@invalidInvidiousServer": { + "description": "Error when the user tries to add a server that is not a proper or reachable invidious server" + }, + "tapToAddServer": "탭하여 서버를 목록에 추가", + "@tapToAddServer": { + "description": "public server description" + }, + "addToPlaylist": "재생 목록에 추가", + "@addToPlaylist": { + "description": "Label to add a video to a playlist" + }, + "password": "비밀번호", + "@password": { + "description": "Password label for login to a server" } } diff --git a/lib/l10n/app_nl.arb b/lib/l10n/app_nl.arb index aeece200..915ee475 100644 --- a/lib/l10n/app_nl.arb +++ b/lib/l10n/app_nl.arb @@ -75,7 +75,7 @@ "@playListName": { "description": "Place holder for new playlist name text field" }, - "videos": "Videos", + "videos": "Video''s", "@videos": { "description": "Videos label" }, @@ -172,7 +172,7 @@ "@appLanguage": { "description": "Select app language" }, - "nVideos": "{count, plural, =0{No videos} =1{1 video} other{{count} videos}}", + "nVideos": "{count, plural, =0{Geen video''s} =1{1 video} other{{count} video''s}}", "@nVideos": { "description": "One or more videos", "placeholders": { @@ -194,7 +194,7 @@ "@streams": { "description": "Streams label" }, - "ok": "Oké", + "ok": "OK", "@ok": { "description": "Ok" }, @@ -236,7 +236,7 @@ "@playlistVisibility": { "description": "Dropdown label for playlist visibility" }, - "publicPlaylist": "Publiek", + "publicPlaylist": "Openbaar", "@publicPlaylist": { "description": "Public playlist" }, @@ -935,7 +935,7 @@ "@distractionFreeModeDescription": { "description": "Description for distraction free mode" }, - "couldntFetchVideos": "Kan video''s niet ophalen. Druk om opnieuw te proberen.", + "couldntFetchVideos": "Kan video''s niet laden. Klik om opnieuw te proberen.", "@couldntFetchVideos": { "description": "Can't load bunch of videos, asking user to try again" }, @@ -958,5 +958,395 @@ "itemListErrorInvalidScope": "U heeft geen toestemming om dit te zien. Als u hebt ingelogd met de tokenmethode, probeer dan uit en weer in te loggen", "@itemListErrorInvalidScope": { "description": "Error when the user doesn't have the proper scope to its current token" + }, + "sponsorBlockSettingsQuickDescription": "Selecteer welk type segmenten je wilt overslaan", + "@sponsorBlockSettingsQuickDescription": { + "description": "Small description of what the sponsor block settings do" + }, + "skipSslVerificationDescription": "Voor het gebruik van een zelfondertekend SSL-certificaat, of als je SSL-gerelateerde problemen hebt met je server.", + "@skipSslVerificationDescription": { + "description": "Setting description for the skip ssl certification verification" + }, + "sponsorBlockCategoryPreviewDescription": "Verzameling clips die laten zien wat er gaat komen in deze video of volgende video''s in een serie, waarbij alle informatie later in de video wordt herhaald.", + "@sponsorBlockCategoryPreviewDescription": { + "description": "Sponsorblock 'Preview' Category description" + }, + "returnYoutubeDislikeDescription": "Toon geschatte video dislikes gebruikmakend van de API geleverd door returnyoutubedislike.com", + "@returnYoutubeDislikeDescription": { + "description": "ReturnYoutubeDislike setting description" + }, + "videoFilterHideDescription": "Standaard worden gefilterde video''s niet verborgen maar verduisterd weergegeven met de reden(en) waarom ze zijn gefilterd. Deze instelling verwijdert de gefilterde video''s uit de lijsten.", + "@videoFilterHideDescription": { + "description": "" + }, + "lockFullScreenToLandscapeDescription": "Stelt de volledige schermoriëntatie in op basis van het videoformaat: landschap voor horizontale video''s en portret voor verticale video''s", + "@lockFullScreenToLandscapeDescription": { + "description": "Setting description for forcing video to landscape when in full screen" + }, + "enableNotificationDescriptions": "Draait een voorgrondservice om de wijzigingen die je volg te controleren en je meldingen te geven", + "@enableNotificationDescriptions": { + "description": "" + }, + "sponsorBlockDescription": "Gesponsorde segmenten die zijn ingediend door de community overslaan", + "@sponsorBlockDescription": { + "description": "Sponsorblock setting description" + }, + "tapToAddServer": "Klik om de server aan je lijst toe te voegen", + "@tapToAddServer": { + "description": "public server description" + }, + "cookieLoginDescription": "Gebruik deze manier als je problemen ervaart met token authenticatie", + "@cookieLoginDescription": { + "description": "Cookie log in description" + }, + "sponsorBlockCategoryInteractionDescription": "Wanneer er een korte reminder is om te liken, te abonneren of te volgen midden in de inhoud. Als het segment lang is of over iets specifieks gaat, moet het onder zelfpromotie vallen.", + "@sponsorBlockCategoryInteractionDescription": { + "description": "Sponsor block 'Interaction' Category description" + }, + "sponsorBlockCategoryFillerDescription": "Extra scenes die alleen zijn toegevoegd als opvulling of voor de humor en niet nodig zijn om de inhoud van de video te begrijpen. Dit moet geen segmenten bevatten die achtergrond of context bieden. Dit is een erg agressieve categorie, bedoeld voor als je geen zin hebt in \"plezier\".", + "@sponsorBlockCategoryFillerDescription": { + "description": "Sponsorblock 'Filler' Category description" + }, + "skipStepDescription": "Aantal seconden om over te slaan bij doorspoel/terugspoel acties", + "@skipStepDescription": { + "description": "Title for the settings to set the skipping step" + }, + "publicServersError": "Kon de lijst van publieke servers niet laden. Klik om opnieuw te proberen.", + "@publicServersError": { + "description": "Error message when trying to get public servers but it failed" + }, + "useDashDescription": "DASH adaptieve streaming kan soms problematisch zijn; YouTube kan het vertragen.", + "@useDashDescription": { + "description": "Description for dash in the settings screen" + }, + "sponsorBlockCategoryUnpaidSelfPromoDescription": "Vergelijkbaar met \"sponsor\" maar dan voor onbetaalde of zelfpromotie. Dit is inclusief secties over merchandise, donaties of informatie over met wie ze hebben samengewerkt. ", + "@sponsorBlockCategoryUnpaidSelfPromoDescription": { + "description": "Sponsor block 'Unpaid/Self promotion' Category description" + }, + "sponsorBlockCategoryIntroDescription": "Een interval zonder daadwerkelijke inhoud. Kan een pauze, een stilstaand beeld of een herhalende animatie zijn. Deze categorie moet niet worden toegepast voor overgangen die informatie bevatten.", + "@sponsorBlockCategoryIntroDescription": { + "description": "Sponsorblock 'Intro' Category description" + }, + "sponsorBlockCategoryMusicOffTopicDescription": "Alleen te gebruiken in muziekvideo''s. Dit moet alleen worden gebruikt voor delen van muziekvideo''s die niet gedekt worden door een andere categorie.", + "@sponsorBlockCategoryMusicOffTopicDescription": { + "description": "Only for use in music videos. This only should be used for sections of music videos that aren't already covered by another category." + }, + "videoFiltersExplanation": "Verberg of obfusceer video''s van alle videofeeds in de app gebaseerd op de filters hieronder. Dit geeft bijvoorbeeld de mogelijkheid om sportuitslagen of shorts van een bepaald kanaal te verbergen.", + "@videoFiltersExplanation": { + "description": "Description on how filter work" + }, + "videoFiltersSettingTileDescriptions": "Definieer regels om video''s weg te filteren", + "@videoFiltersSettingTileDescriptions": { + "description": "Description for the main settings page" + }, + "videoFiltered": "Video''s gefilterd door de volgende reden(en):", + "@videoFiltered": { + "description": "Label shown on video list when it is filtered out" + }, + "noDownloadedVideos": "Geen gedownloade video''s. Blader of zoek en houd een video in de resultaten lang ingedrukt of tik op de downloadknop op het afspeelscherm van een video om een video te downloaden", + "@noDownloadedVideos": { + "description": "Message showing when the user goes to the download screen but there are no offline videos." + }, + "copySettingsAsJson": "Kopieer instellingen als JSON naar het klembord", + "@copySettingsAsJson": { + "description": "title for settings sections to allow users to copy their settings as json to make debugging easier" + }, + "copySettingsAsJsonDescription": "Kopieer de instellingen als JSON om te helpen bij het debuggen als je een probleem tegenkomt in de applicatie en dat besluit te melden", + "@copySettingsAsJsonDescription": { + "description": "" + }, + "showOnStart": "Selecteer wat je wilt zien als je de app opent", + "@showOnStart": { + "description": "Title of dialog asking which screen the users prefers to see" + }, + "blackBackgroundDescription": "Voor donker thema op een OLED scherm", + "@blackBackgroundDescription": { + "description": "Description for dark background setting" + }, + "sponsorBlockCategorySponsorDescription": "Betaalde promotie, betaalde verwijzingen en directe advertenties. Niet voor zelfpromotie of gratis shoutouts voor doelen, makers, websites of producten die ze leuk vinden.", + "@sponsorBlockCategorySponsorDescription": { + "description": "Sponsor block 'Sponsor' Category description" + }, + "subtitleFontSizeDescription": "Verander de grootte van de ondertiteling als die te groot of te klein is op jouw apparaat", + "@subtitleFontSizeDescription": { + "description": "Settings description for subtitle size" + }, + "autoplayVideoOnLoadDescription": "Start de video automatisch af te spelen nadat deze is geladen", + "@autoplayVideoOnLoadDescription": { + "description": "Description for the autoplay video on load setting" + }, + "nReplies": "{count, plural, =0{Geen reacties} =1{1 reactie} other{{count} reacties}}", + "@nReplies": { + "description": "number of replies to a comment", + "placeholders": { + "count": { + "type": "num", + "format": "compact" + } + } + }, + "addServerHelpText": "Klik op de + om je eigen servers toe te voegen of klik op een publieke server en voeg die toe.", + "@addServerHelpText": { + "description": "label for when the user hasn't chosen a server yet" + }, + "useDynamicThemeDescription": "Gebruik Material You kleuren (alleen beschikbaar op Android 12+)", + "@useDynamicThemeDescription": { + "description": "" + }, + "malformedStatsEndpoint": "/api/v1/stats is anders dan verwacht", + "@malformedStatsEndpoint": { + "description": "Title for dialog when adding a server that isn't validated as it should" + }, + "malformedStatsEndpointDescription": "Het server stats eindpunt gaf geen verwachte payload, de sleutel \"software.name\" moet \"invidious\" zijn.\nReactie van de server:", + "@malformedStatsEndpointDescription": { + "description": "Description of the possible issue for an invalid stats endpoints" + }, + "sponsorBlockCategoryOutroDescription": "Credits of als het Youtube eindscherm wordt getoond. Niet voor conclusies met informatie.", + "@sponsorBlockCategoryOutroDescription": { + "description": "Outro block 'Outro' Category description" + }, + "useProxyDescription": "Door video''s van de server te proxyen kan je regionale blokkades of een blokkade van je internetprovider voor YouTube omzeilen", + "@useProxyDescription": { + "description": "Description for the use proxy settings" + }, + "appLogsDescription": "Krijg logs van wat er gebeurt in de applicatie. Kan nuttig zijn om problemen te raporteren", + "@appLogsDescription": { + "description": "Description of the app log settings" + }, + "videoFilterEditDescription": "Selecteer een optioneel kanaal, een filtertype, een bewerking en een waarde om video''s uit lijsten WEG te filteren. Voorbeeld: type: videonaam, bewerking: bevat, waarde: test zal alle video''s met het woord 'test' in hun naam UITSLUITEN.", + "@videoFilterEditDescription": { + "description": "Descriptive test for video filter set up" + }, + "lockFullScreenToLandscape": "Koppel de oriëntatie van volledig scherm aan de beeldverhouding van de video", + "@lockFullScreenToLandscape": { + "description": "Title to force full screen to landscape" + }, + "layoutEditorExplanation": "Je kunt zelf beslissen wat je op je startscherm wilt weergeven. Je kunt maximaal 2 bronnen voor de kleine horizontale weergave en één bron met grote video''s kiezen.", + "@layoutEditorExplanation": { + "description": "text to explain the home layout editor" + }, + "notificationsDescription": "Schakel meldingen in, en check waarover je meldingen ontvangt", + "@notificationsDescription": { + "description": "Setting description for notifications" + }, + "subscriptionNotificationDescription": "Krijg meldingen van nieuwe video''s van kanalen waarop je geabonneerd bent als je ingelogd bent op je huidige Invidious versie", + "@subscriptionNotificationDescription": { + "description": "Description for subscription notifications" + }, + "subscriptionNotificationTitle": "Nieuwe video''s van je geabonneerde kanalen", + "@subscriptionNotificationTitle": { + "description": "Title for the notification showing that there are new videos from the subscription feed" + }, + "askForDisableBatteryOptimizationContent": "Om meldingen te kunnen sturen moet Clipious een achtergrondservice uitvoeren. Voor een betrouwbare werking moet Clipious onbeperkt batterijgebruik krijgen. Door op ok te tikken, worden de instellingen voor batterijoptimalisatie geopend.", + "@askForDisableBatteryOptimizationContent": { + "description": "Content for the dialog asking the user to turn off disabling battery optimization when turning on notifications" + }, + "notificationFrequencySettingsDescription": "Hoe vaak de applicatie controleert voor nieuwe video''s", + "@notificationFrequencySettingsDescription": { + "description": "Description for frequency settings" + }, + "deArrowReplaceThumbnailsDescription": "Vervang zowel videominiaturen als de titels", + "@deArrowReplaceThumbnailsDescription": { + "description": "Description for DeArrow setting switch" + }, + "returnYoutubeUrlValidation": "Url moet beginnen met http:// of https://", + "@returnYoutubeUrlValidation": { + "description": "error message for invalid custom url for return to youtube" + }, + "rydCustomInstance": "Aangepaste RYD-versie url", + "@rydCustomInstance": { + "description": "title for setting to set a custom ryd instance" + }, + "rydCustomInstanceDescription": "Gebruik een andere RYD-versie, laat leeg om de standaard te gebruiken", + "@rydCustomInstanceDescription": { + "description": "description for custom ryd instancr setting" + }, + "searchHistoryLimitDescription": "Stel in hoeveel eerdere zoekopdrachten worden weergegeven bij de suggesties", + "@searchHistoryLimitDescription": { + "description": "Settings label for search history limit description" + }, + "nFilters": "{count, plural, =0{Geen video''s} =1{1 filter} other{{count} filters}}", + "@nFilters": { + "description": "One or more video filters", + "placeholders": { + "count": { + "type": "num", + "format": "compact" + } + } + }, + "videoFilterDescriptionString": "{hideOrFilter} video''s waar {type} {operation} ''{value}''.", + "@videoFilterDescriptionString": { + "description": "Human readable description of a video filter, in this case is it for string comparison, example: Hide videos where the name of the video does not contain the following string 'test' (Do not translate text between { })", + "placeholders": { + "hideOrFilter": { + "type": "String", + "example": "Hide" + }, + "type": { + "type": "String", + "example": "video title" + }, + "operation": { + "type": "String", + "example": "does not contain" + }, + "value": { + "type": "String", + "example": "some filter text" + } + } + }, + "videoFilterNoFilters": "Geen videofilters, klik op '+' om te beginnen met het toevoegen van filters.", + "@videoFilterNoFilters": { + "description": "Label when there are no video filters" + }, + "rememberSubtitleLanguageDescription": "Stel de ondertiteling automatisch in op de laatst geselecteerde taal, indien beschikbaar", + "@rememberSubtitleLanguageDescription": { + "description": "Settings description for remembering subtitle language" + }, + "fillFullscreenDescription": "Past de video aan om in landschapsmodus het volledige scherm te vullen", + "@fillFullscreenDescription": { + "description": "Setting description for filling video to screen in landscape" + }, + "rememberPlaybackSpeedDescription": "Stel de afspeelsnelheid automatisch in op de laatstgekozen snelheid", + "@rememberPlaybackSpeedDescription": { + "description": "Settings description for remembering playback speed" + }, + "noSubscriptions": "Geen abonnementen. Blader door video''s en abonneer je op de kanalen die je leuk vindt.", + "@noSubscriptions": { + "description": "Message when the user has no subs" + }, + "youCanSubscribeAgainLater": "Je kan je later opnieuw op dit kanaal abonneren", + "@youCanSubscribeAgainLater": { + "description": "Text for the unscubscribe confirmation dialog" + }, + "clearHistoryQuestionExplanation": "Dit zal de kijkgeschiedenis wissen van je account op de Invidious-versie die je gebruikt. Dit kan niet ongedaan worden gemaakt.", + "@clearHistoryQuestionExplanation": { + "description": "Message for dialog before clearing full viewing history" + }, + "noHistory": "Geen kijkgeschiedenis. Bekijk wat video''s, dan worden ze hier weergegeven", + "@noHistory": { + "description": "Message when the user visits the history tab but it's empty" + }, + "customizeAppLayoutExplanation": "Selecteer welke items je wilt tonen in de hoofdnavigatiebalk van de app. Klik op het huisje om te kiezen welk scherm wordt weergegeven wanneer de applicatie start. Je kunt de volgorde aanpassen door de secties te slepen.", + "@customizeAppLayoutExplanation": { + "description": "" + }, + "videoFilterApplyDateToFilter": "Filter video''s op gegeven tijd", + "@videoFilterApplyDateToFilter": { + "description": "Label for switch to allow user to customize video filter and set days of week and time to them" + }, + "videoFilterDayOfWeek": "Selecteer dagen om de filters toe te passen", + "@videoFilterDayOfWeek": { + "description": "Title for day selection for the filter" + }, + "videoFilterDayOfWeekDescription": "Je kunt selectief dagen van de week en tijdstippen kiezen waarop de filters van toepassing zijn, bijvoorbeeld om spoilers van sportevenementen te vermijden.", + "@videoFilterDayOfWeekDescription": { + "description": "" + }, + "subscriptionNotificationContent": "Er {count, plural, =0{zijn geen nieuwe video''s} =1{is 1 nieuwe video} other{zijn {count} nieuwe video''s}} van je geabonneerde kanalen", + "@subscriptionNotificationContent": { + "description": "Content for subscription notification", + "placeholders": { + "count": { + "type": "num", + "format": "compact" + } + } + }, + "deleteChannelNotificationContent": "Je zal geen meldingen meer ontvangen van dit kanaal.", + "@deleteChannelNotificationContent": { + "description": "Title for dialog to confirm whether to delete channel notifications" + }, + "askToEnableBackgroundServiceContent": "Om meldingen te ontvangen, moeten Clipious-meldingen zijn ingeschakeld. Druk op OK om deze meldingen in te schakelen.", + "@askToEnableBackgroundServiceContent": { + "description": "If the users tries to turn on notifications for a channel but hasn't enable notifications in the app we need to turn it on for them" + }, + "deletePlaylistNotificationContent": "Je zal geen meldingen meer ontvangen van deze afspeellijst.", + "@deletePlaylistNotificationContent": { + "description": "Title for dialog to confirm whether to delete playlist notifications" + }, + "channelNotificationContent": "Er {count, plural, =0{zijn geen nieuwe video''s} =1{is 1 nieuwe video} other{zijn {count} nieuwe video''s}} van {channel}", + "@channelNotificationContent": { + "description": "Content for channel notification when there are new videos", + "placeholders": { + "channel": { + "type": "String", + "example": "MKBHD" + }, + "count": { + "type": "num", + "format": "compact" + } + } + }, + "playlistNotificationTitle": "Nieuwe video''s in de afspeellijst {playlist}", + "@playlistNotificationTitle": { + "description": "Title for the playlist notifications when there are new videos", + "placeholders": { + "playlist": { + "type": "String", + "example": "Lo-Fi girl" + } + } + }, + "otherNotifications": "Andere meldingbronnen (bel pictogrammen)", + "@otherNotifications": { + "description": "Title for settings section in the notification settings" + }, + "playlistNotificationContent": "Er {count, plural, =0{zijn geen nieuwe video''s} =1{is 1 nieuwe video} other{zijn {count} nieuwe video''s}} in de afspeellijst {playlist}", + "@playlistNotificationContent": { + "description": "Content for playlist notification when there are new videos", + "placeholders": { + "playlist": { + "type": "String", + "example": "Lo-Fi girl" + }, + "count": { + "type": "num", + "format": "compact" + } + } + }, + "foregroundServiceNotificationContent": "Controleert voor nieuwe video''s {hours, select, 1{elk uur} 24{elke dag} other{elke {hours} uur}}", + "@foregroundServiceNotificationContent": { + "description": "Content for the foreground service running notification when the user wants to receive notifications", + "hours": { + "type": "num", + "format": "compact" + } + }, + "subtitlesBackgroundDescription": "Voegt een zwarte achtergrond toe aan de ondertiteling om deze beter leesbaar te maken", + "@subtitlesBackgroundDescription": { + "description": "Description for settings to set black background for subtitles" + }, + "deArrowSettingDescription": "Vervang clickbait titels en miniaturen", + "@deArrowSettingDescription": { + "description": "Description for dearrow" + }, + "deArrowWarning": "Het inschakelen van DeArrow kan de snelheid van bladeren door de app aanzienlijk verminderen, omdat voor elke afzonderlijke video extra HTTP-verzoeken nodig zijn", + "@deArrowWarning": { + "description": "Warning message when the user enables DeArrow" + }, + "exponentialSkipDescription": "Hoe meer je doorspoelt, des te groter de sprong wordt.", + "@exponentialSkipDescription": { + "description": "Title for the setting to enable the exponential skipping" + }, + "fullscreenOnLandscapeDescription": "Schakel naar volledig scherm als het apparaat in landschapsmodus is", + "@fullscreenOnLandscapeDescription": { + "description": "Setting to enable full screen on landscape orientation" + }, + "feedbackScreenshotError": "Fout tijdens het uploaden van de screenshot naar Imgur", + "@feedbackScreenshotError": { + "description": "Title for dialog if something goes wrong while uploading feedback screenshot" + }, + "submitFeedbackDescription": "Heb je een fout gevonden of heb je een suggestie? Gebruik deze tool om een screenshot van de app te maken, de feedback uit te leggen en te versturen", + "@submitFeedbackDescription": { + "description": "Setting tile descriptions for feedback submission" + }, + "feedbackDisclaimer": "Om feedback in te dienen heb je een GitHub-account nodig en wordt je screenshot anoniem naar Imgur verzonden.", + "@feedbackDisclaimer": { + "description": "Content of dialog shown before submitting feedback to make sure the user is ok whith where the data is going" } } diff --git a/lib/l10n/app_uk.arb b/lib/l10n/app_uk.arb index d0245136..e1528ad4 100644 --- a/lib/l10n/app_uk.arb +++ b/lib/l10n/app_uk.arb @@ -43,7 +43,7 @@ "@add": { "description": "Add button abel" }, - "info": "Інформація", + "info": "Відомості", "@info": { "description": "Info label" }, @@ -112,7 +112,7 @@ "@createNewPlaylist": { "description": "Button label to create a new playlist when the user wants to add a video to a playlist" }, - "newSorting": "Нове", + "newSorting": "Найновіші", "@newSorting": { "description": "Content sorting: new" }, @@ -120,7 +120,7 @@ "@streamIsLive": { "description": "Label when a video is a live stream" }, - "topSorting": "Топ", + "topSorting": "Найкращі", "@topSorting": { "description": "Content sorting: top" }, @@ -225,7 +225,7 @@ "@videoUnlisted": { "description": "Status of a video that is only accessible by link" }, - "videoIsFamilyFriendly": "Сімейний", + "videoIsFamilyFriendly": "Сімейне", "@videoIsFamilyFriendly": { "description": "Displayed only when a video is family friendly" }, @@ -253,7 +253,7 @@ "@password": { "description": "Password label for login to a server" }, - "wrongUsernamePassword": "Неправильне ім''я користувача або пароль", + "wrongUsernamePassword": "Неправильне ім’я користувача або пароль", "@wrongUsernamePassword": { "description": "Error message when authentication fails" }, @@ -271,15 +271,15 @@ "@sponsorBlockCategoryUnpaidSelfPromo": { "description": "Sponsor block 'Unpaid/Self promotion' Category" }, - "sponsorBlockCategoryUnpaidSelfPromoDescription": "Схоже на \"спонсор\", за винятком безоплатного або самореклами. Сюди входять розділи про товари, пожертви або інформацію про те, з ким вони співпрацювали ", + "sponsorBlockCategoryUnpaidSelfPromoDescription": "Схоже на категорію \"спонсор\", за винятком безоплатного або самореклами. Сюди входять розділи про товари, пожертви або інформацію про те, з ким вони співпрацювали ", "@sponsorBlockCategoryUnpaidSelfPromoDescription": { "description": "Sponsor block 'Unpaid/Self promotion' Category description" }, - "sponsorBlockCategoryOutro": "Кінцеві картки / Титри", + "sponsorBlockCategoryOutro": "Кінцеві картки/Титри", "@sponsorBlockCategoryOutro": { "description": "Outro block 'Outro' Category" }, - "sponsorBlockCategoryOutroDescription": "Титри або коли з''являються кінцівки YouTube. Не для висновків з інформацією.", + "sponsorBlockCategoryOutroDescription": "Титри або коли з’являються кінцеві картки YouTube. Не для висновків з інформацією.", "@sponsorBlockCategoryOutroDescription": { "description": "Outro block 'Outro' Category description" }, @@ -291,7 +291,7 @@ "@sponsorBlockCategoryFiller": { "description": "Sponsorblock 'Filler' Category" }, - "sponsorBlockCategoryMusicOffTopic": "Музика: Немузичний розділ", + "sponsorBlockCategoryMusicOffTopic": "Музика: немузичний розділ", "@sponsorBlockCategoryMusicOffTopic": { "description": "Sponsorblock 'MusicOffTopic' Category" }, @@ -299,11 +299,11 @@ "@blackBackground": { "description": "Black backgroun option label for dark theme with oled" }, - "blackBackgroundDescription": "Для темної теми на OLED-екрані", + "blackBackgroundDescription": "Для темної теми на OLED екрані", "@blackBackgroundDescription": { "description": "" }, - "nVideos": "{count, plural, =0{немає відео} =1{1 відео} other{{count} відео}}", + "nVideos": "{count, plural, =0{Немає відео} =1{1 відео} other{{count} відео}}", "@nVideos": { "description": "One or more videos", "placeholders": { @@ -375,15 +375,15 @@ "@loadMore": { "description": "CTA to load more" }, - "selectBrowsingCountry": "Виберіть країну перегляду", + "selectBrowsingCountry": "Оберіть країну перегляду", "@selectBrowsingCountry": { "description": "Select country for trending content" }, - "sponsorBlockDescription": "Пропускає сегменти спонсорів, які подала спільнота", + "sponsorBlockDescription": "Пропускати сегменти спонсорів, які подала спільнота", "@sponsorBlockDescription": { "description": "Sponsorblock setting description" }, - "showOnStart": "Виберіть, що показувати під час запуску застосунку", + "showOnStart": "Оберіть, що показувати під час запуску застосунку", "@showOnStart": { "description": "Title of dialog asking which screen the users prefers to see" }, @@ -391,7 +391,7 @@ "@whenAppStartsShow": { "description": "Setting title for selecting the screen to show on start" }, - "package": "Пакет", + "package": "Пакунок", "@package": { "description": "package label" }, @@ -411,7 +411,7 @@ "@notLoggedIn": { "description": "Label when the user is not logged in to the server" }, - "addServerHelpText": "Використовуйте кнопку +, щоб додати власні сервери, або натисніть на публічний сервер і додайте його.", + "addServerHelpText": "Використовуйте кнопку +, щоб додати власні сервери або натисніть на публічний сервер та додайте його.", "@addServerHelpText": { "description": "label for when the user hasn't chosen a server yet" }, @@ -423,11 +423,11 @@ "@publicServersError": { "description": "Error message when trying to get public servers but it failed" }, - "useDashDescription": "Адаптивне потокове мовлення DASH іноді може бути проблематичним, YouTube може його гальмувати.", + "useDashDescription": "Адаптивний стримінг DASH, іноді може бути проблематичним, YouTube може обмежувати його швидкість.", "@useDashDescription": { "description": "Description for dash in the settings screen" }, - "videoListed": "Публічний", + "videoListed": "Публічне", "@videoListed": { "description": "Status of a publicly available video" }, @@ -443,11 +443,11 @@ "@username": { "description": "Username label for login to a server" }, - "addToQueueList": "Додати в чергу", + "addToQueueList": "Додати до черги", "@addToQueueList": { "description": "Label on button to add a video to the queue list" }, - "sponsorBlockSettingsQuickDescription": "Виберіть, який тип сегментів пропускати", + "sponsorBlockSettingsQuickDescription": "Оберіть, який тип сегментів пропускати", "@sponsorBlockSettingsQuickDescription": { "description": "Small description of what the sponsor block settings do" }, @@ -487,11 +487,11 @@ "@sponsorBlockCategoryMusicOffTopicDescription": { "description": "Only for use in music videos. This only should be used for sections of music videos that aren't already covered by another category." }, - "useProxy": "Проксі-відео", + "useProxy": "Використовувати проксі", "@useProxy": { "description": "label for settings switch to proxy videos from server" }, - "useProxyDescription": "Проксі-сервер дозволяє обходити регіональні блоки або блокування YouTube провайдером", + "useProxyDescription": "Проксі дозволяє обходити регіональні обмеження або блокування YouTube провайдером", "@useProxyDescription": { "description": "Description for the use proxy settings" }, @@ -531,7 +531,7 @@ "@subtitleFontSizeDescription": { "description": "Settings description for subtitle size" }, - "skipSslVerification": "Пропустити перевірку SSL-сертифіката", + "skipSslVerification": "Пропускати перевірку SSL-сертифіката", "@skipSslVerification": { "description": "Setting label to skip ssl certification verification" }, @@ -543,7 +543,7 @@ "@themeDark": { "description": "Dark theme" }, - "followSystem": "Стежити за системою", + "followSystem": "Як у системі", "@followSystem": { "description": "Follow system label" }, @@ -559,7 +559,7 @@ "@themeBrightness": { "description": "Ask the user to user dark / light / system theme" }, - "returnYoutubeDislikeDescription": "Показувати оціночну кількість дизлайків відео за допомогою API, наданого returnyoutubedislike.com", + "returnYoutubeDislikeDescription": "Показувати приблизну кількість дизлайків під відео за допомогою API, наданого returnyoutubedislike.com", "@returnYoutubeDislikeDescription": { "description": "ReturnYoutubeDislike setting description" }, @@ -595,7 +595,7 @@ "@searchHistoryDescription": { "description": "Description for search history settings" }, - "searchSortViewCount": "Кількість переглядів", + "searchSortViewCount": "Кількістю переглядів", "@searchSortViewCount": { "description": "Sort search by view count" }, @@ -603,11 +603,11 @@ "@searchSortUploadDate": { "description": "Sort search by upload date" }, - "searchSortRelevance": "Актуальність", + "searchSortRelevance": "Актуальністю", "@searchSortRelevance": { "description": "Sort search by relevance" }, - "searchSortRating": "Рейтинг", + "searchSortRating": "Рейтингом", "@searchSortRating": { "description": "Sort search by rating" }, @@ -619,7 +619,7 @@ "@rememberSubtitleLanguageDescription": { "description": "Settings description for remembering subtitle language" }, - "rememberSubtitleLanguage": "Запам''ятайте мову субтитрів", + "rememberSubtitleLanguage": "Запам’ятати мову субтитрів", "@rememberSubtitleLanguage": { "description": "Settings label for remembering subtitle language" }, @@ -635,7 +635,7 @@ "@appLogs": { "description": "Title for settings that leads to application logs" }, - "appLogsDescription": "Отримуйте журнали того, що відбувається в застосунку, це може бути корисно для повідомлення про проблеми", + "appLogsDescription": "Отримайте журнали того, що відбувається в застосунку, це може бути корисно для повідомлення про проблеми", "@appLogsDescription": { "description": "Description of the app log settings" }, @@ -651,7 +651,7 @@ "@save": { "description": "Text for save action" }, - "optional": "необов''язково", + "optional": "необов’язково", "@optional": { "description": "Optional label" }, @@ -677,7 +677,7 @@ } } }, - "videoFilterHide": "Приховати відфільтровані відео", + "videoFilterHide": "Приховувати відфільтровані відео", "@videoFilterHide": { "description": "Label for settings to hide filtered videos" }, @@ -705,7 +705,7 @@ "@videoFilterValue": { "description": "Label for filter value" }, - "videoFilterNoFilters": "Немає фільтрів для відео, натисніть кнопку \"+\" нижче, щоб почати додавати фільтри.", + "videoFilterNoFilters": "Немає фільтрів, натисніть кнопку \"+\" нижче, щоб почати додавати фільтри.", "@videoFilterNoFilters": { "description": "Label when there are no video filters" }, @@ -721,7 +721,7 @@ "@videoFilterHideAllFromChannel": { "description": "Label for video filter switch to allow to hide all videos from a channel" }, - "lockFullScreenToLandscape": "Прив''язка повноекранної орієнтації до співвідношення сторін відео", + "lockFullScreenToLandscape": "Заблокувати орієнтацію повноекранного режиму відтворення відео відповідно до співвідношення сторін відео", "@lockFullScreenToLandscape": { "description": "Title to force full screen to landscape" }, @@ -741,7 +741,7 @@ "@videoFilterType": { "description": "Label for filter type" }, - "videoFiltersExplanation": "Приховувати або затушовуйте відео з усіх відео каналів у застосунку на основі фільтрів, визначених нижче. Це дозволяє, наприклад, приховати спортивні спойлери або приховати shorts з певного каналу.", + "videoFiltersExplanation": "Приховувати або затемнювати відео з усіх відео каналів у застосунку на основі фільтрів, визначених нижче. Це дозволяє, наприклад, приховати спортивні спойлери або приховати Shorts з певного каналу.", "@videoFiltersExplanation": { "description": "Description on how filter work" }, @@ -753,11 +753,11 @@ "@editVideoFilter": { "description": "Title when editting a filter" }, - "videoFilterTapToReveal": "Торкніться, щоб відкрити", + "videoFilterTapToReveal": "Натисніть, щоб відкрити", "@videoFilterTapToReveal": { "description": "Label to tell user to tap to show a filtered video" }, - "videoFilterEditDescription": "Виберіть необов''язковий канал, тип фільтра, операцію та значення, щоб відфільтрувати відео зі списків. Наприклад, тип: назва відео, операція: містить, значення: тест - ВИКЛЮЧИТИ усі відео зі словом \"тест\" у назві.", + "videoFilterEditDescription": "Оберіть канал, тип фільтра, операцію та значення, щоб відфільтрувати відео зі списків. Наприклад, тип – назва відео, операція – містить, а значення – виключити усі відео зі словом «тест» у назві.", "@videoFilterEditDescription": { "description": "Descriptive test for video filter set up" }, @@ -765,19 +765,19 @@ "@videoFilterHideLabel": { "description": "Label to hide videos" }, - "videoFilterFilterLabel": "Затушувати", + "videoFilterFilterLabel": "Затемнювати", "@videoFilterFilterLabel": { "description": "Label to filter videos" }, - "videoFiltered": "Відео відфільтроване з наступних причин(и):", + "videoFiltered": "Відео відфільтроване з наступних причин:", "@videoFiltered": { "description": "Label shown on video list when it is filtered out" }, - "videoFilterTypeVideoLength": "Тривалість відео (секунд)", + "videoFilterTypeVideoLength": "Тривалість відео (у секундах)", "@videoFilterTypeVideoLength": { "description": "Label for video filter video length" }, - "videoFilterHideDescription": "За замовчуванням відфільтровані відео не приховуються, а показуються із зазначенням причини, через яку їх було відфільтровано. Цей параметр видаляє відфільтровані відео зі списків.", + "videoFilterHideDescription": "За замовчуванням відфільтровані відео не приховуються, а показуються у вигляді затемнених з вказанням причин, через які їх було відфільтровано. Цей параметр видаляє відфільтровані відео зі списків.", "@videoFilterHideDescription": { "description": "" }, @@ -793,7 +793,7 @@ "@videoFilterOperationNotContain": { "description": "Label for video filter operation Does not contain" }, - "rememberPlaybackSpeed": "Запам''ятати швидкість відтворення", + "rememberPlaybackSpeed": "Запам’ятовувати швидкість відтворення", "@rememberPlaybackSpeed": { "description": "Setting label for remembering playback speed" }, @@ -801,7 +801,7 @@ "@videoFilterOperationContains": { "description": "Label for video filter operation Contains" }, - "lockFullScreenToLandscapeDescription": "Блокує повноекранну орієнтацію залежно від формату відео: альбомну для широкоформатного відео та книжкову для відео в книжковій орієнтації", + "lockFullScreenToLandscapeDescription": "Заблоковує повноекранну орієнтацію залежно від формату відео: альбомну для широкоформатного відео та книжкову для відео в книжковій орієнтації", "@lockFullScreenToLandscapeDescription": { "description": "Setting description for forcing video to landscape when in full screen" }, @@ -871,7 +871,7 @@ "@itemlistErrorGeneric": { "description": "Error showing when the data can't be fetch" }, - "itemListErrorInvalidScope": "Ви не маєте дозволу на перегляд цього, якщо ви увійшли за допомогою методу токенів, спробуйте вийти та ввійти", + "itemListErrorInvalidScope": "Ви не маєте дозволу на перегляд цього, якщо ви увійшли за допомогою методу токена, спробуйте вийти та увійти наново", "@itemListErrorInvalidScope": { "description": "Error when the user doesn't have the proper scope to its current token" }, @@ -909,7 +909,7 @@ "@navigationBarLabelNeverShow": { "description": "Never show label option for navigation bar" }, - "customizeAppLayout": "Налаштувати розділи програми", + "customizeAppLayout": "Налаштувати розділи застосунку", "@customizeAppLayout": { "description": "Settings label for the settings to allow the user to set up the app sections themselves" }, @@ -957,11 +957,11 @@ "@navigationBarStyle": { "description": "Label for settings on customizing navigation bar style" }, - "returnYoutubeUrlValidation": "Url повинен починатися з http:// або https://", + "returnYoutubeUrlValidation": "URL-адреса повинна починатися з http:// або https://", "@returnYoutubeUrlValidation": { "description": "error message for invalid custom url for return to youtube" }, - "rydCustomInstanceDescription": "Використовуйте інший екземпляр RYD, залиште пустим для використання по стандарту", + "rydCustomInstanceDescription": "Використовуйте інший екземпляр RYD, залиште порожнім для використання за замовчуванням", "@rydCustomInstanceDescription": { "description": "description for custom ryd instancr setting" }, @@ -1019,11 +1019,11 @@ "@searchUploadDateAny": { "description": "Do not filter search result by upload date" }, - "searchUploadDateHour": "Остання година", + "searchUploadDateHour": "За останню годину", "@searchUploadDateHour": { "description": "Search for uploaded in last hour" }, - "searchUploadDateToday": "Сьогодні", + "searchUploadDateToday": "За сьогодні", "@searchUploadDateToday": { "description": "Search for uploaded today" }, @@ -1055,8 +1055,146 @@ "@searchSortBy": { "description": "Search sorting option" }, - "distractionFreeMode": "Режим фокусування", + "distractionFreeMode": "Режим зосередження", "@distractionFreeMode": { "description": "title for distraction free mode settings" + }, + "videoFilterAppliedOn": "Застосовано до {selectedDays}", + "@videoFilterAppliedOn": { + "description": "Readable text on when the filter should apply", + "placeholders": { + "selectedDays": { + "type": "String", + "example": "Monday, Wednesday, Friday" + } + } + }, + "videoFilterDayOfWeekDescription": "Ви можете вибрати дні тижня і час, до яких застосовуються фільтри, наприклад, щоб уникнути спойлерів спортивних подій.", + "@videoFilterDayOfWeekDescription": { + "description": "" + }, + "enableNotificationDescriptions": "Запускає фонову службу для перевірки та повідомлення вас про зміни, які ви відстежуєте", + "@enableNotificationDescriptions": { + "description": "" + }, + "subscriptionNotificationDescription": "Отримуйте повідомлення про нові відео з вашої стрічки підписок, якщо ви ввійшли у свій поточний екземпляр", + "@subscriptionNotificationDescription": { + "description": "Description for subscription notifications" + }, + "askForDisableBatteryOptimizationContent": "Для того, щоб надсилати вам повідомлення, Clipious має запустити фонову службу. Для безперебійної роботи, необхідно, щоб Clipious мав необмежене використання акумулятора, натиснувши кнопку «Добре», ви відкриєте налаштування оптимізації роботи акумулятора.", + "@askForDisableBatteryOptimizationContent": { + "description": "Content for the dialog asking the user to turn off disabling battery optimization when turning on notifications" + }, + "otherNotifications": "Інші джерела повідомлень (значки дзвіночків)", + "@otherNotifications": { + "description": "Title for settings section in the notification settings" + }, + "deleteChannelNotificationContent": "Ви більше не будете отримувати повідомлення від цього каналу.", + "@deleteChannelNotificationContent": { + "description": "Title for dialog to confirm whether to delete channel notifications" + }, + "deleteChannelNotificationTitle": "Видалити повідемлення від каналу?", + "@deleteChannelNotificationTitle": { + "description": "Title for dialog to confirm whether to delete channel notifications" + }, + "deletePlaylistNotificationTitle": "Видалити повідомлення від добірки?", + "@deletePlaylistNotificationTitle": { + "description": "Title for dialog to confirm whether to delete playlist notifications" + }, + "deletePlaylistNotificationContent": "Ви більше не будете отримувати повідомлення від цієї добірки.", + "@deletePlaylistNotificationContent": { + "description": "Title for dialog to confirm whether to delete playlist notifications" + }, + "videoFilterStartTime": "Час початку", + "@videoFilterStartTime": { + "description": "Title for filter start time" + }, + "videoFilterEndTime": "Час кінця", + "@videoFilterEndTime": { + "description": "Title for filter end time" + }, + "from": "З", + "@from": { + "description": "From word (as in 'From xx To xx')" + }, + "to": "До", + "@to": { + "description": "To word as in 'From xx To xx')" + }, + "videoFilterTimeOfDayFromTo": "З {from} до {to}", + "@videoFilterTimeOfDayFromTo": { + "description": "Time of day range", + "placeholders": { + "from": { + "type": "String", + "example": "3:00 AM" + }, + "to": { + "type": "String", + "example": "5:00 PM" + } + } + }, + "notifications": "Повідомлення", + "@notifications": { + "description": "Notification settings title" + }, + "notificationsDescription": "Увімкніть та перегляньте, про що ви отримуєте повідомлення", + "@notificationsDescription": { + "description": "Setting description for notifications" + }, + "subscriptionNotification": "Повідомлення про підписки", + "@subscriptionNotification": { + "description": "Title for subscriptions notifications" + }, + "subscriptionNotificationTitle": "Нові відео з ваших підписок", + "@subscriptionNotificationTitle": { + "description": "Title for the notification showing that there are new videos from the subscription feed" + }, + "subscriptionNotificationContent": "У вашій стрічці підписок – {count, plural, =0{немає нових відел} =1{1 нове відео} other{{count} нових відео}}", + "@subscriptionNotificationContent": { + "description": "Content for subscription notification", + "placeholders": { + "count": { + "type": "num", + "format": "compact" + } + } + }, + "askForDisableBatteryOptimizationTitle": "Потрібно вимкнути оптимізацію акумулятора", + "@askForDisableBatteryOptimizationTitle": { + "description": "Title for the dialog asking the user to turn off disabling battery optimization when turning on notifications" + }, + "askToEnableBackgroundServiceTitle": "Повідомлення вимкнені", + "@askToEnableBackgroundServiceTitle": { + "description": "If the users tries to turn on notifications for a channel but hasn't enable notifications in the app we need to turn it on for them" + }, + "askToEnableBackgroundServiceContent": "Щоб отримувати повідомлення, необхідно увімкнути сповіщення Clipious, натисніть «Добре», щоб увімкнути їх.", + "@askToEnableBackgroundServiceContent": { + "description": "If the users tries to turn on notifications for a channel but hasn't enable notifications in the app we need to turn it on for them" + }, + "channelNotificationTitle": "Нові відео від {channel}", + "@channelNotificationTitle": { + "description": "Title for the channel notifications when there are new videos", + "placeholders": { + "channel": { + "type": "String", + "example": "MKBHD" + } + } + }, + "channelNotificationContent": "{count, plural, =0{Немає відео} =1{1 нове відео} other{{count} нових відео}} від {channel}", + "@channelNotificationContent": { + "description": "Content for channel notification when there are new videos", + "placeholders": { + "channel": { + "type": "String", + "example": "MKBHD" + }, + "count": { + "type": "num", + "format": "compact" + } + } } } diff --git a/lib/l10n/app_vi.arb b/lib/l10n/app_vi.arb index 6a7c2fc0..f3739027 100644 --- a/lib/l10n/app_vi.arb +++ b/lib/l10n/app_vi.arb @@ -379,7 +379,7 @@ "@useDashDescription": { "description": "Description for dash in the settings screen" }, - "videoPlayer": "rình phát video", + "videoPlayer": "Trình phát video", "@videoPlayer": { "description": "Title for video player related options" }, @@ -1336,5 +1336,17 @@ "format": "compact" } } + }, + "rydCustomInstance": "Địa chỉ phiên bản RYD tùy chỉnh", + "@rydCustomInstance": { + "description": "title for setting to set a custom ryd instance" + }, + "rydCustomInstanceDescription": "Sử dụng một phiên bản RYD khác, để trống để sử dụng mặc định", + "@rydCustomInstanceDescription": { + "description": "description for custom ryd instancr setting" + }, + "returnYoutubeUrlValidation": "Địa chỉ buộc phải bắt đầu với http:// hoặc https://", + "@returnYoutubeUrlValidation": { + "description": "error message for invalid custom url for return to youtube" } } diff --git a/lib/l10n/app_zh.arb b/lib/l10n/app_zh.arb index 9cbc5ff8..60474915 100644 --- a/lib/l10n/app_zh.arb +++ b/lib/l10n/app_zh.arb @@ -736,5 +736,123 @@ "rememberSubtitleLanguage": "记住字幕语言", "@rememberSubtitleLanguage": { "description": "Settings label for remembering subtitle language" + }, + "returnYoutubeUrlValidation": "链接必须以http://或https://开头", + "@returnYoutubeUrlValidation": { + "description": "error message for invalid custom url for return to youtube" + }, + "editVideoFilter": "编辑过滤器", + "@editVideoFilter": { + "description": "Title when editting a filter" + }, + "videoFilterOperation": "操作", + "@videoFilterOperation": { + "description": "Label for filter operation" + }, + "videoFilterHide": "隐藏被过滤的视频", + "@videoFilterHide": { + "description": "Label for settings to hide filtered videos" + }, + "videoFilterOperationHigherThan": "大于", + "@videoFilterOperationHigherThan": { + "description": "Label for video filter operation Higher than" + }, + "videoFilterHideAllFromChannel": "过滤频道中所有的视频", + "@videoFilterHideAllFromChannel": { + "description": "Label for video filter switch to allow to hide all videos from a channel" + }, + "videoFiltersSettingTileDescriptions": "定义过滤视频的规则", + "@videoFiltersSettingTileDescriptions": { + "description": "Description for the main settings page" + }, + "addVideoFilter": "创建过滤器", + "@addVideoFilter": { + "description": "Title when creating a new filter" + }, + "save": "保存", + "@save": { + "description": "Text for save action" + }, + "videoFilterType": "类型", + "@videoFilterType": { + "description": "Label for filter type" + }, + "videoFilterValue": "值", + "@videoFilterValue": { + "description": "Label for filter value" + }, + "videoFilterHideLabel": "隐藏", + "@videoFilterHideLabel": { + "description": "Label to hide videos" + }, + "videoFilterFilterLabel": "混淆", + "@videoFilterFilterLabel": { + "description": "Label to filter videos" + }, + "videoFilterTapToReveal": "点击显示", + "@videoFilterTapToReveal": { + "description": "Label to tell user to tap to show a filtered video" + }, + "videoFilterNoFilters": "点击下方+按钮添加新视频过滤规则", + "@videoFilterNoFilters": { + "description": "Label when there are no video filters" + }, + "videoFilterTypeVideoTitle": "视频标题", + "@videoFilterTypeVideoTitle": { + "description": "Label for video filter video title" + }, + "videoFilterTypeChannelName": "频道名", + "@videoFilterTypeChannelName": { + "description": "Label for video filter channel name" + }, + "videoFilterTypeVideoLength": "视频长度(秒)", + "@videoFilterTypeVideoLength": { + "description": "Label for video filter video length" + }, + "videoFilterOperationContains": "包括", + "@videoFilterOperationContains": { + "description": "Label for video filter operation Contains" + }, + "videoFilterOperationNotContain": "不包括", + "@videoFilterOperationNotContain": { + "description": "Label for video filter operation Does not contain" + }, + "channel": "频道", + "@channel": { + "description": "A single channel" + }, + "rydCustomInstance": "自定义BYD实例链接", + "@rydCustomInstance": { + "description": "title for setting to set a custom ryd instance" + }, + "rydCustomInstanceDescription": "使用自定义BYD实例,留空则使用默认实例", + "@rydCustomInstanceDescription": { + "description": "description for custom ryd instancr setting" + }, + "videoFilterAllChannels": "全部频道", + "@videoFilterAllChannels": { + "description": "Title for the sections that applies to all channels" + }, + "optional": "可选项", + "@optional": { + "description": "Optional label" + }, + "videoFiltered": "基于以下规则过滤视频:", + "@videoFiltered": { + "description": "Label shown on video list when it is filtered out" + }, + "videoFilterOperationLowerThan": "小于", + "@videoFilterOperationLowerThan": { + "description": "Label for video filter operation Lower than" + }, + "videoFilterWholeChannel": "{hideOrFilter}频道中所有的视频", + "@videoFilterWholeChannel": { + "description": "Label for whole channel filtering", + "placeholders": { + "hideOrFilter": { + "type": "String", + "example": "Hide" + } + } } } diff --git a/lib/l10n/app_zh_Hant.arb b/lib/l10n/app_zh_Hant.arb index 0bd36c10..d6b7a176 100644 --- a/lib/l10n/app_zh_Hant.arb +++ b/lib/l10n/app_zh_Hant.arb @@ -271,7 +271,7 @@ "@loggedIn": { "description": "Label to tell the user that he is logged in to the server" }, - "notLoggedIn": "未登入。點選以登入。", + "notLoggedIn": "未登入", "@notLoggedIn": { "description": "Label when the user is not logged in to the server" }, @@ -1255,7 +1255,7 @@ "@searchSortBy": { "description": "Search sorting option" }, - "nFilters": "幾個影片篩選器", + "nFilters": "{count, plural, =0{沒有影片} =1{篩選出一部影片} other{篩選出{count}部影片}}", "@nFilters": { "description": "One or more video filters", "placeholders": {