diff --git a/client/strings/ca.json b/client/strings/ca.json
index d3363bdd..7aee699a 100644
--- a/client/strings/ca.json
+++ b/client/strings/ca.json
@@ -335,11 +335,11 @@
"LabelEnd": "Fi",
"LabelEndOfChapter": "Fi del capítol",
"LabelEpisode": "Episodi",
- "LabelEpisodeNotLinkedToRssFeed": "Episodi no enllaçat al feed RSS",
+ "LabelEpisodeNotLinkedToRssFeed": "Episodi no enllaçat al canal RSS",
"LabelEpisodeNumber": "Episodi #{0}",
"LabelEpisodeTitle": "Títol de l'Episodi",
"LabelEpisodeType": "Tipus d'Episodi",
- "LabelEpisodeUrlFromRssFeed": "URL de l'episodi del feed RSS",
+ "LabelEpisodeUrlFromRssFeed": "URL de l'episodi del canal RSS",
"LabelEpisodes": "Episodis",
"LabelEpisodic": "Episodis",
"LabelExample": "Exemple",
@@ -473,6 +473,7 @@
"LabelOpenIDAdvancedPermsClaimDescription": "Nom de la notificació de OpenID que conté permisos avançats per accions d'usuari dins l'aplicació que s'aplicaran a rols que no siguin d'administrador (si estan configurats). Si el reclam no apareix en la resposta, es denegarà l'accés a ABS. Si manca una sola opció, es tractarà com a falsa
. Assegura't que la notificació del proveïdor d'identitats coincideixi amb l'estructura esperada:",
"LabelOpenIDClaims": "Deixa les següents opcions buides per desactivar l'assignació avançada de grups i permisos, el que assignaria automàticament al grup 'Usuari'.",
"LabelOpenIDGroupClaimDescription": "Nom de la declaració OpenID que conté una llista de grups de l'usuari. Comunament coneguts com grups
. Si es configura, l'aplicació assignarà automàticament rols basats en la pertinença a grups de l'usuari, sempre que aquests grups es denominen 'admin', 'user' o 'guest' en la notificació. La sol·licitud ha de contenir una llista, i si un usuari pertany a diversos grups, l'aplicació assignarà el rol corresponent al major nivell d'accés. Si cap grup coincideix, es denegarà l'accés.",
+ "LabelOpenRSSFeed": "Obre el canal RSS",
"LabelOverwrite": "Sobreescriure",
"LabelPaginationPageXOfY": "Pàgina {0} de {1}",
"LabelPassword": "Contrasenya",
@@ -562,7 +563,12 @@
"LabelSettingsExperimentalFeatures": "Funcions Experimentals",
"LabelSettingsExperimentalFeaturesHelp": "Funcions en desenvolupament que es beneficiarien dels teus comentaris i experiències de prova. Feu clic aquí per obrir una conversa a Github.",
"LabelSettingsFindCovers": "Troba cobertes",
+ "LabelSettingsParseSubtitles": "Analitza els subtítols",
"LabelSettingsSortingIgnorePrefixes": "Ignora els prefixos en ordenar",
+ "LabelSettingsTimeFormat": "Format d'hora",
+ "LabelShare": "Comparteix",
+ "LabelShareDownloadableHelp": "Permet els usuaris amb l'enllaç de compartició de baixar un fitxer ZIP amb l'element de la biblioteca.",
+ "LabelShareURL": "URL de compartició",
"LabelShowAll": "Mostra-ho tot",
"LabelShowSeconds": "Mostra segons",
"LabelShowSubtitles": "Mostra subtítols",
@@ -698,26 +704,26 @@
"MessageConfirmDeleteNotification": "Segur que voleu suprimir aquesta notificació?",
"MessageConfirmDeleteSession": "Segur que voleu suprimir aquesta sessió?",
"MessageConfirmEmbedMetadataInAudioFiles": "Segur que voleu incrustar metadades a {0} fitxer(s) d'àudio?",
- "MessageConfirmForceReScan": "Estàs segur que vols forçar un reescaneig?",
- "MessageConfirmMarkAllEpisodesFinished": "Estàs segur que vols marcar tots els episodis com a acabats?",
- "MessageConfirmMarkAllEpisodesNotFinished": "Estàs segur que vols marcar tots els episodis com a no acabats?",
+ "MessageConfirmForceReScan": "Segur que voleu forçar un reescaneig?",
+ "MessageConfirmMarkAllEpisodesFinished": "Segur que voleu marcar tots els episodis com a acabats?",
+ "MessageConfirmMarkAllEpisodesNotFinished": "Segur que voleu marcar tots els episodis com a no acabats?",
"MessageConfirmMarkItemFinished": "Segur que voleu marcar «{0}» com a acabat?",
"MessageConfirmMarkItemNotFinished": "Segur que voleu marcar «{0}» com a no acabat?",
- "MessageConfirmMarkSeriesFinished": "Estàs segur que vols marcar tots els llibres d'aquesta sèrie com a acabats?",
- "MessageConfirmMarkSeriesNotFinished": "Estàs segur que vols marcar tots els llibres d'aquesta sèrie com a no acabats?",
- "MessageConfirmNotificationTestTrigger": "Vols activar aquesta notificació amb dades de prova?",
+ "MessageConfirmMarkSeriesFinished": "Segur que voleu marcar tots els llibres d'aquesta sèrie com a acabats?",
+ "MessageConfirmMarkSeriesNotFinished": "Segur que voleu marcar tots els llibres d'aquesta sèrie com a no acabats?",
+ "MessageConfirmNotificationTestTrigger": "Voleu activar aquesta notificació amb dades de prova?",
"MessageConfirmPurgeCache": "Esborrar la memòria cau eliminarà tot el directori localitzat a /metadata/cache
.
Estàs segur que vols eliminar-lo?",
"MessageConfirmPurgeItemsCache": "Esborrar la memòria cau dels elements eliminarà el directori /metadata/cache/items
.
Estàs segur?",
"MessageConfirmQuickEmbed": "Advertència! La integració ràpida no fa còpies de seguretat dels teus fitxers d'àudio. Assegura't d'haver-ne fet una còpia abans.
Vols continuar?",
"MessageConfirmQuickMatchEpisodes": "El reconeixement ràpid sobreescriurà els detalls si es troba una coincidència. Estàs segur?",
- "MessageConfirmReScanLibraryItems": "Estàs segur que vols reescanejar {0} element(s)?",
+ "MessageConfirmReScanLibraryItems": "Segur que voleu reescanejar {0} element(s)?",
"MessageConfirmRemoveAllChapters": "Segur que voleu eliminar tots els capítols?",
"MessageConfirmRemoveAuthor": "Segur que voleu eliminar l'autor «{0}»?",
"MessageConfirmRemoveCollection": "Segur que voleu eliminar la col·lecció «{0}»?",
"MessageConfirmRemoveEpisode": "Segur que voleu eliminar l'episodi «{0}»?",
"MessageConfirmRemoveEpisodes": "Segur que voleu eliminar {0} episodis?",
"MessageConfirmRemoveListeningSessions": "Segur que voleu eliminar {0} sessions d'escolta?",
- "MessageConfirmRemoveMetadataFiles": "Estàs segur que vols eliminar tots els fitxers de metadades.{0} de les carpetes dels elements de la teva biblioteca?",
+ "MessageConfirmRemoveMetadataFiles": "Segur que voleu eliminar tots els fitxers metadata.{0} de les carpetes dels elements de la vostra biblioteca?",
"MessageConfirmRemoveNarrator": "Segur que voleu eliminar el narrador «{0}»?",
"MessageConfirmRemovePlaylist": "Segur que voleu eliminar la llista de reproducció «{0}»?",
"MessageConfirmRenameGenre": "Segur que voleu canviar el nom del gènere «{0}» a «{1}» per a tots els elements?",
@@ -727,14 +733,15 @@
"MessageConfirmRenameTagMergeNote": "Nota: Aquesta etiqueta ja existeix, i es fusionarà.",
"MessageConfirmRenameTagWarning": "Advertència! Ja existeix una etiqueta similar \"{0}\".",
"MessageConfirmResetProgress": "Segur que voleu reinicialitzar el vostre progrés?",
- "MessageConfirmSendEbookToDevice": "Estàs segur que vols enviar {0} ebook(s) \"{1}\" al dispositiu \"{2}\"?",
- "MessageConfirmUnlinkOpenId": "Estàs segur que vols desvincular aquest usuari d'OpenID?",
+ "MessageConfirmSendEbookToDevice": "Segur que voleu enviar {0} llibre(s) «{1}» al dispositiu «{2}»?",
+ "MessageConfirmUnlinkOpenId": "Segur que voleu desenllaçar aquest usuari d'OpenID?",
"MessageDaysListenedInTheLastYear": "{0} dies escoltats l'any passat",
"MessageDownloadingEpisode": "S'està baixant l'episodi",
"MessageDragFilesIntoTrackOrder": "Arrossega els fitxers en l'ordre correcte de les pistes",
"MessageEmbedFailed": "Error en incrustar!",
"MessageEmbedFinished": "Incrustació acabada!",
"MessageEmbedQueue": "En cua per incrustar metadades ({0} en cua)",
+ "MessageFeedURLWillBe": "L'URL del canal serà {0}",
"MessageFetching": "S'està recuperant...",
"MessageImportantNotice": "Avís important",
"MessageInsertChapterBelow": "Insereix un capítol a sota",
@@ -743,6 +750,8 @@
"MessageItemsUpdated": "{0} elements actualitzats",
"MessageLoading": "S'està carregant...",
"MessageLoadingFolders": "S'estan carregant les carpetes...",
+ "MessageMarkAllEpisodesFinished": "Marca tots els episodis com a acabats",
+ "MessageMarkAllEpisodesNotFinished": "Marca tots els episodis com a inacabats",
"MessageMarkAsFinished": "Marcar com acabat",
"MessageMarkAsNotFinished": "Marcar com no acabat",
"MessageMatchBooksDescription": "S'intentarà fer coincidir els llibres de la biblioteca amb un llibre del proveïdor de cerca seleccionat, i s'ompliran els detalls buits i la portada. No sobreescriu els detalls.",
@@ -795,8 +804,8 @@
"MessageRemoveFromPlayerQueue": "Eliminar de la cua del reproductor",
"MessageRemoveUserWarning": "Segur que voleu suprimir permanentment l'usuari «{0}»?",
"MessageReportBugsAndContribute": "Informa d'errors, sol·licita funcions i contribueix a",
- "MessageResetChaptersConfirm": "Estàs segur que vols desfer els canvis i revertir els capítols al seu estat original?",
- "MessageRestoreBackupConfirm": "Estàs segur que vols restaurar la còpia de seguretat creada a",
+ "MessageResetChaptersConfirm": "Segur que voleu desfer els canvis i revertir els capítols al seu estat original?",
+ "MessageRestoreBackupConfirm": "Segur que voleu restaurar la còpia de seguretat creada a",
"MessageRestoreBackupWarning": "Restaurar sobreescriurà tota la base de dades situada a /config i les imatges de portades a /metadata/items i /metadata/authors.
La còpia de seguretat no modifica cap fitxer a les carpetes de la teva biblioteca. Si has activat l'opció del servidor per guardar portades i metadades a les carpetes de la biblioteca, aquests fitxers no es guarden ni sobreescriuen.
Tots els clients que utilitzin el teu servidor s'actualitzaran automàticament.",
"MessageSearchResultsFor": "Resultats de la cerca de",
"MessageSelected": "{0} seleccionat(s)",
@@ -806,13 +815,13 @@
"MessageShareExpiresIn": "Caduca en {0}",
"MessageShareURLWillBe": "La URL per compartir serà {0}",
"MessageStartPlaybackAtTime": "Començar la reproducció per a \"{0}\" a {1}?",
- "MessageTaskAudioFileNotWritable": "El fitxer d'àudio \"{0}\" no es pot escriure",
+ "MessageTaskAudioFileNotWritable": "El fitxer d'àudio «{0}» no es pot escriure",
"MessageTaskCanceledByUser": "Tasca cancel·lada per l'usuari",
- "MessageTaskDownloadingEpisodeDescription": "Descarregant l'episodi \"{0}\"",
+ "MessageTaskDownloadingEpisodeDescription": "S'està baixant l'episodi «{0}»",
"MessageTaskEmbeddingMetadata": "Inserint metadades",
"MessageTaskEmbeddingMetadataDescription": "Inserint metadades en l'audiollibre \"{0}\"",
"MessageTaskEncodingM4b": "Codificant M4B",
- "MessageTaskEncodingM4bDescription": "Codificant l'audiollibre \"{0}\" en un únic fitxer M4B",
+ "MessageTaskEncodingM4bDescription": "S'està codificant l'audiollibre «{0}» en un únic fitxer M4B",
"MessageTaskFailed": "Fallada",
"MessageTaskFailedToBackupAudioFile": "Error en fer una còpia de seguretat del fitxer d'àudio \"{0}\"",
"MessageTaskFailedToCreateCacheDirectory": "Error en crear el directori de la memòria cau",
@@ -823,9 +832,9 @@
"MessageTaskMatchingBooksInLibrary": "Coincidint llibres a la biblioteca \"{0}\"",
"MessageTaskNoFilesToScan": "Sense fitxers per escanejar",
"MessageTaskOpmlImport": "Importar OPML",
- "MessageTaskOpmlImportDescription": "Creant podcasts a partir de {0} fonts RSS",
- "MessageTaskOpmlImportFeed": "Importació de feed OPML",
- "MessageTaskOpmlImportFeedDescription": "Importació del feed RSS \"{0}\"",
+ "MessageTaskOpmlImportDescription": "S'estan creant pòdcasts a partir de {0} canals RSS",
+ "MessageTaskOpmlImportFeed": "Importació d'un canal OPML",
+ "MessageTaskOpmlImportFeedDescription": "S'està important el canal RSS «{0}»",
"MessageTaskOpmlImportFeedFailed": "No s'ha pogut obtenir el canal del pòdcast",
"MessageTaskOpmlImportFeedPodcastDescription": "S'està creant el pòdcast «{0}»",
"MessageTaskOpmlImportFeedPodcastExists": "El pòdcast ja existeix al camí",
@@ -954,15 +963,15 @@
"ToastItemMarkedAsNotFinishedSuccess": "Element marcat com a no acabat",
"ToastItemUpdateSuccess": "Element actualitzat",
"ToastLibraryCreateFailed": "Error en crear la biblioteca",
- "ToastLibraryCreateSuccess": "Biblioteca \"{0}\" creada",
+ "ToastLibraryCreateSuccess": "S'ha creat la biblioteca «{0}»",
"ToastLibraryDeleteFailed": "Error en eliminar la biblioteca",
"ToastLibraryDeleteSuccess": "Biblioteca eliminada",
"ToastLibraryScanFailedToStart": "Error en iniciar l'escaneig",
"ToastLibraryScanStarted": "S'ha iniciat l'escaneig de la biblioteca",
- "ToastLibraryUpdateSuccess": "Biblioteca \"{0}\" actualitzada",
+ "ToastLibraryUpdateSuccess": "S'ha actualitzat la biblioteca «{0}»",
"ToastMatchAllAuthorsFailed": "No coincideix amb tots els autors",
"ToastMetadataFilesRemovedError": "Error en eliminar metadades de {0} arxius",
- "ToastMetadataFilesRemovedNoneFound": "No s'han trobat metadades en {0} arxius",
+ "ToastMetadataFilesRemovedNoneFound": "No hi ha cap fitxer metadata.{0} a la biblioteca",
"ToastMetadataFilesRemovedNoneRemoved": "Cap metadada eliminada en {0} arxius",
"ToastMetadataFilesRemovedSuccess": "{0} metadades eliminades en {1} arxius",
"ToastMustHaveAtLeastOnePath": "Ha de tenir almenys una ruta",
@@ -976,6 +985,7 @@
"ToastNewUserTagError": "Selecciona almenys una etiqueta",
"ToastNewUserUsernameError": "Introdueix un nom d'usuari",
"ToastNoNewEpisodesFound": "No s'han trobat nous episodis",
+ "ToastNoRSSFeed": "El pòdcast no té canal RSS",
"ToastNoUpdatesNecessary": "No cal actualitzar",
"ToastNotificationCreateFailed": "Error en crear la notificació",
"ToastNotificationDeleteFailed": "Error en eliminar la notificació",
@@ -992,15 +1002,15 @@
"ToastPodcastCreateFailed": "No s'ha pogut crear el pòdcast",
"ToastPodcastCreateSuccess": "S'ha creat el pòdcast correctament",
"ToastPodcastGetFeedFailed": "No s'ha pogut obtenir el canal del pòdcast",
- "ToastPodcastNoEpisodesInFeed": "No s'han trobat episodis en el feed RSS",
+ "ToastPodcastNoEpisodesInFeed": "No s'ha trobat cap episodi al canal RSS",
"ToastPodcastNoRssFeed": "El pòdcast no té un canal RSS",
"ToastProgressIsNotBeingSynced": "El progrés no s'està sincronitzant, reinicia la reproducció",
"ToastProviderCreatedFailed": "Error en afegir el proveïdor",
"ToastProviderCreatedSuccess": "Nou proveïdor afegit",
"ToastProviderNameAndUrlRequired": "Nom i URL obligatoris",
"ToastProviderRemoveSuccess": "Proveïdor eliminat",
- "ToastRSSFeedCloseFailed": "Error en tancar el feed RSS",
- "ToastRSSFeedCloseSuccess": "Feed RSS tancat",
+ "ToastRSSFeedCloseFailed": "No s'ha pogut tancar el canal RSS",
+ "ToastRSSFeedCloseSuccess": "Canal RSS tancat",
"ToastRemoveFailed": "Error en eliminar",
"ToastRemoveItemFromCollectionFailed": "Error en eliminar l'element de la col·lecció",
"ToastRemoveItemFromCollectionSuccess": "Element eliminat de la col·lecció",