Merge branch 'master' of https://github.com/yang991178/rss-reader into 0.8.1
This commit is contained in:
commit
d9d9d6d2e8
|
@ -4,4 +4,5 @@ dist/*.js.map
|
|||
dist/*.html
|
||||
bin/*
|
||||
.DS_Store
|
||||
*.provisionprofile
|
||||
*.provisionprofile
|
||||
*.lock
|
|
@ -107,7 +107,8 @@ class AppTab extends React.Component<AppTabProps, AppTabState> {
|
|||
{ key: "en-US", text: "English" },
|
||||
{ key: "es", text: "Español" },
|
||||
{ key: "fr-FR", text: "Français" },
|
||||
{ key: "zh-CN", text: "中文(简体)" },
|
||||
{ key: "zh-CN", text: "中文(简体)" },
|
||||
{ key: "tr", text: "Türkçe" },
|
||||
]
|
||||
|
||||
toggleStatus = () => {
|
||||
|
|
|
@ -9,5 +9,6 @@ Currently, Fluent Reader supports the following languages.
|
|||
| fr-FR | Français | [@Toinane](https://github.com/Toinane) |
|
||||
| zh-CN | 中文(简体) | [@yang991178](https://github.com/yang991178) |
|
||||
| de | Deutsch | [@NoNamePro0](https://github.com/NoNamePro0) |
|
||||
| tr | Türkçe | [@mustafagenc](https://github.com/mustafagenc) |
|
||||
|
||||
Refer to the repo of [react-intl-universal](https://github.com/alibaba/react-intl-universal) to get started on internationalization.
|
||||
|
|
|
@ -3,6 +3,7 @@ import zh_CN from "./zh-CN.json"
|
|||
import fr_FR from "./fr-FR.json"
|
||||
import de from "./de.json"
|
||||
import es from "./es.json"
|
||||
import tr from "./tr.json"
|
||||
|
||||
const locales = {
|
||||
"en-US": en_US,
|
||||
|
@ -10,6 +11,7 @@ const locales = {
|
|||
"fr-FR": fr_FR,
|
||||
"de": de,
|
||||
"es": es,
|
||||
"tr": tr,
|
||||
}
|
||||
|
||||
export default locales
|
|
@ -7,9 +7,9 @@
|
|||
"openExternal": "Ouvrir dans le navigateur",
|
||||
"emptyName": "Ce champ ne peut pas être vide.",
|
||||
"emptyField": "Ce champ ne peut pas être vide.",
|
||||
"followSystem": "Suivre le système",
|
||||
"edit": "Modifier",
|
||||
"delete": "Supprimer",
|
||||
"followSystem": "Suivre le système",
|
||||
"more": "Plus",
|
||||
"close": "Fermer",
|
||||
"search": "Rechercher",
|
||||
|
@ -30,7 +30,10 @@
|
|||
"log": {
|
||||
"empty": "Aucune notification",
|
||||
"fetchFailure": "Échec du chargement de la source \"{name}\".",
|
||||
"fetchSuccess": "Récupération réussi de {count, plural, =1 {# article} other {# articles}}."
|
||||
"fetchSuccess": "Récupération réussi de {count, plural, =1 {# article} other {# articles}}.",
|
||||
"networkError": "Une erreur de réseau s'est produite.",
|
||||
"parseError": "Une erreur s'est produite lors de l'analyse du flux XML.",
|
||||
"syncFailure": "Échec de synchronisation avec le service"
|
||||
},
|
||||
"nav": {
|
||||
"menu": "Menu",
|
||||
|
@ -47,16 +50,23 @@
|
|||
"subscriptions": "Abonnements"
|
||||
},
|
||||
"article": {
|
||||
"error": "Impossible de charger l'article.",
|
||||
"reload": "Recharger ?",
|
||||
"empty": "Pas d'articles",
|
||||
"untitled": "(Sans titre)",
|
||||
"hide": "Masquer l'article",
|
||||
"unhide": "Afficher l'article",
|
||||
"markRead": "Marquer comme lu",
|
||||
"markUnread": "Marquer comme non lu",
|
||||
"markAbove": "Marquer ci-dessus comme lu",
|
||||
"markBelow": "Marquer ci-dessous comme lu",
|
||||
"star": "Mettre en favori",
|
||||
"unstar": "Supprimer le favori",
|
||||
"fontSize": "Taille de la police",
|
||||
"loadWebpage": "Charger la page web"
|
||||
"loadWebpage": "Charger la page web",
|
||||
"loadFull": "Charger tout le contenu",
|
||||
"notify": "Notifier le chargement en arrière-plan",
|
||||
"dontNotify": "Ne pas notifier"
|
||||
},
|
||||
"context": {
|
||||
"share": "Partager",
|
||||
|
@ -75,7 +85,21 @@
|
|||
"starredOnly": "Favoris uniquement",
|
||||
"fullSearch": "Recherche dans le texte complet",
|
||||
"showHidden": "Afficher les articles cachés",
|
||||
"manageSources": "Gérer les sources"
|
||||
"manageSources": "Gérer les sources",
|
||||
"saveImageAs": "Enregistrer l'image sous…",
|
||||
"copyImage": "Copier l'image",
|
||||
"copyImageURL": "Copier l'adresse de l'image",
|
||||
"caseSensitive": "Sensible à la casse",
|
||||
"showCover": "Afficher couverture",
|
||||
"showSnippet": "Afficher extrait",
|
||||
"fadeRead": "Atténuer les articles lus"
|
||||
},
|
||||
"searchEngine": {
|
||||
"name": "Moteur de recherche",
|
||||
"google": "Google",
|
||||
"bing": "Bing",
|
||||
"baidu": "Baidu",
|
||||
"duckduckgo": "DuckDuckGo"
|
||||
},
|
||||
"settings": {
|
||||
"writeError": "Une erreur s'est produite lors de l'écriture du fichier.",
|
||||
|
@ -84,6 +108,8 @@
|
|||
"exit": "Fermer les paramètres",
|
||||
"sources": "Sources",
|
||||
"grouping": "Groupes",
|
||||
"rules": "Règles",
|
||||
"service": "Service",
|
||||
"app": "Préférences",
|
||||
"about": "À propos",
|
||||
"version": "Version",
|
||||
|
@ -92,9 +118,14 @@
|
|||
"feedback": "Feedback"
|
||||
},
|
||||
"sources": {
|
||||
"serviceWarning": "Les sources importées ou ajoutées ici ne seront pas synchronisées avec votre service.",
|
||||
"serviceManaged": "Cette source est gérée par votre service.",
|
||||
"untitled": "Source",
|
||||
"errorAdd": "Une erreur s'est produite lors de l'ajout de la source.",
|
||||
"errorParse": "Une erreur s'est produite lors de l'analyse du fichier OPML.",
|
||||
"errorParseHint": "Veuillez vous assurer que le fichier n'est pas corrompu et qu'il est encodé en UTF-8.",
|
||||
"errorImport": "Erreur d'importation pour {count, plural, =1 {# source} other {# sources}}.",
|
||||
"exist": "Cette source existe déjà.",
|
||||
"opmlFile": "Fichier OPML",
|
||||
"name": "Nom de la source",
|
||||
"editName": "Modifier le nom",
|
||||
|
@ -108,11 +139,14 @@
|
|||
"rssText": "Texte complet RSS",
|
||||
"loadWebpage": "Charger la page web",
|
||||
"inputUrl": "Saisissez l'adresse URL",
|
||||
"badIcon": "Icône invalide",
|
||||
"badUrl": "Adresse URL invalide",
|
||||
"deleteWarning": "La source et tous les articles sauvegardés seront supprimés.",
|
||||
"selected": "Source sélectionnée"
|
||||
"selected": "Source sélectionnée",
|
||||
"selectedMulti": "Sources multiples sélectionnées"
|
||||
},
|
||||
"groups": {
|
||||
"exist": "Ce groupe existe déjà.",
|
||||
"type": "Type",
|
||||
"group": "Groupe",
|
||||
"source": "Source",
|
||||
|
@ -130,6 +164,44 @@
|
|||
"addToGroup": "Ajouter à ...",
|
||||
"groupHint": "Double-cliquez sur le groupe pour modifier ses sources. Faites un glisser-déposer pour réorganiser les sources."
|
||||
},
|
||||
"rules": {
|
||||
"intro": "Marquez automatiquement les articles ou envoyez des notifications avec des expressions régulières.",
|
||||
"help": "En savoir plus",
|
||||
"source": "Source",
|
||||
"selectSource": "Sélectionner une source",
|
||||
"new": "Nouvelle règle",
|
||||
"if": "Si",
|
||||
"then": "Alors",
|
||||
"title": "Titre",
|
||||
"content": "Contenu",
|
||||
"fullSearch": "Titre ou contenu",
|
||||
"creator": "Auteur",
|
||||
"match": "correspond à",
|
||||
"notMatch": "ne correspond pas à",
|
||||
"regex": "Expression régulière",
|
||||
"badRegex": "Expression régulière invalide.",
|
||||
"action": "Actions",
|
||||
"selectAction": "Sélectionner action",
|
||||
"hint": "Les règles seront appliquées dans l'ordre. Glisser-déposer pour réorganiser.",
|
||||
"test": "Tester les règles"
|
||||
},
|
||||
"service": {
|
||||
"intro": "Synchronisation entre les appareils avec des services RSS.",
|
||||
"select": "Sélectionner un service",
|
||||
"suggest": "Proposer un nouveau service",
|
||||
"overwriteWarning": "Les sources locales seront supprimées si elles existent dans le service.",
|
||||
"groupsWarning": "Les groupes ne sont pas automatiquement synchronisés avec le service.",
|
||||
"endpoint": "Adresse",
|
||||
"username": "Pseudo",
|
||||
"password": "Mot de passe",
|
||||
"unchanged": "Inchangé",
|
||||
"fetchLimit": "Limite de synchronisation",
|
||||
"fetchLimitNum": "{count} articles récents",
|
||||
"importGroups": "Importer des groupes",
|
||||
"failure": "Impossible de se connecter au service",
|
||||
"failureHint": "Veuillez vérifier la configuration du service ou l'état du réseau.",
|
||||
"fetchUnlimited": "Illimité (non recommandé)"
|
||||
},
|
||||
"app": {
|
||||
"cleanup": "Nettoyage",
|
||||
"cache": "Supprimer le cache",
|
||||
|
@ -153,6 +225,8 @@
|
|||
"badUrl": "Adresse URL invalide",
|
||||
"pac": "Adresse PAC",
|
||||
"setPac": "Définir PAC",
|
||||
"pacHint": "Pour les proxies Sockets, il est recommandé que le PAC retourne \"SOCKS5\" pour le DNS côté proxies. La désactivation du proxy nécessite un redémarrage."
|
||||
"pacHint": "Pour les proxies Sockets, il est recommandé que le PAC retourne \"SOCKS5\" pour le DNS côté proxies. La désactivation du proxy nécessite un redémarrage.",
|
||||
"fetchInterval": "Intervalle de récupération automatique",
|
||||
"never": "Jamais"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,232 @@
|
|||
{
|
||||
"allArticles": "Tüm Yazılar",
|
||||
"add": "Ekle",
|
||||
"create": "Ekle",
|
||||
"icon": "Simge",
|
||||
"name": "Ad",
|
||||
"openExternal": "Yeni pencerede aç",
|
||||
"emptyName": "Bu alan boş olamaz.",
|
||||
"emptyField": "Bu alan boş olamaz.",
|
||||
"edit": "Düzenle",
|
||||
"delete": "Sil",
|
||||
"followSystem": "Sistem dili",
|
||||
"more": "Daha fazla",
|
||||
"close": "Kapat",
|
||||
"search": "Ara",
|
||||
"loadMore": "Daha fazla",
|
||||
"dangerButton": "İşleme devam et ({action})",
|
||||
"confirmMarkAll": "Bu sayfadaki tüm yazıları gerçekten okundu olarak işaretlemek istiyor musunuz?",
|
||||
"confirm": "Tamam",
|
||||
"cancel": "İptal Et",
|
||||
"time": {
|
||||
"now": "şu an",
|
||||
"m": "d",
|
||||
"h": "s",
|
||||
"d": "g",
|
||||
"minute": "{m, plural, =1 {# dakika} other {# dakika}}",
|
||||
"hour": "{h, plural, =1 {# saat} other {# saat}}",
|
||||
"day": "{d, plural, =1 {# gün} other {# gün}}"
|
||||
},
|
||||
"log": {
|
||||
"empty": "Bildirim yok",
|
||||
"fetchFailure": "\"{name}\" kaynağı yüklenemedi.",
|
||||
"fetchSuccess": "{count, plural, =1 {# yazı} other {# yazı}} başarıyla güncellendi.",
|
||||
"networkError": "Ağ hatası oluştu.",
|
||||
"parseError": "XML beslemesi ayrıştırılırken bir hata oluştu..",
|
||||
"syncFailure": "Hizmet ile senkronize edilemedi"
|
||||
},
|
||||
"nav": {
|
||||
"menu": "Menü",
|
||||
"refresh": "Yenile",
|
||||
"markAllRead": "Tümünü okundu olarak işaretle",
|
||||
"notifications": "Bildirimler",
|
||||
"view": "Görünüm",
|
||||
"settings": "Ayarlar",
|
||||
"minimize": "Simge durumuna küçült",
|
||||
"maximize": "Ekranı kapla"
|
||||
},
|
||||
"menu": {
|
||||
"close": "Kapat",
|
||||
"subscriptions": "Abonelikler"
|
||||
},
|
||||
"article": {
|
||||
"error": "Yazı yüklenemedi.",
|
||||
"reload": "Tekrar yükle?",
|
||||
"empty": "Yazı yok",
|
||||
"untitled": "(Başlıksız)",
|
||||
"hide": "Yazıyı gizle",
|
||||
"unhide": "Yazıyı göster",
|
||||
"markRead": "Okundu olarak işaretle",
|
||||
"markUnread": "Okunmamış olarak işaretle",
|
||||
"markAbove": "Yukarıdakileri okundu olarak işaretle",
|
||||
"markBelow": "Aşağıdakileri okundu olarak işaretle",
|
||||
"star": "Yıldız ekle",
|
||||
"unstar": "Yıldızı kaldır",
|
||||
"fontSize": "Yazı boyutu",
|
||||
"loadWebpage": "Web sayfasını yükle",
|
||||
"loadFull": "Tam içeriği yükle",
|
||||
"notify": "Arka planda getirilirse bildir",
|
||||
"dontNotify": "Bildirme"
|
||||
},
|
||||
"context": {
|
||||
"share": "Paylaş",
|
||||
"read": "Oku",
|
||||
"copyTitle": "Başlığı kopyala",
|
||||
"copyURL": "Bağlantıyı kopyala",
|
||||
"copy": "Kopyala",
|
||||
"search": "{engine}'da \"{text}\" ara",
|
||||
"view": "Görünüm",
|
||||
"cardView": "Kart görünümü",
|
||||
"listView": "Liste görünümü",
|
||||
"magazineView": "Dergi görünümü",
|
||||
"compactView": "Kompakt görünüm",
|
||||
"filter": "Filtreleme",
|
||||
"unreadOnly": "Okunmamışlar",
|
||||
"starredOnly": "Yıldızlılar",
|
||||
"fullSearch": "Tam metinde ara",
|
||||
"showHidden": "Gizli yazıları göster",
|
||||
"manageSources": "Kaynakları yönet",
|
||||
"saveImageAs": "Resmi farklı kaydet …",
|
||||
"copyImage": "Resmi kopyala",
|
||||
"copyImageURL": "Resim bağlantısını kopyala",
|
||||
"caseSensitive": "Harfe duyarlı",
|
||||
"showCover": "Resmi göster",
|
||||
"showSnippet": "Açıklama göster",
|
||||
"fadeRead": "Okunanları karart"
|
||||
},
|
||||
"searchEngine": {
|
||||
"name": "Arama motoru",
|
||||
"google": "Google",
|
||||
"bing": "Bing",
|
||||
"baidu": "Baidu",
|
||||
"duckduckgo": "DuckDuckGo"
|
||||
},
|
||||
"settings": {
|
||||
"writeError": "Dosyayı yazarken bir hata oluştu.",
|
||||
"name": "Ayarlar",
|
||||
"fetching": "Kaynaklar güncelleniyor, lütfen bekleyin…",
|
||||
"exit": "Çıkış",
|
||||
"sources": "Kaynaklar",
|
||||
"grouping": "Gruplar",
|
||||
"rules": "Kurallar",
|
||||
"service": "Hizmetler",
|
||||
"app": "Tercihler",
|
||||
"about": "Hakkında",
|
||||
"version": "Sürüm",
|
||||
"shortcuts": "Kısayollar",
|
||||
"openSource": "Açık Kaynak",
|
||||
"feedback": "Geri Bildirim"
|
||||
},
|
||||
"sources": {
|
||||
"serviceWarning": "Sources imported or added here will not be synced with your service.",
|
||||
"serviceManaged": "Bu kaynak, hizmetiniz tarafından yönetilmektedir.",
|
||||
"untitled": "Kaynak",
|
||||
"errorAdd": "Kaynak eklenirken bir hata oluştu.",
|
||||
"errorParse": "OPML dosyası ayrıştırılırken bir hata oluştu.",
|
||||
"errorParseHint": "Lütfen dosyanın bozuk olmadığından ve UTF-8 formatında olduğundan emin olun.",
|
||||
"errorImport": "İçe aktarma hatası {count, plural, =1 {# kaynak} other {# kaynak}}.",
|
||||
"exist": "Bu kaynak zaten var.",
|
||||
"opmlFile": "OPML Dosyası",
|
||||
"name": "Kaynak adı",
|
||||
"editName": "Güncelle",
|
||||
"fetchFrequency": "Yenileme sıklığı",
|
||||
"unlimited": "Sınırsız",
|
||||
"openTarget": "Yazılar için varsayılan işlem",
|
||||
"delete": "Sil",
|
||||
"add": "Kaynak ekle",
|
||||
"import": "İçe Aktar",
|
||||
"export": "Dışa Aktar",
|
||||
"rssText": "RSS tam metni",
|
||||
"loadWebpage": "Web sayfasını yükle",
|
||||
"inputUrl": "URL girin",
|
||||
"badIcon": "Geçersiz simge",
|
||||
"badUrl": "Geçersiz URL",
|
||||
"deleteWarning": "Kaynak ve kaydedilen tüm yazılar kaldırılacaktır.",
|
||||
"selected": "Seçilen kaynak",
|
||||
"selectedMulti": "Birden çok kaynak seçildi"
|
||||
},
|
||||
"groups": {
|
||||
"exist": "Bu grup zaten var.",
|
||||
"type": "Tip",
|
||||
"group": "Grup",
|
||||
"source": "Kaynak",
|
||||
"capacity": "Kapasite",
|
||||
"exitGroup": "Geri",
|
||||
"deleteSource": "Sil",
|
||||
"sourceHint": "Yeniden sıralamak için kaynakları sürükleyip bırakın.",
|
||||
"create": "Grup oluştur",
|
||||
"selectedGroup": "Grup",
|
||||
"selectedSource": "Kaynağı seç",
|
||||
"enterName": "Ad girin",
|
||||
"editName": "Güncelle",
|
||||
"deleteGroup": "Sil",
|
||||
"chooseGroup": "Grup seç",
|
||||
"addToGroup": "Ekle",
|
||||
"groupHint": "Kaynakları düzenlemek için gruba çift tıklayın. Yeniden sıralamak için sürükleyip bırakın."
|
||||
},
|
||||
"rules": {
|
||||
"intro": "Yazıları otomatik olarak işaretle yada düzenli ifadeler (regex) ile bildirimler gönder.",
|
||||
"help": "Daha fazla bilgi edin",
|
||||
"source": "Kaynak",
|
||||
"selectSource": "Kaynak Seçin",
|
||||
"new": "Yeni kural",
|
||||
"if": "Eğer",
|
||||
"then": "Sonra",
|
||||
"title": "Başlık",
|
||||
"content": "İçerik",
|
||||
"fullSearch": "Başlık veya İçerik",
|
||||
"creator": "Yazar",
|
||||
"match": "eşleşiyorsa",
|
||||
"notMatch": "eşleşmiyorsa",
|
||||
"regex": "Düzenli ifade (Regex)",
|
||||
"badRegex": "Geçersiz düzenli ifade (Regex).",
|
||||
"action": "Eylemler",
|
||||
"selectAction": "Eylemleri Seçin",
|
||||
"hint": "Kurallar sırayla uygulanacaktır. Yeniden sıralamak için sürükleyip bırakın.",
|
||||
"test": "Test Et"
|
||||
},
|
||||
"service": {
|
||||
"intro": "RSS hizmetleriyle cihazlar arasında senkronize edin.",
|
||||
"select": "Hizmet seçin",
|
||||
"suggest": "Yeni hizmet öner",
|
||||
"overwriteWarning": "Kaynak hizmet içerisinde varsa, yerel kaynaklar silinecek..",
|
||||
"groupsWarning": "Gruplar hizmetle otomatik olarak senkronize edilmez.",
|
||||
"endpoint": "Endpoint",
|
||||
"username": "Kullanıcı Adı",
|
||||
"password": "Parola",
|
||||
"unchanged": "Değişmedi",
|
||||
"fetchLimit": "Senkronizasyon sınırı",
|
||||
"fetchLimitNum": "Son {count} yazı",
|
||||
"importGroups": "Grupları içe aktar",
|
||||
"failure": "Hizmete bağlanılamıyor",
|
||||
"failureHint": "Lütfen servis ayarlarını veya internet bağlantınızı kontrol edin.",
|
||||
"fetchUnlimited": "Sınırsız (tavsiye edilmez)"
|
||||
},
|
||||
"app": {
|
||||
"cleanup": "Temizle",
|
||||
"cache": "Önbelleği temizle",
|
||||
"cacheSize": "{size} veri önbelleğe alındı",
|
||||
"deleteChoices": "... gün öncesine ait yazıları sil",
|
||||
"confirmDelete": "Sil",
|
||||
"daysAgo": "{days} gün önce",
|
||||
"deleteAll": "Tüm yazıları sil",
|
||||
"calculatingSize": "Boyut hesaplanıyor...",
|
||||
"itemSize": "Kullanılan depolama alanınızın yaklaşık {size}",
|
||||
"confirmImport": "İşleme devam etmek istediğinize emin misiniz? Mevcut tüm veriler silinecek.",
|
||||
"data": "Uygulama Verileri",
|
||||
"backup": "Yedekle",
|
||||
"restore": "Geri Yükle",
|
||||
"frData": "Fluent Reader Verileri",
|
||||
"language": "Görüntüleme dili",
|
||||
"theme": "Tema",
|
||||
"lightTheme": "Aydınlık",
|
||||
"darkTheme": "Karanlık",
|
||||
"enableProxy": "Proxy'yi Etkinleştir",
|
||||
"badUrl": "Geçersiz URL",
|
||||
"pac": "PAC Adresi",
|
||||
"setPac": "PAC ayarla",
|
||||
"pacHint": "Socks proxy'leri için, PAC'ın proxy tarafı DNS için \"SOCKS5\" döndürmesi önerilir. Proxy'yi kapatmak, yeniden başlatmayı gerektirir.",
|
||||
"fetchInterval": "Otomatik getirme aralığı",
|
||||
"never": "Asla"
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue