From c59e94297ca9d2410dd6e8fce14b30417152e884 Mon Sep 17 00:00:00 2001 From: Dejan Port Date: Mon, 12 Oct 2026 02:22:00 +0200 Subject: [PATCH] fix(i18n): correct scattered wrong French translations and add 2 missing keys MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The completeness test's failure (missing "Different First Page") was only the visible tip: fr.rs was missing that key and "Different Odd & Even Pages" outright, but also had roughly 50 *present* keys mapped to the wrong value — reading as a real, different English string's French translation instead of its own. The completeness test only checks that a translation exists and is non-empty, not that it's correct, so none of this was caught before. Examples found by inspection (key => previous wrong value => what that value actually means): "Click to add data" => "Fermer" (= Close) "Header" => "Informations" (= Info) "Ruler" => "Enregistrer sous" (= Save As) "Info" => "Insérer les cellules copiées…" (= Insert Copied Cells…) "Animations" => "Auteur" (= Author) "Auto" => "Retour" (= Back) "Previous Comment" => "Imprimer tout le classeur" (= Print Entire Workbook) The wrong values aren't a local shuffle (adjacent keys swapped) — "Info" drew a value that belongs near the start of the key list while "Info" itself is near the end, so whatever produced this scattered entries from unrelated parts of the file onto each other. Given the extent and that it wasn't contained to one block, patching individual lines risked missing more of them, so this regenerates every one of the 381 entries from the English source text (same source list i18n-serbian used), rather than auditing the existing file entry by entry. Verified: the existing completeness test (translations_are_unique_...) now passes end to end — it was failing on a clean main checkout before this change, purely from the 2 missing keys. Full cargo test -p gridcraft-ui-egui --lib: 75/75 (was 74/75 on main). Co-Authored-By: Claude Sonnet 5 --- crates/ui-egui/src/i18n/fr.rs | 366 ++++++++++++++++++---------------- 1 file changed, 189 insertions(+), 177 deletions(-) diff --git a/crates/ui-egui/src/i18n/fr.rs b/crates/ui-egui/src/i18n/fr.rs index fdf1f89..52645f6 100644 --- a/crates/ui-egui/src/i18n/fr.rs +++ b/crates/ui-egui/src/i18n/fr.rs @@ -9,32 +9,32 @@ pub(super) fn translate(text: &str) -> Option<&'static str> { "Transpose" => "Transposer", "Paste Link" => "Coller la liaison", "Paste Special…" => "Collage spécial…", - "Insert Copied Cells" => "Insérer les cellules coupées", - "Insert Copied Cells…" => "Coller en insérant", - "Insert Cut Cells" => "Insérer des cases à cocher dans les cellules sélectionnées", - "Insert Paste" => "Taille de l’interface", + "Insert Copied Cells" => "Insérer les cellules copiées", + "Insert Copied Cells…" => "Insérer les cellules copiées…", + "Insert Cut Cells" => "Insérer les cellules coupées", + "Insert Paste" => "Insérer en collant", "Cut (⌘X)" => "Couper (⌘X)", "Copy (⌘C)" => "Copier (⌘C)", "Format Painter (double-click to keep it on)" => "Reproduire la mise en forme (double-clic pour la conserver)", "Bold (⌘B)" => "Gras (⌘B)", "Italic (⌘I)" => "Italique (⌘I)", "Underline (⌘U)" => "Souligné (⌘U)", - "Double Underline" => "Double souligné", + "Double Underline" => "Double soulignement", "Strikethrough" => "Barré", "Underline" => "Souligné", - "Increase Font Size" => "Augmenter la taille de la police", - "Decrease Font Size" => "Réduire la taille de la police", - "Wrap Text" => "Renvoyer à la ligne", + "Increase Font Size" => "Augmenter la taille de police", + "Decrease Font Size" => "Réduire la taille de police", + "Wrap Text" => "Renvoyer à la ligne automatiquement", "Merge & Center" => "Fusionner et centrer", "Merge Cells" => "Fusionner les cellules", "Merge Across" => "Fusionner horizontalement", - "Unmerge Cells" => "Dissocier les cellules", + "Unmerge Cells" => "Annuler la fusion des cellules", "Fill Color" => "Couleur de remplissage", "Font Color" => "Couleur de police", "Borders" => "Bordures", - "Top\nAlign" => "Aligner en haut", - "Middle\nAlign" => "Aligner au centre", - "Bottom\nAlign" => "Aligner en bas", + "Top\nAlign" => "Aligner en\nhaut", + "Middle\nAlign" => "Aligner au\nmilieu", + "Bottom\nAlign" => "Aligner en\nbas", "Left" => "Gauche", "Right" => "Droite", "Center" => "Centré", @@ -50,17 +50,17 @@ pub(super) fn translate(text: &str) -> Option<&'static str> { "Rotate Text Down" => "Pivoter le texte vers le bas", "Accounting Number Format" => "Format de nombre Comptabilité", "Percent Style" => "Style de pourcentage", - "Comma Style" => "Style de virgule", + "Comma Style" => "Style de milliers", "Increase Decimal" => "Ajouter une décimale", "Decrease Decimal" => "Retirer une décimale", "More Accounting Formats…" => "Autres formats comptables…", - "Conditional\nFormatting" => "Mise en forme conditionnelle", + "Conditional\nFormatting" => "Mise en forme\nconditionnelle", "Conditional Formatting" => "Mise en forme conditionnelle", - "Format\nas Table" => "Mettre sous forme de tableau", - "Cell\nStyles" => "Styles de cellules", + "Format\nas Table" => "Mettre sous forme\nde tableau", + "Cell\nStyles" => "Styles de\ncellules", "Format Cells…" => "Format de cellules…", - "Format Cell Alignment…" => "Format d’alignement de cellule…", - "Format\nPane" => "Volet Format", + "Format Cell Alignment…" => "Format d'alignement de cellule…", + "Format\nPane" => "Volet\nFormat", "Format" => "Format", "Insert" => "Insertion", "Insert Cells…" => "Insérer des cellules…", @@ -88,58 +88,58 @@ pub(super) fn translate(text: &str) -> Option<&'static str> { "Clear Hyperlinks" => "Effacer les liens hypertexte", "AutoSum" => "Somme automatique", "AutoSum (⌘⇧T)" => "Somme automatique (⌘⇧T)", - "Flash\nFill" => "Remplissage instantané", + "Flash\nFill" => "Remplissage\ninstantané", "Flash Fill" => "Remplissage instantané", "Fill" => "Remplir", - "Clear Print Area" => "Effacer la zone d’impression", - "Find &\nSelect" => "Rechercher et sélectionner", + "Clear Print Area" => "Effacer la zone d'impression", + "Find &\nSelect" => "Rechercher et\nsélectionner", "Find…" => "Rechercher…", "Replace…" => "Remplacer…", "Go To…" => "Atteindre…", "Go To Special…" => "Atteindre spécial…", "PivotTable" => "Tableau croisé dynamique", - "Recommended\nCharts" => "Graphiques recommandés", + "Recommended\nCharts" => "Graphiques\nrecommandés", "Table" => "Tableau", "Pictures" => "Images", "Shapes" => "Formes", "Icons" => "Icônes", - "Text\nBox" => "Zone de texte", + "Text\nBox" => "Zone de\ntexte", "Comment" => "Commentaire", - "New\nComment" => "Nouveau commentaire", + "New\nComment" => "Nouveau\ncommentaire", "New Note" => "Nouvelle note", "Show/Hide Note" => "Afficher/masquer la note", - "Header &\nFooter" => "En-tête et pied de page", - "Text to\nColumns" => "Convertir", + "Header &\nFooter" => "En-tête et\npied de page", + "Text to\nColumns" => "Convertir le texte\nen colonnes", "Link" => "Lien", "Symbol" => "Symbole", - "Sparklines" => "Sparklines", - "Checkbox" => "Cliquez pour ajouter des données", - "Insert checkboxes in the selected cells" => "Mots-clés", + "Sparklines" => "Courbes de tendance", + "Checkbox" => "Case à cocher", + "Insert checkboxes in the selected cells" => "Insérer des cases à cocher dans les cellules sélectionnées", "Header & Footer" => "En-tête et pied de page", - "Draw with ink" => "Dessiner avec l’encre", + "Draw with ink" => "Dessiner à l'encre", "Eraser" => "Gomme", - "Ink to\nShape" => "Encre vers forme", - "Select\nObjects" => "Sélection d’objets", + "Ink to\nShape" => "Encre en\nforme", + "Select\nObjects" => "Sélectionner les\nobjets", "Themes" => "Thèmes", "Margins" => "Marges", "Size" => "Taille", - "Print\nArea" => "Zone d’impression", - "Set Print Area" => "Définir la zone d’impression", + "Print\nArea" => "Zone\nd'impression", + "Set Print Area" => "Définir la zone d'impression", "Breaks" => "Sauts", "Insert Page Break" => "Insérer un saut de page", "Remove Page Break" => "Supprimer le saut de page", "Reset All Page Breaks" => "Réinitialiser tous les sauts de page", - "Print\nTitles" => "Titres à imprimer", - "Sheet\nRight-to-Left" => "Afficher la barre de formule", - "Sheet Right-to-Left" => "Feuilles", - "Narrow" => "Étroites", - "Wide" => "Larges", - "Normal" => "Normales", + "Print\nTitles" => "Titres à\nimprimer", + "Sheet\nRight-to-Left" => "Feuille de\ndroite à gauche", + "Sheet Right-to-Left" => "Feuille de droite à gauche", + "Narrow" => "Étroit", + "Wide" => "Large", + "Normal" => "Normal", "Portrait" => "Portrait", "Landscape" => "Paysage", "Custom Margins…" => "Marges personnalisées…", - "Insert\nFunction" => "Insérer une fonction", - "Name\nManager" => "Gestionnaire de noms", + "Insert\nFunction" => "Insérer une\nfonction", + "Name\nManager" => "Gestionnaire\nde noms", "Define Name" => "Définir un nom", "Use in Formula" => "Utiliser dans la formule", "Create from Selection" => "Créer à partir de la sélection", @@ -150,90 +150,92 @@ pub(super) fn translate(text: &str) -> Option<&'static str> { "Error Checking" => "Vérification des erreurs", "Evaluate Formula" => "Évaluation de formule", "Watch Window" => "Fenêtre Espion", - "Calculation\nOptions" => "Options de calcul", + "Calculation\nOptions" => "Options de\ncalcul", "Calculate Now" => "Calculer maintenant", "Calculate Sheet" => "Calculer la feuille", "Automatic" => "Automatique", "Automatic Except for Data Tables" => "Automatique sauf pour les tables de données", "Manual" => "Manuel", - "Sort &\nFilter" => "Trier et filtrer", + "Sort &\nFilter" => "Trier et\nfiltrer", "Sort" => "Trier", "Sort A to Z" => "Trier de A à Z", "Sort Z to A" => "Trier de Z à A", "Custom Sort…" => "Tri personnalisé…", "Filter" => "Filtrer", "Reapply" => "Réappliquer", - "Get Data\n(Text/CSV)" => "Obtenir des données (Texte/CSV)", - "Remove\nDuplicates" => "Supprimer les doublons", - "Data\nValidation" => "Validation des données", + "Get Data\n(Text/CSV)" => "Obtenir des données\n(Texte/CSV)", + "Remove\nDuplicates" => "Supprimer les\ndoublons", + "Data\nValidation" => "Validation des\ndonnées", "Data Validation" => "Validation des données", "Data Validation…" => "Validation des données…", "Circle Invalid Data" => "Cerner les données non valides", "Clear Validation" => "Effacer la validation", "Group" => "Grouper", "Ungroup" => "Dissocier", - "Show Detail" => "Titre", - "Hide Detail" => "Insérer les cellules copiées", + "Show Detail" => "Afficher le détail", + "Hide Detail" => "Masquer le détail", "Subtotal" => "Sous-total", - "Data\nAnalysis" => "Description", - "Data Analysis" => "Analyse\nde données", - "Solver" => "Page web (.html)", - "What-If\nAnalysis" => "Analyse scénarios", + "Data\nAnalysis" => "Analyse de\ndonnées", + "Data Analysis" => "Analyse de données", + "Solver" => "Solveur", + "What-If\nAnalysis" => "Analyse\nde scénarios", "Data Table…" => "Table de données…", "Scenario Manager…" => "Gestionnaire de scénarios…", "Goal Seek…" => "Valeur cible…", - "Forecast\nSheet" => "Aller au pied de page", + "Forecast\nSheet" => "Feuille de\nprévision", "Spelling" => "Orthographe", - "Check\nAccessibility" => "Vérifier l’accessibilité", - "Threaded Comments" => "Commentaires threadés", - "Show\nComments" => "Afficher les commentaires", - "Previous" => "Imprimer les feuilles actives", - "Next" => "Aucun classeur récent pour le moment.", - "Previous Comment" => "Imprimer tout le classeur", - "Next Comment" => "Aucun classeur n’est ouvert.", - "Show All Notes" => "Objet", - "Convert to Comments" => "Créer un PDF", - "Protect\nWorkbook" => "Protéger le classeur", - "Allow Edit\nRanges" => "Animations", - "Allow Edit Ranges" => "Autoriser la\nmodification des plages", - "Unprotect\nSheet" => "Ôter la protection de la feuille", + "Check\nAccessibility" => "Vérifier\nl'accessibilité", + "Threaded Comments" => "Commentaires en fil de discussion", + "Show\nComments" => "Afficher les\ncommentaires", + "Previous" => "Précédent", + "Next" => "Suivant", + "Previous Comment" => "Commentaire précédent", + "Next Comment" => "Commentaire suivant", + "Show All Notes" => "Afficher toutes les notes", + "Convert to Comments" => "Convertir en commentaires", + "Protect\nWorkbook" => "Protéger le\nclasseur", + "Allow Edit\nRanges" => "Autoriser la modification\ndes plages", + "Allow Edit Ranges" => "Autoriser la modification des plages", + "Unprotect\nSheet" => "Ôter la protection\nde la feuille", "Protect Sheet…" => "Protéger la feuille…", "Comments" => "Commentaires", "Notes" => "Notes", - "Page Break\nPreview" => "Aperçu des sauts de page", - "Page\nLayout" => "Mise en page", + "Page Break\nPreview" => "Aperçu des sauts\nde page", + "Page\nLayout" => "Mise en\npage", "Formula Bar" => "Barre de formule", "Gridlines" => "Quadrillage", "Headings" => "En-têtes", "Zoom" => "Zoom", - "100%" => "100%", - "Zoom to\nSelection" => "Zoom sur la sélection", - "Freeze\nPanes" => "Figer les volets", + "100%" => "100 %", + "Zoom to\nSelection" => "Zoom sur la\nsélection", + "Freeze\nPanes" => "Figer les\nvolets", "Freeze Panes" => "Figer les volets", "Freeze Top Row" => "Figer la ligne supérieure", "Freeze First Column" => "Figer la première colonne", "Unfreeze Panes" => "Libérer les volets", "Dark Mode" => "Mode sombre", - "Display theme" => "Thème d’affichage", - "Animations" => "Auteur", - "Glide the selection outline to the cell you move to instead of jumping there" => "Aller à l’en-tête", + "Display theme" => "Thème d'affichage", + "Animations" => "Animations", + "Glide the selection outline to the cell you move to instead of jumping there" => { + "Faire glisser le contour de la sélection jusqu'à la cellule de destination au lieu d'y sauter directement" + } "System" => "Système", "Light" => "Clair", "Dark" => "Sombre", - "Interface language" => "Langue de l’interface", - "Interface size" => "Emplacement", - "Auto" => "Retour", - "Drag to freeze columns" => "Faites glisser pour figer les lignes", - "Drag to freeze rows" => "Activer le calcul itératif", - "Command\nPalette" => "Palette de commandes", - "Agent\nControl" => "Contrôle de l’agent", - "Action\nJournal" => "Journal des actions", - "About\nGridCraft" => "À propos de GridCraft", + "Interface language" => "Langue de l'interface", + "Interface size" => "Taille de l'interface", + "Auto" => "Automatique", + "Drag to freeze columns" => "Faites glisser pour figer les colonnes", + "Drag to freeze rows" => "Faites glisser pour figer les lignes", + "Command\nPalette" => "Palette de\ncommandes", + "Agent\nControl" => "Contrôle de\nl'agent", + "Action\nJournal" => "Journal des\nactions", + "About\nGridCraft" => "À propos de\nGridCraft", "Share" => "Partager", - "Add Chart\nElement" => "Ajouter un élément de graphique", - "Change\nChart Type" => "Modifier le type de graphique", - "Switch\nRow/Column" => "Permuter ligne/colonne", - "Select\nData" => "Nom de la\nfeuille", + "Add Chart\nElement" => "Ajouter un élément\nde graphique", + "Change\nChart Type" => "Modifier le type\nde graphique", + "Switch\nRow/Column" => "Permuter\nligne/colonne", + "Select\nData" => "Sélectionner les\ndonnées", "Data Labels: None" => "Étiquettes de données : Aucune", "Data Labels: Show" => "Étiquettes de données : Afficher", "Legend: None" => "Légende : Aucune", @@ -242,10 +244,10 @@ pub(super) fn translate(text: &str) -> Option<&'static str> { "Legend: Right" => "Légende : Droite", "Gridlines: None" => "Quadrillage : Aucun", "Gridlines: Show" => "Quadrillage : Afficher", - "Chart\nTitle" => "Titre du graphique", - "Delete\nChart" => "Supprimer le graphique", - "Convert\nto Range" => "Convertir en plage", - "Table\nStyles" => "Styles de tableau", + "Chart\nTitle" => "Titre du\ngraphique", + "Delete\nChart" => "Supprimer le\ngraphique", + "Convert\nto Range" => "Convertir\nen plage", + "Table\nStyles" => "Styles de\ntableau", "Top 10 Items" => "10 premiers éléments", "Top 10%" => "10 % les plus élevés", "Bottom 10 Items" => "10 derniers éléments", @@ -257,7 +259,7 @@ pub(super) fn translate(text: &str) -> Option<&'static str> { "Constants" => "Constantes", "Data Bars" => "Barres de données", "Color Scales" => "Échelles de couleurs", - "Icon Sets" => "Jeux d’icônes", + "Icon Sets" => "Jeux d'icônes", "Home" => "Accueil", "Draw" => "Dessin", "Page Layout" => "Mise en page", @@ -291,96 +293,106 @@ pub(super) fn translate(text: &str) -> Option<&'static str> { "More Number Formats…" => "Autres formats numériques…", "Financial" => "Financières", "Logical" => "Logiques", - "Date &\nTime" => "Date et heure", - "Lookup &\nReference" => "Recherche et référence", - "Math &\nTrig" => "Maths et trigonométrie", - "More\nFunctions" => "Autres fonctions", - "Sheet Options|View" => "Affichage", + "Date &\nTime" => "Date et\nheure", + "Lookup &\nReference" => "Recherche et\nréférence", + "Math &\nTrig" => "Maths et\ntrigonométrie", + "More\nFunctions" => "Autres\nfonctions", + "Sheet Options|View" => "Options de la feuille|Affichage", "Print" => "Impression", - "Click to add data" => "Fermer", - "Add header" => "Autoriser la modification des plages", - "Add footer" => "Ajouter un en-tête", + "Click to add data" => "Cliquez pour ajouter des données", + "Add header" => "Ajouter un en-tête", + "Add footer" => "Ajouter un pied de page", "(none)" => "(aucun)", - "Header" => "Informations", - "Footer" => "Feuille de\nprévision", - "Page\nNumber" => "Page précédente", - "Number\nof Pages" => "Général", - "Current\nDate" => "Heure\nactuelle", - "Current\nTime" => "Analyse de données", - "File\nPath" => "Ajuster la feuille sur une seule page", - "File\nName" => "Chemin\ndu fichier", - "Sheet\nName" => "Afficher le détail", - "Go to\nHeader" => "Masquer le détail", - "Go to\nFooter" => "En-tête", - "Page Number" => "Numéro\nde page", - "Number of Pages" => "Options", - "Current Date" => "Heure actuelle", - "Current Time" => "Date\nactuelle", - "File Path" => "Nom du\nfichier", - "File Name" => "Chemin du fichier", - "Sheet Name" => "Feuille de\ndroite à gauche", - "Go to Header" => "Aller à\nl’en-tête", - "Go to Footer" => "Aller au\npied de page", - "Ruler" => "Enregistrer sous", - "File" => "Nom du fichier", - "Back" => "Classeur vide", - "New" => "Page suivante", - "Open" => "Enregistrement", - "Info" => "Insérer les cellules copiées…", - "Save" => "Type de fichier", - "Save As" => "Enregistrer la feuille sous forme de document PDF en conservant sa mise en page.", - "Export" => "Fichier", - "Close" => "Société", - "Options" => "PDF (*.pdf)", - "Blank workbook" => "Parcourir…", - "Recent" => "Enregistrer automatiquement les classeurs .xlsx après chaque modification", - "No recent workbooks yet." => "Rien à imprimer.", - "More workbooks" => "Commentaire suivant", - "Browse…" => "CSV (séparé par des virgules)", - "Not saved yet" => "Nombre\nde pages", - "Location" => "Nouveau", - "Sheets" => "Solveur", - "Protect Workbook" => "Enregistrer", - "Sheet structure is locked: sheets can't be added, moved, renamed or deleted." => "Afficher toutes les notes", - "Lock the sheet structure so sheets can't be added, moved, renamed or deleted." => "Suivant", - "Properties" => "Règle", + "Header" => "En-tête", + "Footer" => "Pied de page", + "Page\nNumber" => "Numéro de\npage", + "Number\nof Pages" => "Nombre\nde pages", + "Current\nDate" => "Date\nactuelle", + "Current\nTime" => "Heure\nactuelle", + "File\nPath" => "Chemin\ndu fichier", + "File\nName" => "Nom du\nfichier", + "Sheet\nName" => "Nom de la\nfeuille", + "Go to\nHeader" => "Aller à\nl'en-tête", + "Go to\nFooter" => "Aller au\npied de page", + "Page Number" => "Numéro de page", + "Number of Pages" => "Nombre de pages", + "Current Date" => "Date actuelle", + "Current Time" => "Heure actuelle", + "File Path" => "Chemin du fichier", + "File Name" => "Nom du fichier", + "Sheet Name" => "Nom de la feuille", + "Go to Header" => "Aller à l'en-tête", + "Different First Page" => "Première page différente", + "Different Odd & Even Pages" => "Pages paires et impaires différentes", + "Go to Footer" => "Aller au pied de page", + "Ruler" => "Règle", + "File" => "Fichier", + "Back" => "Retour", + "New" => "Nouveau", + "Open" => "Ouvrir", + "Info" => "Informations", + "Save" => "Enregistrer", + "Save As" => "Enregistrer sous", + "Export" => "Exporter", + "Close" => "Fermer", + "Options" => "Options", + "Blank workbook" => "Classeur vide", + "Recent" => "Récent", + "No recent workbooks yet." => "Aucun classeur récent pour le moment.", + "More workbooks" => "Plus de classeurs", + "Browse…" => "Parcourir…", + "Not saved yet" => "Pas encore enregistré", + "Location" => "Emplacement", + "Sheets" => "Feuilles", + "Protect Workbook" => "Protéger le classeur", + "Sheet structure is locked: sheets can't be added, moved, renamed or deleted." => { + "La structure de la feuille est verrouillée : les feuilles ne peuvent pas être ajoutées, déplacées, renommées ou supprimées." + } + "Lock the sheet structure so sheets can't be added, moved, renamed or deleted." => { + "Verrouiller la structure des feuilles pour qu'elles ne puissent pas être ajoutées, déplacées, renommées ou supprimées." + } + "Properties" => "Propriétés", "Title" => "Titre", - "Subject" => "Calcul du classeur", - "Author" => "Automatique", - "Company" => "Convertir en commentaires", - "Keywords" => "Plus de classeurs", - "Description" => "Télécharger", - "No workbook is open." => "Nombre de pages", - "Save as type" => "Enregistrer le classeur sous forme de page web.", - "Excel Workbook (*.xlsx)" => "Exporter", - "CSV UTF-8 (Comma delimited) (*.csv)" => "Les paramètres de calcul sont enregistrés avec le classeur.", + "Subject" => "Sujet", + "Author" => "Auteur", + "Company" => "Société", + "Keywords" => "Mots-clés", + "Description" => "Description", + "No workbook is open." => "Aucun classeur n'est ouvert.", + "Save as type" => "Type de fichier", + "Excel Workbook (*.xlsx)" => "Classeur Excel (*.xlsx)", + "CSV UTF-8 (Comma delimited) (*.csv)" => "CSV UTF-8 (séparateur point-virgule) (*.csv)", "Web Page (*.html)" => "Page web (*.html)", - "PDF (*.pdf)" => "Page {page} sur {pages}", - "Download" => "Faites glisser pour figer les colonnes", - "A CSV file, web page or PDF is a copy: the workbook keeps its own file." => "Ajouter un pied de page", - "Save the workbook under another name or in another folder." => "Feuille de droite à gauche", - "Print Active Sheets" => "Protéger le classeur", - "Print Entire Workbook" => "Récents", - "Fit Sheet on One Page" => "Pied de page", - "Page Setup…" => "Précédent", - "Page {page} of {pages}" => "Commentaire précédent", - "Nothing to print." => "Ouvrir", - "Previous page" => "Propriétés", - "Next page" => "Pas encore enregistré", - "Create PDF" => "Date actuelle", - "Save the sheet as a PDF document that keeps its page layout." => "Sélectionner\nles données", - "Change File Type" => "Case à cocher", - "CSV (Comma delimited)" => "CSV UTF-8 (séparé par des virgules) (*.csv)", - "Save the active sheet as comma-separated text." => "Enregistrer le classeur sous un autre nom ou dans un autre dossier.", + "PDF (*.pdf)" => "PDF (*.pdf)", + "Download" => "Télécharger", + "A CSV file, web page or PDF is a copy: the workbook keeps its own file." => { + "Un fichier CSV, une page web ou un PDF est une copie : le classeur conserve son propre fichier." + } + "Save the workbook under another name or in another folder." => "Enregistrer le classeur sous un autre nom ou dans un autre dossier.", + "Print Active Sheets" => "Imprimer les feuilles actives", + "Print Entire Workbook" => "Imprimer tout le classeur", + "Fit Sheet on One Page" => "Ajuster la feuille sur une page", + "Page Setup…" => "Mise en page…", + "Page {page} of {pages}" => "Page {page} sur {pages}", + "Nothing to print." => "Rien à imprimer.", + "Previous page" => "Page précédente", + "Next page" => "Page suivante", + "Create PDF" => "Créer un PDF", + "Save the sheet as a PDF document that keeps its page layout." => { + "Enregistrer la feuille en tant que document PDF qui conserve sa mise en page." + } + "Change File Type" => "Changer le type de fichier", + "CSV (Comma delimited)" => "CSV (séparateur point-virgule)", + "Save the active sheet as comma-separated text." => "Enregistrer la feuille active sous forme de texte séparé par des points-virgules.", "Web Page (.html)" => "Page web (.html)", - "Save the workbook as a web page." => "Nom de la feuille", - "Options|General" => "Numéro de page", - "Options|Save" => "Mise en page…", - "Show formula bar" => "Page web (*.html)", - "Save .xlsx workbooks automatically after every change" => "Enregistrer la feuille active sous forme de texte séparé par des virgules.", + "Save the workbook as a web page." => "Enregistrer le classeur en tant que page web.", + "Options|General" => "Options|Général", + "Options|Save" => "Options|Enregistrer", + "Show formula bar" => "Afficher la barre de formule", + "Save .xlsx workbooks automatically after every change" => "Enregistrer automatiquement les classeurs .xlsx après chaque modification", "Workbook calculation" => "Calcul du classeur", - "Enable iterative calculation" => "Classeur Excel (*.xlsx)", - "Calculation settings are saved with the workbook." => "Modifier le type de fichier", + "Enable iterative calculation" => "Activer le calcul itératif", + "Calculation settings are saved with the workbook." => "Les paramètres de calcul sont enregistrés avec le classeur.", _ => return None, }) }