Add german and quantaty strings (#64)

* Add German translation

* Add german language und quantity strings

Co-authored-by: Ash <glaxyinfinite@outlook.com>
This commit is contained in:
helloworldtest123 2022-05-13 04:20:40 +02:00 committed by GitHub
parent b31e7eb98e
commit b18f459a71
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
20 changed files with 323 additions and 13 deletions

View File

@ -16,6 +16,7 @@ sealed class LanguagesPreference(val value: Int) : Preference() {
object UseDeviceLanguages : LanguagesPreference(0) object UseDeviceLanguages : LanguagesPreference(0)
object English : LanguagesPreference(1) object English : LanguagesPreference(1)
object ChineseSimplified : LanguagesPreference(2) object ChineseSimplified : LanguagesPreference(2)
object German : LanguagesPreference(3)
override fun put(context: Context, scope: CoroutineScope) { override fun put(context: Context, scope: CoroutineScope) {
scope.launch { scope.launch {
@ -32,6 +33,7 @@ sealed class LanguagesPreference(val value: Int) : Preference() {
UseDeviceLanguages -> context.getString(R.string.use_device_languages) UseDeviceLanguages -> context.getString(R.string.use_device_languages)
English -> context.getString(R.string.english) English -> context.getString(R.string.english)
ChineseSimplified -> context.getString(R.string.chinese_simplified) ChineseSimplified -> context.getString(R.string.chinese_simplified)
German -> context.getString(R.string.german)
} }
fun getLocale(): Locale = fun getLocale(): Locale =
@ -39,6 +41,7 @@ sealed class LanguagesPreference(val value: Int) : Preference() {
UseDeviceLanguages -> LocaleList.getDefault().get(0) UseDeviceLanguages -> LocaleList.getDefault().get(0)
English -> Locale("en", "US") English -> Locale("en", "US")
ChineseSimplified -> Locale("zh", "CN") ChineseSimplified -> Locale("zh", "CN")
German -> Locale("de", "DE")
} }
fun setLocale(context: Context) { fun setLocale(context: Context) {
@ -65,13 +68,14 @@ sealed class LanguagesPreference(val value: Int) : Preference() {
companion object { companion object {
val default = UseDeviceLanguages val default = UseDeviceLanguages
val values = listOf(UseDeviceLanguages, English, ChineseSimplified) val values = listOf(UseDeviceLanguages, English, ChineseSimplified, German)
fun fromPreferences(preferences: Preferences): LanguagesPreference = fun fromPreferences(preferences: Preferences): LanguagesPreference =
when (preferences[DataStoreKeys.Languages.key]) { when (preferences[DataStoreKeys.Languages.key]) {
0 -> UseDeviceLanguages 0 -> UseDeviceLanguages
1 -> English 1 -> English
2 -> ChineseSimplified 2 -> ChineseSimplified
3 -> German
else -> default else -> default
} }
@ -80,6 +84,7 @@ sealed class LanguagesPreference(val value: Int) : Preference() {
0 -> UseDeviceLanguages 0 -> UseDeviceLanguages
1 -> English 1 -> English
2 -> ChineseSimplified 2 -> ChineseSimplified
3 -> German
else -> default else -> default
} }
} }

View File

@ -11,5 +11,6 @@ class StringsRepository @Inject constructor(
private val context: Context, private val context: Context,
) { ) {
fun getString(resId: Int, vararg formatArgs: Any) = context.getString(resId, *formatArgs) fun getString(resId: Int, vararg formatArgs: Any) = context.getString(resId, *formatArgs)
fun getQuantityString(resId: Int, quantity: Int, vararg formatArgs: Any) = context.resources.getQuantityString(resId, quantity, *formatArgs)
fun formatAsString(date: Date?) = date?.formatAsString(context) fun formatAsString(date: Date?) = date?.formatAsString(context)
} }

View File

@ -107,9 +107,9 @@ class FeedsViewModel @Inject constructor(
it.copy( it.copy(
importantCount = groupWithFeedList.sumOf { it.group.important ?: 0 }.run { importantCount = groupWithFeedList.sumOf { it.group.important ?: 0 }.run {
when { when {
isStarred -> stringsRepository.getString(R.string.starred_desc, this) isStarred -> stringsRepository.getQuantityString(R.plurals.starred_desc, this, this)
isUnread -> stringsRepository.getString(R.string.unread_desc, this) isUnread -> stringsRepository.getQuantityString(R.plurals.unread_desc, this, this)
else -> stringsRepository.getString(R.string.all_desc, this) else -> stringsRepository.getQuantityString(R.plurals.all_desc, this, this)
} }
}, },
groupWithFeedList = groupWithFeedList, groupWithFeedList = groupWithFeedList,

View File

@ -0,0 +1,171 @@
<resources>
<string name="all">Alle</string>
<plurals name="all_desc">
<item quantity="one">%1$d archivierter Eintrag</item>
<item quantity="other">%d archivierte Einträge</item>
</plurals>
<string name="unread">Ungelesen</string>
<plurals name="unread_desc">
<item quantity="one">%1$d ungelesener Eintrag</item>
<item quantity="other">%1$d ungelesene Einträge</item>
</plurals>
<string name="starred">Markiert</string>
<plurals name="starred_desc">
<item quantity="one">%1$d markierter Eintrag</item>
<item quantity="other">%1$d markierte Einträge</item>
</plurals>
<string name="feeds">Feeds</string>
<string name="syncing">Synchronisieren…</string>
<string name="loading">Laden…</string>
<string name="expand_less">Weniger erweitern</string>
<string name="expand_more">Mehr erweitern</string>
<string name="confirm">Bestätigen</string>
<string name="cancel">Abbrechen</string>
<string name="allow">Erlauben</string>
<string name="deny">Ablehnen</string>
<string name="defaults">Standard</string>
<string name="unknown">Unbekannt</string>
<string name="back">Zurück</string>
<string name="go_to">Gehe zu</string>
<string name="settings">Einstellungen</string>
<string name="refresh">Aktualisieren</string>
<string name="search">Suche</string>
<string name="searching">Suchen…</string>
<string name="subscribe">Abonnieren</string>
<string name="already_subscribed">Bereits abonniert</string>
<string name="clear">Löschen</string>
<string name="paste">Einfügen</string>
<string name="feed_or_site_url">Feed- oder Website-URL</string>
<string name="import_from_opml">Aus OPML importieren</string>
<string name="preset">Voreinstellung</string>
<string name="selected">Ausgewählte</string>
<string name="allow_notification">Benachrichtigung zulassen</string>
<string name="all_allow_notification_tips">Alle Feeds in der Gruppe „%1$s“ dürfen Benachrichtigungen senden.</string>
<string name="all_allow_notification_toast">Alle Benachrichtigungen in der Gruppe „%1$s“ sind erlaubt</string>
<string name="all_deny_notification_toast">Alle Benachrichtigungen in der Gruppe „%1$s“ werden abgelehnt</string>
<string name="parse_full_content">Gesamtinhalt abrufen</string>
<string name="all_parse_full_content_tips">Gesamten Inhalt von allen Artikeln in der Gruppe „%1$s“ abrufen.</string>
<string name="all_parse_full_content_toast">Gesamten Inhalt von allen Artikeln in der Gruppe „%1$s“ abrufen</string>
<string name="all_deny_parse_full_content_toast">Keinen gesamten Inhalt von allen Artikeln in der Gruppe „%1$s“ abrufen</string>
<string name="clear_articles">Artikel löschen</string>
<string name="clear_articles_in_feed_toast">Alle archivierten Artikel im Feed „%1$s“ wurden bereinigt</string>
<string name="clear_articles_in_group_toast">Alle archivierten Artikel in der Gruppe „%1$s“ wurden bereinigt</string>
<string name="clear_articles_feed_tips">Alle archivierten Artikel im Feed „%1$s“ löschen.</string>
<string name="clear_articles_group_tips">Alle archivierten Artikel in der Gruppe „%1$s“ löschen.</string>
<string name="add_to_group">Zu Gruppe hinzufügen</string>
<string name="move_to_group">Zur Gruppe verschieben</string>
<string name="all_move_to_group_tips">Verschieben Sie alle Feeds in der Gruppe „%1$s“ in die Gruppe „%2$s“.</string>
<string name="all_move_to_group_toast">Alle zur Gruppe „%1$s“ verschoben</string>
<string name="rename">Umbenennen</string>
<string name="change_url">URL ändern</string>
<string name="rename_toast">Umbenannt zu „%1$s“</string>
<string name="create_new_group">Neue Gruppe erstellen</string>
<string name="name">Name</string>
<string name="open_with">Öffne %1$s</string>
<string name="options">Optionen</string>
<string name="delete">Löschen</string>
<string name="delete_toast">„%1$s“ wurde gelöscht</string>
<string name="unsubscribe">Deabonieren</string>
<string name="unsubscribe_tips">„%1$s“ deabonieren und alle darin enthaltenen archivierten Artikel löschen.</string>
<string name="delete_group">Gruppe löschen</string>
<string name="delete_group_tips">Löscht die Gruppe „%1$s“ und alle darin enthaltenen Feeds und archivierten Artikel.</string>
<string name="group_option_tips">Die folgenden Optionen werden auf alle Feeds in dieser Gruppe angewendet.</string>
<string name="today">Heute</string>
<string name="yesterday">Gestern</string>
<string name="date_at_time">%1$s um %2$s</string>
<string name="search_for_in">Suche nach %1$s Einträgen in „%2$s“</string>
<string name="search_for">Suche nach %1$s Einträgen</string>
<string name="mark_as_read">Als gelesen markieren</string>
<string name="mark_all_as_read">Alle als gelesen</string>
<string name="mark_as_unread">Als ungelesen markieren</string>
<string name="mark_as_starred">Als markiert markieren</string>
<string name="mark_as_unstar">Als unmarkiert markieren</string>
<string name="mark_as_read_one_day">Als mehr als 1 Tag gelesen markieren</string>
<string name="mark_as_read_three_days">Als mehr als 3 Tage gelesen markieren</string>
<string name="mark_as_read_seven_days">Als mehr als 7 Tage gelesen markieren</string>
<string name="one_day">1 T</string>
<string name="three_days">3 T</string>
<string name="seven_days">7 T</string>
<string name="close">Schließen</string>
<string name="get_new_updates">Neue Updates erhalten</string>
<string name="get_new_updates_desc">Version %1$s wurde veröffentlicht</string>
<string name="in_coding">In Entwicklung</string>
<string name="coming_soon">Demnächst verfügbar</string>
<string name="accounts">Konten</string>
<string name="accounts_desc">Lokal, FreshRSS</string>
<string name="color_and_style">Farbe &amp; Stil</string>
<string name="color_and_style_desc">Design, Farbstil, Schriftgröße</string>
<string name="interaction">Interaktion</string>
<string name="interaction_desc">Beim Start, haptisches Feedback</string>
<string name="languages">Sprachen</string>
<string name="languages_desc">English, 简体中文, Deutsch</string>
<string name="help_translate">Hilf uns beim Übersetzen</string>
<string name="use_device_languages">Gerätesprache verwenden</string>
<string name="tips_and_support">Tipps &amp; Support</string>
<string name="tips_and_support_desc">Über, Open Source</string>
<string name="welcome">Willkommen</string>
<string name="agree_terms">Bevor Sie fortfahren können, müssen Sie den Nutzungsbedingungen und der Datenschutzrichtlinie von Read You zustimmen.</string>
<string name="view_terms">Siehe die &lt;i&gt;&lt;u&gt;Nutzungsbedingungen &amp; Datenschutzrichtlinie&lt;/u&gt;&lt;/i&gt;</string>
<string name="terms_link">https://github.com/Ashinch/ReadYou/blob/main/TERMS_OF_SERVICE_AND_PRIVACY_POLICY-de.md</string>
<string name="agree_and_continue">Zustimmen</string>
<string name="wallpaper_colors">Hintergrundfarben</string>
<string name="no_palettes">Keine Paletten</string>
<string name="only_android_8.1_plus">Nur Android 8.1+</string>
<string name="basic_colors">Grundfarben</string>
<string name="primary_color">Primärfarbe</string>
<string name="primary_color_hint">z.B. #666666 oder 666666</string>
<string name="appearance">Erscheinungsbild</string>
<string name="style">Stil</string>
<string name="dark_theme">Dunkles Design</string>
<string name="use_device_theme">Gerätedesign verwenden</string>
<string name="on">An</string>
<string name="off">Aus</string>
<string name="other">Sonstiges</string>
<string name="amoled_dark_theme">AMOLED Dunkles Design</string>
<string name="tonal_elevation">Farbliches Hervorheben</string>
<string name="fonts">Schriftarten</string>
<string name="basic_fonts">Grundschriftarten</string>
<string name="feeds_page">Feeds Seite</string>
<string name="flow_page">Flow Seite</string>
<string name="reading_page">Leseseite</string>
<string name="sponsor">Sponsor</string>
<string name="open_source_licenses">Open Source Lizenzen</string>
<string name="update_link">https://api.github.com/repos/Ashinch/ReadYou/releases/latest</string>
<string name="change_log">Änderungsprotokoll</string>
<string name="update">Aktualisieren</string>
<string name="skip_this_version">Version überspringen</string>
<string name="checking_updates">Suche nach Aktualisierungen…</string>
<string name="is_latest_version">Dies ist die neueste Version</string>
<string name="check_failure">Suche fehlgeschlagen</string>
<string name="download_failure">Fehler beim Herunterladen</string>
<string name="rate_limit">Die Anfragerate ist limitiert</string>
<string name="help">Hilfe</string>
<string name="on_start">Beim Start</string>
<string name="initial_page">Startseite</string>
<string name="initial_filter">Startfilter</string>
<string name="preview_article_title">Der Roman "Lord of the Mysteries" ist endlich zu einem Ende gekommen</string>
<string name="preview_article_desc">The Fool ist der achte und letzte Band der Lord of the Mysteries Reihe, geschrieben von Cuttlefish That Loves Diving.</string>
<string name="preview_feed_name">Reddit</string>
<string name="value">Wert</string>
<string name="padding_on_both_ends">Rand an beiden Enden</string>
<string name="article_date">Artikel Veröffentlichungszeit</string>
<string name="article_desc">Artikel Beschreibungen</string>
<string name="article_images">Artikel Bilder</string>
<string name="feed_names">Feed Namen</string>
<string name="feed_favicons">Feed Favicons</string>
<string name="article_date_sticky_header">Artikeldatum klebrige Kopfzeile (Experimentell)</string>
<string name="article_list">Artikelliste</string>
<string name="group_list">Gruppenliste</string>
<string name="always_expand">Immer erweitern</string>
<string name="top">Oben</string>
<string name="mark_as_read_button_position">„Als gelesen markieren“ Position</string>
<string name="top_bar">Obere Leiste</string>
<string name="fill_selected_icon">Ausgewähltes Symbol füllen</string>
<string name="filter_bar">Filterleiste</string>
<string name="icons">Symbole</string>
<string name="icons_and_labels">Symbole &amp; Beschriftungen</string>
<string name="icons_and_label_only_selected">Symbole &amp; Beschriftungen (Nur ausgewähltes)</string>
<string name="tips_top_bar_tonal_elevation">Das farbliche Hervorheben der oberen Leiste ist nur beim Scrollen verfügbar.</string>
<string name="tips_article_list_tonal_elevation">Das farbliche Hervorheben der Artikelliste ist nur für das helle Design verfügbar.</string>
<string name="tips_group_list_tonal_elevation">Das farbliche Hervorheben der Gruppenliste ist nur für das helle Design verfügbar.</string>
</resources>

View File

@ -1,10 +1,16 @@
<resources> <resources>
<string name="all">全部</string> <string name="all">全部</string>
<string name="all_desc">%1$d 项已归档</string> <plurals name="all_desc">
<item quantity="other">%1$d 项已归档</item>
</plurals>
<string name="unread">未读</string> <string name="unread">未读</string>
<string name="unread_desc">%1$d 项未读</string> <plurals name="unread_desc">
<item quantity="other">%1$d 项未读</item>
</plurals>
<string name="starred">已加星标</string> <string name="starred">已加星标</string>
<string name="starred_desc">%1$d 项已加星标</string> <plurals name="starred_desc">
<item quantity="other">%1$d 项已加星标</item>
</plurals>
<string name="feeds">分组</string> <string name="feeds">分组</string>
<string name="syncing">正在同步…</string> <string name="syncing">正在同步…</string>
<string name="loading">加载中…</string> <string name="loading">加载中…</string>
@ -89,7 +95,7 @@
<string name="interaction">交互</string> <string name="interaction">交互</string>
<string name="interaction_desc">启动时、触感反馈</string> <string name="interaction_desc">启动时、触感反馈</string>
<string name="languages">语言</string> <string name="languages">语言</string>
<string name="languages_desc">English、简体中文</string> <string name="languages_desc">English、简体中文、Deutsch</string>
<string name="use_device_languages">跟随系统设置</string> <string name="use_device_languages">跟随系统设置</string>
<string name="help_translate">帮助我们翻译</string> <string name="help_translate">帮助我们翻译</string>
<string name="tips_and_support">提示和支持</string> <string name="tips_and_support">提示和支持</string>

View File

@ -1,11 +1,20 @@
<resources> <resources>
<string name="read_you" translatable="false">Read You</string> <string name="read_you" translatable="false">Read You</string>
<string name="all">All</string> <string name="all">All</string>
<string name="all_desc">%1$d Archived Items</string> <plurals name="all_desc">
<item quantity="one">%1$d Archived Item</item>
<item quantity="other">%1$d Archived Items</item>
</plurals>
<string name="unread">Unread</string> <string name="unread">Unread</string>
<string name="unread_desc"> %1$d Unread Items</string> <plurals name="unread_desc">
<item quantity="one">%1$d Unread Item</item>
<item quantity="other">%1$d Unread Items</item>
</plurals>
<string name="starred">Starred</string> <string name="starred">Starred</string>
<string name="starred_desc">%1$d Starred Items</string> <plurals name="starred_desc">
<item quantity="one">%1$d Starred Item</item>
<item quantity="other">%1$d Starred Items</item>
</plurals>
<string name="feeds">Feeds</string> <string name="feeds">Feeds</string>
<string name="syncing">Syncing…</string> <string name="syncing">Syncing…</string>
<string name="loading">Loading…</string> <string name="loading">Loading…</string>
@ -91,11 +100,12 @@
<string name="interaction">Interaction</string> <string name="interaction">Interaction</string>
<string name="interaction_desc">On start, haptic feedback</string> <string name="interaction_desc">On start, haptic feedback</string>
<string name="languages">Languages</string> <string name="languages">Languages</string>
<string name="languages_desc">English, 简体中文</string> <string name="languages_desc">English, 简体中文, Deutsch</string>
<string name="help_translate">Help us translate</string> <string name="help_translate">Help us translate</string>
<string name="use_device_languages">Use Device Languages</string> <string name="use_device_languages">Use Device Language</string>
<string name="english" translatable="false">English</string> <string name="english" translatable="false">English</string>
<string name="chinese_simplified" translatable="false">简体中文</string> <string name="chinese_simplified" translatable="false">简体中文</string>
<string name="german" translatable="false">Deutsch</string>
<string name="tips_and_support">Tips &amp; support</string> <string name="tips_and_support">Tips &amp; support</string>
<string name="tips_and_support_desc">About, open source</string> <string name="tips_and_support_desc">About, open source</string>
<string name="welcome">Welcome</string> <string name="welcome">Welcome</string>

View File

@ -0,0 +1,13 @@
## 0.7.8
1. Spracheinstellungsseite hinzugefügt (einige Bugs).
2. Einstellungen für das dunkle Design hinzugefügt.
3. AMOLED dunkles Design hinzugefügt.
4. Löschfunktion von Artikeln für Feeds und Gruppen hinzugefügt.
5. Für Geräte mit Android 12+ wird nun die erste Palette der Hintergrundfarben mit dem vom System bereitgestellten Farbschema ersetzt.
6. RSS-Parsing-Plugin auf Rome umgestellt (sollte in der Lage sein, die meisten Feeds zu parsen, ist aber bekannt dafür mit speziellen Formaten wie Youtube, Reddit, etc. nicht umgehen zu können).

View File

@ -0,0 +1,21 @@
## 0.7.2
1. Neues dynamisches Farbsystem (erfordert Android 8.1+, die Anzahl der dynamischen Farben hängt von der Farbvielfalt des aktuellen Hintergrundbildes ab, normalerweise 1 ~ 3).
2. Der Farbwert der Akzentfarbe kann jetzt auch angepasst werden (der Eintrag ist die letzte Palette bei den Grundfarben, dabei sei angemerkt, dass die benutzerdefinierte Farbe nur als Referenz dient, der Farbauswahl Algorithmus wird automatisch einen entsprechenden Farbwert wählen).
3. Nicht implementierte Funktionen sind jetzt grau markiert, um Verwirrung zu vermeiden.
4. Behebung des Problems der verwirrenden Zeitsortierung der Flow Seite, wenn die Filterungsbedingung eine Abonnementquelle ist.
5. Verbesserung der Symbolgröße der Benachrichtigung.
6. Doppelte Artikel werden jetzt nicht mehr synchronisiert (doppelt bedeutet, dass der Link zur Originalseite derselbe ist).
### Anmerkungen
1. Beim ersten Farbwechsel nach der Installation kann es vorkommen, dass zurück zur Startseite gesprungen wird, dies wird in der nächsten Version behoben.
2. Die nächste Version enthält hauptsächlich die "Über"-Seite und die eingebaute Prüfung auf neue Versionen.
3. Die Leseseite wird von der Slideransicht getrennt und bekommt eine eigene Seite.

View File

@ -0,0 +1,35 @@
## 0.7.4
1. "Tipps & Support"-Seite hinzugefügt.
2. Update-Check und Download hinzugefügt.
3. Wählt bei Erstinstallation standardmäßig dynamisches Farbthema (falls verfügbar).
4. Nach unten Wischfunktion zum Synchronisieren bei der Flow Seite hinzugefügt.
5. Es wird nun beim abrufen des gesamten Inhaltes ein Ladehinweis angezeigt.
6. Update einiger Abhängigkeiten (könnte unbekannte Fehler verursachen).
7. Unterstützung des RSS v1.0 Protokolls (muss getestet werden).
8. Hintergrund der Systemnavigationsleiste behoben.
9. Behebung des Problems, dass das Zurück-Ereignis nicht erfasst wird, wenn das Optionsmenü geöffnet ist.
10. Optimierung einiger Videostile auf der Leseseite.
11. Optimierung einiger abnormaler Stile.
### Anmerkungen
1. Prüfen bei jedem Kaltstart automatisch auf Updates (bei der nächsten Version verfügbar).
2. Beim Suchen nach Updates wird die Gitee-API für vereinfachtes Chinesisch und die GitHub-API für alle andere Sprachen verwendet.
3. Bitte nicht zu oft manuell nach Updates suchen (es wurde ein Abkühlungsintervall von 2 Sekunden festgelegt), da dieselbe IP nur 60 Mal pro Stunde auf die GitHub-API zugreifen kann und die genaue Häufigkeitsgrenze der Gitee-API unbekannt ist ( wurde bisher nicht für 8 Stunden zurückgesetzt).
4. Die Überarbeitung der Leseseiten erfolgt nach v0.8, die Überarbeitung von Icon und Cover nach v0.9 und die Unterstützung für FreshRSS (Fever API, Google Reader API) nach v1.0.
5. Diese Version kann aufgrund eines Fehlers im Upstream-Parsing-Plugin nur in einem Thread synchronisiert werden, was etwas langsam sein kann. Der Autor des Plugins erwähnt, dass dies in der nächsten Version behoben wird und das Atom-Protokoll ebenfalls unterstützt wird.

View File

@ -0,0 +1,11 @@
## 0.7.5
1. Unterstützung des RSS Atom Protokolls.
### Anmerkungen
1. Das Parsen von `<Inhalt>`-Elementen im Atom-Protokoll wird demnächst unterstützt.
2. Der ViewPager wird aktuell getrennt und überarbeitet, damit die Flüssigkeit sich verbessert.
3. Diese Version ist ein direkter Release, somit kann auch die Update-Funktion getestet werden.

View File

@ -0,0 +1,7 @@
## 0.7.6
1. ViewPager getrennt.
2. Zusammenführung von Benachrichtigungen nach Feeds.
3. Update-Dateien werden nicht mehr heruntergeladen, sondern es wird zur Release-Seite weitergeleitet.

View File

@ -0,0 +1,13 @@
## 0.7.7
1. Einstellung für Feeds Seitenstil hinzugefügt.
2. Einstellung für Flow Seitenstil hinzugefügt.
3. Initiale Seiteneinstellung hinzugefügt.
3. Initiale Filtereinstellung hinzugefügt.
5. Funktion zum ändern der Feed-URL hinzugefügt.
6. Banner-Filter Beschreibung korrigiert.

View File

@ -0,0 +1,16 @@
<i>Read You</i> Ein moderner und eleganter RSS-Reader mit <a href='https://m3.material.io/' target='_blank' rel='nofollow'>Material You </a> Design
<b>Funktionen:</b>
* Abonnieren von Feed-Links
* Aus OPML importieren
* Artikel-Synchronisation
* Benachrichtigung über Aktualisierung eines Artikels
* Gesamten Inhalt abrufen
* Filter ungelesen und markiert
* Feed Gruppen
* Lokalisierung
* Als OPML exportieren
* Suche nach Artikeln
Mehr in Planung…

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 391 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 195 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 176 KiB

View File

@ -0,0 +1 @@
Ein moderner und eleganter RSS-Reader mit Material You design