From 8a9c254a313ff973f5125e0fd03bef121475ac74 Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Sun, 1 Nov 2020 15:30:36 +0200 Subject: [PATCH] - updated the French Translation (by Olivier Cornet) - fixed issue in Corner Markers Tool that crashed the app if only one corner was checked - fixed issue in Isolation Tool where Area Isolation selection was not working --- CHANGELOG.md | 6 + appTools/ToolCorners.py | 8 +- appTools/ToolIsolation.py | 4 +- app_Main.py | 2 +- locale/fr/LC_MESSAGES/strings.mo | Bin 372708 -> 405313 bytes locale/fr/LC_MESSAGES/strings.po | 3315 ++++++++++++++---------------- 6 files changed, 1565 insertions(+), 1770 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d95e281d..7b782920 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,12 @@ CHANGELOG for FlatCAM beta ================================================= +1.11.2020 + +- updated the French Translation (by Olivier Cornet) +- fixed issue in Corner Markers Tool that crashed the app if only one corner was checked +- fixed issue in Isolation Tool where Area Isolation selection was not working + 31.10.2020 - adapted HPGL importer to work within the new app diff --git a/appTools/ToolCorners.py b/appTools/ToolCorners.py index 2786eea5..db47af59 100644 --- a/appTools/ToolCorners.py +++ b/appTools/ToolCorners.py @@ -255,8 +255,12 @@ class ToolCorners(AppTool): geo_buff_list = MultiPolygon(geo_buff_list) geo_buff_list = geo_buff_list.buffer(0) - for poly in geo_buff_list: - s_list.append(poly) + try: + for poly in geo_buff_list: + s_list.append(poly) + except TypeError: + s_list.append(geo_buff_list) + g_obj.solid_geometry = MultiPolygon(s_list) def replot(self, obj, run_thread=True): diff --git a/appTools/ToolIsolation.py b/appTools/ToolIsolation.py index 6dca407c..701c3a10 100644 --- a/appTools/ToolIsolation.py +++ b/appTools/ToolIsolation.py @@ -2322,6 +2322,8 @@ class ToolIsolation(AppTool, Gerber): # To be called after clicking on the plot. def on_mouse_release(self, event): + shape_type = self.ui.area_shape_radio.get_value() + if self.app.is_legacy is False: event_pos = event.pos # event_is_dragging = event.is_dragging @@ -2339,8 +2341,6 @@ class ToolIsolation(AppTool, Gerber): x1, y1 = curr_pos[0], curr_pos[1] - shape_type = self.area_shape_radio.get_value() - # do clear area only for left mouse clicks if event.button == 1: if shape_type == "square": diff --git a/app_Main.py b/app_Main.py index 2c319718..07ef7a93 100644 --- a/app_Main.py +++ b/app_Main.py @@ -3162,7 +3162,7 @@ class App(QtCore.QObject): self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % "French"), 2, 0) self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % "Michel Maciejewski"), 2, 1) - self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % ""), 2, 2) + self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % "Olivier Cornet"), 2, 2) self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % ""), 2, 3) # self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % "Hungarian"), 3, 0) diff --git a/locale/fr/LC_MESSAGES/strings.mo b/locale/fr/LC_MESSAGES/strings.mo index c9748e9031fe37aa443016c3d2e57b376cb935f4..e69defc78505cd7b21fcea467401470af7594974 100644 GIT binary patch delta 98939 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≠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 delta 71231 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 diff --git a/locale/fr/LC_MESSAGES/strings.po b/locale/fr/LC_MESSAGES/strings.po index bc37e413..e55c7f1f 100644 --- a/locale/fr/LC_MESSAGES/strings.po +++ b/locale/fr/LC_MESSAGES/strings.po @@ -2,12 +2,13 @@ # Copyright (C) YEAR ORGANIZATION # FIRST AUTHOR , YEAR. # Conversion micmac@MicMac.fr Ligne 2000 +# Translation completed for Beta 8.994 by oli.cornet@gmail.com - 10/2020 # msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2020-10-31 16:08+0200\n" -"PO-Revision-Date: 2020-10-31 16:08+0200\n" +"POT-Creation-Date: 2020-11-01 15:25+0200\n" +"PO-Revision-Date: 2020-11-01 15:25+0200\n" "Last-Translator: \n" "Language-Team: \n" "Language: fr\n" @@ -38,7 +39,7 @@ msgid "" "The number of gray colored rows is set in Preferences." msgstr "" "Index.\n" -"Les lignes seront grisé dans le menu.\n" +"Les lignes seront grisées dans le menu.\n" "Le nombre de lignes de couleur grises est défini dans Paramètres ." #: Bookmark.py:66 @@ -55,7 +56,7 @@ msgstr "Lien Web. Par exemple: https://your_website.org " #: Bookmark.py:78 msgid "New Bookmark" -msgstr "Nouveau Menu" +msgstr "Nouveau signet" #: Bookmark.py:97 msgid "Add Entry" @@ -83,21 +84,19 @@ msgstr "L'entrée du lien Web est vide." #: Bookmark.py:207 msgid "Either the Title or the Weblink already in the table." -msgstr "Titre ou lien Web déjà dans le tableau." +msgstr "Titre ou lien Web déjà dans la table." #: Bookmark.py:227 msgid "Bookmark added." msgstr "Signet ajouté." #: Bookmark.py:243 app_Main.py:3407 app_Main.py:3449 -#, fuzzy -#| msgid "Backup" msgid "Backup Site" -msgstr "F. Paramètres" +msgstr "Site de Sauvegarde" #: Bookmark.py:244 msgid "This bookmark can not be removed" -msgstr "Ce menu ne peut être supprimé" +msgstr "Ce signet ne peut être supprimé" #: Bookmark.py:275 msgid "Bookmark removed." @@ -109,7 +108,7 @@ msgstr "Exporter des signets" #: Bookmark.py:293 appGUI/MainGUI.py:588 msgid "Bookmarks" -msgstr "Internet" +msgstr "Signets" #: Bookmark.py:300 Bookmark.py:342 appDatabase.py:2090 appDatabase.py:2136 #: appEditors/AppExcEditor.py:1204 appEditors/AppExcEditor.py:1272 @@ -120,13 +119,13 @@ msgstr "Internet" #: appTools/ToolMove.py:269 appTools/ToolPcbWizard.py:189 #: appTools/ToolPcbWizard.py:212 appTools/ToolQRCode.py:529 #: appTools/ToolQRCode.py:578 app_Main.py:1785 app_Main.py:2801 -#: app_Main.py:4534 app_Main.py:8318 app_Main.py:8357 app_Main.py:8401 -#: app_Main.py:8427 app_Main.py:8467 app_Main.py:8492 app_Main.py:8548 -#: app_Main.py:8586 app_Main.py:8632 app_Main.py:8674 app_Main.py:8716 -#: app_Main.py:8757 app_Main.py:8799 app_Main.py:8844 app_Main.py:8905 -#: app_Main.py:8937 app_Main.py:8967 app_Main.py:9142 app_Main.py:9179 -#: app_Main.py:9222 app_Main.py:9296 app_Main.py:9352 app_Main.py:9619 -#: app_Main.py:9654 +#: app_Main.py:4534 app_Main.py:8320 app_Main.py:8359 app_Main.py:8403 +#: app_Main.py:8429 app_Main.py:8469 app_Main.py:8494 app_Main.py:8550 +#: app_Main.py:8588 app_Main.py:8634 app_Main.py:8676 app_Main.py:8718 +#: app_Main.py:8759 app_Main.py:8801 app_Main.py:8846 app_Main.py:8907 +#: app_Main.py:8939 app_Main.py:8969 app_Main.py:9144 app_Main.py:9181 +#: app_Main.py:9224 app_Main.py:9298 app_Main.py:9354 app_Main.py:9621 +#: app_Main.py:9656 msgid "Cancelled." msgstr "Annulé." @@ -134,14 +133,14 @@ msgstr "Annulé." #: appObjects/FlatCAMCNCJob.py:1679 appObjects/FlatCAMCNCJob.py:1871 #: appObjects/FlatCAMCNCJob.py:2332 appTools/ToolFilm.py:589 #: appTools/ToolFilm.py:838 appTools/ToolSolderPaste.py:1098 app_Main.py:2809 -#: app_Main.py:9589 app_Main.py:9797 app_Main.py:9932 app_Main.py:9998 -#: app_Main.py:10752 +#: app_Main.py:9591 app_Main.py:9799 app_Main.py:9934 app_Main.py:10000 +#: app_Main.py:10754 msgid "" "Permission denied, saving not possible.\n" "Most likely another app is holding the file open and not accessible." msgstr "" "Autorisation refusée, Sauvegarde impossible.\n" -"Fichier ouvert dans une autre application. Fermé le fichier." +"Fichier probablement ouvert dans une autre application. Fermer le fichier." #: Bookmark.py:319 Bookmark.py:349 msgid "Could not load bookmarks file." @@ -168,27 +167,27 @@ msgid "The user requested a graceful exit of the current task." msgstr "L'utilisateur a demandé une sortie de la tâche en cours." #: appCommon/Common.py:293 appTools/ToolCopperThieving.py:327 -#: appTools/ToolIsolation.py:1442 appTools/ToolNCC.py:1379 +#: appTools/ToolIsolation.py:1443 appTools/ToolNCC.py:1380 msgid "Click the start point of the area." msgstr "Cliquez sur le point de départ de la zone." -#: appCommon/Common.py:352 appTools/ToolNCC.py:1438 appTools/ToolPaint.py:1218 +#: appCommon/Common.py:352 appTools/ToolNCC.py:1439 appTools/ToolPaint.py:1219 msgid "Click the end point of the area." msgstr "Cliquez sur le point final de la zone." #: appCommon/Common.py:358 appCommon/Common.py:460 -#: appTools/ToolCopperThieving.py:384 appTools/ToolIsolation.py:2354 -#: appTools/ToolIsolation.py:2406 appTools/ToolNCC.py:1444 -#: appTools/ToolNCC.py:1496 appTools/ToolPaint.py:1224 -#: appTools/ToolPaint.py:1275 +#: appTools/ToolCopperThieving.py:384 appTools/ToolIsolation.py:2355 +#: appTools/ToolIsolation.py:2407 appTools/ToolNCC.py:1445 +#: appTools/ToolNCC.py:1497 appTools/ToolPaint.py:1225 +#: appTools/ToolPaint.py:1276 msgid "Zone added. Click to start adding next zone or right click to finish." msgstr "" "Zone ajoutée. Cliquez pour commencer à ajouter la zone suivante ou faites un " "clic droit pour terminer." -#: appCommon/Common.py:405 appEditors/AppGeoEditor.py:2355 -#: appTools/ToolIsolation.py:2377 appTools/ToolNCC.py:1467 -#: appTools/ToolPaint.py:1246 +#: appCommon/Common.py:405 appEditors/AppGeoEditor.py:2362 +#: appTools/ToolIsolation.py:2378 appTools/ToolNCC.py:1468 +#: appTools/ToolPaint.py:1247 msgid "Click on next Point or click right mouse button to complete ..." msgstr "" "Cliquez sur le point suivant ou cliquez avec le bouton droit de la souris " @@ -239,11 +238,11 @@ msgstr "Iso" #: appObjects/FlatCAMGeometry.py:1072 appObjects/FlatCAMGeometry.py:1202 #: appObjects/FlatCAMGerber.py:542 appObjects/FlatCAMGerber.py:689 #: appTools/ToolCutOut.py:314 appTools/ToolCutOut.py:448 -#: appTools/ToolDrilling.py:1216 appTools/ToolIsolation.py:902 -#: appTools/ToolIsolation.py:1097 appTools/ToolIsolation.py:1629 -#: appTools/ToolIsolation.py:1791 appTools/ToolIsolation.py:1984 -#: appTools/ToolMilling.py:983 appTools/ToolNCC.py:839 appTools/ToolNCC.py:1045 -#: appTools/ToolPaint.py:414 appTools/ToolPaint.py:732 camlib.py:1231 +#: appTools/ToolDrilling.py:1216 appTools/ToolIsolation.py:903 +#: appTools/ToolIsolation.py:1098 appTools/ToolIsolation.py:1630 +#: appTools/ToolIsolation.py:1792 appTools/ToolIsolation.py:1985 +#: appTools/ToolMilling.py:983 appTools/ToolNCC.py:840 appTools/ToolNCC.py:1046 +#: appTools/ToolPaint.py:415 appTools/ToolPaint.py:733 camlib.py:1231 #: camlib.py:1292 msgid "Rough" msgstr "Rugueux" @@ -261,16 +260,12 @@ msgid "Tool Name" msgstr "Nom de l'outil" #: appDatabase.py:82 -#, fuzzy -#| msgid "NCC Tool Options" msgid "Tool Description" -msgstr "Options de L'outil de la NCC" +msgstr "Description de l'outil" #: appDatabase.py:95 -#, fuzzy -#| msgid "Milling Diameter" msgid "Milling Parameters" -msgstr "Diam de fraisage" +msgstr "Paramètres de fraisage" #: appDatabase.py:108 msgid "NCC Parameters" @@ -278,29 +273,25 @@ msgstr "Paramètres NCC" #: appDatabase.py:121 msgid "Paint Parameters" -msgstr "Paramètres de Peindre" +msgstr "Paramètres de peinture" #: appDatabase.py:134 msgid "Isolation Parameters" -msgstr "Paramètres de Isolement" +msgstr "Paramètres d'isolement" #: appDatabase.py:147 -#, fuzzy -#| msgid "Film Parameters" msgid "Drilling Parameters" -msgstr "Paramètres du Film" +msgstr "Paramètres de forage" #: appDatabase.py:160 -#, fuzzy -#| msgid "Slot Parameters" msgid "Cutout Parameters" -msgstr "Paramètres de Fente" +msgstr "Paramètres de découpe" -#: appDatabase.py:210 appEditors/AppGeoEditor.py:3290 appGUI/ObjectUI.py:219 +#: appDatabase.py:210 appEditors/AppGeoEditor.py:3297 appGUI/ObjectUI.py:219 #: appGUI/ObjectUI.py:570 appGUI/ObjectUI.py:894 appGUI/ObjectUI.py:1901 #: appGUI/ObjectUI.py:2718 appGUI/ObjectUI.py:2785 #: appTools/ToolCalibration.py:929 appTools/ToolFiducials.py:683 -#: app_Main.py:7554 +#: app_Main.py:7556 msgid "Name" msgstr "Nom" @@ -312,17 +303,17 @@ msgid "" msgstr "" "Nom de l'outil.\n" "N'est pas utilisé dans l'application, cette fonction\n" -"serre de note pour les utilisateurs." +"sert de note pour les utilisateurs." -#: appDatabase.py:223 appEditors/AppExcEditor.py:2573 -#: appEditors/AppExcEditor.py:3738 appGUI/ObjectUI.py:666 +#: appDatabase.py:223 appEditors/AppExcEditor.py:2574 +#: appEditors/AppExcEditor.py:3736 appGUI/ObjectUI.py:666 #: appObjects/FlatCAMExcellon.py:908 appObjects/FlatCAMExcellon.py:1008 #: appObjects/FlatCAMObj.py:719 appObjects/FlatCAMObj.py:782 #: appTools/ToolDrilling.py:1762 appTools/ToolDrilling.py:1827 -#: appTools/ToolDrilling.py:2065 appTools/ToolIsolation.py:3035 +#: appTools/ToolDrilling.py:2065 appTools/ToolIsolation.py:3036 #: appTools/ToolMilling.py:1071 appTools/ToolMilling.py:1175 #: appTools/ToolMilling.py:1360 appTools/ToolMilling.py:1670 -#: appTools/ToolNCC.py:3908 appTools/ToolPaint.py:2830 +#: appTools/ToolNCC.py:3909 appTools/ToolPaint.py:2831 #: appTools/ToolPcbWizard.py:404 appTools/ToolProperties.py:413 #: appTools/ToolProperties.py:476 appTools/ToolSolderPaste.py:1167 #: tclCommands/TclCommandDrillcncjob.py:195 @@ -334,45 +325,45 @@ msgid "Tool Diameter." msgstr "Diamètre de l'outil." #: appDatabase.py:236 -#, fuzzy -#| msgid "Geo Tolerance" msgid "Diameter Tolerance" -msgstr "Géo Tolérance" +msgstr "Tolérance de diamètre" #: appDatabase.py:238 msgid "" "Tool tolerance. This tool will be used if the desired tool diameter\n" "is within the tolerance specified here." msgstr "" +"Tolérance d'outil. Cet outils sera utilisé si le diamètre souhaité\n" +"est dans la tolérance spécifiée ici." #: appDatabase.py:244 msgid "Min" -msgstr "" +msgstr "Min" #: appDatabase.py:246 msgid "Set the tool tolerance minimum." -msgstr "" +msgstr "Définissez la tolérance minimale de l'outil." #: appDatabase.py:258 msgid "Max" -msgstr "" +msgstr "Max" #: appDatabase.py:260 msgid "Set the tool tolerance maximum." -msgstr "" +msgstr "Définissez la tolérance maximale de l'outil." #: appDatabase.py:272 appDatabase.py:590 #: appGUI/preferences/excellon/ExcellonOptPrefGroupUI.py:46 -#: appTools/ToolMilling.py:1738 appTools/ToolNCC.py:4073 +#: appTools/ToolMilling.py:1738 appTools/ToolNCC.py:4074 msgid "Operation" msgstr "Opération" #: appDatabase.py:274 msgid "The kind of Application Tool where this tool is to be used." -msgstr "" +msgstr "Le type d'outil d'application où cet outil doit être utilisé." #: appDatabase.py:278 appDatabase.py:1786 appDatabase.py:2171 -#: appGUI/MainGUI.py:1411 app_Main.py:7552 +#: appGUI/MainGUI.py:1411 app_Main.py:7554 msgid "General" msgstr "Général" @@ -389,22 +380,22 @@ msgid "Drilling" msgstr "Forage" #: appDatabase.py:278 appDatabase.py:600 appDatabase.py:2187 -#: appTools/ToolNCC.py:4083 +#: appTools/ToolNCC.py:4084 msgid "Isolation" -msgstr "Isolé" +msgstr "Isolement" #: appDatabase.py:278 appDatabase.py:2195 appEditors/AppGeoEditor.py:531 -#: appGUI/MainGUI.py:1618 appTools/ToolPaint.py:746 +#: appGUI/MainGUI.py:1618 appTools/ToolPaint.py:747 msgid "Paint" msgstr "Peindre" -#: appDatabase.py:278 appDatabase.py:2203 appTools/ToolNCC.py:1059 +#: appDatabase.py:278 appDatabase.py:2203 appTools/ToolNCC.py:1060 msgid "NCC" msgstr "NCC" #: appDatabase.py:278 appDatabase.py:2211 appTools/ToolCutOut.py:328 msgid "Cutout" -msgstr "Découpe de PCB" +msgstr "Découpe" #: appDatabase.py:294 #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:218 @@ -412,8 +403,8 @@ msgstr "Découpe de PCB" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:303 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:322 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:284 -#: appTools/ToolIsolation.py:3438 appTools/ToolNCC.py:4361 -#: appTools/ToolPaint.py:3151 +#: appTools/ToolIsolation.py:3439 appTools/ToolNCC.py:4362 +#: appTools/ToolPaint.py:3152 msgid "Shape" msgstr "Forme" @@ -433,7 +424,7 @@ msgstr "" #: appDatabase.py:310 msgid "V-Dia" -msgstr "Diam. V" +msgstr "Diam. V" #: appDatabase.py:312 msgid "" @@ -445,7 +436,7 @@ msgstr "" #: appDatabase.py:324 msgid "V-Angle" -msgstr "Angle V" +msgstr "Angle V" #: appDatabase.py:326 msgid "" @@ -478,7 +469,7 @@ msgstr "" #: appDatabase.py:359 appGUI/ObjectUI.py:1057 msgid "Tool Offset" -msgstr "Décalage d'outil" +msgstr "Décalage outil" #: appDatabase.py:361 msgid "" @@ -491,7 +482,7 @@ msgid "" msgstr "" "Décalage d'outil.\n" "Peut être de différents types:\n" -"Chemin = décalage zéro\n" +"Chemin = Pas de décalage\n" "Intérieur = décalé à l'intérieur de la moitié du diamètre de l'outil\n" "Extérieur = décalé à l'extérieur de la moitié du diamètre de l'outil\n" "Personnalisé = décalage personnalisé à l'aide de la valeur de décalage " @@ -522,7 +513,7 @@ msgstr "" #: appTools/ToolCalculators.py:240 appTools/ToolCutOut.py:2115 #: appTools/ToolDrilling.py:2143 appTools/ToolMilling.py:1793 msgid "Cut Z" -msgstr "Gravure Z" +msgstr "Profondeur Z" #: appDatabase.py:397 msgid "" @@ -530,11 +521,11 @@ msgid "" "The depth at which to cut into material." msgstr "" "Profondeur de coupe.\n" -"Profondeur de la gravure." +"Profondeur à laquelle couper dans le matériau." #: appDatabase.py:409 appDatabase.py:957 msgid "MultiDepth" -msgstr "Plusieurs Passes" +msgstr "Multi passes" #: appDatabase.py:411 msgid "" @@ -544,20 +535,19 @@ msgid "" msgstr "" "Profondeur multi.\n" "La sélection de cette option permettra de couper en plusieurs passes,\n" -"chaque passe en ajoutant une profondeur de Gravure DPP (profondeur par " -"passe)." +"chaque passe augmentant la profondeur de coupe." #: appDatabase.py:422 appDatabase.py:973 msgid "DPP" -msgstr "DPP" +msgstr "PPP" #: appDatabase.py:424 appDatabase.py:975 msgid "" "DPP. Depth per Pass.\n" "The value used to cut into material on each pass." msgstr "" -"DPP. Profondeur par passe.\n" -"La valeur utilisée pour graver le matériau à chaque passage." +"PPP. Profondeur par passe.\n" +"La valeur utilisée pour couper dans le matériau à chaque passage." #: appDatabase.py:436 appDatabase.py:989 appGUI/ObjectUI.py:1249 #: appGUI/ObjectUI.py:1652 @@ -685,17 +675,12 @@ msgid "Dwell" msgstr "Démarrage" #: appDatabase.py:555 appDatabase.py:1072 -#, fuzzy -#| msgid "" -#| "Dwell.\n" -#| "Check this if a delay is needed to allow\n" -#| "the spindle motor to reach it's set speed." msgid "" "Dwell.\n" "Check this if a delay is needed to allow\n" "the spindle motor to reach its set speed." msgstr "" -"Démarrage Moteur.\n" +"Attente.\n" "Cochez cette case si un délai est nécessaire pour permettre\n" "au moteur d'atteindre sa vitesse définie." @@ -704,10 +689,6 @@ msgid "Dwelltime" msgstr "Temps d'attente" #: appDatabase.py:568 appDatabase.py:1085 -#, fuzzy -#| msgid "" -#| "Dwell Time.\n" -#| "A delay used to allow the motor spindle reach it's set speed." msgid "" "Dwell Time.\n" "A delay used to allow the motor spindle reach its set speed." @@ -715,7 +696,7 @@ msgstr "" "Temps d'attente.\n" "Un délai utilisé pour permettre au moteur d'atteindre sa vitesse définie." -#: appDatabase.py:592 appTools/ToolNCC.py:4075 +#: appDatabase.py:592 appTools/ToolNCC.py:4076 msgid "" "The 'Operation' can be:\n" "- Isolation -> will ensure that the non-copper clearing is always complete.\n" @@ -723,13 +704,14 @@ msgid "" "- Clear -> the regular non-copper clearing." msgstr "" "L'opération peut être:\n" -"- Isolé -> veillera à ce que la clairance sans cuivre soit toujours " -"complète.\n" -"Si cela ne réussit pas, alors le clearing sans cuivre échouera aussi.\n" -"- Nettoyer -> le clearing régulier sans cuivre." +"- Isoler -> veillera à ce que la suppression des zones non cuivrées soit " +"toujours complète.\n" +"Si ce n'est pas possible alors la suppression des zones non cuivrées " +"échouera.\n" +"- Nettoyer -> Nettoyage standard des zones non cuivrées." -#: appDatabase.py:599 appEditors/AppGerberEditor.py:2753 -#: appTools/ToolNCC.py:4082 +#: appDatabase.py:599 appEditors/AppGerberEditor.py:2745 +#: appTools/ToolNCC.py:4083 msgid "Clear" msgstr "Nettoyer" @@ -738,8 +720,8 @@ msgstr "Nettoyer" #: appGUI/preferences/geometry/GeometryEditorPrefGroupUI.py:56 #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:182 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:137 -#: appTools/ToolIsolation.py:3217 appTools/ToolMilling.py:1760 -#: appTools/ToolNCC.py:4091 +#: appTools/ToolIsolation.py:3218 appTools/ToolMilling.py:1760 +#: appTools/ToolNCC.py:4092 msgid "Milling Type" msgstr "Type de fraisage" @@ -748,8 +730,8 @@ msgstr "Type de fraisage" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:192 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:139 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:147 -#: appTools/ToolIsolation.py:3219 appTools/ToolIsolation.py:3227 -#: appTools/ToolNCC.py:4093 appTools/ToolNCC.py:4101 +#: appTools/ToolIsolation.py:3220 appTools/ToolIsolation.py:3228 +#: appTools/ToolNCC.py:4094 appTools/ToolNCC.py:4102 msgid "" "Milling type when the selected tool is of type: 'iso_op':\n" "- climb / best for precision milling and to reduce tool usage\n" @@ -764,15 +746,15 @@ msgstr "" #: appGUI/preferences/geometry/GeometryEditorPrefGroupUI.py:62 #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:189 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:144 -#: appTools/ToolIsolation.py:3224 appTools/ToolNCC.py:4098 +#: appTools/ToolIsolation.py:3225 appTools/ToolNCC.py:4099 msgid "Climb" -msgstr "Monté" +msgstr "Monter" #: appDatabase.py:616 appDatabase.py:862 #: appGUI/preferences/geometry/GeometryEditorPrefGroupUI.py:63 #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:190 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:145 -#: appTools/ToolIsolation.py:3225 appTools/ToolNCC.py:4099 +#: appTools/ToolIsolation.py:3226 appTools/ToolNCC.py:4100 msgid "Conventional" msgstr "Conventionnel" @@ -783,13 +765,13 @@ msgstr "Conventionnel" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:167 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:182 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:161 -#: appTools/ToolDrilling.py:2312 appTools/ToolIsolation.py:3202 -#: appTools/ToolNCC.py:4114 appTools/ToolPaint.py:2972 +#: appTools/ToolDrilling.py:2312 appTools/ToolIsolation.py:3203 +#: appTools/ToolNCC.py:4115 appTools/ToolPaint.py:2973 msgid "Overlap" msgstr "Chevauchement" #: appDatabase.py:630 appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:184 -#: appTools/ToolNCC.py:4116 +#: appTools/ToolNCC.py:4117 msgid "" "How much (percentage) of the tool width to overlap each tool pass.\n" "Adjust the value starting with lower values\n" @@ -821,10 +803,10 @@ msgstr "" #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:202 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:181 #: appTools/ToolCopperThieving.py:1206 appTools/ToolCopperThieving.py:1458 -#: appTools/ToolCorners.py:412 appTools/ToolCutOut.py:2168 +#: appTools/ToolCorners.py:416 appTools/ToolCutOut.py:2168 #: appTools/ToolFiducials.py:788 appTools/ToolInvertGerber.py:234 -#: appTools/ToolInvertGerber.py:242 appTools/ToolNCC.py:4158 -#: appTools/ToolNCC.py:4261 +#: appTools/ToolInvertGerber.py:242 appTools/ToolNCC.py:4159 +#: appTools/ToolNCC.py:4262 msgid "Margin" msgstr "Marge" @@ -835,9 +817,9 @@ msgstr "Marge" #: appGUI/preferences/tools/Tools2FiducialsPrefGroupUI.py:125 #: appGUI/preferences/tools/ToolsCornersPrefGroupUI.py:68 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:204 -#: appTools/ToolCopperThieving.py:1208 appTools/ToolCorners.py:414 -#: appTools/ToolFiducials.py:790 appTools/ToolNCC.py:4160 -#: appTools/ToolNCC.py:4263 +#: appTools/ToolCopperThieving.py:1208 appTools/ToolCorners.py:418 +#: appTools/ToolFiducials.py:790 appTools/ToolNCC.py:4161 +#: appTools/ToolNCC.py:4264 msgid "Bounding box margin." msgstr "Marge du cadre de sélection." @@ -849,13 +831,13 @@ msgstr "Marge du cadre de sélection." #: appGUI/preferences/tools/Tools2PunchGerberPrefGroupUI.py:106 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:215 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:196 -#: appTools/ToolExtractDrills.py:521 appTools/ToolNCC.py:4135 -#: appTools/ToolPaint.py:3008 appTools/ToolPunchGerber.py:1118 +#: appTools/ToolExtractDrills.py:521 appTools/ToolNCC.py:4136 +#: appTools/ToolPaint.py:3009 appTools/ToolPunchGerber.py:1118 msgid "Method" msgstr "Méthode" #: appDatabase.py:664 appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:217 -#: appTools/ToolNCC.py:4137 +#: appTools/ToolNCC.py:4138 msgid "" "Algorithm for copper clearing:\n" "- Standard: Fixed step inwards.\n" @@ -872,28 +854,28 @@ msgstr "" #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:343 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:230 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:215 -#: appTools/ToolNCC.py:4150 appTools/ToolPaint.py:3022 +#: appTools/ToolNCC.py:4151 appTools/ToolPaint.py:3023 #: tclCommands/TclCommandPaint.py:125 msgid "Standard" msgstr "Standard" #: appDatabase.py:672 appDatabase.py:787 appEditors/AppGeoEditor.py:501 -#: appEditors/AppGeoEditor.py:571 appEditors/AppGeoEditor.py:5130 +#: appEditors/AppGeoEditor.py:571 appEditors/AppGeoEditor.py:5136 #: appGUI/ObjectUI.py:1719 #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:343 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:230 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:215 -#: appTools/ToolNCC.py:4150 appTools/ToolPaint.py:3022 +#: appTools/ToolNCC.py:4151 appTools/ToolPaint.py:3023 #: tclCommands/TclCommandPaint.py:127 msgid "Seed" -msgstr "La graine" +msgstr "Circulaire" #: appDatabase.py:672 appDatabase.py:787 appEditors/AppGeoEditor.py:501 -#: appEditors/AppGeoEditor.py:5134 appGUI/ObjectUI.py:1719 +#: appEditors/AppGeoEditor.py:5140 appGUI/ObjectUI.py:1719 #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:343 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:230 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:215 -#: appTools/ToolNCC.py:4150 appTools/ToolPaint.py:3022 +#: appTools/ToolNCC.py:4151 appTools/ToolPaint.py:3023 #: tclCommands/TclCommandPaint.py:129 msgid "Lines" msgstr "Lignes" @@ -901,7 +883,7 @@ msgstr "Lignes" #: appDatabase.py:672 appDatabase.py:787 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:230 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:215 -#: appTools/ToolNCC.py:4150 appTools/ToolPaint.py:3022 +#: appTools/ToolNCC.py:4151 appTools/ToolPaint.py:3023 #: tclCommands/TclCommandPaint.py:133 msgid "Combo" msgstr "Combo" @@ -911,52 +893,52 @@ msgstr "Combo" #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:237 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:222 #: appObjects/FlatCAMCNCJob.py:1310 appObjects/FlatCAMCNCJob.py:1332 -#: appTools/ToolNCC.py:4171 appTools/ToolNCC.py:4274 appTools/ToolPaint.py:3033 +#: appTools/ToolNCC.py:4172 appTools/ToolNCC.py:4275 appTools/ToolPaint.py:3034 msgid "Connect" msgstr "Relier" #: appDatabase.py:684 appDatabase.py:801 appEditors/AppGeoEditor.py:510 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:239 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:224 -#: appTools/ToolNCC.py:4175 appTools/ToolNCC.py:4276 appTools/ToolPaint.py:3036 +#: appTools/ToolNCC.py:4176 appTools/ToolNCC.py:4277 appTools/ToolPaint.py:3037 msgid "" "Draw lines between resulting\n" "segments to minimize tool lifts." msgstr "" -"Tracez des lignes entre les résultats\n" -"segments pour minimiser les montées d’outil." +"Tracez des lignes entre les segments\n" +"résultants pour minimiser les montées d’outil." #: appDatabase.py:690 appDatabase.py:805 appEditors/AppGeoEditor.py:518 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:246 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:230 -#: appTools/ToolNCC.py:4181 appTools/ToolNCC.py:4282 appTools/ToolPaint.py:3040 +#: appTools/ToolNCC.py:4182 appTools/ToolNCC.py:4283 appTools/ToolPaint.py:3041 msgid "Contour" msgstr "Contour" #: appDatabase.py:694 appDatabase.py:808 appEditors/AppGeoEditor.py:520 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:248 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:232 -#: appTools/ToolNCC.py:4185 appTools/ToolNCC.py:4284 appTools/ToolPaint.py:3043 +#: appTools/ToolNCC.py:4186 appTools/ToolNCC.py:4285 appTools/ToolPaint.py:3044 msgid "" "Cut around the perimeter of the polygon\n" "to trim rough edges." msgstr "" "Couper autour du périmètre du polygone\n" -"pour couper les bords rugueux." +"pour réduire les bords rugueux." #: appDatabase.py:700 appDatabase.py:758 appEditors/AppGeoEditor.py:614 -#: appEditors/AppGerberEditor.py:5308 appEditors/appGCodeEditor.py:688 +#: appEditors/AppGerberEditor.py:5295 appEditors/appGCodeEditor.py:688 #: appGUI/ObjectUI.py:143 appGUI/ObjectUI.py:999 appGUI/ObjectUI.py:2034 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:255 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:183 #: appTools/ToolEtchCompensation.py:417 appTools/ToolEtchCompensation.py:425 -#: appTools/ToolNCC.py:4191 appTools/ToolNCC.py:4290 appTools/ToolPaint.py:2993 -#: appTools/ToolPaint.py:3089 appTools/ToolTransform.py:517 +#: appTools/ToolNCC.py:4192 appTools/ToolNCC.py:4291 appTools/ToolPaint.py:2994 +#: appTools/ToolPaint.py:3090 appTools/ToolTransform.py:517 msgid "Offset" msgstr "Décalage" #: appDatabase.py:704 appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:257 -#: appTools/ToolNCC.py:4195 appTools/ToolNCC.py:4292 +#: appTools/ToolNCC.py:4196 appTools/ToolNCC.py:4293 msgid "" "If used, it will add an offset to the copper features.\n" "The copper clearing will finish to a distance\n" @@ -970,7 +952,7 @@ msgstr "" #: appDatabase.py:739 appEditors/AppGeoEditor.py:455 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:163 -#: appTools/ToolPaint.py:2974 +#: appTools/ToolPaint.py:2975 msgid "" "How much (percentage) of the tool width to overlap each tool pass.\n" "Adjust the value starting with lower values\n" @@ -991,7 +973,7 @@ msgstr "" #: appDatabase.py:760 appEditors/AppGeoEditor.py:475 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:183 -#: appTools/ToolPaint.py:2995 appTools/ToolPaint.py:3091 +#: appTools/ToolPaint.py:2996 appTools/ToolPaint.py:3092 msgid "" "Distance by which to avoid\n" "the edges of the polygon to\n" @@ -1002,7 +984,7 @@ msgstr "" "être travailler." #: appDatabase.py:775 appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:198 -#: appTools/ToolPaint.py:3010 +#: appTools/ToolPaint.py:3011 msgid "" "Algorithm for painting:\n" "- Standard: Fixed step inwards.\n" @@ -1025,19 +1007,19 @@ msgstr "" #: appDatabase.py:787 appDatabase.py:789 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:215 -#: appTools/ToolPaint.py:154 appTools/ToolPaint.py:549 -#: appTools/ToolPaint.py:3022 appTools/ToolPaint.py:3024 +#: appTools/ToolPaint.py:154 appTools/ToolPaint.py:550 +#: appTools/ToolPaint.py:3023 appTools/ToolPaint.py:3025 #: tclCommands/TclCommandPaint.py:131 msgid "Laser_lines" msgstr "Lignes_laser" #: appDatabase.py:826 appGUI/preferences/tools/ToolsISOPrefGroupUI.py:154 -#: appTools/ToolIsolation.py:3189 +#: appTools/ToolIsolation.py:3190 msgid "Passes" msgstr "Passes" #: appDatabase.py:828 appGUI/preferences/tools/ToolsISOPrefGroupUI.py:156 -#: appTools/ToolIsolation.py:3191 +#: appTools/ToolIsolation.py:3192 msgid "" "Width of the isolation gap in\n" "number (integer) of tool widths." @@ -1048,7 +1030,7 @@ msgstr "" #: appDatabase.py:841 appGUI/ObjectUI.py:1696 #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:321 #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:169 -#: appTools/ToolIsolation.py:3204 +#: appTools/ToolIsolation.py:3205 msgid "How much (percentage) of the tool width to overlap each tool pass." msgstr "" "La quantité (pourcentage) de la largeur d'outil qui chevauche chaque passe " @@ -1056,7 +1038,7 @@ msgstr "" #: appDatabase.py:874 appGUI/ObjectUI.py:234 #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:201 -#: appTools/ToolIsolation.py:3237 +#: appTools/ToolIsolation.py:3238 msgid "Follow" msgstr "Suivre" @@ -1064,7 +1046,7 @@ msgstr "Suivre" #: appGUI/preferences/gerber/GerberAdvOptPrefGroupUI.py:45 #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:203 #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:209 -#: appTools/ToolIsolation.py:3239 appTools/ToolIsolation.py:3245 +#: appTools/ToolIsolation.py:3240 appTools/ToolIsolation.py:3246 msgid "" "Generate a 'Follow' geometry.\n" "This means that it will cut through\n" @@ -1075,12 +1057,12 @@ msgstr "" "le milieu de la trace." #: appDatabase.py:891 appGUI/preferences/tools/ToolsISOPrefGroupUI.py:218 -#: appTools/ToolIsolation.py:3254 +#: appTools/ToolIsolation.py:3255 msgid "Isolation Type" msgstr "Type d'isolement" #: appDatabase.py:893 appGUI/preferences/tools/ToolsISOPrefGroupUI.py:220 -#: appTools/ToolIsolation.py:3256 +#: appTools/ToolIsolation.py:3257 msgid "" "Choose how the isolation will be executed:\n" "- 'Full' -> complete isolation of polygons\n" @@ -1103,17 +1085,17 @@ msgstr "" #: appDatabase.py:902 appGUI/preferences/gerber/GerberAdvOptPrefGroupUI.py:72 #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:229 -#: appTools/ToolIsolation.py:3265 +#: appTools/ToolIsolation.py:3266 msgid "Full" -msgstr "Plein" +msgstr "Complète" #: appDatabase.py:903 appGUI/preferences/tools/ToolsISOPrefGroupUI.py:230 -#: appTools/ToolIsolation.py:3266 +#: appTools/ToolIsolation.py:3267 msgid "Ext" msgstr "Ext" #: appDatabase.py:904 appGUI/preferences/tools/ToolsISOPrefGroupUI.py:231 -#: appTools/ToolIsolation.py:3267 +#: appTools/ToolIsolation.py:3268 msgid "Int" msgstr "Int" @@ -1156,9 +1138,9 @@ msgid "" "reached." msgstr "" "Utilisez plusieurs passes pour limiter\n" -"la profondeur de coupe à chaque passage. Volonté\n" -"couper plusieurs fois jusqu'à ce que Cut Z soit\n" -"atteint." +"la profondeur de coupe à chaque passage.\n" +"Coupera en plusieurs fois jusqu'à ce que la\n" +"profondeur de Z soit atteinte." #: appDatabase.py:982 appGUI/ObjectUI.py:1240 #: appGUI/preferences/tools/ToolsCutoutPrefGroupUI.py:94 @@ -1185,7 +1167,7 @@ msgid "" "So called 'Plunge' feedrate.\n" "This is for linear move G01." msgstr "" -"Vitesse de l'outil pendant le perçage\n" +"Vitesse de l'outil pendant le forage\n" "(en unités par minute).\n" "Ce qu'on appelle \"avance\".\n" "Ceci est pour le mouvement linéaire G01." @@ -1206,7 +1188,7 @@ msgid "" "It is useful only for Marlin,\n" "ignore for any other cases." msgstr "" -"Vitesse de l'outil pendant le perçage\n" +"Vitesse de l'outil pendant le forage\n" "(en unités par minute).\n" "Ceci est pour le mouvement rapide G00.\n" "C'est utile seulement pour Marlin,\n" @@ -1231,30 +1213,26 @@ msgstr "" #: appDatabase.py:1102 appGUI/preferences/tools/ToolsDrillPrefGroupUI.py:244 #: appTools/ToolDrilling.py:2304 -#, fuzzy -#| msgid "Mill Slots" msgid "Drill slots" -msgstr "Fraiser les Fentes" +msgstr "Percer les rainures" #: appDatabase.py:1104 appGUI/preferences/tools/ToolsDrillPrefGroupUI.py:246 #: appTools/ToolDrilling.py:2306 msgid "If the selected tool has slots then they will be drilled." -msgstr "" +msgstr "Si l'outil sélectionné a des rainures, elles seront forées." #: appDatabase.py:1115 appGUI/preferences/tools/ToolsDrillPrefGroupUI.py:253 #: appTools/ToolDrilling.py:2314 -#, fuzzy -#| msgid "How much (percentage) of the tool width to overlap each tool pass." msgid "" "How much (percentage) of the tool diameter to overlap previous drill hole." msgstr "" -"La quantité (pourcentage) de la largeur d'outil qui chevauche chaque passe " -"d'outil." +"Proportion (pourcentage) du diamètre de l'outil qui chevauche le trou de " +"forage précédent." #: appDatabase.py:1129 appGUI/preferences/tools/ToolsDrillPrefGroupUI.py:265 #: appTools/ToolDrilling.py:2328 msgid "Last drill" -msgstr "" +msgstr "Dernier forage" #: appDatabase.py:1131 appGUI/preferences/tools/ToolsDrillPrefGroupUI.py:267 #: appTools/ToolDrilling.py:2330 @@ -1262,6 +1240,9 @@ msgid "" "If the slot length is not completely covered by drill holes,\n" "add a drill hole on the slot end point." msgstr "" +"Si la longueur de la rainure n'est pas complètement couverte par les trous " +"de forages,\n" +"ajoutez un trou de forage au point final de la rainure." #: appDatabase.py:1159 appGUI/preferences/tools/ToolsCutoutPrefGroupUI.py:117 #: appTools/ToolCutOut.py:2170 @@ -1294,10 +1275,8 @@ msgstr "" #: appDatabase.py:1182 appGUI/preferences/tools/ToolsCutoutPrefGroupUI.py:148 #: appTools/ToolCutOut.py:2193 -#, fuzzy -#| msgid "Image type" msgid "Gap type" -msgstr "Type d'image" +msgstr "Type d'encoche" #: appDatabase.py:1184 appGUI/preferences/tools/ToolsCutoutPrefGroupUI.py:150 #: appTools/ToolCutOut.py:2195 @@ -1308,36 +1287,36 @@ msgid "" "gap\n" "- M-Bites -> 'Mouse Bites' - same as 'bridge' but covered with drill holes" msgstr "" +"Le type d'écart:\n" +"- Pont -> la coupure sera interrompue par des ponts\n" +"- Fin -> identique au 'bridge' mais il sera plus fin en fraisant " +"partiellement l'espace\n" +"- M-Bites -> 'Mouse Bites' - identique à 'bridge' mais couvert de trous de " +"forage" #: appDatabase.py:1192 appGUI/preferences/tools/ToolsCutoutPrefGroupUI.py:158 #: appTools/ToolCutOut.py:2203 msgid "Bridge" -msgstr "" +msgstr "Pont" #: appDatabase.py:1193 appGUI/preferences/tools/ToolsCutoutPrefGroupUI.py:159 #: appTools/ToolCutOut.py:2204 msgid "Thin" -msgstr "" +msgstr "Mince" #: appDatabase.py:1204 appGUI/preferences/tools/ToolsCutoutPrefGroupUI.py:169 #: appTools/ToolCutOut.py:2214 -#, fuzzy -#| msgid "MultiDepth" msgid "Depth" -msgstr "Plusieurs Passes" +msgstr "Profondeur" #: appDatabase.py:1206 appGUI/preferences/tools/ToolsCutoutPrefGroupUI.py:171 #: appTools/ToolCutOut.py:2216 -#, fuzzy -#| msgid "" -#| "The width of the travel lines to be\n" -#| "rendered in the plot." msgid "" "The depth until the milling is done\n" "in order to thin the gaps." msgstr "" -"La largeur des lignes de voyage à être\n" -"rendu dans l'intrigue." +"Profondeur jusqu'à ce que le fraisage soit terminé\n" +"afin de réduire les interstices." #: appDatabase.py:1223 appGUI/preferences/tools/ToolsCutoutPrefGroupUI.py:43 #: appGUI/preferences/tools/ToolsCutoutPrefGroupUI.py:186 @@ -1348,7 +1327,7 @@ msgstr "Diam de l'outil" #: appDatabase.py:1225 appGUI/preferences/tools/ToolsCutoutPrefGroupUI.py:188 #: appTools/ToolCutOut.py:2233 msgid "The drill hole diameter when doing mouse bites." -msgstr "" +msgstr "Le diamètre du trou de forage pour des \"mouse bites\"." #: appDatabase.py:1236 #: appGUI/preferences/tools/Tools2CThievingPrefGroupUI.py:151 @@ -1363,7 +1342,7 @@ msgstr "Espacement" #: appDatabase.py:1238 appGUI/preferences/tools/ToolsCutoutPrefGroupUI.py:200 #: appTools/ToolCutOut.py:2245 msgid "The spacing between drill holes when doing mouse bites." -msgstr "" +msgstr "L'espacement entre forage pour des \"mouse bites\"." #: appDatabase.py:1257 appGUI/preferences/tools/ToolsCutoutPrefGroupUI.py:233 #: appTools/ToolCutOut.py:2045 @@ -1473,19 +1452,19 @@ msgstr "" #: appDatabase.py:1367 appGUI/MainGUI.py:1550 #: appGUI/preferences/PreferencesUIManager.py:945 app_Main.py:2501 -#: app_Main.py:3527 app_Main.py:4471 app_Main.py:4724 app_Main.py:8993 +#: app_Main.py:3527 app_Main.py:4471 app_Main.py:4724 app_Main.py:8995 msgid "Cancel" msgstr "Annuler" -#: appDatabase.py:1380 appDatabase.py:1391 appEditors/AppExcEditor.py:4223 -#: appEditors/AppExcEditor.py:4234 appEditors/appGCodeEditor.py:771 +#: appDatabase.py:1380 appDatabase.py:1391 appEditors/AppExcEditor.py:4221 +#: appEditors/AppExcEditor.py:4232 appEditors/appGCodeEditor.py:771 #: appEditors/appGCodeEditor.py:782 appGUI/ObjectUI.py:163 #: appGUI/ObjectUI.py:174 appTool.py:280 appTool.py:291 #: appTools/ToolAlignObjects.py:517 appTools/ToolAlignObjects.py:528 #: appTools/ToolCalculators.py:390 appTools/ToolCalculators.py:401 #: appTools/ToolCalibration.py:1395 appTools/ToolCalibration.py:1406 #: appTools/ToolCopperThieving.py:1600 appTools/ToolCopperThieving.py:1611 -#: appTools/ToolCorners.py:464 appTools/ToolCorners.py:475 +#: appTools/ToolCorners.py:468 appTools/ToolCorners.py:479 #: appTools/ToolCutOut.py:2448 appTools/ToolCutOut.py:2459 #: appTools/ToolDblSided.py:963 appTools/ToolDblSided.py:974 #: appTools/ToolDistance.py:660 appTools/ToolDistance.py:671 @@ -1497,11 +1476,11 @@ msgstr "Annuler" #: appTools/ToolFilm.py:1457 appTools/ToolFilm.py:1468 #: appTools/ToolImage.py:322 appTools/ToolImage.py:333 #: appTools/ToolInvertGerber.py:305 appTools/ToolInvertGerber.py:316 -#: appTools/ToolIsolation.py:3507 appTools/ToolIsolation.py:3518 +#: appTools/ToolIsolation.py:3508 appTools/ToolIsolation.py:3519 #: appTools/ToolMilling.py:2341 appTools/ToolMilling.py:2352 -#: appTools/ToolNCC.py:4526 appTools/ToolNCC.py:4537 +#: appTools/ToolNCC.py:4527 appTools/ToolNCC.py:4538 #: appTools/ToolOptimal.py:615 appTools/ToolOptimal.py:626 -#: appTools/ToolPaint.py:3255 appTools/ToolPaint.py:3266 +#: appTools/ToolPaint.py:3256 appTools/ToolPaint.py:3267 #: appTools/ToolPanelize.py:916 appTools/ToolPanelize.py:927 #: appTools/ToolPcbWizard.py:488 appTools/ToolPcbWizard.py:499 #: appTools/ToolPunchGerber.py:1337 appTools/ToolPunchGerber.py:1348 @@ -1513,15 +1492,15 @@ msgstr "Annuler" msgid "Edited value is out of range" msgstr "La valeur modifiée est hors limites" -#: appDatabase.py:1386 appDatabase.py:1393 appEditors/AppExcEditor.py:4229 -#: appEditors/AppExcEditor.py:4236 appEditors/appGCodeEditor.py:777 +#: appDatabase.py:1386 appDatabase.py:1393 appEditors/AppExcEditor.py:4227 +#: appEditors/AppExcEditor.py:4234 appEditors/appGCodeEditor.py:777 #: appEditors/appGCodeEditor.py:784 appGUI/ObjectUI.py:169 #: appGUI/ObjectUI.py:176 appTool.py:286 appTool.py:293 #: appTools/ToolAlignObjects.py:523 appTools/ToolAlignObjects.py:530 #: appTools/ToolCalculators.py:396 appTools/ToolCalculators.py:403 #: appTools/ToolCalibration.py:1401 appTools/ToolCalibration.py:1408 #: appTools/ToolCopperThieving.py:1606 appTools/ToolCopperThieving.py:1613 -#: appTools/ToolCorners.py:470 appTools/ToolCorners.py:477 +#: appTools/ToolCorners.py:474 appTools/ToolCorners.py:481 #: appTools/ToolCutOut.py:2454 appTools/ToolCutOut.py:2461 #: appTools/ToolDblSided.py:969 appTools/ToolDblSided.py:976 #: appTools/ToolDistance.py:666 appTools/ToolDistance.py:673 @@ -1533,11 +1512,11 @@ msgstr "La valeur modifiée est hors limites" #: appTools/ToolFilm.py:1463 appTools/ToolFilm.py:1470 #: appTools/ToolImage.py:328 appTools/ToolImage.py:335 #: appTools/ToolInvertGerber.py:311 appTools/ToolInvertGerber.py:318 -#: appTools/ToolIsolation.py:3513 appTools/ToolIsolation.py:3520 +#: appTools/ToolIsolation.py:3514 appTools/ToolIsolation.py:3521 #: appTools/ToolMilling.py:2347 appTools/ToolMilling.py:2354 -#: appTools/ToolNCC.py:4532 appTools/ToolNCC.py:4539 +#: appTools/ToolNCC.py:4533 appTools/ToolNCC.py:4540 #: appTools/ToolOptimal.py:621 appTools/ToolOptimal.py:628 -#: appTools/ToolPaint.py:3261 appTools/ToolPaint.py:3268 +#: appTools/ToolPaint.py:3262 appTools/ToolPaint.py:3269 #: appTools/ToolPanelize.py:922 appTools/ToolPanelize.py:929 #: appTools/ToolPcbWizard.py:494 appTools/ToolPcbWizard.py:501 #: appTools/ToolPunchGerber.py:1343 appTools/ToolPunchGerber.py:1350 @@ -1561,33 +1540,33 @@ msgstr "Copier depuis BD" msgid "Delete from DB" msgstr "Suppression de la BD" -#: appDatabase.py:1658 appTranslation.py:209 app_Main.py:3521 app_Main.py:8987 +#: appDatabase.py:1658 appTranslation.py:209 app_Main.py:3521 app_Main.py:8989 msgid "Save changes" msgstr "Sauvegarder les modifications" #: appDatabase.py:1727 appDatabase.py:2165 appDatabase.py:2584 #: appDatabase.py:2596 appGUI/MainGUI.py:487 appObjects/FlatCAMGeometry.py:1239 #: appTools/ToolCutOut.py:467 appTools/ToolCutOut.py:489 -#: appTools/ToolCutOut.py:530 appTools/ToolIsolation.py:2584 -#: appTools/ToolIsolation.py:2594 appTools/ToolIsolation.py:2678 -#: appTools/ToolNCC.py:3726 appTools/ToolNCC.py:3736 appTools/ToolNCC.py:3816 -#: appTools/ToolPaint.py:2631 appTools/ToolPaint.py:2641 -#: appTools/ToolPaint.py:2730 app_Main.py:5854 app_Main.py:5891 -#: app_Main.py:5923 app_Main.py:5934 app_Main.py:5943 app_Main.py:5953 +#: appTools/ToolCutOut.py:530 appTools/ToolIsolation.py:2585 +#: appTools/ToolIsolation.py:2595 appTools/ToolIsolation.py:2679 +#: appTools/ToolNCC.py:3727 appTools/ToolNCC.py:3737 appTools/ToolNCC.py:3817 +#: appTools/ToolPaint.py:2632 appTools/ToolPaint.py:2642 +#: appTools/ToolPaint.py:2731 app_Main.py:5851 app_Main.py:5888 +#: app_Main.py:5920 app_Main.py:5931 app_Main.py:5940 app_Main.py:5950 msgid "Tools Database" -msgstr "Base de données d'outils" +msgstr "Base de données outils" #: appDatabase.py:1738 appDatabase.py:2109 appDatabase.py:2143 #: appObjects/FlatCAMGeometry.py:1052 appTools/ToolCutOut.py:294 -#: appTools/ToolDrilling.py:895 appTools/ToolIsolation.py:1077 -#: appTools/ToolNCC.py:1024 appTools/ToolPaint.py:712 app_Main.py:5850 +#: appTools/ToolDrilling.py:895 appTools/ToolIsolation.py:1078 +#: appTools/ToolNCC.py:1025 appTools/ToolPaint.py:713 app_Main.py:5847 msgid "Could not load Tools DB file." msgstr "Impossible de charger le fichier BD des outils." #: appDatabase.py:1746 appDatabase.py:2151 appObjects/FlatCAMGeometry.py:1063 #: appTools/ToolCutOut.py:305 appTools/ToolDrilling.py:903 -#: appTools/ToolIsolation.py:1088 appTools/ToolNCC.py:1035 -#: appTools/ToolPaint.py:723 +#: appTools/ToolIsolation.py:1089 appTools/ToolNCC.py:1036 +#: appTools/ToolPaint.py:724 msgid "Failed to parse Tools DB file." msgstr "Échec de l'analyse du fichier BD des outils." @@ -1635,16 +1614,16 @@ msgstr "Sauvegarde de la BD des outils." msgid "" "To change tool properties select only one tool. Tools currently selected" msgstr "" +"Pour modifier les propriétés de l'outil, sélectionnez un seul outil. Outils " +"actuellement sélectionnés" #: appDatabase.py:2560 msgid "No Tool/row selected in the Tools Database table" msgstr "Aucun outil/ligne sélectionné dans le tableau de la BD d'outils" #: appDatabase.py:2564 appTools/ToolDrilling.py:907 -#, fuzzy -#| msgid "Tool Diameter." msgid "Tools DB empty." -msgstr "Diamètre de l'outil." +msgstr "Base de données Outils vide." #: appDatabase.py:2591 msgid "Tools in Tools Database edited but not saved." @@ -1668,12 +1647,12 @@ msgstr "Pour ajouter une perceuse, sélectionnez d'abord un outil" #: appEditors/AppExcEditor.py:304 appEditors/AppExcEditor.py:536 #: appEditors/AppExcEditor.py:740 appEditors/AppExcEditor.py:1063 #: appEditors/AppExcEditor.py:1292 appEditors/AppExcEditor.py:1395 -#: appEditors/AppExcEditor.py:1506 appEditors/AppExcEditor.py:3129 -#: appEditors/AppExcEditor.py:3136 appEditors/AppGeoEditor.py:4250 -#: appEditors/AppGeoEditor.py:4264 appEditors/AppGerberEditor.py:1089 -#: appEditors/AppGerberEditor.py:1316 appEditors/AppGerberEditor.py:1501 -#: appEditors/AppGerberEditor.py:1770 appEditors/AppGerberEditor.py:4612 -#: appEditors/AppGerberEditor.py:4629 appGUI/MainGUI.py:2993 +#: appEditors/AppExcEditor.py:1506 appEditors/AppExcEditor.py:3126 +#: appEditors/AppExcEditor.py:3133 appEditors/AppGeoEditor.py:4256 +#: appEditors/AppGeoEditor.py:4270 appEditors/AppGerberEditor.py:1082 +#: appEditors/AppGerberEditor.py:1309 appEditors/AppGerberEditor.py:1494 +#: appEditors/AppGerberEditor.py:1763 appEditors/AppGerberEditor.py:4599 +#: appEditors/AppGerberEditor.py:4616 appGUI/MainGUI.py:2993 #: appGUI/MainGUI.py:3005 appTools/ToolAlignObjects.py:253 #: appTools/ToolAlignObjects.py:275 app_Main.py:5092 app_Main.py:5246 msgid "Done." @@ -1687,8 +1666,8 @@ msgstr "" #: appEditors/AppExcEditor.py:374 appEditors/AppExcEditor.py:596 #: appEditors/AppExcEditor.py:817 appEditors/AppExcEditor.py:1363 -#: appEditors/AppGerberEditor.py:475 appEditors/AppGerberEditor.py:1948 -#: appEditors/AppGerberEditor.py:1978 appGUI/MainGUI.py:3604 +#: appEditors/AppGerberEditor.py:475 appEditors/AppGerberEditor.py:1941 +#: appEditors/AppGerberEditor.py:1971 appGUI/MainGUI.py:3604 msgid "Click on target location ..." msgstr "Cliquez sur l'emplacement cible ..." @@ -1713,7 +1692,7 @@ msgstr "Trop de forages pour l'angle d'espacement sélectionné." #: appEditors/AppExcEditor.py:575 msgid "To add a slot first select a tool" -msgstr "Pour ajouter un trou de fente, sélectionnez d'abord un outil" +msgstr "Pour ajouter un trou de rainure, sélectionnez d'abord un outil" #: appEditors/AppExcEditor.py:635 appEditors/AppExcEditor.py:642 #: appEditors/AppExcEditor.py:923 appEditors/AppExcEditor.py:930 @@ -1723,13 +1702,13 @@ msgstr "Valeur manquante ou format incorrect. Ajoutez-le et réessayez." #: appEditors/AppExcEditor.py:778 msgid "To add an Slot Array first select a tool in Tool Table" msgstr "" -"Pour ajouter un tableau de trous de fente, sélectionnez d'abord un outil " +"Pour ajouter un tableau de trous de rainure, sélectionnez d'abord un outil " "dans la table d'outils" #: appEditors/AppExcEditor.py:836 msgid "Click on the Slot Circular Array Start position" msgstr "" -"Cliquez sur la position de départ de la matrice circulaire du trou de fente" +"Cliquez sur la position de départ de la matrice circulaire du trou de rainure" #: appEditors/AppExcEditor.py:861 appEditors/AppGerberEditor.py:523 msgid "The value is mistyped. Check the value." @@ -1737,7 +1716,7 @@ msgstr "La valeur est mal typée. Vérifiez la valeur." #: appEditors/AppExcEditor.py:1040 msgid "Too many Slots for the selected spacing angle." -msgstr "Trop de trous de fente pour l'angle d'espacement sélectionné." +msgstr "Trop de trous de rainure pour l'angle d'espacement sélectionné." #: appEditors/AppExcEditor.py:1085 msgid "Click on the Drill(s) to resize ..." @@ -1751,12 +1730,10 @@ msgstr "" #: appEditors/AppExcEditor.py:1294 appEditors/AppExcEditor.py:1347 #: appEditors/AppExcEditor.py:1358 appGUI/MainGUI.py:3610 -#, fuzzy -#| msgid "Cancelled. Nothing selected to copy." msgid "Cancelled. Nothing selected." -msgstr "Annulé. Rien n'est sélectionné pour copier." +msgstr "Annulé. Rien n'est sélectionné." -#: appEditors/AppExcEditor.py:1351 appEditors/AppGerberEditor.py:1950 +#: appEditors/AppExcEditor.py:1351 appEditors/AppGerberEditor.py:1943 msgid "Click on reference location ..." msgstr "Cliquez sur l'emplacement de référence ..." @@ -1772,10 +1749,10 @@ msgstr "Total de Fentes" #: appEditors/AppExcEditor.py:2015 appObjects/FlatCAMGeometry.py:725 #: appObjects/FlatCAMGeometry.py:1384 appObjects/FlatCAMGeometry.py:2136 -#: appObjects/FlatCAMGeometry.py:2888 appTools/ToolIsolation.py:1258 -#: appTools/ToolIsolation.py:1711 appTools/ToolNCC.py:1210 -#: appTools/ToolNCC.py:1347 appTools/ToolPaint.py:897 -#: appTools/ToolPaint.py:1035 appTools/ToolPaint.py:1748 +#: appObjects/FlatCAMGeometry.py:2888 appTools/ToolIsolation.py:1259 +#: appTools/ToolIsolation.py:1712 appTools/ToolNCC.py:1211 +#: appTools/ToolNCC.py:1348 appTools/ToolPaint.py:898 +#: appTools/ToolPaint.py:1036 appTools/ToolPaint.py:1749 #: appTools/ToolSolderPaste.py:455 appTools/ToolSolderPaste.py:527 msgid "Wrong value format entered, use a number." msgstr "Mauvais format de valeur entré, utilisez un nombre." @@ -1792,67 +1769,67 @@ msgstr "" msgid "Added new tool with dia" msgstr "Ajout d'un nouvel outil avec dia" -#: appEditors/AppExcEditor.py:2067 +#: appEditors/AppExcEditor.py:2068 msgid "Select a tool in Tool Table" msgstr "Sélectionner un outil dans la table d'outils" -#: appEditors/AppExcEditor.py:2097 +#: appEditors/AppExcEditor.py:2098 msgid "Deleted tool with diameter" msgstr "Outil supprimé avec diamètre" -#: appEditors/AppExcEditor.py:2244 +#: appEditors/AppExcEditor.py:2245 msgid "Done. Tool edit completed." msgstr "Terminé. L'édition de l'outil est terminée." -#: appEditors/AppExcEditor.py:2864 +#: appEditors/AppExcEditor.py:2861 msgid "There are no Tools definitions in the file. Aborting Excellon creation." msgstr "" "Il n'y a pas de définition d'outils dans le fichier. Abandon de la création " "Excellon." -#: appEditors/AppExcEditor.py:2868 +#: appEditors/AppExcEditor.py:2865 msgid "An internal error has ocurred. See Shell.\n" msgstr "Une erreur interne s'est produite. Voir Shell.\n" -#: appEditors/AppExcEditor.py:2873 +#: appEditors/AppExcEditor.py:2870 msgid "Creating Excellon." msgstr "Créer Excellon." -#: appEditors/AppExcEditor.py:2887 +#: appEditors/AppExcEditor.py:2884 msgid "Excellon editing finished." msgstr "Excellon édition terminée." -#: appEditors/AppExcEditor.py:2903 +#: appEditors/AppExcEditor.py:2900 msgid "Cancelled. There is no Tool/Drill selected" msgstr "Annulé. Aucun Outil/Foret sélectionné" -#: appEditors/AppExcEditor.py:3497 +#: appEditors/AppExcEditor.py:3495 msgid "Done. Drill(s) deleted." msgstr "Terminé. Percer des trous supprimés." -#: appEditors/AppExcEditor.py:3570 appEditors/AppExcEditor.py:3580 -#: appEditors/AppGerberEditor.py:5060 +#: appEditors/AppExcEditor.py:3568 appEditors/AppExcEditor.py:3578 +#: appEditors/AppGerberEditor.py:5047 msgid "Click on the circular array Center position" msgstr "Cliquez sur le tableau circulaire Position centrale" -#: appEditors/AppExcEditor.py:3711 appGUI/MainGUI.py:703 appGUI/ObjectUI.py:579 +#: appEditors/AppExcEditor.py:3709 appGUI/MainGUI.py:703 appGUI/ObjectUI.py:579 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:26 msgid "Excellon Editor" msgstr "Editeur Excellon" -#: appEditors/AppExcEditor.py:3718 appEditors/AppGerberEditor.py:2473 +#: appEditors/AppExcEditor.py:3716 appEditors/AppGerberEditor.py:2465 #: appEditors/appGCodeEditor.py:670 msgid "Name:" msgstr "Nom:" -#: appEditors/AppExcEditor.py:3724 appGUI/ObjectUI.py:620 -#: appGUI/ObjectUI.py:967 appTools/ToolIsolation.py:3023 -#: appTools/ToolNCC.py:3896 appTools/ToolPaint.py:2817 +#: appEditors/AppExcEditor.py:3722 appGUI/ObjectUI.py:620 +#: appGUI/ObjectUI.py:967 appTools/ToolIsolation.py:3024 +#: appTools/ToolNCC.py:3897 appTools/ToolPaint.py:2818 #: appTools/ToolSolderPaste.py:1156 msgid "Tools Table" -msgstr "Tableau des outils" +msgstr "Table des outils" -#: appEditors/AppExcEditor.py:3726 appGUI/ObjectUI.py:622 +#: appEditors/AppExcEditor.py:3724 appGUI/ObjectUI.py:622 msgid "" "Tools in this Excellon object\n" "when are used for drilling." @@ -1860,21 +1837,19 @@ msgstr "" "Outils dans cet objet Excellon\n" "quand sont utilisés pour le forage." -#: appEditors/AppExcEditor.py:3747 -#, fuzzy -#| msgid "Total Slots" +#: appEditors/AppExcEditor.py:3745 msgid "Convert Slots" -msgstr "Total de Fentes" +msgstr "Convertir les rainures" -#: appEditors/AppExcEditor.py:3749 +#: appEditors/AppExcEditor.py:3747 msgid "Convert the slots in the selected tools to drills." -msgstr "" +msgstr "Convertir les rainures dans l'outil sélectionné en forages." -#: appEditors/AppExcEditor.py:3759 +#: appEditors/AppExcEditor.py:3757 msgid "Add/Delete Tool" msgstr "Ajouter / Supprimer un outil" -#: appEditors/AppExcEditor.py:3761 +#: appEditors/AppExcEditor.py:3759 msgid "" "Add/Delete a tool to the tool list\n" "for this Excellon object." @@ -1882,26 +1857,26 @@ msgstr "" "Ajouter / Supprimer un outil à la liste d'outils\n" "pour cet objet Excellon." -#: appEditors/AppExcEditor.py:3771 appGUI/ObjectUI.py:1082 +#: appEditors/AppExcEditor.py:3769 appGUI/ObjectUI.py:1082 #: appGUI/ObjectUI.py:1639 #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:268 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:130 -#: appTools/ToolCutOut.py:2071 appTools/ToolIsolation.py:3104 -#: appTools/ToolNCC.py:3989 appTools/ToolNCC.py:4000 appTools/ToolPaint.py:2899 +#: appTools/ToolCutOut.py:2071 appTools/ToolIsolation.py:3105 +#: appTools/ToolNCC.py:3990 appTools/ToolNCC.py:4001 appTools/ToolPaint.py:2900 msgid "Tool Dia" msgstr "Diam. de l'outil" -#: appEditors/AppExcEditor.py:3773 appGUI/ObjectUI.py:1084 +#: appEditors/AppExcEditor.py:3771 appGUI/ObjectUI.py:1084 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:57 -#: appTools/ToolIsolation.py:3106 appTools/ToolNCC.py:3991 +#: appTools/ToolIsolation.py:3107 appTools/ToolNCC.py:3992 msgid "Diameter for the new tool" msgstr "Diamètre pour le nouvel outil" -#: appEditors/AppExcEditor.py:3783 +#: appEditors/AppExcEditor.py:3781 msgid "Add Tool" msgstr "Ajouter un Outil" -#: appEditors/AppExcEditor.py:3785 +#: appEditors/AppExcEditor.py:3783 msgid "" "Add a new tool to the tool list\n" "with the diameter specified above." @@ -1909,11 +1884,11 @@ msgstr "" "Ajouter un nouvel outil à la liste d'outils\n" "avec le diamètre spécifié ci-dessus." -#: appEditors/AppExcEditor.py:3797 +#: appEditors/AppExcEditor.py:3795 msgid "Delete Tool" msgstr "Supprimer l'outil" -#: appEditors/AppExcEditor.py:3799 +#: appEditors/AppExcEditor.py:3797 msgid "" "Delete a tool in the tool list\n" "by selecting a row in the tool table." @@ -1921,40 +1896,40 @@ msgstr "" "Supprimer un outil dans la liste des outils\n" "en sélectionnant une ligne dans la table d'outils." -#: appEditors/AppExcEditor.py:3817 appGUI/MainGUI.py:4797 +#: appEditors/AppExcEditor.py:3815 appGUI/MainGUI.py:4797 msgid "Resize Drill(s)" msgstr "Redim. les Forets" -#: appEditors/AppExcEditor.py:3819 +#: appEditors/AppExcEditor.py:3817 msgid "Resize a drill or a selection of drills." msgstr "Redimensionnez une perceuse ou une sélection d'exercices." -#: appEditors/AppExcEditor.py:3826 +#: appEditors/AppExcEditor.py:3824 msgid "Resize Dia" msgstr "Redim. le dia" -#: appEditors/AppExcEditor.py:3828 +#: appEditors/AppExcEditor.py:3826 msgid "Diameter to resize to." msgstr "Diamètre à redimensionner." -#: appEditors/AppExcEditor.py:3841 +#: appEditors/AppExcEditor.py:3839 msgid "Resize" msgstr "Redimensionner" -#: appEditors/AppExcEditor.py:3843 +#: appEditors/AppExcEditor.py:3841 msgid "Resize drill(s)" msgstr "Redimensionner les forets" -#: appEditors/AppExcEditor.py:3868 appGUI/MainGUI.py:708 appGUI/MainGUI.py:1676 +#: appEditors/AppExcEditor.py:3866 appGUI/MainGUI.py:708 appGUI/MainGUI.py:1676 #: appGUI/MainGUI.py:4791 msgid "Add Drill Array" msgstr "Ajouter un Tableau de Forage" -#: appEditors/AppExcEditor.py:3870 +#: appEditors/AppExcEditor.py:3868 msgid "Add an array of drills (linear or circular array)" msgstr "Ajouter un tableau de trous de forage (tableau linéaire ou circulaire)" -#: appEditors/AppExcEditor.py:3876 +#: appEditors/AppExcEditor.py:3874 msgid "" "Select the type of drills array to create.\n" "It can be Linear X(Y) or Circular" @@ -1962,13 +1937,13 @@ msgstr "" "Sélectionnez le type de matrice de trous à créer.\n" "Il peut être Linéaire X (Y) ou Circulaire" -#: appEditors/AppExcEditor.py:3879 appEditors/AppExcEditor.py:4093 -#: appEditors/AppGerberEditor.py:2786 +#: appEditors/AppExcEditor.py:3877 appEditors/AppExcEditor.py:4091 +#: appEditors/AppGerberEditor.py:2778 msgid "Linear" msgstr "Linéaire" -#: appEditors/AppExcEditor.py:3880 appEditors/AppExcEditor.py:4094 -#: appEditors/AppGerberEditor.py:2787 +#: appEditors/AppExcEditor.py:3878 appEditors/AppExcEditor.py:4092 +#: appEditors/AppGerberEditor.py:2779 #: appGUI/preferences/tools/Tools2EDrillsPrefGroupUI.py:52 #: appGUI/preferences/tools/Tools2EDrillsPrefGroupUI.py:149 #: appGUI/preferences/tools/Tools2FiducialsPrefGroupUI.py:107 @@ -1983,26 +1958,26 @@ msgstr "Linéaire" msgid "Circular" msgstr "Circulaire" -#: appEditors/AppExcEditor.py:3888 +#: appEditors/AppExcEditor.py:3886 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:68 msgid "Nr of drills" msgstr "Nb de Forages" -#: appEditors/AppExcEditor.py:3889 +#: appEditors/AppExcEditor.py:3887 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:70 msgid "Specify how many drills to be in the array." msgstr "Spécifiez combien d'exercices doivent figurer dans le tableau." -#: appEditors/AppExcEditor.py:3907 appEditors/AppExcEditor.py:3957 -#: appEditors/AppExcEditor.py:4029 appEditors/AppExcEditor.py:4122 -#: appEditors/AppExcEditor.py:4173 appEditors/AppGerberEditor.py:1584 -#: appEditors/AppGerberEditor.py:2815 appEditors/AppGerberEditor.py:2864 +#: appEditors/AppExcEditor.py:3905 appEditors/AppExcEditor.py:3955 +#: appEditors/AppExcEditor.py:4027 appEditors/AppExcEditor.py:4120 +#: appEditors/AppExcEditor.py:4171 appEditors/AppGerberEditor.py:1577 +#: appEditors/AppGerberEditor.py:2807 appEditors/AppGerberEditor.py:2856 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:178 msgid "Direction" msgstr "Direction" -#: appEditors/AppExcEditor.py:3909 appEditors/AppExcEditor.py:4124 -#: appEditors/AppGerberEditor.py:2817 +#: appEditors/AppExcEditor.py:3907 appEditors/AppExcEditor.py:4122 +#: appEditors/AppGerberEditor.py:2809 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:86 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:234 #: appGUI/preferences/gerber/GerberEditorPrefGroupUI.py:123 @@ -2017,8 +1992,8 @@ msgstr "" "- 'Y' - axe vertical ou\n" "- 'Angle' - un angle personnalisé pour l'inclinaison du tableau" -#: appEditors/AppExcEditor.py:3916 appEditors/AppExcEditor.py:4038 -#: appEditors/AppExcEditor.py:4131 appEditors/AppGerberEditor.py:2824 +#: appEditors/AppExcEditor.py:3914 appEditors/AppExcEditor.py:4036 +#: appEditors/AppExcEditor.py:4129 appEditors/AppGerberEditor.py:2816 #: appGUI/GUIElements.py:4245 appGUI/MainGUI.py:475 appGUI/MainGUI.py:668 #: appGUI/MainGUI.py:4429 appGUI/MainGUI.py:4695 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:92 @@ -2030,8 +2005,8 @@ msgstr "" msgid "X" msgstr "X" -#: appEditors/AppExcEditor.py:3917 appEditors/AppExcEditor.py:4039 -#: appEditors/AppExcEditor.py:4132 appEditors/AppGerberEditor.py:2825 +#: appEditors/AppExcEditor.py:3915 appEditors/AppExcEditor.py:4037 +#: appEditors/AppExcEditor.py:4130 appEditors/AppGerberEditor.py:2817 #: appGUI/GUIElements.py:4252 appGUI/MainGUI.py:478 appGUI/MainGUI.py:4430 #: appGUI/MainGUI.py:4696 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:93 @@ -2043,13 +2018,13 @@ msgstr "X" msgid "Y" msgstr "Y" -#: appEditors/AppExcEditor.py:3918 appEditors/AppExcEditor.py:3935 -#: appEditors/AppExcEditor.py:3969 appEditors/AppExcEditor.py:4040 -#: appEditors/AppExcEditor.py:4044 appEditors/AppExcEditor.py:4133 -#: appEditors/AppExcEditor.py:4151 appEditors/AppExcEditor.py:4185 -#: appEditors/AppGeoEditor.py:686 appEditors/AppGerberEditor.py:2826 -#: appEditors/AppGerberEditor.py:2843 appEditors/AppGerberEditor.py:2879 -#: appEditors/AppGerberEditor.py:5380 +#: appEditors/AppExcEditor.py:3916 appEditors/AppExcEditor.py:3933 +#: appEditors/AppExcEditor.py:3967 appEditors/AppExcEditor.py:4038 +#: appEditors/AppExcEditor.py:4042 appEditors/AppExcEditor.py:4131 +#: appEditors/AppExcEditor.py:4149 appEditors/AppExcEditor.py:4183 +#: appEditors/AppGeoEditor.py:686 appEditors/AppGerberEditor.py:2818 +#: appEditors/AppGerberEditor.py:2835 appEditors/AppGerberEditor.py:2871 +#: appEditors/AppGerberEditor.py:5367 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:94 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:113 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:189 @@ -2064,23 +2039,23 @@ msgstr "Y" msgid "Angle" msgstr "Angle" -#: appEditors/AppExcEditor.py:3922 appEditors/AppExcEditor.py:4137 -#: appEditors/AppGerberEditor.py:2830 +#: appEditors/AppExcEditor.py:3920 appEditors/AppExcEditor.py:4135 +#: appEditors/AppGerberEditor.py:2822 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:100 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:248 #: appGUI/preferences/gerber/GerberEditorPrefGroupUI.py:137 msgid "Pitch" msgstr "Pas" -#: appEditors/AppExcEditor.py:3924 appEditors/AppExcEditor.py:4139 -#: appEditors/AppGerberEditor.py:2832 +#: appEditors/AppExcEditor.py:3922 appEditors/AppExcEditor.py:4137 +#: appEditors/AppGerberEditor.py:2824 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:102 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:250 #: appGUI/preferences/gerber/GerberEditorPrefGroupUI.py:139 msgid "Pitch = Distance between elements of the array." msgstr "Pas = Distance entre les éléments du tableau." -#: appEditors/AppExcEditor.py:3937 appEditors/AppExcEditor.py:4153 +#: appEditors/AppExcEditor.py:3935 appEditors/AppExcEditor.py:4151 msgid "" "Angle at which the linear array is placed.\n" "The precision is of max 2 decimals.\n" @@ -2092,8 +2067,8 @@ msgstr "" "La valeur minimale est: -360 degrés.\n" "La valeur maximale est: 360,00 degrés." -#: appEditors/AppExcEditor.py:3958 appEditors/AppExcEditor.py:4174 -#: appEditors/AppGerberEditor.py:2866 +#: appEditors/AppExcEditor.py:3956 appEditors/AppExcEditor.py:4172 +#: appEditors/AppGerberEditor.py:2858 msgid "" "Direction for circular array.Can be CW = clockwise or CCW = counter " "clockwise." @@ -2101,8 +2076,8 @@ msgstr "" "Direction pour tableau circulaire. Peut être CW = sens horaire ou CCW = sens " "antihoraire." -#: appEditors/AppExcEditor.py:3965 appEditors/AppExcEditor.py:4181 -#: appEditors/AppGerberEditor.py:2874 +#: appEditors/AppExcEditor.py:3963 appEditors/AppExcEditor.py:4179 +#: appEditors/AppGerberEditor.py:2866 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:136 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:286 #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:145 @@ -2111,8 +2086,8 @@ msgstr "" msgid "CW" msgstr "CW" -#: appEditors/AppExcEditor.py:3966 appEditors/AppExcEditor.py:4182 -#: appEditors/AppGerberEditor.py:2875 +#: appEditors/AppExcEditor.py:3964 appEditors/AppExcEditor.py:4180 +#: appEditors/AppGerberEditor.py:2867 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:137 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:287 #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:146 @@ -2121,8 +2096,8 @@ msgstr "CW" msgid "CCW" msgstr "CCW" -#: appEditors/AppExcEditor.py:3970 appEditors/AppExcEditor.py:4186 -#: appEditors/AppGerberEditor.py:2881 +#: appEditors/AppExcEditor.py:3968 appEditors/AppExcEditor.py:4184 +#: appEditors/AppGerberEditor.py:2873 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:115 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:145 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:265 @@ -2132,32 +2107,32 @@ msgstr "CCW" msgid "Angle at which each element in circular array is placed." msgstr "Angle auquel chaque élément du tableau circulaire est placé." -#: appEditors/AppExcEditor.py:4004 +#: appEditors/AppExcEditor.py:4002 msgid "Slot Parameters" msgstr "Paramètres de Fente" -#: appEditors/AppExcEditor.py:4006 +#: appEditors/AppExcEditor.py:4004 msgid "" "Parameters for adding a slot (hole with oval shape)\n" "either single or as an part of an array." msgstr "" -"Paramètres pour l'ajout d'une fente (trou de forme ovale)\n" +"Paramètres pour l'ajout d'une rainure (trou de forme ovale)\n" "soit seul, soit faisant partie d'un tableau." -#: appEditors/AppExcEditor.py:4015 +#: appEditors/AppExcEditor.py:4013 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:162 #: appGUI/preferences/tools/ToolsCornersPrefGroupUI.py:56 -#: appObjects/FlatCAMObj.py:877 appTools/ToolCorners.py:399 +#: appObjects/FlatCAMObj.py:877 appTools/ToolCorners.py:403 #: appTools/ToolProperties.py:571 msgid "Length" msgstr "Longueur" -#: appEditors/AppExcEditor.py:4017 +#: appEditors/AppExcEditor.py:4015 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:164 msgid "Length = The length of the slot." -msgstr "Longueur = La longueur de la fente." +msgstr "Longueur = La longueur de la rainure." -#: appEditors/AppExcEditor.py:4031 +#: appEditors/AppExcEditor.py:4029 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:180 msgid "" "Direction on which the slot is oriented:\n" @@ -2165,32 +2140,32 @@ msgid "" "- 'Y' - vertical axis or \n" "- 'Angle' - a custom angle for the slot inclination" msgstr "" -"Direction sur laquelle la fente est orientée:\n" +"Direction sur laquelle la rainure est orientée:\n" "- 'X' - axe horizontal\n" "- 'Y' - axe vertical ou\n" -"- 'Angle' - un angle personnalisé pour l'inclinaison de la fente" +"- 'Angle' - un angle personnalisé pour l'inclinaison de la rainure" -#: appEditors/AppExcEditor.py:4046 +#: appEditors/AppExcEditor.py:4044 msgid "" "Angle at which the slot is placed.\n" "The precision is of max 2 decimals.\n" "Min value is: -360 degrees.\n" "Max value is: 360.00 degrees." msgstr "" -"Angle auquel la fente est placée.\n" +"Angle auquel la rainure est placée.\n" "La précision est de 2 décimales maximum.\n" "La valeur minimale est: -360 degrés.\n" "La valeur maximale est: 360,00 degrés." -#: appEditors/AppExcEditor.py:4079 +#: appEditors/AppExcEditor.py:4077 msgid "Slot Array Parameters" msgstr "Param. de la Matrice de Fentes" -#: appEditors/AppExcEditor.py:4081 +#: appEditors/AppExcEditor.py:4079 msgid "Parameters for the array of slots (linear or circular array)" msgstr "Paramètres pour la Matrice de Fente (matrice linéaire ou circulaire)" -#: appEditors/AppExcEditor.py:4090 +#: appEditors/AppExcEditor.py:4088 msgid "" "Select the type of slot array to create.\n" "It can be Linear X(Y) or Circular" @@ -2198,35 +2173,29 @@ msgstr "" "Sélectionnez le type de matrice à percer.\n" "Il peut être linéaire X (Y) ou circulaire" -#: appEditors/AppExcEditor.py:4102 +#: appEditors/AppExcEditor.py:4100 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:219 msgid "Nr of slots" -msgstr "Nb de Fentes" +msgstr "Nb de rainures" -#: appEditors/AppExcEditor.py:4103 +#: appEditors/AppExcEditor.py:4101 #: appGUI/preferences/excellon/ExcellonEditorPrefGroupUI.py:221 msgid "Specify how many slots to be in the array." -msgstr "Spécifiez le nombre de Fente dans le Tableau." +msgstr "Spécifiez le nombre de rainures dans la Table." -#: appEditors/AppExcEditor.py:4206 appEditors/AppGeoEditor.py:3304 -#: appEditors/AppGerberEditor.py:2903 appEditors/appGCodeEditor.py:754 -#, fuzzy -#| msgid "Exc Editor" +#: appEditors/AppExcEditor.py:4204 appEditors/AppGeoEditor.py:3311 +#: appEditors/AppGerberEditor.py:2895 appEditors/appGCodeEditor.py:754 msgid "Exit Editor" -msgstr "Éditeur Excellon" +msgstr "Sortir de l'Editeur" -#: appEditors/AppExcEditor.py:4209 appEditors/AppGeoEditor.py:3307 -#: appEditors/AppGerberEditor.py:2906 appEditors/appGCodeEditor.py:757 -#, fuzzy -#| msgid "Exc Editor" +#: appEditors/AppExcEditor.py:4207 appEditors/AppGeoEditor.py:3314 +#: appEditors/AppGerberEditor.py:2898 appEditors/appGCodeEditor.py:757 msgid "Exit from Editor." -msgstr "Éditeur Excellon" +msgstr "Sortir de l'Editeur." #: appEditors/AppGeoEditor.py:52 -#, fuzzy -#| msgid "Area Selection" msgid "Buffer Selection" -msgstr "Sélection de zone" +msgstr "Sélection de tampon" #: appEditors/AppGeoEditor.py:87 msgid "Buffer distance:" @@ -2250,11 +2219,11 @@ msgstr "" " - \"Biseauté:\" le coin est une ligne qui relie directement les " "fonctionnalités réunies dans le coin" -#: appEditors/AppGeoEditor.py:96 appEditors/AppGerberEditor.py:2642 +#: appEditors/AppGeoEditor.py:96 appEditors/AppGerberEditor.py:2634 msgid "Round" msgstr "Rond" -#: appEditors/AppGeoEditor.py:97 appEditors/AppGerberEditor.py:2643 +#: appEditors/AppGeoEditor.py:97 appEditors/AppGerberEditor.py:2635 #: appGUI/ObjectUI.py:1603 #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:223 #: appGUI/preferences/tools/Tools2EDrillsPrefGroupUI.py:68 @@ -2269,14 +2238,14 @@ msgstr "Rond" #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:289 #: appTools/ToolDrilling.py:2588 appTools/ToolExtractDrills.py:487 #: appTools/ToolExtractDrills.py:615 appTools/ToolInvertGerber.py:257 -#: appTools/ToolIsolation.py:3443 appTools/ToolMilling.py:2264 -#: appTools/ToolNCC.py:4366 appTools/ToolPaint.py:3156 +#: appTools/ToolIsolation.py:3444 appTools/ToolMilling.py:2264 +#: appTools/ToolNCC.py:4367 appTools/ToolPaint.py:3157 #: appTools/ToolPunchGerber.py:1060 appTools/ToolPunchGerber.py:1227 #: appTools/ToolQRCode.py:793 msgid "Square" msgstr "Carré" -#: appEditors/AppGeoEditor.py:98 appEditors/AppGerberEditor.py:2644 +#: appEditors/AppGeoEditor.py:98 appEditors/AppGerberEditor.py:2636 msgid "Beveled" msgstr "Biseauté" @@ -2290,26 +2259,24 @@ msgstr "Tampon Extérieur" #: appEditors/AppGeoEditor.py:113 msgid "Full Buffer" -msgstr "Plein tampon" +msgstr "Tampon" -#: appEditors/AppGeoEditor.py:134 appEditors/AppGeoEditor.py:2962 +#: appEditors/AppGeoEditor.py:134 appEditors/AppGeoEditor.py:2969 #: appGUI/MainGUI.py:684 appGUI/MainGUI.py:4679 #: appGUI/preferences/gerber/GerberEditorPrefGroupUI.py:191 msgid "Buffer Tool" msgstr "Outil Tampon" #: appEditors/AppGeoEditor.py:146 appEditors/AppGeoEditor.py:163 -#: appEditors/AppGeoEditor.py:180 appEditors/AppGeoEditor.py:2981 -#: appEditors/AppGeoEditor.py:3009 appEditors/AppGeoEditor.py:3037 -#: appEditors/AppGerberEditor.py:5113 +#: appEditors/AppGeoEditor.py:180 appEditors/AppGeoEditor.py:2988 +#: appEditors/AppGeoEditor.py:3016 appEditors/AppGeoEditor.py:3044 +#: appEditors/AppGerberEditor.py:5100 msgid "Buffer distance value is missing or wrong format. Add it and retry." msgstr "" "La valeur de la distance tampon est un format manquant ou incorrect. Ajoutez-" "le et réessayez." #: appEditors/AppGeoEditor.py:197 -#, fuzzy -#| msgid "Text Tool" msgid "Text Input Tool" msgstr "Outil Texte" @@ -2317,8 +2284,8 @@ msgstr "Outil Texte" msgid "Font" msgstr "Police" -#: appEditors/AppGeoEditor.py:316 appEditors/AppGerberEditor.py:2499 -#: appEditors/AppGerberEditor.py:3955 appGUI/ObjectUI.py:316 +#: appEditors/AppGeoEditor.py:316 appEditors/AppGerberEditor.py:2491 +#: appEditors/AppGerberEditor.py:3947 appGUI/ObjectUI.py:316 #: appGUI/preferences/general/GeneralAPPSetGroupUI.py:103 #: appGUI/preferences/tools/Tools2CThievingPrefGroupUI.py:167 #: appGUI/preferences/tools/Tools2CThievingPrefGroupUI.py:196 @@ -2344,18 +2311,18 @@ msgstr "Outil Texte" #: appGUI/ObjectUI.py:1161 appObjects/FlatCAMExcellon.py:886 #: appObjects/FlatCAMGeometry.py:962 appTools/ToolDrilling.py:711 #: appTools/ToolDrilling.py:1033 appTools/ToolDrilling.py:2116 -#: appTools/ToolIsolation.py:698 appTools/ToolIsolation.py:3179 +#: appTools/ToolIsolation.py:698 appTools/ToolIsolation.py:3180 #: appTools/ToolMilling.py:790 appTools/ToolMilling.py:1046 #: appTools/ToolMilling.py:1711 appTools/ToolNCC.py:329 -#: appTools/ToolNCC.py:2293 appTools/ToolNCC.py:4063 appTools/ToolPaint.py:302 -#: appTools/ToolPaint.py:2957 app_Main.py:2088 app_Main.py:2516 +#: appTools/ToolNCC.py:2294 appTools/ToolNCC.py:4064 appTools/ToolPaint.py:302 +#: appTools/ToolPaint.py:2958 app_Main.py:2088 app_Main.py:2516 #: app_Main.py:2622 msgid "Tool" msgstr "Outil" #: appEditors/AppGeoEditor.py:415 appEditors/AppGeoEditor.py:549 #: appGUI/MainGUI.py:688 appGUI/MainGUI.py:1047 appGUI/MainGUI.py:2216 -#: appGUI/ObjectUI.py:1808 appTools/ToolPaint.py:226 appTools/ToolPaint.py:2747 +#: appGUI/ObjectUI.py:1808 appTools/ToolPaint.py:226 appTools/ToolPaint.py:2748 msgid "Paint Tool" msgstr "Outil de Peinture" @@ -2380,14 +2347,14 @@ msgstr "" "- Ligne: lignes parallèles." #: appEditors/AppGeoEditor.py:585 appEditors/AppGeoEditor.py:1074 -#: appEditors/AppGeoEditor.py:2969 appEditors/AppGeoEditor.py:2997 -#: appEditors/AppGeoEditor.py:3025 appEditors/AppGeoEditor.py:4407 -#: appEditors/AppGerberEditor.py:5768 +#: appEditors/AppGeoEditor.py:2976 appEditors/AppGeoEditor.py:3004 +#: appEditors/AppGeoEditor.py:3032 appEditors/AppGeoEditor.py:4413 +#: appEditors/AppGerberEditor.py:5755 msgid "Cancelled. No shape selected." msgstr "Annulé. Aucune forme sélectionnée." -#: appEditors/AppGeoEditor.py:598 appEditors/AppGeoEditor.py:2987 -#: appEditors/AppGeoEditor.py:3015 appEditors/AppGeoEditor.py:3043 +#: appEditors/AppGeoEditor.py:598 appEditors/AppGeoEditor.py:2994 +#: appEditors/AppGeoEditor.py:3022 appEditors/AppGeoEditor.py:3050 #: appGUI/preferences/geometry/GeometryGenPrefGroupUI.py:71 #: appObjects/FlatCAMObj.py:495 appTools/ToolProperties.py:113 #: appTools/ToolProperties.py:161 @@ -2395,26 +2362,26 @@ msgid "Tools" msgstr "Outils" #: appEditors/AppGeoEditor.py:609 appEditors/AppGeoEditor.py:1038 -#: appEditors/AppGerberEditor.py:5303 appEditors/AppGerberEditor.py:5732 +#: appEditors/AppGerberEditor.py:5290 appEditors/AppGerberEditor.py:5719 #: appGUI/MainGUI.py:692 appGUI/MainGUI.py:1072 appGUI/MainGUI.py:2241 #: appTools/ToolTransform.py:85 msgid "Transform Tool" msgstr "Outil de Transformation" #: appEditors/AppGeoEditor.py:610 appEditors/AppGeoEditor.py:702 -#: appEditors/AppGerberEditor.py:5304 appEditors/AppGerberEditor.py:5396 +#: appEditors/AppGerberEditor.py:5291 appEditors/AppGerberEditor.py:5383 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:88 #: appTools/ToolTransform.py:513 appTools/ToolTransform.py:633 msgid "Rotate" msgstr "Tourner" -#: appEditors/AppGeoEditor.py:611 appEditors/AppGerberEditor.py:5305 +#: appEditors/AppGeoEditor.py:611 appEditors/AppGerberEditor.py:5292 #: appTools/ToolTransform.py:514 msgid "Skew/Shear" msgstr "Inclinaison/Cisaillement" -#: appEditors/AppGeoEditor.py:612 appEditors/AppGerberEditor.py:2691 -#: appEditors/AppGerberEditor.py:5306 appGUI/MainGUI.py:773 +#: appEditors/AppGeoEditor.py:612 appEditors/AppGerberEditor.py:2683 +#: appEditors/AppGerberEditor.py:5293 appGUI/MainGUI.py:773 #: appGUI/MainGUI.py:1194 appGUI/MainGUI.py:1661 appGUI/MainGUI.py:2363 #: appGUI/MainGUI.py:4932 appGUI/ObjectUI.py:125 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:147 @@ -2422,13 +2389,13 @@ msgstr "Inclinaison/Cisaillement" msgid "Scale" msgstr "Mise à l'échelle" -#: appEditors/AppGeoEditor.py:613 appEditors/AppGerberEditor.py:5307 +#: appEditors/AppGeoEditor.py:613 appEditors/AppGerberEditor.py:5294 #: appTools/ToolTransform.py:516 msgid "Mirror (Flip)" msgstr "Miroir (flip)" -#: appEditors/AppGeoEditor.py:615 appEditors/AppGerberEditor.py:2651 -#: appEditors/AppGerberEditor.py:5309 appGUI/MainGUI.py:770 +#: appEditors/AppGeoEditor.py:615 appEditors/AppGerberEditor.py:2643 +#: appEditors/AppGerberEditor.py:5296 appGUI/MainGUI.py:770 #: appGUI/MainGUI.py:1192 appGUI/MainGUI.py:1616 appGUI/MainGUI.py:1659 #: appGUI/MainGUI.py:2361 appGUI/MainGUI.py:4923 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:212 @@ -2436,7 +2403,7 @@ msgstr "Miroir (flip)" msgid "Buffer" msgstr "Tampon" -#: appEditors/AppGeoEditor.py:646 appEditors/AppGerberEditor.py:5340 +#: appEditors/AppGeoEditor.py:646 appEditors/AppGerberEditor.py:5327 #: appGUI/GUIElements.py:3674 #: appGUI/preferences/tools/ToolsFilmPrefGroupUI.py:169 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:44 @@ -2445,7 +2412,7 @@ msgstr "Tampon" msgid "Reference" msgstr "Référence" -#: appEditors/AppGeoEditor.py:648 appEditors/AppGerberEditor.py:5342 +#: appEditors/AppGeoEditor.py:648 appEditors/AppGerberEditor.py:5329 msgid "" "The reference point for Rotate, Skew, Scale, Mirror.\n" "Can be:\n" @@ -2463,7 +2430,7 @@ msgstr "" "- Sélection min.-> le point (minx, miny) de la boîte englobante de la " "sélection" -#: appEditors/AppGeoEditor.py:656 appEditors/AppGerberEditor.py:5350 +#: appEditors/AppGeoEditor.py:656 appEditors/AppGerberEditor.py:5337 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:54 #: appTools/ToolCalibration.py:126 appTools/ToolCalibration.py:127 #: appTools/ToolTransform.py:557 @@ -2471,18 +2438,18 @@ msgid "Origin" msgstr "Origine" #: appEditors/AppGeoEditor.py:656 appEditors/AppGeoEditor.py:1047 -#: appEditors/AppGerberEditor.py:5350 appEditors/AppGerberEditor.py:5741 +#: appEditors/AppGerberEditor.py:5337 appEditors/AppGerberEditor.py:5728 #: appGUI/preferences/general/GeneralGUIPrefGroupUI.py:250 #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:285 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:311 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:256 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:54 -#: appTools/ToolIsolation.py:3381 appTools/ToolNCC.py:4322 -#: appTools/ToolPaint.py:3103 appTools/ToolTransform.py:557 defaults.py:571 +#: appTools/ToolIsolation.py:3382 appTools/ToolNCC.py:4323 +#: appTools/ToolPaint.py:3104 appTools/ToolTransform.py:557 defaults.py:571 msgid "Selection" msgstr "Sélection" -#: appEditors/AppGeoEditor.py:656 appEditors/AppGerberEditor.py:5350 +#: appEditors/AppGeoEditor.py:656 appEditors/AppGerberEditor.py:5337 #: appGUI/preferences/tools/Tools2sidedPrefGroupUI.py:85 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:54 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:60 @@ -2490,29 +2457,29 @@ msgstr "Sélection" msgid "Point" msgstr "Point" -#: appEditors/AppGeoEditor.py:656 appEditors/AppGerberEditor.py:5350 +#: appEditors/AppGeoEditor.py:656 appEditors/AppGerberEditor.py:5337 msgid "Minimum" msgstr "Le minimum" #: appEditors/AppGeoEditor.py:662 appEditors/AppGeoEditor.py:958 -#: appEditors/AppGerberEditor.py:5356 appEditors/AppGerberEditor.py:5652 +#: appEditors/AppGerberEditor.py:5343 appEditors/AppGerberEditor.py:5639 #: appGUI/preferences/tools/Tools2EDrillsPrefGroupUI.py:131 #: appGUI/preferences/tools/Tools2PunchGerberPrefGroupUI.py:133 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:243 #: appTools/ToolExtractDrills.py:557 appTools/ToolExtractDrills.py:668 #: appTools/ToolPunchGerber.py:1166 appTools/ToolPunchGerber.py:1276 -#: appTools/ToolTransform.py:563 appTools/ToolTransform.py:889 app_Main.py:8032 +#: appTools/ToolTransform.py:563 appTools/ToolTransform.py:889 app_Main.py:8033 msgid "Value" msgstr "Valeur" -#: appEditors/AppGeoEditor.py:664 appEditors/AppGerberEditor.py:5358 +#: appEditors/AppGeoEditor.py:664 appEditors/AppGerberEditor.py:5345 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:62 #: appTools/ToolTransform.py:565 msgid "A point of reference in format X,Y." msgstr "Un point de référence au format X, Y." -#: appEditors/AppGeoEditor.py:671 appEditors/AppGerberEditor.py:2594 -#: appEditors/AppGerberEditor.py:5365 appGUI/ObjectUI.py:2375 +#: appEditors/AppGeoEditor.py:671 appEditors/AppGerberEditor.py:2586 +#: appEditors/AppGerberEditor.py:5352 appGUI/ObjectUI.py:2375 #: appTools/ToolDblSided.py:708 appTools/ToolDblSided.py:896 #: appTools/ToolNCC.py:63 appTools/ToolPaint.py:137 #: appTools/ToolSolderPaste.py:160 appTools/ToolSolderPaste.py:1204 @@ -2520,12 +2487,12 @@ msgstr "Un point de référence au format X, Y." msgid "Add" msgstr "Ajouter" -#: appEditors/AppGeoEditor.py:673 appEditors/AppGerberEditor.py:5367 +#: appEditors/AppGeoEditor.py:673 appEditors/AppGerberEditor.py:5354 #: appTools/ToolTransform.py:574 msgid "Add point coordinates from clipboard." msgstr "Ajoutez des coordonnées de point à partir du presse-papiers." -#: appEditors/AppGeoEditor.py:688 appEditors/AppGerberEditor.py:5382 +#: appEditors/AppGeoEditor.py:688 appEditors/AppGerberEditor.py:5369 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:98 #: appTools/ToolTransform.py:619 msgid "" @@ -2539,7 +2506,7 @@ msgstr "" "Nombres positifs pour le mouvement en CW.\n" "Nombres négatifs pour le mouvement CCW." -#: appEditors/AppGeoEditor.py:704 appEditors/AppGerberEditor.py:5398 +#: appEditors/AppGeoEditor.py:704 appEditors/AppGerberEditor.py:5385 #: appTools/ToolTransform.py:635 msgid "" "Rotate the selected object(s).\n" @@ -2551,7 +2518,7 @@ msgstr "" "le cadre de sélection pour tous les objets sélectionnés." #: appEditors/AppGeoEditor.py:724 appEditors/AppGeoEditor.py:786 -#: appEditors/AppGerberEditor.py:5418 appEditors/AppGerberEditor.py:5480 +#: appEditors/AppGerberEditor.py:5405 appEditors/AppGerberEditor.py:5467 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:112 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:151 #: appTools/ToolTransform.py:655 appTools/ToolTransform.py:717 @@ -2559,14 +2526,14 @@ msgid "Link" msgstr "Lien" #: appEditors/AppGeoEditor.py:726 appEditors/AppGeoEditor.py:788 -#: appEditors/AppGerberEditor.py:5420 appEditors/AppGerberEditor.py:5482 +#: appEditors/AppGerberEditor.py:5407 appEditors/AppGerberEditor.py:5469 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:114 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:153 #: appTools/ToolTransform.py:657 appTools/ToolTransform.py:719 msgid "Link the Y entry to X entry and copy its content." msgstr "Liez l'entrée Y à l'entrée X et copiez son contenu." -#: appEditors/AppGeoEditor.py:731 appEditors/AppGerberEditor.py:5425 +#: appEditors/AppGeoEditor.py:731 appEditors/AppGerberEditor.py:5412 #: appGUI/preferences/tools/ToolsFilmPrefGroupUI.py:151 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:124 #: appTools/ToolFilm.py:1045 appTools/ToolTransform.py:662 @@ -2574,7 +2541,7 @@ msgid "X angle" msgstr "Angle X" #: appEditors/AppGeoEditor.py:733 appEditors/AppGeoEditor.py:754 -#: appEditors/AppGerberEditor.py:5427 appEditors/AppGerberEditor.py:5448 +#: appEditors/AppGerberEditor.py:5414 appEditors/AppGerberEditor.py:5435 #: appTools/ToolTransform.py:664 appTools/ToolTransform.py:685 msgid "" "Angle for Skew action, in degrees.\n" @@ -2583,13 +2550,13 @@ msgstr "" "Angle pour l'action asymétrique, en degrés.\n" "Nombre flottant entre -360 et 360." -#: appEditors/AppGeoEditor.py:741 appEditors/AppGerberEditor.py:5435 +#: appEditors/AppGeoEditor.py:741 appEditors/AppGerberEditor.py:5422 #: appTools/ToolTransform.py:672 msgid "Skew X" msgstr "Inclinaison X" #: appEditors/AppGeoEditor.py:743 appEditors/AppGeoEditor.py:764 -#: appEditors/AppGerberEditor.py:5437 appEditors/AppGerberEditor.py:5458 +#: appEditors/AppGerberEditor.py:5424 appEditors/AppGerberEditor.py:5445 #: appTools/ToolTransform.py:674 appTools/ToolTransform.py:695 msgid "" "Skew/shear the selected object(s).\n" @@ -2600,38 +2567,38 @@ msgstr "" "Le point de référence est le milieu de\n" "le cadre de sélection pour tous les objets sélectionnés." -#: appEditors/AppGeoEditor.py:752 appEditors/AppGerberEditor.py:5446 +#: appEditors/AppGeoEditor.py:752 appEditors/AppGerberEditor.py:5433 #: appGUI/preferences/tools/ToolsFilmPrefGroupUI.py:160 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:138 #: appTools/ToolFilm.py:1054 appTools/ToolTransform.py:683 msgid "Y angle" msgstr "Angle Y" -#: appEditors/AppGeoEditor.py:762 appEditors/AppGerberEditor.py:5456 +#: appEditors/AppGeoEditor.py:762 appEditors/AppGerberEditor.py:5443 #: appTools/ToolTransform.py:693 msgid "Skew Y" msgstr "Inclinaison Y" -#: appEditors/AppGeoEditor.py:793 appEditors/AppGerberEditor.py:5487 +#: appEditors/AppGeoEditor.py:793 appEditors/AppGerberEditor.py:5474 #: appGUI/preferences/tools/ToolsFilmPrefGroupUI.py:120 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:162 #: appTools/ToolFilm.py:1001 appTools/ToolTransform.py:724 msgid "X factor" msgstr "Facteur X" -#: appEditors/AppGeoEditor.py:795 appEditors/AppGerberEditor.py:5489 +#: appEditors/AppGeoEditor.py:795 appEditors/AppGerberEditor.py:5476 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:164 #: appTools/ToolTransform.py:726 msgid "Factor for scaling on X axis." msgstr "Facteur de mise à l'échelle sur l'axe X." -#: appEditors/AppGeoEditor.py:802 appEditors/AppGerberEditor.py:5496 +#: appEditors/AppGeoEditor.py:802 appEditors/AppGerberEditor.py:5483 #: appTools/ToolTransform.py:733 msgid "Scale X" msgstr "Mise à l'échelle X" #: appEditors/AppGeoEditor.py:804 appEditors/AppGeoEditor.py:824 -#: appEditors/AppGerberEditor.py:5498 appEditors/AppGerberEditor.py:5518 +#: appEditors/AppGerberEditor.py:5485 appEditors/AppGerberEditor.py:5505 #: appTools/ToolTransform.py:735 appTools/ToolTransform.py:755 msgid "" "Scale the selected object(s).\n" @@ -2642,59 +2609,59 @@ msgstr "" "Le point de référence dépend de\n" "l'état de la case à cocher référence d'échelle." -#: appEditors/AppGeoEditor.py:813 appEditors/AppGerberEditor.py:5507 +#: appEditors/AppGeoEditor.py:813 appEditors/AppGerberEditor.py:5494 #: appGUI/preferences/tools/ToolsFilmPrefGroupUI.py:129 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:175 #: appTools/ToolFilm.py:1010 appTools/ToolTransform.py:744 msgid "Y factor" msgstr "Facteur Y" -#: appEditors/AppGeoEditor.py:815 appEditors/AppGerberEditor.py:5509 +#: appEditors/AppGeoEditor.py:815 appEditors/AppGerberEditor.py:5496 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:177 #: appTools/ToolTransform.py:746 msgid "Factor for scaling on Y axis." msgstr "Facteur de mise à l'échelle sur l'axe Y." -#: appEditors/AppGeoEditor.py:822 appEditors/AppGerberEditor.py:5516 +#: appEditors/AppGeoEditor.py:822 appEditors/AppGerberEditor.py:5503 #: appTools/ToolTransform.py:753 msgid "Scale Y" msgstr "Mise à l'échelle Y" -#: appEditors/AppGeoEditor.py:849 appEditors/AppGerberEditor.py:5543 +#: appEditors/AppGeoEditor.py:849 appEditors/AppGerberEditor.py:5530 #: appTools/ToolTransform.py:780 msgid "Flip on X" msgstr "Miroir sur X" #: appEditors/AppGeoEditor.py:851 appEditors/AppGeoEditor.py:856 -#: appEditors/AppGerberEditor.py:5545 appEditors/AppGerberEditor.py:5550 +#: appEditors/AppGerberEditor.py:5532 appEditors/AppGerberEditor.py:5537 #: appTools/ToolTransform.py:782 appTools/ToolTransform.py:787 msgid "Flip the selected object(s) over the X axis." msgstr "Retournez le ou les objets sélectionnés sur l’axe X." -#: appEditors/AppGeoEditor.py:854 appEditors/AppGerberEditor.py:5548 +#: appEditors/AppGeoEditor.py:854 appEditors/AppGerberEditor.py:5535 #: appTools/ToolTransform.py:785 msgid "Flip on Y" msgstr "Miroir sur Y" -#: appEditors/AppGeoEditor.py:874 appEditors/AppGerberEditor.py:5568 +#: appEditors/AppGeoEditor.py:874 appEditors/AppGerberEditor.py:5555 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:191 #: appTools/ToolTransform.py:805 msgid "X val" msgstr "Valeur X" -#: appEditors/AppGeoEditor.py:876 appEditors/AppGerberEditor.py:5570 +#: appEditors/AppGeoEditor.py:876 appEditors/AppGerberEditor.py:5557 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:193 #: appTools/ToolTransform.py:807 msgid "Distance to offset on X axis. In current units." msgstr "Distance à compenser sur l'axe X. En unités actuelles." -#: appEditors/AppGeoEditor.py:883 appEditors/AppGerberEditor.py:5577 +#: appEditors/AppGeoEditor.py:883 appEditors/AppGerberEditor.py:5564 #: appTools/ToolTransform.py:814 msgid "Offset X" msgstr "Décalage X" #: appEditors/AppGeoEditor.py:885 appEditors/AppGeoEditor.py:905 -#: appEditors/AppGerberEditor.py:5579 appEditors/AppGerberEditor.py:5599 +#: appEditors/AppGerberEditor.py:5566 appEditors/AppGerberEditor.py:5586 #: appTools/ToolTransform.py:816 appTools/ToolTransform.py:836 msgid "" "Offset the selected object(s).\n" @@ -2705,24 +2672,24 @@ msgstr "" "Le point de référence est le milieu de\n" "le cadre de sélection pour tous les objets sélectionnés.\n" -#: appEditors/AppGeoEditor.py:894 appEditors/AppGerberEditor.py:5588 +#: appEditors/AppGeoEditor.py:894 appEditors/AppGerberEditor.py:5575 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:204 #: appTools/ToolTransform.py:825 msgid "Y val" msgstr "Valeur Y" -#: appEditors/AppGeoEditor.py:896 appEditors/AppGerberEditor.py:5590 +#: appEditors/AppGeoEditor.py:896 appEditors/AppGerberEditor.py:5577 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:206 #: appTools/ToolTransform.py:827 msgid "Distance to offset on Y axis. In current units." msgstr "Distance à compenser sur l'axe X. En unités actuelles." -#: appEditors/AppGeoEditor.py:903 appEditors/AppGerberEditor.py:5597 +#: appEditors/AppGeoEditor.py:903 appEditors/AppGerberEditor.py:5584 #: appTools/ToolTransform.py:834 msgid "Offset Y" msgstr "Décalage Y" -#: appEditors/AppGeoEditor.py:923 appEditors/AppGerberEditor.py:5617 +#: appEditors/AppGeoEditor.py:923 appEditors/AppGerberEditor.py:5604 #: appGUI/ObjectUI.py:462 appGUI/ObjectUI.py:499 #: appGUI/preferences/tools/Tools2InvertPrefGroupUI.py:67 #: appGUI/preferences/tools/Tools2QRCodePrefGroupUI.py:142 @@ -2732,7 +2699,7 @@ msgstr "Décalage Y" msgid "Rounded" msgstr "Arrondi" -#: appEditors/AppGeoEditor.py:925 appEditors/AppGerberEditor.py:5619 +#: appEditors/AppGeoEditor.py:925 appEditors/AppGerberEditor.py:5606 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:218 #: appTools/ToolTransform.py:856 msgid "" @@ -2746,14 +2713,14 @@ msgstr "" "S'il n'est pas coché, le tampon suivra la géométrie exacte\n" "de la forme tamponnée." -#: appEditors/AppGeoEditor.py:933 appEditors/AppGerberEditor.py:5627 +#: appEditors/AppGeoEditor.py:933 appEditors/AppGerberEditor.py:5614 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:226 #: appTools/ToolDistance.py:409 appTools/ToolDistanceMin.py:199 #: appTools/ToolTransform.py:864 msgid "Distance" msgstr "Distance" -#: appEditors/AppGeoEditor.py:935 appEditors/AppGerberEditor.py:5629 +#: appEditors/AppGeoEditor.py:935 appEditors/AppGerberEditor.py:5616 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:228 #: appTools/ToolTransform.py:866 msgid "" @@ -2767,12 +2734,12 @@ msgstr "" "Chaque élément de géométrie de l'objet sera augmenté\n" "ou diminué avec la «distance»." -#: appEditors/AppGeoEditor.py:947 appEditors/AppGerberEditor.py:5641 +#: appEditors/AppGeoEditor.py:947 appEditors/AppGerberEditor.py:5628 #: appTools/ToolTransform.py:878 msgid "Buffer D" msgstr "Tampon D" -#: appEditors/AppGeoEditor.py:949 appEditors/AppGerberEditor.py:5643 +#: appEditors/AppGeoEditor.py:949 appEditors/AppGerberEditor.py:5630 #: appTools/ToolTransform.py:880 msgid "" "Create the buffer effect on each geometry,\n" @@ -2781,7 +2748,7 @@ msgstr "" "Créez l'effet tampon sur chaque géométrie,\n" "élément de l'objet sélectionné, en utilisant la distance." -#: appEditors/AppGeoEditor.py:960 appEditors/AppGerberEditor.py:5654 +#: appEditors/AppGeoEditor.py:960 appEditors/AppGerberEditor.py:5641 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:245 #: appTools/ToolTransform.py:891 msgid "" @@ -2797,12 +2764,12 @@ msgstr "" "ou diminué pour correspondre à la «valeur». La valeur est un pourcentage\n" "de la dimension initiale." -#: appEditors/AppGeoEditor.py:973 appEditors/AppGerberEditor.py:5667 +#: appEditors/AppGeoEditor.py:973 appEditors/AppGerberEditor.py:5654 #: appTools/ToolTransform.py:904 msgid "Buffer F" msgstr "Tampon F" -#: appEditors/AppGeoEditor.py:975 appEditors/AppGerberEditor.py:5669 +#: appEditors/AppGeoEditor.py:975 appEditors/AppGerberEditor.py:5656 #: appTools/ToolTransform.py:906 msgid "" "Create the buffer effect on each geometry,\n" @@ -2811,33 +2778,33 @@ msgstr "" "Créez l'effet tampon sur chaque géométrie,\n" "élément de l'objet sélectionné, en utilisant le facteur." -#: appEditors/AppGeoEditor.py:1046 appEditors/AppGerberEditor.py:5740 +#: appEditors/AppGeoEditor.py:1046 appEditors/AppGerberEditor.py:5727 #: appGUI/ObjectUI.py:1557 appGUI/preferences/tools/Tools2CalPrefGroupUI.py:48 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:54 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:70 #: appTools/ToolCalibration.py:881 appTools/ToolDrilling.py:2540 #: appTools/ToolFilm.py:934 appTools/ToolMilling.py:2218 -#: appTools/ToolNCC.py:3885 appTools/ToolPaint.py:2805 +#: appTools/ToolNCC.py:3886 appTools/ToolPaint.py:2806 #: appTools/ToolPanelize.py:698 appTools/ToolTransform.py:557 msgid "Object" msgstr "Objet" #: appEditors/AppGeoEditor.py:1110 appEditors/AppGeoEditor.py:1133 #: appEditors/AppGeoEditor.py:1279 appEditors/AppGeoEditor.py:1304 -#: appEditors/AppGeoEditor.py:1338 appEditors/AppGeoEditor.py:1373 -#: appEditors/AppGeoEditor.py:1404 appEditors/AppGerberEditor.py:5804 -#: appEditors/AppGerberEditor.py:5827 appEditors/AppGerberEditor.py:5972 -#: appEditors/AppGerberEditor.py:6005 appEditors/AppGerberEditor.py:6048 -#: appEditors/AppGerberEditor.py:6089 appEditors/AppGerberEditor.py:6125 +#: appEditors/AppGeoEditor.py:1339 appEditors/AppGeoEditor.py:1374 +#: appEditors/AppGeoEditor.py:1405 appEditors/AppGerberEditor.py:5791 +#: appEditors/AppGerberEditor.py:5814 appEditors/AppGerberEditor.py:5959 +#: appEditors/AppGerberEditor.py:5992 appEditors/AppGerberEditor.py:6035 +#: appEditors/AppGerberEditor.py:6076 appEditors/AppGerberEditor.py:6112 msgid "No shape selected." msgstr "Aucune forme sélectionnée." -#: appEditors/AppGeoEditor.py:1118 appEditors/AppGerberEditor.py:5812 +#: appEditors/AppGeoEditor.py:1118 appEditors/AppGerberEditor.py:5799 #: appTools/ToolTransform.py:150 msgid "Incorrect format for Point value. Needs format X,Y" msgstr "Format incorrect pour la valeur de point. Nécessite le format X, Y" -#: appEditors/AppGeoEditor.py:1143 appEditors/AppGerberEditor.py:5837 +#: appEditors/AppGeoEditor.py:1143 appEditors/AppGerberEditor.py:5824 #: appTools/ToolTransform.py:167 msgid "Rotate transformation can not be done for a value of 0." msgstr "" @@ -2845,7 +2812,7 @@ msgstr "" "0." #: appEditors/AppGeoEditor.py:1201 appEditors/AppGeoEditor.py:1222 -#: appEditors/AppGerberEditor.py:5895 appEditors/AppGerberEditor.py:5916 +#: appEditors/AppGerberEditor.py:5882 appEditors/AppGerberEditor.py:5903 #: appTools/ToolTransform.py:225 appTools/ToolTransform.py:246 msgid "Scale transformation can not be done for a factor of 0 or 1." msgstr "" @@ -2853,19 +2820,19 @@ msgstr "" "ou 1." #: appEditors/AppGeoEditor.py:1235 appEditors/AppGeoEditor.py:1244 -#: appEditors/AppGerberEditor.py:5929 appEditors/AppGerberEditor.py:5938 +#: appEditors/AppGerberEditor.py:5916 appEditors/AppGerberEditor.py:5925 #: appTools/ToolTransform.py:259 appTools/ToolTransform.py:268 msgid "Offset transformation can not be done for a value of 0." msgstr "" "La transformation de décalage ne peut pas être effectuée pour une valeur de " "0." -#: appEditors/AppGeoEditor.py:1274 appEditors/AppGerberEditor.py:5975 +#: appEditors/AppGeoEditor.py:1274 appEditors/AppGerberEditor.py:5962 #: appTools/ToolTransform.py:296 msgid "Appying Rotate" msgstr "Appliquer la Rotation" -#: appEditors/AppGeoEditor.py:1287 appEditors/AppGerberEditor.py:5987 +#: appEditors/AppGeoEditor.py:1287 appEditors/AppGerberEditor.py:5974 msgid "Done. Rotate completed." msgstr "Terminé. Rotation terminée." @@ -2873,17 +2840,17 @@ msgstr "Terminé. Rotation terminée." msgid "Rotation action was not executed" msgstr "L'action de rotation n'a pas été exécutée" -#: appEditors/AppGeoEditor.py:1307 appEditors/AppGerberEditor.py:6008 +#: appEditors/AppGeoEditor.py:1307 appEditors/AppGerberEditor.py:5995 #: appTools/ToolTransform.py:322 msgid "Applying Flip" msgstr "Appliquer Flip" -#: appEditors/AppGeoEditor.py:1315 appEditors/AppGerberEditor.py:6020 +#: appEditors/AppGeoEditor.py:1315 appEditors/AppGerberEditor.py:6007 #: appTools/ToolTransform.py:339 msgid "Flip on the Y axis done" msgstr "Tournez sur l'axe des Y fait" -#: appEditors/AppGeoEditor.py:1318 appEditors/AppGerberEditor.py:6028 +#: appEditors/AppGeoEditor.py:1318 appEditors/AppGerberEditor.py:6015 #: appTools/ToolTransform.py:348 msgid "Flip on the X axis done" msgstr "Tournez sur l'axe X terminé" @@ -2892,264 +2859,264 @@ msgstr "Tournez sur l'axe X terminé" msgid "Flip action was not executed" msgstr "L'action Flip n'a pas été exécutée" -#: appEditors/AppGeoEditor.py:1341 appEditors/AppGerberEditor.py:6051 +#: appEditors/AppGeoEditor.py:1342 appEditors/AppGerberEditor.py:6038 #: appTools/ToolTransform.py:369 msgid "Applying Skew" msgstr "Application de l'inclinaison" -#: appEditors/AppGeoEditor.py:1350 appEditors/AppGerberEditor.py:6067 +#: appEditors/AppGeoEditor.py:1351 appEditors/AppGerberEditor.py:6054 msgid "Skew on the X axis done" msgstr "Inclinaison sur l'axe X terminée" -#: appEditors/AppGeoEditor.py:1352 appEditors/AppGerberEditor.py:6069 +#: appEditors/AppGeoEditor.py:1353 appEditors/AppGerberEditor.py:6056 msgid "Skew on the Y axis done" msgstr "Inclinaison sur l'axe des Y faite" -#: appEditors/AppGeoEditor.py:1355 +#: appEditors/AppGeoEditor.py:1356 msgid "Skew action was not executed" msgstr "L'action de biais n'a pas été exécutée" -#: appEditors/AppGeoEditor.py:1376 appEditors/AppGerberEditor.py:6092 +#: appEditors/AppGeoEditor.py:1377 appEditors/AppGerberEditor.py:6079 #: appTools/ToolTransform.py:396 msgid "Applying Scale" msgstr "Échelle d'application" -#: appEditors/AppGeoEditor.py:1385 appEditors/AppGerberEditor.py:6105 +#: appEditors/AppGeoEditor.py:1386 appEditors/AppGerberEditor.py:6092 msgid "Scale on the X axis done" msgstr "Échelle terminée sur l'axe X" -#: appEditors/AppGeoEditor.py:1387 appEditors/AppGerberEditor.py:6107 +#: appEditors/AppGeoEditor.py:1388 appEditors/AppGerberEditor.py:6094 msgid "Scale on the Y axis done" msgstr "Echelle terminée sur l'axe des Y" -#: appEditors/AppGeoEditor.py:1389 +#: appEditors/AppGeoEditor.py:1390 msgid "Scale action was not executed" msgstr "L'action d'échelle n'a pas été exécutée" -#: appEditors/AppGeoEditor.py:1407 appEditors/AppGerberEditor.py:6128 +#: appEditors/AppGeoEditor.py:1408 appEditors/AppGerberEditor.py:6115 #: appTools/ToolTransform.py:424 msgid "Applying Offset" msgstr "Appliquer un Décalage" -#: appEditors/AppGeoEditor.py:1417 appEditors/AppGerberEditor.py:6149 +#: appEditors/AppGeoEditor.py:1418 appEditors/AppGerberEditor.py:6136 msgid "Offset on the X axis done" msgstr "Décalage sur l'axe X terminé" -#: appEditors/AppGeoEditor.py:1419 appEditors/AppGerberEditor.py:6151 +#: appEditors/AppGeoEditor.py:1420 appEditors/AppGerberEditor.py:6138 msgid "Offset on the Y axis done" msgstr "Décalage sur l'axe Y terminé" -#: appEditors/AppGeoEditor.py:1422 +#: appEditors/AppGeoEditor.py:1423 msgid "Offset action was not executed" msgstr "L'action offset n'a pas été exécutée" -#: appEditors/AppGeoEditor.py:1429 appEditors/AppGerberEditor.py:6161 +#: appEditors/AppGeoEditor.py:1430 appEditors/AppGerberEditor.py:6148 msgid "No shape selected" msgstr "Aucune forme sélectionnée" -#: appEditors/AppGeoEditor.py:1432 appEditors/AppGerberEditor.py:6164 +#: appEditors/AppGeoEditor.py:1433 appEditors/AppGerberEditor.py:6151 #: appTools/ToolTransform.py:453 msgid "Applying Buffer" msgstr "Application du tampon" -#: appEditors/AppGeoEditor.py:1439 appEditors/AppGerberEditor.py:6186 +#: appEditors/AppGeoEditor.py:1440 appEditors/AppGerberEditor.py:6173 #: appTools/ToolTransform.py:474 msgid "Buffer done" msgstr "Tampon terminé" -#: appEditors/AppGeoEditor.py:1443 appEditors/AppGerberEditor.py:6190 +#: appEditors/AppGeoEditor.py:1444 appEditors/AppGerberEditor.py:6177 #: appTools/ToolTransform.py:443 appTools/ToolTransform.py:478 msgid "Action was not executed, due of" msgstr "L'action n'a pas été exécutée en raison de" -#: appEditors/AppGeoEditor.py:1447 appEditors/AppGerberEditor.py:6194 +#: appEditors/AppGeoEditor.py:1448 appEditors/AppGerberEditor.py:6181 msgid "Rotate ..." msgstr "Tourner ..." -#: appEditors/AppGeoEditor.py:1448 appEditors/AppGeoEditor.py:1497 -#: appEditors/AppGeoEditor.py:1512 appEditors/AppGerberEditor.py:6195 -#: appEditors/AppGerberEditor.py:6244 appEditors/AppGerberEditor.py:6259 +#: appEditors/AppGeoEditor.py:1449 appEditors/AppGeoEditor.py:1501 +#: appEditors/AppGeoEditor.py:1517 appEditors/AppGerberEditor.py:6182 +#: appEditors/AppGerberEditor.py:6234 appEditors/AppGerberEditor.py:6250 msgid "Enter an Angle Value (degrees)" msgstr "Entrer une valeur d'angle (degrés)" -#: appEditors/AppGeoEditor.py:1456 appEditors/AppGerberEditor.py:6203 +#: appEditors/AppGeoEditor.py:1458 appEditors/AppGerberEditor.py:6191 msgid "Geometry shape rotate done" msgstr "Rotation de la forme géométrique effectuée" -#: appEditors/AppGeoEditor.py:1459 appEditors/AppGerberEditor.py:6206 +#: appEditors/AppGeoEditor.py:1461 appEditors/AppGerberEditor.py:6194 msgid "Geometry shape rotate cancelled" msgstr "Rotation de la forme géométrique annulée" -#: appEditors/AppGeoEditor.py:1464 appEditors/AppGerberEditor.py:6211 +#: appEditors/AppGeoEditor.py:1466 appEditors/AppGerberEditor.py:6199 msgid "Offset on X axis ..." msgstr "Décalage sur l'axe des X ..." -#: appEditors/AppGeoEditor.py:1465 appEditors/AppGeoEditor.py:1482 -#: appEditors/AppGerberEditor.py:6212 appEditors/AppGerberEditor.py:6229 +#: appEditors/AppGeoEditor.py:1467 appEditors/AppGeoEditor.py:1485 +#: appEditors/AppGerberEditor.py:6200 appEditors/AppGerberEditor.py:6218 msgid "Enter a distance Value" msgstr "Entrez une valeur de distance" -#: appEditors/AppGeoEditor.py:1473 appEditors/AppGerberEditor.py:6220 +#: appEditors/AppGeoEditor.py:1476 appEditors/AppGerberEditor.py:6209 msgid "Geometry shape offset on X axis done" msgstr "Géométrie décalée sur l'axe des X effectuée" -#: appEditors/AppGeoEditor.py:1476 appEditors/AppGerberEditor.py:6223 +#: appEditors/AppGeoEditor.py:1479 appEditors/AppGerberEditor.py:6212 msgid "Geometry shape offset X cancelled" msgstr "Décalage géométrique X annulé" -#: appEditors/AppGeoEditor.py:1481 appEditors/AppGerberEditor.py:6228 +#: appEditors/AppGeoEditor.py:1484 appEditors/AppGerberEditor.py:6217 msgid "Offset on Y axis ..." msgstr "Décalage sur l'axe Y ..." -#: appEditors/AppGeoEditor.py:1490 appEditors/AppGerberEditor.py:6237 +#: appEditors/AppGeoEditor.py:1494 appEditors/AppGerberEditor.py:6227 msgid "Geometry shape offset on Y axis done" msgstr "Géométrie décalée sur l'axe des Y effectuée" -#: appEditors/AppGeoEditor.py:1493 +#: appEditors/AppGeoEditor.py:1497 msgid "Geometry shape offset on Y axis canceled" msgstr "Décalage de la forme de la géométrie sur l'axe des Y" -#: appEditors/AppGeoEditor.py:1496 appEditors/AppGerberEditor.py:6243 +#: appEditors/AppGeoEditor.py:1500 appEditors/AppGerberEditor.py:6233 msgid "Skew on X axis ..." msgstr "Skew on X axis ..." -#: appEditors/AppGeoEditor.py:1505 appEditors/AppGerberEditor.py:6252 +#: appEditors/AppGeoEditor.py:1510 appEditors/AppGerberEditor.py:6243 msgid "Geometry shape skew on X axis done" msgstr "Forme de la géométrie inclinée sur l'axe X terminée" -#: appEditors/AppGeoEditor.py:1508 +#: appEditors/AppGeoEditor.py:1513 msgid "Geometry shape skew on X axis canceled" msgstr "Géométrie inclinée sur l'axe X annulée" -#: appEditors/AppGeoEditor.py:1511 appEditors/AppGerberEditor.py:6258 +#: appEditors/AppGeoEditor.py:1516 appEditors/AppGerberEditor.py:6249 msgid "Skew on Y axis ..." msgstr "Inclinez sur l'axe Y ..." -#: appEditors/AppGeoEditor.py:1520 appEditors/AppGerberEditor.py:6267 +#: appEditors/AppGeoEditor.py:1526 appEditors/AppGerberEditor.py:6259 msgid "Geometry shape skew on Y axis done" msgstr "Géométrie inclinée sur l'axe des Y" -#: appEditors/AppGeoEditor.py:1523 +#: appEditors/AppGeoEditor.py:1529 msgid "Geometry shape skew on Y axis canceled" msgstr "Géométrie inclinée sur l'axe des Y oblitérée" -#: appEditors/AppGeoEditor.py:1953 appEditors/AppGeoEditor.py:2024 -#: appEditors/AppGerberEditor.py:1448 appEditors/AppGerberEditor.py:1526 +#: appEditors/AppGeoEditor.py:1960 appEditors/AppGeoEditor.py:2031 +#: appEditors/AppGerberEditor.py:1441 appEditors/AppGerberEditor.py:1519 msgid "Click on Center point ..." msgstr "Cliquez sur Point central ..." -#: appEditors/AppGeoEditor.py:1966 appEditors/AppGerberEditor.py:1458 +#: appEditors/AppGeoEditor.py:1973 appEditors/AppGerberEditor.py:1451 msgid "Click on Perimeter point to complete ..." msgstr "Cliquez sur le point du périmètre pour terminer ..." -#: appEditors/AppGeoEditor.py:1998 +#: appEditors/AppGeoEditor.py:2005 msgid "Done. Adding Circle completed." msgstr "Terminé. Ajout du cercle terminé." -#: appEditors/AppGeoEditor.py:2052 appEditors/AppGerberEditor.py:1559 +#: appEditors/AppGeoEditor.py:2059 appEditors/AppGerberEditor.py:1552 msgid "Click on Start point ..." msgstr "Cliquez sur le point de départ ..." -#: appEditors/AppGeoEditor.py:2054 appEditors/AppGerberEditor.py:1561 +#: appEditors/AppGeoEditor.py:2061 appEditors/AppGerberEditor.py:1554 msgid "Click on Point3 ..." msgstr "Cliquez sur le point 3 ..." -#: appEditors/AppGeoEditor.py:2056 appEditors/AppGerberEditor.py:1563 +#: appEditors/AppGeoEditor.py:2063 appEditors/AppGerberEditor.py:1556 msgid "Click on Stop point ..." msgstr "Cliquez sur le point d'arrêt ..." -#: appEditors/AppGeoEditor.py:2061 appEditors/AppGerberEditor.py:1568 +#: appEditors/AppGeoEditor.py:2068 appEditors/AppGerberEditor.py:1561 msgid "Click on Stop point to complete ..." msgstr "Cliquez sur le point d'arrêt pour terminer ..." -#: appEditors/AppGeoEditor.py:2063 appEditors/AppGerberEditor.py:1570 +#: appEditors/AppGeoEditor.py:2070 appEditors/AppGerberEditor.py:1563 msgid "Click on Point2 to complete ..." msgstr "Cliquez sur le point 2 pour compléter ..." -#: appEditors/AppGeoEditor.py:2065 appEditors/AppGerberEditor.py:1572 +#: appEditors/AppGeoEditor.py:2072 appEditors/AppGerberEditor.py:1565 msgid "Click on Center point to complete ..." msgstr "Cliquez sur le point central pour terminer ..." -#: appEditors/AppGeoEditor.py:2077 +#: appEditors/AppGeoEditor.py:2084 #, python-format msgid "Direction: %s" msgstr "Direction: %s" -#: appEditors/AppGeoEditor.py:2091 appEditors/AppGerberEditor.py:1598 +#: appEditors/AppGeoEditor.py:2098 appEditors/AppGerberEditor.py:1591 msgid "Mode: Start -> Stop -> Center. Click on Start point ..." msgstr "" "Mode: Démarrer -> Arrêter -> Centre. Cliquez sur le point de départ ..." -#: appEditors/AppGeoEditor.py:2094 appEditors/AppGerberEditor.py:1601 +#: appEditors/AppGeoEditor.py:2101 appEditors/AppGerberEditor.py:1594 msgid "Mode: Point1 -> Point3 -> Point2. Click on Point1 ..." msgstr "Mode: Point 1 -> Point 3 -> Point 2. Cliquez sur Point 1 ..." -#: appEditors/AppGeoEditor.py:2097 appEditors/AppGerberEditor.py:1604 +#: appEditors/AppGeoEditor.py:2104 appEditors/AppGerberEditor.py:1597 msgid "Mode: Center -> Start -> Stop. Click on Center point ..." msgstr "Mode: Centre -> Démarrer -> Arrêter. Cliquez sur Point central ..." -#: appEditors/AppGeoEditor.py:2238 +#: appEditors/AppGeoEditor.py:2245 msgid "Done. Arc completed." msgstr "Terminé. Arc terminé." -#: appEditors/AppGeoEditor.py:2269 appEditors/AppGeoEditor.py:2342 +#: appEditors/AppGeoEditor.py:2276 appEditors/AppGeoEditor.py:2349 msgid "Click on 1st corner ..." msgstr "Cliquez sur le 1er coin ..." -#: appEditors/AppGeoEditor.py:2281 +#: appEditors/AppGeoEditor.py:2288 msgid "Click on opposite corner to complete ..." msgstr "Cliquez sur le coin opposé pour terminer ..." -#: appEditors/AppGeoEditor.py:2311 +#: appEditors/AppGeoEditor.py:2318 msgid "Done. Rectangle completed." msgstr "Terminé. Rectangle complété." -#: appEditors/AppGeoEditor.py:2386 +#: appEditors/AppGeoEditor.py:2393 msgid "Done. Polygon completed." msgstr "Terminé. Le polygone est terminé." -#: appEditors/AppGeoEditor.py:2400 appEditors/AppGeoEditor.py:2465 -#: appEditors/AppGerberEditor.py:1106 appEditors/AppGerberEditor.py:1326 +#: appEditors/AppGeoEditor.py:2407 appEditors/AppGeoEditor.py:2472 +#: appEditors/AppGerberEditor.py:1099 appEditors/AppGerberEditor.py:1319 msgid "Backtracked one point ..." msgstr "Retracé un point ..." -#: appEditors/AppGeoEditor.py:2443 +#: appEditors/AppGeoEditor.py:2450 msgid "Done. Path completed." msgstr "Terminé. Chemin complété." -#: appEditors/AppGeoEditor.py:2602 +#: appEditors/AppGeoEditor.py:2609 msgid "No shape selected. Select a shape to explode" msgstr "Aucune forme sélectionnée. Sélectionnez une forme à exploser" -#: appEditors/AppGeoEditor.py:2635 +#: appEditors/AppGeoEditor.py:2642 msgid "Done. Polygons exploded into lines." msgstr "Terminé. Les polygones ont explosé en lignes." -#: appEditors/AppGeoEditor.py:2667 +#: appEditors/AppGeoEditor.py:2674 msgid "MOVE: No shape selected. Select a shape to move" msgstr "Déplacer: Aucune forme sélectionnée. Sélectionnez une forme à déplacer" -#: appEditors/AppGeoEditor.py:2670 appEditors/AppGeoEditor.py:2690 +#: appEditors/AppGeoEditor.py:2677 appEditors/AppGeoEditor.py:2697 msgid " MOVE: Click on reference point ..." msgstr " Déplacer: Cliquez sur le point de référence ..." -#: appEditors/AppGeoEditor.py:2675 +#: appEditors/AppGeoEditor.py:2682 msgid " Click on destination point ..." msgstr " Cliquez sur le point de destination ..." -#: appEditors/AppGeoEditor.py:2715 +#: appEditors/AppGeoEditor.py:2722 msgid "Done. Geometry(s) Move completed." -msgstr "Terminé. Géométrie (s) Déplacement terminé." +msgstr "Terminé. Déplacement de Géométrie(s) terminé." -#: appEditors/AppGeoEditor.py:2848 +#: appEditors/AppGeoEditor.py:2855 msgid "Done. Geometry(s) Copy completed." -msgstr "Terminé. Géométrie (s) Copie terminée." +msgstr "Terminé. Copie de Géométrie(s) terminée." -#: appEditors/AppGeoEditor.py:2879 appEditors/AppGerberEditor.py:901 +#: appEditors/AppGeoEditor.py:2886 appEditors/AppGerberEditor.py:896 msgid "Click on 1st point ..." msgstr "Cliquez sur le 1er point ..." -#: appEditors/AppGeoEditor.py:2903 +#: appEditors/AppGeoEditor.py:2910 msgid "" "Font not supported. Only Regular, Bold, Italic and BoldItalic are supported. " "Error" @@ -3157,130 +3124,130 @@ msgstr "" "Police non supportée. Seuls les formats Normal, Gras, Italique et " "GrasItalique sont pris en charge. Erreur" -#: appEditors/AppGeoEditor.py:2911 +#: appEditors/AppGeoEditor.py:2918 msgid "No text to add." msgstr "Pas de texte à ajouter." -#: appEditors/AppGeoEditor.py:2921 +#: appEditors/AppGeoEditor.py:2928 msgid " Done. Adding Text completed." msgstr " Terminé. Ajout de texte terminé." -#: appEditors/AppGeoEditor.py:2958 +#: appEditors/AppGeoEditor.py:2965 msgid "Create buffer geometry ..." msgstr "Créer une géométrie tampon ..." -#: appEditors/AppGeoEditor.py:2993 appEditors/AppGerberEditor.py:5157 +#: appEditors/AppGeoEditor.py:3000 appEditors/AppGerberEditor.py:5144 msgid "Done. Buffer Tool completed." msgstr "Terminé. L'outil Tampon est terminé." -#: appEditors/AppGeoEditor.py:3021 +#: appEditors/AppGeoEditor.py:3028 msgid "Done. Buffer Int Tool completed." msgstr "Terminé. L'outil Intérieur du Tampon est terminé." -#: appEditors/AppGeoEditor.py:3049 +#: appEditors/AppGeoEditor.py:3056 msgid "Done. Buffer Ext Tool completed." msgstr "Terminé. L'outil Extérieur du Tampon est terminé." -#: appEditors/AppGeoEditor.py:3098 appEditors/AppGerberEditor.py:2164 +#: appEditors/AppGeoEditor.py:3105 appEditors/AppGerberEditor.py:2156 msgid "Select a shape to act as deletion area ..." msgstr "Sélectionnez une forme pour agir comme zone de suppression ..." -#: appEditors/AppGeoEditor.py:3100 appEditors/AppGeoEditor.py:3126 -#: appEditors/AppGeoEditor.py:3132 appEditors/AppGerberEditor.py:2166 +#: appEditors/AppGeoEditor.py:3107 appEditors/AppGeoEditor.py:3133 +#: appEditors/AppGeoEditor.py:3139 appEditors/AppGerberEditor.py:2158 msgid "Click to pick-up the erase shape..." msgstr "Cliquez pour récupérer la forme à effacer ..." -#: appEditors/AppGeoEditor.py:3136 appEditors/AppGerberEditor.py:2225 +#: appEditors/AppGeoEditor.py:3143 appEditors/AppGerberEditor.py:2217 msgid "Click to erase ..." msgstr "Cliquez pour effacer ..." -#: appEditors/AppGeoEditor.py:3165 appEditors/AppGerberEditor.py:2258 +#: appEditors/AppGeoEditor.py:3172 appEditors/AppGerberEditor.py:2250 msgid "Done. Eraser tool action completed." msgstr "Terminé. Action de l’outil gomme terminée." -#: appEditors/AppGeoEditor.py:3215 +#: appEditors/AppGeoEditor.py:3222 msgid "Create Paint geometry ..." msgstr "Créer une géométrie de peinture ..." -#: appEditors/AppGeoEditor.py:3228 appEditors/AppGerberEditor.py:2421 +#: appEditors/AppGeoEditor.py:3235 appEditors/AppGerberEditor.py:2413 msgid "Shape transformations ..." msgstr "Transformations de forme ..." -#: appEditors/AppGeoEditor.py:3284 appGUI/ObjectUI.py:901 +#: appEditors/AppGeoEditor.py:3291 appGUI/ObjectUI.py:901 #: appGUI/preferences/geometry/GeometryEditorPrefGroupUI.py:27 msgid "Geometry Editor" msgstr "Éditeur de Géométrie" -#: appEditors/AppGeoEditor.py:3290 appEditors/AppGerberEditor.py:2499 -#: appEditors/AppGerberEditor.py:3955 appEditors/appGCodeEditor.py:688 +#: appEditors/AppGeoEditor.py:3297 appEditors/AppGerberEditor.py:2491 +#: appEditors/AppGerberEditor.py:3947 appEditors/appGCodeEditor.py:688 #: appGUI/ObjectUI.py:316 appGUI/ObjectUI.py:999 appGUI/ObjectUI.py:2034 #: appTools/ToolCutOut.py:2024 appTools/ToolDblSided.py:521 #: appTools/ToolPunchGerber.py:1088 appTools/ToolTransform.py:579 msgid "Type" msgstr "Type" -#: appEditors/AppGeoEditor.py:3578 +#: appEditors/AppGeoEditor.py:3585 msgid "Ring" msgstr "L'anneau" -#: appEditors/AppGeoEditor.py:3580 +#: appEditors/AppGeoEditor.py:3587 msgid "Line" msgstr "Ligne" -#: appEditors/AppGeoEditor.py:3582 appGUI/MainGUI.py:1608 +#: appEditors/AppGeoEditor.py:3589 appGUI/MainGUI.py:1608 #: appGUI/ObjectUI.py:1604 #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:224 #: appGUI/preferences/tools/ToolsDrillPrefGroupUI.py:425 #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:309 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:328 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:290 -#: appTools/ToolDrilling.py:2589 appTools/ToolIsolation.py:3444 -#: appTools/ToolMilling.py:2265 appTools/ToolNCC.py:4367 -#: appTools/ToolPaint.py:3157 +#: appTools/ToolDrilling.py:2589 appTools/ToolIsolation.py:3445 +#: appTools/ToolMilling.py:2265 appTools/ToolNCC.py:4368 +#: appTools/ToolPaint.py:3158 msgid "Polygon" msgstr "Polygone" -#: appEditors/AppGeoEditor.py:3584 +#: appEditors/AppGeoEditor.py:3591 msgid "Multi-Line" msgstr "Multi-ligne" -#: appEditors/AppGeoEditor.py:3586 +#: appEditors/AppGeoEditor.py:3593 msgid "Multi-Polygon" msgstr "Multi-polygone" -#: appEditors/AppGeoEditor.py:3593 +#: appEditors/AppGeoEditor.py:3600 msgid "Geo Elem" msgstr "Élém. de Géo" -#: appEditors/AppGeoEditor.py:4044 +#: appEditors/AppGeoEditor.py:4050 msgid "Grid Snap enabled." msgstr "Accrochage à la grille activé." -#: appEditors/AppGeoEditor.py:4049 +#: appEditors/AppGeoEditor.py:4055 msgid "Grid Snap disabled." msgstr "Accrochage à la grille désactivé." -#: appEditors/AppGeoEditor.py:4414 appGUI/MainGUI.py:3328 +#: appEditors/AppGeoEditor.py:4420 appGUI/MainGUI.py:3328 #: appGUI/MainGUI.py:3374 appGUI/MainGUI.py:3392 appGUI/MainGUI.py:3536 #: appGUI/MainGUI.py:3575 appGUI/MainGUI.py:3587 msgid "Click on target point." msgstr "Cliquez sur le point cible." -#: appEditors/AppGeoEditor.py:4696 +#: appEditors/AppGeoEditor.py:4702 msgid "Editing MultiGeo Geometry, tool" msgstr "Modification de la géométrie MultiGeo, outil" -#: appEditors/AppGeoEditor.py:4698 appTools/ToolNCC.py:2295 +#: appEditors/AppGeoEditor.py:4704 appTools/ToolNCC.py:2296 msgid "with diameter" msgstr "avec diamètre" -#: appEditors/AppGeoEditor.py:4801 appEditors/AppGeoEditor.py:4836 +#: appEditors/AppGeoEditor.py:4807 appEditors/AppGeoEditor.py:4842 msgid "A selection of at least 2 geo items is required to do Intersection." msgstr "" "Une sélection d'au moins 2 éléments géographiques est requise pour effectuer " "Intersection." -#: appEditors/AppGeoEditor.py:4922 appEditors/AppGeoEditor.py:5026 +#: appEditors/AppGeoEditor.py:4928 appEditors/AppGeoEditor.py:5032 msgid "" "Negative buffer value is not accepted. Use Buffer interior to generate an " "'inside' shape" @@ -3288,58 +3255,58 @@ msgstr "" "La valeur de tampon négative n'est pas acceptée. Utiliser l'intérieur du " "tampon pour générer une forme «intérieure»" -#: appEditors/AppGeoEditor.py:4932 appEditors/AppGeoEditor.py:4985 -#: appEditors/AppGeoEditor.py:5035 +#: appEditors/AppGeoEditor.py:4938 appEditors/AppGeoEditor.py:4991 +#: appEditors/AppGeoEditor.py:5041 msgid "Nothing selected for buffering." msgstr "Aucune sélection pour la mise en mémoire tampon." -#: appEditors/AppGeoEditor.py:4937 appEditors/AppGeoEditor.py:4989 -#: appEditors/AppGeoEditor.py:5040 +#: appEditors/AppGeoEditor.py:4943 appEditors/AppGeoEditor.py:4995 +#: appEditors/AppGeoEditor.py:5046 msgid "Invalid distance for buffering." msgstr "Distance non valide pour la mise en mémoire tampon." -#: appEditors/AppGeoEditor.py:4961 appEditors/AppGeoEditor.py:5060 +#: appEditors/AppGeoEditor.py:4967 appEditors/AppGeoEditor.py:5066 msgid "Failed, the result is empty. Choose a different buffer value." msgstr "" "Echec, le résultat est vide. Choisissez une valeur de tampon différente." -#: appEditors/AppGeoEditor.py:4972 +#: appEditors/AppGeoEditor.py:4978 msgid "Full buffer geometry created." msgstr "Géométrie de tampon complète créée." -#: appEditors/AppGeoEditor.py:4978 +#: appEditors/AppGeoEditor.py:4984 msgid "Negative buffer value is not accepted." msgstr "La valeur de tampon négative n'est pas acceptée." -#: appEditors/AppGeoEditor.py:5009 +#: appEditors/AppGeoEditor.py:5015 msgid "Failed, the result is empty. Choose a smaller buffer value." msgstr "" "Echec, le résultat est vide. Choisissez une valeur de tampon plus petite." -#: appEditors/AppGeoEditor.py:5019 +#: appEditors/AppGeoEditor.py:5025 msgid "Interior buffer geometry created." msgstr "Géométrie du tampon intérieur créée." -#: appEditors/AppGeoEditor.py:5070 +#: appEditors/AppGeoEditor.py:5076 msgid "Exterior buffer geometry created." msgstr "Géométrie tampon externe créée." -#: appEditors/AppGeoEditor.py:5076 +#: appEditors/AppGeoEditor.py:5082 #, python-format msgid "Could not do Paint. Overlap value has to be less than 100%%." msgstr "" "Impossible de peindre. La valeur de chevauchement doit être inférieure à 100 " "%%." -#: appEditors/AppGeoEditor.py:5083 +#: appEditors/AppGeoEditor.py:5089 msgid "Nothing selected for painting." msgstr "Rien de sélectionné pour la peinture." -#: appEditors/AppGeoEditor.py:5089 +#: appEditors/AppGeoEditor.py:5095 msgid "Invalid value for" msgstr "Invalid value for" -#: appEditors/AppGeoEditor.py:5148 +#: appEditors/AppGeoEditor.py:5154 msgid "" "Could not do Paint. Try a different combination of parameters. Or a " "different method of Paint" @@ -3347,7 +3314,7 @@ msgstr "" "Impossible de faire de la peinture. Essayez une combinaison de paramètres " "différente. Ou une autre méthode de peinture" -#: appEditors/AppGeoEditor.py:5159 +#: appEditors/AppGeoEditor.py:5165 msgid "Paint done." msgstr "Peinture faite." @@ -3405,127 +3372,127 @@ msgstr "" "Échoué. Poligonize ne fonctionne que sur les géométries appartenant à la " "même ouverture." -#: appEditors/AppGerberEditor.py:844 +#: appEditors/AppGerberEditor.py:839 msgid "Done. Poligonize completed." msgstr "Terminé. Polygoniser terminé." -#: appEditors/AppGerberEditor.py:899 appEditors/AppGerberEditor.py:1123 -#: appEditors/AppGerberEditor.py:1147 +#: appEditors/AppGerberEditor.py:894 appEditors/AppGerberEditor.py:1116 +#: appEditors/AppGerberEditor.py:1140 msgid "Corner Mode 1: 45 degrees ..." msgstr "Mode d'angle 1: 45 degrés ..." -#: appEditors/AppGerberEditor.py:911 appEditors/AppGerberEditor.py:1223 +#: appEditors/AppGerberEditor.py:906 appEditors/AppGerberEditor.py:1216 msgid "Click on next Point or click Right mouse button to complete ..." msgstr "" "Cliquez sur le prochain point ou cliquez avec le bouton droit de la souris " "pour terminer ..." -#: appEditors/AppGerberEditor.py:1111 appEditors/AppGerberEditor.py:1144 +#: appEditors/AppGerberEditor.py:1104 appEditors/AppGerberEditor.py:1137 msgid "Corner Mode 2: Reverse 45 degrees ..." msgstr "Mode de Coin 2: Inverse de 45 degrés ..." -#: appEditors/AppGerberEditor.py:1114 appEditors/AppGerberEditor.py:1141 +#: appEditors/AppGerberEditor.py:1107 appEditors/AppGerberEditor.py:1134 msgid "Corner Mode 3: 90 degrees ..." msgstr "Mode de Coin 3: 90 degrés ..." -#: appEditors/AppGerberEditor.py:1117 appEditors/AppGerberEditor.py:1138 +#: appEditors/AppGerberEditor.py:1110 appEditors/AppGerberEditor.py:1131 msgid "Corner Mode 4: Reverse 90 degrees ..." msgstr "Mode de Coin 4: inverser de 90 degrés ..." -#: appEditors/AppGerberEditor.py:1120 appEditors/AppGerberEditor.py:1135 +#: appEditors/AppGerberEditor.py:1113 appEditors/AppGerberEditor.py:1128 msgid "Corner Mode 5: Free angle ..." msgstr "Mode de Coin 5: Angle libre ..." -#: appEditors/AppGerberEditor.py:1197 appEditors/AppGerberEditor.py:1362 -#: appEditors/AppGerberEditor.py:1401 +#: appEditors/AppGerberEditor.py:1190 appEditors/AppGerberEditor.py:1355 +#: appEditors/AppGerberEditor.py:1394 msgid "Track Mode 1: 45 degrees ..." msgstr "Mode de Piste 1: 45 degrés ..." -#: appEditors/AppGerberEditor.py:1342 appEditors/AppGerberEditor.py:1396 +#: appEditors/AppGerberEditor.py:1335 appEditors/AppGerberEditor.py:1389 msgid "Track Mode 2: Reverse 45 degrees ..." msgstr "Mode de Piste 2: Recul de 45 degrés ..." -#: appEditors/AppGerberEditor.py:1347 appEditors/AppGerberEditor.py:1391 +#: appEditors/AppGerberEditor.py:1340 appEditors/AppGerberEditor.py:1384 msgid "Track Mode 3: 90 degrees ..." msgstr "Mode de Piste 3: 90 degrés ..." -#: appEditors/AppGerberEditor.py:1352 appEditors/AppGerberEditor.py:1386 +#: appEditors/AppGerberEditor.py:1345 appEditors/AppGerberEditor.py:1379 msgid "Track Mode 4: Reverse 90 degrees ..." msgstr "Mode de Piste 4: Recul de 90 degrés ..." -#: appEditors/AppGerberEditor.py:1357 appEditors/AppGerberEditor.py:1381 +#: appEditors/AppGerberEditor.py:1350 appEditors/AppGerberEditor.py:1374 msgid "Track Mode 5: Free angle ..." msgstr "Mode de Piste 5: Angle libre ..." -#: appEditors/AppGerberEditor.py:1791 +#: appEditors/AppGerberEditor.py:1784 msgid "Scale the selected Gerber apertures ..." msgstr "Mettez à l'échelle les ouvertures de Gerber sélectionnées ..." -#: appEditors/AppGerberEditor.py:1833 +#: appEditors/AppGerberEditor.py:1826 msgid "Buffer the selected apertures ..." msgstr "Tamponner les ouvertures sélectionnées ..." -#: appEditors/AppGerberEditor.py:1875 +#: appEditors/AppGerberEditor.py:1868 msgid "Mark polygon areas in the edited Gerber ..." msgstr "Marquer les zones polygonales dans le Gerber édité ..." -#: appEditors/AppGerberEditor.py:1941 +#: appEditors/AppGerberEditor.py:1934 msgid "Nothing selected to move" msgstr "Rien de sélectionné pour bouger" -#: appEditors/AppGerberEditor.py:2066 +#: appEditors/AppGerberEditor.py:2059 msgid "Done. Apertures Move completed." msgstr "Terminé. Déplacement des ouvertures terminé." -#: appEditors/AppGerberEditor.py:2148 +#: appEditors/AppGerberEditor.py:2140 msgid "Done. Apertures copied." msgstr "Terminé. Ouvertures copiées." -#: appEditors/AppGerberEditor.py:2466 appGUI/MainGUI.py:742 +#: appEditors/AppGerberEditor.py:2458 appGUI/MainGUI.py:742 #: appGUI/MainGUI.py:1639 appGUI/ObjectUI.py:241 #: appGUI/preferences/gerber/GerberEditorPrefGroupUI.py:27 msgid "Gerber Editor" msgstr "Editeur Gerber" -#: appEditors/AppGerberEditor.py:2486 appGUI/ObjectUI.py:281 +#: appEditors/AppGerberEditor.py:2478 appGUI/ObjectUI.py:281 #: appObjects/FlatCAMObj.py:492 appTools/ToolProperties.py:158 msgid "Apertures" msgstr "Ouvertures" -#: appEditors/AppGerberEditor.py:2488 appGUI/ObjectUI.py:283 +#: appEditors/AppGerberEditor.py:2480 appGUI/ObjectUI.py:283 msgid "Apertures Table for the Gerber Object." msgstr "Tableau des Ouvertures pour l'objet Gerber." -#: appEditors/AppGerberEditor.py:2499 appEditors/AppGerberEditor.py:3955 +#: appEditors/AppGerberEditor.py:2491 appEditors/AppGerberEditor.py:3947 #: appGUI/ObjectUI.py:316 appTools/ToolPunchGerber.py:1088 msgid "Code" msgstr "Code" -#: appEditors/AppGerberEditor.py:2499 appEditors/AppGerberEditor.py:3955 +#: appEditors/AppGerberEditor.py:2491 appEditors/AppGerberEditor.py:3947 #: appGUI/ObjectUI.py:316 msgid "Dim" msgstr "Dim" -#: appEditors/AppGerberEditor.py:2504 appGUI/ObjectUI.py:320 +#: appEditors/AppGerberEditor.py:2496 appGUI/ObjectUI.py:320 msgid "Index" msgstr "Indice" -#: appEditors/AppGerberEditor.py:2506 appEditors/AppGerberEditor.py:2535 +#: appEditors/AppGerberEditor.py:2498 appEditors/AppGerberEditor.py:2527 #: appGUI/ObjectUI.py:322 appTools/ToolPunchGerber.py:1095 msgid "Aperture Code" msgstr "Code d'Ouverture" -#: appEditors/AppGerberEditor.py:2508 appGUI/ObjectUI.py:324 +#: appEditors/AppGerberEditor.py:2500 appGUI/ObjectUI.py:324 #: appTools/ToolPunchGerber.py:1097 msgid "Type of aperture: circular, rectangle, macros etc" msgstr "Type d'ouverture: circulaire, rectangle, macros, etc" -#: appEditors/AppGerberEditor.py:2510 appGUI/ObjectUI.py:326 +#: appEditors/AppGerberEditor.py:2502 appGUI/ObjectUI.py:326 #: appTools/ToolPunchGerber.py:1099 msgid "Aperture Size:" msgstr "Taille d'Ouverture:" -#: appEditors/AppGerberEditor.py:2512 appGUI/ObjectUI.py:328 +#: appEditors/AppGerberEditor.py:2504 appGUI/ObjectUI.py:328 msgid "" "Aperture Dimensions:\n" " - (width, height) for R, O type.\n" @@ -3535,16 +3502,16 @@ msgstr "" "  - (largeur, hauteur) pour le type R, O.\n" "  - (dia, nVertices) pour le type P" -#: appEditors/AppGerberEditor.py:2536 +#: appEditors/AppGerberEditor.py:2528 #: appGUI/preferences/gerber/GerberEditorPrefGroupUI.py:58 msgid "Code for the new aperture" msgstr "Code pour la nouvelle ouverture" -#: appEditors/AppGerberEditor.py:2545 +#: appEditors/AppGerberEditor.py:2537 msgid "Aperture Size" msgstr "Taille d'ouverture" -#: appEditors/AppGerberEditor.py:2547 +#: appEditors/AppGerberEditor.py:2539 msgid "" "Size for the new aperture.\n" "If aperture type is 'R' or 'O' then\n" @@ -3558,11 +3525,11 @@ msgstr "" "calculé comme:\n" "sqrt (largeur ** 2 + hauteur ** 2)" -#: appEditors/AppGerberEditor.py:2561 +#: appEditors/AppGerberEditor.py:2553 msgid "Aperture Type" msgstr "Type d'ouverture" -#: appEditors/AppGerberEditor.py:2563 +#: appEditors/AppGerberEditor.py:2555 msgid "" "Select the type of new aperture. Can be:\n" "C = circular\n" @@ -3574,11 +3541,11 @@ msgstr "" "R = rectangulaire\n" "O = oblong" -#: appEditors/AppGerberEditor.py:2574 +#: appEditors/AppGerberEditor.py:2566 msgid "Aperture Dim" msgstr "Dim. d'Ouverture" -#: appEditors/AppGerberEditor.py:2576 +#: appEditors/AppGerberEditor.py:2568 msgid "" "Dimensions for the new aperture.\n" "Active only for rectangular apertures (type R).\n" @@ -3588,19 +3555,19 @@ msgstr "" "Actif uniquement pour les ouvertures rectangulaires (type R).\n" "Le format est (largeur, hauteur)" -#: appEditors/AppGerberEditor.py:2585 +#: appEditors/AppGerberEditor.py:2577 msgid "Add/Delete Aperture" msgstr "Ajouter / Supprimer une Sélection" -#: appEditors/AppGerberEditor.py:2587 +#: appEditors/AppGerberEditor.py:2579 msgid "Add/Delete an aperture in the aperture table" msgstr "Ajouter / Supprimer une ouverture dans la table des ouvertures" -#: appEditors/AppGerberEditor.py:2596 +#: appEditors/AppGerberEditor.py:2588 msgid "Add a new aperture to the aperture list." msgstr "Ajoutez une nouvelle ouverture à la liste des ouvertures." -#: appEditors/AppGerberEditor.py:2599 appEditors/AppGerberEditor.py:2747 +#: appEditors/AppGerberEditor.py:2591 appEditors/AppGerberEditor.py:2739 #: appGUI/GUIElements.py:325 appGUI/GUIElements.py:1012 #: appGUI/GUIElements.py:1397 appGUI/GUIElements.py:1602 #: appGUI/GUIElements.py:1935 appGUI/MainGUI.py:420 appGUI/MainGUI.py:731 @@ -3608,35 +3575,35 @@ msgstr "Ajoutez une nouvelle ouverture à la liste des ouvertures." #: appGUI/MainGUI.py:1205 appGUI/MainGUI.py:1689 appGUI/MainGUI.py:2160 #: appGUI/MainGUI.py:2373 appGUI/MainGUI.py:4935 appGUI/ObjectUI.py:1125 #: appObjects/FlatCAMGeometry.py:578 appTools/ToolIsolation.py:71 -#: appTools/ToolIsolation.py:3163 appTools/ToolNCC.py:69 -#: appTools/ToolNCC.py:4047 appTools/ToolPaint.py:143 -#: appTools/ToolPaint.py:2943 appTools/ToolSolderPaste.py:163 +#: appTools/ToolIsolation.py:3164 appTools/ToolNCC.py:69 +#: appTools/ToolNCC.py:4048 appTools/ToolPaint.py:143 +#: appTools/ToolPaint.py:2944 appTools/ToolSolderPaste.py:163 #: appTools/ToolSolderPaste.py:1210 app_Main.py:6296 msgid "Delete" msgstr "Effacer" -#: appEditors/AppGerberEditor.py:2601 +#: appEditors/AppGerberEditor.py:2593 msgid "Delete a aperture in the aperture list" msgstr "Supprimer une ouverture dans la liste des ouvertures" -#: appEditors/AppGerberEditor.py:2618 +#: appEditors/AppGerberEditor.py:2610 msgid "Buffer Aperture" msgstr "Ouverture du Tampon" -#: appEditors/AppGerberEditor.py:2620 +#: appEditors/AppGerberEditor.py:2612 msgid "Buffer a aperture in the aperture list" msgstr "Buffer une ouverture dans la liste des ouvertures" -#: appEditors/AppGerberEditor.py:2633 +#: appEditors/AppGerberEditor.py:2625 #: appGUI/preferences/gerber/GerberEditorPrefGroupUI.py:195 msgid "Buffer distance" msgstr "Distance Tampon" -#: appEditors/AppGerberEditor.py:2634 +#: appEditors/AppGerberEditor.py:2626 msgid "Buffer corner" msgstr "Coin Tampon" -#: appEditors/AppGerberEditor.py:2636 +#: appEditors/AppGerberEditor.py:2628 msgid "" "There are 3 types of corners:\n" " - 'Round': the corner is rounded.\n" @@ -3650,20 +3617,20 @@ msgstr "" " - \"Biseauté:\" le coin est une ligne qui relie directement les " "fonctionnalités réunies dans le coin" -#: appEditors/AppGerberEditor.py:2666 +#: appEditors/AppGerberEditor.py:2658 msgid "Scale Aperture" msgstr "Échelle d'Ouverture" -#: appEditors/AppGerberEditor.py:2668 +#: appEditors/AppGerberEditor.py:2660 msgid "Scale a aperture in the aperture list" msgstr "Mettre à l'échelle une ouverture dans la liste des ouvertures" -#: appEditors/AppGerberEditor.py:2676 +#: appEditors/AppGerberEditor.py:2668 #: appGUI/preferences/gerber/GerberEditorPrefGroupUI.py:210 msgid "Scale factor" msgstr "Facteur d'échelle" -#: appEditors/AppGerberEditor.py:2678 +#: appEditors/AppGerberEditor.py:2670 msgid "" "The factor by which to scale the selected aperture.\n" "Values can be between 0.0000 and 999.9999" @@ -3671,19 +3638,19 @@ msgstr "" "Le facteur par lequel mettre à l'échelle l'ouverture sélectionnée.\n" "Les valeurs peuvent être comprises entre 0,0000 et 999,9999" -#: appEditors/AppGerberEditor.py:2706 +#: appEditors/AppGerberEditor.py:2698 msgid "Mark polygons" msgstr "Marquer des polygones" -#: appEditors/AppGerberEditor.py:2708 +#: appEditors/AppGerberEditor.py:2700 msgid "Mark the polygon areas." msgstr "Marquez les zones polygonales." -#: appEditors/AppGerberEditor.py:2716 +#: appEditors/AppGerberEditor.py:2708 msgid "Area UPPER threshold" msgstr "Seuil de la zone supérieure" -#: appEditors/AppGerberEditor.py:2718 +#: appEditors/AppGerberEditor.py:2710 msgid "" "The threshold value, all areas less than this are marked.\n" "Can have a value between 0.0000 and 9999.9999" @@ -3691,11 +3658,11 @@ msgstr "" "La valeur de seuil, toutes les zones inférieures à celle-ci sont marquées.\n" "Peut avoir une valeur comprise entre 0.0000 et 9999.9999" -#: appEditors/AppGerberEditor.py:2725 +#: appEditors/AppGerberEditor.py:2717 msgid "Area LOWER threshold" msgstr "Zone inférieure seuil" -#: appEditors/AppGerberEditor.py:2727 +#: appEditors/AppGerberEditor.py:2719 msgid "" "The threshold value, all areas more than this are marked.\n" "Can have a value between 0.0000 and 9999.9999" @@ -3703,32 +3670,32 @@ msgstr "" "La valeur de seuil, toutes les zones plus que cela sont marquées.\n" "Peut avoir une valeur comprise entre 0.0000 et 9999.9999" -#: appEditors/AppGerberEditor.py:2741 +#: appEditors/AppGerberEditor.py:2733 msgid "Mark" msgstr "Marque" -#: appEditors/AppGerberEditor.py:2743 +#: appEditors/AppGerberEditor.py:2735 msgid "Mark the polygons that fit within limits." msgstr "Marquez les polygones qui correspondent aux limites." -#: appEditors/AppGerberEditor.py:2749 +#: appEditors/AppGerberEditor.py:2741 msgid "Delete all the marked polygons." msgstr "Supprimer tous les polygones marqués." -#: appEditors/AppGerberEditor.py:2755 +#: appEditors/AppGerberEditor.py:2747 msgid "Clear all the markings." msgstr "Effacer toutes les marques." -#: appEditors/AppGerberEditor.py:2775 appGUI/MainGUI.py:750 +#: appEditors/AppGerberEditor.py:2767 appGUI/MainGUI.py:750 #: appGUI/MainGUI.py:1177 appGUI/MainGUI.py:2346 appGUI/MainGUI.py:4922 msgid "Add Pad Array" msgstr "Ajouter un Tableau de Pads" -#: appEditors/AppGerberEditor.py:2777 +#: appEditors/AppGerberEditor.py:2769 msgid "Add an array of pads (linear or circular array)" msgstr "Ajouter un tableau de pads (tableau linéaire ou circulaire)" -#: appEditors/AppGerberEditor.py:2783 +#: appEditors/AppGerberEditor.py:2775 msgid "" "Select the type of pads array to create.\n" "It can be Linear X(Y) or Circular" @@ -3736,17 +3703,17 @@ msgstr "" "Sélectionnez le type de tableau de pads à créer.\n" "Il peut être linéaire X (Y) ou circulaire" -#: appEditors/AppGerberEditor.py:2794 +#: appEditors/AppGerberEditor.py:2786 #: appGUI/preferences/gerber/GerberEditorPrefGroupUI.py:95 msgid "Nr of pads" msgstr "Nombre de pads" -#: appEditors/AppGerberEditor.py:2796 +#: appEditors/AppGerberEditor.py:2788 #: appGUI/preferences/gerber/GerberEditorPrefGroupUI.py:97 msgid "Specify how many pads to be in the array." msgstr "Spécifiez combien de pads doivent être dans le tableau." -#: appEditors/AppGerberEditor.py:2845 +#: appEditors/AppGerberEditor.py:2837 msgid "" "Angle at which the linear array is placed.\n" "The precision is of max 2 decimals.\n" @@ -3758,13 +3725,13 @@ msgstr "" "La valeur minimale est: -359,99 degrés.\n" "La valeur maximale est: 360,00 degrés." -#: appEditors/AppGerberEditor.py:3345 appEditors/AppGerberEditor.py:3349 +#: appEditors/AppGerberEditor.py:3337 appEditors/AppGerberEditor.py:3341 msgid "Aperture code value is missing or wrong format. Add it and retry." msgstr "" "La valeur du code d'ouverture est manquante ou le format est incorrect. " "Ajoutez-le et réessayez." -#: appEditors/AppGerberEditor.py:3385 +#: appEditors/AppGerberEditor.py:3377 msgid "" "Aperture dimensions value is missing or wrong format. Add it in format " "(width, height) and retry." @@ -3772,166 +3739,166 @@ msgstr "" "La valeur des dimensions d’ouverture est manquante ou d’un format incorrect. " "Ajoutez-le au format (largeur, hauteur) et réessayez." -#: appEditors/AppGerberEditor.py:3398 +#: appEditors/AppGerberEditor.py:3390 msgid "Aperture size value is missing or wrong format. Add it and retry." msgstr "" "La valeur de la taille d’ouverture est manquante ou d’un format incorrect. " "Ajoutez-le et réessayez." -#: appEditors/AppGerberEditor.py:3409 +#: appEditors/AppGerberEditor.py:3401 msgid "Aperture already in the aperture table." msgstr "Ouverture déjà dans la table des ouvertures." -#: appEditors/AppGerberEditor.py:3416 +#: appEditors/AppGerberEditor.py:3408 msgid "Added new aperture with code" msgstr "Ajout d'une nouvelle ouverture avec code" -#: appEditors/AppGerberEditor.py:3448 +#: appEditors/AppGerberEditor.py:3440 msgid " Select an aperture in Aperture Table" msgstr " Sélectionnez une ouverture dans le Tableau des Ouvertures" -#: appEditors/AppGerberEditor.py:3456 +#: appEditors/AppGerberEditor.py:3448 msgid "Select an aperture in Aperture Table -->" msgstr "Sélectionnez une ouverture dans le Tableau des Ouvertures -->" -#: appEditors/AppGerberEditor.py:3470 +#: appEditors/AppGerberEditor.py:3462 msgid "Deleted aperture with code" msgstr "Ouverture supprimée avec code" -#: appEditors/AppGerberEditor.py:3538 +#: appEditors/AppGerberEditor.py:3530 msgid "Dimensions need two float values separated by comma." msgstr "" "Les dimensions nécessitent deux valeurs flottantes séparées par une virgule." -#: appEditors/AppGerberEditor.py:3547 +#: appEditors/AppGerberEditor.py:3539 msgid "Dimensions edited." msgstr "Dimensions modifiées." -#: appEditors/AppGerberEditor.py:4070 +#: appEditors/AppGerberEditor.py:4061 msgid "Loading Gerber into Editor" msgstr "Chargement de Gerber dans l'éditeur" -#: appEditors/AppGerberEditor.py:4198 +#: appEditors/AppGerberEditor.py:4189 msgid "Setting up the UI" msgstr "Configuration de IU" -#: appEditors/AppGerberEditor.py:4199 +#: appEditors/AppGerberEditor.py:4190 msgid "Adding geometry finished. Preparing the GUI" msgstr "Ajout de la géométrie terminé. Préparation de l'interface graphique" -#: appEditors/AppGerberEditor.py:4208 +#: appEditors/AppGerberEditor.py:4199 msgid "Finished loading the Gerber object into the editor." msgstr "Le chargement de l'objet Gerber dans l'éditeur est terminé." -#: appEditors/AppGerberEditor.py:4349 +#: appEditors/AppGerberEditor.py:4336 msgid "" "There are no Aperture definitions in the file. Aborting Gerber creation." msgstr "" "Il n'y a pas de définitions d'ouverture dans le fichier. Abandon de la " "création de Gerber." -#: appEditors/AppGerberEditor.py:4351 appObjects/AppObject.py:164 +#: appEditors/AppGerberEditor.py:4338 appObjects/AppObject.py:164 #: appObjects/FlatCAMGeometry.py:2078 appParsers/ParseExcellon.py:972 -#: appTools/ToolPcbWizard.py:318 app_Main.py:7705 app_Main.py:10168 -#: app_Main.py:10228 app_Main.py:10359 app_Main.py:10424 +#: appTools/ToolPcbWizard.py:318 app_Main.py:7706 app_Main.py:10170 +#: app_Main.py:10230 app_Main.py:10361 app_Main.py:10426 msgid "An internal error has occurred. See shell.\n" msgstr "Une erreur interne s'est produite. Voir shell.\n" -#: appEditors/AppGerberEditor.py:4359 +#: appEditors/AppGerberEditor.py:4346 msgid "Creating Gerber." msgstr "Créer Gerber." -#: appEditors/AppGerberEditor.py:4371 +#: appEditors/AppGerberEditor.py:4358 msgid "Done. Gerber editing finished." msgstr "Terminé. Gerber édition terminée." -#: appEditors/AppGerberEditor.py:4387 +#: appEditors/AppGerberEditor.py:4374 msgid "Cancelled. No aperture is selected" msgstr "Annulé. Aucune ouverture n'est sélectionnée" -#: appEditors/AppGerberEditor.py:4542 app_Main.py:6632 +#: appEditors/AppGerberEditor.py:4529 app_Main.py:6634 msgid "Coordinates copied to clipboard." msgstr "Coordonnées copiées dans le presse-papier." -#: appEditors/AppGerberEditor.py:4989 +#: appEditors/AppGerberEditor.py:4976 msgid "Failed. No aperture geometry is selected." msgstr "Échoué. Aucune géométrie d'ouverture n'est sélectionnée." -#: appEditors/AppGerberEditor.py:4998 appEditors/AppGerberEditor.py:5269 +#: appEditors/AppGerberEditor.py:4985 appEditors/AppGerberEditor.py:5256 msgid "Done. Apertures geometry deleted." msgstr "Terminé. Géométrie des ouvertures supprimée." -#: appEditors/AppGerberEditor.py:5141 +#: appEditors/AppGerberEditor.py:5128 msgid "No aperture to buffer. Select at least one aperture and try again." msgstr "" "Pas d'ouverture à tamponner. Sélectionnez au moins une ouverture et " "réessayez." -#: appEditors/AppGerberEditor.py:5153 appTools/ToolCutOut.py:779 +#: appEditors/AppGerberEditor.py:5140 appTools/ToolCutOut.py:779 #: appTools/ToolCutOut.py:903 appTools/ToolCutOut.py:1126 #: appTools/ToolCutOut.py:1274 camlib.py:5279 camlib.py:5675 msgid "Failed." msgstr "Échoué." -#: appEditors/AppGerberEditor.py:5172 +#: appEditors/AppGerberEditor.py:5159 msgid "Scale factor value is missing or wrong format. Add it and retry." msgstr "" "La valeur du facteur d'échelle est manquante ou d'un format incorrect. " "Ajoutez-le et réessayez." -#: appEditors/AppGerberEditor.py:5204 +#: appEditors/AppGerberEditor.py:5191 msgid "No aperture to scale. Select at least one aperture and try again." msgstr "" "Pas d'ouverture à l'échelle. Sélectionnez au moins une ouverture et " "réessayez." -#: appEditors/AppGerberEditor.py:5220 +#: appEditors/AppGerberEditor.py:5207 msgid "Done. Scale Tool completed." msgstr "Terminé. Outil d'échelle terminé." -#: appEditors/AppGerberEditor.py:5258 +#: appEditors/AppGerberEditor.py:5245 msgid "Polygons marked." msgstr "Polygones marqués." -#: appEditors/AppGerberEditor.py:5261 +#: appEditors/AppGerberEditor.py:5248 msgid "No polygons were marked. None fit within the limits." msgstr "Aucun polygone n'a été marqué. Aucun ne rentre dans les limites." -#: appEditors/AppGerberEditor.py:5989 +#: appEditors/AppGerberEditor.py:5976 msgid "Rotation action was not executed." msgstr "L'action de rotation n'a pas été exécutée." -#: appEditors/AppGerberEditor.py:6031 app_Main.py:6053 app_Main.py:6100 +#: appEditors/AppGerberEditor.py:6018 app_Main.py:6050 app_Main.py:6097 msgid "Flip action was not executed." msgstr "La rotation n'a pas été exécutée." -#: appEditors/AppGerberEditor.py:6071 +#: appEditors/AppGerberEditor.py:6058 msgid "Skew action was not executed." msgstr "L'action fausser n'a pas été exécutée." -#: appEditors/AppGerberEditor.py:6110 +#: appEditors/AppGerberEditor.py:6097 msgid "Scale action was not executed." msgstr "L'action d'échelle n'a pas été exécutée." -#: appEditors/AppGerberEditor.py:6154 +#: appEditors/AppGerberEditor.py:6141 msgid "Offset action was not executed." msgstr "L'action decalage n'a pas été exécutée." -#: appEditors/AppGerberEditor.py:6240 +#: appEditors/AppGerberEditor.py:6230 msgid "Geometry shape offset Y cancelled" msgstr "Décalage géométrique de la forme Y annulé" -#: appEditors/AppGerberEditor.py:6255 +#: appEditors/AppGerberEditor.py:6246 msgid "Geometry shape skew X cancelled" msgstr "Inclinaison géométrique de la forme X annulé" -#: appEditors/AppGerberEditor.py:6270 +#: appEditors/AppGerberEditor.py:6262 msgid "Geometry shape skew Y cancelled" msgstr "Inclinaison géométrique de la forme Y annulé" #: appEditors/AppTextEditor.py:84 msgid "Find" -msgstr "" +msgstr "Chercher" #: appEditors/AppTextEditor.py:86 msgid "Will search and highlight in yellow the string in the Find box." @@ -3959,7 +3926,7 @@ msgstr "Chaîne pour remplacer celle de la zone Rechercher dans tout le texte." #: appGUI/ObjectUI.py:1889 appGUI/preferences/cncjob/CNCJobOptPrefGroupUI.py:61 #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:295 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:278 -#: appTools/ToolIsolation.py:3391 appTools/ToolPaint.py:3115 +#: appTools/ToolIsolation.py:3392 appTools/ToolPaint.py:3116 #: tclCommands/TclCommandPaint.py:162 msgid "All" msgstr "Tout" @@ -3974,10 +3941,8 @@ msgstr "" "avec le texte dans la case 'Remplacer' .." #: appEditors/AppTextEditor.py:120 -#, fuzzy -#| msgid "Save changes" msgid "Save changes internally." -msgstr "Sauvegarder les modifications" +msgstr "Sauvegarder les modifications en interne." #: appEditors/AppTextEditor.py:127 msgid "Open a OS standard Preview Print window." @@ -3998,10 +3963,8 @@ msgid "Will save the text in the editor into a file." msgstr "Va enregistrer le texte dans l'éditeur dans un fichier." #: appEditors/AppTextEditor.py:149 -#, fuzzy -#| msgid "Round" msgid "Run" -msgstr "Rond" +msgstr "Démarrer" #: appEditors/AppTextEditor.py:150 msgid "Will run the TCL commands found in the text file, one by one." @@ -4016,7 +3979,7 @@ msgstr "Fichier ouvert" #: appObjects/FlatCAMCNCJob.py:1651 appObjects/FlatCAMCNCJob.py:1657 #: appObjects/FlatCAMCNCJob.py:1843 appObjects/FlatCAMCNCJob.py:1849 #: appObjects/FlatCAMCNCJob.py:1923 appObjects/FlatCAMCNCJob.py:1929 -#: appTools/ToolSolderPaste.py:1063 app_Main.py:7086 app_Main.py:7092 +#: appTools/ToolSolderPaste.py:1063 app_Main.py:7088 app_Main.py:7094 msgid "Export Code ..." msgstr "Exporter le code ..." @@ -4030,27 +3993,21 @@ msgstr "Aucun fichier ou répertoire de ce nom" msgid "Saved to" msgstr "Enregistré dans" -#: appEditors/appGCodeEditor.py:71 app_Main.py:7248 +#: appEditors/appGCodeEditor.py:71 app_Main.py:7250 msgid "Code Editor" msgstr "Éditeur de code" #: appEditors/appGCodeEditor.py:141 appEditors/appGCodeEditor.py:233 -#, fuzzy -#| msgid "View GCode" msgid "All GCode" -msgstr "Voir le GCode" +msgstr "Tout le GCode" #: appEditors/appGCodeEditor.py:147 appEditors/appGCodeEditor.py:239 -#, fuzzy -#| msgid "Save GCode" msgid "Header GCode" -msgstr "Enregistrer le GCode" +msgstr "Entête GCode" #: appEditors/appGCodeEditor.py:153 appEditors/appGCodeEditor.py:245 -#, fuzzy -#| msgid "Starting G-Code" msgid "Start GCode" -msgstr "Démarrer le GCode" +msgstr "Démarrer GCode" #: appEditors/appGCodeEditor.py:575 appObjects/FlatCAMCNCJob.py:2022 #: appTools/ToolCalibration.py:447 @@ -4058,10 +4015,8 @@ msgid "Loaded Machine Code into Code Editor" msgstr "Code machine chargé dans l'éditeur de code" #: appEditors/appGCodeEditor.py:663 appGUI/ObjectUI.py:1909 -#, fuzzy -#| msgid "Code Editor" msgid "GCode Editor" -msgstr "Éditeur de code" +msgstr "Éditeur GCODE" #: appEditors/appGCodeEditor.py:688 appEditors/appGCodeEditor.py:699 #: appGUI/ObjectUI.py:999 appGUI/ObjectUI.py:2034 appGUI/ObjectUI.py:2044 @@ -4071,10 +4026,10 @@ msgid "Dia" msgstr "Diam" #: appEditors/appGCodeEditor.py:688 appGUI/ObjectUI.py:999 -#: appGUI/ObjectUI.py:2034 appTools/ToolIsolation.py:3035 -#: appTools/ToolNCC.py:3908 appTools/ToolPaint.py:2830 +#: appGUI/ObjectUI.py:2034 appTools/ToolIsolation.py:3036 +#: appTools/ToolNCC.py:3909 appTools/ToolPaint.py:2831 msgid "TT" -msgstr "TT" +msgstr "Type" #: appEditors/appGCodeEditor.py:699 appGUI/ObjectUI.py:666 #: appGUI/ObjectUI.py:2044 @@ -4097,39 +4052,33 @@ msgstr "Fentes" #: appEditors/appGCodeEditor.py:708 appEditors/appGCodeEditor.py:730 msgid "CNC Code Snippet" -msgstr "" +msgstr "Extrait de code" #: appEditors/appGCodeEditor.py:710 appEditors/appGCodeEditor.py:732 msgid "Code snippet defined in Preferences." -msgstr "" +msgstr "Extrait de code défini dans les préférences." #: appEditors/appGCodeEditor.py:716 appEditors/appGCodeEditor.py:738 -#, fuzzy -#| msgid "" -#| "Type here any G-Code commands you would\n" -#| "like to add at the beginning of the G-Code file." msgid "" "Type here any G-Code commands you would\n" "like to insert at the cursor location." msgstr "" -"Tapez ici toutes les commandes G-Code que vous feriez\n" -"souhaite ajouter au début du fichier G-Code." +"*Tapez ici toutes les commandes G-Code que vous voulez\n" +"ajouter à l'endroit du curseur." #: appEditors/appGCodeEditor.py:722 appEditors/appGCodeEditor.py:744 -#, fuzzy -#| msgid "Insert QRCode" msgid "Insert Code" -msgstr "Insérez QRCode" +msgstr "Insérer Code" #: appEditors/appGCodeEditor.py:725 appEditors/appGCodeEditor.py:747 msgid "Insert the code above at the cursor location." -msgstr "" +msgstr "Insérez le code ci-dessus à l'emplacement du curseur." #: appGUI/GUIElements.py:290 appGUI/GUIElements.py:977 #: appGUI/GUIElements.py:1362 appGUI/GUIElements.py:1567 #: appGUI/GUIElements.py:1900 msgid "Undo" -msgstr "" +msgstr "Annuler" #: appGUI/GUIElements.py:290 appGUI/GUIElements.py:977 #: appGUI/GUIElements.py:1362 appGUI/GUIElements.py:1567 @@ -4141,7 +4090,7 @@ msgstr "Ctrl+Z" #: appGUI/GUIElements.py:1369 appGUI/GUIElements.py:1574 #: appGUI/GUIElements.py:1907 msgid "Redo" -msgstr "" +msgstr "Refaire" #: appGUI/GUIElements.py:297 appGUI/GUIElements.py:984 #: appGUI/GUIElements.py:1369 appGUI/GUIElements.py:1574 @@ -4185,7 +4134,7 @@ msgstr "Ctrl+C" #: appGUI/GUIElements.py:1392 appGUI/GUIElements.py:1597 #: appGUI/GUIElements.py:1930 msgid "Paste" -msgstr "" +msgstr "Coller" #: appGUI/GUIElements.py:320 appGUI/GUIElements.py:1007 #: appGUI/GUIElements.py:1392 appGUI/GUIElements.py:1597 @@ -4218,13 +4167,11 @@ msgstr "Ctrl+A" #: appGUI/GUIElements.py:1026 appGUI/GUIElements.py:1411 msgid "Step Up" -msgstr "" +msgstr "Intensifier" #: appGUI/GUIElements.py:1031 appGUI/GUIElements.py:1416 -#, fuzzy -#| msgid "Down" msgid "Step Down" -msgstr "Bas" +msgstr "Abaisser" #: appGUI/GUIElements.py:3676 msgid "" @@ -4271,10 +4218,8 @@ msgid "Ctrl+S" msgstr "Ctrl+S" #: appGUI/GUIElements.py:3754 -#, fuzzy -#| msgid "&Clear plot" msgid "Clear All" -msgstr "Effacer la Trace" +msgstr "Effacer tout" #: appGUI/GUIElements.py:3801 appTools/ToolShell.py:299 msgid "Type >help< to get started" @@ -4282,27 +4227,27 @@ msgstr "Tapez >help< pour commencer" #: appGUI/GUIElements.py:4168 appGUI/GUIElements.py:4185 msgid "Jog the Y axis." -msgstr "" +msgstr "Déplacer l'axe Y." #: appGUI/GUIElements.py:4176 msgid "Move to Origin." -msgstr "" +msgstr "Déplacer vers l'origine." #: appGUI/GUIElements.py:4193 appGUI/GUIElements.py:4201 msgid "Jog the X axis." -msgstr "" +msgstr "Déplacer l'axe X." #: appGUI/GUIElements.py:4211 appGUI/GUIElements.py:4221 msgid "Jog the Z axis." -msgstr "" +msgstr "Déplacer l'axe Z." #: appGUI/GUIElements.py:4247 msgid "Zero the CNC X axes at current position." -msgstr "" +msgstr "Initialiser l'axe CNC X à la position actuelle." #: appGUI/GUIElements.py:4255 msgid "Zero the CNC Y axes at current position." -msgstr "" +msgstr "Initialiser l'axe CNC Y à la position actuelle." #: appGUI/GUIElements.py:4260 msgid "Z" @@ -4310,19 +4255,19 @@ msgstr "Z" #: appGUI/GUIElements.py:4263 msgid "Zero the CNC Z axes at current position." -msgstr "" +msgstr "Initialiser l'axe CNC Z à la position actuelle." #: appGUI/GUIElements.py:4267 msgid "Do Home" -msgstr "" +msgstr "Définir origine" #: appGUI/GUIElements.py:4269 msgid "Perform a homing cycle on all axis." -msgstr "" +msgstr "Effectuer un cycle de référencement sur tous les axes." #: appGUI/GUIElements.py:4277 msgid "Zero all CNC axes at current position." -msgstr "" +msgstr "Initialiser tous les axe CNC à la position actuelle." #: appGUI/GUIElements.py:4432 appGUI/GUIElements.py:4441 msgid "Idle." @@ -4389,7 +4334,7 @@ msgstr "Nouveau Projet" #: appGUI/MainGUI.py:84 appGUI/MainGUI.py:4441 msgid "Ctrl+N" -msgstr "" +msgstr "Ctrl+N" #: appGUI/MainGUI.py:86 msgid "Will create a new, blank project" @@ -4407,8 +4352,8 @@ msgstr "Nouveau" #: appTools/ToolCutOut.py:2021 appTools/ToolDblSided.py:528 #: appTools/ToolDblSided.py:770 appTools/ToolFilm.py:932 #: appTools/ToolFilm.py:955 appTools/ToolImage.py:136 appTools/ToolImage.py:191 -#: appTools/ToolIsolation.py:3351 appTools/ToolIsolation.py:3404 -#: appTools/ToolNCC.py:3871 appTools/ToolNCC.py:4341 appTools/ToolPaint.py:3131 +#: appTools/ToolIsolation.py:3352 appTools/ToolIsolation.py:3405 +#: appTools/ToolNCC.py:3872 appTools/ToolNCC.py:4342 appTools/ToolPaint.py:3132 #: appTools/ToolPanelize.py:148 appTools/ToolPanelize.py:168 #: appTools/ToolPanelize.py:716 appTools/ToolTransform.py:126 #: appTools/ToolTransform.py:587 @@ -4435,9 +4380,9 @@ msgstr "Crée un nouvel objet de géométrie vide." #: appTools/ToolCutOut.py:2020 appTools/ToolDblSided.py:527 #: appTools/ToolDblSided.py:768 appTools/ToolFilm.py:931 #: appTools/ToolFilm.py:954 appTools/ToolImage.py:117 appTools/ToolImage.py:138 -#: appTools/ToolImage.py:191 appTools/ToolIsolation.py:3352 -#: appTools/ToolIsolation.py:3404 appTools/ToolNCC.py:3872 -#: appTools/ToolNCC.py:4341 appTools/ToolPaint.py:3131 +#: appTools/ToolImage.py:191 appTools/ToolIsolation.py:3353 +#: appTools/ToolIsolation.py:3405 appTools/ToolNCC.py:3873 +#: appTools/ToolNCC.py:4342 appTools/ToolPaint.py:3132 #: appTools/ToolPanelize.py:148 appTools/ToolPanelize.py:168 #: appTools/ToolPanelize.py:716 appTools/ToolPanelize.py:810 #: appTools/ToolTransform.py:126 appTools/ToolTransform.py:585 defaults.py:572 @@ -4463,8 +4408,8 @@ msgstr "Crée un nouvel objet Gerber vide." #: appTools/ToolCopperThieving.py:1239 appTools/ToolCopperThieving.py:1253 #: appTools/ToolDblSided.py:529 appTools/ToolDblSided.py:727 #: appTools/ToolDblSided.py:769 appTools/ToolFilm.py:1210 -#: appTools/ToolIsolation.py:3404 appTools/ToolNCC.py:4341 -#: appTools/ToolPaint.py:3131 appTools/ToolPanelize.py:148 +#: appTools/ToolIsolation.py:3405 appTools/ToolNCC.py:4342 +#: appTools/ToolPaint.py:3132 appTools/ToolPanelize.py:148 #: appTools/ToolPunchGerber.py:1128 appTools/ToolPunchGerber.py:1143 #: appTools/ToolTransform.py:126 appTools/ToolTransform.py:586 msgid "Excellon" @@ -4491,8 +4436,8 @@ msgstr "D" msgid "Will create a new, empty Document Object." msgstr "Crée un nouvel objet de document vide." -#: appGUI/MainGUI.py:123 appGUI/MainGUI.py:4442 app_Main.py:8419 -#: app_Main.py:8422 +#: appGUI/MainGUI.py:123 appGUI/MainGUI.py:4442 app_Main.py:8421 +#: app_Main.py:8424 msgid "Open Project" msgstr "Ouvrir Projet" @@ -4501,7 +4446,7 @@ msgid "Ctrl+O" msgstr "Ctrl+O" #: appGUI/MainGUI.py:130 appGUI/MainGUI.py:966 appGUI/MainGUI.py:2137 -#: app_Main.py:8299 app_Main.py:8304 +#: app_Main.py:8301 app_Main.py:8306 msgid "Open Gerber" msgstr "Ouvrir Gerber" @@ -4510,7 +4455,7 @@ msgid "Ctrl+G" msgstr "Ctrl+G" #: appGUI/MainGUI.py:135 appGUI/MainGUI.py:968 appGUI/MainGUI.py:2139 -#: app_Main.py:8339 app_Main.py:8344 +#: app_Main.py:8341 app_Main.py:8346 msgid "Open Excellon" msgstr "Ouvrir Excellon" @@ -4519,7 +4464,7 @@ msgstr "Ouvrir Excellon" msgid "Ctrl+E" msgstr "Ctrl+E" -#: appGUI/MainGUI.py:140 app_Main.py:8382 app_Main.py:8387 +#: appGUI/MainGUI.py:140 app_Main.py:8384 app_Main.py:8389 msgid "Open G-Code" msgstr "Ouvrir G-code" @@ -4604,11 +4549,11 @@ msgid "Export" msgstr "Exportation" #: appGUI/MainGUI.py:244 appTools/ToolQRCode.py:567 appTools/ToolQRCode.py:572 -#: app_Main.py:8537 app_Main.py:8542 +#: app_Main.py:8539 app_Main.py:8544 msgid "Export SVG" msgstr "Exporter en SVG" -#: appGUI/MainGUI.py:249 app_Main.py:8894 app_Main.py:8899 +#: appGUI/MainGUI.py:249 app_Main.py:8896 app_Main.py:8901 msgid "Export DXF" msgstr "Exportation DXF" @@ -4626,7 +4571,7 @@ msgstr "" "L'image enregistrée contiendra le visuel\n" "de la zone de tracé de FlatCAM." -#: appGUI/MainGUI.py:268 app_Main.py:8788 app_Main.py:8793 +#: appGUI/MainGUI.py:268 app_Main.py:8790 app_Main.py:8795 msgid "Export Excellon" msgstr "Exporter Excellon" @@ -4640,7 +4585,7 @@ msgstr "" "le format des coordonnées, les unités de fichier et les zéros\n" "sont définies dans Paramètres -> Excellon Export." -#: appGUI/MainGUI.py:278 app_Main.py:8833 app_Main.py:8838 +#: appGUI/MainGUI.py:278 app_Main.py:8835 app_Main.py:8840 msgid "Export Gerber" msgstr "Export Gerber" @@ -4830,8 +4775,8 @@ msgstr "Q" #: appGUI/preferences/PreferencesUIManager.py:912 #: appGUI/preferences/PreferencesUIManager.py:1005 #: appGUI/preferences/PreferencesUIManager.py:1033 -#: appGUI/preferences/PreferencesUIManager.py:1138 app_Main.py:5742 -#: app_Main.py:5747 app_Main.py:5762 +#: appGUI/preferences/PreferencesUIManager.py:1138 app_Main.py:5739 +#: app_Main.py:5744 app_Main.py:5759 msgid "Preferences" msgstr "Préférences" @@ -5287,7 +5232,7 @@ msgstr "Alt+A" msgid "Eraser" msgstr "Effacer" -#: appGUI/MainGUI.py:782 app_Main.py:6123 app_Main.py:6174 app_Main.py:6211 +#: appGUI/MainGUI.py:782 app_Main.py:6120 app_Main.py:6172 app_Main.py:6210 msgid "Transform" msgstr "Transformer" @@ -5303,47 +5248,47 @@ msgstr "Désactiver le Tracé" msgid "Set Color" msgstr "Définir la couleur" -#: appGUI/MainGUI.py:821 app_Main.py:7974 +#: appGUI/MainGUI.py:821 app_Main.py:7975 msgid "Red" msgstr "Rouge" -#: appGUI/MainGUI.py:824 app_Main.py:7976 +#: appGUI/MainGUI.py:824 app_Main.py:7977 msgid "Blue" msgstr "Bleu" -#: appGUI/MainGUI.py:827 app_Main.py:7979 +#: appGUI/MainGUI.py:827 app_Main.py:7980 msgid "Yellow" msgstr "Jaune" -#: appGUI/MainGUI.py:830 app_Main.py:7981 +#: appGUI/MainGUI.py:830 app_Main.py:7982 msgid "Green" msgstr "Vert" -#: appGUI/MainGUI.py:833 app_Main.py:7983 +#: appGUI/MainGUI.py:833 app_Main.py:7984 msgid "Purple" msgstr "Violet" -#: appGUI/MainGUI.py:836 app_Main.py:7985 +#: appGUI/MainGUI.py:836 app_Main.py:7986 msgid "Brown" msgstr "Marron" -#: appGUI/MainGUI.py:839 app_Main.py:7987 app_Main.py:8047 +#: appGUI/MainGUI.py:839 app_Main.py:7988 app_Main.py:8048 msgid "White" msgstr "Blanche" -#: appGUI/MainGUI.py:842 app_Main.py:7989 +#: appGUI/MainGUI.py:842 app_Main.py:7990 msgid "Black" msgstr "Noire" -#: appGUI/MainGUI.py:847 app_Main.py:7992 +#: appGUI/MainGUI.py:847 app_Main.py:7993 msgid "Custom" msgstr "Personnalisé" -#: appGUI/MainGUI.py:852 app_Main.py:8026 +#: appGUI/MainGUI.py:852 app_Main.py:8027 msgid "Opacity" msgstr "Opacité" -#: appGUI/MainGUI.py:855 app_Main.py:8002 +#: appGUI/MainGUI.py:855 app_Main.py:8003 msgid "Default" msgstr "Défaut" @@ -5394,11 +5339,11 @@ msgstr "Barre d'outils de l'éditeur Gerber" #: appGUI/MainGUI.py:939 appGUI/MainGUI.py:2010 msgid "Delta Coordinates Toolbar" -msgstr "Coordonnées copiées dans le presse-papier." +msgstr "Coordonnées Delta copiées dans le presse-papier" #: appGUI/MainGUI.py:942 appGUI/MainGUI.py:2018 msgid "Coordinates Toolbar" -msgstr "" +msgstr "Barre d'outils Coordonnées" #: appGUI/MainGUI.py:945 appGUI/MainGUI.py:2026 msgid "Grid Toolbar" @@ -5406,7 +5351,7 @@ msgstr "Barre d'outils de la Grille" #: appGUI/MainGUI.py:954 appGUI/MainGUI.py:2034 msgid "Status Toolbar" -msgstr "" +msgstr "Barre d'outils Statut" #: appGUI/MainGUI.py:971 appGUI/MainGUI.py:2142 msgid "Open project" @@ -5440,10 +5385,8 @@ msgid "Replot" msgstr "Re-Tracé" #: appGUI/MainGUI.py:1010 appGUI/MainGUI.py:2181 -#, fuzzy -#| msgid "&Clear plot" msgid "Clear plot" -msgstr "Effacer la Trace" +msgstr "Effacer tracé" #: appGUI/MainGUI.py:1026 appGUI/MainGUI.py:2195 msgid "New Script ..." @@ -5474,20 +5417,18 @@ msgstr "Outil de Découpe" #: appGUI/MainGUI.py:1045 appGUI/MainGUI.py:2214 appGUI/ObjectUI.py:372 #: appGUI/ObjectUI.py:1824 appTools/ToolNCC.py:202 msgid "NCC Tool" -msgstr "Outil de la NCC" +msgstr "Outil NCC" #: appGUI/MainGUI.py:1049 appGUI/MainGUI.py:2218 appGUI/MainGUI.py:4471 -#: appTools/ToolIsolation.py:192 appTools/ToolIsolation.py:2951 +#: appTools/ToolIsolation.py:192 appTools/ToolIsolation.py:2952 msgid "Isolation Tool" -msgstr "Outil de Isolement" +msgstr "Outil de d'Isolement" #: appGUI/MainGUI.py:1051 appGUI/MainGUI.py:2220 appGUI/ObjectUI.py:721 #: appTools/ToolDrilling.py:245 appTools/ToolDrilling.py:1979 #: appTools/ToolMilling.py:169 -#, fuzzy -#| msgid "Drilling" msgid "Drilling Tool" -msgstr "Forage" +msgstr "Outil Forage" #: appGUI/MainGUI.py:1055 appGUI/MainGUI.py:2224 msgid "Panel Tool" @@ -5550,7 +5491,7 @@ msgid "Invert Gerber Tool" msgstr "Inverser Gerber" #: appGUI/MainGUI.py:1087 appGUI/MainGUI.py:2256 appGUI/MainGUI.py:4475 -#: appTools/ToolCorners.py:298 +#: appTools/ToolCorners.py:302 msgid "Corner Markers Tool" msgstr "Outil de Marqueurs de Coin" @@ -5566,11 +5507,11 @@ msgstr "Sélectionner" #: appGUI/MainGUI.py:1097 appGUI/MainGUI.py:2266 msgid "Add Drill Hole" -msgstr "Ajouter un Perçage" +msgstr "Ajouter un Forage" #: appGUI/MainGUI.py:1099 appGUI/MainGUI.py:2268 msgid "Add Drill Hole Array" -msgstr "Ajouter un Tableau de Perçage" +msgstr "Ajouter un Tableau de Forage" #: appGUI/MainGUI.py:1105 appGUI/MainGUI.py:1684 appGUI/MainGUI.py:2270 msgid "Resize Drill" @@ -5578,15 +5519,15 @@ msgstr "Redimensionner découpe" #: appGUI/MainGUI.py:1109 appGUI/MainGUI.py:2278 msgid "Copy Drill" -msgstr "Copier un perçage" +msgstr "Copier un forage" #: appGUI/MainGUI.py:1111 appGUI/MainGUI.py:2280 msgid "Delete Drill" -msgstr "Supprimer un perçage" +msgstr "Supprimer un forage" #: appGUI/MainGUI.py:1115 appGUI/MainGUI.py:2284 msgid "Move Drill" -msgstr "Déplacer un perçage" +msgstr "Déplacer un forage" #: appGUI/MainGUI.py:1138 appGUI/MainGUI.py:2307 msgid "Add Buffer" @@ -5691,19 +5632,19 @@ msgid "TCL Shell" msgstr "TCL Shell" #: appGUI/MainGUI.py:1333 appGUI/MainGUI.py:1582 app_Main.py:2456 -#: app_Main.py:2686 app_Main.py:9285 +#: app_Main.py:2686 app_Main.py:9287 msgid "Project" msgstr "Projet" #: appGUI/MainGUI.py:1376 appGUI/MainGUI.py:1384 appGUI/MainGUI.py:3931 -#: appGUI/MainGUI.py:3937 app_Main.py:2693 app_Main.py:9093 +#: appGUI/MainGUI.py:3937 app_Main.py:2693 app_Main.py:9095 msgid "Plot Area" msgstr "Zone de Dessin" #: appGUI/MainGUI.py:1426 appTools/ToolCopperThieving.py:1165 -#: appTools/ToolCorners.py:318 appTools/ToolEtchCompensation.py:291 +#: appTools/ToolCorners.py:322 appTools/ToolEtchCompensation.py:291 #: appTools/ToolExtractDrills.py:454 appTools/ToolFiducials.py:875 -#: appTools/ToolInvertGerber.py:215 appTools/ToolIsolation.py:2999 +#: appTools/ToolInvertGerber.py:215 appTools/ToolIsolation.py:3000 #: appTools/ToolOptimal.py:421 appTools/ToolPunchGerber.py:1010 #: appTools/ToolQRCode.py:664 appTools/ToolRulesCheck.py:1165 #: appTools/ToolSolderPaste.py:1144 appTools/ToolSub.py:695 @@ -5868,8 +5809,8 @@ msgstr "Êtes-vous sûr de vouloir supprimer les paramètres de GUI?\n" #: appGUI/MainGUI.py:2111 appGUI/preferences/PreferencesUIManager.py:944 #: appGUI/preferences/PreferencesUIManager.py:1191 appTranslation.py:111 -#: appTranslation.py:213 app_Main.py:2499 app_Main.py:3525 app_Main.py:5983 -#: app_Main.py:8991 +#: appTranslation.py:213 app_Main.py:2499 app_Main.py:3525 app_Main.py:5980 +#: app_Main.py:8993 msgid "Yes" msgstr "Oui" @@ -5878,10 +5819,10 @@ msgstr "Oui" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:62 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:164 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:148 -#: appTools/ToolDrilling.py:2090 appTools/ToolIsolation.py:3079 -#: appTools/ToolMilling.py:1695 appTools/ToolNCC.py:3958 -#: appTools/ToolPaint.py:2868 appTranslation.py:112 appTranslation.py:214 -#: app_Main.py:2500 app_Main.py:3526 app_Main.py:5984 app_Main.py:8992 +#: appTools/ToolDrilling.py:2090 appTools/ToolIsolation.py:3080 +#: appTools/ToolMilling.py:1695 appTools/ToolNCC.py:3959 +#: appTools/ToolPaint.py:2869 appTranslation.py:112 appTranslation.py:214 +#: app_Main.py:2500 app_Main.py:3526 app_Main.py:5981 app_Main.py:8994 msgid "No" msgstr "Non" @@ -5993,7 +5934,7 @@ msgstr "MONTRER LISTE DES RACCOURCIS" #: appGUI/MainGUI.py:4412 msgid "1" -msgstr "" +msgstr "1" #: appGUI/MainGUI.py:4412 msgid "Switch to Project Tab" @@ -6001,7 +5942,7 @@ msgstr "Passer à l'onglet Projet" #: appGUI/MainGUI.py:4413 msgid "2" -msgstr "" +msgstr "2" #: appGUI/MainGUI.py:4413 msgid "Switch to Selected Tab" @@ -6009,7 +5950,7 @@ msgstr "Passer à l'onglet Sélectionné" #: appGUI/MainGUI.py:4414 msgid "3" -msgstr "" +msgstr "3" #: appGUI/MainGUI.py:4414 msgid "Switch to Tool Tab" @@ -6126,7 +6067,7 @@ msgstr "Outil de Distance Minimum" #: appGUI/MainGUI.py:4456 msgid "Open Preferences Window" -msgstr "Ouvrir la fenêtre de Paramètres " +msgstr "Ouvrir la fenêtre de Paramètres" #: appGUI/MainGUI.py:4457 msgid "Shift+R" @@ -6522,7 +6463,7 @@ msgid "App Object" msgstr "Objet" #: appGUI/ObjectUI.py:78 appTools/ToolDrilling.py:2015 -#: appTools/ToolIsolation.py:2988 appTools/ToolMilling.py:1620 +#: appTools/ToolIsolation.py:2989 appTools/ToolMilling.py:1620 msgid "" "BASIC is suitable for a beginner. Many parameters\n" "are hidden from the user in this mode.\n" @@ -6622,30 +6563,24 @@ msgid "Plot (show) this object." msgstr "Tracer (afficher) cet objet." #: appGUI/ObjectUI.py:244 -#, fuzzy -#| msgid "Gerber Object" msgid "Edit an Gerber object." -msgstr "Objet Gerber" +msgstr "Editer un objet Gerber." #: appGUI/ObjectUI.py:255 appGUI/ObjectUI.py:594 appGUI/ObjectUI.py:916 #: appGUI/ObjectUI.py:1924 msgid "PROPERTIES" -msgstr "" +msgstr "PROPRIÉTÉS" #: appGUI/ObjectUI.py:257 appGUI/ObjectUI.py:596 appGUI/ObjectUI.py:918 #: appGUI/ObjectUI.py:1926 -#, fuzzy -#| msgid "Properties" msgid "Show the Properties." -msgstr "Propriétés" +msgstr "Afficher les propriétés." #: appGUI/ObjectUI.py:291 appGUI/ObjectUI.py:629 #: appGUI/preferences/excellon/ExcellonAdvOptPrefGroupUI.py:50 #: appGUI/preferences/gerber/GerberAdvOptPrefGroupUI.py:54 -#, fuzzy -#| msgid "Toggle the display of axis on canvas" msgid "Toggle the display of the Tools Table." -msgstr "Basculer l'affichage de l'axe sur le canevas" +msgstr "Basculer l'affichage de la table des outils." #: appGUI/ObjectUI.py:300 msgid "Mark All" @@ -6666,11 +6601,11 @@ msgstr "" msgid "Mark the aperture instances on canvas." msgstr "Marquez les occurrences d’ouverture sur la toile." -#: appGUI/ObjectUI.py:339 appTools/ToolIsolation.py:3478 +#: appGUI/ObjectUI.py:339 appTools/ToolIsolation.py:3479 msgid "Buffer Solid Geometry" msgstr "Tampon Géométrie Solide" -#: appGUI/ObjectUI.py:341 appTools/ToolIsolation.py:3480 +#: appGUI/ObjectUI.py:341 appTools/ToolIsolation.py:3481 msgid "" "This button is shown only when the Gerber file\n" "is loaded without buffering.\n" @@ -6687,15 +6622,15 @@ msgid "Isolation Routing" msgstr "Routage d'isolement" #: appGUI/ObjectUI.py:360 appGUI/preferences/tools/ToolsISOPrefGroupUI.py:32 -#: appTools/ToolIsolation.py:2978 +#: appTools/ToolIsolation.py:2979 msgid "" "Create a Geometry object with\n" "toolpaths to cut around polygons." msgstr "" -"Créez un objet Geometry avec\n" +"Créez un objet Geometrie avec\n" "parcours d'outils pour couper autour des polygones." -#: appGUI/ObjectUI.py:375 appGUI/ObjectUI.py:1827 appTools/ToolNCC.py:4393 +#: appGUI/ObjectUI.py:375 appGUI/ObjectUI.py:1827 appTools/ToolNCC.py:4394 msgid "" "Create the Geometry Object\n" "for non-copper routing." @@ -6712,20 +6647,16 @@ msgstr "" "la découpe de la planche." #: appGUI/ObjectUI.py:407 appGUI/ObjectUI.py:756 -#, fuzzy -#| msgid "UTILITIES" msgid "UTILTIES" msgstr "UTILITAIRES" #: appGUI/ObjectUI.py:409 appGUI/ObjectUI.py:758 -#, fuzzy -#| msgid "Properties" msgid "Show the Utilties." -msgstr "Propriétés" +msgstr "Affichez les utilitaires." #: appGUI/ObjectUI.py:433 appGUI/preferences/gerber/GerberOptPrefGroupUI.py:32 msgid "Non-copper regions" -msgstr "Régions non-cuivre" +msgstr "Régions non-cuivrées" #: appGUI/ObjectUI.py:435 appGUI/preferences/gerber/GerberOptPrefGroupUI.py:34 msgid "" @@ -6764,10 +6695,10 @@ msgid "Resulting geometry will have rounded corners." msgstr "La géométrie résultante aura des coins arrondis." #: appGUI/ObjectUI.py:467 appGUI/ObjectUI.py:507 appTools/ToolCutOut.py:2298 -#: appTools/ToolCutOut.py:2313 appTools/ToolIsolation.py:3457 -#: appTools/ToolNCC.py:4390 appTools/ToolPaint.py:3166 +#: appTools/ToolCutOut.py:2313 appTools/ToolIsolation.py:3458 +#: appTools/ToolNCC.py:4391 appTools/ToolPaint.py:3167 msgid "Generate Geometry" -msgstr "Générer de la Géométrie" +msgstr "Générer la Géométrie" #: appGUI/ObjectUI.py:478 appGUI/preferences/gerber/GerberOptPrefGroupUI.py:73 #: appGUI/preferences/tools/Tools2QRCodePrefGroupUI.py:137 @@ -6816,10 +6747,8 @@ msgid "Solid circles." msgstr "Cercles pleins." #: appGUI/ObjectUI.py:583 -#, fuzzy -#| msgid "Excellon Object" msgid "Edit an Excellon object." -msgstr "Excellon objet" +msgstr "Editer un objet Excellon." #: appGUI/ObjectUI.py:671 appTools/ToolDrilling.py:2067 #: appTools/ToolMilling.py:1672 @@ -6838,7 +6767,7 @@ msgstr "" "Ici, les outils sont sélectionnés pour la génération de GCode." #: appGUI/ObjectUI.py:676 appGUI/ObjectUI.py:1012 appTools/ToolDrilling.py:2072 -#: appTools/ToolMilling.py:1677 appTools/ToolPaint.py:2844 +#: appTools/ToolMilling.py:1677 appTools/ToolPaint.py:2845 msgid "" "Tool Diameter. It's value (in current FlatCAM units) \n" "is the cut width into the material." @@ -6861,14 +6790,14 @@ msgid "" "The number of Slot holes. Holes that are created by\n" "milling them with an endmill bit." msgstr "" -"Le nombre de trous de fente. Trous créés par\n" -"les fraiser avec un bit de fraise." +"Nombre de trous de rainure. Trous créés par\n" +"fraisage avec une fraise." #: appGUI/ObjectUI.py:685 -#, fuzzy -#| msgid "Set the color of the shape when selected." msgid "Show the color of the drill holes when using multi-color." -msgstr "Définit la couleur de la forme lorsqu'elle est sélectionnée." +msgstr "" +"Afficher la couleur des trous de forage lors de l'utilisation de plusieurs " +"couleurs." #: appGUI/ObjectUI.py:687 msgid "" @@ -6880,10 +6809,8 @@ msgstr "" #: appGUI/ObjectUI.py:696 #: appGUI/preferences/excellon/ExcellonAdvOptPrefGroupUI.py:55 -#, fuzzy -#| msgid "Add from DB" msgid "Auto load from DB" -msgstr "Ajouter depuis la BD" +msgstr "Chargement automatique depuis la BD" #: appGUI/ObjectUI.py:698 #: appGUI/preferences/excellon/ExcellonAdvOptPrefGroupUI.py:57 @@ -6891,30 +6818,22 @@ msgid "" "Automatic replacement of the tools from related application tools\n" "with tools from DB that have a close diameter value." msgstr "" +"Remplacement automatique des outils de l'application associés\n" +"avec des outils de la DB qui ont une valeur de diamètre proche." #: appGUI/ObjectUI.py:724 -#, fuzzy -#| msgid "" -#| "Merge a selection of Excellon objects into a new combo Excellon object." msgid "Generate GCode out of drill holes in an Excellon object." -msgstr "" -"Fusionner une sélection d'objets Excellon dans un nouvel objet Excellon " -"combo." +msgstr "Générer le GCODE à partir des trous de forage dans un objet Excellon." #: appGUI/ObjectUI.py:735 appGUI/ObjectUI.py:1792 -#, fuzzy -#| msgid "Milling Type" msgid "Milling Tool" -msgstr "Type de fraisage" +msgstr "Outil de fraisage" #: appGUI/ObjectUI.py:738 -#, fuzzy -#| msgid "" -#| "Merge a selection of Excellon objects into a new combo Excellon object." msgid "Generate a Geometry for milling drills or slots in an Excellon object." msgstr "" -"Fusionner une sélection d'objets Excellon dans un nouvel objet Excellon " -"combo." +"Générez une géométrie pour fraiser des trous ou des rainures dans un objet " +"Excellon." #: appGUI/ObjectUI.py:782 msgid "Milling Geometry" @@ -6946,42 +6865,32 @@ msgid "Mill Drills" msgstr "Fraiser les Forets" #: appGUI/ObjectUI.py:804 -#, fuzzy -#| msgid "" -#| "Create the Geometry Object\n" -#| "for milling SLOTS toolpaths." msgid "" "Create the Geometry Object\n" "for milling drills." msgstr "" "Créer l'objet de géométrie\n" -"pour fraiser des parcours d’outils." +"pour fraiser les forages." #: appGUI/ObjectUI.py:822 msgid "Mill Slots" msgstr "Fraiser les Fentes" #: appGUI/ObjectUI.py:824 -#, fuzzy -#| msgid "" -#| "Create the Geometry Object\n" -#| "for milling SLOTS toolpaths." msgid "" "Create the Geometry Object\n" "for milling slots." msgstr "" "Créer l'objet de géométrie\n" -"pour fraiser des parcours d’outils." +"pour fraiser les rainures." #: appGUI/ObjectUI.py:866 msgid "Geometry Object" msgstr "Objet de géométrie" #: appGUI/ObjectUI.py:905 -#, fuzzy -#| msgid "Geometry Object" msgid "Edit an Geometry object." -msgstr "Objet de géométrie" +msgstr "Editer un objet de géométrie." #: appGUI/ObjectUI.py:969 msgid "" @@ -7129,17 +7038,17 @@ msgstr "" "La valeur peut être positive pour 'dehors'\n" "coupé et négatif pour «à l'intérieur» coupé." -#: appGUI/ObjectUI.py:1079 appTools/ToolIsolation.py:3100 -#: appTools/ToolNCC.py:66 appTools/ToolNCC.py:3985 appTools/ToolPaint.py:140 -#: appTools/ToolPaint.py:2895 +#: appGUI/ObjectUI.py:1079 appTools/ToolIsolation.py:3101 +#: appTools/ToolNCC.py:66 appTools/ToolNCC.py:3986 appTools/ToolPaint.py:140 +#: appTools/ToolPaint.py:2896 msgid "Add from DB" msgstr "Ajouter depuis la BD" #: appGUI/ObjectUI.py:1096 appTools/ToolCutOut.py:2082 -#: appTools/ToolIsolation.py:61 appTools/ToolIsolation.py:3135 -#: appTools/ToolNCC.py:4019 appTools/ToolPaint.py:2915 +#: appTools/ToolIsolation.py:61 appTools/ToolIsolation.py:3136 +#: appTools/ToolNCC.py:4020 appTools/ToolPaint.py:2916 msgid "Search and Add" -msgstr "" +msgstr "Rechercher et Ajouter" #: appGUI/ObjectUI.py:1099 msgid "" @@ -7151,20 +7060,14 @@ msgstr "" #: appGUI/ObjectUI.py:1103 appObjects/FlatCAMGeometry.py:572 #: appTools/ToolCutOut.py:2094 appTools/ToolIsolation.py:66 -#: appTools/ToolIsolation.py:3146 appTools/ToolNCC.py:4030 -#: appTools/ToolPaint.py:2926 -#, fuzzy -#| msgid "Add from DB" +#: appTools/ToolIsolation.py:3147 appTools/ToolNCC.py:4031 +#: appTools/ToolPaint.py:2927 msgid "Pick from DB" -msgstr "Ajouter depuis la BD" +msgstr "Choisir depuis la BD" #: appGUI/ObjectUI.py:1106 appTools/ToolCutOut.py:2097 -#: appTools/ToolIsolation.py:3149 appTools/ToolNCC.py:4033 -#: appTools/ToolPaint.py:2929 -#, fuzzy -#| msgid "" -#| "Add a new tool to the Tool Table\n" -#| "from the Tool DataBase." +#: appTools/ToolIsolation.py:3150 appTools/ToolNCC.py:4034 +#: appTools/ToolPaint.py:2930 msgid "" "Add a new tool to the Tool Table\n" "from the Tools Database.\n" @@ -7172,7 +7075,9 @@ msgid "" "Menu: Options -> Tools Database" msgstr "" "Ajouter un nouvel outil à la table d'outils\n" -"à partir de la base de données d'outils." +"à partir de la base de données d'outils.\n" +"Gestion de la base de données Outils dans:\n" +"Menu: Options -> Base de données outils" #: appGUI/ObjectUI.py:1128 msgid "" @@ -7193,22 +7098,22 @@ msgstr "" #: appTools/ToolIsolation.py:532 appTools/ToolIsolation.py:640 #: appTools/ToolIsolation.py:645 appTools/ToolIsolation.py:675 #: appTools/ToolIsolation.py:698 appTools/ToolIsolation.py:711 -#: appTools/ToolIsolation.py:3179 appTools/ToolMilling.py:628 +#: appTools/ToolIsolation.py:3180 appTools/ToolMilling.py:628 #: appTools/ToolMilling.py:744 appTools/ToolMilling.py:749 #: appTools/ToolMilling.py:779 appTools/ToolMilling.py:790 #: appTools/ToolMilling.py:794 appTools/ToolMilling.py:1711 #: appTools/ToolNCC.py:271 appTools/ToolNCC.py:276 appTools/ToolNCC.py:306 -#: appTools/ToolNCC.py:329 appTools/ToolNCC.py:342 appTools/ToolNCC.py:728 -#: appTools/ToolNCC.py:4063 appTools/ToolPaint.py:245 appTools/ToolPaint.py:250 +#: appTools/ToolNCC.py:329 appTools/ToolNCC.py:342 appTools/ToolNCC.py:729 +#: appTools/ToolNCC.py:4064 appTools/ToolPaint.py:245 appTools/ToolPaint.py:250 #: appTools/ToolPaint.py:280 appTools/ToolPaint.py:302 -#: appTools/ToolPaint.py:314 appTools/ToolPaint.py:663 -#: appTools/ToolPaint.py:2957 +#: appTools/ToolPaint.py:314 appTools/ToolPaint.py:664 +#: appTools/ToolPaint.py:2958 msgid "Parameters for" msgstr "Paramètres pour" #: appGUI/ObjectUI.py:1164 appTools/ToolDrilling.py:2119 -#: appTools/ToolIsolation.py:3182 appTools/ToolMilling.py:1714 -#: appTools/ToolNCC.py:4066 appTools/ToolPaint.py:2960 +#: appTools/ToolIsolation.py:3183 appTools/ToolMilling.py:1714 +#: appTools/ToolNCC.py:4067 appTools/ToolPaint.py:2961 msgid "" "The data used for creating GCode.\n" "Each tool store it's own set of such data." @@ -7397,14 +7302,14 @@ msgid "The feedrate used while the probe is probing." msgstr "L'avance utilisée pendant le sondage." #: appGUI/ObjectUI.py:1423 appTools/ToolDrilling.py:2364 -#: appTools/ToolIsolation.py:3278 appTools/ToolMilling.py:2042 -#: appTools/ToolNCC.py:4224 appTools/ToolPaint.py:3055 +#: appTools/ToolIsolation.py:3279 appTools/ToolMilling.py:2042 +#: appTools/ToolNCC.py:4225 appTools/ToolPaint.py:3056 msgid "Apply parameters to all tools" msgstr "Appliquer des paramètres à tous les outils" #: appGUI/ObjectUI.py:1426 appTools/ToolDrilling.py:2367 -#: appTools/ToolIsolation.py:3281 appTools/ToolMilling.py:2045 -#: appTools/ToolNCC.py:4227 appTools/ToolPaint.py:3058 +#: appTools/ToolIsolation.py:3282 appTools/ToolMilling.py:2045 +#: appTools/ToolNCC.py:4228 appTools/ToolPaint.py:3059 msgid "" "The parameters in the current form will be applied\n" "on all the tools from the Tool Table." @@ -7413,14 +7318,14 @@ msgstr "" "sur tous les outils de la table d'outils." #: appGUI/ObjectUI.py:1437 appTools/ToolDrilling.py:2378 -#: appTools/ToolIsolation.py:3292 appTools/ToolMilling.py:2056 -#: appTools/ToolNCC.py:4238 appTools/ToolPaint.py:3069 +#: appTools/ToolIsolation.py:3293 appTools/ToolMilling.py:2056 +#: appTools/ToolNCC.py:4239 appTools/ToolPaint.py:3070 msgid "Common Parameters" msgstr "Paramètres communs" #: appGUI/ObjectUI.py:1439 appTools/ToolDrilling.py:2380 -#: appTools/ToolIsolation.py:3294 appTools/ToolMilling.py:2058 -#: appTools/ToolNCC.py:4240 appTools/ToolPaint.py:3071 +#: appTools/ToolIsolation.py:3295 appTools/ToolMilling.py:2058 +#: appTools/ToolNCC.py:4241 appTools/ToolPaint.py:3072 msgid "Parameters that are common for all tools." msgstr "Paramètres communs à tous les outils." @@ -7628,9 +7533,9 @@ msgstr "Ajoutez une zone d'exclusion." #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:305 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:324 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:286 -#: appTools/ToolDrilling.py:2591 appTools/ToolIsolation.py:3440 -#: appTools/ToolMilling.py:2267 appTools/ToolNCC.py:4363 -#: appTools/ToolPaint.py:3153 +#: appTools/ToolDrilling.py:2591 appTools/ToolIsolation.py:3441 +#: appTools/ToolMilling.py:2267 appTools/ToolNCC.py:4364 +#: appTools/ToolPaint.py:3154 msgid "The kind of selection shape used for area selection." msgstr "Type de forme de sélection utilisé pour la sélection de zone." @@ -7661,7 +7566,7 @@ msgstr "Supprimez toutes les zones d'exclusion sélectionnées dans le tableau." #: appGUI/ObjectUI.py:1631 #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:261 msgid "Add Polish" -msgstr "" +msgstr "Ajouter vernis" #: appGUI/ObjectUI.py:1633 #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:263 @@ -7669,16 +7574,18 @@ msgid "" "Will add a Paint section at the end of the GCode.\n" "A metallic brush will clean the material after milling." msgstr "" +"Ajoutera une section Peinture à la fin du GCode.\n" +"Une brosse métallique nettoiera le matériau après le fraisage." #: appGUI/ObjectUI.py:1641 #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:270 msgid "Diameter for the polishing tool." -msgstr "" +msgstr "Diamètre de l'outil de polissage." #: appGUI/ObjectUI.py:1667 #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:294 msgid "Pressure" -msgstr "" +msgstr "Pression" #: appGUI/ObjectUI.py:1669 #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:296 @@ -7686,24 +7593,20 @@ msgid "" "Negative value. The higher the absolute value\n" "the stronger the pressure of the brush on the material." msgstr "" +"Valeur négative. Plus la valeur absolue est élevée\n" +"plus la pression de la brosse sur le matériau est forte." #: appGUI/ObjectUI.py:1711 #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:335 -#, fuzzy -#| msgid "" -#| "Algorithm for copper clearing:\n" -#| "- Standard: Fixed step inwards.\n" -#| "- Seed-based: Outwards from seed.\n" -#| "- Line-based: Parallel lines." msgid "" "Algorithm for polishing:\n" "- Standard: Fixed step inwards.\n" "- Seed-based: Outwards from seed.\n" "- Line-based: Parallel lines." msgstr "" -"Algorithme de compensation du cuivre:\n" +"Algorithme de suppression du cuivre:\n" "- Standard: pas fixe vers l'intérieur.\n" -"- À base de graines: à l'extérieur des graines.\n" +"- Circulaire: vers l'extérieur du cercle.\n" "- Ligne: lignes parallèles." #: appGUI/ObjectUI.py:1763 appGUI/ObjectUI.py:1766 @@ -7726,26 +7629,16 @@ msgid "Launch Paint Tool in Tools Tab." msgstr "Lancer L'outil de Peinture dans l'onglet Outils." #: appGUI/ObjectUI.py:1795 -#, fuzzy -#| msgid "Generating Solder Paste dispensing geometry..." msgid "Generate a CNCJob by milling a Geometry." -msgstr "Génération de géométrie de distribution de pâte à souder ..." +msgstr "Générer un CNCJob en fraisant une géométrie." #: appGUI/ObjectUI.py:1811 appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:35 -#, fuzzy -#| msgid "" -#| "Creates tool paths to cover the\n" -#| "whole area of a polygon (remove\n" -#| "all copper). You will be asked\n" -#| "to click on the desired polygon." msgid "" "Creates tool paths to cover the\n" "whole area of a polygon." msgstr "" -"Crée des chemins d’outils pour couvrir la\n" -"toute la surface d'un polygone (supprimer\n" -"tout en cuivre). Tu vas être interrogé\n" -"cliquer sur le polygone désiré." +"Crée des trajectoires d'outils pour couvrir\n" +"la zone entière d'un polygone." #: appGUI/ObjectUI.py:1865 msgid "CNC Job Object" @@ -7768,10 +7661,8 @@ msgid "Travel" msgstr "Voyage" #: appGUI/ObjectUI.py:1913 -#, fuzzy -#| msgid "Create the QRCode object." msgid "Edit an GCode object." -msgstr "Créez l'objet QRCode." +msgstr "Editer un objet GCode." #: appGUI/ObjectUI.py:1950 appGUI/preferences/cncjob/CNCJobOptPrefGroupUI.py:71 msgid "Display Annotation" @@ -7849,60 +7740,52 @@ msgstr "Mettre à jour le dessin." #: appGUI/ObjectUI.py:2067 msgid "Use CNC Code Snippets" -msgstr "" +msgstr "Utiliser les extraits de code CNC" #: appGUI/ObjectUI.py:2069 msgid "" "When selected, it will include CNC Code snippets (append and prepend)\n" "defined in the Preferences." msgstr "" +"Si sélectionné, il ajoutera les extraits de code CNC (préfixe et suffixe)\n" +"défini dans les Préférences." #: appGUI/ObjectUI.py:2075 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:64 msgid "Autolevelling" -msgstr "" +msgstr "Nivellement automatique" #: appGUI/ObjectUI.py:2078 msgid "Enable the autolevelling feature." -msgstr "" +msgstr "Activer les fonctionnalités de nivellement automatique." #: appGUI/ObjectUI.py:2106 -#, fuzzy -#| msgid "Tools Table" msgid "Probe Points Table" -msgstr "Tableau des outils" +msgstr "Tableau des points de palpage" #: appGUI/ObjectUI.py:2107 msgid "Generate GCode that will obtain the height map" -msgstr "" +msgstr "Générer le GCODE de la matrice de niveau" #: appGUI/ObjectUI.py:2109 msgid "Show" -msgstr "" +msgstr "Afficher" #: appGUI/ObjectUI.py:2110 -#, fuzzy -#| msgid "Toggle the display of axis on canvas" msgid "Toggle the display of the Probe Points table." -msgstr "Basculer l'affichage de l'axe sur le canevas" +msgstr "Basculer l'affichage de la table des points de palpage." #: appGUI/ObjectUI.py:2123 -#, fuzzy -#| msgid "Coordinates" msgid "X-Y Coordinates" -msgstr "Coordonnées" +msgstr "Coordonnées X-Y" #: appGUI/ObjectUI.py:2123 -#, fuzzy -#| msgid "Light" msgid "Height" -msgstr "Lumière" +msgstr "Hauteur" #: appGUI/ObjectUI.py:2127 -#, fuzzy -#| msgid "Plot Options" msgid "Plot probing points" -msgstr "Options de Tracé" +msgstr "Tracer les points de palpage" #: appGUI/ObjectUI.py:2129 msgid "" @@ -7910,12 +7793,13 @@ msgid "" "If a Voronoi method is used then\n" "the Voronoi areas are also plotted." msgstr "" +"Tracez les points de palpage dans le tableau.\n" +"Si une méthode \"Voronoi\" est utilisée, alors\n" +"les zones de \"Voronoi\" sont également tracées." #: appGUI/ObjectUI.py:2144 -#, fuzzy -#| msgid "Finished G-Code generation" msgid "Probe GCode Generation" -msgstr "Génération de GCode terminée" +msgstr "Génération GCode sonde" #: appGUI/ObjectUI.py:2146 msgid "" @@ -7923,27 +7807,25 @@ msgid "" "either through a file or directly, with the intent to get the height map\n" "that is to modify the original GCode to level the cutting height." msgstr "" +"Créera un GCode qui sera envoyé au contrôleur,\n" +"soit via un fichier ou directement, avec l'intention d'obtenir la matrice de " +"niveau\n" +"c'est-à-dire modifier le GCode d'origine pour niveler la hauteur de coupe." #: appGUI/ObjectUI.py:2153 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:119 -#, fuzzy -#| msgid "Probe Z depth" msgid "Probe Z travel" -msgstr "Prof.r de la sonde Z" +msgstr "Déplacement sonde Z" #: appGUI/ObjectUI.py:2155 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:121 -#, fuzzy -#| msgid "Height (Z) for travelling between the points." msgid "The safe Z for probe travelling between probe points." -msgstr "Hauteur (Z) pour voyager entre les points." +msgstr "Hauteur de sécurité (Z) pour voyager entre les points." #: appGUI/ObjectUI.py:2178 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:144 -#, fuzzy -#| msgid "Feedrate" msgid "Probe Feedrate" -msgstr "Vitesse d'avance" +msgstr "Vitesse de déplacement sonde" #: appGUI/ObjectUI.py:2195 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:71 @@ -7957,6 +7839,10 @@ msgid "" "- Manual: will pick a selection of probe points by clicking on canvas\n" "- Grid: will automatically generate a grid of probe points" msgstr "" +"Choisissez un mode de génération de la matrice de niveau.\n" +"- Manuel: Prendre une sélection de points de mesure en cliquant sur le " +"canvas\n" +"- Grille: générera automatiquement une grille de points de palpage" #: appGUI/ObjectUI.py:2202 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:78 @@ -7966,11 +7852,9 @@ msgid "Manual" msgstr "Manuel" #: appGUI/ObjectUI.py:2203 -#: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:79 app_Main.py:7560 -#, fuzzy -#| msgid "Grids" +#: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:79 app_Main.py:7562 msgid "Grid" -msgstr "Pas grilles" +msgstr "Grille" #: appGUI/ObjectUI.py:2210 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:86 @@ -7979,6 +7863,11 @@ msgid "" "- Voronoi: will generate a Voronoi diagram\n" "- Bilinear: will use bilinear interpolation. Usable only for grid mode." msgstr "" +"Choisissez une méthode d'approximation des niveaux à partir des données de " +"nivellement automatique.\n" +"- Voronoi: générera un diagramme de \"Voronoi\"\n" +"- Bilinéaire: utilisera l'interpolation bilinéaire. Utilisable uniquement " +"pour le mode grille." #: appGUI/ObjectUI.py:2216 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:92 @@ -7987,10 +7876,8 @@ msgstr "Voronoi" #: appGUI/ObjectUI.py:2217 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:93 -#, fuzzy -#| msgid "Linear" msgid "Bilinear" -msgstr "Linéaire" +msgstr "Bilinéaire" #: appGUI/ObjectUI.py:2230 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:101 @@ -8002,7 +7889,7 @@ msgstr "Colonnes" #: appGUI/ObjectUI.py:2232 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:103 msgid "The number of grid columns." -msgstr "" +msgstr "Le nombre de colonnes de la grille." #: appGUI/ObjectUI.py:2241 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:111 @@ -8014,20 +7901,16 @@ msgstr "Lignes" #: appGUI/ObjectUI.py:2243 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:113 msgid "The number of grid rows." -msgstr "" +msgstr "Le nombre de lignes de la grille." #: appGUI/ObjectUI.py:2248 -#, fuzzy -#| msgid "Get Points" msgid "Add Probe Points" -msgstr "Obtenir des points" +msgstr "Ajouter points de palpage" #: appGUI/ObjectUI.py:2256 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:160 -#, fuzzy -#| msgid "Contour" msgid "Controller" -msgstr "Contour" +msgstr "Contrôleur" #: appGUI/ObjectUI.py:2258 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:162 @@ -8035,54 +7918,50 @@ msgid "" "The kind of controller for which to generate\n" "height map gcode." msgstr "" +"Le type de contrôleur pour lequel générer\n" +"le gcode de la matrice de niveau." #: appGUI/ObjectUI.py:2304 appGUI/ObjectUI.py:2319 #: appObjects/FlatCAMCNCJob.py:1312 appObjects/FlatCAMCNCJob.py:1334 -#, fuzzy -#| msgid "Contour" msgid "Control" -msgstr "Contour" +msgstr "Contrôle" #: appGUI/ObjectUI.py:2314 appGUI/ObjectUI.py:2321 #: appObjects/FlatCAMCNCJob.py:1314 appObjects/FlatCAMCNCJob.py:1336 -#, fuzzy -#| msgid "Rendered" msgid "Sender" -msgstr "Rendu" +msgstr "Expéditeur" #: appGUI/ObjectUI.py:2335 msgid "COM list" -msgstr "" +msgstr "Liste COM" #: appGUI/ObjectUI.py:2337 appGUI/ObjectUI.py:2352 msgid "Lists the available serial ports." -msgstr "" +msgstr "Liste des ports série disponibles." #: appGUI/ObjectUI.py:2341 msgid "Search" -msgstr "" +msgstr "Rechercher" #: appGUI/ObjectUI.py:2343 msgid "Search for the available serial ports." -msgstr "" +msgstr "Rechercher les ports série disponibles." #: appGUI/ObjectUI.py:2350 msgid "Baud rates" -msgstr "" +msgstr "Débit binaire" #: appGUI/ObjectUI.py:2369 msgid "New, custom baudrate." -msgstr "" +msgstr "Nouveau, débit binaire personnalisé." #: appGUI/ObjectUI.py:2377 msgid "Add the specified custom baudrate to the list." -msgstr "" +msgstr "Ajouter le débit binaire personnalisé à la liste." #: appGUI/ObjectUI.py:2383 -#, fuzzy -#| msgid "Delete Selected" msgid "Delete selected baudrate" -msgstr "Supprimer sélectionnée" +msgstr "Supprimer le débit binaire sélectionné" #: appGUI/ObjectUI.py:2387 msgid "Reset" @@ -8090,47 +7969,37 @@ msgstr "Réinitialiser" #: appGUI/ObjectUI.py:2389 msgid "Software reset of the controller." -msgstr "" +msgstr "Réinitialisation logicielle du contrôleur." #: appGUI/ObjectUI.py:2395 appObjects/FlatCAMCNCJob.py:1328 -#, fuzzy -#| msgid "Connect" msgid "Disconnected" -msgstr "Relier" +msgstr "Déconnecté" #: appGUI/ObjectUI.py:2397 -#, fuzzy -#| msgid "" -#| "Create a Gerber object from the selected object, within\n" -#| "the specified box." msgid "Connect to the selected port with the selected baud rate." -msgstr "" -"Créez un objet Gerber à partir de l'objet sélectionné, dans\n" -"la case spécifiée." +msgstr "Se connecter au port sélectionné avec le débit binaire sélectionné." #: appGUI/ObjectUI.py:2422 msgid "Jog" -msgstr "" +msgstr "Mouvement" #: appGUI/ObjectUI.py:2430 -#, fuzzy -#| msgid "Zeros" msgid "Zero Axes" -msgstr "Zéros" +msgstr "*Axes zéro" #: appGUI/ObjectUI.py:2463 msgid "Pause/Resume" -msgstr "" +msgstr "Pause/Reprise" #: appGUI/ObjectUI.py:2485 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:172 msgid "Step" -msgstr "" +msgstr "Pas" #: appGUI/ObjectUI.py:2487 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:174 msgid "Each jog action will move the axes with this value." -msgstr "" +msgstr "Chaque mouvement déplacera les axes avec cette valeur." #: appGUI/ObjectUI.py:2499 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:185 @@ -8142,61 +8011,55 @@ msgstr "Vitesse d'avance" #: appGUI/ObjectUI.py:2501 #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:187 msgid "Feedrate when jogging." -msgstr "" +msgstr "Vitesse de déplacement." #: appGUI/ObjectUI.py:2521 msgid "Send Command" -msgstr "" +msgstr "Envoyer commande" #: appGUI/ObjectUI.py:2523 appGUI/ObjectUI.py:2533 msgid "Send a custom command to GRBL." -msgstr "" +msgstr "Envoyer une commande personnalisée à GRBL." #: appGUI/ObjectUI.py:2528 msgid "Type GRBL command ..." -msgstr "" +msgstr "Taper la commande GRBL ..." #: appGUI/ObjectUI.py:2531 msgid "Send" -msgstr "" +msgstr "Envoyer" #: appGUI/ObjectUI.py:2539 -#, fuzzy -#| msgid "Text to PDF parameters" msgid "Get Config parameter" -msgstr "Paramètres texte en PDF" +msgstr "Obtenir paramètre de Config" #: appGUI/ObjectUI.py:2541 msgid "A GRBL configuration parameter." -msgstr "" +msgstr "Un paramètre de configuration GRBL." #: appGUI/ObjectUI.py:2546 msgid "Type GRBL parameter ..." -msgstr "" +msgstr "Taper le paramètre GRBL ..." #: appGUI/ObjectUI.py:2549 -#, fuzzy -#| msgid "Geo" msgid "Get" -msgstr "Géo" +msgstr "Obtenir" #: appGUI/ObjectUI.py:2551 msgid "Get the value of a specified GRBL parameter." -msgstr "" +msgstr "Obtenir la valeur d'un paramètre GRBL spécifié." #: appGUI/ObjectUI.py:2559 -#, fuzzy -#| msgid "Gerber Export" msgid "Get Report" -msgstr "Gerber exportation" +msgstr "Obtenir le rapport" #: appGUI/ObjectUI.py:2561 msgid "Print in shell the GRBL report." -msgstr "" +msgstr "Afficher le rapport GRBL dans le terminal." #: appGUI/ObjectUI.py:2567 msgid "Apply AutoLevelling" -msgstr "" +msgstr "Appliquer le nivellement automatique" #: appGUI/ObjectUI.py:2569 msgid "" @@ -8204,33 +8067,30 @@ msgid "" "wait for the Z probing data and then apply this data\n" "over the original GCode therefore doing autolevelling." msgstr "" +"Enverra le GCode de palpage au contrôleur GRBL,\n" +"attendez les données de palpage Z, puis appliquez ces données\n" +"sur le GCode original faisant donc de l'auto nivellement." #: appGUI/ObjectUI.py:2578 msgid "Will save the GRBL height map." -msgstr "" +msgstr "Sauvegardera la matrice de nivellement GRBL." #: appGUI/ObjectUI.py:2588 -#, fuzzy -#| msgid "Starting G-Code" msgid "Save Probing GCode" -msgstr "Démarrer le GCode" +msgstr "Sauver GCode de palpage" #: appGUI/ObjectUI.py:2590 -#, fuzzy -#| msgid "Starting G-Code" msgid "Will save the probing GCode." -msgstr "Démarrer le GCode" +msgstr "Sauvera le GCode de palpage." #: appGUI/ObjectUI.py:2599 msgid "View/Edit the probing GCode." -msgstr "" +msgstr "Voir/Editer le GCODE de palpage." #: appGUI/ObjectUI.py:2606 appObjects/FlatCAMCNCJob.py:1747 #: appObjects/FlatCAMCNCJob.py:1751 -#, fuzzy -#| msgid "Import List" msgid "Import Height Map" -msgstr "Importer la liste" +msgstr "Importer matrice de palpage" #: appGUI/ObjectUI.py:2608 msgid "" @@ -8239,6 +8099,9 @@ msgid "" "over the original GCode therefore\n" "doing autolevelling." msgstr "" +"Importez le fichier contenant la matrice de hauteur Z\n" +"obtenue par sondage, puis appliquer ces données\n" +"sur le GCode d'origine faisant donc de l'auto nivellement." #: appGUI/ObjectUI.py:2626 msgid "Export CNC Code" @@ -8263,10 +8126,8 @@ msgid "" msgstr "Ouvre la boîte de dialogue pour enregistrer le Fichier GCode." #: appGUI/ObjectUI.py:2647 -#, fuzzy -#| msgid "View CNC Code" msgid "Review CNC Code." -msgstr "Voir le code CNC" +msgstr "Examiner Code CNC." #: appGUI/ObjectUI.py:2708 msgid "Script Object" @@ -8400,7 +8261,7 @@ msgid "Preferences default values are restored." msgstr "Les valeurs par défaut des paramètres sont restaurées." #: appGUI/preferences/PreferencesUIManager.py:1081 app_Main.py:2833 -#: app_Main.py:9665 +#: app_Main.py:9667 msgid "Failed to write defaults to file." msgstr "Échec d'écriture du fichier." @@ -8423,7 +8284,7 @@ msgstr "" #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:27 msgid "CNC Job Adv. Options" -msgstr "Options avan. de CNCjob" +msgstr "Options avancées CNCjob" #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:35 #: appGUI/preferences/cncjob/CNCJobEditorPrefGroupUI.py:31 @@ -8452,7 +8313,7 @@ msgstr "Options avan. de CNCjob" #: appGUI/preferences/tools/ToolsSubPrefGroupUI.py:31 #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:31 #: appTools/ToolCalibration.py:762 appTools/ToolCopperThieving.py:1184 -#: appTools/ToolCorners.py:378 appTools/ToolEtchCompensation.py:356 +#: appTools/ToolCorners.py:382 appTools/ToolEtchCompensation.py:356 #: appTools/ToolFiducials.py:765 appTools/ToolInvertGerber.py:228 #: appTools/ToolQRCode.py:700 msgid "Parameters" @@ -8475,27 +8336,21 @@ msgid "Set the font color for the annotation texts." msgstr "Définissez la couleur de la police pour les textes d'annotation." #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:66 -#, fuzzy -#| msgid "Parameters for this tool" msgid "Parameters for the autolevelling." -msgstr "Paramètres pour cet outil" +msgstr "Paramètres de nivellement automatique." #: appGUI/preferences/cncjob/CNCJobAdvOptPrefGroupUI.py:200 msgid "Safe height (Z) distance when jogging to origin." -msgstr "" +msgstr "Hauteur de sécurité (Z) lors du déplacement vers l'origine." #: appGUI/preferences/cncjob/CNCJobEditorPrefGroupUI.py:27 -#, fuzzy -#| msgid "Code Editor" msgid "CNC Job Editor" -msgstr "Éditeur de code" +msgstr "Éditeur de Job CNC" #: appGUI/preferences/cncjob/CNCJobEditorPrefGroupUI.py:33 #: appGUI/preferences/geometry/GeometryEditorPrefGroupUI.py:33 -#, fuzzy -#| msgid "A list of Gerber Editor parameters." msgid "A list of Editor parameters." -msgstr "Une liste de paramètres de l'éditeur Gerber." +msgstr "Une liste de paramètres de l'éditeur." #: appGUI/preferences/cncjob/CNCJobEditorPrefGroupUI.py:46 msgid "Prepend to G-Code" @@ -8813,7 +8668,7 @@ msgid "" "Min value is: -359.99 degrees.\n" "Max value is: 360.00 degrees." msgstr "" -"Angle auquel la fente est placée.\n" +"Angle auquel la rainure est placée.\n" "La précision est de 2 décimales maximum.\n" "La valeur minimale est: -359,99 degrés.\n" "La valeur maximale est: 360,00 degrés." @@ -8996,7 +8851,7 @@ msgstr "" #: appGUI/preferences/excellon/ExcellonExpPrefGroupUI.py:137 msgid "Slot type" -msgstr "Type d'fentes" +msgstr "Type de rainure" #: appGUI/preferences/excellon/ExcellonExpPrefGroupUI.py:140 #: appGUI/preferences/excellon/ExcellonExpPrefGroupUI.py:150 @@ -9148,18 +9003,6 @@ msgid "Algorithm:" msgstr "Algorithme:" #: appGUI/preferences/excellon/ExcellonGenPrefGroupUI.py:215 -#, fuzzy -#| msgid "" -#| "This sets the optimization type for the Excellon drill path.\n" -#| "If <> is checked then Google OR-Tools algorithm with\n" -#| "MetaHeuristic Guided Local Path is used. Default search time is 3sec.\n" -#| "If <> is checked then Google OR-Tools Basic algorithm is used.\n" -#| "If <> is checked then Travelling Salesman algorithm is used for\n" -#| "drill path optimization.\n" -#| "\n" -#| "If this control is disabled, then FlatCAM works in 32bit mode and it " -#| "uses\n" -#| "Travelling Salesman algorithm for path optimization." msgid "" "This sets the optimization type for the Excellon drill path.\n" "If <> is checked then Google OR-Tools algorithm with\n" @@ -9170,16 +9013,16 @@ msgid "" "\n" "Some options are disabled when the application works in 32bit mode." msgstr "" -"Cela définit le type d'optimisation pour le chemin d'accès Excellon.\n" -"Si << MetaHeuristic >> est coché, l'algorithme Google OR-Tools avec\n" -"Le chemin local guidé MetaHeuristic est utilisé. La durée de recherche par " +"Ceci définit le type d'optimisation pour le chemin de forage Excellon.\n" +"Si << MetaHeuristic >> est coché alors l'algorithme Google OR-Tools avec\n" +"chemin local guidé MetaHeuristic est utilisé. Le temps de recherche par " "défaut est de 3 secondes.\n" -"Si << Base >> est coché, l'algorithme Google OR-Tools Basic est utilisé.\n" +"Si << Basic >> est coché, l'algorithme Google OR-Tools Basic est utilisé.\n" "Si << TSA >> est coché, l'algorithme Travelling Salesman est utilisé pour\n" "optimisation du chemin de forage.\n" "\n" -"Si ce contrôle est désactivé, FlatCAM fonctionne en mode 32 bits et utilise\n" -"Algorithme Travelling Salesman pour l’optimisation des chemins." +"Quelques options sont désactivées quand l'application fonctionne en mode " +"32bit." #: appGUI/preferences/excellon/ExcellonGenPrefGroupUI.py:225 #: appGUI/preferences/excellon/ExcellonGenPrefGroupUI.py:310 @@ -9231,12 +9074,12 @@ msgstr "" #: appGUI/preferences/excellon/ExcellonGenPrefGroupUI.py:255 #: appGUI/preferences/geometry/GeometryGenPrefGroupUI.py:138 msgid "Join Option" -msgstr "" +msgstr "Option de raccordement" #: appGUI/preferences/excellon/ExcellonGenPrefGroupUI.py:258 #: appGUI/preferences/geometry/GeometryGenPrefGroupUI.py:141 msgid "Fuse Tools" -msgstr "" +msgstr "Outils Fuse" #: appGUI/preferences/excellon/ExcellonGenPrefGroupUI.py:260 #: appGUI/preferences/geometry/GeometryGenPrefGroupUI.py:143 @@ -9244,6 +9087,8 @@ msgid "" "When checked, the tools will be merged\n" "but only if they share some of their attributes." msgstr "" +"Quand cochés, les outils seront fusionnés\n" +"mais seulement si ils partagent certains de leurs attributs." #: appGUI/preferences/excellon/ExcellonGenPrefGroupUI.py:277 #: appGUI/preferences/geometry/GeometryGenPrefGroupUI.py:160 @@ -9276,8 +9121,8 @@ msgid "" "- Milling -> will mill the drills/slots" msgstr "" "Type d'opération:\n" -"- Perçage -> va percer les forets / emplacements associés à cet outil\n" -"- Fraisage -> fraisera les forets / fentes" +"- Forage -> va forer les forages/rainures associés à cet outil\n" +"- Fraisage -> va fraiser les forages/rainures" #: appGUI/preferences/excellon/ExcellonOptPrefGroupUI.py:64 #: appTools/ToolMilling.py:1762 @@ -9318,7 +9163,7 @@ msgstr "Diam. de l'outil de forage" #: appGUI/preferences/excellon/ExcellonOptPrefGroupUI.py:110 msgid "Slot Tool dia" -msgstr "Diam fente outil" +msgstr "Diam outil rainure" #: appGUI/preferences/excellon/ExcellonOptPrefGroupUI.py:112 msgid "" @@ -9326,7 +9171,7 @@ msgid "" "when milling slots." msgstr "" "Diamètre de l'outil de coupe\n" -"lors du fraisage des fentes." +"lors du fraisage des rainures." #: appGUI/preferences/general/GeneralAPPSetGroupUI.py:28 #: appGUI/preferences/general/GeneralAppSettingsGroupUI.py:74 @@ -9337,7 +9182,7 @@ msgstr "Paramètres de l'application" msgid "Grid Settings" msgstr "Paramètres de la grille" -#: appGUI/preferences/general/GeneralAPPSetGroupUI.py:53 app_Main.py:7568 +#: appGUI/preferences/general/GeneralAPPSetGroupUI.py:53 app_Main.py:7570 msgid "X value" msgstr "Valeur X" @@ -9345,7 +9190,7 @@ msgstr "Valeur X" msgid "This is the Grid snap value on X axis." msgstr "Il s'agit de la valeur d'accrochage de la grille sur l'axe des X." -#: appGUI/preferences/general/GeneralAPPSetGroupUI.py:65 app_Main.py:7571 +#: appGUI/preferences/general/GeneralAPPSetGroupUI.py:65 app_Main.py:7573 msgid "Y value" msgstr "Valeur Y" @@ -9392,14 +9237,14 @@ msgstr "" #: appGUI/preferences/general/GeneralAPPSetGroupUI.py:176 #: appGUI/preferences/general/GeneralAppSettingsGroupUI.py:168 #: appGUI/preferences/tools/ToolsFilmPrefGroupUI.py:232 -#: appTools/ToolFilm.py:1277 app_Main.py:7588 +#: appTools/ToolFilm.py:1277 app_Main.py:7590 msgid "Portrait" msgstr "Portrait" #: appGUI/preferences/general/GeneralAPPSetGroupUI.py:177 #: appGUI/preferences/general/GeneralAppSettingsGroupUI.py:169 #: appGUI/preferences/tools/ToolsFilmPrefGroupUI.py:233 -#: appTools/ToolFilm.py:1278 app_Main.py:7590 +#: appTools/ToolFilm.py:1278 app_Main.py:7592 msgid "Landscape" msgstr "Paysage" @@ -9420,7 +9265,7 @@ msgstr "" "et incluez les onglets Projet, Sélectionné et Outil." #: appGUI/preferences/general/GeneralAPPSetGroupUI.py:214 -#: appTools/ToolDblSided.py:668 appTools/ToolDblSided.py:842 app_Main.py:7576 +#: appTools/ToolDblSided.py:668 appTools/ToolDblSided.py:842 app_Main.py:7578 msgid "Axis" msgstr "Axe" @@ -9441,7 +9286,7 @@ msgstr "" "texte\n" "les éléments utilisés dans l'application." -#: appGUI/preferences/general/GeneralAPPSetGroupUI.py:253 app_Main.py:7593 +#: appGUI/preferences/general/GeneralAPPSetGroupUI.py:253 app_Main.py:7595 msgid "HUD" msgstr "HUD" @@ -9564,13 +9409,16 @@ msgstr "" #: appGUI/preferences/general/GeneralAPPSetGroupUI.py:387 msgid "Allow Edit" -msgstr "" +msgstr "Autoriser modification" #: appGUI/preferences/general/GeneralAPPSetGroupUI.py:389 msgid "" "When checked, the user can edit the object names in the Project Tab\n" "by clicking on the object name. Active after restart." msgstr "" +"Quand coché, l'utilisateur peut modifier les noms des objets dans l'onglet " +"Projet\n" +"en cliquant sur le nom de l'objet. Actif après redémarrage." #: appGUI/preferences/general/GeneralAPPSetGroupUI.py:395 msgid "\"Open\" behavior" @@ -9650,7 +9498,7 @@ msgstr "Sélectionnez le GIF qui affiche l'activité lorsque FlatCAM est actif." #: appGUI/preferences/general/GeneralAppPrefGroupUI.py:29 msgid "App Preferences" -msgstr "Paramètres de l'app" +msgstr "Paramètres application" #: appGUI/preferences/general/GeneralAppPrefGroupUI.py:40 msgid "" @@ -9664,7 +9512,7 @@ msgstr "" #: appGUI/preferences/general/GeneralAppPrefGroupUI.py:44 msgid "IN" -msgstr "PO" +msgstr "INCH" #: appGUI/preferences/general/GeneralAppPrefGroupUI.py:50 msgid "Precision MM" @@ -9773,7 +9621,7 @@ msgstr "" #: appGUI/preferences/general/GeneralAppPrefGroupUI.py:125 msgid "Languages" -msgstr "Langages" +msgstr "Langues" #: appGUI/preferences/general/GeneralAppPrefGroupUI.py:126 msgid "Set the language used throughout FlatCAM." @@ -9863,7 +9711,7 @@ msgstr "" #: appGUI/preferences/general/GeneralAppPrefGroupUI.py:214 msgid "Workers number" -msgstr "No de travailleurs" +msgstr "Nbre de tâches" #: appGUI/preferences/general/GeneralAppPrefGroupUI.py:216 msgid "" @@ -9874,12 +9722,12 @@ msgid "" "Default value is 2.\n" "After change, it will be applied at next App start." msgstr "" -"Le nombre de Qthreads mis à la disposition de l'App.\n" -"Un plus grand nombre peut terminer les travaux plus rapidement, mais\n" +"Nombre de Qthreads mis à la disposition de l'application.\n" +"Un grand nombre peut terminer les travaux plus rapidement, mais\n" "en fonction de la vitesse de votre ordinateur, peut rendre l'application\n" -"ne répond pas. Peut avoir une valeur comprise entre 2 et 16.\n" +"non réactive. Peut avoir une valeur comprise entre 2 et 16.\n" "La valeur par défaut est 2.\n" -"Après modification, il sera appliqué au prochain démarrage de l'application." +"Après modification, sera appliqué au prochain démarrage de l'application." #: appGUI/preferences/general/GeneralAppPrefGroupUI.py:230 msgid "Geo Tolerance" @@ -10081,7 +9929,7 @@ msgstr "" #: appGUI/preferences/general/GeneralGUIPrefGroupUI.py:127 msgid "Hover Shape" -msgstr "" +msgstr "Forme de survol" #: appGUI/preferences/general/GeneralGUIPrefGroupUI.py:129 msgid "" @@ -10095,7 +9943,7 @@ msgstr "" #: appGUI/preferences/general/GeneralGUIPrefGroupUI.py:136 msgid "Selection Shape" -msgstr "" +msgstr "Forme de sélection" #: appGUI/preferences/general/GeneralGUIPrefGroupUI.py:138 msgid "" @@ -10332,7 +10180,7 @@ msgstr "Exclusion de zone" #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:202 #: appGUI/preferences/tools/ToolsDrillPrefGroupUI.py:403 msgid "Area exclusion parameters." -msgstr "Ajouter des zones d'exclusion" +msgstr "Paramètres de la zone d'exclusion." #: appGUI/preferences/geometry/GeometryAdvOptPrefGroupUI.py:207 #: appGUI/preferences/tools/ToolsDrillPrefGroupUI.py:408 @@ -10497,10 +10345,10 @@ msgstr "\"Suivre\"" #: appGUI/preferences/gerber/GerberAdvOptPrefGroupUI.py:64 #: appObjects/FlatCAMGerber.py:370 appTools/ToolCopperThieving.py:578 #: appTools/ToolCopperThieving.py:775 appTools/ToolCopperThieving.py:787 -#: appTools/ToolIsolation.py:1359 appTools/ToolNCC.py:1806 -#: appTools/ToolNCC.py:1833 appTools/ToolNCC.py:1941 appTools/ToolNCC.py:1954 -#: appTools/ToolNCC.py:2856 appTools/ToolNCC.py:2961 appTools/ToolNCC.py:2976 -#: appTools/ToolNCC.py:3243 appTools/ToolNCC.py:3344 appTools/ToolNCC.py:3359 +#: appTools/ToolIsolation.py:1360 appTools/ToolNCC.py:1807 +#: appTools/ToolNCC.py:1834 appTools/ToolNCC.py:1942 appTools/ToolNCC.py:1955 +#: appTools/ToolNCC.py:2857 appTools/ToolNCC.py:2962 appTools/ToolNCC.py:2977 +#: appTools/ToolNCC.py:3244 appTools/ToolNCC.py:3345 appTools/ToolNCC.py:3360 #: camlib.py:1113 msgid "Buffering" msgstr "Mise en mémoire tampon" @@ -10760,34 +10608,28 @@ msgstr "" "ne se charge pas correctement." #: appGUI/preferences/gerber/GerberGenPrefGroupUI.py:144 -#, fuzzy -#| msgid "Set Color" msgid "Store colors" -msgstr "Définir la couleur" +msgstr "Mémorise les couleurs" #: appGUI/preferences/gerber/GerberGenPrefGroupUI.py:146 msgid "" "It will store the set colors for Gerber objects.\n" "Those will be used each time the application is started." msgstr "" +"Il stockera les couleurs définies pour les objets Gerber.\n" +"Celles-ci seront utilisés à chaque démarrage de l'application." #: appGUI/preferences/gerber/GerberGenPrefGroupUI.py:152 -#, fuzzy -#| msgid "Clear Plot" msgid "Clear Colors" -msgstr "Effacer le Dessin" +msgstr "Effacer les couleurs" #: appGUI/preferences/gerber/GerberGenPrefGroupUI.py:155 -#, fuzzy -#| msgid "Set the color for plotted objects." msgid "Reset the colors associated with Gerber objects." -msgstr "Définissez la couleur des objets tracés." +msgstr "Réinitialiser les couleurs associées aux objets Gerber." #: appGUI/preferences/gerber/GerberGenPrefGroupUI.py:229 -#, fuzzy -#| msgid "There is no Gerber object loaded ..." msgid "Stored colors for Gerber objects are deleted." -msgstr "Il n'y a pas d'objet Gerber chargé ..." +msgstr "Les couleurs mémorisées des objets Gerber sont effacées." #: appGUI/preferences/gerber/GerberOptPrefGroupUI.py:29 msgid "Gerber Options" @@ -10832,7 +10674,7 @@ msgstr "" #: appGUI/preferences/tools/Tools2CThievingPrefGroupUI.py:86 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:309 -#: appTools/ToolCopperThieving.py:1220 appTools/ToolNCC.py:4318 +#: appTools/ToolCopperThieving.py:1220 appTools/ToolNCC.py:4319 msgid "Itself" msgstr "Lui-même" @@ -10840,8 +10682,8 @@ msgstr "Lui-même" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:295 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:309 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:278 -#: appTools/ToolCopperThieving.py:1221 appTools/ToolIsolation.py:3391 -#: appTools/ToolNCC.py:4318 appTools/ToolPaint.py:3115 +#: appTools/ToolCopperThieving.py:1221 appTools/ToolIsolation.py:3392 +#: appTools/ToolNCC.py:4319 appTools/ToolPaint.py:3116 msgid "Area Selection" msgstr "Sélection de zone" @@ -10850,8 +10692,8 @@ msgstr "Sélection de zone" #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:309 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:278 #: appTools/ToolCopperThieving.py:1222 appTools/ToolDblSided.py:760 -#: appTools/ToolIsolation.py:3391 appTools/ToolNCC.py:4318 -#: appTools/ToolPaint.py:3115 tclCommands/TclCommandPaint.py:166 +#: appTools/ToolIsolation.py:3392 appTools/ToolNCC.py:4319 +#: appTools/ToolPaint.py:3116 tclCommands/TclCommandPaint.py:166 msgid "Reference Object" msgstr "Objet de référence" @@ -11004,7 +10846,7 @@ msgstr "Marge de la zone de délimitation pour la Robber Bar." #: appGUI/preferences/tools/Tools2CThievingPrefGroupUI.py:242 #: appGUI/preferences/tools/ToolsCornersPrefGroupUI.py:42 -#: appTools/ToolCopperThieving.py:1471 appTools/ToolCorners.py:385 +#: appTools/ToolCopperThieving.py:1471 appTools/ToolCorners.py:389 #: appTools/ToolEtchCompensation.py:370 msgid "Thickness" msgstr "Épaisseur" @@ -11042,7 +10884,7 @@ msgstr "Options de l'outil d'Étalonnage" #: appGUI/preferences/tools/Tools2FiducialsPrefGroupUI.py:38 #: appGUI/preferences/tools/Tools2PunchGerberPrefGroupUI.py:38 #: appGUI/preferences/tools/ToolsCornersPrefGroupUI.py:37 -#: appTools/ToolCopperThieving.py:1186 appTools/ToolCorners.py:380 +#: appTools/ToolCopperThieving.py:1186 appTools/ToolCorners.py:384 #: appTools/ToolFiducials.py:767 msgid "Parameters used for this tool." msgstr "Paramètres utilisés pour cet outil." @@ -11462,7 +11304,7 @@ msgstr "" #: appGUI/preferences/tools/Tools2InvertPrefGroupUI.py:69 #: appTools/ToolInvertGerber.py:258 msgid "Bevel" -msgstr "" +msgstr "Biseau" #: appGUI/preferences/tools/Tools2OptimalPrefGroupUI.py:27 msgid "Optimal Tool Options" @@ -11525,7 +11367,7 @@ msgstr "" "fichier." #: appGUI/preferences/tools/Tools2QRCodePrefGroupUI.py:45 -#: appTools/ToolQRCode.py:707 app_Main.py:7556 +#: appTools/ToolQRCode.py:707 app_Main.py:7558 msgid "Version" msgstr "Version" @@ -11919,21 +11761,13 @@ msgstr "Box" #: appGUI/preferences/tools/Tools2sidedPrefGroupUI.py:87 #: appTools/ToolDblSided.py:696 msgid "Hole Snap" -msgstr "" +msgstr "Hole Snap" #: appGUI/preferences/tools/Tools2sidedPrefGroupUI.py:90 msgid "Axis Ref" msgstr "Réf d'axe" #: appGUI/preferences/tools/Tools2sidedPrefGroupUI.py:92 -#, fuzzy -#| msgid "" -#| "The coordinates used as reference for the mirror operation.\n" -#| "Can be:\n" -#| "- Point -> a set of coordinates (x,y) around which the object is " -#| "mirrored\n" -#| "- Box -> a set of coordinates (x, y) obtained from the center of the\n" -#| "bounding box of another object selected below" msgid "" "The coordinates used as reference for the mirror operation.\n" "Can be:\n" @@ -11944,12 +11778,13 @@ msgid "" "object" msgstr "" "Les coordonnées utilisées comme référence pour l'opération miroir.\n" -"Peut être:\n" +"Peuvent être:\n" "- Point -> un ensemble de coordonnées (x, y) autour desquelles l'objet est " "mis en miroir\n" -"- Boîte -> un ensemble de coordonnées (x, y) obtenues à partir du centre de " -"la\n" -"cadre de délimitation d'un autre objet sélectionné ci-dessous" +"- Box -> un ensemble de coordonnées (x, y) obtenues à partir du centre du\n" +"cadre de délimitation d'un autre objet sélectionné ci-dessous\n" +"- Hole Snap -> un point défini par le centre d'un trou de forage d'un objet " +"Excellon" #: appGUI/preferences/tools/ToolsCalculatorsPrefGroupUI.py:27 msgid "Calculators Tool Options" @@ -12075,12 +11910,12 @@ msgid "Corner Markers Options" msgstr "Options des Marqueurs de Coin" #: appGUI/preferences/tools/ToolsCornersPrefGroupUI.py:44 -#: appTools/ToolCorners.py:387 +#: appTools/ToolCorners.py:391 msgid "The thickness of the line that makes the corner marker." msgstr "L'épaisseur de la ligne qui fait le marqueur de coin." #: appGUI/preferences/tools/ToolsCornersPrefGroupUI.py:58 -#: appTools/ToolCorners.py:401 +#: appTools/ToolCorners.py:405 msgid "The length of the line that makes the corner marker." msgstr "La longueur de la ligne qui fait le marqueur de coin." @@ -12160,45 +11995,41 @@ msgstr "" #: appGUI/preferences/tools/ToolsCutoutPrefGroupUI.py:240 #: appTools/ToolCutOut.py:2344 msgid "Big cursor" -msgstr "" +msgstr "Grand curseur" #: appGUI/preferences/tools/ToolsCutoutPrefGroupUI.py:242 #: appTools/ToolCutOut.py:2346 msgid "Use a big cursor when adding manual gaps." -msgstr "" +msgstr "Utiliser un grand curseur lors de l'ajout manuel d'interstice." #: appGUI/preferences/tools/ToolsDrillPrefGroupUI.py:27 -#, fuzzy -#| msgid "Film Tool Options" msgid "Drilling Tool Options" -msgstr "Options de l'Outil de Film" +msgstr "Options Outil Forage" #: appGUI/preferences/tools/ToolsDrillPrefGroupUI.py:33 #: appTools/ToolDrilling.py:2006 appTools/ToolMilling.py:1611 -#, fuzzy -#| msgid "Create Geometry for milling holes." msgid "Create CNCJob with toolpaths for drilling or milling holes." -msgstr "Créer une géométrie pour fraiser des trous." +msgstr "Créer un CNCJob avec chemin de trous de fraisage ou forage." #: appGUI/preferences/tools/ToolsDrillPrefGroupUI.py:41 #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:54 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:156 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:140 -#: appTools/ToolDrilling.py:2082 appTools/ToolIsolation.py:3071 -#: appTools/ToolMilling.py:1687 appTools/ToolNCC.py:3950 -#: appTools/ToolPaint.py:2860 +#: appTools/ToolDrilling.py:2082 appTools/ToolIsolation.py:3072 +#: appTools/ToolMilling.py:1687 appTools/ToolNCC.py:3951 +#: appTools/ToolPaint.py:2861 msgid "Tool order" -msgstr "L'ordre des Outils" +msgstr "Ordre des Outils" #: appGUI/preferences/tools/ToolsDrillPrefGroupUI.py:42 #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:55 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:157 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:167 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:141 -#: appTools/ToolDrilling.py:2083 appTools/ToolIsolation.py:3072 -#: appTools/ToolMilling.py:1688 appTools/ToolNCC.py:3951 -#: appTools/ToolNCC.py:3961 appTools/ToolPaint.py:2861 -#: appTools/ToolPaint.py:2871 +#: appTools/ToolDrilling.py:2083 appTools/ToolIsolation.py:3073 +#: appTools/ToolMilling.py:1688 appTools/ToolNCC.py:3952 +#: appTools/ToolNCC.py:3962 appTools/ToolPaint.py:2862 +#: appTools/ToolPaint.py:2872 msgid "" "This set the way that the tools in the tools table are used.\n" "'No' --> means that the used order is the one in the tool table\n" @@ -12224,9 +12055,9 @@ msgstr "" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:63 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:165 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:149 -#: appTools/ToolDrilling.py:2091 appTools/ToolIsolation.py:3080 -#: appTools/ToolMilling.py:1696 appTools/ToolNCC.py:3959 -#: appTools/ToolPaint.py:2869 +#: appTools/ToolDrilling.py:2091 appTools/ToolIsolation.py:3081 +#: appTools/ToolMilling.py:1696 appTools/ToolNCC.py:3960 +#: appTools/ToolPaint.py:2870 msgid "Forward" msgstr "L'avant" @@ -12234,9 +12065,9 @@ msgstr "L'avant" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:64 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:166 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:150 -#: appTools/ToolDrilling.py:2092 appTools/ToolIsolation.py:3081 -#: appTools/ToolMilling.py:1697 appTools/ToolNCC.py:3960 -#: appTools/ToolPaint.py:2870 +#: appTools/ToolDrilling.py:2092 appTools/ToolIsolation.py:3082 +#: appTools/ToolMilling.py:1697 appTools/ToolNCC.py:3961 +#: appTools/ToolPaint.py:2871 msgid "Reverse" msgstr "Inverse" @@ -12258,16 +12089,12 @@ msgstr "" "Sortie Gcode." #: appGUI/preferences/tools/ToolsDrillPrefGroupUI.py:240 -#, fuzzy -#| msgid "Mill Slots" msgid "Drilling Slots" -msgstr "Fraiser les Fentes" +msgstr "Trous de forage" #: appGUI/preferences/tools/ToolsDrillPrefGroupUI.py:279 -#, fuzzy -#| msgid "A list of Excellon Editor parameters." msgid "A list of advanced parameters." -msgstr "Une liste des paramètres de l'éditeur Excellon." +msgstr "Une liste des paramètres avancés." #: appGUI/preferences/tools/ToolsDrillPrefGroupUI.py:297 msgid "Toolchange X,Y" @@ -12314,7 +12141,7 @@ msgid "" "Create a PCB film from a Gerber or Geometry object.\n" "The file is saved in SVG format." msgstr "" -"Créez un film PCB à partir d'un objet Gerber ou Geometry.\n" +"Créez un film PCB à partir d'un objet Gerber ou Geometrie.\n" "Le fichier est enregistré au format SVG." #: appGUI/preferences/tools/ToolsFilmPrefGroupUI.py:43 @@ -12445,18 +12272,18 @@ msgstr "" "Ce peut être l'un des quatre points de la boîte englobante de la géométrie." #: appGUI/preferences/tools/ToolsFilmPrefGroupUI.py:174 -#: appTools/ToolCorners.py:343 appTools/ToolFiducials.py:696 +#: appTools/ToolCorners.py:347 appTools/ToolFiducials.py:696 #: appTools/ToolFilm.py:1068 msgid "Bottom Left" msgstr "En bas à gauche" #: appGUI/preferences/tools/ToolsFilmPrefGroupUI.py:175 -#: appTools/ToolCorners.py:351 appTools/ToolFilm.py:1069 +#: appTools/ToolCorners.py:355 appTools/ToolFilm.py:1069 msgid "Top Left" msgstr "En haut à gauche" #: appGUI/preferences/tools/ToolsFilmPrefGroupUI.py:176 -#: appTools/ToolCorners.py:347 appTools/ToolFilm.py:1070 +#: appTools/ToolCorners.py:351 appTools/ToolFilm.py:1070 msgid "Bottom Right" msgstr "En bas à droite" @@ -12532,6 +12359,8 @@ msgstr "Une sélection de formats de page ISO 216 standard." #: appTools/ToolFilm.py:1355 msgid "Default value is 96 DPI. Change this value to scale the PNG file." msgstr "" +"La valeur par défaut est 96DPI. Changer cette valeur to mettre à l'échelle " +"le fichier PNG." #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:26 msgid "Isolation Tool Options" @@ -12585,7 +12414,7 @@ msgstr "" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:136 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:119 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:123 -#: appTools/ToolPaint.py:2901 +#: appTools/ToolPaint.py:2902 msgid "" "Diameter for the new tool to add in the Tool Table.\n" "If the tool is V-shape type then this value is automatically\n" @@ -12599,13 +12428,13 @@ msgstr "" #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:288 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:242 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:243 -#: appTools/ToolIsolation.py:3299 appTools/ToolNCC.py:4245 -#: appTools/ToolPaint.py:3075 +#: appTools/ToolIsolation.py:3300 appTools/ToolNCC.py:4246 +#: appTools/ToolPaint.py:3076 msgid "Rest" msgstr "Reste" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:246 -#: appTools/ToolIsolation.py:3302 +#: appTools/ToolIsolation.py:3303 msgid "" "If checked, use 'rest machining'.\n" "Basically it will isolate outside PCB features,\n" @@ -12615,31 +12444,31 @@ msgid "" "no more copper features to isolate or there are no more tools.\n" "If not checked, use the standard algorithm." msgstr "" -"Si cette case est cochée, utilisez «usinage de restes».\n" -"Fondamentalement, il isolera les caractéristiques extérieures des PCB,\n" -"en utilisant le plus grand outil et continuer avec les outils suivants,\n" -"du plus grand au plus petit, pour isoler les éléments en cuivre\n" -"n'a pas pu être effacé par l'outil précédent, tant qu'il n'y a pas\n" -"plus de fonctions en cuivre à isoler ou plus d'outils.\n" +"Si cette case est cochée, utilise «usinage des restes».\n" +"Fondamentalement, il isolera les parties extérieures des PCB,\n" +"en utilisant le plus grand outil et continuera avec les outils suivants,\n" +"du plus grand au plus petit, pour isoler les parties de cuivre qui\n" +"n'ont pas pu être effacé par l'outil précédent, jusqu'à ce qu'il n'y ait\n" +"plus de zone de cuivre à isoler ou plus d'outils.\n" "S'il n'est pas coché, utilisez l'algorithme standard." #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:258 -#: appTools/ToolIsolation.py:3324 +#: appTools/ToolIsolation.py:3325 msgid "Combine" msgstr "Combiner" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:260 -#: appTools/ToolIsolation.py:3326 +#: appTools/ToolIsolation.py:3327 msgid "Combine all passes into one object" msgstr "Combine tous les passages dans un objet" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:267 -#: appTools/ToolIsolation.py:3343 +#: appTools/ToolIsolation.py:3344 msgid "Except" msgstr "Sauf" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:268 -#: appTools/ToolIsolation.py:3344 +#: appTools/ToolIsolation.py:3345 msgid "" "When the isolation geometry is generated,\n" "by checking this, the area of the object below\n" @@ -12651,20 +12480,22 @@ msgstr "" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:275 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:350 -#: appTools/ToolIsolation.py:3333 appTools/ToolNCC.py:4376 +#: appTools/ToolIsolation.py:3334 appTools/ToolNCC.py:4377 msgid "Check validity" -msgstr "" +msgstr "Vérifier validité" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:277 #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:352 -#: appTools/ToolIsolation.py:3335 appTools/ToolNCC.py:4378 +#: appTools/ToolIsolation.py:3336 appTools/ToolNCC.py:4379 msgid "" "If checked then the tools diameters are verified\n" "if they will provide a complete isolation." msgstr "" +"Si coché, les diamètres des outils sont vérifiés\n" +"s'ils fourniront une isolation complète." #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:287 -#: appTools/ToolIsolation.py:3383 +#: appTools/ToolIsolation.py:3384 msgid "" "Isolation scope. Choose what to isolate:\n" "- 'All' -> Isolate all the polygons in the object\n" @@ -12675,23 +12506,23 @@ msgstr "" "Portée d'isolement. Choisissez quoi isoler:\n" "- 'Tout' -> Isoler tous les polygones de l'objet\n" "- 'Sélection de zone' -> Isoler les polygones dans une zone de sélection.\n" -"- 'Polygon Selection' -> Isoler une sélection de polygones.\n" -"- 'Objet de référence' - traitera la zone spécifiée par un autre objet" +"- 'Selection de Polygone' -> Isoler une sélection de polygones.\n" +"- 'Objet de référence' - traitera la zone spécifiée par un autre objet." #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:295 #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:278 -#: appTools/ToolIsolation.py:3391 appTools/ToolPaint.py:3115 +#: appTools/ToolIsolation.py:3392 appTools/ToolPaint.py:3116 #: tclCommands/TclCommandPaint.py:164 msgid "Polygon Selection" msgstr "Sélection de polygone" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:315 -#: appTools/ToolIsolation.py:3427 +#: appTools/ToolIsolation.py:3428 msgid "Interiors" msgstr "Intérieurs" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:317 -#: appTools/ToolIsolation.py:3429 +#: appTools/ToolIsolation.py:3430 msgid "" "When checked the user can select interiors of a polygon.\n" "(holes in the polygon)." @@ -12701,12 +12532,12 @@ msgstr "" "(trous dans le polygone)." #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:322 -#: appTools/ToolIsolation.py:3314 +#: appTools/ToolIsolation.py:3315 msgid "Forced Rest" msgstr "Restes forcé" #: appGUI/preferences/tools/ToolsISOPrefGroupUI.py:324 -#: appTools/ToolIsolation.py:3316 +#: appTools/ToolIsolation.py:3317 msgid "" "When checked the isolation will be done with the current tool even if\n" "interiors of a polygon (holes in the polygon) could not be isolated.\n" @@ -12734,7 +12565,7 @@ msgstr "Progressif" #: appObjects/AppObject.py:452 appObjects/FlatCAMObj.py:266 #: appObjects/FlatCAMObj.py:297 appObjects/FlatCAMObj.py:313 #: appObjects/FlatCAMObj.py:393 appTools/ToolCopperThieving.py:1040 -#: appTools/ToolCorners.py:264 appTools/ToolFiducials.py:532 +#: appTools/ToolCorners.py:268 appTools/ToolFiducials.py:532 #: appTools/ToolMove.py:229 appTools/ToolQRCode.py:464 app_Main.py:4813 msgid "Plotting" msgstr "Traçage" @@ -12751,7 +12582,7 @@ msgstr "" #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:27 msgid "NCC Tool Options" -msgstr "Options de L'outil de la NCC" +msgstr "Options de l'outil NCC" #: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:33 msgid "" @@ -12777,7 +12608,7 @@ msgstr "" "des caractéristiques de cuivre.\n" "La valeur peut être comprise entre 0 et 9999.9 unités FlatCAM." -#: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:290 appTools/ToolNCC.py:4249 +#: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:290 appTools/ToolNCC.py:4250 msgid "" "If checked, use 'rest machining'.\n" "Basically it will clear copper outside PCB features,\n" @@ -12787,15 +12618,16 @@ msgid "" "no more copper to clear or there are no more tools.\n" "If not checked, use the standard algorithm." msgstr "" -"Si coché, utilisez 'repos usining'.\n" +"Si cette case est cochée, utilise «usinage des restes».\n" "Fondamentalement, il nettoiera le cuivre en dehors des circuits imprimés,\n" -"en utilisant le plus gros outil et continuer avec les outils suivants,\n" +"en utilisant le plus gros outil et continuera avec les outils suivants,\n" "du plus grand au plus petit, pour nettoyer les zones de cuivre\n" -"ne pouvait pas être effacé par l’outil précédent, jusqu’à ce que\n" -"plus de cuivre à nettoyer ou il n'y a plus d'outils.\n" -"Si non coché, utilisez l'algorithme standard." +"ne pouvant pas être enlevées par l’outil précédent, jusqu'à ce qu’il n'y " +"aie\n" +"plus de cuivre à nettoyer ou qu'il n'y ait plus d'outils.\n" +"Si non coché, utilise l'algorithme standard." -#: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:313 appTools/ToolNCC.py:4324 +#: appGUI/preferences/tools/ToolsNCCPrefGroupUI.py:313 appTools/ToolNCC.py:4325 msgid "" "Selection of area to be processed.\n" "- 'Itself' - the processing extent is based on the object that is " @@ -12824,7 +12656,7 @@ msgstr "" "En unités d'application." #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:245 -#: appTools/ToolPaint.py:3078 +#: appTools/ToolPaint.py:3079 msgid "" "If checked, use 'rest machining'.\n" "Basically it will clear copper outside PCB features,\n" @@ -12845,7 +12677,7 @@ msgstr "" "Si non coché, utilisez l'algorithme standard." #: appGUI/preferences/tools/ToolsPaintPrefGroupUI.py:258 -#: appTools/ToolPaint.py:3105 +#: appTools/ToolPaint.py:3106 msgid "" "Selection of area to be processed.\n" "- 'Polygon Selection' - left mouse click to add/remove polygons to be " @@ -12947,6 +12779,10 @@ msgid "" "any two overlapping Line elements in the panel\n" "and will remove the overlapping parts, keeping only one of them." msgstr "" +"Actif uniquement pour le type de panneau Géométrie.\n" +"Une fois coché, l'application trouvera deux éléments\n" +"de ligne qui se chevauchent dans le panneau\n" +"et supprimera les parties qui se chevauchent, en n'en gardant qu'une seule." #: appGUI/preferences/tools/ToolsPanelizePrefGroupUI.py:120 msgid "Constrain within" @@ -13187,16 +13023,16 @@ msgstr "" "soustracteur de géométrie." #: appGUI/preferences/tools/ToolsSubPrefGroupUI.py:42 appTools/ToolSub.py:681 -#, fuzzy -#| msgid "Delete Tool" msgid "Delete source" -msgstr "Supprimer l'outil" +msgstr "Supprimer la source" #: appGUI/preferences/tools/ToolsSubPrefGroupUI.py:44 appTools/ToolSub.py:683 msgid "" "When checked will delete the source objects\n" "after a successful operation." msgstr "" +"Quand coché, les objets source seront supprimés\n" +"après une opération réussie." #: appGUI/preferences/tools/ToolsTransformPrefGroupUI.py:27 msgid "Transform Tool Options" @@ -13450,85 +13286,72 @@ msgid "" "Voronoi function can not be loaded.\n" "Shapely >= 1.8 is required" msgstr "" +"La fonction \"Voronoi\" ne peut être chargée.\n" +"Version Shapely >= 1.8 requise" #: appObjects/FlatCAMCNCJob.py:818 -#, fuzzy -#| msgid "Click on Start point ..." msgid "Click on canvas to add a Probe Point..." -msgstr "Cliquez sur le point de départ ..." +msgstr "Cliquez sur le canevas pour ajouter un point de palpage..." #: appObjects/FlatCAMCNCJob.py:1014 msgid "Point is not within the object area. Choose another point." -msgstr "" +msgstr "Le point n'est pas dans la zone de l'objet. Choisissez un autre point." #: appObjects/FlatCAMCNCJob.py:1034 -#, fuzzy -#| msgid "" -#| "Zone added. Click to start adding next zone or right click to finish." msgid "" "Added a Probe Point... Click again to add another or right click to " "finish ..." msgstr "" -"Zone ajoutée. Cliquez pour commencer à ajouter la zone suivante ou faites un " -"clic droit pour terminer." +"Point de palpage ajoué… Cliquez à nouveau pour en ajouter un autre ou clic-" +"droit pour terminer ..." #: appObjects/FlatCAMCNCJob.py:1056 -#, fuzzy -#| msgid "Finished G-Code processing..." msgid "Finished adding Probe Points..." -msgstr "Traitement terminé du GCode ..." +msgstr "Ajout de points de palpages terminé..." #: appObjects/FlatCAMCNCJob.py:1270 -#, fuzzy -#| msgid "Click to place ..." msgid "COM list updated ..." -msgstr "Cliquez pour placer ..." +msgstr "Liste des ports COM mise à jour ..." #: appObjects/FlatCAMCNCJob.py:1306 -#, fuzzy -#| msgid "Connect" msgid "Connected" -msgstr "Relier" +msgstr "Connecté" #: appObjects/FlatCAMCNCJob.py:1317 msgid "Port connected" -msgstr "" +msgstr "Port connecté" #: appObjects/FlatCAMCNCJob.py:1321 msgid "Could not connect to GRBL on port" -msgstr "" +msgstr "Impossible de se connecter au port GRBL" #: appObjects/FlatCAMCNCJob.py:1338 msgid "Port is connected. Disconnecting" -msgstr "" +msgstr "Port connecté. Déconnexion" #: appObjects/FlatCAMCNCJob.py:1340 -#, fuzzy -#| msgid "Could not retrieve box object" msgid "Could not connect to port" -msgstr "Impossible de récupérer l'objet boîte" +msgstr "Impossible de se connecter au port" #: appObjects/FlatCAMCNCJob.py:1370 appObjects/FlatCAMCNCJob.py:1802 -#, fuzzy -#| msgid "Opening G-Code." msgid "Sending GCode..." -msgstr "Ouverture G-Code." +msgstr "Envoi GCode..." #: appObjects/FlatCAMCNCJob.py:1499 msgid "GRBL is doing a home cycle." -msgstr "" +msgstr "GRBL fait une remise à l'origine." #: appObjects/FlatCAMCNCJob.py:1505 msgid "GRBL software reset was sent." -msgstr "" +msgstr "Reset du logiciel GRBL envoyé." #: appObjects/FlatCAMCNCJob.py:1513 msgid "GRBL resumed." -msgstr "" +msgstr "Reprise GRBL." #: appObjects/FlatCAMCNCJob.py:1517 msgid "GRBL paused." -msgstr "" +msgstr "Pause GRBL." #: appObjects/FlatCAMCNCJob.py:1661 appObjects/FlatCAMCNCJob.py:1853 #: appObjects/FlatCAMCNCJob.py:1940 appTools/ToolSolderPaste.py:1067 @@ -13536,51 +13359,41 @@ msgid "Export cancelled ..." msgstr "Exportation annulée ..." #: appObjects/FlatCAMCNCJob.py:1685 appObjects/FlatCAMCNCJob.py:1975 -#: appObjects/FlatCAMScript.py:134 app_Main.py:7173 +#: appObjects/FlatCAMScript.py:134 app_Main.py:7175 msgid "Loading..." msgstr "Chargement..." #: appObjects/FlatCAMCNCJob.py:1689 -#, fuzzy -#| msgid "There is no such parameter" msgid "There is nothing to view" -msgstr "Il n'y a pas de tel paramètre" +msgstr "Il n'y a rien à voir" #: appObjects/FlatCAMCNCJob.py:1695 -#, fuzzy -#| msgid "Gcode Viewer" msgid "Code Viewer" -msgstr "Visionneuse Gcode" +msgstr "Visionneuse de Code" #: appObjects/FlatCAMCNCJob.py:1733 -#, fuzzy -#| msgid "Loaded Machine Code into Code Editor" msgid "Loaded Machine Code into Code Viewer" -msgstr "Code machine chargé dans l'éditeur de code" +msgstr "Code machine chargé dans la visionneuse de code" #: appObjects/FlatCAMCNCJob.py:1778 -#, fuzzy -#| msgid "Failed to open config file" msgid "Failed to open height map file" -msgstr "Impossible d'ouvrir le fichier de configuration" +msgstr "Echec d'ouverture du fichier de palpage" #: appObjects/FlatCAMCNCJob.py:1828 msgid "Finished probing. Doing the autolevelling." -msgstr "" +msgstr "Fin du palpage. Faire l'auto nivellement." #: appObjects/FlatCAMCNCJob.py:1833 msgid "Sending probing GCode to the GRBL controller." -msgstr "" +msgstr "Envoi du GCode de palpage au contrôleur GRBL." #: appObjects/FlatCAMCNCJob.py:1876 msgid "Empty GRBL heightmap." -msgstr "" +msgstr "Matrice de nivellement GRBL vide." #: appObjects/FlatCAMCNCJob.py:1880 -#, fuzzy -#| msgid "Finished G-Code processing..." msgid "Finished autolevelling." -msgstr "Traitement terminé du GCode ..." +msgstr "Auto nivellement terminé." #: appObjects/FlatCAMCNCJob.py:1894 msgid "Plotting..." @@ -13591,10 +13404,8 @@ msgid "File saved to" msgstr "Fichier enregistré dans" #: appObjects/FlatCAMCNCJob.py:1989 -#, fuzzy -#| msgid "Gcode Viewer" msgid "Code Review" -msgstr "Visionneuse Gcode" +msgstr "Examen du code" #: appObjects/FlatCAMCNCJob.py:2172 msgid "This CNCJob object can't be processed because it is a" @@ -13625,21 +13436,21 @@ msgstr "" #: appTools/ToolMilling.py:1071 appTools/ToolMilling.py:1175 #: appTools/ToolMilling.py:1360 tclCommands/TclCommandDrillcncjob.py:195 msgid "Tool_nr" -msgstr "Numéro d'outil" +msgstr "Num Outil" #: appObjects/FlatCAMExcellon.py:908 appObjects/FlatCAMExcellon.py:1008 #: appTools/ToolDrilling.py:1762 appTools/ToolDrilling.py:1827 #: appTools/ToolMilling.py:1071 appTools/ToolMilling.py:1175 #: appTools/ToolMilling.py:1360 tclCommands/TclCommandDrillcncjob.py:195 msgid "Drills_Nr" -msgstr "Forets Nr" +msgstr "Num Foret" #: appObjects/FlatCAMExcellon.py:908 appObjects/FlatCAMExcellon.py:1008 #: appTools/ToolDrilling.py:1762 appTools/ToolDrilling.py:1827 #: appTools/ToolMilling.py:1071 appTools/ToolMilling.py:1175 #: appTools/ToolMilling.py:1360 tclCommands/TclCommandDrillcncjob.py:195 msgid "Slots_Nr" -msgstr "Fentes Nr" +msgstr "Num Fentes" #: appObjects/FlatCAMExcellon.py:997 appTools/ToolMilling.py:1163 msgid "Milling tool for SLOTS is larger than hole size. Cancelled." @@ -13652,9 +13463,9 @@ msgstr "" #: appTools/ToolIsolation.py:532 appTools/ToolIsolation.py:645 #: appTools/ToolIsolation.py:711 appTools/ToolMilling.py:628 #: appTools/ToolMilling.py:749 appTools/ToolMilling.py:794 -#: appTools/ToolNCC.py:276 appTools/ToolNCC.py:342 appTools/ToolNCC.py:728 +#: appTools/ToolNCC.py:276 appTools/ToolNCC.py:342 appTools/ToolNCC.py:729 #: appTools/ToolPaint.py:250 appTools/ToolPaint.py:314 -#: appTools/ToolPaint.py:663 +#: appTools/ToolPaint.py:664 msgid "Multiple Tools" msgstr "Outils multiples" @@ -13668,10 +13479,10 @@ msgid "No Tool Selected" msgstr "Aucun Outil sélectionné" #: appObjects/FlatCAMGeometry.py:1040 appTools/ToolCutOut.py:281 -#: appTools/ToolIsolation.py:804 appTools/ToolIsolation.py:1059 -#: appTools/ToolIsolation.py:1191 appTools/ToolNCC.py:475 -#: appTools/ToolNCC.py:1005 appTools/ToolNCC.py:1143 appTools/ToolPaint.py:393 -#: appTools/ToolPaint.py:694 appTools/ToolPaint.py:831 +#: appTools/ToolIsolation.py:805 appTools/ToolIsolation.py:1060 +#: appTools/ToolIsolation.py:1192 appTools/ToolNCC.py:476 +#: appTools/ToolNCC.py:1006 appTools/ToolNCC.py:1144 appTools/ToolPaint.py:394 +#: appTools/ToolPaint.py:695 appTools/ToolPaint.py:832 #: appTools/ToolSolderPaste.py:131 appTools/ToolSolderPaste.py:464 #: app_Main.py:4621 msgid "Please enter a tool diameter with non-zero value, in Float format." @@ -13680,27 +13491,28 @@ msgstr "" "réel." #: appObjects/FlatCAMGeometry.py:1115 appTools/ToolCutOut.py:357 -#: appTools/ToolIsolation.py:1140 appTools/ToolNCC.py:1088 -#: appTools/ToolPaint.py:775 -#, fuzzy -#| msgid "Tools in Tools Database edited but not saved." +#: appTools/ToolIsolation.py:1141 appTools/ToolNCC.py:1089 +#: appTools/ToolPaint.py:776 msgid "Tool not in Tools Database. Adding a default tool." -msgstr "La base de données outils a été modifiés mais pas enregistrés." +msgstr "" +"L'outil n'est pas dans la base de données d'outils. Ajout d'un outil par " +"défaut." #: appObjects/FlatCAMGeometry.py:1122 appTools/ToolCutOut.py:364 -#: appTools/ToolDrilling.py:955 appTools/ToolIsolation.py:1147 -#: appTools/ToolNCC.py:1095 appTools/ToolPaint.py:783 +#: appTools/ToolDrilling.py:955 appTools/ToolIsolation.py:1148 +#: appTools/ToolNCC.py:1096 appTools/ToolPaint.py:784 msgid "" "Cancelled.\n" "Multiple tools for one tool diameter found in Tools Database." msgstr "" +"Annulé.\n" +"Plusieurs outils pour un diamètre d'outil trouvé dans la base de données des " +"Outils." -#: appObjects/FlatCAMGeometry.py:1155 appTools/ToolIsolation.py:1182 -#: appTools/ToolNCC.py:1130 appTools/ToolPaint.py:818 -#, fuzzy -#| msgid "New tool added to Tool Table." +#: appObjects/FlatCAMGeometry.py:1155 appTools/ToolIsolation.py:1183 +#: appTools/ToolNCC.py:1131 appTools/ToolPaint.py:819 msgid "New tool added to Tool Table from Tools Database." -msgstr "Nouvel outil ajouté à la table d'outils." +msgstr "Nouvel outil ajouté à la table d'outils depuis la BD outils." #: appObjects/FlatCAMGeometry.py:1222 msgid "Tool added in Tool Table." @@ -13760,7 +13572,7 @@ msgstr "Cette géométrie ne peut pas être traitée car elle est" #: appObjects/FlatCAMGeometry.py:2004 msgid "geometry" -msgstr "Géométrie" +msgstr "géométrie" #: appObjects/FlatCAMGeometry.py:2041 msgid "Failed. No tool selected in the tool table ..." @@ -13812,7 +13624,7 @@ msgstr "CNCjob créé" #: appObjects/FlatCAMGeometry.py:2564 appTools/ToolCopperThieving.py:596 #: appTools/ToolFilm.py:638 appTools/ToolFilm.py:882 -#: appTools/ToolIsolation.py:929 appTools/ToolNCC.py:867 +#: appTools/ToolIsolation.py:930 appTools/ToolNCC.py:868 #: appTools/ToolOptimal.py:145 appTools/ToolPanelize.py:613 #: appTools/ToolRulesCheck.py:627 msgid "Working..." @@ -13820,14 +13632,14 @@ msgstr "Travail..." #: appObjects/FlatCAMGeometry.py:2585 msgid "Polish" -msgstr "" +msgstr "Nettoyage" -#: appObjects/FlatCAMGeometry.py:2635 appTools/ToolPaint.py:1698 +#: appObjects/FlatCAMGeometry.py:2635 appTools/ToolPaint.py:1699 msgid "Geometry could not be painted completely" msgstr "La géométrie n'a pas pu être peinte complètement" -#: appObjects/FlatCAMGeometry.py:2643 appTools/ToolPaint.py:1861 -#: appTools/ToolPaint.py:2070 +#: appObjects/FlatCAMGeometry.py:2643 appTools/ToolPaint.py:1862 +#: appTools/ToolPaint.py:2071 msgid "" "Could not do Paint. Try a different combination of parameters. Or a " "different strategy of paint" @@ -13876,11 +13688,11 @@ msgstr "La suppression a échoué. Il n'y a aucune zone d'exclusion à supprimer msgid "Delete failed. Nothing is selected." msgstr "La suppression a échoué. Rien n'est sélectionné." -#: appObjects/FlatCAMGerber.py:367 appTools/ToolIsolation.py:1343 +#: appObjects/FlatCAMGerber.py:367 appTools/ToolIsolation.py:1344 msgid "Buffering solid geometry" msgstr "Mise en tampon de la géométrie solide" -#: appObjects/FlatCAMGerber.py:374 appTools/ToolIsolation.py:1365 +#: appObjects/FlatCAMGerber.py:374 appTools/ToolIsolation.py:1366 msgid "Done" msgstr "Terminé" @@ -13889,14 +13701,14 @@ msgid "Operation could not be done." msgstr "L'opération n'a pas pu être effectuée." #: appObjects/FlatCAMGerber.py:559 appObjects/FlatCAMGerber.py:636 -#: appTools/ToolIsolation.py:1589 appTools/ToolIsolation.py:1957 -#: appTools/ToolNCC.py:1869 appTools/ToolNCC.py:2890 appTools/ToolNCC.py:3270 +#: appTools/ToolIsolation.py:1590 appTools/ToolIsolation.py:1958 +#: appTools/ToolNCC.py:1870 appTools/ToolNCC.py:2891 appTools/ToolNCC.py:3271 msgid "Isolation geometry could not be generated." msgstr "La géométrie d'isolation n'a pas pu être générée." #: appObjects/FlatCAMGerber.py:586 appObjects/FlatCAMGerber.py:715 -#: appTools/ToolIsolation.py:1656 appTools/ToolIsolation.py:1852 -#: appTools/ToolIsolation.py:2041 +#: appTools/ToolIsolation.py:1657 appTools/ToolIsolation.py:1853 +#: appTools/ToolIsolation.py:2042 msgid "Isolation geometry created" msgstr "Géométrie d'isolement créée" @@ -13985,7 +13797,7 @@ msgstr "Géométrie GCode" #: appObjects/FlatCAMObj.py:770 appObjects/FlatCAMObj.py:843 #: appTools/ToolProperties.py:464 appTools/ToolProperties.py:537 msgid "Tool Data" -msgstr "" +msgstr "Donnée de l'outil" #: appObjects/FlatCAMObj.py:807 appTools/ToolProperties.py:501 msgid "Depth of Cut" @@ -14030,7 +13842,7 @@ msgstr "Objet renommé de {old} à {new}" #: appObjects/ObjectCollection.py:933 appObjects/ObjectCollection.py:939 #: appObjects/ObjectCollection.py:945 appObjects/ObjectCollection.py:951 #: appObjects/ObjectCollection.py:957 appObjects/ObjectCollection.py:963 -#: app_Main.py:6877 app_Main.py:6883 app_Main.py:6889 app_Main.py:6895 +#: app_Main.py:6879 app_Main.py:6885 app_Main.py:6891 app_Main.py:6897 msgid "selected" msgstr "choisir" @@ -14240,7 +14052,7 @@ msgstr "Objet à aligner." #: appTools/ToolAlignObjects.py:423 msgid "DESTINATION object" -msgstr "" +msgstr "Objet DESTINATION" #: appTools/ToolAlignObjects.py:425 msgid "" @@ -14300,13 +14112,13 @@ msgstr "" #: appTools/ToolAlignObjects.py:499 appTools/ToolCalculators.py:372 #: appTools/ToolCalibration.py:1378 appTools/ToolCopperThieving.py:1582 -#: appTools/ToolCorners.py:446 appTools/ToolCutOut.py:2405 +#: appTools/ToolCorners.py:450 appTools/ToolCutOut.py:2405 #: appTools/ToolDblSided.py:945 appTools/ToolDrilling.py:2649 #: appTools/ToolEtchCompensation.py:459 appTools/ToolExtractDrills.py:699 #: appTools/ToolFiducials.py:935 appTools/ToolFilm.py:1386 -#: appTools/ToolInvertGerber.py:287 appTools/ToolIsolation.py:3490 -#: appTools/ToolMilling.py:2324 appTools/ToolNCC.py:4406 -#: appTools/ToolOptimal.py:594 appTools/ToolPaint.py:3182 +#: appTools/ToolInvertGerber.py:287 appTools/ToolIsolation.py:3491 +#: appTools/ToolMilling.py:2324 appTools/ToolNCC.py:4407 +#: appTools/ToolOptimal.py:594 appTools/ToolPaint.py:3183 #: appTools/ToolPanelize.py:891 appTools/ToolPunchGerber.py:1308 #: appTools/ToolQRCode.py:910 appTools/ToolRulesCheck.py:1621 #: appTools/ToolSolderPaste.py:1558 appTools/ToolSub.py:808 @@ -14316,13 +14128,13 @@ msgstr "Réinitialiser l'outil" #: appTools/ToolAlignObjects.py:502 appTools/ToolCalculators.py:375 #: appTools/ToolCalibration.py:1381 appTools/ToolCopperThieving.py:1585 -#: appTools/ToolCorners.py:449 appTools/ToolCutOut.py:2408 +#: appTools/ToolCorners.py:453 appTools/ToolCutOut.py:2408 #: appTools/ToolDblSided.py:948 appTools/ToolDrilling.py:2652 #: appTools/ToolEtchCompensation.py:462 appTools/ToolExtractDrills.py:702 #: appTools/ToolFiducials.py:938 appTools/ToolFilm.py:1389 -#: appTools/ToolInvertGerber.py:290 appTools/ToolIsolation.py:3493 -#: appTools/ToolMilling.py:2327 appTools/ToolNCC.py:4409 -#: appTools/ToolOptimal.py:597 appTools/ToolPaint.py:3185 +#: appTools/ToolInvertGerber.py:290 appTools/ToolIsolation.py:3494 +#: appTools/ToolMilling.py:2327 appTools/ToolNCC.py:4410 +#: appTools/ToolOptimal.py:597 appTools/ToolPaint.py:3186 #: appTools/ToolPanelize.py:894 appTools/ToolPunchGerber.py:1311 #: appTools/ToolQRCode.py:913 appTools/ToolRulesCheck.py:1624 #: appTools/ToolSolderPaste.py:1561 appTools/ToolSub.py:811 @@ -14769,11 +14581,11 @@ msgstr "Outil de Copper Thieving fait." #: appTools/ToolCutOut.py:551 appTools/ToolCutOut.py:925 #: appTools/ToolDrilling.py:726 appTools/ToolDrilling.py:1582 #: appTools/ToolEtchCompensation.py:152 appTools/ToolInvertGerber.py:99 -#: appTools/ToolIsolation.py:921 appTools/ToolIsolation.py:1351 -#: appTools/ToolIsolation.py:1378 appTools/ToolMilling.py:424 +#: appTools/ToolIsolation.py:922 appTools/ToolIsolation.py:1352 +#: appTools/ToolIsolation.py:1379 appTools/ToolMilling.py:424 #: appTools/ToolMilling.py:639 appTools/ToolMilling.py:1322 -#: appTools/ToolNCC.py:859 appTools/ToolNCC.py:1321 appTools/ToolNCC.py:1370 -#: appTools/ToolNCC.py:1403 appTools/ToolPaint.py:1094 +#: appTools/ToolNCC.py:860 appTools/ToolNCC.py:1322 appTools/ToolNCC.py:1371 +#: appTools/ToolNCC.py:1404 appTools/ToolPaint.py:1095 #: appTools/ToolPanelize.py:192 appTools/ToolPanelize.py:206 #: appTools/ToolSub.py:163 appTools/ToolSub.py:181 appTools/ToolSub.py:392 #: appTools/ToolSub.py:405 tclCommands/TclCommandCopperClear.py:97 @@ -14806,13 +14618,13 @@ msgstr "Outil de Copper Thieving. Préparer les zones à remplir de cuivre." msgid "Geometry not supported for bounding box" msgstr "Géométrie non prise en charge pour le cadre de sélection" -#: appTools/ToolCopperThieving.py:631 appTools/ToolNCC.py:1694 -#: appTools/ToolNCC.py:1749 appTools/ToolNCC.py:2743 appTools/ToolPaint.py:2467 +#: appTools/ToolCopperThieving.py:631 appTools/ToolNCC.py:1695 +#: appTools/ToolNCC.py:1750 appTools/ToolNCC.py:2744 appTools/ToolPaint.py:2468 msgid "No object available." msgstr "Aucun objet disponible." -#: appTools/ToolCopperThieving.py:668 appTools/ToolNCC.py:1719 -#: appTools/ToolNCC.py:1772 appTools/ToolNCC.py:2785 +#: appTools/ToolCopperThieving.py:668 appTools/ToolNCC.py:1720 +#: appTools/ToolNCC.py:1773 appTools/ToolNCC.py:2786 msgid "The reference object type is not supported." msgstr "Le type d'objet de référence n'est pas pris en charge." @@ -14871,8 +14683,8 @@ msgstr "" "- «Objet de référence» - effectuera un Copper Thieving dans la zone " "spécifiée par un autre objet." -#: appTools/ToolCopperThieving.py:1233 appTools/ToolIsolation.py:3398 -#: appTools/ToolNCC.py:4335 appTools/ToolPaint.py:3125 +#: appTools/ToolCopperThieving.py:1233 appTools/ToolIsolation.py:3399 +#: appTools/ToolNCC.py:4336 appTools/ToolPaint.py:3126 msgid "Ref. Type" msgstr "Type de Réf" @@ -14884,13 +14696,13 @@ msgstr "" "Type d'objet FlatCAM à utiliser comme référence de Copper Thieving.\n" "Il peut s'agir de Gerber, Excellon ou Géométrie." -#: appTools/ToolCopperThieving.py:1244 appTools/ToolIsolation.py:3409 -#: appTools/ToolNCC.py:4345 appTools/ToolPaint.py:3135 +#: appTools/ToolCopperThieving.py:1244 appTools/ToolIsolation.py:3410 +#: appTools/ToolNCC.py:4346 appTools/ToolPaint.py:3136 msgid "Ref. Object" msgstr "Réf. Objet" -#: appTools/ToolCopperThieving.py:1246 appTools/ToolIsolation.py:3411 -#: appTools/ToolNCC.py:4347 appTools/ToolPaint.py:3137 +#: appTools/ToolCopperThieving.py:1246 appTools/ToolIsolation.py:3412 +#: appTools/ToolNCC.py:4348 appTools/ToolPaint.py:3138 msgid "The FlatCAM object to be used as non copper clearing reference." msgstr "L'objet FlatCAM à utiliser comme référence d'effacement non en cuivre." @@ -14989,61 +14801,56 @@ msgstr "Outil de Coins" msgid "Please select at least a location" msgstr "Veuillez sélectionner au moins un emplacement" -#: appTools/ToolCorners.py:293 +#: appTools/ToolCorners.py:297 msgid "Corners Tool exit." msgstr "Sortie d'outil de Coins." -#: appTools/ToolCorners.py:320 +#: appTools/ToolCorners.py:324 msgid "The Gerber object to which will be added corner markers." msgstr "L'objet Gerber auquel seront ajoutés des marqueurs de coin." -#: appTools/ToolCorners.py:336 +#: appTools/ToolCorners.py:340 msgid "Locations" msgstr "Locations" -#: appTools/ToolCorners.py:338 +#: appTools/ToolCorners.py:342 msgid "Locations where to place corner markers." msgstr "Emplacements où placer les marqueurs de coin." -#: appTools/ToolCorners.py:355 appTools/ToolFiducials.py:708 +#: appTools/ToolCorners.py:359 appTools/ToolFiducials.py:708 msgid "Top Right" msgstr "En haut à droite" -#: appTools/ToolCorners.py:364 +#: appTools/ToolCorners.py:368 msgid "Toggle ALL" msgstr "Tout basculer" -#: appTools/ToolCorners.py:430 +#: appTools/ToolCorners.py:434 msgid "Add Marker" msgstr "Ajouter un marqueur" -#: appTools/ToolCorners.py:433 +#: appTools/ToolCorners.py:437 msgid "Will add corner markers to the selected Gerber file." msgstr "Ajoutera des marqueurs de coin au fichier Gerber sélectionné." #: appTools/ToolCutOut.py:388 -#, fuzzy -#| msgid "Add Tool from Tools DB" msgid "Updated tool from Tools Database." -msgstr "Ajouter un outil à partir de la base de données" +msgstr "Outils mis à jour depuis la BD outils." #: appTools/ToolCutOut.py:457 -#, fuzzy -#| msgid "Default Values" msgid "Default tool added." -msgstr "Défauts" +msgstr "Outil par défaut ajouté." -#: appTools/ToolCutOut.py:471 appTools/ToolIsolation.py:2588 -#: appTools/ToolNCC.py:3730 appTools/ToolPaint.py:2635 app_Main.py:5927 -#: app_Main.py:5947 +#: appTools/ToolCutOut.py:471 appTools/ToolIsolation.py:2589 +#: appTools/ToolNCC.py:3731 appTools/ToolPaint.py:2636 app_Main.py:5924 +#: app_Main.py:5944 msgid "Selected tool can't be used here. Pick another." msgstr "" +"L'outil sélectionné ne peut pas être utilisé ici. Sélectionnez-en un autre." #: appTools/ToolCutOut.py:494 -#, fuzzy -#| msgid "Tool copied from Tools DB." msgid "Tool updated from Tools Database." -msgstr "Outil copié à partir de la BD d'outils." +msgstr "Outil mis à jour à partir de la BD des outils." #: appTools/ToolCutOut.py:556 msgid "" @@ -15075,10 +14882,8 @@ msgstr "" #: appTools/ToolCutOut.py:899 appTools/ToolCutOut.py:1270 #: appTools/ToolCutOut.py:1626 -#, fuzzy -#| msgid "Open GCode file failed." msgid "Mouse bites failed." -msgstr "Défaut d'ouverture du fichier G-code." +msgstr "Echec des Mouse bites." #: appTools/ToolCutOut.py:907 msgid "Any form CutOut operation finished." @@ -15086,9 +14891,9 @@ msgstr "Opération de découpe Forme Libre terminée." #: appTools/ToolCutOut.py:929 appTools/ToolDrilling.py:1586 #: appTools/ToolEtchCompensation.py:158 appTools/ToolInvertGerber.py:105 -#: appTools/ToolIsolation.py:925 appTools/ToolIsolation.py:1355 -#: appTools/ToolIsolation.py:1382 appTools/ToolMilling.py:1326 -#: appTools/ToolNCC.py:863 appTools/ToolNCC.py:1325 appTools/ToolPaint.py:1011 +#: appTools/ToolIsolation.py:926 appTools/ToolIsolation.py:1356 +#: appTools/ToolIsolation.py:1383 appTools/ToolMilling.py:1326 +#: appTools/ToolNCC.py:864 appTools/ToolNCC.py:1326 appTools/ToolPaint.py:1012 #: appTools/ToolPanelize.py:197 tclCommands/TclCommandBbox.py:71 #: tclCommands/TclCommandNregions.py:71 msgid "Object not found" @@ -15099,10 +14904,8 @@ msgid "Rectangular cutout with negative margin is not possible." msgstr "Une découpe rectangulaire avec une marge négative n'est pas possible." #: appTools/ToolCutOut.py:1278 -#, fuzzy -#| msgid "Any form CutOut operation finished." msgid "Rectangular CutOut operation finished." -msgstr "Opération de découpe Forme Libre terminée." +msgstr "Opération de découpe rectangulaire terminée." #: appTools/ToolCutOut.py:1294 appTools/ToolCutOut.py:1326 msgid "Could not retrieve Geometry object" @@ -15120,20 +14923,15 @@ msgstr "" "intervalle de pont ..." #: appTools/ToolCutOut.py:1390 -#, fuzzy -#| msgid "Generate the Geometry object." msgid "No tool in the Geometry object." -msgstr "Générez l'objet Géométrie." +msgstr "Pas d'outil dans l'objet Géométrie." #: appTools/ToolCutOut.py:1411 -#, fuzzy -#| msgid "" -#| "Zone added. Click to start adding next zone or right click to finish." msgid "" "Added manual Bridge Gap. Left click to add another or right click to finish." msgstr "" -"Zone ajoutée. Cliquez pour commencer à ajouter la zone suivante ou faites un " -"clic droit pour terminer." +"Ajout manuel d'attache. Cliquez à nouveau pour en ajouter une autre ou clic-" +"droit pour terminer." #: appTools/ToolCutOut.py:1423 msgid "Could not retrieve Gerber object" @@ -15165,7 +14963,7 @@ msgstr "Faire un pont manuel ..." #: appTools/ToolCutOut.py:1630 msgid "Finished manual adding of gaps." -msgstr "" +msgstr "Ajout manuel des interstices terminés." #: appTools/ToolCutOut.py:1972 msgid "Cutout PCB" @@ -15196,8 +14994,8 @@ msgstr "" "Ce qui est sélectionné ici dictera le genre\n" "des objets qui vont remplir la liste déroulante 'Object'." -#: appTools/ToolCutOut.py:2085 appTools/ToolIsolation.py:3138 -#: appTools/ToolNCC.py:4022 appTools/ToolPaint.py:2918 +#: appTools/ToolCutOut.py:2085 appTools/ToolIsolation.py:3139 +#: appTools/ToolNCC.py:4023 appTools/ToolPaint.py:2919 msgid "" "Add a new tool to the Tool Table\n" "with the diameter specified above.\n" @@ -15205,6 +15003,11 @@ msgid "" "in the Tools Database. If nothing is found\n" "in the Tools DB then a default tool is added." msgstr "" +"Ajouter un nouvel outil à la Table d'Outils\n" +"avec le diamètre spécifié ci-dessus.\n" +"Cela se fait par une recherche en arrière-plan\n" +"dans la base de données des outils. Si rien n'est trouvé\n" +"dans la base de données des outils, un outil par défaut est ajouté." #: appTools/ToolCutOut.py:2111 msgid "Tool Parameters" @@ -15216,7 +15019,7 @@ msgstr "Auto" #: appTools/ToolCutOut.py:2260 appTools/ToolCutOut.py:2335 msgid "Bridge Gaps" -msgstr "" +msgstr "Attaches" #: appTools/ToolCutOut.py:2262 msgid "This section handle creation of automatic bridge gaps." @@ -15273,7 +15076,7 @@ msgstr "" #: appTools/ToolCutOut.py:2376 msgid "Manual cutout Geometry" -msgstr "" +msgstr "Géométrie de découpe manuelle" #: appTools/ToolCutOut.py:2378 msgid "Geometry object used to create the manual cutout." @@ -15336,11 +15139,11 @@ msgstr "Il n'y a pas d'objet Excellon chargé ..." #: appTools/ToolDblSided.py:238 msgid "Click on canvas within the desired Excellon drill hole" -msgstr "" +msgstr "Cliquez sur le canevas dans le trou de forage Excellon désiré" #: appTools/ToolDblSided.py:282 msgid "Mirror reference point set." -msgstr "" +msgstr "Point de référence du miroir défini." #: appTools/ToolDblSided.py:310 msgid "Only Gerber, Excellon and Geometry objects can be mirrored." @@ -15377,7 +15180,7 @@ msgstr "Objets à mettre en miroir" #: appTools/ToolDblSided.py:523 msgid "Select the type of application object to be processed in this tool." -msgstr "" +msgstr "Sélectionnez le type d'objet applicatif à traiter dans cet outil." #: appTools/ToolDblSided.py:557 msgid "Bounds Values" @@ -15454,14 +15257,6 @@ msgid "Parameters for the mirror operation" msgstr "Paramètres de l'opération Miroir" #: appTools/ToolDblSided.py:685 -#, fuzzy -#| msgid "" -#| "The coordinates used as reference for the mirror operation.\n" -#| "Can be:\n" -#| "- Point -> a set of coordinates (x,y) around which the object is " -#| "mirrored\n" -#| "- Box -> a set of coordinates (x, y) obtained from the center of the\n" -#| "bounding box of another object selected below" msgid "" "The coordinates used as reference for the mirror operation.\n" "Can be:\n" @@ -15472,12 +15267,13 @@ msgid "" "object" msgstr "" "Les coordonnées utilisées comme référence pour l'opération miroir.\n" -"Peut être:\n" +"Peuvent être:\n" "- Point -> un ensemble de coordonnées (x, y) autour desquelles l'objet est " "mis en miroir\n" -"- Boîte -> un ensemble de coordonnées (x, y) obtenues à partir du centre de " -"la\n" -"cadre de délimitation d'un autre objet sélectionné ci-dessous" +"- Box -> un ensemble de coordonnées (x, y) obtenues à partir du centre du\n" +"cadre de délimitation d'un autre objet sélectionné ci-dessous\n" +"- Hole Snap -> un point défini par le centre d'un trou de forage d'un objet " +"Excellon" #: appTools/ToolDblSided.py:705 msgid "Point coordinates" @@ -15502,16 +15298,21 @@ msgstr "" #: appTools/ToolDblSided.py:729 msgid "Object that holds holes that can be picked as reference for mirroring." msgstr "" +"Objet contenant des trous pouvant être choisis comme référence pour la mise " +"en miroir." #: appTools/ToolDblSided.py:744 msgid "Pick hole" -msgstr "" +msgstr "Choisissez un trou" #: appTools/ToolDblSided.py:746 msgid "" "Click inside a drill hole that belong to the selected Excellon object,\n" "and the hole center coordinates will be copied to the Point field." msgstr "" +"Cliquez à l'intérieur d'un trou de forage appartenant à l'objet Excellon " +"sélectionné,\n" +"et les coordonnées du centre du trou seront copiées dans le champ Point." #: appTools/ToolDblSided.py:762 msgid "" @@ -15553,7 +15354,7 @@ msgstr "" #: appTools/ToolDblSided.py:826 msgid "Drill Diameter" -msgstr "Diam. de perçage" +msgstr "Diam. de forage" #: appTools/ToolDblSided.py:861 appTools/ToolDblSided.py:868 msgid "" @@ -15826,30 +15627,28 @@ msgid "Starting G-Code" msgstr "Démarrer le GCode" #: appTools/ToolDrilling.py:1673 appTools/ToolMilling.py:1355 -#, fuzzy -#| msgid "Creating Excellon." msgid "Generating Excellon CNCJob..." -msgstr "Créer Excellon." +msgstr "Génération du CNCJob Excellon..." #: appTools/ToolDrilling.py:1791 camlib.py:3213 camlib.py:3636 camlib.py:5722 msgid "The Toolchange X,Y format has to be (x, y)." -msgstr "" +msgstr "Le format X,Y de changement d'outil doit être (x,y)." #: appTools/ToolDrilling.py:2034 appTools/ToolMilling.py:1639 -#, fuzzy -#| msgid "Excellon object with alignment drills created..." msgid "Excellon object for drilling/milling operation." -msgstr "Excellon objet avec des exercices d'alignement créé ..." +msgstr "Objet Excellon pour opération de forage/fraisage." #: appTools/ToolDrilling.py:2098 msgid "Search DB" -msgstr "" +msgstr "Rechercher dans la BD" #: appTools/ToolDrilling.py:2101 msgid "" "Will search and try to replace the tools from Tools Table\n" "with tools from DB that have a close diameter value." msgstr "" +"Va rechercher et essayer de remplacer les outils de la table d'outils\n" +"avec des outils de base de données qui ont une valeur de diamètre proche." #: appTools/ToolDrilling.py:2500 appTools/ToolMilling.py:2168 msgid "" @@ -15860,11 +15659,6 @@ msgstr "" "Sortie Gcode pour Excellon Objects." #: appTools/ToolDrilling.py:2632 appTools/ToolMilling.py:2307 -#, fuzzy -#| msgid "" -#| "Add / Select at least one tool in the tool-table.\n" -#| "Click the # header to select all, or Ctrl + LMB\n" -#| "for custom selection of tools." msgid "" "Generate the CNC Job.\n" "If milling then an additional Geometry object will be created.\n" @@ -15872,8 +15666,10 @@ msgid "" "Click the # header to select all, or Ctrl + LMB\n" "for custom selection of tools." msgstr "" -"Ajoutez / sélectionnez au moins un outil dans la table d'outils.\n" -"Cliquez sur l'en-tête # pour tout sélectionner ou sur Ctrl + LMB\n" +"Générer le Job CNC.\n" +"Si fraisage alors une Géométrie supplémentaire sera crée.\n" +"Ajouter/Sélectionner au moins un outil dans la table des outils.\n" +"Cliquez sur l'entête # pour sélectionner tout, ou CTRL-clic gauche\n" "pour une sélection personnalisée d'outils." #: appTools/ToolEtchCompensation.py:293 appTools/ToolInvertGerber.py:217 @@ -16302,7 +16098,7 @@ msgstr "Outil Image" msgid "Import IMAGE" msgstr "Importer une Image" -#: appTools/ToolImage.py:142 app_Main.py:10051 app_Main.py:10101 +#: appTools/ToolImage.py:142 app_Main.py:10053 app_Main.py:10103 msgid "" "Not supported type is picked as parameter. Only Geometry and Gerber are " "supported" @@ -16314,9 +16110,9 @@ msgstr "" msgid "Importing Image" msgstr "Importation d'Image" -#: appTools/ToolImage.py:162 appTools/ToolPDF.py:154 app_Main.py:10065 -#: app_Main.py:10120 app_Main.py:10198 app_Main.py:10261 app_Main.py:10327 -#: app_Main.py:10392 app_Main.py:10449 +#: appTools/ToolImage.py:162 appTools/ToolPDF.py:154 app_Main.py:10067 +#: app_Main.py:10122 app_Main.py:10200 app_Main.py:10263 app_Main.py:10329 +#: app_Main.py:10394 app_Main.py:10451 msgid "Opened" msgstr "Ouvrir" @@ -16445,12 +16241,12 @@ msgstr "" msgid "New Tool" msgstr "Nouvel Outil" -#: appTools/ToolIsolation.py:809 appTools/ToolNCC.py:480 -#: appTools/ToolPaint.py:397 appTools/ToolSolderPaste.py:135 app_Main.py:4625 +#: appTools/ToolIsolation.py:810 appTools/ToolNCC.py:481 +#: appTools/ToolPaint.py:398 appTools/ToolSolderPaste.py:135 app_Main.py:4625 msgid "Adding Tool cancelled" msgstr "Ajout d'outil annulé" -#: appTools/ToolIsolation.py:954 appTools/ToolNCC.py:893 +#: appTools/ToolIsolation.py:955 appTools/ToolNCC.py:894 #: appTools/ToolOptimal.py:179 msgid "" "The Gerber object has one Polygon as geometry.\n" @@ -16459,99 +16255,95 @@ msgstr "" "L'objet Gerber a un polygone comme géométrie.\n" "Il n'y a pas de distance entre les éléments géométriques à trouver." -#: appTools/ToolIsolation.py:1001 appTools/ToolNCC.py:939 -#, fuzzy -#| msgid "tooldia = tool diameter" +#: appTools/ToolIsolation.py:1002 appTools/ToolNCC.py:940 msgid "Optimal tool diameter found" -msgstr "tooldia = diamètre de l'outil" +msgstr "Diamètre optimal de l'outil trouvé" -#: appTools/ToolIsolation.py:1013 appTools/ToolIsolation.py:1514 -#: appTools/ToolIsolation.py:1716 appTools/ToolIsolation.py:1903 -#: appTools/ToolNCC.py:950 appTools/ToolNCC.py:1358 appTools/ToolPaint.py:1039 -#: appTools/ToolPaint.py:1752 -#, fuzzy -#| msgid "Failed. No tool selected in the tool table ..." +#: appTools/ToolIsolation.py:1014 appTools/ToolIsolation.py:1515 +#: appTools/ToolIsolation.py:1717 appTools/ToolIsolation.py:1904 +#: appTools/ToolNCC.py:951 appTools/ToolNCC.py:1359 appTools/ToolPaint.py:1040 +#: appTools/ToolPaint.py:1753 msgid "There are no tools selected in the Tool Table." -msgstr "Échoué. Aucun outil sélectionné dans la table d'outils ..." +msgstr "Aucun outil sélectionné dans la table d'outils ..." -#: appTools/ToolIsolation.py:1021 +#: appTools/ToolIsolation.py:1022 msgid "" "Incomplete isolation. At least one tool could not do a complete isolation." msgstr "" +"Isolement incomplet. Au moins un outil n'a pas pu effectuer un isolement " +"complet." -#: appTools/ToolIsolation.py:1067 appTools/ToolIsolation.py:1154 -#: appTools/ToolIsolation.py:1212 appTools/ToolIsolation.py:2637 -#: appTools/ToolNCC.py:1014 appTools/ToolNCC.py:1102 appTools/ToolNCC.py:1164 -#: appTools/ToolNCC.py:3779 appTools/ToolPaint.py:702 appTools/ToolPaint.py:790 -#: appTools/ToolPaint.py:852 appTools/ToolPaint.py:2691 +#: appTools/ToolIsolation.py:1068 appTools/ToolIsolation.py:1155 +#: appTools/ToolIsolation.py:1213 appTools/ToolIsolation.py:2638 +#: appTools/ToolNCC.py:1015 appTools/ToolNCC.py:1103 appTools/ToolNCC.py:1165 +#: appTools/ToolNCC.py:3780 appTools/ToolPaint.py:703 appTools/ToolPaint.py:791 +#: appTools/ToolPaint.py:853 appTools/ToolPaint.py:2692 #: appTools/ToolSolderPaste.py:488 msgid "Cancelled. Tool already in Tool Table." msgstr "Annulé. Outil déjà dans la table d'outils." -#: appTools/ToolIsolation.py:1242 appTools/ToolNCC.py:1194 -#: appTools/ToolPaint.py:881 -#, fuzzy -#| msgid "New tool added to Tool Table." +#: appTools/ToolIsolation.py:1243 appTools/ToolNCC.py:1195 +#: appTools/ToolPaint.py:882 msgid "Default tool added to Tool Table." -msgstr "Nouvel outil ajouté à la table d'outils." +msgstr "Outil par défaut ajouté à la table d'outils." -#: appTools/ToolIsolation.py:1268 appTools/ToolNCC.py:1220 -#: appTools/ToolPaint.py:906 +#: appTools/ToolIsolation.py:1269 appTools/ToolNCC.py:1221 +#: appTools/ToolPaint.py:907 msgid "Tool from Tool Table was edited." msgstr "L'outil de la table d'outils a été modifié." -#: appTools/ToolIsolation.py:1281 appTools/ToolNCC.py:1233 -#: appTools/ToolPaint.py:919 appTools/ToolSolderPaste.py:548 +#: appTools/ToolIsolation.py:1282 appTools/ToolNCC.py:1234 +#: appTools/ToolPaint.py:920 appTools/ToolSolderPaste.py:548 msgid "Cancelled. New diameter value is already in the Tool Table." msgstr "" "Annulé. La nouvelle valeur de diamètre est déjà dans la table d'outils." -#: appTools/ToolIsolation.py:1332 appTools/ToolNCC.py:1284 -#: appTools/ToolPaint.py:969 +#: appTools/ToolIsolation.py:1333 appTools/ToolNCC.py:1285 +#: appTools/ToolPaint.py:970 msgid "Delete failed. Select a tool to delete." msgstr "La suppression a échoué. Sélectionnez un outil à supprimer." -#: appTools/ToolIsolation.py:1338 appTools/ToolNCC.py:1290 -#: appTools/ToolPaint.py:975 +#: appTools/ToolIsolation.py:1339 appTools/ToolNCC.py:1291 +#: appTools/ToolPaint.py:976 msgid "Tool(s) deleted from Tool Table." msgstr "Outil (s) supprimé (s) de la table d'outils." -#: appTools/ToolIsolation.py:1389 +#: appTools/ToolIsolation.py:1390 msgid "Isolating..." -msgstr "Isoler ..." +msgstr "Isolation..." -#: appTools/ToolIsolation.py:1409 +#: appTools/ToolIsolation.py:1410 msgid "Following geometry was generated" msgstr "La géométrie suivante a été générée" -#: appTools/ToolIsolation.py:1424 +#: appTools/ToolIsolation.py:1425 msgid "Failed to create Follow Geometry with tool diameter" msgstr "Impossible de créer la géométrie de suivi avec le diamètre de l'outil" -#: appTools/ToolIsolation.py:1427 +#: appTools/ToolIsolation.py:1428 msgid "Follow Geometry was created with tool diameter" msgstr "La géométrie de suivi a été créée avec le diamètre de l'outil" -#: appTools/ToolIsolation.py:1468 +#: appTools/ToolIsolation.py:1469 msgid "Click on a polygon to isolate it." msgstr "Cliquez sur un polygone pour l'isoler." -#: appTools/ToolIsolation.py:1596 appTools/ToolIsolation.py:1619 -#: appTools/ToolIsolation.py:1776 appTools/ToolIsolation.py:1969 +#: appTools/ToolIsolation.py:1597 appTools/ToolIsolation.py:1620 +#: appTools/ToolIsolation.py:1777 appTools/ToolIsolation.py:1970 msgid "Subtracting Geo" msgstr "Soustraction Geo" -#: appTools/ToolIsolation.py:1600 appTools/ToolIsolation.py:1780 -#: appTools/ToolIsolation.py:1973 +#: appTools/ToolIsolation.py:1601 appTools/ToolIsolation.py:1781 +#: appTools/ToolIsolation.py:1974 msgid "Intersecting Geo" msgstr "Géo. entrecroisée" -#: appTools/ToolIsolation.py:1652 appTools/ToolIsolation.py:1849 -#: appTools/ToolIsolation.py:2038 +#: appTools/ToolIsolation.py:1653 appTools/ToolIsolation.py:1850 +#: appTools/ToolIsolation.py:2039 msgid "Empty Geometry in" msgstr "Géométrie vide dans" -#: appTools/ToolIsolation.py:1858 +#: appTools/ToolIsolation.py:1859 msgid "" "Partial failure. The geometry was processed with all tools.\n" "But there are still not-isolated geometry elements. Try to include a tool " @@ -16561,65 +16353,65 @@ msgstr "" "Mais il existe encore des éléments de géométrie non isolés. Essayez " "d'inclure un outil de plus petit diamètre." -#: appTools/ToolIsolation.py:1861 +#: appTools/ToolIsolation.py:1862 msgid "" "The following are coordinates for the copper features that could not be " "isolated:" msgstr "" "Voici les coordonnées des entités en cuivre qui n'ont pas pu être isolées:" -#: appTools/ToolIsolation.py:2202 appTools/ToolIsolation.py:2315 -#: appTools/ToolPaint.py:1134 +#: appTools/ToolIsolation.py:2203 appTools/ToolIsolation.py:2316 +#: appTools/ToolPaint.py:1135 msgid "Added polygon" msgstr "Polygone ajouté" -#: appTools/ToolIsolation.py:2203 appTools/ToolIsolation.py:2317 +#: appTools/ToolIsolation.py:2204 appTools/ToolIsolation.py:2318 msgid "Click to add next polygon or right click to start isolation." msgstr "" "Cliquez pour ajouter le polygone suivant ou cliquez avec le bouton droit " "pour démarrer l'isolement." -#: appTools/ToolIsolation.py:2215 appTools/ToolPaint.py:1148 +#: appTools/ToolIsolation.py:2216 appTools/ToolPaint.py:1149 msgid "Removed polygon" msgstr "Polygone supprimé" -#: appTools/ToolIsolation.py:2216 +#: appTools/ToolIsolation.py:2217 msgid "Click to add/remove next polygon or right click to start isolation." msgstr "" "Cliquez pour ajouter / supprimer le polygone suivant ou cliquez avec le " "bouton droit pour démarrer l'isolement." -#: appTools/ToolIsolation.py:2221 appTools/ToolPaint.py:1154 +#: appTools/ToolIsolation.py:2222 appTools/ToolPaint.py:1155 msgid "No polygon detected under click position." msgstr "Aucun polygone détecté sous la position du clic." -#: appTools/ToolIsolation.py:2251 appTools/ToolPaint.py:1184 +#: appTools/ToolIsolation.py:2252 appTools/ToolPaint.py:1185 msgid "List of single polygons is empty. Aborting." msgstr "La liste des polygones simples est vide. Abandon." -#: appTools/ToolIsolation.py:2320 +#: appTools/ToolIsolation.py:2321 msgid "No polygon in selection." msgstr "Aucun polygone dans la sélection." -#: appTools/ToolIsolation.py:2348 +#: appTools/ToolIsolation.py:2349 msgid "Click the end point of the paint area." msgstr "Cliquez sur le point final de la zone de peinture." -#: appTools/ToolIsolation.py:2601 appTools/ToolNCC.py:3743 -#: appTools/ToolPaint.py:2648 app_Main.py:5938 app_Main.py:5957 +#: appTools/ToolIsolation.py:2602 appTools/ToolNCC.py:3744 +#: appTools/ToolPaint.py:2649 app_Main.py:5935 app_Main.py:5954 msgid "Tool from DB added in Tool Table." msgstr "Outil ajouté a base de données." -#: appTools/ToolIsolation.py:2655 appTools/ToolNCC.py:3796 -#: appTools/ToolPaint.py:2708 +#: appTools/ToolIsolation.py:2656 appTools/ToolNCC.py:3797 +#: appTools/ToolPaint.py:2709 msgid "New tool added to Tool Table." msgstr "Nouvel outil ajouté à la table d'outils." -#: appTools/ToolIsolation.py:3001 +#: appTools/ToolIsolation.py:3002 msgid "Gerber object for isolation routing." msgstr "Objet Gerber pour le routage d'isolement." -#: appTools/ToolIsolation.py:3025 appTools/ToolNCC.py:3898 +#: appTools/ToolIsolation.py:3026 appTools/ToolNCC.py:3899 msgid "" "Tools pool from which the algorithm\n" "will pick the ones used for copper clearing." @@ -16627,7 +16419,7 @@ msgstr "" "Pool d'outils à partir duquel l'algorithme\n" "choisira ceux utilisés pour le nettoyage du cuivre." -#: appTools/ToolIsolation.py:3041 +#: appTools/ToolIsolation.py:3042 msgid "" "This is the Tool Number.\n" "Isolation routing will start with the tool with the biggest \n" @@ -16644,7 +16436,7 @@ msgstr "" "dans la géométrie résultante. En effet, avec certains outils\n" "cette fonction ne pourra pas créer de géométrie de routage." -#: appTools/ToolIsolation.py:3049 appTools/ToolNCC.py:3922 +#: appTools/ToolIsolation.py:3050 appTools/ToolNCC.py:3923 msgid "" "Tool Diameter. It's value (in current FlatCAM units)\n" "is the cut width into the material." @@ -16652,7 +16444,7 @@ msgstr "" "Diamètre de l'outil. C'est sa valeur (en unités FlatCAM actuelles)\n" "est la largeur de coupe dans le matériau." -#: appTools/ToolIsolation.py:3053 appTools/ToolNCC.py:3926 +#: appTools/ToolIsolation.py:3054 appTools/ToolNCC.py:3927 msgid "" "The Tool Type (TT) can be:\n" "- Circular with 1 ... 4 teeth -> it is informative only. Being circular,\n" @@ -16690,20 +16482,20 @@ msgstr "" "d'opération\n" "dans la géométrie résultante comme isolement." -#: appTools/ToolIsolation.py:3121 appTools/ToolNCC.py:4006 -#, fuzzy -#| msgid "Optimal Tool" +#: appTools/ToolIsolation.py:3122 appTools/ToolNCC.py:4007 msgid "Optimal" -msgstr "Outil de Optimal" +msgstr "Optimal" -#: appTools/ToolIsolation.py:3125 appTools/ToolNCC.py:4010 +#: appTools/ToolIsolation.py:3126 appTools/ToolNCC.py:4011 msgid "" "Find a tool diameter that is guaranteed\n" "to do a complete isolation." msgstr "" +"Trouvez un diamètre d'outil garanti\n" +"pour faire un isolement complet." -#: appTools/ToolIsolation.py:3166 appTools/ToolNCC.py:4050 -#: appTools/ToolPaint.py:2946 appTools/ToolSolderPaste.py:1212 +#: appTools/ToolIsolation.py:3167 appTools/ToolNCC.py:4051 +#: appTools/ToolPaint.py:2947 appTools/ToolSolderPaste.py:1212 msgid "" "Delete a selection of tools in the Tool Table\n" "by first selecting a row(s) in the Tool Table." @@ -16711,7 +16503,7 @@ msgstr "" "Supprimer une sélection d'outils dans la table d'outils\n" "en sélectionnant d’abord une ou plusieurs lignes dans la table d’outils." -#: appTools/ToolIsolation.py:3354 +#: appTools/ToolIsolation.py:3355 msgid "" "Specify the type of object to be excepted from isolation.\n" "It can be of type: Gerber or Geometry.\n" @@ -16723,11 +16515,11 @@ msgstr "" "Ce qui est sélectionné ici dictera le genre\n" "des objets qui vont remplir la liste déroulante 'Object'." -#: appTools/ToolIsolation.py:3364 +#: appTools/ToolIsolation.py:3365 msgid "Object whose area will be removed from isolation geometry." msgstr "Objet dont l'aire sera retirée de la géométrie d'isolation." -#: appTools/ToolIsolation.py:3400 appTools/ToolNCC.py:4337 +#: appTools/ToolIsolation.py:3401 appTools/ToolNCC.py:4338 msgid "" "The type of FlatCAM object to be used as non copper clearing reference.\n" "It can be Gerber, Excellon or Geometry." @@ -16735,7 +16527,7 @@ msgstr "" "Type d'objet FlatCAM à utiliser comme référence d'effacement non en cuivre.\n" "Ce peut être Gerber, Excellon ou Géométrie." -#: appTools/ToolIsolation.py:3466 +#: appTools/ToolIsolation.py:3467 msgid "" "Create a Geometry object with toolpaths to cut \n" "isolation outside, inside or on both sides of the\n" @@ -16759,15 +16551,15 @@ msgstr "" #: appTools/ToolMilling.py:1064 msgid "Generating drills milling geometry..." -msgstr "" +msgstr "Génération de la géométrie de fraisage des trous ..." #: appTools/ToolMilling.py:1169 msgid "Generating slot milling geometry..." -msgstr "" +msgstr "Génération de la géométrie de fraisage de rainures ..." #: appTools/ToolMilling.py:1584 msgid "Milling Holes Tool" -msgstr "" +msgstr "Outil fraisage de trous" #: appTools/ToolMilling.py:2166 msgid "Preprocessor E" @@ -16809,109 +16601,114 @@ msgstr "Aucun objet sélectionné." msgid "Error when mouse left click." msgstr "Erreur lorsque le clic gauche de la souris." -#: appTools/ToolNCC.py:850 +#: appTools/ToolNCC.py:851 msgid "NCC Tool. Checking tools for validity." -msgstr "" +msgstr "Outil NCC. Vérification de la validité des outils." -#: appTools/ToolNCC.py:962 +#: appTools/ToolNCC.py:963 msgid "" "Incomplete isolation. None of the selected tools could do a complete " "isolation." msgstr "" +"Isolement incomplet. Aucun des outils sélectionnés ne pouvait effectuer une " +"isolation complète." -#: appTools/ToolNCC.py:965 +#: appTools/ToolNCC.py:966 msgid "At least one of the selected tools can do a complete isolation." msgstr "" +"Au moins un des outils sélectionnés peut effectuer une isolation complète." -#: appTools/ToolNCC.py:1737 appTools/ToolNCC.py:2715 +#: appTools/ToolNCC.py:1738 appTools/ToolNCC.py:2716 msgid "NCC Tool. Preparing non-copper polygons." -msgstr "Outil de la NCC. Préparer des polygones non en cuivre." +msgstr "Outil NCC. Préparer des polygones non cuivré." -#: appTools/ToolNCC.py:1797 appTools/ToolNCC.py:2843 +#: appTools/ToolNCC.py:1798 appTools/ToolNCC.py:2844 msgid "NCC Tool. Calculate 'empty' area." -msgstr "Outil de la NCC. Calculez la surface \"vide\"." +msgstr "Outil NCC. Calculez la surface \"vide\"." -#: appTools/ToolNCC.py:1808 appTools/ToolNCC.py:1837 appTools/ToolNCC.py:1943 -#: appTools/ToolNCC.py:1956 appTools/ToolNCC.py:2858 appTools/ToolNCC.py:2963 -#: appTools/ToolNCC.py:2978 appTools/ToolNCC.py:3245 appTools/ToolNCC.py:3346 -#: appTools/ToolNCC.py:3361 +#: appTools/ToolNCC.py:1809 appTools/ToolNCC.py:1838 appTools/ToolNCC.py:1944 +#: appTools/ToolNCC.py:1957 appTools/ToolNCC.py:2859 appTools/ToolNCC.py:2964 +#: appTools/ToolNCC.py:2979 appTools/ToolNCC.py:3246 appTools/ToolNCC.py:3347 +#: appTools/ToolNCC.py:3362 msgid "Buffering finished" msgstr "Mise en mémoire tampon terminée" -#: appTools/ToolNCC.py:1812 appTools/ToolNCC.py:1841 appTools/ToolNCC.py:1947 -#: appTools/ToolNCC.py:1959 appTools/ToolNCC.py:2866 appTools/ToolNCC.py:2985 -#: appTools/ToolNCC.py:3252 appTools/ToolNCC.py:3368 +#: appTools/ToolNCC.py:1813 appTools/ToolNCC.py:1842 appTools/ToolNCC.py:1948 +#: appTools/ToolNCC.py:1960 appTools/ToolNCC.py:2867 appTools/ToolNCC.py:2986 +#: appTools/ToolNCC.py:3253 appTools/ToolNCC.py:3369 msgid "Could not get the extent of the area to be non copper cleared." msgstr "Impossible d'obtenir que l'étendue de la zone soit non dépolluée." -#: appTools/ToolNCC.py:1820 appTools/ToolNCC.py:1970 appTools/ToolNCC.py:2996 +#: appTools/ToolNCC.py:1821 appTools/ToolNCC.py:1971 appTools/ToolNCC.py:2997 msgid "NCC Tool. Finished calculation of 'empty' area." -msgstr "Outil de la NCC. Terminé le calcul de la zone \"vide\"." +msgstr "Outil NCC. Calcul de la zone \"vide\" terminé." -#: appTools/ToolNCC.py:1873 appTools/ToolNCC.py:2893 appTools/ToolNCC.py:2970 -#: appTools/ToolNCC.py:3272 appTools/ToolNCC.py:3353 +#: appTools/ToolNCC.py:1874 appTools/ToolNCC.py:2894 appTools/ToolNCC.py:2971 +#: appTools/ToolNCC.py:3273 appTools/ToolNCC.py:3354 msgid "" "Isolation geometry is broken. Margin is less than isolation tool diameter." msgstr "" "La géométrie d'isolement est rompue. La marge est inférieure au diamètre de " "l'outil d'isolation." -#: appTools/ToolNCC.py:1963 appTools/ToolNCC.py:2989 appTools/ToolNCC.py:3371 +#: appTools/ToolNCC.py:1964 appTools/ToolNCC.py:2990 appTools/ToolNCC.py:3372 msgid "The selected object is not suitable for copper clearing." msgstr "L'objet sélectionné ne convient pas à la clarification du cuivre." -#: appTools/ToolNCC.py:2013 +#: appTools/ToolNCC.py:2014 msgid "Clearing the polygon with the method: lines." msgstr "Effacer le polygone avec la méthode: lignes." -#: appTools/ToolNCC.py:2023 +#: appTools/ToolNCC.py:2024 msgid "Failed. Clearing the polygon with the method: seed." msgstr "Échoué. Effacer le polygone avec la méthode: origine." -#: appTools/ToolNCC.py:2032 +#: appTools/ToolNCC.py:2033 msgid "Failed. Clearing the polygon with the method: standard." msgstr "Échoué. Effacer le polygone avec la méthode: standard." -#: appTools/ToolNCC.py:2048 +#: appTools/ToolNCC.py:2049 msgid "Polygon could not be cleared. Location:" -msgstr "" +msgstr "Le polygone n'a pas pu être effacé. Emplacement:" -#: appTools/ToolNCC.py:2080 appTools/ToolNCC.py:2082 appTools/ToolNCC.py:2664 -#: appTools/ToolNCC.py:2666 +#: appTools/ToolNCC.py:2081 appTools/ToolNCC.py:2083 appTools/ToolNCC.py:2665 +#: appTools/ToolNCC.py:2667 msgid "Non-Copper clearing ..." msgstr "Dégagement sans cuivre ..." -#: appTools/ToolNCC.py:2101 +#: appTools/ToolNCC.py:2102 msgid "" "There is no copper clearing tool in the selection and at least one is needed." msgstr "" +"Il n'y a pas d'outil de suppression du cuivre dans la sélection et au moins " +"un est nécessaire." -#: appTools/ToolNCC.py:2116 appTools/ToolNCC.py:2811 +#: appTools/ToolNCC.py:2117 appTools/ToolNCC.py:2812 msgid "" "NCC Tool. Finished non-copper polygons. Normal copper clearing task started." msgstr "" -"Outil de la NCC. Polygones non-cuivre finis. La tâche normale de nettoyage " -"du cuivre a commencé." +"Outil NCC. Polygones non-cuivre finis. La tâche normale de nettoyage du " +"cuivre a commencé." -#: appTools/ToolNCC.py:2144 appTools/ToolNCC.py:2374 +#: appTools/ToolNCC.py:2145 appTools/ToolNCC.py:2375 msgid "NCC Tool failed creating bounding box." msgstr "L'outil NCC n'a pas pu créer de boîte englobante." -#: appTools/ToolNCC.py:2164 appTools/ToolNCC.py:2417 appTools/ToolNCC.py:3010 -#: appTools/ToolNCC.py:3396 +#: appTools/ToolNCC.py:2165 appTools/ToolNCC.py:2418 appTools/ToolNCC.py:3011 +#: appTools/ToolNCC.py:3397 msgid "NCC Tool clearing with tool diameter" msgstr "L'outil NCC s'efface avec le diamètre de l'outil" -#: appTools/ToolNCC.py:2164 appTools/ToolNCC.py:2417 appTools/ToolNCC.py:3010 -#: appTools/ToolNCC.py:3396 +#: appTools/ToolNCC.py:2165 appTools/ToolNCC.py:2418 appTools/ToolNCC.py:3011 +#: appTools/ToolNCC.py:3397 msgid "started." msgstr "commencé." -#: appTools/ToolNCC.py:2292 +#: appTools/ToolNCC.py:2293 msgid "Could not use the tool for copper clear." -msgstr "" +msgstr "Impossible d'utiliser l'outil pour suppression du cuivre." -#: appTools/ToolNCC.py:2314 appTools/ToolNCC.py:3171 +#: appTools/ToolNCC.py:2315 appTools/ToolNCC.py:3172 msgid "" "There is no NCC Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -16923,42 +16720,42 @@ msgstr "" "géométrie peinte.\n" "Modifiez les paramètres de peinture et réessayez." -#: appTools/ToolNCC.py:2324 appTools/ToolNCC.py:3180 +#: appTools/ToolNCC.py:2325 appTools/ToolNCC.py:3181 msgid "NCC Tool clear all done." -msgstr "Outil de la NCC. Effacer tout fait." +msgstr "Outil NCC. Effacer tout fait." -#: appTools/ToolNCC.py:2327 appTools/ToolNCC.py:3183 +#: appTools/ToolNCC.py:2328 appTools/ToolNCC.py:3184 msgid "NCC Tool clear all done but the copper features isolation is broken for" msgstr "" "Outil de la CCN. Effacer tout fait, mais l'isolation des caractéristiques de " "cuivre est cassée pour" -#: appTools/ToolNCC.py:2329 appTools/ToolNCC.py:2579 appTools/ToolNCC.py:3185 -#: appTools/ToolNCC.py:3568 +#: appTools/ToolNCC.py:2330 appTools/ToolNCC.py:2580 appTools/ToolNCC.py:3186 +#: appTools/ToolNCC.py:3569 msgid "tools" msgstr "outils" -#: appTools/ToolNCC.py:2356 +#: appTools/ToolNCC.py:2357 msgid "NCC Tool. Rest machining copper clearing task started." -msgstr "" +msgstr "Outils NCC. Tâche d'usinage de suppression du cuivre démarrée." -#: appTools/ToolNCC.py:2575 appTools/ToolNCC.py:3564 +#: appTools/ToolNCC.py:2576 appTools/ToolNCC.py:3565 msgid "NCC Tool Rest Machining clear all done." -msgstr "Outil de la NCC. Reste l'usinage clair tout fait." +msgstr "Outil NCC. Usinage reste nettoyage complet." -#: appTools/ToolNCC.py:2578 appTools/ToolNCC.py:3567 +#: appTools/ToolNCC.py:2579 appTools/ToolNCC.py:3568 msgid "" "NCC Tool Rest Machining clear all done but the copper features isolation is " "broken for" msgstr "" -"Outil de la NCC. Reste l'usinage clair, tout est fait, mais l'isolation des " +"Outil NCC. Reste l'usinage clair, tout est fait, mais l'isolation des " "caractéristiques en cuivre est cassée" -#: appTools/ToolNCC.py:2676 +#: appTools/ToolNCC.py:2677 msgid "NCC Tool started. Reading parameters." msgstr "L'outil NCC a commencé. Lecture des paramètres." -#: appTools/ToolNCC.py:3670 +#: appTools/ToolNCC.py:3671 msgid "" "Try to use the Buffering Type = Full in Preferences -> Gerber General. " "Reload the Gerber file after this change." @@ -16966,15 +16763,15 @@ msgstr "" "Essayez d'utiliser le type de mise en tampon = Plein dans Paramètres -> " "Général Gerber. Rechargez le fichier Gerber après cette modification." -#: appTools/ToolNCC.py:3833 +#: appTools/ToolNCC.py:3834 msgid "Non-Copper Clearing" -msgstr "Compensation de la NCC" +msgstr "Suppression zone non cuivrée" -#: appTools/ToolNCC.py:3862 appTools/ToolPaint.py:2782 +#: appTools/ToolNCC.py:3863 appTools/ToolPaint.py:2783 msgid "Obj Type" msgstr "Type d'objet" -#: appTools/ToolNCC.py:3864 +#: appTools/ToolNCC.py:3865 msgid "" "Specify the type of object to be cleared of excess copper.\n" "It can be of type: Gerber or Geometry.\n" @@ -16983,14 +16780,14 @@ msgid "" msgstr "" "Spécifiez le type d'objet à éliminer des excès de cuivre.\n" "Il peut être de type: Gerber ou Géométrie.\n" -"Ce qui est sélectionné ici dictera le genre\n" -"des objets qui vont remplir la liste déroulante 'Object'." +"Ce qui est sélectionné ici dictera le type\n" +"des objets qui vont remplir la liste déroulante 'Objet'." -#: appTools/ToolNCC.py:3886 +#: appTools/ToolNCC.py:3887 msgid "Object to be cleared of excess copper." -msgstr "Objet à nettoyer de l'excès de cuivre." +msgstr "Objet à débarrasser de l'excès de cuivre." -#: appTools/ToolNCC.py:3914 +#: appTools/ToolNCC.py:3915 msgid "" "This is the Tool Number.\n" "Non copper clearing will start with the tool with the biggest \n" @@ -17146,11 +16943,11 @@ msgstr "Ouvrir le PDF annulé" msgid "Parsing PDF file ..." msgstr "Analyse du fichier PDF ..." -#: appTools/ToolPDF.py:138 app_Main.py:10292 +#: appTools/ToolPDF.py:138 app_Main.py:10294 msgid "Failed to open" msgstr "Impossible d'ouvrir" -#: appTools/ToolPDF.py:203 appTools/ToolPcbWizard.py:331 app_Main.py:10241 +#: appTools/ToolPDF.py:203 appTools/ToolPcbWizard.py:331 app_Main.py:10243 msgid "No geometry found in file" msgstr "Aucune géométrie trouvée dans le fichier" @@ -17167,60 +16964,60 @@ msgstr "Le fichier PDF ouvert a échoué." msgid "Rendered" msgstr "Rendu" -#: appTools/ToolPaint.py:1007 +#: appTools/ToolPaint.py:1008 #, python-format msgid "Could not retrieve object: %s" msgstr "Impossible de récupérer l'objet: %s" -#: appTools/ToolPaint.py:1017 +#: appTools/ToolPaint.py:1018 msgid "Can't do Paint on MultiGeo geometries" msgstr "Impossible de peindre sur des géométries MultiGeo" -#: appTools/ToolPaint.py:1054 +#: appTools/ToolPaint.py:1055 msgid "Click on a polygon to paint it." msgstr "Cliquez sur un polygone pour le peindre." -#: appTools/ToolPaint.py:1070 +#: appTools/ToolPaint.py:1071 msgid "Click the start point of the paint area." msgstr "Cliquez sur le point de départ de la zone de peinture." -#: appTools/ToolPaint.py:1136 +#: appTools/ToolPaint.py:1137 msgid "Click to add next polygon or right click to start painting." msgstr "" "Cliquez pour ajouter le polygone suivant ou cliquez avec le bouton droit " "pour commencer à peindre." -#: appTools/ToolPaint.py:1149 +#: appTools/ToolPaint.py:1150 msgid "Click to add/remove next polygon or right click to start painting." msgstr "" "Cliquez pour ajouter / supprimer le polygone suivant ou cliquez avec le " "bouton droit pour commencer à peindre." -#: appTools/ToolPaint.py:1659 +#: appTools/ToolPaint.py:1660 msgid "Painting polygon with method: lines." msgstr "Peinture polygone avec méthode: lignes." -#: appTools/ToolPaint.py:1671 +#: appTools/ToolPaint.py:1672 msgid "Failed. Painting polygon with method: seed." msgstr "Échoué. Peinture polygone avec méthode: graine." -#: appTools/ToolPaint.py:1682 +#: appTools/ToolPaint.py:1683 msgid "Failed. Painting polygon with method: standard." msgstr "Échoué. Peinture polygone avec méthode: standard." -#: appTools/ToolPaint.py:1772 appTools/ToolPaint.py:1959 +#: appTools/ToolPaint.py:1773 appTools/ToolPaint.py:1960 msgid "Painting with tool diameter = " msgstr "Peinture avec diamètre d'outil = " -#: appTools/ToolPaint.py:1775 appTools/ToolPaint.py:1962 +#: appTools/ToolPaint.py:1776 appTools/ToolPaint.py:1963 msgid "started" msgstr "commencé" -#: appTools/ToolPaint.py:1801 appTools/ToolPaint.py:1949 +#: appTools/ToolPaint.py:1802 appTools/ToolPaint.py:1950 msgid "Margin parameter too big. Tool is not used" msgstr "Paramètre de marge trop grand. L'outil n'est pas utilisé" -#: appTools/ToolPaint.py:1916 appTools/ToolPaint.py:2141 +#: appTools/ToolPaint.py:1917 appTools/ToolPaint.py:2142 msgid "" "There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -17232,54 +17029,52 @@ msgstr "" "géométrie peinte.\n" "Modifiez les paramètres de peinture et réessayez." -#: appTools/ToolPaint.py:2184 -#, fuzzy -#| msgid "Paint All failed." +#: appTools/ToolPaint.py:2185 msgid "Paint failed." -msgstr "La peinture «Tout» a échoué." +msgstr "La peinture a échoué." -#: appTools/ToolPaint.py:2190 +#: appTools/ToolPaint.py:2191 msgid "Paint Done." msgstr "Peinture faite." -#: appTools/ToolPaint.py:2195 +#: appTools/ToolPaint.py:2196 msgid "Painting..." msgstr "Peinture..." -#: appTools/ToolPaint.py:2229 appTools/ToolPaint.py:2234 -#: appTools/ToolPaint.py:2242 appTools/ToolPaint.py:2331 -#: appTools/ToolPaint.py:2334 appTools/ToolPaint.py:2342 -#: appTools/ToolPaint.py:2412 appTools/ToolPaint.py:2417 -#: appTools/ToolPaint.py:2423 +#: appTools/ToolPaint.py:2230 appTools/ToolPaint.py:2235 +#: appTools/ToolPaint.py:2243 appTools/ToolPaint.py:2332 +#: appTools/ToolPaint.py:2335 appTools/ToolPaint.py:2343 +#: appTools/ToolPaint.py:2413 appTools/ToolPaint.py:2418 +#: appTools/ToolPaint.py:2424 msgid "Paint Tool." msgstr "Outil de Peinture." -#: appTools/ToolPaint.py:2230 appTools/ToolPaint.py:2234 -#: appTools/ToolPaint.py:2242 +#: appTools/ToolPaint.py:2231 appTools/ToolPaint.py:2235 +#: appTools/ToolPaint.py:2243 msgid "Normal painting polygon task started." msgstr "La tâche de peinture normale du polygone a commencé." -#: appTools/ToolPaint.py:2231 appTools/ToolPaint.py:2331 -#: appTools/ToolPaint.py:2414 +#: appTools/ToolPaint.py:2232 appTools/ToolPaint.py:2332 +#: appTools/ToolPaint.py:2415 msgid "Buffering geometry..." msgstr "Mise en tampon de la géométrie ..." -#: appTools/ToolPaint.py:2256 appTools/ToolPaint.py:2349 -#: appTools/ToolPaint.py:2431 +#: appTools/ToolPaint.py:2257 appTools/ToolPaint.py:2350 +#: appTools/ToolPaint.py:2432 msgid "No polygon found." msgstr "Aucun polygone trouvé." -#: appTools/ToolPaint.py:2331 appTools/ToolPaint.py:2334 -#: appTools/ToolPaint.py:2342 +#: appTools/ToolPaint.py:2332 appTools/ToolPaint.py:2335 +#: appTools/ToolPaint.py:2343 msgid "Paint all polygons task started." msgstr "La tâche de peinture de tous les polygones a commencé." -#: appTools/ToolPaint.py:2413 appTools/ToolPaint.py:2417 -#: appTools/ToolPaint.py:2423 +#: appTools/ToolPaint.py:2414 appTools/ToolPaint.py:2418 +#: appTools/ToolPaint.py:2424 msgid "Painting area task started." msgstr "La tâche de zone de peinture a commencé." -#: appTools/ToolPaint.py:2784 +#: appTools/ToolPaint.py:2785 msgid "" "Specify the type of object to be painted.\n" "It can be of type: Gerber or Geometry.\n" @@ -17291,11 +17086,11 @@ msgstr "" "Ce qui est sélectionné ici dictera le genre\n" "des objets qui vont remplir la liste déroulante 'Object'." -#: appTools/ToolPaint.py:2806 +#: appTools/ToolPaint.py:2807 msgid "Object to be painted." msgstr "Objet à peindre." -#: appTools/ToolPaint.py:2819 +#: appTools/ToolPaint.py:2820 msgid "" "Tools pool from which the algorithm\n" "will pick the ones used for painting." @@ -17303,7 +17098,7 @@ msgstr "" "Pool d'outils à partir duquel l'algorithme\n" "choisira ceux utilisés pour la peinture." -#: appTools/ToolPaint.py:2836 +#: appTools/ToolPaint.py:2837 msgid "" "This is the Tool Number.\n" "Painting will start with the tool with the biggest diameter,\n" @@ -17319,7 +17114,7 @@ msgstr "" "dans la géométrie résultante. C’est parce qu’avec certains outils\n" "cette fonction ne pourra pas créer de géométrie de peinture." -#: appTools/ToolPaint.py:2848 +#: appTools/ToolPaint.py:2849 msgid "" "The Tool Type (TT) can be:\n" "- Circular -> it is informative only. Being circular,\n" @@ -17356,7 +17151,7 @@ msgstr "" "d'opération\n" "dans la géométrie résultante comme isolement." -#: appTools/ToolPaint.py:3127 +#: appTools/ToolPaint.py:3128 msgid "" "The type of FlatCAM object to be used as paint reference.\n" "It can be Gerber, Excellon or Geometry." @@ -17364,15 +17159,9 @@ msgstr "" "Le type d'objet FlatCAM à utiliser comme référence de peinture.\n" "Ce peut être Gerber, Excellon ou Géométrie." -#: appTools/ToolPaint.py:3169 -#, fuzzy -#| msgid "" -#| "Create a Geometry object with\n" -#| "toolpaths to cut around polygons." +#: appTools/ToolPaint.py:3170 msgid "Create a Geometry Object which paints the polygons." -msgstr "" -"Créez un objet Geometry avec\n" -"parcours d'outils pour couper autour des polygones." +msgstr "Créer un Objet de Géométrie qui peint les polygones." #: appTools/ToolPanelize.py:90 msgid "Panel. Tool" @@ -17389,14 +17178,12 @@ msgid "Generating panel ... " msgstr "Panneau de génération ... " #: appTools/ToolPanelize.py:363 appTools/ToolPanelize.py:585 -#, fuzzy -#| msgid "Generating panel ... Adding the Gerber code." msgid "Generating panel ... Adding the source code." -msgstr "Panneau de génération ... Ajout du code Gerber." +msgstr "Génération du panneau ... Ajout du code source." #: appTools/ToolPanelize.py:551 msgid "Optimizing the overlapping paths." -msgstr "" +msgstr "Optimisation des chemins de chevauchement." #: appTools/ToolPanelize.py:583 msgid "Optimization complete." @@ -17560,7 +17347,7 @@ msgstr "" "Le fichier INF ne contient pas la table d'outils.\n" "Essayez d'ouvrir le fichier Excellon à partir de Fichier -> Ouvrir -> " "Excellon.\n" -"et éditez les diamètres de perçage manuellement." +"et éditez les diamètres de forage manuellement." #: appTools/ToolPcbWizard.py:274 msgid "PcbWizard .INF file loaded." @@ -17570,7 +17357,7 @@ msgstr "Fichier PcbWizard .INF chargé." msgid "Main PcbWizard Excellon file loaded." msgstr "Le fichier principal de PcbWizard Excellon est chargé." -#: appTools/ToolPcbWizard.py:310 app_Main.py:10221 +#: appTools/ToolPcbWizard.py:310 app_Main.py:10223 msgid "This is not Excellon file." msgstr "Ce n'est pas un fichier Excellon." @@ -17701,9 +17488,9 @@ msgstr "" "l'autre a une extension .INF." #: appTools/ToolProperties.py:112 appTools/ToolTransform.py:142 -#: app_Main.py:5107 app_Main.py:8506 app_Main.py:8608 app_Main.py:8650 -#: app_Main.py:8692 app_Main.py:8734 app_Main.py:8775 app_Main.py:8820 -#: app_Main.py:8865 app_Main.py:9328 app_Main.py:9332 +#: app_Main.py:5107 app_Main.py:8508 app_Main.py:8610 app_Main.py:8652 +#: app_Main.py:8694 app_Main.py:8736 app_Main.py:8777 app_Main.py:8822 +#: app_Main.py:8867 app_Main.py:9330 app_Main.py:9334 msgid "No object selected." msgstr "Aucun objet sélectionné." @@ -18406,7 +18193,7 @@ msgstr "Géométrie d'analyse terminée pour l'ouverture" #: appTools/ToolSub.py:224 msgid "Subtraction aperture processing finished." -msgstr "Traitement de la soustraction d'ouverture terminé" +msgstr "Traitement de la soustraction d'ouverture terminé." #: appTools/ToolSub.py:354 appTools/ToolSub.py:548 msgid "Generating new object ..." @@ -18632,7 +18419,7 @@ msgstr "L'application s'initialise ..." #: app_Main.py:644 msgid "Could not find the Language files. The App strings are missing." -msgstr "Impossible de trouver les fichiers de languages. Fichiers Absent." +msgstr "Impossible de trouver les fichiers de langues. Fichiers Absent." #: app_Main.py:716 msgid "" @@ -18652,7 +18439,7 @@ msgstr "" "Initialisation du Canevas\n" "Initialisation terminée en" -#: app_Main.py:1271 app_Main.py:9099 +#: app_Main.py:1271 app_Main.py:9101 msgid "New Project - Not saved" msgstr "Nouveau projet - Non enregistré" @@ -18685,7 +18472,8 @@ msgstr "Défaut d'ouverture du fichier Gerber." #: app_Main.py:2370 msgid "Select a Geometry, Gerber, Excellon or CNCJob Object to edit." -msgstr "Sélectionnez un objet Geometry, Gerber, Excellon ou CNCJob à modifier." +msgstr "" +"Sélectionnez un objet Geometrie, Gerber, Excellon ou CNCJob à modifier." #: app_Main.py:2385 msgid "" @@ -18698,7 +18486,7 @@ msgstr "" #: app_Main.py:2470 msgid "EDITOR Area" -msgstr "" +msgstr "Zone EDITEUR" #: app_Main.py:2472 msgid "Editor is activated ..." @@ -19065,8 +18853,8 @@ msgstr "" "\n" "Voulez-vous continuer?" -#: app_Main.py:4470 app_Main.py:4634 app_Main.py:4723 app_Main.py:8512 -#: app_Main.py:8527 app_Main.py:8871 app_Main.py:8883 +#: app_Main.py:4470 app_Main.py:4634 app_Main.py:4723 app_Main.py:8514 +#: app_Main.py:8529 app_Main.py:8873 app_Main.py:8885 msgid "Ok" msgstr "D'accord" @@ -19158,27 +18946,27 @@ msgstr "En haut à droite" msgid "Locate ..." msgstr "Localiser ..." -#: app_Main.py:5436 app_Main.py:5517 app_Main.py:5687 +#: app_Main.py:5436 app_Main.py:5514 app_Main.py:5684 msgid "No object is selected. Select an object and try again." msgstr "Aucun objet n'est sélectionné. Sélectionnez un objet et réessayez." -#: app_Main.py:5713 +#: app_Main.py:5710 msgid "" "Aborting. The current task will be gracefully closed as soon as possible..." msgstr "Abandon de la tâche en cours si possible ..." -#: app_Main.py:5719 +#: app_Main.py:5716 msgid "The current task was gracefully closed on user request..." msgstr "" "La tâche en cours a été fermée avec succès à la demande de l'utilisateur ..." -#: app_Main.py:5959 +#: app_Main.py:5956 msgid "Adding tool from DB is not allowed for this object." msgstr "" "L'ajout d'outil à partir de la base de données n'est pas autorisé pour cet " "objet." -#: app_Main.py:5977 +#: app_Main.py:5974 msgid "" "One or more Tools are edited.\n" "Do you want to update the Tools Database?" @@ -19186,51 +18974,51 @@ msgstr "" "Un ou plusieurs outils ont été modifiés.\n" "Voulez-vous mettre à jour la base de données?" -#: app_Main.py:5979 +#: app_Main.py:5976 msgid "Save Tools Database" msgstr "Enregistrement de la base de données d'outils" -#: app_Main.py:6025 +#: app_Main.py:6022 msgid "No object selected to Flip on Y axis." msgstr "Aucun objet sélectionné pour basculer sur l’axe Y." -#: app_Main.py:6051 +#: app_Main.py:6048 msgid "Flip on Y axis done." msgstr "Rotation sur l'axe des Y effectué." -#: app_Main.py:6072 +#: app_Main.py:6069 msgid "No object selected to Flip on X axis." msgstr "Aucun objet sélectionné pour basculer sur l’axe X." -#: app_Main.py:6098 +#: app_Main.py:6095 msgid "Flip on X axis done." msgstr "Rotation sur l'axe des X effectué." -#: app_Main.py:6120 +#: app_Main.py:6117 msgid "No object selected to Rotate." msgstr "Aucun objet sélectionné pour faire pivoter." -#: app_Main.py:6123 app_Main.py:6174 app_Main.py:6211 +#: app_Main.py:6120 app_Main.py:6172 app_Main.py:6210 msgid "Enter the Angle value:" msgstr "Entrez la valeur de l'angle:" -#: app_Main.py:6153 +#: app_Main.py:6151 msgid "Rotation done." msgstr "Rotation effectuée." -#: app_Main.py:6155 +#: app_Main.py:6153 msgid "Rotation movement was not executed." msgstr "Le mouvement de rotation n'a pas été exécuté." -#: app_Main.py:6172 +#: app_Main.py:6170 msgid "No object selected to Skew/Shear on X axis." msgstr "Aucun objet sélectionné pour incliner/cisailler sur l'axe X." -#: app_Main.py:6193 +#: app_Main.py:6192 msgid "Skew on X axis done." msgstr "Inclinaison sur l'axe X terminée." -#: app_Main.py:6209 +#: app_Main.py:6208 msgid "No object selected to Skew/Shear on Y axis." msgstr "Aucun objet sélectionné pour incliner/cisailler sur l'axe Y." @@ -19246,162 +19034,162 @@ msgstr "Nouvelle grille ..." msgid "Enter a Grid Value:" msgstr "Entrez une valeur de grille:" -#: app_Main.py:6321 app_Main.py:6345 +#: app_Main.py:6322 app_Main.py:6347 msgid "Please enter a grid value with non-zero value, in Float format." msgstr "" "Veuillez entrer une valeur de grille avec une valeur non nulle, au format " "réel." -#: app_Main.py:6326 +#: app_Main.py:6327 msgid "New Grid added" msgstr "Nouvelle grille ajoutée" -#: app_Main.py:6328 +#: app_Main.py:6329 msgid "Grid already exists" msgstr "La grille existe déjà" -#: app_Main.py:6330 +#: app_Main.py:6331 msgid "Adding New Grid cancelled" msgstr "Ajout d'une nouvelle grille annulée" -#: app_Main.py:6351 +#: app_Main.py:6353 msgid " Grid Value does not exist" msgstr " Valeur de la grille n'existe pas" -#: app_Main.py:6353 +#: app_Main.py:6355 msgid "Grid Value deleted" msgstr "Valeur de grille supprimée" -#: app_Main.py:6355 +#: app_Main.py:6357 msgid "Delete Grid value cancelled" msgstr "Suppression valeur de grille annulée" -#: app_Main.py:6361 +#: app_Main.py:6363 msgid "Key Shortcut List" msgstr "Liste de raccourcis clavier" -#: app_Main.py:6398 +#: app_Main.py:6400 msgid " No object selected to copy it's name" msgstr " Aucun objet sélectionné pour copier son nom" -#: app_Main.py:6402 +#: app_Main.py:6404 msgid "Name copied on clipboard ..." msgstr "Nom copié dans le presse-papiers ..." -#: app_Main.py:7165 app_Main.py:7169 +#: app_Main.py:7167 app_Main.py:7171 msgid "Select an Gerber or Excellon file to view it's source file." msgstr "" "Sélectionnez un fichier Gerber ou Excellon pour afficher son fichier source." -#: app_Main.py:7172 +#: app_Main.py:7174 msgid "Viewing the source code of the selected object." msgstr "Affichage du code source de l'objet sélectionné." -#: app_Main.py:7186 +#: app_Main.py:7188 msgid "Source Editor" msgstr "Éditeur de source" -#: app_Main.py:7222 app_Main.py:7229 +#: app_Main.py:7224 app_Main.py:7231 msgid "There is no selected object for which to see it's source file code." msgstr "Il n'y a pas d'objet sélectionné auxquelles voir son code source." -#: app_Main.py:7237 +#: app_Main.py:7239 msgid "Failed to load the source code for the selected object" msgstr "Échec du chargement du code source pour l'objet sélectionné" -#: app_Main.py:7270 +#: app_Main.py:7272 msgid "Go to Line ..." msgstr "Aller à la ligne ..." -#: app_Main.py:7271 +#: app_Main.py:7273 msgid "Line:" msgstr "Ligne:" -#: app_Main.py:7301 +#: app_Main.py:7303 msgid "Redrawing all objects" msgstr "Redessiner tous les objets" -#: app_Main.py:7389 +#: app_Main.py:7391 msgid "Failed to load recent item list." msgstr "Échec du chargement des éléments récents." -#: app_Main.py:7396 +#: app_Main.py:7398 msgid "Failed to parse recent item list." msgstr "Échec d'analyse des éléments récents." -#: app_Main.py:7406 +#: app_Main.py:7408 msgid "Failed to load recent projects item list." msgstr "Échec du chargement des éléments des projets récents." -#: app_Main.py:7413 +#: app_Main.py:7415 msgid "Failed to parse recent project item list." msgstr "Échec de l'analyse de la liste des éléments de projet récents." -#: app_Main.py:7474 +#: app_Main.py:7476 msgid "Clear Recent projects" msgstr "Effacer les projets récents" -#: app_Main.py:7498 +#: app_Main.py:7500 msgid "Clear Recent files" msgstr "Effacer les fichiers récents" -#: app_Main.py:7554 +#: app_Main.py:7556 msgid "FlatCAM Evo" msgstr "FlatCAM Evo" -#: app_Main.py:7558 +#: app_Main.py:7560 msgid "Release date" -msgstr "" +msgstr "Date de sortie" -#: app_Main.py:7562 +#: app_Main.py:7564 msgid "Displayed" -msgstr "" +msgstr "Affichée" -#: app_Main.py:7565 +#: app_Main.py:7567 msgid "Snap" -msgstr "" +msgstr "Accroche" -#: app_Main.py:7574 +#: app_Main.py:7576 msgid "Canvas" -msgstr "" +msgstr "Canevas" -#: app_Main.py:7579 +#: app_Main.py:7581 msgid "Workspace active" -msgstr "" +msgstr "Espace de travail actif" -#: app_Main.py:7583 +#: app_Main.py:7585 msgid "Workspace size" -msgstr "" +msgstr "Taille espace de travail" -#: app_Main.py:7587 +#: app_Main.py:7589 msgid "Workspace orientation" -msgstr "" +msgstr "Orientation espace de travail" -#: app_Main.py:7650 +#: app_Main.py:7651 msgid "Failed checking for latest version. Could not connect." msgstr "Échec de vérification de mise a jour. Connection impossible." -#: app_Main.py:7657 +#: app_Main.py:7658 msgid "Could not parse information about latest version." msgstr "Impossible d'analyser les informations sur la dernière version." -#: app_Main.py:7667 +#: app_Main.py:7668 msgid "FlatCAM is up to date!" msgstr "FlatCAM est à jour!" -#: app_Main.py:7672 +#: app_Main.py:7673 msgid "Newer Version Available" msgstr "Nouvelle version FlatCam disponible" -#: app_Main.py:7674 +#: app_Main.py:7675 msgid "There is a newer version of FlatCAM available for download:" msgstr "Une version plus récente de FlatCAM est disponible au téléchargement:" -#: app_Main.py:7678 +#: app_Main.py:7679 msgid "info" msgstr "info" -#: app_Main.py:7706 +#: app_Main.py:7707 msgid "" "OpenGL canvas initialization failed. HW or HW configuration not supported." "Change the graphic engine to Legacy(2D) in Edit -> Preferences -> General " @@ -19413,48 +19201,48 @@ msgstr "" "Edition -> Paramètres -> onglet Général.\n" "\n" -#: app_Main.py:7783 +#: app_Main.py:7784 msgid "All plots disabled." msgstr "Désactivation de tous les Plots." -#: app_Main.py:7789 +#: app_Main.py:7790 msgid "All non selected plots disabled." -msgstr "" +msgstr "Tracés non sélectionnés désactivés." -#: app_Main.py:7795 +#: app_Main.py:7796 msgid "All plots enabled." msgstr "Activation de tous les Plots." -#: app_Main.py:7801 +#: app_Main.py:7802 msgid "All non selected plots enabled." -msgstr "" +msgstr "Tracés non sélectionnés activés." -#: app_Main.py:7807 +#: app_Main.py:7808 msgid "Selected plots enabled..." msgstr "Sélection de tous les Plots activés ..." -#: app_Main.py:7815 +#: app_Main.py:7816 msgid "Selected plots disabled..." msgstr "Selection de tous les Plots désactivés ..." -#: app_Main.py:7849 +#: app_Main.py:7850 msgid "Enabling plots ..." msgstr "Activation des plots ..." -#: app_Main.py:7896 +#: app_Main.py:7897 msgid "Disabling plots ..." msgstr "Désactiver les plots ..." -#: app_Main.py:7919 +#: app_Main.py:7920 msgid "Working ..." msgstr "Travail ..." -#: app_Main.py:8032 +#: app_Main.py:8033 msgid "Set alpha level ..." msgstr "Définir le premier niveau ..." -#: app_Main.py:8310 app_Main.py:8349 app_Main.py:8393 app_Main.py:8459 -#: app_Main.py:9200 app_Main.py:10462 app_Main.py:10524 +#: app_Main.py:8312 app_Main.py:8351 app_Main.py:8395 app_Main.py:8461 +#: app_Main.py:9202 app_Main.py:10464 app_Main.py:10526 msgid "" "Canvas initialization started.\n" "Canvas initialization finished in" @@ -19462,100 +19250,100 @@ msgstr "" "Initialisation du canevas commencé.\n" "Initialisation du canevas terminée en" -#: app_Main.py:8313 +#: app_Main.py:8315 msgid "Opening Gerber file." msgstr "Ouvrir le fichier Gerber." -#: app_Main.py:8352 +#: app_Main.py:8354 msgid "Opening Excellon file." msgstr "Ouverture du fichier Excellon." -#: app_Main.py:8396 +#: app_Main.py:8398 msgid "Opening G-Code file." msgstr "Ouverture du fichier G-Code." -#: app_Main.py:8450 app_Main.py:8454 +#: app_Main.py:8452 app_Main.py:8456 msgid "Open HPGL2" msgstr "Ouvrir HPGL2" -#: app_Main.py:8462 +#: app_Main.py:8464 msgid "Opening HPGL2 file." msgstr "Ouverture de fichier HPGL2." -#: app_Main.py:8485 app_Main.py:8488 +#: app_Main.py:8487 app_Main.py:8490 msgid "Open Configuration File" msgstr "Ouvrir Fichier de configuration" -#: app_Main.py:8507 app_Main.py:8866 +#: app_Main.py:8509 app_Main.py:8868 msgid "Please Select a Geometry object to export" msgstr "Sélectionner un objet de géométrie à exporter" -#: app_Main.py:8522 +#: app_Main.py:8524 msgid "Only Geometry, Gerber and CNCJob objects can be used." msgstr "Seuls les objets Géométrie, Gerber et CNCJob peuvent être utilisés." -#: app_Main.py:8569 +#: app_Main.py:8571 msgid "Data must be a 3D array with last dimension 3 or 4" msgstr "" "Les données doivent être un tableau 3D avec la dernière dimension 3 ou 4" -#: app_Main.py:8575 app_Main.py:8580 +#: app_Main.py:8577 app_Main.py:8582 msgid "Export PNG Image" msgstr "Exporter une image PNG" -#: app_Main.py:8613 app_Main.py:8825 +#: app_Main.py:8615 app_Main.py:8827 msgid "Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "Érreur. Seuls les objets Gerber peuvent être enregistrés en tant que " "fichiers Gerber ..." -#: app_Main.py:8626 +#: app_Main.py:8628 msgid "Save Gerber source file" msgstr "Enregistrer le fichier source Gerber" -#: app_Main.py:8655 +#: app_Main.py:8657 msgid "Failed. Only Script objects can be saved as TCL Script files..." msgstr "" "Érreur. Seuls les objets de script peuvent être enregistrés en tant que " "fichiers de script TCL ..." -#: app_Main.py:8668 +#: app_Main.py:8670 msgid "Save Script source file" msgstr "Enregistrer le fichier source du script" -#: app_Main.py:8697 +#: app_Main.py:8699 msgid "Failed. Only Document objects can be saved as Document files..." msgstr "" "Échoué. Seuls les objets Document peuvent être enregistrés en tant que " "fichiers Document ..." -#: app_Main.py:8710 +#: app_Main.py:8712 msgid "Save Document source file" msgstr "Enregistrer le fichier source du document" -#: app_Main.py:8739 app_Main.py:8780 app_Main.py:9706 +#: app_Main.py:8741 app_Main.py:8782 app_Main.py:9708 msgid "Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "Érreur. Seuls les objets Excellon peuvent être enregistrés en tant que " "fichiers Excellon ..." -#: app_Main.py:8747 app_Main.py:8752 +#: app_Main.py:8749 app_Main.py:8754 msgid "Save Excellon source file" msgstr "Enregistrer le fichier source Excellon" -#: app_Main.py:8878 +#: app_Main.py:8880 msgid "Only Geometry objects can be used." msgstr "Seuls les objets de géométrie peuvent être utilisés." -#: app_Main.py:8924 app_Main.py:8928 +#: app_Main.py:8926 app_Main.py:8930 msgid "Import SVG" msgstr "Importer SVG" -#: app_Main.py:8954 app_Main.py:8958 +#: app_Main.py:8956 app_Main.py:8960 msgid "Import DXF" msgstr "Importation DXF" -#: app_Main.py:8984 +#: app_Main.py:8986 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -19565,168 +19353,168 @@ msgstr "" "La création d'un nouveau projet les supprimera.\n" "Voulez-vous enregistrer le projet?" -#: app_Main.py:9007 +#: app_Main.py:9009 msgid "New Project created" msgstr "Nouveau projet" -#: app_Main.py:9109 +#: app_Main.py:9111 msgid "New TCL script file created in Code Editor." msgstr "Nouveau fichier de script TCL créé dans l'éditeur de code." -#: app_Main.py:9136 app_Main.py:9138 app_Main.py:9173 app_Main.py:9175 +#: app_Main.py:9138 app_Main.py:9140 app_Main.py:9175 app_Main.py:9177 msgid "Open TCL script" msgstr "Ouvrir le script TCL" -#: app_Main.py:9202 +#: app_Main.py:9204 msgid "Executing ScriptObject file." msgstr "Exécution du fichier ScriptObject." -#: app_Main.py:9210 app_Main.py:9214 +#: app_Main.py:9212 app_Main.py:9216 msgid "Run TCL script" msgstr "Exécuter le script TCL" -#: app_Main.py:9237 +#: app_Main.py:9239 msgid "TCL script file opened in Code Editor and executed." msgstr "Fichier de script TCL ouvert dans l'éditeur de code exécuté." -#: app_Main.py:9283 app_Main.py:9290 +#: app_Main.py:9285 app_Main.py:9292 msgid "Save Project As ..." msgstr "Enregistrer le projet sous ..." -#: app_Main.py:9325 +#: app_Main.py:9327 msgid "FlatCAM objects print" msgstr "Impression d'objets FlatCAM" -#: app_Main.py:9338 app_Main.py:9346 +#: app_Main.py:9340 app_Main.py:9348 msgid "Save Object as PDF ..." msgstr "Enregistrement au format PDF ...Enregistrer le projet sous ..." -#: app_Main.py:9356 +#: app_Main.py:9358 msgid "Printing PDF ... Please wait." msgstr "Impression du PDF ... Veuillez patienter." -#: app_Main.py:9531 +#: app_Main.py:9533 msgid "PDF file saved to" msgstr "Fichier PDF enregistré dans" -#: app_Main.py:9553 +#: app_Main.py:9555 msgid "Exporting SVG" msgstr "Exporter du SVG" -#: app_Main.py:9596 +#: app_Main.py:9598 msgid "SVG file exported to" msgstr "Fichier SVG exporté vers" -#: app_Main.py:9611 app_Main.py:9615 +#: app_Main.py:9613 app_Main.py:9617 msgid "Import FlatCAM Preferences" msgstr "Importer les paramètres FlatCAM" -#: app_Main.py:9626 +#: app_Main.py:9628 msgid "Imported Defaults from" msgstr "Valeurs par défaut importées de" -#: app_Main.py:9645 app_Main.py:9651 +#: app_Main.py:9647 app_Main.py:9653 msgid "Export FlatCAM Preferences" msgstr "Exporter les paramètres FlatCAM" -#: app_Main.py:9671 +#: app_Main.py:9673 msgid "Exported preferences to" msgstr "Paramètres exportées vers" -#: app_Main.py:9804 +#: app_Main.py:9806 msgid "Excellon file exported to" msgstr "Fichier Excellon exporté vers" -#: app_Main.py:9813 +#: app_Main.py:9815 msgid "Exporting Excellon" msgstr "Exporter Excellon" -#: app_Main.py:9818 app_Main.py:9825 +#: app_Main.py:9820 app_Main.py:9827 msgid "Could not export Excellon file." msgstr "Impossible d'exporter le fichier Excellon." -#: app_Main.py:9939 +#: app_Main.py:9941 msgid "Gerber file exported to" msgstr "Fichier Gerber exporté vers" -#: app_Main.py:9947 +#: app_Main.py:9949 msgid "Exporting Gerber" msgstr "Exporter Gerber" -#: app_Main.py:9952 app_Main.py:9959 +#: app_Main.py:9954 app_Main.py:9961 msgid "Could not export file." msgstr "Impossible d'exporter le fichier." -#: app_Main.py:10005 +#: app_Main.py:10007 msgid "DXF file exported to" msgstr "Fichier DXF exporté vers" -#: app_Main.py:10014 +#: app_Main.py:10016 msgid "Exporting DXF" msgstr "Exportation DXF" -#: app_Main.py:10019 app_Main.py:10026 +#: app_Main.py:10021 app_Main.py:10028 msgid "Could not export DXF file." msgstr "Impossible d'exporter le fichier DXF." -#: app_Main.py:10067 +#: app_Main.py:10069 msgid "Importing SVG" msgstr "Importer du SVG" -#: app_Main.py:10075 app_Main.py:10130 +#: app_Main.py:10077 app_Main.py:10132 msgid "Import failed." msgstr "L'importation a échoué." -#: app_Main.py:10122 +#: app_Main.py:10124 msgid "Importing DXF" msgstr "Importation de DXF" -#: app_Main.py:10160 app_Main.py:10351 app_Main.py:10416 +#: app_Main.py:10162 app_Main.py:10353 app_Main.py:10418 msgid "Failed to open file" msgstr "Échec à l'ouverture du fichier" -#: app_Main.py:10163 app_Main.py:10354 app_Main.py:10419 +#: app_Main.py:10165 app_Main.py:10356 app_Main.py:10421 msgid "Failed to parse file" msgstr "Échec de l'analyse du fichier" -#: app_Main.py:10175 +#: app_Main.py:10177 msgid "Object is not Gerber file or empty. Aborting object creation." msgstr "" "L'objet n'est pas un fichier Gerber ou vide. Abandon de la création d'objet." -#: app_Main.py:10180 +#: app_Main.py:10182 msgid "Opening Gerber" msgstr "Ouverture Gerber" -#: app_Main.py:10191 +#: app_Main.py:10193 msgid "Open Gerber failed. Probable not a Gerber file." msgstr "Ouverture Gerber échoué. Probablement pas un fichier Gerber." -#: app_Main.py:10224 +#: app_Main.py:10226 msgid "Cannot open file" msgstr "Ne peut pas ouvrir le fichier" -#: app_Main.py:10244 +#: app_Main.py:10246 msgid "Opening Excellon." msgstr "Ouverture Excellon." -#: app_Main.py:10254 +#: app_Main.py:10256 msgid "Open Excellon file failed. Probable not an Excellon file." msgstr "Ouverture Excellon échoué. Probablement pas un fichier Excellon." -#: app_Main.py:10286 +#: app_Main.py:10288 msgid "Reading GCode file" msgstr "Lecture du fichier GCode" -#: app_Main.py:10299 +#: app_Main.py:10301 msgid "This is not GCODE" msgstr "Ce n'est pas du GCODE" -#: app_Main.py:10304 +#: app_Main.py:10306 msgid "Opening G-Code." msgstr "Ouverture G-Code." -#: app_Main.py:10317 +#: app_Main.py:10319 msgid "" "Failed to create CNCJob Object. Probable not a GCode file. Try to load it " "from File menu.\n" @@ -19738,83 +19526,83 @@ msgstr "" "La tentative de création d'un objet FlatCAM CNCJob à partir d'un fichier G-" "Code a échoué pendant le traitement" -#: app_Main.py:10373 +#: app_Main.py:10375 msgid "Object is not HPGL2 file or empty. Aborting object creation." msgstr "Objet vide ou non HPGL2. Abandon de la création d'objet." -#: app_Main.py:10378 +#: app_Main.py:10380 msgid "Opening HPGL2" msgstr "Ouverture HPGL2" -#: app_Main.py:10385 +#: app_Main.py:10387 msgid " Open HPGL2 failed. Probable not a HPGL2 file." msgstr " Ouverture HPGL2 échoué. Probablement pas un fichier HPGL2 ." -#: app_Main.py:10411 +#: app_Main.py:10413 msgid "TCL script file opened in Code Editor." msgstr "Fichier de script TCL ouvert dans l'éditeur de code." -#: app_Main.py:10431 +#: app_Main.py:10433 msgid "Opening TCL Script..." msgstr "Ouverture du script TCL ..." -#: app_Main.py:10442 +#: app_Main.py:10444 msgid "Failed to open TCL Script." msgstr "Impossible d'ouvrir le script TCL." -#: app_Main.py:10465 +#: app_Main.py:10467 msgid "Opening FlatCAM Config file." msgstr "Ouverture du fichier de configuration FlatCAM." -#: app_Main.py:10492 +#: app_Main.py:10494 msgid "Failed to open config file" msgstr "Impossible d'ouvrir le fichier de configuration" -#: app_Main.py:10521 +#: app_Main.py:10523 msgid "Loading Project ... Please Wait ..." msgstr "Chargement du projet ... Veuillez patienter ..." -#: app_Main.py:10527 +#: app_Main.py:10529 msgid "Opening FlatCAM Project file." msgstr "Ouverture du fichier de projet FlatCAM." -#: app_Main.py:10542 app_Main.py:10546 app_Main.py:10564 +#: app_Main.py:10544 app_Main.py:10548 app_Main.py:10566 msgid "Failed to open project file" msgstr "Impossible d'ouvrir le fichier de projet" -#: app_Main.py:10604 +#: app_Main.py:10606 msgid "Loading Project ... restoring" msgstr "Chargement du projet ... en cours de restauration" -#: app_Main.py:10608 +#: app_Main.py:10610 msgid "Project loaded from" msgstr "Projet chargé à partir de" -#: app_Main.py:10640 +#: app_Main.py:10642 msgid "Saving FlatCAM Project" msgstr "Enregistrement du projet FlatCAM" -#: app_Main.py:10662 app_Main.py:10698 +#: app_Main.py:10664 app_Main.py:10700 msgid "Project saved to" msgstr "Projet enregistré dans" -#: app_Main.py:10669 +#: app_Main.py:10671 msgid "The object is used by another application." msgstr "L'objet est utilisé par une autre application." -#: app_Main.py:10683 +#: app_Main.py:10685 msgid "Failed to verify project file" msgstr "Échec de vérification du fichier projet" -#: app_Main.py:10683 app_Main.py:10691 app_Main.py:10701 +#: app_Main.py:10685 app_Main.py:10693 app_Main.py:10703 msgid "Retry to save it." msgstr "Réessayez de le sauvegarder." -#: app_Main.py:10691 app_Main.py:10701 +#: app_Main.py:10693 app_Main.py:10703 msgid "Failed to parse saved project file" msgstr "Échec d'analyse du fichier de projet enregistré" -#: app_Main.py:10737 +#: app_Main.py:10739 msgid "Save cancelled because source file is empty. Try to export the file." msgstr "" "Enregistrement annulé car le fichier source est vide. Essayez d'exporter le " @@ -19897,10 +19685,11 @@ msgstr "" #: camlib.py:3109 msgid "The Cut Z parameter is zero. There will be no cut, aborting" msgstr "" +"Le paramètre de découpe Z est null. Il n'y aura pas de découpe, abandon" #: camlib.py:3238 camlib.py:3616 msgid "The End X,Y format has to be (x, y)." -msgstr "" +msgstr "Le format de FIN X,Y doit être (x, y)." #: camlib.py:3314 camlib.py:3707 camlib.py:4201 camlib.py:4434 camlib.py:5468 #: camlib.py:5875 @@ -19913,7 +19702,7 @@ msgstr "Coordonnées G91 non implémentées" #: camlib.py:3447 msgid "Finished G-Code generation for tool:" -msgstr "" +msgstr "Génération de GCODE terminée pour l'outil:" #: camlib.py:3536 camlib.py:5340 camlib.py:5735 msgid "" @@ -20044,22 +19833,18 @@ msgid "Creating Geometry from the parsed GCode file. " msgstr "Création d'une géométrie à partir du fichier GCode analysé. " #: camlib.py:6562 -#, fuzzy -#| msgid "Starting G-Code for tool with diameter" msgid "Parsing GCode file for tool diameter" -msgstr "Code G de départ pour outil avec diamètre" +msgstr "Analyse du fichier de GCode pour le diamètre d'outil" #: camlib.py:6563 -#, fuzzy -#| msgid "Nr of slots" msgid "Number of lines" -msgstr "Nb de Fentes" +msgstr "Nb de lignes" #: camlib.py:6652 -#, fuzzy -#| msgid "Creating Geometry from the parsed GCode file. " msgid "Creating Geometry from the parsed GCode file for tool diameter" -msgstr "Création d'une géométrie à partir du fichier GCode analysé. " +msgstr "" +"Création d'une géométrie à partir du fichier GCode analysé pour le diamètre " +"de l'outil" #: camlib.py:7086 camlib.py:7234 camlib.py:7403 msgid "G91 coordinates not implemented ..." @@ -20170,16 +19955,16 @@ msgstr "" "Aucun nom de géométrie dans les arguments. Indiquez un nom et réessayez." #~ msgid "Done. Drill added." -#~ msgstr "Terminé. Drill ajouté." +#~ msgstr "Terminé. Forage ajouté." #~ msgid "Done. Drill Array added." #~ msgstr "Terminé. Tableau de forage ajouté." #~ msgid "Done. Adding Slot completed." -#~ msgstr "Terminé. Ajout de la fente terminée." +#~ msgstr "Terminé. Ajout de la rainure terminée." #~ msgid "Done. Slot Array added." -#~ msgstr "Terminé. Tableau de trous de fente ajouté." +#~ msgstr "Terminé. Tableau des rainures ajouté." #~ msgid "Done. Drill/Slot Resize completed." #~ msgstr "" @@ -20187,7 +19972,7 @@ msgstr "" #~ msgid "Cancelled. No drills/slots selected for resize ..." #~ msgstr "" -#~ "Annulé. Aucun trou de perçage / rainure sélectionné pour le " +#~ "Annulé. Aucun trou de forage / rainure sélectionné pour le " #~ "redimensionnement ..." #~ msgid "Done. Drill(s) Move completed."