diff --git a/CHANGELOG.md b/CHANGELOG.md index 9f88b9135..538225ef8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,9 @@ All Sniffnet releases with the relative changes are documented in this file. +## [UNRELEASED] +- Added Dutch translation 🇳🇱 ([#854](https://github.com/GyulyVGC/sniffnet/pull/854)) + ## [1.4.0] - 2025-06-27 - Import PCAP files ([#795](https://github.com/GyulyVGC/sniffnet/pull/795) — fixes [#283](https://github.com/GyulyVGC/sniffnet/issues/283)) - Donut chart reporting overall traffic statistics ([#756](https://github.com/GyulyVGC/sniffnet/pull/756) — fixes [#687](https://github.com/GyulyVGC/sniffnet/issues/687)) diff --git a/resources/fonts/full/subset_characters.txt b/resources/fonts/full/subset_characters.txt index ab57c2de0..33c02891e 100644 --- a/resources/fonts/full/subset_characters.txt +++ b/resources/fonts/full/subset_characters.txt @@ -112,6 +112,7 @@ z è é ê +ë ì í î diff --git a/resources/fonts/subset/sarasa-mono-sc-bold.subset.ttf b/resources/fonts/subset/sarasa-mono-sc-bold.subset.ttf index cd3d53a42..0e28e1ab7 100644 Binary files a/resources/fonts/subset/sarasa-mono-sc-bold.subset.ttf and b/resources/fonts/subset/sarasa-mono-sc-bold.subset.ttf differ diff --git a/resources/fonts/subset/sarasa-mono-sc-regular.subset.ttf b/resources/fonts/subset/sarasa-mono-sc-regular.subset.ttf index 8ed245cf7..f33f1e57a 100644 Binary files a/resources/fonts/subset/sarasa-mono-sc-regular.subset.ttf and b/resources/fonts/subset/sarasa-mono-sc-regular.subset.ttf differ diff --git a/src/gui/pages/inspect_page.rs b/src/gui/pages/inspect_page.rs index 8ee94705c..0274f63a4 100644 --- a/src/gui/pages/inspect_page.rs +++ b/src/gui/pages/inspect_page.rs @@ -639,7 +639,7 @@ mod tests { #[test] fn test_table_titles_display_and_tooltip_values_for_each_language() { // check glyph len when adding new language... - assert_eq!(Language::ALL.len(), 21); + assert_eq!(Language::ALL.len(), 22); for report_col in ReportCol::ALL { for language in Language::ALL { let (title, title_small, tooltip_val) = diff --git a/src/translations/translations.rs b/src/translations/translations.rs index 48c40ab56..010bef214 100644 --- a/src/translations/translations.rs +++ b/src/translations/translations.rs @@ -29,6 +29,7 @@ pub fn choose_adapters_translation<'a>(language: Language) -> Text<'a, StyleType Language::UZ => "Tekshirish uchun tarmoq adapterini tanlang", Language::VI => "Hãy chọn network adapter để quan sát", Language::ID => "Pilih Adapter Jaringan yang ingin dicek", + Language::NL => "Selecteer netwerkadapter om te inspecteren", }) } @@ -55,6 +56,7 @@ pub fn choose_adapters_translation<'a>(language: Language) -> Text<'a, StyleType // Language::JA => "アプリケーション プロトコル", // Language::UZ => "Ilova protokoli", // Language::ID => "Protokol Aplikasi", +// Language::NL => "Toepassingsprotocol", // } // } @@ -82,12 +84,13 @@ pub fn select_filters_translation<'a>(language: Language) -> Text<'a, StyleType> Language::UZ => "Tarmoq trafigiga qo'llaniladigan filtrlarni tanlang", Language::VI => "Hãy chọn bộ lọc cho lưu lượng mạng", Language::ID => "Pilih filter yang ingin dipasang dilalulintas jaringan", + Language::NL => "Selecteer filters om toe te passen op netwerkverkeer", }) } pub fn start_translation(language: Language) -> &'static str { match language { - Language::EN | Language::DE | Language::RO | Language::KO => "Start!", + Language::EN | Language::DE | Language::RO | Language::KO | Language::NL => "Start!", Language::IT => "Avvia!", Language::FR => "Commencer!", Language::ES => "¡Empieza!", @@ -114,7 +117,7 @@ pub fn address_translation(language: Language) -> &'static str { Language::IT => "Indirizzo", Language::FR | Language::DE => "Adresse", Language::ES => "Dirección", - Language::PL | Language::TR => "Adres", + Language::PL | Language::TR | Language::NL => "Adres", Language::UK => "Адреса", Language::ZH => "网络地址", Language::ZH_TW => "網路位址", @@ -140,7 +143,7 @@ pub fn addresses_translation(language: Language) -> &'static str { Language::FR => "Adresses", Language::ES => "Direcciones", Language::PL => "Adresy", - Language::DE => "Adressen", + Language::DE | Language::NL => "Adressen", Language::UK => "Адреси", Language::ZH => "网络地址", Language::ZH_TW => "網路位址", @@ -184,6 +187,7 @@ pub fn ip_version_translation(language: Language) -> &'static str { Language::UZ => "IP versiyasi", Language::VI => "Phiên bản IP", Language::ID => "Versi IP", + Language::NL => "IP versie", } } @@ -209,12 +213,13 @@ pub fn ip_version_translation(language: Language) -> &'static str { // Language::JA => "トランスポート プロトコル", // Language::UZ => "Transport protokoli", // Language::ID => "Protokol berjalan", +// Language::NL => "Transportprotocol", // } // } pub fn protocol_translation(language: Language) -> &'static str { match language { - Language::EN | Language::RO => "Protocol", + Language::EN | Language::RO | Language::NL => "Protocol", Language::IT => "Protocollo", Language::FR => "Protocole", Language::ES | Language::PT => "Protocolo", @@ -259,6 +264,7 @@ pub fn traffic_rate_translation<'a>(language: Language) -> Text<'a, StyleType> { Language::UZ => "Trafik tezligi", Language::VI => "Lưu lượng truy cập", Language::ID => "Tingkat lalulintas", + Language::NL => "Verkeerssnelheid", }) } @@ -283,6 +289,7 @@ pub fn traffic_rate_translation<'a>(language: Language) -> Text<'a, StyleType> { // Language::SE => "Relevanta anslutningar:", // Language::UZ => "Tegishli ulanishlar:", // Language::ID => "Koneksi yang berkaitan", +// Language::NL => "Relevante verbindingen:", // }) // } @@ -309,6 +316,7 @@ pub fn settings_translation(language: Language) -> &'static str { Language::UZ => "Sozlamalar", Language::VI => "Cài đặt", Language::ID => "Pengaturan", + Language::NL => "Instellingen", } } @@ -319,7 +327,7 @@ pub fn yes_translation<'a>(language: Language) -> Text<'a, StyleType> { Language::FR => "Oui", Language::ES => "Sí", Language::PL => "Tak", - Language::DE | Language::SV => "Ja", + Language::DE | Language::SV | Language::NL => "Ja", Language::UK => "Так", Language::ZH | Language::ZH_TW => "是", Language::RO => "Da", @@ -361,6 +369,7 @@ pub fn ask_quit_translation<'a>(language: Language) -> Text<'a, StyleType> { Language::UZ => "Tahlildan chiqishga ishonchingiz komilmi?", Language::VI => "Bạn có chắc là muốn thoát phiên phân tích này?", Language::ID => "Apa kamu yakin untuk berhenti analisa?", + Language::NL => "Weet je zeker dat je deze analyse wilt afsluiten?", }) } @@ -388,6 +397,7 @@ pub fn quit_analysis_translation(language: Language) -> &'static str { Language::UZ => "Tahlildan chiqish", Language::VI => "Thoát phiên phân tích", Language::ID => "Berhenti analisa", + Language::NL => "Analyse afsluiten", } } @@ -415,6 +425,7 @@ pub fn ask_clear_all_translation<'a>(language: Language) -> Text<'a, StyleType> Language::UZ => "Haqiqatan ham bildirishnomalarni tozalamoqchimisiz?", Language::VI => "Bạn có chắc là muốn xóa các thông báo?", Language::ID => "Apa kamu yakin untuk membersihkan notifikasi?", + Language::NL => "Weet je zeker dat je alle meldingen wilt wissen?", }) } @@ -441,6 +452,7 @@ pub fn clear_all_translation(language: Language) -> &'static str { Language::UZ => "Barchasini tozalash", Language::VI => "Xóa tất cả", Language::ID => "Bersihkan semua", + Language::NL => "Alles wissen", } } @@ -468,6 +480,7 @@ pub fn hide_translation(language: Language) -> &'static str { Language::UZ => "Yashirish", Language::VI => "Ẩn", Language::ID => "Sembunyikan", + Language::NL => "Verbergen", } } @@ -494,6 +507,7 @@ pub fn network_adapter_translation(language: Language) -> &'static str { Language::JA => "ネットワーク アダプター", Language::UZ => "Tarmoq adapteri", Language::ID => "Adapter jaringan", + Language::NL => "Netwerkadapter", } } @@ -609,6 +623,11 @@ pub fn no_addresses_translation<'a>(language: Language, adapter: &str) -> Text<' {network_adapter_translation}: {adapter}\n\n\ Jika kamu yakin kamu terhubung ke internet, coba untuk memilih adapter lainnya." ), + Language::NL => format!( + "Er kan geen verkeer worden waargenomen omdat de geselecteerde adapter geen actieve adressen heeft...\n\n\ + {network_adapter_translation}: {adapter}\n\n\ + Als je zeker weet dat je verbonden bent met het internet, probeer dan een andere adapter te kiezen." + ), }) } @@ -724,6 +743,11 @@ pub fn waiting_translation<'a>(language: Language, adapter: &str) -> Text<'a, St {network_adapter_translation}: {adapter}\n\n\ Apa kamu yakin kamu terhubung ke internet, dan memilih adapter yang benar?" ), + Language::NL => format!( + "Er is nog geen verkeer waargenomen. Wachten op netwerkpakketten...\n\n\ + {network_adapter_translation}: {adapter}\n\n\ + Weet je zeker dat je verbonden bent met het internet en de juiste adapter hebt geselecteerd?" + ), }) } @@ -838,6 +862,11 @@ pub fn some_observed_translation<'a>(language: Language, observed: u128) -> Text Paket yg difilter: 0\n\n\ Beberapa paket dilacak, tetapi tidak ada yg terlihat berdasarkan filter yang kamu pilih..." ), + Language::NL => format!( + "Totaal aantal onderschepte pakketten: {observed}\n\n\ + Gefilterde pakketten: 0\n\n\ + Er zijn enkele pakketten onderschept, maar nog geen enkele is geselecteerd volgens de filters die je hebt opgegeven..." + ), }) } @@ -865,6 +894,7 @@ pub fn some_observed_translation<'a>(language: Language, observed: u128) -> Text // Language::UZ => "Filtrlangan paketlar", // Language::VI => "Các gói tin đã được lọc", // Language::ID => "Paket data tersaring", +// Language::NL => "Gefilterde pakketten", // } // } @@ -891,6 +921,7 @@ pub fn some_observed_translation<'a>(language: Language, observed: u128) -> Text // Language::UZ => "Filtrlangan baytlar", // Language::VI => "Các bytes đã được lọc", // Language::ID => "Bytes tersaring", +// Language::NL => "Gefilterde bytes", // } // } @@ -934,6 +965,7 @@ pub fn some_observed_translation<'a>(language: Language, observed: u128) -> Text // Language::UZ => format!("(Jami: {percentage} )"), // Language::VI => format!("({percentage} trên tổng cộng)"), // Language::ID => format!("({percentage} dari total)"), +// Language::NL => format!("({percentage} van het totaal)"), // } // } @@ -958,6 +990,7 @@ pub fn some_observed_translation<'a>(language: Language, observed: u128) -> Text // Language::SE => "Filtrerade paket per applikationsprotokoll:", // Language::UZ => "Har bir dastur protokoli uchun filtrlangan paketlar:", // Language::ID => "Paket data tersaring dari setiap protokol aplikasi:", +// Language::NL => "Gefilterde pakketten per applicatieprotocol:", // }) // } @@ -1000,6 +1033,8 @@ pub fn some_observed_translation<'a>(language: Language, observed: u128) -> Text // Ulanishni sevimlilar ro'yhatiga qo'shish uchun ulanish yaqinidagi yulduzcha belgisini bosing." // Language::ID => "Tidak ada yang ditampilkan untuk saatini.\n\ // untuk menambah koneksi ke favorit, klik dilogo bintang dekat dengan koneksi.", +// Language::NL => "Niets om te laten zien op dit moment.\n\ +// Om een verbinding toe te voegen aan je favorieten, klik op het ster symbool naast de verbinding.", // }) // } @@ -1093,6 +1128,10 @@ pub fn error_translation(language: Language, error: &str) -> Text { "Terjadi kesalahan! \n\n\ {error}" ), + Language::NL => format!( + "Er is een fout opgetreden! \n\n\ + {error}" + ), }) } @@ -1118,6 +1157,7 @@ pub fn error_translation(language: Language, error: &str) -> Text { // Language::JA => "両方", // Language::UZ => "ikkalasi ham", // Language::ID => "keduanya", +// Language::NL => "beide", // } // } @@ -1136,6 +1176,7 @@ pub fn error_translation(language: Language, error: &str) -> Text { // Language::UZ => "Barcha protokollar", // Language::UK => "Усі протоколи", // Language::ID => "Semua protokol", +// Language::NL => "Alle protocollen", // } // } @@ -1161,6 +1202,7 @@ pub fn error_translation(language: Language, error: &str) -> Text { // Language::JA => "すべて", // Language::UZ => "Barchasi", // Language::ID => "Semua", +// Language::NL => "Alle", // } // } @@ -1186,6 +1228,7 @@ pub fn packets_translation(language: Language) -> &'static str { Language::JA => "パケット", Language::UZ => "paketlar", Language::VI => "các gói tin", + Language::NL => "pakketten", } } @@ -1213,6 +1256,7 @@ pub fn packets_translation(language: Language) -> &'static str { // Language::UZ => "paket soniyasiga", // Language::VI => "gói tin trên giây", // Language::ID => "paket per detik", +// Language::NL => "pakketten per seconde", // } // } @@ -1226,6 +1270,7 @@ pub fn bytes_translation(language: Language) -> &'static str { | Language::SV | Language::VI | Language::ID + | Language::NL | Language::DE => "bytes", Language::FR => "octets", Language::PL => "bajty", @@ -1265,6 +1310,7 @@ pub fn bytes_translation(language: Language) -> &'static str { // Language::UZ => "bayt soniyasiga", // Language::VI => "byte trên giây", // Language::ID => "bytes per detik", +// Language::NL => "bytes per seconde", // } // } @@ -1291,6 +1337,7 @@ pub fn bytes_translation(language: Language) -> &'static str { // Language::JA => "新しい順", // Language::UZ => "eng so'nggi", // Language::ID => "paling terakhir", +// Language::NL => "meest recent", // } // } @@ -1317,6 +1364,7 @@ pub fn bytes_translation(language: Language) -> &'static str { // Language::JA => "パケット数の多い順", // Language::UZ => "eng ko'p paketlar", // Language::ID => "paket terbanyak", +// Language::NL => "meeste pakketten", // } // } @@ -1342,6 +1390,7 @@ pub fn bytes_translation(language: Language) -> &'static str { // Language::FI => "eniten tavuja", // Language::JA => "バイト量の多い順", // Language::UZ => "eng ko'p bayt", +// Language::NL => "meeste bytes", // } // } @@ -1365,6 +1414,7 @@ pub fn bytes_translation(language: Language) -> &'static str { // Language::SE => "favoriter", // Language::UZ => "sevimlilar", // Language::ID => "favorit", +// Language::NL => "favorieten", // } // } @@ -1392,6 +1442,7 @@ pub fn notifications_title_translation<'a>(language: Language) -> Text<'a, Style Language::UZ => "Bildirishnomalaringizni sozlang", Language::VI => "Tùy chỉnh thông báo của bạn", Language::ID => "Sesuaikan notifikasi Anda", + Language::NL => "Pas je meldingen aan", }) } @@ -1419,6 +1470,7 @@ pub fn appearance_title_translation<'a>(language: Language) -> Text<'a, StyleTyp Language::UZ => "Sevimli mavzuingizni tanlang", Language::VI => "Chọn chủ đề bạn muốn", Language::ID => "Pilih tema favorit Kamu", + Language::NL => "Kies je favoriete thema", }) } @@ -1446,6 +1498,7 @@ pub fn active_filters_translation(language: Language) -> &'static str { Language::UZ => "Faol filtrlar", Language::VI => "Bộ lọc đang hoạt động", Language::ID => "Filter aktif", + Language::NL => "Actieve filters", } } @@ -1473,6 +1526,7 @@ pub fn none_translation(language: Language) -> &'static str { Language::UZ => "hech biri", Language::VI => "không có", Language::ID => "Tidak ada", + Language::NL => "geen", } } @@ -1500,6 +1554,7 @@ pub fn none_translation(language: Language) -> &'static str { // Language::UZ => "Sniffnet-ning asl qora mavzusi", // Language::VI => "Chủ đề tối của Sniffnet", // Language::ID => "Tema gelap bawaan Sniffnet", +// Language::NL => "Sniffnet's originele donkere thema", // } // } @@ -1526,6 +1581,7 @@ pub fn none_translation(language: Language) -> &'static str { // Language::UZ => "Sniffnet-ning asl oq mavzusi", // Language::VI => "Chủ đề sáng của Sniffnet", // Language::ID => "Tema terang bawaan Sniffnet", +// Language::NL => "Sniffnet's originele lichte thema", // } // } @@ -1553,6 +1609,7 @@ pub fn none_translation(language: Language) -> &'static str { // Language::UZ => "Tarmoq trafigiga qo'shilish uchun", // Language::VI => "Đắm chìm vào lưu lượng mạng", // Language::ID => "Untuk mendalami lalu lintas jaringan", +// Language::NL => "Om in het netwerkverkeer te duiken", // } // } @@ -1580,6 +1637,7 @@ pub fn none_translation(language: Language) -> &'static str { // Language::UZ => "Xayolparastlar uchun chiroyli mavzu", // Language::VI => "Chủ đề mộng mơ cho những kẻ mơ mộng", // Language::ID => "Tema yang indah dibuat untuk para pemimpi", +// Language::NL => "Liefelijk thema gemaakt voor dromers", // } // } @@ -1606,6 +1664,7 @@ pub fn incoming_translation(language: Language) -> &'static str { Language::UZ => "Kiruvchi", Language::VI => "Đang tới", Language::ID => "Masuk", + Language::NL => "Inkomend", } } @@ -1632,6 +1691,7 @@ pub fn outgoing_translation(language: Language) -> &'static str { Language::UZ => "Chiquvchi", Language::VI => "Đang hướng ra ngoài", Language::ID => "Keluar", + Language::NL => "Uitgaand", } } @@ -1656,6 +1716,7 @@ pub fn notifications_translation(language: Language) -> &'static str { Language::UZ => "Bildirishnomalar", Language::VI => "Thông báo", Language::ID => "Pemberitahuan", + Language::NL => "Notificaties", } } @@ -1678,6 +1739,7 @@ pub fn style_translation(language: Language) -> &'static str { Language::UZ => "Uslub", Language::VI => "Chủ đề", Language::ID => "Gaya", + Language::NL => "Stijl", } } @@ -1705,6 +1767,7 @@ pub fn language_translation(language: Language) -> &'static str { Language::UZ => "Til", Language::VI => "Ngôn ngữ", Language::ID => "Bahasa", + Language::NL => "Taal", } } @@ -1732,6 +1795,7 @@ pub fn overview_translation(language: Language) -> &'static str { Language::UZ => "Ko'rib chiqish", Language::VI => "Tổng quan", Language::ID => "Ringkasan", + Language::NL => "Overzicht", } } @@ -1759,6 +1823,7 @@ pub fn overview_translation(language: Language) -> &'static str { // Language::UZ => "Paket chegarasi oshib ketganda xabar bering", // Language::VI => "Báo cho tôi biết khi vượt quá ngưỡng gói tin", // Language::ID => "Beritahu saya ketika ambang batas paket terlampaui", +// Language::NL => "Geef me een melding wanneer een pakketdrempel is overschreden", // } // } @@ -1786,6 +1851,7 @@ pub fn overview_translation(language: Language) -> &'static str { // Language::UZ => "Bayt chegarasi oshib ketganda menga xabar bering", // Language::VI => "Báo cho tôi biết khi vượt quá ngưỡng bytes", // Language::ID => "Beritahu saya ketika ambang batas bytes terlampaui", +// Language::NL => "Geef me een melding wanneer een byte-drempel is overschreden", // } // } @@ -1810,6 +1876,7 @@ pub fn per_second_translation(language: Language) -> &'static str { Language::UZ => "(soniyasiga)", Language::VI => "(trên giây)", Language::ID => "(per detik)", + Language::NL => "(per seconde)", } } @@ -1837,6 +1904,7 @@ pub fn per_second_translation(language: Language) -> &'static str { // Language::UZ => "'K', 'M' va 'G' ni ham belgilashingiz mumkin", // Language::VI => "bạn cũng có thể chọn 'K', 'M' and 'G'", // Language::ID => "Anda juga dapat menentukan 'K', 'M' dan 'G'", +// Language::NL => "je kunt ook 'K', 'M' en 'G' specificeren", // } // } @@ -1866,6 +1934,7 @@ pub fn per_second_translation(language: Language) -> &'static str { // Language::UZ => "Sevimlilar ro'yhatidan yangi ma'lumotlar almashganda xabar bering", // Language::VI => "Báo cho tôi biết khi dữ liệu mới được trao đổi từ mục yêu thích của tôi", // Language::ID => "Beritahu saya ketika data baru dipertukarkan dari favorit saya", +// Language::NL => "Geef me een melding wanneer nieuwe gegevens worden uitgewisseld van mijn favorieten", // } // } @@ -1893,12 +1962,13 @@ pub fn threshold_translation(language: Language) -> &'static str { Language::UZ => "Eshik", Language::VI => "Ngưỡng", Language::ID => "Ambang batas", + Language::NL => "Grens", } } pub fn volume_translation(language: Language) -> &'static str { match language { - Language::EN | Language::IT | Language::FR | Language::PT => "Volume", + Language::EN | Language::IT | Language::FR | Language::PT | Language::NL => "Volume", Language::ES => "Volumen", Language::PL => "Głośność", Language::DE => "Lautstärke", @@ -1941,6 +2011,7 @@ pub fn sound_translation(language: Language) -> &'static str { Language::UZ => "Ovoz", Language::VI => "Âm thanh", Language::ID => "Suara", + Language::NL => "Geluid", } } @@ -1968,6 +2039,7 @@ pub fn bytes_exceeded_translation(language: Language) -> &'static str { Language::UZ => "Bayt chegarasidan oshib ketdi", Language::VI => "Bytes đã vượt ngưỡng", Language::ID => "Ambang batas byte terlampaui", + Language::NL => "Byte-drempel overschreden", } } @@ -1995,6 +2067,7 @@ pub fn bytes_exceeded_translation(language: Language) -> &'static str { // Language::UZ => format!("{value} ma'lumot almashinuvi"), // Language::VI => format!("{value} đã được trao đổi"), // Language::ID => format!("{value} telah dipertukarkan"), +// Language::NL => format!("{value} zijn uitgewisseld"), // } // } @@ -2022,6 +2095,7 @@ pub fn packets_exceeded_translation(language: Language) -> &'static str { Language::UZ => "Paket chegarasidan oshib ketdi", Language::VI => "Gói tin đã vượt ngưỡng", Language::ID => "Ambang batas paket terlampaui", + Language::NL => "Pakketdrempel overschreden", } } @@ -2073,6 +2147,7 @@ pub fn packets_exceeded_translation(language: Language) -> &'static str { // Language::UZ => format!("{value} paket uzatildi"), // Language::VI => format!("{value} gói tin đã được trao đổi"), // Language::ID => format!("{value} paket telah dipertukarkan"), +// Language::NL => format!("{value} pakketten zijn uitgewisseld"), // } // } @@ -2100,6 +2175,7 @@ pub fn favorite_transmitted_translation(language: Language) -> &'static str { Language::UZ => "Sevimli ulanishlar ro'yhatida yangi ma'lumotlar almashinuvi", Language::VI => "Mục ưa thích vừa có trao đổi", Language::ID => "Data baru dipertukarkan dari favorit", + Language::NL => "Nieuwe gegevens uitgewisseld van favorieten", } } @@ -2214,6 +2290,11 @@ pub fn no_notifications_set_translation<'a>(language: Language) -> Text<'a, Styl Setelah mengaktifkannya, halaman ini akan menampilkan log notifikasi Anda\n\n\ Anda dapat mengaktifkan notifikasi dari pengaturan:" } + Language::NL => { + "Je hebt nog geen meldingen ingeschakeld!\n\n\ + Nadat je ze hebt ingeschakeld, zal deze pagina een logboek van je meldingen weergeven\n\n\ + Je kunt meldingen inschakelen vanuit de instellingen:" + } }) } @@ -2307,6 +2388,10 @@ pub fn no_notifications_received_translation<'a>(language: Language) -> Text<'a, "Tidak ada yang bisa dilihat saat ini...\n\n\ Saat Anda menerima pemberitahuan, akan ditampilkan di sini" } + Language::NL => { + "Er is momenteel niets te zien...\n\n\ + Wanneer je een melding ontvangt, wordt deze hier weergegeven" + } }) } @@ -2334,5 +2419,6 @@ pub fn only_last_30_translation(language: Language) -> &'static str { Language::UZ => "Faqat oxirgi 30 ta bildirishnoma ko'rsatiladi", Language::VI => "Chỉ có 30 thông báo gần nhất được hiển thị", Language::ID => "Hanya 30 notifikasi terakhir yang ditampilkan", + Language::NL => "Alleen de laatste 30 meldingen worden weergegeven", } } diff --git a/src/translations/translations_2.rs b/src/translations/translations_2.rs index 97dc6417a..66c3a981c 100644 --- a/src/translations/translations_2.rs +++ b/src/translations/translations_2.rs @@ -26,6 +26,7 @@ pub fn new_version_available_translation(language: Language) -> &'static str { Language::PT => "Uma nova versão está disponível!", Language::VI => "Phiên bản mới đã sẵn sàng!", Language::ID => "Versi baru tersedia!", + Language::NL => "Een nieuwere versie is beschikbaar!", } } @@ -52,6 +53,7 @@ pub fn inspect_translation(language: Language) -> &'static str { Language::PT => "Inspecionar", Language::VI => "Quan sát", Language::ID => "Memeriksa", + Language::NL => "Inspecteren", _ => "Inspect", } } @@ -79,6 +81,7 @@ pub fn connection_details_translation(language: Language) -> &'static str { Language::PT => "Detalhes da conexão", Language::VI => "Thông tin kết nối", Language::ID => "Rincian koneksi", + Language::NL => "Verbindingsdetails", _ => "Connection details", } } @@ -106,6 +109,7 @@ pub fn dropped_translation(language: Language) -> &'static str { Language::UZ => "Yig'ilgan", Language::VI => "Mất", Language::ID => "Dihapus", + Language::NL => "Verloren", _ => "Dropped", } } @@ -133,6 +137,7 @@ pub fn data_representation_translation(language: Language) -> &'static str { Language::PT => "Representação dos dados", Language::VI => "Miêu tả dữ liệu", Language::ID => "Penyajian ulang data", + Language::NL => "Gegevensweergave", _ => "Data representation", } } @@ -160,6 +165,7 @@ pub fn host_translation(language: Language) -> &'static str { Language::PT => "Host da rede", Language::VI => "Máy chủ", Language::ID => "Jaringan asal", + Language::NL => "Netwerk host", _ => "Network host", } } @@ -187,6 +193,7 @@ pub fn only_top_30_items_translation(language: Language) -> &'static str { Language::PT => "Apenas os 30 melhores unid são expostos aqui", Language::VI => "Chỉ có 30 mục gần nhất được hiển thị ở đây", Language::ID => "Hanya 30 teratas yang ditampilkan disini", + Language::NL => "Alleen de bovenste 30 items worden hier weergegeven", _ => "Only the top 30 items are displayed here", } } @@ -212,6 +219,7 @@ pub fn only_top_30_items_translation(language: Language) -> &'static str { // Language::JA => "ソート", // Language::UZ => "Saralash turi", // Language::ID => "Urut berdasarkan", +// Language::NL => "Sorteren op", // _ => "Sort by", // } // } @@ -239,6 +247,7 @@ pub fn local_translation(language: Language) -> &'static str { Language::PT => "Rede local", Language::VI => "Mạng nội bộ", Language::ID => "Jaringan lokal", + Language::NL => "Lokaal netwerk", _ => "Local network", } } @@ -266,6 +275,7 @@ pub fn unknown_translation(language: Language) -> &'static str { Language::PT => "Localização desconhecida", Language::VI => "Không rõ địa điểm", Language::ID => "Lokasi tidak diketahui", + Language::NL => "Onbekende locatie", _ => "Unknown location", } } @@ -293,6 +303,7 @@ pub fn your_network_adapter_translation(language: Language) -> &'static str { Language::PT => "Seu adaptador de rede", Language::VI => "Network adapter của bạn", Language::ID => "Adaptor jaringan kamu", + Language::NL => "Uw netwerkadapter", _ => "Your network adapter", } } @@ -320,6 +331,7 @@ pub fn socket_address_translation(language: Language) -> &'static str { Language::PT => "Endereço da socket", Language::VI => "Địa chỉ socket", Language::ID => "Alamat sambungan", + Language::NL => "Socket adres", _ => "Socket address", } } @@ -347,6 +359,7 @@ pub fn mac_address_translation(language: Language) -> &'static str { Language::PT => "Endereço MAC", Language::VI => "Địa chỉ MAC", Language::ID => "Alamat MAC", + Language::NL => "MAC-adres", _ => "MAC address", } } @@ -374,6 +387,7 @@ pub fn source_translation(language: Language) -> &'static str { Language::PT => "Fonte", Language::VI => "Nguồn", Language::ID => "Asal", + Language::NL => "Bron", _ => "Source", } } @@ -399,6 +413,7 @@ pub fn destination_translation(language: Language) -> &'static str { Language::UZ => "Qabul qiluvchi", Language::VI => "Đích", Language::ID => "Tujuan", + Language::NL => "Bestemming", _ => "Destination", } } @@ -425,6 +440,7 @@ pub fn fqdn_translation(language: Language) -> &'static str { Language::PT => "Nome de domínio completo", Language::VI => "Tên miền đầy đủ", Language::ID => "Nama domain yang memenuhi syarat", + Language::NL => "Volledig gekwalificeerde domeinnaam", _ => "Fully qualified domain name", } } @@ -452,6 +468,7 @@ pub fn administrative_entity_translation(language: Language) -> &'static str { Language::PT => "Entidade administrativa", Language::VI => "Tên Autonomous System", Language::ID => "Nama System Otomatis", + Language::NL => "Naam van het autonome systeem", _ => "Autonomous System name", } } @@ -479,6 +496,7 @@ pub fn transmitted_data_translation(language: Language) -> &'static str { Language::PT => "Dados transmitidos", Language::VI => "Dữ liệu được truyền", Language::ID => "Data terkirim", + Language::NL => "Verzonden gegevens", _ => "Transmitted data", } } @@ -505,6 +523,7 @@ pub fn country_translation(language: Language) -> &'static str { Language::UZ => "Davlat", Language::VI => "Quốc gia", Language::ID => "Negara", + Language::NL => "Land", _ => "Country", } } @@ -532,6 +551,7 @@ pub fn domain_name_translation(language: Language) -> &'static str { Language::PT => "Nome do domínio", Language::VI => "Tên miền", Language::ID => "Nama Domain", + Language::NL => "Domeinnaam", _ => "Domain name", } } @@ -559,6 +579,7 @@ pub fn only_show_favorites_translation(language: Language) -> &'static str { Language::PT => "Apenas mostrar os favoritos", Language::VI => "Chỉ hiển thị mục ưa thích", Language::ID => "Hanya tunjukkan favorit", + Language::NL => "Toon alleen favorieten", _ => "Only show favorites", } } @@ -585,6 +606,7 @@ pub fn only_show_favorites_translation(language: Language) -> &'static str { // Language::UZ => "Qidiruv filtrlari", // Language::PT => "Filtros de busca", // Language::ID => "Filter Pencarian", +// Language::NL => "Zoekfilters", // _ => "Search filters", // } // } @@ -612,6 +634,7 @@ pub fn no_search_results_translation(language: Language) -> &'static str { Language::PT => "Nenhum resultado disponível de acordo com os filtros selecionados", Language::VI => "Không có kết quả nào theo các bộ lọc được chỉ định", Language::ID => "Tidak ada hasil berdasarkan filter pencarian spesifik", + Language::NL => "Geen resultaten beschikbaar volgens de opgegeven zoekfilters", _ => "No result available according to the specified search filters", } } @@ -644,6 +667,9 @@ pub fn showing_results_translation( Language::PT => format!("Mostrando {start}-{end} de {total} resultados totais"), Language::VI => format!("Đang hiển thị {start}-{end} của {total} tổng số kết quả"), Language::ID => format!("Menampilkan {start}-{end} dari {total} semua hasil"), + Language::NL => { + format!("{start}-{end} van de {total} totale resultaten worden weergegeven") + } _ => format!("Showing {start}-{end} of {total} total results"), } } @@ -672,6 +698,7 @@ pub fn color_gradients_translation(language: Language) -> &'static str { Language::PT => "Aplicar gradientes de cor", Language::VI => "Áp dụng color gradients", Language::ID => "Aplikasikan gradasi warna", + Language::NL => "Kleurverlopen toepassen", _ => "Apply color gradients", } } diff --git a/src/translations/translations_3.rs b/src/translations/translations_3.rs index 25f5e4918..3cfe33c45 100644 --- a/src/translations/translations_3.rs +++ b/src/translations/translations_3.rs @@ -27,6 +27,7 @@ pub fn general_translation(language: Language) -> &'static str { Language::PT => "Geral", Language::UK => "Загальні", Language::ID => "Umum", + Language::NL => "Algemeen", _ => "General", } } @@ -40,6 +41,7 @@ pub fn zoom_translation(language: Language) -> &'static str { | Language::DE | Language::RO | Language::PT + | Language::NL | Language::SV => "Zoom", // Language::FA => "بزرگنمایی", Language::PL => "Powiększenie", @@ -79,6 +81,7 @@ pub fn mmdb_files_translation(language: Language) -> &'static str { Language::PT => "Arquivos da base de dados", Language::UK => "Файли бази даних", Language::ID => "Berkas database", + Language::NL => "Database bestanden", _ => "Database files", } } @@ -105,6 +108,7 @@ pub fn params_not_editable_translation(language: Language) -> &'static str { Language::PT => "Os seguintes parâmetros não podem ser modificados durante a análise", Language::UK => "Наступні параметри не можна змінювати під час аналізу трафіку", Language::ID => "Parameter berikut tidak bisa diubah saat dianalisa", + Language::NL => "De volgende parameters kunnen niet worden aangepast tijdens de analyse", _ => "The following parameters can't be modified during the analysis", } } @@ -130,6 +134,7 @@ pub fn custom_style_translation(language: Language) -> &'static str { Language::TR => "Kişisel görünüm", Language::UK => "Власний стиль", Language::ID => "Ubah Model", + Language::NL => "Aangepaste stijl", _ => "Custom style", } } @@ -154,6 +159,7 @@ pub fn copy_translation(language: Language) -> &'static str { Language::PT => "Copiar", Language::UK => "Копіювати", Language::ID => "Salin", + Language::NL => "Kopiëren", _ => "Copy", } } @@ -179,6 +185,7 @@ pub fn port_translation(language: Language) -> &'static str { Language::KO => "포트", Language::UK => "Порт", Language::ID => "Port", + Language::NL => "Poort", _ => "Port", } } @@ -204,6 +211,7 @@ pub fn invalid_filters_translation(language: Language) -> &'static str { Language::TR => "Geçersiz filtreler", Language::UK => "Неправильний формат фільтрів", Language::ID => "Filter salah", + Language::NL => "Ongeldige filters", _ => "Invalid filters", } } @@ -229,13 +237,14 @@ pub fn messages_translation(language: Language) -> &'static str { Language::PT => "Mensagens", Language::UK => "Повідомлення", Language::ID => "Pesan", + Language::NL => "Berichten", _ => "Messages", } } pub fn link_type_translation(language: Language) -> &'static str { match language { - Language::EN => "Link type", + Language::EN | Language::NL => "Link type", // Language::FA => "نوع پیوند", Language::ES => "Tipo de conexión", Language::IT => "Tipo di collegamento", @@ -312,6 +321,9 @@ pub fn unsupported_link_type_translation<'a>( Language::ID => { "Tipe koneksi yang terhubung dengan adaptor ini belum didukung oleh Sniffnet" } + Language::NL => { + "Het linktype dat is gekoppeld aan deze adapter wordt nog niet ondersteund door Sniffnet..." + } _ => "The link type associated with this adapter is not supported by Sniffnet yet...", }; @@ -343,6 +355,7 @@ pub fn style_from_file_translation(language: Language) -> &'static str { Language::PT => "Selecionar estilo a partir de um arquivo", Language::UK => "Виберіть стиль з файлу", Language::ID => "Pilih model / gaya dari berkas", + Language::NL => "Selecteer stijl vanuit een bestand", _ => "Select style from a file", } } @@ -369,6 +382,7 @@ pub fn database_from_file_translation(language: Language) -> &'static str { Language::PT => "Selecione um arquivo de base de dados", Language::UK => "Виберіть файл бази даних", Language::ID => "Pilih berkas database", + Language::NL => "Selecteer database bestand", _ => "Select database file", } } @@ -395,6 +409,7 @@ pub fn filter_by_host_translation(language: Language) -> &'static str { Language::PT => "Filtrar por host de rede", Language::UK => "Фільтр за хостом мережі", Language::ID => "Filter berdasarkan jaringan asal", + Language::NL => "Filteren op netwerk host", _ => "Filter by network host", } } @@ -418,6 +433,7 @@ pub fn service_translation(language: Language) -> &'static str { Language::PT => "Serviço", Language::UK => "Сервіс", Language::ID => "Layanan", + Language::NL => "Dienst", _ => "Service", } } @@ -444,6 +460,7 @@ pub fn export_capture_translation(language: Language) -> &'static str { Language::UK => "Експорт файлу захоплення", Language::ID => "Ekspor data tangkapan", Language::ES => "Exportar archivo de captura", + Language::NL => "Exporteer capture bestand", _ => "Export capture file", } } @@ -469,6 +486,7 @@ pub fn directory_translation(language: Language) -> &'static str { Language::UK => "Тека", Language::ID => "Direktori", Language::ES => "Directorio", + Language::NL => "Map", _ => "Directory", } } @@ -495,6 +513,7 @@ pub fn select_directory_translation(language: Language) -> &'static str { Language::UK => "Виберіть теку призначення", Language::ID => "Pilih direktori tujuan", Language::ES => "Selecciona el directorio de destino", + Language::NL => "Selecteer doelmap", _ => "Select destination directory", } } @@ -521,6 +540,7 @@ pub fn file_name_translation(language: Language) -> &'static str { Language::UK => "Назва файлу", Language::ID => "Nama berkas", Language::ES => "Nombre del archivo", + Language::NL => "Bestandsnaam", _ => "File name", } } @@ -546,6 +566,7 @@ pub fn thumbnail_mode_translation(language: Language) -> &'static str { Language::PT | Language::ES => "Modo miniatura", Language::UK => "Режим мініатюри", Language::ID => "Mode gambar kecil", + Language::NL => "Miniatuur modus", _ => "Thumbnail mode", } } @@ -572,6 +593,7 @@ pub fn thumbnail_mode_translation(language: Language) -> &'static str { // Language::UK => "Бажаєте дізнатись більше?", // Language::ID => "Apakah kamu mau belajar lebih lanjut?", // Language::ES => "¿Quieres aprender más?", +// Language::NL => "Wil je meer leren?", // _ => "Do you want to learn more?", // } // } diff --git a/src/translations/translations_4.rs b/src/translations/translations_4.rs index 41f96f856..895ae240c 100644 --- a/src/translations/translations_4.rs +++ b/src/translations/translations_4.rs @@ -12,6 +12,7 @@ pub fn reserved_address_translation(language: Language, info: &str) -> String { Language::PT => format!("Endereço reservado ({info})"), Language::UK => format!("Зарезервована адреса ({info})"), Language::ZH_TW => format!("保留的網路位址 ({info})"), + Language::NL => format!("Gereserveerd adres ({info})"), _ => format!("Reserved address ({info})"), } } @@ -21,6 +22,7 @@ pub fn share_feedback_translation(language: Language) -> &'static str { Language::EN => "Share your feedback", Language::IT => "Condividi il tuo feedback", Language::ZH_TW => "分享您的意見回饋", + Language::NL => "Deel uw feedback", _ => "Share your feedback", } } @@ -31,6 +33,7 @@ pub fn excluded_translation(language: Language) -> &'static str { Language::EN => "Excluded", Language::IT => "Esclusi", Language::ZH_TW => "已排除", + Language::NL => "Uitgesloten", _ => "Excluded", } } @@ -39,6 +42,7 @@ pub fn import_capture_translation(language: Language) -> &'static str { match language { Language::EN => "Import capture file", Language::IT => "Importa file di cattura", + Language::NL => "Importeer capture bestand", _ => "Import capture file", } } @@ -47,6 +51,7 @@ pub fn select_capture_translation(language: Language) -> &'static str { match language { Language::EN => "Select capture file", Language::IT => "Seleziona file di cattura", + Language::NL => "Selecteer capture bestand", _ => "Select capture file", } } @@ -64,6 +69,11 @@ pub fn reading_from_pcap_translation<'a>(language: Language, file: &str) -> Text {file_name_translation}: {file}\n\n\ Sei sicuro che il file che hai selezionato non sia vuoto?" ), + Language::NL => format!( + "Pakketten lezen uit bestand...\n\n\ + {file_name_translation}: {file}\n\n\ + Weet je zeker dat het geselecteerde bestand niet leeg is?" + ), _ => format!( "Reading packets from file...\n\n\ {file_name_translation}: {file}\n\n\ @@ -76,6 +86,7 @@ pub fn data_exceeded_translation(language: Language) -> &'static str { match language { Language::EN => "Data threshold exceeded", Language::IT => "Soglia di dati superata", + Language::NL => "Gegevenslimiet overschreden", _ => "Data threshold exceeded", } } @@ -85,6 +96,7 @@ pub fn bits_exceeded_translation(language: Language) -> &'static str { match language { Language::EN => "Bits threshold exceeded", Language::IT => "Soglia di bit superata", + Language::NL => "Bits limiet overschreden", _ => "Bits threshold exceeded", } } @@ -93,6 +105,7 @@ pub fn bits_exceeded_translation(language: Language) -> &'static str { pub fn bits_translation(language: Language) -> &'static str { match language { Language::EN | Language::IT => "Bits", + Language::NL => "Bits", _ => "Bits", } } @@ -102,6 +115,7 @@ pub fn pause_translation(language: Language) -> &'static str { match language { Language::EN => "Pause", Language::IT => "Pausa", + Language::NL => "Pauzeren", _ => "Pause", } } @@ -111,6 +125,7 @@ pub fn resume_translation(language: Language) -> &'static str { match language { Language::EN => "Resume", Language::IT => "Riprendi", + Language::NL => "Hervatten", _ => "Resume", } } diff --git a/src/translations/types/language.rs b/src/translations/types/language.rs index b80b814bb..2126c2af1 100644 --- a/src/translations/types/language.rs +++ b/src/translations/types/language.rs @@ -6,8 +6,8 @@ use serde::{Deserialize, Serialize}; use crate::StyleType; use crate::countries::flags_pictures::{ - CN, DE, ES, FI, FLAGS_WIDTH_BIG, FR, GB, GR, ID, IT, JP, KR, PL, PT, RO, RU, SE, TR, TW, UA, - UZ, VN, + CN, DE, ES, FI, FLAGS_WIDTH_BIG, FR, GB, GR, ID, IT, JP, KR, NL, PL, PT, RO, RU, SE, TR, TW, + UA, UZ, VN, }; /// This enum defines the available languages. @@ -59,10 +59,12 @@ pub enum Language { VI, /// Indonesian ID, + /// Dutch + NL, } impl Language { - pub const ALL: [Language; 21] = [ + pub const ALL: [Language; 22] = [ Language::EN, Language::DE, Language::EL, @@ -73,6 +75,7 @@ impl Language { Language::IT, Language::JA, Language::KO, + Language::NL, Language::PL, Language::PT, Language::RO, @@ -110,12 +113,13 @@ impl Language { Language::UZ => UZ, Language::VI => VN, Language::ID => ID, + Language::NL => NL, }))) .width(FLAGS_WIDTH_BIG) } pub fn is_up_to_date(self) -> bool { - matches!(self, Language::EN | Language::IT) + matches!(self, Language::EN | Language::IT | Language::NL) } } @@ -144,6 +148,7 @@ impl fmt::Display for Language { Language::UZ => "O'zbekcha", Language::VI => "Tiếng Việt", Language::ID => "Bahasa Indonesia", + Language::NL => "Nederlands", }; write!(f, "{self:?} - {lang_str}") }