diff options
author | ByteHamster <info@bytehamster.com> | 2022-02-19 13:46:12 +0100 |
---|---|---|
committer | ByteHamster <info@bytehamster.com> | 2022-02-19 13:46:12 +0100 |
commit | acb384b128c00580878b55aeb8dfdede7e3dc0cc (patch) | |
tree | 9e1b9b774fcc0ac90bb24cc4ca6eda95d1943f02 | |
parent | 6273dff85f4b9bba233ddf5d30ea36b617b09334 (diff) | |
parent | f4c90885d7e60089bfd94f10b09895a477f33187 (diff) | |
download | antennapod-acb384b128c00580878b55aeb8dfdede7e3dc0cc.zip |
Merge branch 'master' into develop
18 files changed, 449 insertions, 93 deletions
diff --git a/app/build.gradle b/app/build.gradle index 0257347fc..7b324e878 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -11,8 +11,8 @@ android { // Version code schema: // "1.2.3-beta4" -> 1020304 // "1.2.3" -> 1020395 - versionCode 2050001 - versionName "2.5.0-beta1" + versionCode 2050003 + versionName "2.5.0-beta3" def commit = "" try { diff --git a/app/src/main/java/de/danoeh/antennapod/dialog/ProxyDialog.java b/app/src/main/java/de/danoeh/antennapod/dialog/ProxyDialog.java index ad2ed3499..2c3c44b1d 100644 --- a/app/src/main/java/de/danoeh/antennapod/dialog/ProxyDialog.java +++ b/app/src/main/java/de/danoeh/antennapod/dialog/ProxyDialog.java @@ -148,32 +148,24 @@ public class ProxyDialog { } private void setProxyConfig() { - String type = (String) spType.getSelectedItem(); - ProxyConfig proxy; - if (Proxy.Type.valueOf(type) == Proxy.Type.DIRECT) { - proxy = ProxyConfig.direct(); - } else { - String host = etHost.getText().toString(); - String port = etPort.getText().toString(); - String username = etUsername.getText().toString(); - if (TextUtils.isEmpty(username)) { - username = null; - } - String password = etPassword.getText().toString(); - if (TextUtils.isEmpty(password)) { - password = null; - } - int portValue = 0; - if (!TextUtils.isEmpty(port)) { - portValue = Integer.parseInt(port); - } - if (Proxy.Type.valueOf(type) == Proxy.Type.SOCKS) { - proxy = ProxyConfig.socks(host, portValue, username, password); - } else { - proxy = ProxyConfig.http(host, portValue, username, password); - } + final String type = (String) spType.getSelectedItem(); + final Proxy.Type typeEnum = Proxy.Type.valueOf(type); + final String host = etHost.getText().toString(); + final String port = etPort.getText().toString(); + + String username = etUsername.getText().toString(); + if (TextUtils.isEmpty(username)) { + username = null; + } + String password = etPassword.getText().toString(); + if (TextUtils.isEmpty(password)) { + password = null; + } + int portValue = 0; + if (!TextUtils.isEmpty(port)) { + portValue = Integer.parseInt(port); } - UserPreferences.setProxyConfig(proxy); + UserPreferences.setProxyConfig(new ProxyConfig(typeEnum, host, portValue, username, password)); } private final TextWatcher requireTestOnChange = new TextWatcher() { diff --git a/core/src/main/java/de/danoeh/antennapod/core/preferences/UserPreferences.java b/core/src/main/java/de/danoeh/antennapod/core/preferences/UserPreferences.java index 08daf01e2..74f89a039 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/preferences/UserPreferences.java +++ b/core/src/main/java/de/danoeh/antennapod/core/preferences/UserPreferences.java @@ -611,27 +611,22 @@ public class UserPreferences { public static void setProxyConfig(ProxyConfig config) { SharedPreferences.Editor editor = prefs.edit(); editor.putString(PREF_PROXY_TYPE, config.type.name()); - Proxy.Type type = Proxy.Type.valueOf(config.type.name()); - if (type == Proxy.Type.DIRECT) { - editor.apply(); - return; - } - if(TextUtils.isEmpty(config.host)) { + if (TextUtils.isEmpty(config.host)) { editor.remove(PREF_PROXY_HOST); } else { editor.putString(PREF_PROXY_HOST, config.host); } - if(config.port <= 0 || config.port > 65535) { + if (config.port <= 0 || config.port > 65535) { editor.remove(PREF_PROXY_PORT); } else { editor.putInt(PREF_PROXY_PORT, config.port); } - if(TextUtils.isEmpty(config.username)) { + if (TextUtils.isEmpty(config.username)) { editor.remove(PREF_PROXY_USER); } else { editor.putString(PREF_PROXY_USER, config.username); } - if(TextUtils.isEmpty(config.password)) { + if (TextUtils.isEmpty(config.password)) { editor.remove(PREF_PROXY_PASSWORD); } else { editor.putString(PREF_PROXY_PASSWORD, config.password); diff --git a/core/src/main/java/de/danoeh/antennapod/core/service/download/AntennapodHttpClient.java b/core/src/main/java/de/danoeh/antennapod/core/service/download/AntennapodHttpClient.java index bca3792b0..b26c57963 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/service/download/AntennapodHttpClient.java +++ b/core/src/main/java/de/danoeh/antennapod/core/service/download/AntennapodHttpClient.java @@ -118,7 +118,7 @@ public class AntennapodHttpClient { builder.followSslRedirects(true); ProxyConfig config = UserPreferences.getProxyConfig(); - if (config.type != Proxy.Type.DIRECT) { + if (config.type != Proxy.Type.DIRECT && !TextUtils.isEmpty(config.host)) { int port = config.port > 0 ? config.port : ProxyConfig.DEFAULT_PORT; SocketAddress address = InetSocketAddress.createUnresolved(config.host, port); builder.proxy(new Proxy(config.type, address)); diff --git a/core/src/main/java/de/danoeh/antennapod/core/service/download/DownloadService.java b/core/src/main/java/de/danoeh/antennapod/core/service/download/DownloadService.java index 982800b1c..1973c626b 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/service/download/DownloadService.java +++ b/core/src/main/java/de/danoeh/antennapod/core/service/download/DownloadService.java @@ -7,7 +7,6 @@ import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; -import android.os.Binder; import android.os.Build; import android.os.IBinder; import android.text.TextUtils; @@ -88,18 +87,11 @@ public class DownloadService extends Service { private ScheduledFuture<?> downloadPostFuture; private final ScheduledThreadPoolExecutor notificationUpdateExecutor; private static DownloaderFactory downloaderFactory = new DefaultDownloaderFactory(); - private final IBinder binder = new LocalBinder(); private ConnectionStateMonitor connectionMonitor; - private class LocalBinder extends Binder { - public DownloadService getService() { - return DownloadService.this; - } - } - @Override public IBinder onBind(Intent intent) { - return binder; + return null; } public DownloadService() { @@ -264,9 +256,9 @@ public class DownloadService extends Service { EventBus.getDefault().postSticky(DownloadEvent.refresh(Collections.emptyList())); cancelNotificationUpdater(); - downloadHandleExecutor.shutdown(); - downloadEnqueueExecutor.shutdown(); - notificationUpdateExecutor.shutdown(); + downloadEnqueueExecutor.shutdownNow(); + downloadHandleExecutor.shutdownNow(); + notificationUpdateExecutor.shutdownNow(); if (downloadPostFuture != null) { downloadPostFuture.cancel(true); } @@ -401,6 +393,9 @@ public class DownloadService extends Service { @Override public void onReceive(Context context, Intent intent) { Log.d(TAG, "cancelDownloadReceiver: " + intent.getAction()); + if (!isRunning) { + return; + } if (TextUtils.equals(intent.getAction(), ACTION_CANCEL_DOWNLOAD)) { String url = intent.getStringExtra(EXTRA_DOWNLOAD_URL); if (url == null) { diff --git a/core/src/main/java/de/danoeh/antennapod/core/service/download/ProxyConfig.java b/core/src/main/java/de/danoeh/antennapod/core/service/download/ProxyConfig.java index 0d59a1b7e..797001e3a 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/service/download/ProxyConfig.java +++ b/core/src/main/java/de/danoeh/antennapod/core/service/download/ProxyConfig.java @@ -14,18 +14,6 @@ public class ProxyConfig { public static final int DEFAULT_PORT = 8080; - public static ProxyConfig direct() { - return new ProxyConfig(Proxy.Type.DIRECT, null, 0, null, null); - } - - public static ProxyConfig http(String host, int port, String username, String password) { - return new ProxyConfig(Proxy.Type.HTTP, host, port, username, password); - } - - public static ProxyConfig socks(String host, int port, String username, String password) { - return new ProxyConfig(Proxy.Type.SOCKS, host, port, username, password); - } - public ProxyConfig(Proxy.Type type, String host, int port, String username, String password) { this.type = type; this.host = host; diff --git a/core/src/main/res/values-da/strings.xml b/core/src/main/res/values-da/strings.xml index 42c7410e3..a6fec5b82 100644 --- a/core/src/main/res/values-da/strings.xml +++ b/core/src/main/res/values-da/strings.xml @@ -128,7 +128,7 @@ <string name="episode_notification">Notifikationer om afsnit</string> <string name="episode_notification_summary">Vis en notifikation når der er nye afsnit</string> <plurals name="new_episode_notification_message"> - <item quantity="one">%2$s har en ny udsendelse</item> + <item quantity="one">%2$s har et nyt afsnit</item> <item quantity="other">%2$s har %1$d nye afsnit</item> </plurals> <plurals name="new_episode_notification_title"> @@ -177,7 +177,7 @@ <!--actions on feeditems--> <string name="download_label">Hent</string> <plurals name="downloading_batch_label"> - <item quantity="one">Henter %d udsendelse.</item> + <item quantity="one">Henter %d afsnit.</item> <item quantity="other">Henter %d afsnit.</item> </plurals> <string name="play_label">Afspil</string> @@ -198,24 +198,24 @@ <string name="mark_read_no_media_label">Marker som læst</string> <string name="play_this_to_seek_position">For at springe til positioner, er du nødt til at afspille afsnittet</string> <plurals name="marked_read_batch_label"> - <item quantity="one">%d udsendelse markeret som afspillet.</item> + <item quantity="one">%d afsnit markeret som afspillet.</item> <item quantity="other">%d afsnit markeret som afspillet.</item> </plurals> <string name="mark_unread_label">Marker som uafspillet</string> <string name="mark_unread_label_no_media">Marker som ulæst</string> <plurals name="marked_unread_batch_label"> - <item quantity="one">%d udsendelse markeret som uafspillet.</item> + <item quantity="one">%d afsnit markeret som uafspillet.</item> <item quantity="other">%d afsnit markeret som uafspillede.</item> </plurals> <string name="add_to_queue_label">Føj til kø</string> <string name="added_to_queue_label">Føjet til kø</string> <plurals name="added_to_queue_batch_label"> - <item quantity="one">%d udsendelse føjet til køen.</item> + <item quantity="one">%d afsnit føjet til køen.</item> <item quantity="other">%d afsnit føjet til køen.</item> </plurals> <string name="remove_from_queue_label">Fjern fra kø</string> <plurals name="removed_from_queue_batch_label"> - <item quantity="one">%d udsendelse fjernet fra køen.</item> + <item quantity="one">%d afsnit fjernet fra køen.</item> <item quantity="other">%d afsnit fjernet fra køen.</item> </plurals> <string name="add_to_favorite_label">Føj til favoritter</string> @@ -505,7 +505,7 @@ <string name="back_button_go_to_page_title">Vælg side</string> <string name="pref_delete_removes_from_queue_title">Slet fjernet fra kø</string> <string name="pref_delete_removes_from_queue_sum">Fjern automatisk afsnit fra køen, når det slettes.</string> - <string name="pref_filter_feed_title">Abonnement filter</string> + <string name="pref_filter_feed_title">Abonnementsfilter</string> <string name="pref_filter_feed_sum">Filtrer dine abonnementer i navigationspanelet og på abonnementsoversigten.</string> <string name="subscriptions_are_filtered">Abonnementer er filtreret.</string> <string name="subscriptions_counter_greater_zero">Tæller større end 0</string> diff --git a/core/src/main/res/values-es/strings.xml b/core/src/main/res/values-es/strings.xml index 9d3c23025..922154cb5 100644 --- a/core/src/main/res/values-es/strings.xml +++ b/core/src/main/res/values-es/strings.xml @@ -171,6 +171,8 @@ <item quantity="one">%d suscripción actualizada.</item> <item quantity="other">%d suscripciones actualizadas.</item> </plurals> + <string name="edit_tags">Editar etiquetas</string> + <string name="rename_tag_label">Renombrar etiqueta</string> <!--actions on feeditems--> <string name="download_label">Descargar</string> <plurals name="downloading_batch_label"> diff --git a/core/src/main/res/values-fi/strings.xml b/core/src/main/res/values-fi/strings.xml index bb8a1bcc7..28d17bfdc 100644 --- a/core/src/main/res/values-fi/strings.xml +++ b/core/src/main/res/values-fi/strings.xml @@ -39,6 +39,7 @@ <string name="total_time_listened_to_podcasts">Jaksojen toistoaika yhteensä:</string> <string name="statistics_mode">Tilastointitila</string> <string name="statistics_mode_normal">Laske oikeasti soitettu aikamäärä. Uudelleensoitto lasketaan kahdesti, mutta soitetuksi merkattua ei lasketa.</string> + <string name="statistics_mode_count_all">Laske yhteen kaikki soitetuksi merkityt jaksot</string> <string name="statistics_speed_not_counted">Huomio: Soittonopeutta ei lasketa mukaan.</string> <string name="statistics_reset_data">Nollaa tilastotiedot</string> <string name="statistics_reset_data_msg">Tämä poistaa kaikkien jaksojen soiton keston historian. Haluatko varmasti jatkaa?</string> @@ -170,6 +171,9 @@ <item quantity="one">%d tilaus päivitetty.</item> <item quantity="other">%d tilausta päivitetty.</item> </plurals> + <string name="edit_tags">Muokkaa tunnisteita</string> + <string name="rename_tag_label">Nimeä tunniste uudelleen</string> + <string name="confirm_mobile_feed_refresh_dialog_message">Jaksojen lataaminen mobiilidatayhteydellä on poistettu käytöstä asetuksista.\n\nHaluatko silti päivittää kaikki podcastit mobiilidatan kautta?</string> <!--actions on feeditems--> <string name="download_label">Lataa</string> <plurals name="downloading_batch_label"> @@ -182,6 +186,10 @@ <string name="delete_label">Poista</string> <string name="delete_failed">Ei voida poistaa tiedostoa. Laitteen uudelleenkäynnistys saattaa auttaa.</string> <string name="delete_episode_label">Poista jakso</string> + <plurals name="deleted_multi_episode_batch_label"> + <item quantity="one">1 ladattu jakso poistettu.</item> + <item quantity="other">%d ladattua jaksoa poistettu.</item> + </plurals> <string name="remove_new_flag_label">Poista \"uusi\"-lippu</string> <string name="removed_new_flag_label">Poistettiin \"uusi\"-lippu</string> <string name="mark_read_label">Merkitse soitetuksi</string> @@ -239,6 +247,8 @@ <string name="download_error_forbidden">Podcastin palvelin ei vastaa.</string> <string name="download_canceled_msg">Lataus peruutettu</string> <string name="download_error_wrong_size">Palvelinyhteys katkesi ennen latauksen valmistumista</string> + <string name="download_error_blocked">Toinen laitteesi sovellus (kuten VPN tai mainosten esto) esti latauksen.</string> + <string name="download_error_certificate">Suojattua yhteyttä ei voi muodostaa. Tämä voi tarkoittaa, että jokin muu laitteesi sovellus (kuten VPN tai mainosten esto) esti latauksen tai että palvelimen varmenteissa on jotain vialla.</string> <string name="download_report_title">Lataukset valmistuivat virhe(id)en kanssa</string> <string name="auto_download_report_title">Automaattiset lataukset valmistuivat</string> <string name="download_error_io_error">IO virhe</string> @@ -248,11 +258,13 @@ <item quantity="one">%d lataus jäljellä</item> <item quantity="other">%d latausta jäljellä</item> </plurals> + <string name="completing">Viimeistellään...</string> <string name="download_notification_title">Ladataan podcastin tietoja</string> <string name="download_log_title_unknown">Tuntematon otsikko</string> <string name="download_type_feed">Syöte</string> <string name="download_type_media">Mediatiedosto</string> <string name="null_value_podcast_error">Ei voida näyttää olematonta podcastia</string> + <string name="no_feed_url_podcast_found_by_search">Ehdotetulla podcastilla ei ollut RSS-linkkiä, AntennaPod löysi mahdollisesti vastaavan podcastin</string> <string name="authentication_notification_title">Todentaminen vaaditaan</string> <string name="authentication_notification_msg">Pyytämäsi resurssi vaatii käyttäjätunnuksen ja salasanan</string> <string name="confirm_mobile_download_dialog_title">Varmista mobiililataus</string> @@ -296,6 +308,8 @@ <string name="clear_queue_confirmation_msg">Vahvista, että haluat tyhjentää jonon KAIKISTA jaksoista</string> <string name="time_left_label">Aikaa jäljellä:\u0020</string> <!--Variable Speed--> + <string name="speed_presets">Esiasetukset</string> + <string name="preset_already_exists">%1$.2fx on jo tallennettu esiasetuksena.</string> <!--Empty list labels--> <string name="no_items_header_label">Ei jaksoja jonossa</string> <string name="no_items_label">Lisää jakso lataamalla se, tai painamalla sitä pitkään ja valitsemalla \"Lisää jonoon\".</string> @@ -319,6 +333,7 @@ <string name="storage_sum">Jakson automaattinen poisto, tuonti, vienti</string> <string name="project_pref">Projekti</string> <string name="synchronization_pref">Synkronointi</string> + <string name="synchronization_sum">Synkronoi muiden laitteiden kanssa</string> <string name="automation">Automaatio</string> <string name="download_pref_details">Tietoja</string> <string name="import_export_pref">Tuo/Vie</string> @@ -333,9 +348,18 @@ <string name="preference_search_clear_history">Tyhjennä historia</string> <string name="media_player">Mediasoitin</string> <string name="pref_episode_cleanup_title">Jakson siivous</string> + <string name="pref_episode_cleanup_summary">Jaksot, jotka voidaan poistaa, jos automaattinen lataus tarvitsee tilaa uusille jaksoille</string> <string name="pref_pauseOnDisconnect_sum">Pysäytä soitto kun kuulokkeet tai bluetooth katkaistaan</string> <string name="pref_unpauseOnHeadsetReconnect_sum">Jatka soittoa kun kuulokkeet yhdistetään uudestaan</string> <string name="pref_unpauseOnBluetoothReconnect_sum">Jatka soittoa kun bluetooth yhdistyy uudestaan</string> + <string name="pref_hardware_forward_button_title">Eteenpäin-painike</string> + <string name="pref_hardware_forward_button_summary">Mukauta eteenpäin-painikkeen toimintaa</string> + <string name="pref_hardware_previous_button_title">Edellinen-painike</string> + <string name="pref_hardware_previous_button_summary">Mukauta edellinen-painikkeen toimintaa</string> + <string name="button_action_fast_forward">Pikakelaus</string> + <string name="button_action_rewind">Taaksepäin kelaus</string> + <string name="button_action_skip_episode">Ohita jakso</string> + <string name="button_action_restart_episode">Aloita jakso alusta</string> <string name="pref_followQueue_sum">Hyppää seuraavaan jonossa kun soitto valmistuu</string> <string name="pref_auto_delete_sum">Poista jakso toiston loputtua</string> <string name="pref_auto_delete_title">Automaattinen poisto</string> @@ -350,7 +374,11 @@ <string name="network_pref">Verkko</string> <string name="network_pref_sum">Päivitysaikaväli, latauksen ohjaimet, mobiilidata</string> <string name="feed_refresh_title">Päivitä podcastit</string> + <string name="feed_refresh_sum">Määritä aikaväli tai tietty aika etsiä uusia jaksoja automaattisesti</string> + <string name="feed_refresh_interval">Aikaväli</string> + <string name="feed_refresh_time">Aika</string> <string name="feed_refresh_never">Ei koskaan</string> + <string name="feed_refresh_interval_at">aikaan %1$s</string> <plurals name="feed_refresh_every_x_hours"> <item quantity="one">Tunnin välein</item> <item quantity="other">%d tunnin välein</item> @@ -373,10 +401,10 @@ <string name="pref_set_theme_title">Valitse teema</string> <string name="pref_nav_drawer_items_title">Aseta navigointihyllyn asiat</string> <string name="pref_nav_drawer_items_sum">Vaihda navigointihyllyssä esiintyviä asioita.</string> - <string name="pref_nav_drawer_feed_order_title">Aseta tilauksien järjestys</string> + <string name="pref_nav_drawer_feed_order_title">Aseta tilausten järjestys</string> <string name="pref_nav_drawer_feed_order_sum">Vaihda tilauksiesi järjestystä</string> <string name="pref_nav_drawer_feed_counter_title">Aseta tilauslaskuri</string> - <string name="pref_nav_drawer_feed_counter_sum">Vaihda tilauslaskurin näyttämiä tietoja. Tämä vaikuttaa myös tilauksien järjestykseen, jos \"Tilausjärjestys\" on \"Laskuri\".</string> + <string name="pref_nav_drawer_feed_counter_sum">Vaihda tilauslaskurin näyttämiä tietoja. Tämä vaikuttaa myös tilausten järjestykseen, jos \"Tilausjärjestys\" on \"Laskuri\".</string> <string name="pref_set_theme_sum">Muuta AntennaPodin ulkonäköä</string> <string name="pref_automatic_download_title">Automaattinen lataus</string> <string name="pref_automatic_download_sum">Aseta jaksojen automaattinen lataus</string> @@ -388,15 +416,34 @@ <string name="pref_episode_cache_title">Jaksojen välimuisti</string> <string name="pref_episode_cache_summary">Ladattuja jaksoja yhteensä välimuistissa tällä laitteella. Automaattinen lataaminen pysäytetään, jos tämä raja ylittyy.</string> <string name="pref_episode_cover_title">Käytä jakson kansikuvaa</string> + <string name="pref_episode_cover_summary">Käytä jaksokohtaista kansikuvaa luetteloissa aina, kun se on saatavilla. Jos tätä ei ole valittu, sovellus käyttää aina podcastin kansikuvaa.</string> <string name="pref_show_remain_time_title">Näytä jäljellä oleva aika</string> + <string name="pref_show_remain_time_summary">Näytä jaksojen jäljellä oleva aika, kun tämä on valittuna. Jos tätä ei ole valittu, näytä jaksojen kokonaiskesto.</string> <string name="pref_theme_title_use_system">Käytä järjestelmän teemaa</string> <string name="pref_theme_title_light">Vaalea</string> <string name="pref_theme_title_dark">Tumma</string> <string name="pref_theme_title_trueblack">Musta (AMOLED valmis)</string> <string name="pref_episode_cache_unlimited">Ei rajoitettu</string> + <string name="synchronization_logout">Kirjaudu ulos</string> + <string name="pref_synchronization_logout_toast">Uloskirjautuminen onnistui</string> <string name="pref_gpodnet_setlogin_information_title">Vaihda kirjautumistietoja</string> <string name="pref_gpodnet_setlogin_information_sum">Vaihda kirjautumistietoja gpodder.net tiliisi.</string> + <string name="synchronization_sync_changes_title">Synkronoi nyt</string> + <string name="synchronization_full_sync_title">Pakota täysi synkronointi</string> + <string name="synchronization_login_status"><![CDATA[Kirjauduttu sisään <i>%1$s</i> kohteessa <i>%2$s</i>. <br/><br/>Voit valita synkronointipalveluntarjoajan uudelleen kirjauduttuasi ulos]]></string> + <string name="synchronization_summary_unchoosen">Voit valita useista palveluntarjoajista, joiden kanssa voit synkronoida tilauksesi ja jaksojen toistotilan</string> + <string name="synchronization_summary_nextcloud">Gpoddersync on avoimen lähdekoodin Nextcloud-sovellus, jonka voit helposti asentaa omalle palvelimellesi. Sovellus on riippumaton AntennaPod-projektista.</string> + <string name="synchronization_nextcloud_authenticate_browser">Myönnä käyttöoikeus avatun verkkoselaimen avulla ja palaa AntennaPodiin.</string> + <string name="synchronization_choose_title">Valitse synkronointipalveluntarjoaja</string> + <string name="synchronization_force_sync_summary">Uudelleensynkronoi kaikki tilaukset ja jaksojen tilat</string> + <string name="synchronization_sync_summary">Synkronoi tilausten ja jaksojen tilojen muutokset</string> + <string name="dialog_choose_sync_service_title">Valitse synkronointipalveluntarjoaja</string> + <string name="pref_playback_speed_sum">Mukauta muuttuvanopeuksisen toiston käytettävissä olevia nopeuksia </string> <string name="pref_feed_playback_speed_sum">Tämän podcastin jaksoja soittamaan aloitettaessa käytettävä nopeus</string> + <string name="pref_feed_skip">Automaattinen ohitus</string> + <string name="pref_feed_skip_sum">Ohita esittelyt ja loppukiitokset.</string> + <string name="pref_feed_skip_ending">Ohita lopusta</string> + <string name="pref_feed_skip_intro">Ohita alusta</string> <string name="pref_feed_skip_ending_toast">Ohitettiin viimeiset %d sekuntia</string> <string name="pref_feed_skip_intro_toast">Ohitettiin ensimmäiset %d sekuntia</string> <string name="pref_playback_time_respects_speed_title">Mukauta mediatietoja soiton nopeuteen</string> @@ -404,17 +451,27 @@ <string name="pref_fast_forward">Seuraava skippaa aikaa</string> <string name="pref_fast_forward_sum">Kustomoi sekunnit jonka verran skipataaan kun painat Seuraava nappia.</string> <string name="pref_rewind">Edellinen skippaa aikaa</string> - <string name="pref_rewind_sum">kustomoi sekunnit jonka verran hypätään takaisin kun painat Edellinen nappia.</string> + <string name="pref_rewind_sum">Mukauta sekunnit jonka verran hypätään takaisin kun painat taakse kelaus -painiketta.</string> <string name="pref_expandNotify_title">Korkea ilmoitusprioriteetti</string> <string name="pref_expandNotify_sum">Tämä laajentaa ilmoituksen näyttämään soittonapit</string> <string name="pref_persistNotify_title">Pysyvät soittokontrollit</string> <string name="pref_persistNotify_sum">Säilytä ilmoitus- ja lukitusnäytön kontrollit kun soitto on pysäytetty.</string> + <string name="pref_compact_notification_buttons_title">Aseta kompaktit ilmoituspainikkeet</string> + <string name="pref_compact_notification_buttons_sum">Muuta toistopainikkeita, kun ilmoitus on tiivistetty. Toisto/tauko-painike on aina mukana.</string> <string name="pref_compact_notification_buttons_dialog_title">Valitse maksimi %1$d asioita</string> <string name="pref_compact_notification_buttons_dialog_error">Voit valita vain maksimissaan %1$d asioita.</string> <string name="pref_lockscreen_background_title">Aseta lukitusruudun taustakuva</string> <string name="pref_lockscreen_background_sum">Aseta lukitusruudun taustakuva nykyisen jakson kuvaan. Tämä kuva näkyy kolmannen osapuolen sovelluksissa.</string> + <string name="pref_enqueue_location_title">Jonoon lisäyksen paikka</string> + <string name="pref_enqueue_location_sum">Lisää jaksot kohteeseen%1$s: </string> + <string name="enqueue_location_back">Perään</string> + <string name="enqueue_location_front">Eteen</string> + <string name="enqueue_location_after_current">Nykyisen jakson jälkeen</string> <string name="pref_smart_mark_as_played_disabled">Poissa käytöstä</string> + <string name="documentation_support">Dokumentaatio ja tuki</string> <string name="visit_user_forum">Käyttäjäfoorumi</string> + <string name="bug_report_title">Ilmoita virheestä</string> + <string name="open_bug_tracker">Avaa virheseuranta</string> <string name="copy_to_clipboard">Kopioi leikepöydälle</string> <string name="copied_to_clipboard">Kopioitiin leikepöydälle</string> <string name="experimental_pref">Kokeellinen</string> @@ -425,6 +482,8 @@ <string name="pref_no_browser_found">Selainta ei löydetty</string> <string name="pref_enqueue_downloaded_title">Lisää ladatut jonoon</string> <string name="pref_enqueue_downloaded_summary">Lisää ladatut jaksot jonoon</string> + <string name="media_player_builtin">Androidin sisäänrakennettu soitin (vanhentunut)</string> + <string name="media_player_sonic">Sonic Media Player (vanhentunut)</string> <string name="media_player_exoplayer_recommended">ExoPlayer (suositeltu)</string> <string name="media_player_switch_to_exoplayer">Vaihda ExoPlayeriin</string> <string name="media_player_switched_to_exoplayer">Vaihdettu ExoPlayeriin.</string> @@ -434,26 +493,43 @@ <string name="stop_playback">Lopeta soitto</string> <string name="continue_playback">Jatka audion soittoa</string> <string name="behavior">Toiminta</string> - <string name="pref_back_button_behavior_title">Takaisin napin toiminta</string> - <string name="pref_back_button_behavior_sum">Vaihda Takaisin napin toiminta</string> + <string name="pref_back_button_behavior_title">Takaisin-painikkeen toiminta</string> + <string name="pref_back_button_behavior_sum">Mukauta takaisin-painikkeen toiminta.</string> <string name="back_button_default">Oletus</string> <string name="back_button_open_drawer">Avaa navigaatiohylly</string> <string name="back_button_double_tap">Tuplanaputa sulkemiseen</string> <string name="back_button_show_prompt">Varmista poistuminen</string> <string name="close_prompt">Haluatko varmasti sulkea AntennaPodin?</string> - <string name="double_tap_toast">Napauta Takaisin nappia sulkemiseen</string> + <string name="double_tap_toast">Napauta takaisin-painiketta sulkeaksesi</string> <string name="back_button_go_to_page">Mene sivulle...</string> <string name="back_button_go_to_page_title">Valitse sivu</string> <string name="pref_delete_removes_from_queue_title">Deletointi poistaa jonosta</string> <string name="pref_delete_removes_from_queue_sum">Poista jakso automaattisesti jonosta kun se deletoidaan.</string> <string name="pref_filter_feed_title">Tilaussuodin</string> + <string name="pref_filter_feed_sum">Suodata navigointihyllyn ja tilausnäkymän tilauksiasi.</string> + <string name="subscriptions_are_filtered">Tilauksia on suodatettu.</string> + <string name="subscriptions_counter_greater_zero">Laskurin arvo suurempi kuin nolla</string> + <string name="auto_downloaded">Automaattisesti ladattu</string> + <string name="not_auto_downloaded">Ei ladattu automaattisesti</string> + <string name="kept_updated">Päivitettynä pidetyt</string> + <string name="not_kept_updated">Päivitettynä pitämättömät</string> + <string name="new_episode_notification_enabled">Ilmoitus käytössä</string> + <string name="new_episode_notification_disabled">Ilmoitus pois käytöstä</string> + <string name="pref_feed_settings_dialog_msg">Tämä asetus on podcast-kohtainen. Voit muuttaa sitä avaamalla podcastin-sivun.</string> + <string name="pref_contribute">Osallistu</string> + <string name="pref_show_subscription_title">Näytä tilauksen nimi</string> + <string name="pref_show_subscription_title_summary">Näytä tilauksen nimi kansikuvan alapuolella</string> <!--About screen--> <string name="about_pref">Tietoja</string> <string name="antennapod_version">AntennaPod versio</string> + <string name="contributors">Osallistujat</string> <string name="contributors_summary">Kuka tahansa voi auttaa tekemään AntennaPodista paremman - koodilla, käännöksillä, tai avustamalla käyttäjiä foorumilla</string> <string name="developers">Kehittäjät</string> <string name="translators">Kääntäjät</string> <string name="special_thanks">Erityiskiitokset</string> + <string name="privacy_policy">Tietosuojakäytäntö</string> + <string name="licenses">Lisenssit</string> + <string name="licenses_summary">AntennaPod käyttää muita hienoja ohjelmistoja</string> <!--Search--> <string name="search_status_no_results">Ei löydetty tuloksia</string> <string name="type_to_search">Kirjoita hakulause etsiäksesi</string> @@ -461,7 +537,11 @@ <string name="no_results_for_query">Ei löydetty tuloksia \"%1$s\"</string> <!--Synchronization--> <string name="sync_status_started">Synkronointi aloitettu</string> + <string name="sync_status_episodes_upload">Ladataan jaksomuutokset palvelimelle...</string> + <string name="sync_status_episodes_download">Ladataan jaksomuutokset palvelimelta...</string> + <string name="sync_status_upload_played">Ladataan toistojen tilat palvelimelle...</string> <string name="sync_status_subscriptions">Synkronoidaan tilauksia...</string> + <string name="sync_status_wait_for_downloads">Odotetaan latausten valmistumista...</string> <string name="sync_status_success">Synkronointi onnistui</string> <string name="sync_status_error">Synkronointi epäonnistui</string> <!--import and export--> @@ -469,7 +549,13 @@ <string name="database">Tietokanta</string> <string name="opml">OPML</string> <string name="html">HTML</string> + <string name="html_export_summary">Näytä tilauksesi ystävälle</string> + <string name="opml_export_summary">Siirrä tilauksesi toiseen podcast-sovellukseen</string> + <string name="opml_import_summary">Tuo tilauksesi toisesta podcast-sovelluksesta</string> + <string name="database_export_summary">Siirrä tilaukset, kuunnellut jaksot ja jono toisella laitteella olevaan AntennaPodiin</string> + <string name="database_import_summary">Tuo AntennaPod-tietokanta toiselta laitteelta</string> <string name="opml_import_label">OPML tuonti</string> + <string name="opml_add_podcast_label">Tuo podcastien lista (OPML)</string> <string name="opml_reader_error">Virhe lukiessa OPML dokumenttia:</string> <string name="opml_import_error_no_file">Ei tiedostoa valittuna!</string> <string name="select_all_label">Valitse kaikki</string> @@ -478,6 +564,8 @@ <string name="html_export_label">HTML vienti</string> <string name="database_export_label">Tietokannan vienti</string> <string name="database_import_label">Tietokannan tuonti</string> + <string name="database_import_warning">Tietokannan tuonti korvaa kaikki nykyiset tilauksesi ja toistohistoriasi. Vie nykyinen tietokanta halutessasi varmuuskopioksi ennen jatkamista. Haluatko korvata?</string> + <string name="please_wait">Ole hyvä ja odota...</string> <string name="export_error_label">Vientivirhe</string> <string name="export_success_title">Vienti onnistunut</string> <string name="export_success_sum">Viety tiedosto on kirjoitettu:\n\n%1$s</string> @@ -486,12 +574,15 @@ <string name="import_ok">Valitse OK käynnistääksesi AntennaPodin uudelleen</string> <string name="import_no_downgrade">Tämä tietokanta on viety AntennaPodin uudemmalla versiolla. Tämänhetkinen versiosi ei vielä osaa käsitellä sitä.</string> <string name="favorites_export_label">Suosikkien vienti</string> + <string name="favorites_export_summary">Vie tallennetut suosikit tiedostoon</string> <!--Sleep timer--> <string name="set_sleeptimer_label">Aseta uniajastin</string> <string name="disable_sleeptimer_label">Lopeta uniajastin</string> <string name="extend_sleep_timer_label">+%d min</string> <string name="sleep_timer_label">Uniajastin</string> <string name="time_dialog_invalid_input">Väärä syöte. Ajan tulee olla numero</string> + <string name="shake_to_reset_label">Ravista nollataksesi</string> + <string name="timer_vibration_label">Värise ennen loppua</string> <string name="time_seconds">sekuntia</string> <string name="time_minutes">minuuttia</string> <string name="time_hours">tuntia</string> @@ -514,14 +605,19 @@ <string name="gpodnet_toplist_header">TOP PODCASTIT</string> <string name="gpodnet_search_hint">Etsi gpodder.net</string> <string name="gpodnetauth_login_butLabel">Sisäänkirjautuminen</string> + <string name="gpodnetauth_encryption_warning">Salasanaa ja tietoja ei salata!</string> <string name="create_account">Luo tili</string> <string name="username_label">Käyttäjätunnus</string> <string name="password_label">Salasana</string> + <string name="gpodnet_description">Gpodder.net on avoimen lähdekoodin podcast-synkronointipalvelu, joka on riippumaton AntennaPod-projektista.</string> <string name="gpodnetauth_server_official">Virallinen gpodder.net-palvelin</string> <string name="gpodnetauth_server_custom">Mukautettu palvelin</string> + <string name="gpodnetauth_host">Isäntänimi</string> <string name="gpodnetauth_select_server">Valitse palvelin</string> <string name="gpodnetauth_device_name">Laitteen nimi</string> + <string name="gpodnetauth_device_name_default">AntennaPod laitteella %1$s</string> <string name="gpodnetauth_existing_devices">Olemassaolevat laitteet</string> + <string name="gpodnetauth_create_device">Luo laite</string> <string name="gpodnetauth_finish_descr">Onneksi olkoon! Sinun gpodder.net tili on liitetty laitteeseesi. AntennaPod alkaa automaattisesti synkronoimaan gpodder.net tiliisi.</string> <string name="gpodnetauth_finish_butsyncnow">Aloita synkrointi nyt</string> <string name="gpodnetsync_error_title">gpodder.net synkrointivirhe</string> @@ -539,30 +635,49 @@ <string name="pref_resumeAfterCall_title">Jatka puhelinsoiton jälkeen</string> <!--Online feed view--> <string name="subscribe_label">Tilaa</string> + <string name="subscribing_label">Tilataan...</string> + <string name="preview_episode">Näyte</string> + <string name="stop_preview">Pysäytä näyte</string> <!--Content descriptions for image buttons--> + <string name="toolbar_back_button_content_description">Takaisin</string> <string name="rewind_label">Kelaa takaisin</string> <string name="fast_forward_label">Hyppää eteen</string> + <string name="increase_speed">Nopeuta</string> + <string name="decrease_speed">Hidasta</string> <string name="media_type_video_label">Video</string> <string name="status_downloading_label">Jaksoa ladataan</string> <string name="in_queue_label">Jakso on jonossa</string> + <string name="is_favorite_label">Jakso on merkitty suosikiksi</string> <string name="load_next_page_label">Lataa seuraava sivu</string> + <string name="position">Kohta: %1$s</string> + <string name="apply_action">Käytä toiminto</string> <string name="play_chapter">Soita kappale</string> <string name="prev_chapter">Edellinen kappale</string> <string name="next_chapter">Seuraava kappale</string> <!--Feed settings/information screen--> <string name="authentication_label">Autentikaatio</string> <string name="authentication_descr">Vaihda käyttäjätunnus ja salasana tälle podcastille ja sen jaksoille.</string> + <string name="feed_tags_label">Tunnisteet</string> + <string name="feed_tags_summary">Muokkaa tämän podcastin tunnisteita tilaustesi järjestelemisen avuksi.</string> <string name="feed_folders_include_root">Näytä pääluettelossa</string> + <string name="multi_feed_common_tags_info">{fa-info-circle} Vain kaikissa valituissa tilauksissa esiintyvät tunnisteet näytetään. Muita tunnisteita ei muuteta.</string> <string name="auto_download_settings_label">Automaattisen latauksen asetukset</string> - <string name="episode_filters_label">Jakson filtterit</string> + <string name="episode_filters_label">Jaksosuodin</string> <string name="episode_filters_description">Lista termeistä joilla valitaan jakso automaattiseen lataukseen</string> <string name="episode_filters_include">Sisällytä</string> <string name="episode_filters_exclude">Poista</string> + <string name="episode_filters_duration">Vähimmäiskesto (minuuttia)</string> <string name="episode_filters_hint">Yksittäiset sanat \n\"Monta sanaa\"</string> <string name="keep_updated">Pidä päivitettynä</string> + <string name="keep_updated_summary">Sisällytä tämä podcast kun kaikki podcastit (auto)päivitetään</string> <string name="auto_download_disabled_globally">Automaattinen lataaminen on pysäytetty AntennaPodin asetuksissa</string> + <string name="statistics_time_played">Toistoaika:</string> + <string name="statistics_total_duration">Koknaiskesto (arvio):</string> + <string name="statistics_duration_played_episodes">Toistettujen jaksojen kesto:</string> <string name="statistics_episodes_on_device">Jaksoja laitteella:</string> <string name="statistics_space_used">Tilaa käytetty:</string> + <string name="statistics_episodes_started_total">Aloitettuja jaksoja/yhteensä:</string> + <string name="statistics_view_all">Kaikki podcastit »</string> <!--AntennaPodSP--> <string name="sp_apps_importing_feeds_msg">Tuodaan tilauksia sovelluksista</string> <!--Add podcast fragment--> @@ -570,25 +685,35 @@ <string name="search_itunes_label">Etsi iTunes:sta</string> <string name="search_podcastindex_label">Etsi Podcastindex.org:sta</string> <string name="search_fyyd_label">Etsi fyyd:sta</string> + <string name="advanced">Edistyneet</string> <string name="add_podcast_by_url">Lisää Podcast RSS-osoitteesta</string> <string name="browse_gpoddernet_label">Selaa gpodder.net</string> <string name="discover">Löydä</string> <string name="discover_hide">Piilota</string> <string name="discover_is_hidden">Valitsit piilottaa ehdotukset.</string> <string name="discover_more">lisää »</string> + <string name="discover_powered_by_itunes">Ehdotukset tarjoaa iTunes</string> + <string name="search_powered_by">Tulosten lähde %1$s</string> <!--Local feeds--> <string name="add_local_folder">Lisää paikallinen kansio</string> <string name="local_folder">Paikallinen kansio</string> <string name="reconnect_local_folder">Yhdistä paikallinen kansio uudelleen</string> - <string name="filter">Filteri</string> + <string name="reconnect_local_folder_warning">Jos lupa evätään, voit käyttää tätä yhteyden muodostamiseen uudelleen täsmälleen samaan kansioon. Älä valitse toista kansiota.</string> + <string name="local_feed_description">Tämä virtuaalinen podcast luotiin lisäämällä kansio AntennaPodiin.</string> + <string name="unable_to_start_system_file_manager">Järjestelmän tiedostonhallintaa ei voi käynnistää</string> + <string name="filter">Suodin</string> <string name="hide_is_favorite_label">On suosikki</string> + <string name="not_favorite">Ei suosikki</string> <string name="hide_downloaded_episodes_label">Ladattu</string> <string name="hide_not_downloaded_episodes_label">Ei ladattu</string> <string name="queued_label">Jonossa</string> <string name="not_queued_label">Ei jonossa</string> <string name="has_media">On media</string> + <string name="no_media">Ei mediaa</string> <string name="hide_paused_episodes_label">Pause</string> + <string name="not_paused">Ei tauotettu</string> <string name="hide_played_episodes_label">Soitettu</string> + <string name="not_played">Ei toistettu</string> <!--Sort--> <string name="sort_title_a_z">Otsikko (A \u2192 Z)</string> <string name="sort_title_z_a">Otsikko (Z \u2192 A)</string> @@ -596,6 +721,8 @@ <string name="sort_date_old_new">Aika (Vanha \u2192 New)</string> <string name="sort_duration_short_long">Kesto (Lyhyt \u2192 Long)</string> <string name="sort_duration_long_short">Kesto (Pitkä \u2192 Short)</string> + <string name="sort_filename_a_z">Tiedoston nimi (A \u2192 Ö)</string> + <string name="sort_filename_z_a">Tiedoston nimi (Ö \u2192 A)</string> <string name="sort_a_z">A \u2192 Ö</string> <string name="sort_z_a">Ö \u2192 A</string> <string name="sort_new_old">Uusi \u2192 vanha</string> @@ -609,6 +736,12 @@ <string name="rating_later_label" tools:ignore="UnusedResources">Muistuta minua myöhemmin</string> <string name="rating_now_label" tools:ignore="UnusedResources">Miksei, tehdään tämä!</string> <!--Share episode dialog--> + <string name="share_dialog_include_label">Sisällytä:</string> + <string name="share_playback_position_dialog_label">Toiston kohta</string> + <string name="share_dialog_episode_website_label">Jakson nettisivu</string> + <string name="share_dialog_link_to_episode">Linkki jaksoon</string> + <string name="share_dialog_media_file_label">Mediatiedosto</string> + <string name="share_starting_position_label">Aloituskohta</string> <!--Audio controls--> <string name="audio_controls">Audiokontrollit</string> <string name="playback_speed">Soittonopeus</string> @@ -631,6 +764,8 @@ <!--Subscriptions fragment--> <string name="subscription_num_columns">Sarakkeiden määrä</string> <!--Notification channels--> + <string name="notification_group_errors">Virheet</string> + <string name="notification_group_news">Uutiset</string> <string name="notification_channel_user_action">Tarvitaan valinta</string> <string name="notification_channel_user_action_description">Näytetään jos toiminta tarvitaan, esimerkiksi jos tarvitset uuden salasanan.</string> <string name="notification_channel_downloading">Ladataan</string> @@ -638,10 +773,22 @@ <string name="notification_channel_playing">Soittaa nyt</string> <string name="notification_channel_playing_description">Sallii soiton kontrollit. Tämä on pääilmoitus, jonka näet kun podcast soitetaan.</string> <string name="notification_channel_download_error">Lataus epäonnistui</string> + <string name="notification_channel_download_error_description">Näytetään, kun lataus tai syötteen päivitys epäonnistuu.</string> + <string name="notification_channel_sync_error">Synkronointi epäonnistui</string> <string name="notification_channel_sync_error_description">Näytetään, kun gpodder-synkronointi epäonnistuu.</string> <string name="notification_channel_auto_download">Automaattinen lataus valmis</string> <string name="notification_channel_episode_auto_download">Näytetään, kun jaksot on automaattisesti ladattu.</string> <string name="notification_channel_new_episode">Uusi jakso</string> + <string name="notification_channel_new_episode_description">Näytetään ilmoitusten ollessa käytössä, kun podcastin uusi jakso löytyy</string> <!--Widget settings--> + <string name="widget_settings">Widget-asetukset</string> + <string name="widget_create_button">Luo widget</string> + <string name="widget_opacity">Läpikuultamattomuus</string> <!--On-Demand configuration--> + <string name="on_demand_config_setting_changed">Asetuksen päivitys onnistui.</string> + <string name="on_demand_config_stream_text">Näyttää siltä, että suoratoistat paljon. Haluatko, että jaksoluetteloissa näytetään suoratoistopainikkeet?</string> + <string name="on_demand_config_download_text">Näyttää siltä, että lataat paljon. Haluatko, että jaksoluetteloissa näytetään latauspainikkeet?</string> + <string name="shortcut_subscription_label">Tilauksen pikakuvake</string> + <string name="shortcut_select_subscription">Valitse tilaus</string> + <string name="add_shortcut">Lisää pikakuvake</string> </resources> diff --git a/core/src/main/res/values-fr/strings.xml b/core/src/main/res/values-fr/strings.xml index ffd5efffa..b0ffcb348 100644 --- a/core/src/main/res/values-fr/strings.xml +++ b/core/src/main/res/values-fr/strings.xml @@ -173,7 +173,7 @@ </plurals> <string name="edit_tags">Modifier les tags</string> <string name="rename_tag_label">Renommer le tag</string> - <string name="confirm_mobile_feed_refresh_dialog_message">Le téléchargement d\'épisodes par la connexion mobile est désactivé dans les paramètres.\n\nVoulez-vous quand même actualiser les podcasts ?</string> + <string name="confirm_mobile_feed_refresh_dialog_message">Le téléchargement d\'épisodes par la connexion mobile est désactivé dans les options.\n\nVoulez-vous quand même actualiser tous les podcasts ?</string> <!--actions on feeditems--> <string name="download_label">Télécharger</string> <plurals name="downloading_batch_label"> @@ -432,7 +432,7 @@ <string name="synchronization_full_sync_title">Forcer une synchronisation complète</string> <string name="synchronization_login_status"><![CDATA[Connecté en tant que <i>%1$s</i> sur <i>%2$s</i>. <br/><br/>Déconnectez-vous pour pouvoir changer le service de synchronisation]]></string> <string name="synchronization_summary_unchoosen">Vous pouvez choisir entre plusieurs services pour synchroniser les abonnements et les statuts des épisodes</string> - <string name="synchronization_summary_nextcloud">Gpoddersync est une application Nextcloud open-source que vous pouvez installer facilement sur votre serveur. L\'application est indépendante du projet AntennaPod.</string> + <string name="synchronization_summary_nextcloud">Gpoddersync est une application Nextcloud et open-source que vous pouvez installer facilement sur votre serveur. L\'application est indépendante du projet AntennaPod.</string> <string name="synchronization_nextcloud_authenticate_browser">Autoriser l\'accès à l\'aide du navigateur qui a été ouvert puis revenez sur AntennaPod.</string> <string name="synchronization_choose_title">Choisir le service de synchronisation</string> <string name="synchronization_force_sync_summary">Resynchroniser tous les abonnements et tous les statuts d\'épisodes</string> @@ -518,7 +518,7 @@ <string name="pref_feed_settings_dialog_msg">Ce paramètre est spécifique à chaque podcast. Vous pouvez le changer en ouvrant la page du podcast.</string> <string name="pref_contribute">Contribuer</string> <string name="pref_show_subscription_title">Afficher les noms des podcasts</string> - <string name="pref_show_subscription_title_summary">Affiche le nom des abonnements en dessous des images des podcasts.</string> + <string name="pref_show_subscription_title_summary">Affiche le nom des podcasts en dessous de leur image.</string> <!--About screen--> <string name="about_pref">À propos</string> <string name="antennapod_version">Version d\'AntennaPod</string> @@ -541,7 +541,7 @@ <string name="sync_status_episodes_download">Import des statuts des épisodes...</string> <string name="sync_status_upload_played">Export des statuts de lecture...</string> <string name="sync_status_subscriptions">Synchronisation des abonnements...</string> - <string name="sync_status_wait_for_downloads">En attente de la fin des téléchargements...</string> + <string name="sync_status_wait_for_downloads">En attente que la récupération des données finissent...</string> <string name="sync_status_success">Synchronisation réussie</string> <string name="sync_status_error">Echec de la synchronisation</string> <!--import and export--> @@ -658,7 +658,7 @@ <string name="authentication_label">Authentification</string> <string name="authentication_descr">Identifiant et mot de passe pour ce podcast.</string> <string name="feed_tags_label">Tags</string> - <string name="feed_tags_summary">Modifier les tags de ce podcast pour organiser vos abonnements</string> + <string name="feed_tags_summary">Modifier les tags de ce podcast pour classer vos abonnements</string> <string name="feed_folders_include_root">Montrer dans la liste principale</string> <string name="multi_feed_common_tags_info">{fa-info-circle} Seul les tags communs à tous les abonnements sélectionnés sont montrés. Les autres tags ne seront pas modifiés.</string> <string name="auto_download_settings_label">Préférence de téléchargement automatique</string> @@ -674,9 +674,9 @@ <string name="statistics_time_played">Temps de lecture :</string> <string name="statistics_total_duration">Durée totale (estimation) :</string> <string name="statistics_duration_played_episodes">Durée des épisodes lus :</string> - <string name="statistics_episodes_on_device">Episodes sur l\'appareil :</string> + <string name="statistics_episodes_on_device">Episode(s) sur l\'appareil :</string> <string name="statistics_space_used">Espace utilisé :</string> - <string name="statistics_episodes_started_total">Episodes commencés / total :</string> + <string name="statistics_episodes_started_total">Episodes démarrés / total :</string> <string name="statistics_view_all">Voir les statistiques pour tous les podcasts »</string> <!--AntennaPodSP--> <string name="sp_apps_importing_feeds_msg">Importation des abonnements à partir d\'applications à usage unique...</string> @@ -741,7 +741,7 @@ <string name="share_dialog_episode_website_label">Lien de la page web de l\'épisode</string> <string name="share_dialog_link_to_episode">Lien de l\'épisode</string> <string name="share_dialog_media_file_label">Fichier de l\'épisode</string> - <string name="share_starting_position_label">A partir de</string> + <string name="share_starting_position_label">A partir de </string> <!--Audio controls--> <string name="audio_controls">Contrôles audio</string> <string name="playback_speed">Vitesse de lecture</string> diff --git a/core/src/main/res/values-lt/strings.xml b/core/src/main/res/values-lt/strings.xml index f2a60e04f..ffa272965 100644 --- a/core/src/main/res/values-lt/strings.xml +++ b/core/src/main/res/values-lt/strings.xml @@ -185,6 +185,8 @@ <item quantity="many">%d prenumeratų atnaujinta.</item> <item quantity="other">%d prenumeratų atnaujinta.</item> </plurals> + <string name="edit_tags">Redaguoti žymes</string> + <string name="rename_tag_label">Pervadinti žymę</string> <!--actions on feeditems--> <string name="download_label">Atsisiųsti</string> <plurals name="downloading_batch_label"> @@ -349,6 +351,7 @@ <string name="storage_sum">Automatinis epizodų trynimas, importas, eksportas</string> <string name="project_pref">Projektas</string> <string name="synchronization_pref">Sinchronizavimas</string> + <string name="synchronization_sum">Sinchronizuoti su kitais įrenginiais</string> <string name="automation">Automatizacija</string> <string name="download_pref_details">Išsamiau</string> <string name="import_export_pref">Importas/Eksportas</string> @@ -441,8 +444,17 @@ <string name="pref_theme_title_dark">Tamsi</string> <string name="pref_theme_title_trueblack">Juoda (paruošta AMOLED)</string> <string name="pref_episode_cache_unlimited">Neribojamas</string> + <string name="synchronization_logout">Atsijungti</string> + <string name="pref_synchronization_logout_toast">Sėkmingai atsijungta</string> <string name="pref_gpodnet_setlogin_information_title">Keisti prisijungimo duomenis</string> <string name="pref_gpodnet_setlogin_information_sum">Keisti prisijungimo prie „gpodder.net“ paskyros duomenis.</string> + <string name="synchronization_sync_changes_title">Sinchronizuoti dabar</string> + <string name="synchronization_full_sync_title">Priverstinis pilnas sinchronizavimas</string> + <string name="synchronization_summary_unchoosen">Galite pasirinkti iš keleto teikėjų prenumeratų ir epizodų atkūrimo būsenai sinchronizuoti</string> + <string name="synchronization_choose_title">Pasirinkite sinchronizavimo teikėją</string> + <string name="synchronization_force_sync_summary">Sinchronizuoti visų prenumeratų ir epizodų būsenas iš naujo</string> + <string name="synchronization_sync_summary">Sinchronizuoti prenumeratų ir epizodų būsenų pokyčius</string> + <string name="dialog_choose_sync_service_title">Pasirinkite sinchronizavimo teikėją</string> <string name="pref_playback_speed_sum">Derinkite prieinamas garso atkūrimo spartas</string> <string name="pref_feed_playback_speed_sum">Atkūrimo sparta, naudojama pradedant šios tinklalaidės epizodų atkūrimą</string> <string name="pref_feed_skip">Automatinis praleidimas</string> @@ -522,6 +534,7 @@ <string name="new_episode_notification_disabled">Pranešimas išjungtas</string> <string name="pref_feed_settings_dialog_msg">Šis nustatymas individualus kiekvienai tinklalaidei. Jį pakeisti galite atvėrę tinklalaidės langą.</string> <string name="pref_contribute">Prisidėti</string> + <string name="pref_show_subscription_title">Rodyti prenumeratos pavadinimą</string> <!--About screen--> <string name="about_pref">Apie</string> <string name="antennapod_version">„AntennaPod“ versija</string> @@ -647,6 +660,7 @@ <string name="preview_episode">Peržiūra</string> <string name="stop_preview">Stabdyti peržiūrą</string> <!--Content descriptions for image buttons--> + <string name="toolbar_back_button_content_description">Atgal</string> <string name="rewind_label">Atsukti</string> <string name="fast_forward_label">Persukti į priekį</string> <string name="increase_speed">Padidinti spartą</string> @@ -664,12 +678,16 @@ <!--Feed settings/information screen--> <string name="authentication_label">Tapatumo nustatymas</string> <string name="authentication_descr">Keisti vartotojo vardą ir slaptažodį šiai tinklalaidei ir jos epizodams.</string> + <string name="feed_tags_label">Žymės</string> + <string name="feed_tags_summary">Keisti tinklalaidės žymes, kad palengvinti prenumeratų tvarkymą</string> <string name="feed_folders_include_root">Rodyti pagrindiniame sąraše</string> + <string name="multi_feed_common_tags_info">{fa-info-circle} Rodomos tik žymės, bendros visoms pažymėtoms prenumeratoms. Kitos žymės liks nepaveiktos.</string> <string name="auto_download_settings_label">Automatinio atsiuntimo nustatymai</string> <string name="episode_filters_label">Epizodų filtras</string> <string name="episode_filters_description">Žodžių ar frazių sąrašas, kuriuo remiantis sprendžiama, ar epizodas turėtų būti įtrauktas ar išbrauktas iš automatiškai atsiunčiamų epizodų</string> <string name="episode_filters_include">Įtraukti</string> <string name="episode_filters_exclude">Išbraukti</string> + <string name="episode_filters_duration">Minimali trukmė (minutėmis)</string> <string name="episode_filters_hint">Pavieniai žodžiai\n\"frazės kabutėse\"</string> <string name="keep_updated">Pastoviai atnaujinti</string> <string name="keep_updated_summary">Įtraukti šią tinklalaidę į (automatinį) visų tinklalaidžių atnaujinimą</string> @@ -783,4 +801,5 @@ <string name="on_demand_config_setting_changed">Nustatymas sėkmingai atnaujintas.</string> <string name="on_demand_config_stream_text">Panašu, jog dažnai klausotės tiesiogiai. Ar norite, jog epizodų sąraše būtų rodomi tiesioginio klausymosi mygtukai?</string> <string name="on_demand_config_download_text">Panašu, jog dažnai atsisiunčiate epizodus. Ar norite, jog epizodų sąraše būtų rodomi atsiuntimo mygtukai?</string> + <string name="shortcut_select_subscription">Pažymėti prenumeratą</string> </resources> diff --git a/core/src/main/res/values-nl/strings.xml b/core/src/main/res/values-nl/strings.xml index 6e5d5befa..31f030290 100644 --- a/core/src/main/res/values-nl/strings.xml +++ b/core/src/main/res/values-nl/strings.xml @@ -171,6 +171,9 @@ <item quantity="one">%d aflevering bijgewerkt.</item> <item quantity="other">%d afleveringen bijgewerkt.</item> </plurals> + <string name="edit_tags">Labels bewerken</string> + <string name="rename_tag_label">Labelnaam wijzigen</string> + <string name="confirm_mobile_feed_refresh_dialog_message">Het downloaden van afleveringen via mobiel internet is uitgeschakeld in de instellingen.\n\nWeet je zeker dat je wilt doorgaan?</string> <!--actions on feeditems--> <string name="download_label">Downloaden</string> <plurals name="downloading_batch_label"> @@ -183,6 +186,10 @@ <string name="delete_label">Verwijderen</string> <string name="delete_failed">Kan bestand niet verwijderen; start je apparaat opnieuw op.</string> <string name="delete_episode_label">Aflevering verwijderen</string> + <plurals name="deleted_multi_episode_batch_label"> + <item quantity="one">1 gedownloade aflevering verwijderd.</item> + <item quantity="other">%d gedownloade afleveringen verwijderd.</item> + </plurals> <string name="remove_new_flag_label">\'Nieuw\'-label verwijderen</string> <string name="removed_new_flag_label">\'Nieuw\'-label is verwijderd</string> <string name="mark_read_label">Als afgespeeld markeren</string> @@ -240,6 +247,8 @@ <string name="download_error_forbidden">De hostserver reageert niet.</string> <string name="download_canceled_msg">Download afgebroken</string> <string name="download_error_wrong_size">De serververbinding werd verbroken voordat de download kon worden afgerond</string> + <string name="download_error_blocked">Het downloaden is geblokkeerd door een andere app (bijv. een vpn of advertentieblokkeerder).</string> + <string name="download_error_certificate">Er kan geen beveiligde verbinding worden opgezet. Mogelijk blokkeert een andere app (bijv. een vpn of advertentieblokkeerder) de download of is er een probleem met de servercertificaten.</string> <string name="download_report_title">Downloads afgerond, maar met fout(en)</string> <string name="auto_download_report_title">Automatisch downloaden afgerond</string> <string name="download_error_io_error">In-/Uitvoerfout</string> @@ -255,6 +264,7 @@ <string name="download_type_feed">Feed</string> <string name="download_type_media">Mediabestand</string> <string name="null_value_podcast_error">Er is geen te tonen podcast opgegeven.</string> + <string name="no_feed_url_podcast_found_by_search">De aanbevolen podcast bevat geen rss-link, maar er is een gelijkaardige podcast gevonden</string> <string name="authentication_notification_title">Authenticatie vereist</string> <string name="authentication_notification_msg">De opgevraagde bron vereist een gebruikersnaam en wachtwoord</string> <string name="confirm_mobile_download_dialog_title">Bevestig downloaden via mobiel internet</string> @@ -323,6 +333,7 @@ <string name="storage_sum">Automatisch verwijderen, im- en exporteren</string> <string name="project_pref">Project</string> <string name="synchronization_pref">Synchronisatie</string> + <string name="synchronization_sum">Synchroniseren met andere apparaten</string> <string name="automation">Automatische acties</string> <string name="download_pref_details">Details</string> <string name="import_export_pref">Importeren/Exporteren</string> @@ -413,8 +424,20 @@ <string name="pref_theme_title_dark">Donker</string> <string name="pref_theme_title_trueblack">Zwart (geschikt voor AMOLED)</string> <string name="pref_episode_cache_unlimited">Onbeperkt</string> + <string name="synchronization_logout">Uitloggen</string> + <string name="pref_synchronization_logout_toast">Uitgelogd</string> <string name="pref_gpodnet_setlogin_information_title">Inloggegevens wijzigen</string> <string name="pref_gpodnet_setlogin_information_sum">Wijzig de inloggegevens van je gpodder.net-account.</string> + <string name="synchronization_sync_changes_title">Nu synchroniseren</string> + <string name="synchronization_full_sync_title">Volledige synchronisatie afdwingen</string> + <string name="synchronization_login_status"><![CDATA[Ingelogd als <i>%1$s</i> op <i>%2$s</i>. <br/><br/>Na het uitloggen kun je een synchronizatiedienst kiezen]]></string> + <string name="synchronization_summary_unchoosen">Je kunt meerdere diensten kiezen voor het synchroniseren van je abonnementen en afspeelstatussen</string> + <string name="synchronization_summary_nextcloud">Gpoddersyng is een open source Nextcloud-app die je kunt installeren op je eigen server. De app niet betrokken is bij het AntennaPod-project.</string> + <string name="synchronization_nextcloud_authenticate_browser">Verleen toegang in de geopende webbrowser en keer terug naar AntennaPod.</string> + <string name="synchronization_choose_title">Kies een synchronisatiedienst</string> + <string name="synchronization_force_sync_summary">Alle abonnementen en afspeelstatussen opnieuw synchroniseren</string> + <string name="synchronization_sync_summary">Alle gewijzigde abonnementen en afspeelstatussen opnieuw synchroniseren</string> + <string name="dialog_choose_sync_service_title">Kies een synchronisatiedienst</string> <string name="pref_playback_speed_sum">Pas de beschikbare snelheden aan voor de variabele afspeelsnelheid</string> <string name="pref_feed_playback_speed_sum">De te gebruiken snelheid bij het afspelen van afleveringen in deze podcast</string> <string name="pref_feed_skip">Automatisch overslaan</string> @@ -494,6 +517,8 @@ <string name="new_episode_notification_disabled">Melding is uitgeschakeld</string> <string name="pref_feed_settings_dialog_msg">Deze instellingen moet per podcast worden in- of uitgeschakeld. Pas aan door de podcastpagina te openen.</string> <string name="pref_contribute">Bijdragen</string> + <string name="pref_show_subscription_title">Abonnementsnaam tonen</string> + <string name="pref_show_subscription_title_summary">Toon de abonnementsnaam onder de omslag.</string> <!--About screen--> <string name="about_pref">Over AntennaPod</string> <string name="antennapod_version">AntennaPod-versie</string> @@ -516,6 +541,7 @@ <string name="sync_status_episodes_download">Afleveringswijzigingen aan het downloaden…</string> <string name="sync_status_upload_played">Afspeelstatus aan het uploaden …</string> <string name="sync_status_subscriptions">Abonnementen aan het synchroniseren…</string> + <string name="sync_status_wait_for_downloads">Bezig met wachten op downloads…</string> <string name="sync_status_success">Synchronisatie afgerond</string> <string name="sync_status_error">Synchronisatie mislukt</string> <!--import and export--> @@ -613,6 +639,7 @@ <string name="preview_episode">Voorvertoning</string> <string name="stop_preview">Stop voorvertoning</string> <!--Content descriptions for image buttons--> + <string name="toolbar_back_button_content_description">Terug</string> <string name="rewind_label">Terugspoelen</string> <string name="fast_forward_label">Vooruitspoelen</string> <string name="increase_speed">Verhoog snelheid</string> @@ -630,18 +657,26 @@ <!--Feed settings/information screen--> <string name="authentication_label">Authenticatie</string> <string name="authentication_descr">Gebruikersnaam en wachtwoord wijzigen voor deze podcast en bijbehorende afleveringen.</string> + <string name="feed_tags_label">Labels</string> + <string name="feed_tags_summary">Wijzig de labels van deze podcast om je abonnementen te organiseren</string> <string name="feed_folders_include_root">Tonen op overzicht</string> + <string name="multi_feed_common_tags_info">{fa-info-circle} Er worden alleen algemene labels getoond. Andere labels worden niet aangepast.</string> <string name="auto_download_settings_label">Instellingen voor Automatisch downloaden</string> <string name="episode_filters_label">Afleveringsfilter</string> <string name="episode_filters_description">Lijst van zoektermen die bepalen of een aflevering meegenomen of uitgesloten wordt bij automatisch downloaden</string> <string name="episode_filters_include">Meenemen</string> <string name="episode_filters_exclude">Uitsluiten</string> + <string name="episode_filters_duration">Minimale duur (in minuten)</string> <string name="episode_filters_hint">Losse woorden \n\"Meerdere tussen aanhalingstekens\"</string> <string name="keep_updated">Bijgewerkt houden</string> <string name="keep_updated_summary">Deze podcast meenemen bij het (automatisch) verversen van alle podcasts</string> <string name="auto_download_disabled_globally">Automatisch downloaden is uitgeschakeld in de AntennaPod-instellingen</string> + <string name="statistics_time_played">Afgespeeld:</string> + <string name="statistics_total_duration">Totale duur (geschat):</string> + <string name="statistics_duration_played_episodes">Duur van beluisterde afleveringen:</string> <string name="statistics_episodes_on_device">Afleveringen op apparaat:</string> <string name="statistics_space_used">Gebruikte ruimte:</string> + <string name="statistics_episodes_started_total">Aantal gestarte afleveringen:</string> <string name="statistics_view_all">Alle podcasts tonen »</string> <!--AntennaPodSP--> <string name="sp_apps_importing_feeds_msg">Bezig met importeren van abonnementen uit eenmalige apps...</string> @@ -686,6 +721,8 @@ <string name="sort_date_old_new">Datum (oud \u2192 nieuw)</string> <string name="sort_duration_short_long">Lengte (kort \u2192 lang)</string> <string name="sort_duration_long_short">Lengte (lang \u2192 kort)</string> + <string name="sort_filename_a_z">Bestandsnaam (A \u2192 Z)</string> + <string name="sort_filename_z_a">Bestandsnaam (Z \u2192 A)</string> <string name="sort_a_z">A \u2192 Z</string> <string name="sort_z_a">Z \u2192 A</string> <string name="sort_new_old">Nieuw \u2192 Oud</string> @@ -702,7 +739,9 @@ <string name="share_dialog_include_label">Opnemen:</string> <string name="share_playback_position_dialog_label">Afspeelpositie</string> <string name="share_dialog_episode_website_label">Website van aflevering</string> + <string name="share_dialog_link_to_episode">Link naar aflevering</string> <string name="share_dialog_media_file_label">Mediabestand</string> + <string name="share_starting_position_label">Beginnen vanaf</string> <!--Audio controls--> <string name="audio_controls">Audio-instellingen</string> <string name="playback_speed">Afspeelsnelheid</string> @@ -749,4 +788,7 @@ <string name="on_demand_config_setting_changed">De instelling is aangepast.</string> <string name="on_demand_config_stream_text">Het lijkt er op dat je vaak streamt. Wil je streamknoppen tonen in de lijst met afleveringen?</string> <string name="on_demand_config_download_text">Het lijkt er op dat je vaak dowloadt. Wil je downloadknoppen tonen in de lijst met afleveringen?</string> + <string name="shortcut_subscription_label">Abonnementssnelkoppeling</string> + <string name="shortcut_select_subscription">Kies een abonnement</string> + <string name="add_shortcut">Snelkoppeling toevoegen</string> </resources> diff --git a/core/src/main/res/values-pt/strings.xml b/core/src/main/res/values-pt/strings.xml index c4fb8ef1e..646f9cdc2 100644 --- a/core/src/main/res/values-pt/strings.xml +++ b/core/src/main/res/values-pt/strings.xml @@ -171,6 +171,9 @@ <item quantity="one">%d subscrição atualizada.</item> <item quantity="other">%d subscrições atualizadas.</item> </plurals> + <string name="edit_tags">Editar etiquetas</string> + <string name="rename_tag_label">Renomear etiqueta</string> + <string name="confirm_mobile_feed_refresh_dialog_message">A possibilidade de descarregar episódios através de dados móveis está desativada nas definições.\n\nAinda assim deseja recarregar todos os podcasts?</string> <!--actions on feeditems--> <string name="download_label">Descarregar</string> <plurals name="downloading_batch_label"> @@ -183,6 +186,10 @@ <string name="delete_label">Eliminar</string> <string name="delete_failed">Episódio não eliminado. Tente reiniciar o dispositivo.</string> <string name="delete_episode_label">Eliminar episódio</string> + <plurals name="deleted_multi_episode_batch_label"> + <item quantity="one">1 episódio eliminado.</item> + <item quantity="other">%d episódios eliminados.</item> + </plurals> <string name="remove_new_flag_label">Remover a marca \"novo\"</string> <string name="removed_new_flag_label">A marca \"novo\" foi removida</string> <string name="mark_read_label">Marcar como reproduzido</string> @@ -240,6 +247,8 @@ <string name="download_error_forbidden">O servidor do podcast não respondeu.</string> <string name="download_canceled_msg">Descarga cancelada</string> <string name="download_error_wrong_size">A ligação ao servidor foi terminada antes de terminar a descarga.</string> + <string name="download_error_blocked">A descarga foi bloqueada por outra aplicação do seu dispositivo (uma VPN ou bloqueador de anúncios).</string> + <string name="download_error_certificate">Não foi possível estabelecer uma ligação segura. Isto pode significar que uma aplicação (VPN ou bloqueador de anúncios) bloqueou a descarga ou que existe algum problema com o servidor.</string> <string name="download_report_title">Descargas terminadas com erros</string> <string name="auto_download_report_title">Descargas automáticas terminadas</string> <string name="download_error_io_error">Erro I/O</string> @@ -255,6 +264,7 @@ <string name="download_type_feed">Fonte</string> <string name="download_type_media">Ficheiro multimédia</string> <string name="null_value_podcast_error">Não foi possível mostrar o podcast.</string> + <string name="no_feed_url_podcast_found_by_search">O podcast sugerido não tem uma ligação RSS mas AntennaPod encontrou um podcast que pode ser coincidente.</string> <string name="authentication_notification_title">Requer autenticação</string> <string name="authentication_notification_msg">O recurso solicitado requer um utilizador e uma palavra-passe</string> <string name="confirm_mobile_download_dialog_title">Confirmação de descarga</string> @@ -323,6 +333,7 @@ <string name="storage_sum">Eliminação automática, importação e exportação</string> <string name="project_pref">Projeto</string> <string name="synchronization_pref">Sincronização</string> + <string name="synchronization_sum">Sincronizar com outros dispositivos</string> <string name="automation">Automatização</string> <string name="download_pref_details">Detalhes</string> <string name="import_export_pref">Importar/Exportar</string> @@ -413,8 +424,20 @@ <string name="pref_theme_title_dark">Escuro</string> <string name="pref_theme_title_trueblack">Preto (AMOLED)</string> <string name="pref_episode_cache_unlimited">Sem limite</string> + <string name="synchronization_logout">Terminar sessão</string> + <string name="pref_synchronization_logout_toast">Sessão terminada com sucesso</string> <string name="pref_gpodnet_setlogin_information_title">Alterar informação de acesso</string> <string name="pref_gpodnet_setlogin_information_sum">Alterar a informação de acesso à sua conta gpodder.net</string> + <string name="synchronization_sync_changes_title">Sincronizar agora</string> + <string name="synchronization_full_sync_title">Impor sincronização total</string> + <string name="synchronization_login_status"><![CDATA[Iniciou sessão como <i>%1$s</i> em <i>%2$s</i>. <br/><br/>Se quiser, pode escolher outro serviço de sincronização assim quer terminar a sessão]]></string> + <string name="synchronization_summary_unchoosen">Pode escolher diversos serviços para sincronizar as suas subscrições e o estado de reprodução dos episódios com</string> + <string name="synchronization_summary_nextcloud">Gpoddersync é uma aplicação NextCloud que pode, facilmente, ser instalada no seu servidor. Esta aplicação é independente do projeto AntennaPod.</string> + <string name="synchronization_nextcloud_authenticate_browser">Conceda o acesso necessário através do navegador web e retorne a AntennaPod.</string> + <string name="synchronization_choose_title">Escolher serviço de sincroniação</string> + <string name="synchronization_force_sync_summary">Voltar a sincronizar todas as subscrições e o estado de reprodução</string> + <string name="synchronization_sync_summary">Sincronizar alterações às subscrições e ao estado de reprodução</string> + <string name="dialog_choose_sync_service_title">Escolher serviço de sincroniação</string> <string name="pref_playback_speed_sum">Personalizar disponibilidade das velocidades variáveis de reprodução</string> <string name="pref_feed_playback_speed_sum">Velocidade utilizada para a reprodução áudio dos episódios deste podcast</string> <string name="pref_feed_skip">Ignorar automaticamente</string> @@ -494,6 +517,8 @@ <string name="new_episode_notification_disabled">Notificações desativadas</string> <string name="pref_feed_settings_dialog_msg">Esta definição é específica por podcast. Pode alterar a sua opção na página do podcast.</string> <string name="pref_contribute">Participar</string> + <string name="pref_show_subscription_title">Mostrar título da subscrição</string> + <string name="pref_show_subscription_title_summary">Mostrar título da subscrição por baixo da imagem.</string> <!--About screen--> <string name="about_pref">Acerca</string> <string name="antennapod_version">Versão do AntennaPod</string> @@ -516,6 +541,7 @@ <string name="sync_status_episodes_download">Descarregar alterações nos episódios...</string> <string name="sync_status_upload_played">Carregar estado de reprodução...</string> <string name="sync_status_subscriptions">Sincronizar subscrições...</string> + <string name="sync_status_wait_for_downloads">A aguardar pelo término das descargas...</string> <string name="sync_status_success">Sincronização bem sucedida</string> <string name="sync_status_error">Falha na sincronização</string> <!--import and export--> @@ -613,6 +639,7 @@ <string name="preview_episode">Antevisão</string> <string name="stop_preview">Parar pré-visualização</string> <!--Content descriptions for image buttons--> + <string name="toolbar_back_button_content_description">Recuar</string> <string name="rewind_label">Recuo rápido</string> <string name="fast_forward_label">Avanço rápido</string> <string name="increase_speed">Aumentar velocidade</string> @@ -630,18 +657,26 @@ <!--Feed settings/information screen--> <string name="authentication_label">Autenticação</string> <string name="authentication_descr">Altere o seu nome de utilizador e palavra-passe para este podcast e seus episódios</string> + <string name="feed_tags_label">Etiquetas</string> + <string name="feed_tags_summary">Escolha as etiquetas a usar neste podcast para organizar melhor as suas subscrições</string> <string name="feed_folders_include_root">Mostrar na lista principal</string> + <string name="multi_feed_common_tags_info">{fa-info-circle} Apenas são mostradas as etiquetas comuns às subscrições selecionadas. As outras etiquetas não são afetadas.</string> <string name="auto_download_settings_label">Definições de descarga automática</string> <string name="episode_filters_label">Filtro de episódios</string> <string name="episode_filters_description">Lista de termos utilizados para determinar se um episódio deve ser incluído ou excluído das descargas automáticas</string> <string name="episode_filters_include">Incluir</string> <string name="episode_filters_exclude">Excluir</string> + <string name="episode_filters_duration">Duração mínima (em minutos)</string> <string name="episode_filters_hint">Uma palavra\n\"Várias palavras\"</string> <string name="keep_updated">Manter atualizada</string> <string name="keep_updated_summary">Incluir este podcast ao recarregar automaticamente todos os podcasts</string> <string name="auto_download_disabled_globally">A descarga automática está desativada nas definições do AntennaPod</string> + <string name="statistics_time_played">Tempo de reprodução:</string> + <string name="statistics_total_duration">Duração total (estimada):</string> + <string name="statistics_duration_played_episodes">Duração dos episódios reproduzidos:</string> <string name="statistics_episodes_on_device">Episódios no dispositivo:</string> <string name="statistics_space_used">Espaço utilizado:</string> + <string name="statistics_episodes_started_total">Episódios iniciados/total:</string> <string name="statistics_view_all">Ver para todos os podcasts »</string> <!--AntennaPodSP--> <string name="sp_apps_importing_feeds_msg">Importar subscrições de aplicações single-purpose...</string> @@ -686,6 +721,8 @@ <string name="sort_date_old_new">Data (Antiga \u2192 Recente)</string> <string name="sort_duration_short_long">Duração (Curta \u2192 Longa)</string> <string name="sort_duration_long_short">Duração (Longa \u2192 Curta)</string> + <string name="sort_filename_a_z">Nome do ficheiro (A \u2192 Z)</string> + <string name="sort_filename_z_a">Nome do ficheiro (Z \u2192 A)</string> <string name="sort_a_z">A \u2192 Z</string> <string name="sort_z_a">Z \u2192 A</string> <string name="sort_new_old">Novo \u2192 Antigo</string> @@ -702,7 +739,9 @@ <string name="share_dialog_include_label">Incluir:</string> <string name="share_playback_position_dialog_label">Posição de reprodução</string> <string name="share_dialog_episode_website_label">Página web do episódio</string> + <string name="share_dialog_link_to_episode">Ligação para o episódio</string> <string name="share_dialog_media_file_label">Ficheiro multimédia</string> + <string name="share_starting_position_label">Iniciando em</string> <!--Audio controls--> <string name="audio_controls">Controlos de áudio</string> <string name="playback_speed">Velocidade de reprodução</string> @@ -749,4 +788,7 @@ <string name="on_demand_config_setting_changed">Definições atualizadas com sucesso.</string> <string name="on_demand_config_stream_text">Parece que você prefere as emissões. Deseja que a lista de episódios mostre os botões adequados?</string> <string name="on_demand_config_download_text">Parece que você prefere as descargas. Deseja que a lista de episódios mostre os botões adequados?</string> + <string name="shortcut_subscription_label">Atalho da subscrição</string> + <string name="shortcut_select_subscription">Selecione a subscrição</string> + <string name="add_shortcut">Adicionar atalho</string> </resources> diff --git a/core/src/main/res/values-ro/strings.xml b/core/src/main/res/values-ro/strings.xml index e00e1104a..b9cf03cb8 100644 --- a/core/src/main/res/values-ro/strings.xml +++ b/core/src/main/res/values-ro/strings.xml @@ -178,6 +178,9 @@ <item quantity="few">%d abonamente actualizate.</item> <item quantity="other">%d de abonamente actualizate.</item> </plurals> + <string name="edit_tags">Editează etichetele</string> + <string name="rename_tag_label">Redenumește etichetele</string> + <string name="confirm_mobile_feed_refresh_dialog_message">Descărcarea episoadelor folosint datele mobile este oprită din setări.\n\nDoriți să reîmprospătați toate podcasturile folosint datele mobile ?</string> <!--actions on feeditems--> <string name="download_label">Descarcă</string> <plurals name="downloading_batch_label"> @@ -191,6 +194,11 @@ <string name="delete_label">Șterge</string> <string name="delete_failed">Imposibil de șters. Restartarea dispozitivului ar putea ajuta.</string> <string name="delete_episode_label">Șterge episod</string> + <plurals name="deleted_multi_episode_batch_label"> + <item quantity="one">1 episod descărcat a fost șters.</item> + <item quantity="few">%d episoade descărcare au fost șterse.</item> + <item quantity="other">%d de episoade descărcare au fost șterse.</item> + </plurals> <string name="remove_new_flag_label">Îndepărtați semnul \"nou\"</string> <string name="removed_new_flag_label">Semnul \"nou\" a fost șters</string> <string name="mark_read_label">Marchează ca citit</string> @@ -252,6 +260,8 @@ <string name="download_error_forbidden">Serverul podcastului refuză să răspundă.</string> <string name="download_canceled_msg">Descărcare anulată</string> <string name="download_error_wrong_size">Conexiunea cu serverul a fost pierdută înainte să se termine descărcarea.</string> + <string name="download_error_blocked">Descărcarea a fost blocată de o altă aplicație de pe dispozitivul dumneavoastră (VPN sau ad blocker).</string> + <string name="download_error_certificate">Nu s-a putut stabili o conexiune securizată. Acest lucru poate sugera că o aplicație de pe dispozitivul dumoneavoastră (VPN sau ad blocker) a blocat descărcarea, sau că ceva este în neregulă cu certificatele de la server.</string> <string name="download_report_title">Descărcări terminate</string> <string name="auto_download_report_title">Descărcările automate sunt complete</string> <string name="download_error_io_error">Eroare IO</string> @@ -268,6 +278,7 @@ <string name="download_type_feed">Feed</string> <string name="download_type_media">Fișier media</string> <string name="null_value_podcast_error">Nu a fost furnizat niciun podcast ce ar putea fi arătat.</string> + <string name="no_feed_url_podcast_found_by_search">Podcastul sugerat nu are un link RSS, AntennaPod a găsit un podcast care s-ar putea potrivi</string> <string name="authentication_notification_title">Autentificare necesară</string> <string name="authentication_notification_msg">Resursele cerute necesită un username si parolă</string> <string name="confirm_mobile_download_dialog_title">Confirmați descărcarea folosind datele mobile</string> @@ -336,6 +347,7 @@ <string name="storage_sum">Episoadele se șterg automat, Importă, Exportă</string> <string name="project_pref">Proiect</string> <string name="synchronization_pref">Sincronizare</string> + <string name="synchronization_sum">Sincronizare cu alte dispozitive</string> <string name="automation">Automatizare</string> <string name="download_pref_details">Detalii</string> <string name="import_export_pref">Importă/Exportă</string> @@ -427,8 +439,20 @@ <string name="pref_theme_title_dark">Întunecat</string> <string name="pref_theme_title_trueblack">Negru (pentru AMOLED)</string> <string name="pref_episode_cache_unlimited">Nelimitat</string> + <string name="synchronization_logout">Deconectare</string> + <string name="pref_synchronization_logout_toast">Deconectarea a reușit</string> <string name="pref_gpodnet_setlogin_information_title">Schimbă informațiile de autentificare</string> <string name="pref_gpodnet_setlogin_information_sum">Schimbă informațiile de autentificare pentru contul tău gpodder.net.</string> + <string name="synchronization_sync_changes_title">Sincronizează acum</string> + <string name="synchronization_full_sync_title">Forțează sincronizarea completă</string> + <string name="synchronization_login_status"><![CDATA[Conectat ca <i>%1$s</i> pe <i>%2$s</i>. <br/><br/>Puteți să vă alegeți furnizorul de sincronizare din nou, după ce v-ați deconectat]]></string> + <string name="synchronization_summary_unchoosen">Puteți alege dintre furnizori multipli pentru a vă sincroniza abonamentele dumneavoastră și starea episoadelor</string> + <string name="synchronization_summary_nextcloud">Gpoddersync este o aplicație Nextcould cu sursă deschisă ce poate fii instalată cu ușurință pe serverul dumneavoastră. Aceasta aplicație este independenta de proiectul AntennaPod.</string> + <string name="synchronization_nextcloud_authenticate_browser">Oferă acces folosint web browserul deschis și întorcețivă la AntennaPod.</string> + <string name="synchronization_choose_title">Alege furnizorul de sincronizare</string> + <string name="synchronization_force_sync_summary">Resincronizează toate abonamentele și starea episoadelor</string> + <string name="synchronization_sync_summary">Sincronizează schimbările abonamentelor și starea episoadelor </string> + <string name="dialog_choose_sync_service_title">Alege furnizorul de sincronizare</string> <string name="pref_playback_speed_sum">Personalizați viteza variabilă pentru redare</string> <string name="pref_feed_playback_speed_sum">Viteza de redare folosită la pornirea redării audio pentru episoadele din acest podcast</string> <string name="pref_feed_skip">Ignorare automată</string> @@ -508,6 +532,8 @@ <string name="new_episode_notification_disabled">Notificări oprite</string> <string name="pref_feed_settings_dialog_msg">Această setare este unică pentru fiecare podcast. Poți schimba această setare dacă deschizi pagina podcastului.</string> <string name="pref_contribute">Contribuie</string> + <string name="pref_show_subscription_title">Arată titlul abonamentului</string> + <string name="pref_show_subscription_title_summary">Arată titlul abonamentului sub imaginea de copertă.</string> <!--About screen--> <string name="about_pref">Despre</string> <string name="antennapod_version">Versiune AntennaPod</string> @@ -530,6 +556,7 @@ <string name="sync_status_episodes_download">Se descarcă modificările episoadelor...</string> <string name="sync_status_upload_played">Se încarcă starea fișierelor redate...</string> <string name="sync_status_subscriptions">Se sincronizează abonamentele...</string> + <string name="sync_status_wait_for_downloads">Aștepați ca descărcarea să se încheie...</string> <string name="sync_status_success">Sincronizarea a reușit</string> <string name="sync_status_error">Sincronizarea a eșuat</string> <!--import and export--> @@ -630,6 +657,7 @@ <string name="preview_episode">Previzualizare</string> <string name="stop_preview">Oprește previzualizarea</string> <!--Content descriptions for image buttons--> + <string name="toolbar_back_button_content_description">Înapoi</string> <string name="rewind_label">Înapoi</string> <string name="fast_forward_label">Repede înainte</string> <string name="increase_speed">Mărește viteza</string> @@ -647,18 +675,26 @@ <!--Feed settings/information screen--> <string name="authentication_label">Autentificare</string> <string name="authentication_descr">Schimbăți numele si parola pentru acest podcast și episoadele sale,</string> + <string name="feed_tags_label">Etichete</string> + <string name="feed_tags_summary">Schimbă etichetele acestui podcast pentru a putea organiza abonamentele dumneavoastră</string> <string name="feed_folders_include_root">Arată în lista principală</string> + <string name="multi_feed_common_tags_info">{fa-info-circle} Doar etichetele comune din toate abonamentele selectate sunt arătate. Alte etichete rămân neafectate.</string> <string name="auto_download_settings_label">Descarcă automat setările</string> <string name="episode_filters_label">Filtru setări</string> <string name="episode_filters_description">Listă de termeni folosită pentru a decide dacă un episod va fi sau nu inclus când descărcarea automată este pornită</string> <string name="episode_filters_include">Include</string> <string name="episode_filters_exclude">Exclude</string> + <string name="episode_filters_duration">Durata minimă (în minute)</string> <string name="episode_filters_hint">Un singur cuvânt \n\"Cuvinte multiple\"</string> <string name="keep_updated">Menține actualizat</string> <string name="keep_updated_summary">Include acest podcast când reîmprospătarea automată a podcasturilor este pornită</string> <string name="auto_download_disabled_globally">Descărcarea automată este oprită în setările generale ale AntennaPod</string> + <string name="statistics_time_played">Timpul redat:</string> + <string name="statistics_total_duration">Durata totală (estimată):</string> + <string name="statistics_duration_played_episodes">Durata episoadelor redate:</string> <string name="statistics_episodes_on_device">Episoade pe acest dispozitiv:</string> <string name="statistics_space_used">Spațiu folosit:</string> + <string name="statistics_episodes_started_total">Episoade pornite/total:</string> <string name="statistics_view_all">Vizualizare a tuturor podcasturilor »</string> <!--AntennaPodSP--> <string name="sp_apps_importing_feeds_msg">Importare abonamente din aplicații cu un singur scop...</string> @@ -703,6 +739,8 @@ <string name="sort_date_old_new">Data (Nouă \u2192 Veche)</string> <string name="sort_duration_short_long">Durată (Shortă \u2192 Lungă)</string> <string name="sort_duration_long_short">Durată (Lungă \u2192 Scurtă)</string> + <string name="sort_filename_a_z">Numele fișierului (A \u2192 Z)</string> + <string name="sort_filename_z_a">Numele fișierului (Z \u2192 A)</string> <string name="sort_a_z">A \u2192 Z</string> <string name="sort_z_a">Z \u2192 A</string> <string name="sort_new_old">Nou \u2192 Vechi</string> @@ -719,7 +757,9 @@ <string name="share_dialog_include_label">Include:</string> <string name="share_playback_position_dialog_label">Poziția de redare</string> <string name="share_dialog_episode_website_label">Pagina web a episodului</string> + <string name="share_dialog_link_to_episode">Linkul episodului</string> <string name="share_dialog_media_file_label">Fișier media</string> + <string name="share_starting_position_label">Pornind de la </string> <!--Audio controls--> <string name="audio_controls">Control audio</string> <string name="playback_speed">Viteza de redare</string> @@ -766,4 +806,7 @@ <string name="on_demand_config_setting_changed">Setarea a fost actualizată cu succes</string> <string name="on_demand_config_stream_text">Se pare că faci streaming foarte mult. Dorești ca lista de episoade să arate butonul de stream ?</string> <string name="on_demand_config_download_text">Se pare că descarci foarte mult. Dorești ca lista de episoade să arate butonul de descărcare ?</string> + <string name="shortcut_subscription_label">Scurtătură pentru abonamente</string> + <string name="shortcut_select_subscription">Selectează abonamentul</string> + <string name="add_shortcut">Adaugă scurtătură</string> </resources> diff --git a/core/src/main/res/values-ru/strings.xml b/core/src/main/res/values-ru/strings.xml index cbbf1a37d..01dd6fe81 100644 --- a/core/src/main/res/values-ru/strings.xml +++ b/core/src/main/res/values-ru/strings.xml @@ -185,6 +185,9 @@ <item quantity="many">%d подписок обновлено.</item> <item quantity="other">%d подписок обновлено.</item> </plurals> + <string name="edit_tags">Редактировать метки</string> + <string name="rename_tag_label">Переименовать метку</string> + <string name="confirm_mobile_feed_refresh_dialog_message">Загрузка выпусков через мобильное соединение отключена в настройках.\n\nВы действительно хотите обновить подкасты через мобильное соединение?</string> <!--actions on feeditems--> <string name="download_label">Загрузить</string> <plurals name="downloading_batch_label"> @@ -199,6 +202,12 @@ <string name="delete_label">Удалить</string> <string name="delete_failed">Невозможно удалить файл. Попробуйте перезагрузить устройство.</string> <string name="delete_episode_label">Удалить выпуск</string> + <plurals name="deleted_multi_episode_batch_label"> + <item quantity="one">%d загруженный выпуск удалён.</item> + <item quantity="few">%d загруженных выпуска удалёно.</item> + <item quantity="many">%d загруженных выпусков удалёно.</item> + <item quantity="other">%d загруженных выпусков удалёно.</item> + </plurals> <string name="remove_new_flag_label">Убрать пометку «Новый»</string> <string name="removed_new_flag_label">Пометка «Новый» убрана</string> <string name="mark_read_label">Отметить как прослушанное</string> @@ -264,6 +273,8 @@ <string name="download_error_forbidden">Сервер подкаста отказывает в ответе.</string> <string name="download_canceled_msg">Загрузка отменена</string> <string name="download_error_wrong_size">Соединение с сервером было оборвано до завершения загрузки.</string> + <string name="download_error_blocked">Загрузка была заблокирована другим приложением на вашем устройстве (например, VPN или блокировщиком рекламы).</string> + <string name="download_error_certificate">Невозможно установить защищённое соединение. Возможно загрузке препятствует другое приложение (например, VPN или блокировщик рекламы), либо что-то не так с сертификатом сервера.</string> <string name="download_report_title">Загрузки завершились с ошибкой</string> <string name="auto_download_report_title">Автозагрузка завершена</string> <string name="download_error_io_error">Ошибка ввода-вывода</string> @@ -281,6 +292,7 @@ <string name="download_type_feed">Канал</string> <string name="download_type_media">Медиафайл</string> <string name="null_value_podcast_error">Не указан подкаст, который следовало бы показать.</string> + <string name="no_feed_url_podcast_found_by_search">У предложенного подкаста отсутствует RSS-ссылка, AntennaPod нашел подкаст, который возможно ему соответствует</string> <string name="authentication_notification_title">Необходима авторизация</string> <string name="authentication_notification_msg">Для доступа к ресурсу необходимо ввести имя пользователя и пароль</string> <string name="confirm_mobile_download_dialog_title">Подтвердите загрузку через мобильное соединение</string> @@ -349,6 +361,7 @@ <string name="storage_sum">Автоматическое удаление выпусков, импорт, экспорт</string> <string name="project_pref">Проект</string> <string name="synchronization_pref">Синхронизация</string> + <string name="synchronization_sum">Синхронизация с другими устройствами</string> <string name="automation">Автоматизация</string> <string name="download_pref_details">Подробнее</string> <string name="import_export_pref">Импорт/экспорт</string> @@ -441,8 +454,20 @@ <string name="pref_theme_title_dark">Темная</string> <string name="pref_theme_title_trueblack">Черная (для AMOLED)</string> <string name="pref_episode_cache_unlimited">Неограничен</string> + <string name="synchronization_logout">Выход</string> + <string name="pref_synchronization_logout_toast">Выход успешно выполнен</string> <string name="pref_gpodnet_setlogin_information_title">Изменить информацию авторизации</string> <string name="pref_gpodnet_setlogin_information_sum">Изменить информацию авторизации для аккаунта gpodder.net</string> + <string name="synchronization_sync_changes_title">Синхронизировать сейчас</string> + <string name="synchronization_full_sync_title">Выполнить полную синхронизацию</string> + <string name="synchronization_login_status"><![CDATA[Авторизованы как <i>%1$s</i> на <i>%2$s</i>. <br/><br/>Вы сможете снова выбрать провайдера синхронизации после выхода из системы]]></string> + <string name="synchronization_summary_unchoosen">Вы можете выбрать провайдера для сихронизации ваших подписок и состояния воспроизведения выпусков</string> + <string name="synchronization_summary_nextcloud">Gpoddersync — приложение с открытым исходным кодом для Nextcloud, которое вы можете установить на свой сервер. Это приложение не связано с проектом AntennaPod.</string> + <string name="synchronization_nextcloud_authenticate_browser">Предоставить доступ, открыв веб-браузер, и вернуться в AntennaPod.</string> + <string name="synchronization_choose_title">Выберите провайдера синхронизации</string> + <string name="synchronization_force_sync_summary">Пересихронизировать ваши подписки и состояние выпусков</string> + <string name="synchronization_sync_summary">Сихронизировать ваши подписки и изменения состояния выпусков</string> + <string name="dialog_choose_sync_service_title">Выберите провайдера синхронизации</string> <string name="pref_playback_speed_sum">Выбрать значения скорости, доступные при воспроизведении</string> <string name="pref_feed_playback_speed_sum">Скорость, с которой будут изначально воспроизводиться выпуски этого подкаста</string> <string name="pref_feed_skip">Автоматический пропуск</string> @@ -522,6 +547,8 @@ <string name="new_episode_notification_disabled">Без уведомления</string> <string name="pref_feed_settings_dialog_msg">Эта настройка у каждого подкаста своя. Изменить её можно открыв страницу подкаста.</string> <string name="pref_contribute">Поучаствовать</string> + <string name="pref_show_subscription_title">Показать название подписки</string> + <string name="pref_show_subscription_title_summary">Отображать название подписки внизу обложки.</string> <!--About screen--> <string name="about_pref">О программе</string> <string name="antennapod_version">Версия AntennaPod</string> @@ -544,6 +571,7 @@ <string name="sync_status_episodes_download">Загрузка изменений выпуска…</string> <string name="sync_status_upload_played">Отправка состояния прослушивания…</string> <string name="sync_status_subscriptions">Синхронизация подписок…</string> + <string name="sync_status_wait_for_downloads">Ожидаем завершения загрузок…</string> <string name="sync_status_success">Синхронизация выполнена</string> <string name="sync_status_error">Сбой синхронизации</string> <!--import and export--> @@ -647,6 +675,7 @@ <string name="preview_episode">Предпросмотр</string> <string name="stop_preview">Остановить предпросмотр</string> <!--Content descriptions for image buttons--> + <string name="toolbar_back_button_content_description">Назад</string> <string name="rewind_label">Назад</string> <string name="fast_forward_label">Вперед</string> <string name="increase_speed">Увеличить скорость</string> @@ -664,18 +693,26 @@ <!--Feed settings/information screen--> <string name="authentication_label">Авторизация</string> <string name="authentication_descr">Изменить имя пользователя и пароль для этого подкаста и его выпусков.</string> + <string name="feed_tags_label">Метки</string> + <string name="feed_tags_summary">Измените метки для этого подкаста, чтобы помочь организовать ваши подписки</string> <string name="feed_folders_include_root">Показывать в основном списке</string> + <string name="multi_feed_common_tags_info">{fa-info-circle} Отображаются только общие метки для всех выбранных подписок. Другие метки остаются незатронутыми.</string> <string name="auto_download_settings_label">Настройки автозагрузки</string> <string name="episode_filters_label">Фильтр выпусков</string> <string name="episode_filters_description">Перечень условий по включению или исключению выпуска из списков автоматической загрузки</string> <string name="episode_filters_include">Включить</string> <string name="episode_filters_exclude">Исключить</string> + <string name="episode_filters_duration">Минимальная продолжительность (в минутах)</string> <string name="episode_filters_hint">По одному слову \n\"По фразе\"</string> <string name="keep_updated">Постоянно обновлять</string> <string name="keep_updated_summary">Обновлять подкаст при (авто)обновлении всех подкастов</string> <string name="auto_download_disabled_globally">Автоматическая загрузка отключена в основных настройках AntennaPod</string> + <string name="statistics_time_played">Времени прослушано:</string> + <string name="statistics_total_duration">Общая продолжительность (примерно):</string> + <string name="statistics_duration_played_episodes">Длительность прослушанных выпусков:</string> <string name="statistics_episodes_on_device">Выпуски на устройстве:</string> <string name="statistics_space_used">Используемое пространство:</string> + <string name="statistics_episodes_started_total">Выпусков начато/всего:</string> <string name="statistics_view_all">Просмотреть все подкасты »</string> <!--AntennaPodSP--> <string name="sp_apps_importing_feeds_msg">Импорт подписок из моноприложений…</string> @@ -720,6 +757,8 @@ <string name="sort_date_old_new">от старых к новым</string> <string name="sort_duration_short_long">от коротких к длинным</string> <string name="sort_duration_long_short">от длинных к коротким</string> + <string name="sort_filename_a_z">имя файла от А к Я</string> + <string name="sort_filename_z_a">имя файла от Я к А</string> <string name="sort_a_z">от А к Я</string> <string name="sort_z_a">от Я к А</string> <string name="sort_new_old">от новых к старым</string> @@ -736,7 +775,9 @@ <string name="share_dialog_include_label">Включая:</string> <string name="share_playback_position_dialog_label">Позиция воспроизведения</string> <string name="share_dialog_episode_website_label">Вебстраница выпуска</string> + <string name="share_dialog_link_to_episode">Ссылка на выпуск</string> <string name="share_dialog_media_file_label">Медиафайл</string> + <string name="share_starting_position_label">начиная с</string> <!--Audio controls--> <string name="audio_controls">Управление звучанием</string> <string name="playback_speed">Скорость воспроизведения</string> @@ -783,4 +824,7 @@ <string name="on_demand_config_setting_changed">Настройки успешно обновлены.</string> <string name="on_demand_config_stream_text">Похоже, вы часто слушаете по сети. Хотите, чтобы в списке выпусков отображались кнопки для потокового воспроизведения?</string> <string name="on_demand_config_download_text">Похоже, вы часто слушаете загружаете выпуски. Хотите, чтобы в списке выпусков отображались кнопки для загрузки?</string> + <string name="shortcut_subscription_label">Ярлык подписки</string> + <string name="shortcut_select_subscription">Выбрать подписку</string> + <string name="add_shortcut">Добавить ярлык</string> </resources> diff --git a/core/src/main/res/values-sv/strings.xml b/core/src/main/res/values-sv/strings.xml index 80bff0452..caabb24cf 100644 --- a/core/src/main/res/values-sv/strings.xml +++ b/core/src/main/res/values-sv/strings.xml @@ -171,11 +171,14 @@ <item quantity="one">%d prenumeration uppdaterad.</item> <item quantity="other">%d prenumerationer uppdaterade.</item> </plurals> + <string name="edit_tags">Redigera etiketter</string> + <string name="rename_tag_label">Byt namn på etikett</string> + <string name="confirm_mobile_feed_refresh_dialog_message">Nedladdning av episoder över mobil dataanslutning är avstängt i inställningarna.\n\nVill du fortfarande uppdatera alla podcasts över mobildata?</string> <!--actions on feeditems--> <string name="download_label">Ladda ned</string> <plurals name="downloading_batch_label"> <item quantity="one">Laddar ner 1%d episod.</item> - <item quantity="other">Laddar ner 1%d episoder.</item> + <item quantity="other">Laddar ner %d episoder.</item> </plurals> <string name="play_label">Spela</string> <string name="pause_label">Pausa</string> @@ -183,6 +186,10 @@ <string name="delete_label">Ta bort</string> <string name="delete_failed">Kunde inte ta bort filen. Testa att starta om enheten.</string> <string name="delete_episode_label">Radera episod</string> + <plurals name="deleted_multi_episode_batch_label"> + <item quantity="one">1 nedladdad episod borttagen.</item> + <item quantity="other">%d nedladdade episoder borttagna.</item> + </plurals> <string name="remove_new_flag_label">Ta bort \"ny\"-flagga</string> <string name="removed_new_flag_label">Tog bort \"ny\"-flagga</string> <string name="mark_read_label">Markera som spelad</string> @@ -192,24 +199,24 @@ <string name="play_this_to_seek_position">Spela episoden för att kunna hoppa till olika positioner</string> <plurals name="marked_read_batch_label"> <item quantity="one">1%d episod markerad som spelad.</item> - <item quantity="other">1%d episoder markerade som spelade.</item> + <item quantity="other">%d episoder markerade som spelade.</item> </plurals> <string name="mark_unread_label">Markera som ospelad</string> <string name="mark_unread_label_no_media">Markera som ospelad</string> <plurals name="marked_unread_batch_label"> <item quantity="one">1%d episod markerad som ospelad.</item> - <item quantity="other">1%d episoder markerade som ospelade.</item> + <item quantity="other">%d episoder markerade som ospelade.</item> </plurals> <string name="add_to_queue_label">Lägg till i kön</string> <string name="added_to_queue_label">Tillagd i kön</string> <plurals name="added_to_queue_batch_label"> <item quantity="one">1%d episod tillagd i kön.</item> - <item quantity="other">1%d episoder tillagda i kön.</item> + <item quantity="other">%d episoder tillagda i kön.</item> </plurals> <string name="remove_from_queue_label">Ta bort från Kön</string> <plurals name="removed_from_queue_batch_label"> <item quantity="one">1%d episod borttagen från kön.</item> - <item quantity="other">1%d episoder borttagna från kön.</item> + <item quantity="other">%d episoder borttagna från kön.</item> </plurals> <string name="add_to_favorite_label">Lägg till i favoriter</string> <string name="remove_from_favorite_label">Ta bort från favoriter</string> @@ -240,6 +247,8 @@ <string name="download_error_forbidden">Podcastens server svarade inte.</string> <string name="download_canceled_msg">Nedladdning avbruten</string> <string name="download_error_wrong_size">Serveranslutningen förlorades innan nedladdningen var klar.</string> + <string name="download_error_blocked">Nedladdningen blockerades av en annan app på din enhet (exepelvis en VPN eller reklamblockerare).</string> + <string name="download_error_certificate">Kan inte etablera en säker anslutning. Detta kan betyda att en annan app på din enhet (exempelvis en VPN eller reklamblockerare) blockerade nedladdningen, eller att någonting är fel med servercertifikaten.</string> <string name="download_report_title">Nedladdningar avslutades med fel</string> <string name="auto_download_report_title">Automatiska nedladdningar klara</string> <string name="download_error_io_error">IO fel</string> @@ -255,6 +264,7 @@ <string name="download_type_feed">Flöde</string> <string name="download_type_media">Mediafil</string> <string name="null_value_podcast_error">Inga tillhandahållna podcasts som kunde visas.</string> + <string name="no_feed_url_podcast_found_by_search">Den föreslagna podcasten hade inte en RSS-länk, AntennaPod hittade en podcast som kunde matcha</string> <string name="authentication_notification_title">Autentisering krävs</string> <string name="authentication_notification_msg">Resursen du begärde kräver ett användarnamn och ett lösenord</string> <string name="confirm_mobile_download_dialog_title">Bekräfta mobil nedladdning</string> @@ -323,6 +333,7 @@ <string name="storage_sum">Automatisk episodradering, Import, Export</string> <string name="project_pref">Projekt</string> <string name="synchronization_pref">Synkronisering</string> + <string name="synchronization_sum">Synkronisera med andra enheter</string> <string name="automation">Automatisering</string> <string name="download_pref_details">Detaljer</string> <string name="import_export_pref">Importera/Exportera</string> @@ -413,8 +424,20 @@ <string name="pref_theme_title_dark">Mörkt</string> <string name="pref_theme_title_trueblack">Svart (AMOLED redo)</string> <string name="pref_episode_cache_unlimited">Obegränsat</string> + <string name="synchronization_logout">Logga ut</string> + <string name="pref_synchronization_logout_toast">Utloggning lyckades</string> <string name="pref_gpodnet_setlogin_information_title">Ändra inloggningsinformation</string> <string name="pref_gpodnet_setlogin_information_sum">Ändra inloggningsinformationen för ditt gpodder.net konto.</string> + <string name="synchronization_sync_changes_title">Synkronisera nu</string> + <string name="synchronization_full_sync_title">Tvinga full synkronisering</string> + <string name="synchronization_login_status"><![CDATA[Inloggad som <i>%1$s</i> på <i>%2$s</i>. <br/><br/> Du kan välja en ny synkroniseringsleverantör när du har loggat ut]]></string> + <string name="synchronization_summary_unchoosen">Du kan välja från flera leverantörer att synkronisera dina prenumerationer och episoders uppspelningsstatus med</string> + <string name="synchronization_summary_nextcloud">Gpoddersync är en Nexcloud-app med öppen källkod som du enkelt kan installera på din egen server. Appen är oberoende från AntennaPod-projektet.</string> + <string name="synchronization_nextcloud_authenticate_browser">Get tillåtelse med webbläsaren som öppnades och kom tillbaka till AntennaPod.</string> + <string name="synchronization_choose_title">Välj din synkroniseringsleverantör</string> + <string name="synchronization_force_sync_summary">Synkronisera om alla prenumerationer och episodstatusar</string> + <string name="synchronization_sync_summary">Synkronisera ändringar i prenumerationer och episodstatusar</string> + <string name="dialog_choose_sync_service_title">Välj synkroniseringsleverantör</string> <string name="pref_playback_speed_sum">Anpassa de tillgängliga hastigheterna för variabel uppspelningshastighet</string> <string name="pref_feed_playback_speed_sum">Uppspelningshastigheten att använda för episoder i denna podcast</string> <string name="pref_feed_skip">Automatisk överhoppning</string> @@ -494,6 +517,8 @@ <string name="new_episode_notification_disabled">Avisering avstängt</string> <string name="pref_feed_settings_dialog_msg">Denna inställning är unik för var podcast. Du kan ändra den genom att öppna podcastsidan.</string> <string name="pref_contribute">Bidra</string> + <string name="pref_show_subscription_title">Visa Prenumerationstitel</string> + <string name="pref_show_subscription_title_summary">Visa titel på prenumerationen under omslagsbilden.</string> <!--About screen--> <string name="about_pref">Om</string> <string name="antennapod_version">AntennaPod version</string> @@ -516,6 +541,7 @@ <string name="sync_status_episodes_download">Laddar ner episodändringar...</string> <string name="sync_status_upload_played">Laddar upp spelliststatus</string> <string name="sync_status_subscriptions">Synkroniserar prenumerationer</string> + <string name="sync_status_wait_for_downloads">Väntar på nedladdningar...</string> <string name="sync_status_success">Synkronisering lyckades</string> <string name="sync_status_error">Synkronisering misslyckades</string> <!--import and export--> @@ -613,6 +639,7 @@ <string name="preview_episode">Förhandsvisning</string> <string name="stop_preview">Stoppa förhandsvisning</string> <!--Content descriptions for image buttons--> + <string name="toolbar_back_button_content_description">Tillbaka</string> <string name="rewind_label">Backa</string> <string name="fast_forward_label">Snabbspola</string> <string name="increase_speed">Öka hastigheten</string> @@ -630,18 +657,26 @@ <!--Feed settings/information screen--> <string name="authentication_label">Autentisering</string> <string name="authentication_descr">Byt ditt användarnamn och lösenord för den här podcasten och dess episoder.</string> + <string name="feed_tags_label">Etiketter</string> + <string name="feed_tags_summary">Ändra etiketterna för denna podcast för att organisera prenumerationerna</string> <string name="feed_folders_include_root">Visa i huvudlistan</string> + <string name="multi_feed_common_tags_info">{fa-info-circle} Bara etiketter gemensamma med alla valda prenumerationer visas. Andra etiketter påverkas inte.</string> <string name="auto_download_settings_label">Automatisk nedladdningsinställningar</string> <string name="episode_filters_label">Episodfilter</string> <string name="episode_filters_description">Lista av termer som används för att avgöra om en episod ska inkluderas eller exkluderas vid automatisk nedladdning</string> <string name="episode_filters_include">Inkludera</string> <string name="episode_filters_exclude">Exkludera</string> + <string name="episode_filters_duration">Minsta längd (i minuter)</string> <string name="episode_filters_hint">Enstaka ord \n\"Flera ord\"</string> <string name="keep_updated">Håll uppdaterad</string> <string name="keep_updated_summary">Inkludera detta flöde vid (auto-)uppdatering av alla podcasts</string> <string name="auto_download_disabled_globally">Automatisk nedladdning är avstängt i AntennaPods huvudinställningar</string> + <string name="statistics_time_played">Tid spelad:</string> + <string name="statistics_total_duration">Total längd (uppskattning):</string> + <string name="statistics_duration_played_episodes">Längd på spelade episoder:</string> <string name="statistics_episodes_on_device">Episoder på enheten:</string> <string name="statistics_space_used">Använt utrymme:</string> + <string name="statistics_episodes_started_total">Episoder startade/totalt:</string> <string name="statistics_view_all">Visa för alla podcasts »</string> <!--AntennaPodSP--> <string name="sp_apps_importing_feeds_msg">Importerar prenumerationer från appar gjorda för ett enda syfte…</string> @@ -686,6 +721,8 @@ <string name="sort_date_old_new">Datum (Gammal \u2192 Ny)</string> <string name="sort_duration_short_long">Längd (Kort \u2192 Lång)</string> <string name="sort_duration_long_short">Längd (Lång \u2192 Kort)</string> + <string name="sort_filename_a_z">Filnamn (A \u2192 Ö)</string> + <string name="sort_filename_z_a">Filnamne (Ö \u2192 A)</string> <string name="sort_a_z">A \u2192 Ö</string> <string name="sort_z_a">Ö \u2192 A</string> <string name="sort_new_old">Ny \u2192 Gammal</string> @@ -702,7 +739,9 @@ <string name="share_dialog_include_label">Inkludera:</string> <string name="share_playback_position_dialog_label">Uppspelningsposition</string> <string name="share_dialog_episode_website_label">Episodes webbplats</string> + <string name="share_dialog_link_to_episode">Länk till episod</string> <string name="share_dialog_media_file_label">Mediafil</string> + <string name="share_starting_position_label">Startar från</string> <!--Audio controls--> <string name="audio_controls">Ljudkontroller</string> <string name="playback_speed">Uppspelningshastighet</string> @@ -749,4 +788,7 @@ <string name="on_demand_config_setting_changed">Inställningen sparad.</string> <string name="on_demand_config_stream_text">Det verkar som att du strömmar mycket. Vill du att episodlistan ska visa strömmningsknapparna?</string> <string name="on_demand_config_download_text">Det verkar som at du laddar ner mycket. Vill du att episodlistan ska visa nedladdningsknapparna?</string> + <string name="shortcut_subscription_label">Prenumerationsgenväg</string> + <string name="shortcut_select_subscription">Välj prenumeration</string> + <string name="add_shortcut">Lägg till genväg</string> </resources> diff --git a/parser/feed/src/main/java/de/danoeh/antennapod/parser/feed/namespace/Rss20.java b/parser/feed/src/main/java/de/danoeh/antennapod/parser/feed/namespace/Rss20.java index 1c1ba9f53..b19500895 100644 --- a/parser/feed/src/main/java/de/danoeh/antennapod/parser/feed/namespace/Rss20.java +++ b/parser/feed/src/main/java/de/danoeh/antennapod/parser/feed/namespace/Rss20.java @@ -130,7 +130,7 @@ public class Rss20 extends Namespace { if (CHANNEL.equals(second) && state.getFeed() != null) { state.getFeed().setDescription(contentFromHtml); } else if (ITEM.equals(second) && state.getCurrentItem() != null) { - state.getCurrentItem().setDescriptionIfLonger(contentFromHtml); + state.getCurrentItem().setDescriptionIfLonger(content); // fromHtml here breaks \n when not html } } else if (LANGUAGE.equals(localName) && state.getFeed() != null) { state.getFeed().setLanguage(content.toLowerCase(Locale.US)); diff --git a/parser/media/src/main/java/de/danoeh/antennapod/parser/media/vorbis/VorbisCommentReader.java b/parser/media/src/main/java/de/danoeh/antennapod/parser/media/vorbis/VorbisCommentReader.java index 607172531..3d5f29f17 100644 --- a/parser/media/src/main/java/de/danoeh/antennapod/parser/media/vorbis/VorbisCommentReader.java +++ b/parser/media/src/main/java/de/danoeh/antennapod/parser/media/vorbis/VorbisCommentReader.java @@ -41,7 +41,7 @@ public abstract class VorbisCommentReader { public void readInputStream(InputStream input) throws VorbisCommentReaderException { try { - skipIdentificationHeader(input); + findIdentificationHeader(input); onVorbisCommentFound(); findOggPage(input); findCommentHeader(input); @@ -61,7 +61,11 @@ public abstract class VorbisCommentReader { byte[] buffer = new byte[4]; final byte[] oggPageHeader = {'O', 'g', 'g', 'S'}; for (int bytesRead = 0; bytesRead < SECOND_PAGE_MAX_LENGTH; bytesRead++) { - buffer[bytesRead % buffer.length] = (byte) input.read(); + int data = input.read(); + if (data == -1) { + throw new IOException("EOF while trying to find vorbis page"); + } + buffer[bytesRead % buffer.length] = (byte) data; if (bufferMatches(buffer, oggPageHeader, bytesRead)) { break; } @@ -103,7 +107,7 @@ public abstract class VorbisCommentReader { * Looks for an identification header in the first page of the file. If an * identification header is found, it will be skipped completely */ - private void skipIdentificationHeader(InputStream input) throws IOException { + private void findIdentificationHeader(InputStream input) throws IOException { byte[] buffer = new byte[FIRST_OPUS_PAGE_LENGTH]; IOUtils.readFully(input, buffer); final byte[] oggIdentificationHeader = new byte[]{ PACKET_TYPE_IDENTIFICATION, 'v', 'o', 'r', 'b', 'i', 's' }; @@ -115,6 +119,7 @@ public abstract class VorbisCommentReader { return; } } + throw new IOException("No vorbis identification header found"); } private void findCommentHeader(InputStream input) throws IOException { |