feat(i18n): add Turkish locale

This commit is contained in:
Sinan Eldem authored and GitHub committed 2026-09-04 02:22:21 +08:00
1 parent 232426ced2
commit 79dbda2a8f
26 files changed
+9540 -18

No files matched your search

+9
View File
@@ -729,6 +729,7 @@ enum LocaleFamily {
Spanish,
Italian,
Portuguese,
Turkish,
}
// Mirrors the frontend language mapping in apps/desktop/src/i18n/index.ts
@@ -752,6 +753,8 @@ fn locale_family(locale: &str) -> LocaleFamily {
LocaleFamily::Korean
} else if is_language("es") {
LocaleFamily::Spanish
} else if is_language("tr") {
LocaleFamily::Turkish
} else if is_language("it") {
LocaleFamily::Italian
} else if is_language("pt") {
@@ -769,6 +772,7 @@ fn tray_menu_labels_for_locale(locale: &str) -> (&'static str, &'static str) {
LocaleFamily::Korean => ("DBX 표시", "DBX 종료"),
LocaleFamily::Spanish => ("Mostrar DBX", "Salir de DBX"),
LocaleFamily::Italian => ("Mostra DBX", "Esci da DBX"),
LocaleFamily::Turkish => ("DBX'i Göster", "DBX'ten Çık"),
LocaleFamily::Portuguese => ("Mostrar DBX", "Sair do DBX"),
LocaleFamily::English => ("Show DBX", "Quit DBX"),
}
@@ -784,6 +788,7 @@ fn app_menu_copy_support_info_label(locale: &str) -> &'static str {
LocaleFamily::Korean => "지원 정보 복사",
LocaleFamily::Spanish => "Copiar información",
LocaleFamily::Italian => "Copia informazioni",
LocaleFamily::Turkish => "Destek bilgilerini kopyala",
LocaleFamily::Portuguese => "Copiar informações",
LocaleFamily::English => "Copy Support Info",
}
@@ -797,6 +802,7 @@ fn app_menu_quit_label(locale: &str, app_name: &str) -> String {
LocaleFamily::Korean => format!("{app_name} 종료"),
LocaleFamily::Spanish => format!("Salir de {app_name}"),
LocaleFamily::Italian => format!("Esci da {app_name}"),
LocaleFamily::Turkish => format!("{app_name} Uygulamasından Çık"),
LocaleFamily::Portuguese => format!("Sair do {app_name}"),
LocaleFamily::English => format!("Quit {app_name}"),
}
@@ -1008,6 +1014,7 @@ mod tests {
assert_eq!(tray_menu_labels_for_locale("es-ES"), ("Mostrar DBX", "Salir de DBX"));
assert_eq!(tray_menu_labels_for_locale("it-IT"), ("Mostra DBX", "Esci da DBX"));
assert_eq!(tray_menu_labels_for_locale("pt-BR"), ("Mostrar DBX", "Sair do DBX"));
assert_eq!(tray_menu_labels_for_locale("tr-TR"), ("DBX'i Göster", "DBX'ten Çık"));
assert_eq!(tray_menu_labels_for_locale("en-US"), ("Show DBX", "Quit DBX"));
// Unknown and empty locales fall back to English; "ita" must not match "it".
assert_eq!(tray_menu_labels_for_locale("ita"), ("Show DBX", "Quit DBX"));
@@ -1020,11 +1027,13 @@ mod tests {
assert_eq!(app_menu_quit_label("zh-TW", "DBX"), "退出 DBX");
assert_eq!(app_menu_quit_label("ja-JP", "DBX"), "DBXを終了");
assert_eq!(app_menu_quit_label("ko-KR", "DBX"), "DBX 종료");
assert_eq!(app_menu_quit_label("tr-TR", "DBX"), "DBX Uygulamasından Çık");
assert_eq!(app_menu_quit_label("en-US", "DBX"), "Quit DBX");
assert_eq!(app_menu_quit_label("", "DBX"), "Quit DBX");
assert_eq!(app_menu_copy_support_info_label("zh-CN"), "复制支持信息");
assert_eq!(app_menu_copy_support_info_label("zh-TW"), "複製支援資訊");
assert_eq!(app_menu_copy_support_info_label("ko-KR"), "지원 정보 복사");
assert_eq!(app_menu_copy_support_info_label("tr-TR"), "Destek bilgilerini kopyala");
assert_eq!(app_menu_copy_support_info_label("en-US"), "Copy Support Info");
}