diff --git a/scripts/make.js b/scripts/make.js
index 1ec5b446e..dadfd5a1a 100644
--- a/scripts/make.js
+++ b/scripts/make.js
@@ -14,7 +14,7 @@ const path = require('path')
const root_dir = path.normalize(path.join(__dirname, '..'))
const dist_dir = path.normalize(path.join(__dirname, '..', 'dist'))
-const electronLanguages = ['en', 'fr', 'zh_CN', 'de', 'ja']
+const electronLanguages = ['en', 'fr', 'zh_CN', 'de', 'ja', 'tr']
const TARGET_PLATFORMS_configs = {
mac: {
diff --git a/src/common/i18n/index.ts b/src/common/i18n/index.ts
index 8e3c76d4a..57421d8ab 100644
--- a/src/common/i18n/index.ts
+++ b/src/common/i18n/index.ts
@@ -10,6 +10,7 @@ import zh_hant from './languages/zh-hant'
import fr from './languages/fr'
import de from './languages/de'
import ja from './languages/ja'
+import tr from './languages/tr'
import { LanguageDict, LanguageKey } from '@common/types'
export const languages = {
@@ -22,6 +23,7 @@ export const languages = {
fr,
de,
ja,
+ tr,
}
export type LocaleName = keyof typeof languages
diff --git a/src/common/i18n/languages/tr.ts b/src/common/i18n/languages/tr.ts
new file mode 100644
index 000000000..9a0cec956
--- /dev/null
+++ b/src/common/i18n/languages/tr.ts
@@ -0,0 +1,188 @@
+/**
+ * @author: baris
+ * @homepage: https://barisuzun.com.tr
+ */
+
+export default {
+ _app_name: 'SwitchHosts',
+ _key: 'tr',
+ _name: 'Türkçe',
+ about: 'Hakkında',
+ acknowledgement: 'Teşekkür',
+ advanced: 'Gelişmiş',
+ all: 'Tümü',
+ append: 'Ekle',
+ auto_refresh: 'Otomatik Yenile',
+ btn_cancel: 'İptal',
+ btn_ok: 'Tamam',
+ change: 'Değiştir',
+ check_update: 'Güncellemeleri Kontrol Et',
+ choice_mode: 'Seçim Modu',
+ choice_mode_default: 'Varsayılan',
+ choice_mode_desc: 'Sadece en üstteki öğe için geçerlidir, her klasör kendi seçim modunu ayarlayabilir.',
+ choice_mode_multiple: 'Çoklu',
+ choice_mode_single: 'Tekli',
+ choices: 'Seçenekler',
+ chosen: 'Seçildi',
+ clear_history: 'Geçmişi Temizle',
+ click_to_open: 'Açmak için tıkla',
+ close: 'Kapat',
+ colon: ': ',
+ commands: 'Komutlar',
+ commands_help: 'Hosts uygulandığında aşağıdaki sistem komutları çalıştırılacaktır:',
+ commands_title: 'Hosts uygulandıktan sonra komut',
+ comment_current_line: 'Mevcut satırı yorumla',
+ content: 'İçerik',
+ copy: 'Kopyala',
+ cut: 'Kes',
+ day: 'gün',
+ days: 'günler',
+ delete: 'Sil',
+ download: 'İndir',
+ edit: 'Düzenle',
+ export: 'Dışa Aktar',
+ export_done: 'Dışa aktarma tamamlandı.',
+ fail: 'Başarısız!',
+ feedback: 'Geri Bildirim',
+ file: 'Dosya',
+ find: 'Bul',
+ find_all: 'Hepsini Bul',
+ find_and_replace: 'Bul ve Değiştir',
+ find_history: 'Arama Geçmişi',
+ folder: 'Klasör',
+ front: 'Ön',
+ general: 'Genel',
+ group: 'Grup',
+ help: 'Yardım',
+ hide: 'Gizle',
+ hide_at_launch: 'Başlangıçta Gizle',
+ hide_dock_icon: 'Dock simgesini gizle',
+ hide_history: 'Geçmişi Gizle',
+ hide_others: 'Diğerlerini Gizle',
+ homepage: 'Anasayfa',
+ host: 'Host',
+ hosts_add: 'Yeni host ekle',
+ hosts_delete: 'Bu hostu sil',
+ hosts_delete_confirm: 'Mevcut hostu silmek istediğinizden emin misiniz?',
+ hosts_edit: 'Hostları düzenle',
+ hosts_title: 'Host Başlığı',
+ hosts_type: 'Host Türü',
+ hosts_updated: 'Host dosyası güncellendi.',
+ hour: 'saat',
+ hours: 'saatler',
+ http_api_on: 'HTTP API açık',
+ http_api_on_desc: '{0} portunda çalışır, Alfred gibi üçüncü parti yazılımlar tarafından hostları değiştirmek için kullanılabilir.',
+ http_api_only_local: 'HTTP API sadece 127.0.0.1’i dinler',
+ ignore_case: 'Büyük/Küçük Harf Duyarsız',
+ import: 'İçe Aktar',
+ import_done: 'İçe aktarma tamamlandı.',
+ import_fail: 'İçe aktarma başarısız!',
+ import_from_url: 'URL’den İçe Aktar',
+ is_latest_version_inform: 'Harika, en güncel sürümü kullanıyorsunuz!',
+ check_update_failed: 'Güncellemeleri kontrol etme başarısız!',
+ item_found: '{0} öğe bulundu.',
+ items: 'öğeler',
+ items_found: '{0} öğe bulundu.',
+ language: 'Dil',
+ last_refresh: 'Son yenileme: ',
+ latest_version_desc: 'En son sürüm: {0}',
+ line: 'satır',
+ lines: 'satırlar',
+ loading: 'Yükleniyor...',
+ local: 'Yerel',
+ match: 'Eşleşme',
+ migrate_confirm:
+ 'SwitchHosts v4.0 yeni bir veri depolama formatı kullanıyor, eski verileri yeni formata taşımak ister misiniz?',
+ migrate_data: 'Veri Taşı',
+ minimize: 'Küçült',
+ minute: 'dakika',
+ minutes: 'dakikalar',
+ move_items_to_trashcan: 'Çöp kutusuna {0} öğe taşı',
+ move_to_trashcan: 'Çöp Kutusuna Taşı',
+ multi_chose_folder_switch_all: 'çoklu seçim klasörü, alt öğelerin kontrolünü sağlar',
+ need_to_relaunch: 'Yeniden başlatılması gerekiyor',
+ need_to_relaunch_after_setting_changed: 'Ayar değiştirildi ve uygulama yeniden başlatıldıktan sonra etkili olacak.',
+ never: 'Asla',
+ new: 'Yeni',
+ new_version_found: 'Yeni sürüm bulundu',
+ next: 'Sonraki',
+ no_access_to_hosts: 'Hosts dosyasına yazma izni yok.',
+ no_record: 'Kayıt yok',
+ overwrite: 'Üzerine Yaz',
+ password: 'Parola',
+ paste: 'Yapıştır',
+ port: 'Port',
+ preferences: 'Tercihler',
+ previous: 'Önceki',
+ protocol: 'Protokol',
+ proxy: 'Proxy',
+ quit: 'Çıkış',
+ read_only: 'Salt Okunur',
+ redo: 'Yinele',
+ refresh: 'Yenile',
+ regexp: 'Düzenli İfade',
+ reload: 'Yeniden Yükle',
+ remote: 'Uzak',
+ remove_duplicate_records: 'Yinelenen kayıtları kaldır',
+ remove_duplicate_records_desc:
+ 'Bir alan birden fazla IP\'ye işaret ediyorsa, sadece ilk olanı etkili olacak ve sonrakiler yorum olarak dönüştürülecek.',
+ replace: 'Değiştir',
+ replace_all: 'Hepsini Değiştir',
+ replace_history: 'Geçmişi Değiştir',
+ reset: 'Sıfırla',
+ reset_data_dir_confirm: 'Veri klasörünü varsayılan adrese ({0}) geri yüklemek istediğinizden emin misiniz?',
+ reset_zoom: 'Yakınlaştırmayı Sıfırla',
+ search: 'Ara',
+ select_all: 'Hepsini Seç',
+ selected: 'Seçildi',
+ show_dock_icon: 'Dock simgesini göster',
+ show_history: 'Geçmişi Göster',
+ show_main_window: 'Ana pencereyi göster',
+ show_title_on_tray: 'Görev çubuğunda başlığı göster',
+ source_code: 'Kaynak Kod',
+ success: 'Başarılı!',
+ sudo_prompt_title: 'Sudo parolanızı girin',
+ system_hosts: 'Sistem Hostları',
+ system_hosts_history: 'Sistem Hostlarının geçmiş sürümleri',
+ system_hosts_history_delete_confirm: 'Bu öğeyi silmek istediğinizden emin misiniz?',
+ system_hosts_history_help: 'Toplam kayıt sayısı bu sınırları aşarsa, en eski kayıt silinecektir.',
+ system_hosts_history_limit: 'Maksimum kayıt sayısı: ',
+ test: 'Test',
+ theme: 'Tema',
+ theme_dark: 'Karanlık',
+ theme_light: 'Aydınlık',
+ title: 'Başlık',
+ to_show_source: 'Kaynak kodunu göstermek için çift tıklayın.',
+ toggle_developer_tools: 'Geliştirici Araçlarını Aç/Kapat',
+ toggle_dock_icon: 'Dock simgesini aç/kapat',
+ toggle_full_screen: 'Tam ekranı aç/kapat',
+ trashcan: 'Çöp Kutusu',
+ trashcan_clear: 'Çöp kutusunu boşalt',
+ trashcan_clear_confirm: 'Çöp kutusunu boşaltmak istediğinizden emin misiniz?',
+ trashcan_delete_confirm: 'Bu öğeyi tamamen silmek istiyor musunuz?',
+ trashcan_restore: 'Geri Yükle',
+ tray_mini_window: 'Görev çubuğu simgesi kısayolu',
+ undo: 'Geri Al',
+ unhide: 'Gizlemeyi Kaldır',
+ untitled: 'Başlıksız',
+ url_placeholder: 'http:// veya https:// veya file://',
+ usage_data_agree: 'Evet, anonimleştirilmiş kullanım verilerini gönder',
+ usage_data_help:
+ 'Anonim kullanım verilerini periyodik olarak göndererek SwitchHosts\'u iyileştirmemize yardımcı olmak ister misiniz?',
+ usage_data_title: 'SwitchHosts\'u Daha İyi Yapın!',
+ use_proxy: 'Proxy Kullan',
+ use_system_window_frame: 'Sistem pencere çerçevesini kullanın, uygulamanın yeniden başlatılması gereklidir',
+ view: 'Görüntüle',
+ where_is_my_data: 'Verilerim nerede saklanıyor?',
+ where_is_my_hosts: 'Hosts dosyam nerede?',
+ window: 'Pencere',
+ write_mode: 'Yazma modu',
+ write_mode_append_help: 'Yeni kayıtları sistem hosts dosyasının sonuna ekleyin.',
+ write_mode_overwrite_help: 'Yeni kayıtlarla sistem hosts dosyasını üzerine yazın.',
+ write_mode_set: 'Yazma modunu ayarla',
+ your_data_is: 'Veri dosyalarınız şurada saklanıyor:',
+ your_hosts_file_is: 'Hosts dosyanız şu konumda bulunuyor:',
+ zoom: 'Yakınlaştır',
+ zoom_in: 'Yakınlaştır',
+ zoom_out: 'Uzaklaştır',
+}
diff --git a/src/main/ui/checkSystemLocale.ts b/src/main/ui/checkSystemLocale.ts
index 4e4fbab19..89f9dd26d 100644
--- a/src/main/ui/checkSystemLocale.ts
+++ b/src/main/ui/checkSystemLocale.ts
@@ -27,6 +27,8 @@ export default async () => {
locale = 'de'
} else if (locale.startsWith('ja')) {
locale = 'ja'
+ } else if (locale.startsWith('tr')) {
+ locale = 'tr'
}
if (!isLocaleName(locale)) {
diff --git a/src/renderer/components/Pref/General.tsx b/src/renderer/components/Pref/General.tsx
index 32001f376..22a0156ac 100644
--- a/src/renderer/components/Pref/General.tsx
+++ b/src/renderer/components/Pref/General.tsx
@@ -52,6 +52,7 @@ const General = (props: IProps) => {
+