From 2910480decc8b0b71e32873b68af35ac4935b9e6 Mon Sep 17 00:00:00 2001 From: Antoine C Date: Wed, 8 Feb 2023 10:39:41 +0000 Subject: [PATCH] chore: adding french translation --- src/enums/language.rs | 5 ++- src/utility/translations.rs | 84 +++++++++++++++++++++++++++++++++++++ 2 files changed, 88 insertions(+), 1 deletion(-) diff --git a/src/enums/language.rs b/src/enums/language.rs index d7b5c7e18..91eef940d 100644 --- a/src/enums/language.rs +++ b/src/enums/language.rs @@ -7,6 +7,8 @@ pub enum Language { EN, /// Italian. IT, + /// French. + FR, } impl Default for Language { @@ -16,12 +18,13 @@ impl Default for Language { } impl Language { - pub(crate) const ALL: [Language; 2] = [Language::EN, Language::IT]; + pub(crate) const ALL: [Language; 3] = [Language::EN, Language::IT, Language::FR]; pub fn get_radio_label(&self) -> &str { match self { Language::EN => "English", Language::IT => "Italiano", + Language::FR => "Français", } } } diff --git a/src/utility/translations.rs b/src/utility/translations.rs index 95047d7d9..ce094b4b1 100644 --- a/src/utility/translations.rs +++ b/src/utility/translations.rs @@ -5,6 +5,7 @@ pub fn choose_adapters_translation(language: Language) -> Text<'static> { Text::new(match language { Language::EN => "Select network adapter to inspect", Language::IT => "Seleziona la scheda di rete da ispezionare", + Language::FR => "Séléctionez une carte réseau à inspecter", }) } @@ -12,6 +13,7 @@ pub fn application_protocol_translation(language: Language) -> &'static str { match language { Language::EN => "Application protocol", Language::IT => "Protocollo applicativo", + Language::FR => "Protocol applicatif", } } @@ -19,6 +21,7 @@ pub fn select_filters_translation(language: Language) -> Text<'static> { Text::new(match language { Language::EN => "Select filters to be applied on network traffic", Language::IT => "Seleziona i filtri da applicare al traffico di rete", + Language::FR => "Séléctionez les filtres à appliquer sur le traffic reseau", }) } @@ -26,6 +29,7 @@ pub fn start_translation(language: Language) -> &'static str { match language { Language::EN => "Start!", Language::IT => "Avvia!", + Language::FR => "Commencer!", } } @@ -33,6 +37,7 @@ pub fn address_translation(language: Language) -> &'static str { match language { Language::EN => "\nAddress:", Language::IT => "\nIndirizzo:", + Language::FR => "\nAdresse:", } } @@ -40,6 +45,7 @@ pub fn addresses_translation(language: Language) -> &'static str { match language { Language::EN => "\nAddresses:", Language::IT => "\nIndirizzi:", + Language::FR => "\nAdresses:", } } @@ -47,6 +53,7 @@ pub fn ip_version_translation(language: Language) -> Text<'static> { Text::new(match language { Language::EN => "IP version", Language::IT => "Versione IP", + Language::FR => "Version IP", }) } @@ -54,6 +61,7 @@ pub fn transport_protocol_translation(language: Language) -> &'static str { match language { Language::EN => "Transport protocol", Language::IT => "Protocollo di trasporto", + Language::FR => "Protocole de transport", } } @@ -61,6 +69,7 @@ pub fn traffic_rate_translation(language: Language) -> Text<'static> { Text::new(match language { Language::EN => "Traffic rate:", Language::IT => "Intensità del traffico:", + Language::FR => "Fréquence du traffic:", }) } @@ -68,6 +77,7 @@ pub fn relevant_connections_translation(language: Language) -> Text<'static> { Text::new(match language { Language::EN => "Relevant connections:", Language::IT => "Connessioni rilevanti:", + Language::FR => "Connexions pertinentes:", }) } @@ -75,6 +85,7 @@ pub fn settings_translation(language: Language) -> &'static str { match language { Language::EN => "Settings", Language::IT => "Impostazioni", + Language::FR => "Paramètres", } } @@ -82,6 +93,7 @@ pub fn yes_translation(language: Language) -> Text<'static> { Text::new(match language { Language::EN => "Yes", Language::IT => "Sì", + Language::FR => "Oui", }) } @@ -89,6 +101,7 @@ pub fn ask_quit_translation(language: Language) -> Text<'static> { Text::new(match language { Language::EN => "Are you sure you want to quit this analysis?", Language::IT => "Sei sicuro di voler interrompere questa analisi?", + Language::FR => "Etes-vous sûre de vouloir quitter l'application ?", }) } @@ -96,6 +109,7 @@ pub fn quit_analysis_translation(language: Language) -> String { match language { Language::EN => "Quit analysis".to_string(), Language::IT => "Interrompi analisi".to_string(), + Language::FR => "Quitter l'analyse".to_string(), } } @@ -103,6 +117,7 @@ pub fn ask_clear_all_translation(language: Language) -> Text<'static> { Text::new(match language { Language::EN => "Are you sure you want to clear notifications?", Language::IT => "Sei sicuro di voler eliminare le notifiche?", + Language::FR => "Etes-vous sûre de vouloir vider les notifications ?", }) } @@ -110,6 +125,7 @@ pub fn clear_all_translation(language: Language) -> String { match language { Language::EN => "Clear all".to_string(), Language::IT => "Elimina tutte".to_string(), + Language::FR => "Tous vider".to_string(), } } @@ -117,6 +133,7 @@ pub fn hide_translation(language: Language) -> &'static str { match language { Language::EN => "Hide", Language::IT => "Nascondi", + Language::FR => "Masquer", } } @@ -128,6 +145,9 @@ pub fn no_addresses_translation(language: Language, adapter: &str) -> Text<'stat Language::IT => format!("Non è osservabile alcun traffico perché l'adattatore di rete selezionato non ha indirizzi attivi...\n\n\ Adattatore di rete: {adapter}\n\n\ Se sei sicuro di essere connesso ad internet, prova a scegliere un adattatore diverso."), + Language::FR => format!("Aucun traffic ne peut être observé car la carte réseau que vous avez saisit n'a pas d'adresse...\n\n\ + carte réseau: {adapter}\n\n\ + Si vous étes sûre d'être connecté à internet, essayez une autre carte."), }) } @@ -139,6 +159,9 @@ pub fn waiting_translation(language: Language, adapter: &str) -> Text<'static> { Language::IT => format!("Nessun tipo di traffico è stato osservato finora. Attendo pacchetti di rete...\n\n\ Adattatore di rete: {adapter}\n\n\ Sei sicuro di esser connesso ad internet e di aver selezionato l'adattatore corretto?"), + Language::FR => format!("Aucun traffic n'a été capturé pour le moment. En attente de paquets...\n\n\ + carte réseau: {adapter}\n\n\ + Etes-vous sûre d'être connecté à internet et d'avoir selectionné la bonne carte réseau ?"), }) } @@ -154,6 +177,9 @@ pub fn some_observed_translation( Language::IT => format!("Totale pacchetti intercettati: {observed}\n\n\ Pacchetti filtrati: 0\n\n\ Alcuni pacchetti sono stati intercettati, ma ancora nessuno è stato selezionato secondo i filtri specificati...\n\n{filters}"), + Language::FR => format!("Total des paquets interceptés: {observed}\n\n\ + Paquets filtrés: 0\n\n\ + Certains paquets ont été intercepté, mais aucun ne satisfait les critères des filtres séléctionnés...\n\n{filters}"), }) } @@ -165,6 +191,7 @@ pub fn filtered_packets_translation( Text::new(match language { Language::EN => format!("Filtered packets:\n {filtered} ({percentage} of the total)"), Language::IT => format!("Pacchetti filtrati:\n {filtered} ({percentage} del totale)"), + Language::FR => format!("Paquets filtrés:\n {filtered} ({percentage} du total)"), }) } @@ -176,6 +203,7 @@ pub fn filtered_bytes_translation( Text::new(match language { Language::EN => format!("Filtered bytes:\n {filtered} ({percentage} of the total)"), Language::IT => format!("Byte filtrati:\n {filtered} ({percentage} del totale)"), + Language::FR => format!("Octets filtrés:\n {filtered} ({percentage} du total)"), }) } @@ -183,6 +211,7 @@ pub fn filtered_application_translation(language: Language) -> Text<'static> { Text::new(match language { Language::EN => "Filtered packets per application protocol:", Language::IT => "Pacchetti filtrati per protocollo applicativo:", + Language::FR => "Paquets filtrés par protocal applicatif:", }) } @@ -192,6 +221,8 @@ pub fn no_favorites_translation(language: Language) -> Text<'static> { To add a connection to your favorites, click on the star symbol near the connection.", Language::IT => "Nulla da vedere per il momento.\n\ Per aggiungere una connessione ai tuoi preferiti, clicca sul simbolo della stella vicino alla connessione.", + Language::FR => "Rien a voir pour le moment.\n\ + Pour ajouter une connection à vos favoris, cliquez sur l'étoile à côté de la connexion.", }) } @@ -205,6 +236,10 @@ pub fn error_translation(language: Language, error: &str) -> Text<'static> { "Si è verificato un errore! \n\n\ {error}" ), + Language::FR => format!( + "Une erreur est survenue! \n\n\ + {error}" + ), }) } @@ -212,6 +247,7 @@ pub fn both_translation(language: Language) -> &'static str { match language { Language::EN => "both", Language::IT => "entrambi", + Language::FR => "les deux", } } @@ -219,6 +255,7 @@ pub fn both_translation(language: Language) -> &'static str { // match language { // Language::EN => "All protocols", // Language::IT => "Tutti i protocolli", +// Language::FR => "Tous les protocoles", // } // } @@ -226,6 +263,7 @@ pub fn packets_chart_translation(language: Language) -> &'static str { match language { Language::EN => "packets per second", Language::IT => "pacchetti al secondo", + Language::FR => "paquets pas seconde", } } @@ -233,6 +271,7 @@ pub fn bytes_chart_translation(language: Language) -> &'static str { match language { Language::EN => "bytes per second", Language::IT => "byte al secondo", + Language::FR => "octet par seconde", } } @@ -240,6 +279,7 @@ pub fn recent_report_translation(language: Language) -> &'static str { match language { Language::EN => "most recent", Language::IT => "più recenti", + Language::FR => "la plus récente", } } @@ -247,6 +287,7 @@ pub fn packets_report_translation(language: Language) -> &'static str { match language { Language::EN => "most packets", Language::IT => "più pacchetti", + Language::FR => "le plus de paquets", } } @@ -254,6 +295,7 @@ pub fn bytes_report_translation(language: Language) -> &'static str { match language { Language::EN => "most bytes", Language::IT => "più byte", + Language::FR => "le plus de donnée", } } @@ -261,6 +303,7 @@ pub fn favorite_report_translation(language: Language) -> &'static str { match language { Language::EN => "favorites", Language::IT => "preferiti", + Language::FR => "favouris", } } @@ -268,6 +311,7 @@ pub fn notifications_title_translation(language: Language) -> Text<'static> { Text::new(match language { Language::EN => "Customize your notifications", Language::IT => "Personalizza le tue notifiche", + Language::FR => "Pérsonnalisez vos notifications", }) } @@ -275,6 +319,7 @@ pub fn appearance_title_translation(language: Language) -> Text<'static> { Text::new(match language { Language::EN => "Choose your favorite theme", Language::IT => "Scegli il tuo tema preferito", + Language::FR => "Séléctionez votre thème préféré", }) } @@ -282,6 +327,7 @@ pub fn languages_title_translation(language: Language) -> Text<'static> { Text::new(match language { Language::EN => "Select your language", Language::IT => "Seleziona la lingua", + Language::FR => "Séléctionez votre langue", }) } @@ -289,6 +335,7 @@ pub fn active_filters_translation(language: Language) -> &'static str { match language { Language::EN => "Active filters:", Language::IT => "Filtri attivi:", + Language::FR => "Filtres actifs", } } @@ -296,6 +343,7 @@ pub fn none_translation(language: Language) -> &'static str { match language { Language::EN => "none", Language::IT => "nessuno", + Language::FR => "aucun", } } @@ -303,6 +351,7 @@ pub fn yeti_night_translation(language: Language) -> &'static str { match language { Language::EN => "Sniffnet's original dark theme", Language::IT => "Il tema scuro originale di Sniffnet", + Language::FR => "Thème original sombre de Sniffnet", } } @@ -310,6 +359,7 @@ pub fn yeti_day_translation(language: Language) -> &'static str { match language { Language::EN => "Sniffnet's original light theme", Language::IT => "Il tema chiaro originale di Sniffnet", + Language::FR => "Thème original clair de Sniffnet", } } @@ -317,6 +367,7 @@ pub fn deep_sea_translation(language: Language) -> &'static str { match language { Language::EN => "To dive into network traffic", Language::IT => "Per immergersi nel traffico di rete", + Language::FR => "Pour plonger dans votre traffic réseau", } } @@ -324,6 +375,7 @@ pub fn mon_amour_translation(language: Language) -> &'static str { match language { Language::EN => "Lovely theme made for dreamers", Language::IT => "Tema incantevole fatto per i sognatori", + Language::FR => "Thème romantique fait pour les reveurs", } } @@ -331,6 +383,7 @@ pub fn incoming_translation(language: Language) -> &'static str { match language { Language::EN => "Incoming", Language::IT => "In entrata", + Language::FR => "Entrant", } } @@ -338,6 +391,7 @@ pub fn outgoing_translation(language: Language) -> &'static str { match language { Language::EN => "Outgoing", Language::IT => "In uscita", + Language::FR => "Sortant", } } @@ -345,6 +399,7 @@ pub fn notifications_translation(language: Language) -> &'static str { match language { Language::EN => "Notifications", Language::IT => "Notifiche", + Language::FR => "Notifications", } } @@ -352,6 +407,7 @@ pub fn style_translation(language: Language) -> &'static str { match language { Language::EN => "Style", Language::IT => "Stile", + Language::FR => "Style", } } @@ -359,6 +415,7 @@ pub fn language_translation(language: Language) -> &'static str { match language { Language::EN => "Language", Language::IT => "Lingua", + Language::FR => "Langue", } } @@ -366,6 +423,7 @@ pub fn overview_translation(language: Language) -> &'static str { match language { Language::EN => "Overview", Language::IT => "Panoramica", + Language::FR => "Résumé", } } @@ -373,6 +431,7 @@ pub fn overview_translation(language: Language) -> &'static str { // match language { // Language::EN => "Inspect", // Language::IT => "Ispeziona", +// Language::FR => "Inspecter", // } // } @@ -380,6 +439,7 @@ pub fn packets_threshold_translation(language: Language) -> &'static str { match language { Language::EN => "Notify me when a packets threshold is exceeded", Language::IT => "Notificami quando una soglia di pacchetti è superata", + Language::FR => "Notifiez-moi lorsqu'un seuil de paquet est atteint", } } @@ -387,6 +447,7 @@ pub fn bytes_threshold_translation(language: Language) -> &'static str { match language { Language::EN => "Notify me when a bytes threshold is exceeded", Language::IT => "Notificami quando una soglia di byte è superata", + Language::FR => "Notifiez-moi lorsqu'un seuil de donnée est atteint", } } @@ -394,6 +455,7 @@ pub fn per_second_translation(language: Language) -> &'static str { match language { Language::EN => "(per second)", Language::IT => "(al secondo)", + Language::FR => "(par seconde)", } } @@ -401,6 +463,7 @@ pub fn specify_multiples_translation(language: Language) -> &'static str { match language { Language::EN => "; you can also specify 'K', 'M' and 'G'", Language::IT => "; puoi anche specificare 'K', 'M' e 'G'", + Language::FR => "; vous pouvez également spécifier 'K', 'M' et 'G'", } } @@ -408,6 +471,7 @@ pub fn favorite_notification_translation(language: Language) -> &'static str { match language { Language::EN => "Notify me when new data are exchanged from my favorites", Language::IT => "Notificami quando nuovi dati sono scambiati dai miei preferiti", + Language::FR => "Notifiez-moi lorsque des données sont échangées depuis mes favoris", } } @@ -415,6 +479,7 @@ pub fn threshold_translation(language: Language) -> String { match language { Language::EN => "Threshold: ".to_string(), Language::IT => "Soglia: ".to_string(), + Language::FR => "Seuil: ".to_string(), } } @@ -422,6 +487,7 @@ pub fn volume_translation(language: Language, value: u8) -> String { match language { Language::EN => format!("Volume: {value:^3}%"), Language::IT => format!("Volume: {value:^3}%"), + Language::FR => format!("Volume: {value:^3}%"), } } @@ -429,6 +495,7 @@ pub fn sound_translation(language: Language) -> &'static str { match language { Language::EN => "Sound:", Language::IT => "Suono:", + Language::FR => "Son:", } } @@ -436,6 +503,7 @@ pub fn open_report_translation(language: Language) -> &'static str { match language { Language::EN => "Open full report", Language::IT => "Apri report completo", + Language::FR => "Ouvrir le raport complet", } } @@ -443,6 +511,7 @@ pub fn bytes_exceeded_translation(language: Language) -> &'static str { match language { Language::EN => "Bytes threshold exceeded!", Language::IT => "Soglia di Byte superata!", + Language::FR => "Seuil de donnée atteint!", } } @@ -451,6 +520,7 @@ pub fn bytes_exceeded_value_translation(language: Language, value: &str) -> Stri match language { Language::EN => format!("{trimmed_value} bytes have been exchanged"), Language::IT => format!("{trimmed_value} byte sono stati scambiati"), + Language::FR => format!("{trimmed_value} octets ont été échangé"), } } @@ -458,6 +528,7 @@ pub fn packets_exceeded_translation(language: Language) -> &'static str { match language { Language::EN => "Packets threshold exceeded!", Language::IT => "Soglia di pacchetti superata!", + Language::FR => "Le seuil de paquet a été atteinte!", } } @@ -465,6 +536,10 @@ pub fn packets_exceeded_value_translation(language: Language, value: u32) -> Str match language { Language::EN => format!("{value} packets have been exchanged"), Language::IT => format!("{value} pacchetti sono stati scambiati"), + Language::FR => match value { + 1 => "1 paquet a été echangé".to_owned(), + npackets => format!("{npackets} paquets ont été echangé"), + } } } @@ -472,6 +547,7 @@ pub fn favorite_transmitted_translation(language: Language) -> &'static str { match language { Language::EN => "New data exchanged from favorites!", Language::IT => "Nuovi dati scambiati dai preferiti!", + Language::FR => "Nouvel echange de donnée depuis un favori!", } } @@ -483,6 +559,9 @@ pub fn no_notifications_set_translation(language: Language) -> Text<'static> { Language::IT => "Non hai ancora abilitato le notifiche!\n\n\ Dopo che le avrai abilitate, questa pagina mostrerà una collezione delle tue notifiche\n\n\ Puoi abilitare le notifiche dalle impostazioni:", + Language::FR => "Vous n'avez pas activé les notifications!\n\n\ + Une fois activées, cette page affichera le journal des notifications\n\n\ + Vous pouvez les activer dans les paramètres:", }) } @@ -496,6 +575,10 @@ pub fn no_notifications_received_translation(language: Language) -> Text<'static "Nulla da vedere al momento...\n\n\ Quando riceverai una notifica, essa verrà mostrata qui" } + Language::FR => { + "Rien à voir pour le moment...\n\n\ + Lorsque vous recevrez une notification, elle s'affichera ici" + } }) } @@ -503,5 +586,6 @@ pub fn only_last_30_translation(language: Language) -> &'static str { match language { Language::EN => "Only the last 30 notifications are displayed", Language::IT => "Solo le ultime 30 notifiche sono mostrate", + Language::FR => "Seulement les 30 dernières minutes sont affichées", } }