From f7049ca3eafef78e7aa1196bb1c3e69bf1375261 Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Fri, 11 Feb 2022 10:56:33 +0100 Subject: [PATCH 001/161] fix disallowed areas taking brim_gap into account --- cura/BuildVolume.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py index d039a3c68f..fa230866e9 100755 --- a/cura/BuildVolume.py +++ b/cura/BuildVolume.py @@ -1113,7 +1113,8 @@ class BuildVolume(SceneNode): # Use brim width if brim is enabled OR the prime tower has a brim. if adhesion_type == "brim": brim_line_count = skirt_brim_stack.getProperty("brim_line_count", "value") - bed_adhesion_size = skirt_brim_line_width * brim_line_count * initial_layer_line_width_factor / 100.0 + brim_gap = skirt_brim_stack.getProperty("brim_gap", "value") + bed_adhesion_size = brim_gap + skirt_brim_line_width * brim_line_count * initial_layer_line_width_factor / 100.0 for extruder_stack in used_extruders: bed_adhesion_size += extruder_stack.getProperty("skirt_brim_line_width", "value") * extruder_stack.getProperty("initial_layer_line_width_factor", "value") / 100.0 @@ -1214,7 +1215,7 @@ class BuildVolume(SceneNode): return max(min(value, max_value), min_value) _machine_settings = ["machine_width", "machine_depth", "machine_height", "machine_shape", "machine_center_is_zero"] - _skirt_settings = ["adhesion_type", "skirt_gap", "skirt_line_count", "skirt_brim_line_width", "brim_width", "brim_line_count", "raft_margin", "draft_shield_enabled", "draft_shield_dist", "initial_layer_line_width_factor"] + _skirt_settings = ["adhesion_type", "skirt_gap", "skirt_line_count", "skirt_brim_line_width", "brim_gap", "brim_width", "brim_line_count", "raft_margin", "draft_shield_enabled", "draft_shield_dist", "initial_layer_line_width_factor"] _raft_settings = ["adhesion_type", "raft_base_thickness", "raft_interface_layers", "raft_interface_thickness", "raft_surface_layers", "raft_surface_thickness", "raft_airgap", "layer_0_z_overlap"] _extra_z_settings = ["retraction_hop_enabled", "retraction_hop"] _prime_settings = ["extruder_prime_pos_x", "extruder_prime_pos_y", "prime_blob_enable"] From a35a38c684de8e0e362460c5858deb120ff573af Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Fri, 11 Feb 2022 11:48:54 +0100 Subject: [PATCH 002/161] fix inclusion of brim_gap in TestBuildVolume --- tests/TestBuildVolume.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/TestBuildVolume.py b/tests/TestBuildVolume.py index 7bc629962d..9a1c29da6c 100644 --- a/tests/TestBuildVolume.py +++ b/tests/TestBuildVolume.py @@ -57,6 +57,7 @@ class TestCalculateBedAdhesionSize: "machine_depth": {"value": 200}, "skirt_line_count": {"value": 0}, "skirt_gap": {"value": 0}, + "brim_gap": {"value": 0}, "raft_margin": {"value": 0}, "material_shrinkage_percentage": {"value": 100.0}, "material_shrinkage_percentage_xy": {"value": 100.0}, From 2698cd76c5ff736fb725ee810edaba6527b84430 Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Fri, 11 Feb 2022 12:20:05 +0100 Subject: [PATCH 003/161] make skirt_brim_extruder_nr an optional_extruder to allow for the brim_per_material feature --- cura/BuildVolume.py | 52 +++++++++++++++-------- cura/Settings/ExtruderManager.py | 2 +- resources/definitions/fdmprinter.def.json | 2 +- 3 files changed, 36 insertions(+), 20 deletions(-) diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py index fa230866e9..aeacba7c03 100755 --- a/cura/BuildVolume.py +++ b/cura/BuildVolume.py @@ -850,10 +850,14 @@ class BuildVolume(SceneNode): result = {} skirt_brim_extruder: ExtruderStack = None - for extruder in used_extruders: - if int(extruder.getProperty("extruder_nr", "value")) == int(self._global_container_stack.getProperty("skirt_brim_extruder_nr", "value")): - skirt_brim_extruder = extruder - result[extruder.getId()] = [] + skirt_brim_extruder_nr = self._global_container_stack.getProperty("skirt_brim_extruder_nr", "value") + if skirt_brim_extruder_nr == -1: + skirt_brim_extruder = used_extruders[0] # The prime tower brim is always printed with the first extruder + else: + for extruder in used_extruders: + if int(extruder.getProperty("extruder_nr", "value")) == int(skirt_brim_extruder_nr): + skirt_brim_extruder = extruder + result[extruder.getId()] = [] # Currently, the only normally printed object is the prime tower. if self._global_container_stack.getProperty("prime_tower_enable", "value"): @@ -1101,27 +1105,39 @@ class BuildVolume(SceneNode): # with the adhesion extruder, but it also prints one extra line by all other extruders. As such, the # setting does *not* have a limit_to_extruder setting (which means that we can't ask the global extruder what # the value is. - skirt_brim_extruder_nr = self._global_container_stack.getProperty("skirt_brim_extruder_nr", "value") - try: - skirt_brim_stack = self._global_container_stack.extruderList[int(skirt_brim_extruder_nr)] - except IndexError: - Logger.warning(f"Couldn't find extruder with index '{skirt_brim_extruder_nr}', defaulting to 0 instead.") - skirt_brim_stack = self._global_container_stack.extruderList[0] - skirt_brim_line_width = skirt_brim_stack.getProperty("skirt_brim_line_width", "value") - initial_layer_line_width_factor = skirt_brim_stack.getProperty("initial_layer_line_width_factor", "value") # Use brim width if brim is enabled OR the prime tower has a brim. if adhesion_type == "brim": - brim_line_count = skirt_brim_stack.getProperty("brim_line_count", "value") - brim_gap = skirt_brim_stack.getProperty("brim_gap", "value") - bed_adhesion_size = brim_gap + skirt_brim_line_width * brim_line_count * initial_layer_line_width_factor / 100.0 + skirt_brim_extruder_nr = self._global_container_stack.getProperty("skirt_brim_extruder_nr", "value") + bed_adhesion_size = -999 + for extruder_stack in used_extruders: + extruder_nr = int(extruder_stack.getProperty("extruder_nr", "value")) + if extruder_nr == skirt_brim_extruder_nr or skirt_brim_extruder_nr == -1: + initial_layer_line_width_factor = extruder_stack.getProperty("initial_layer_line_width_factor", "value") + brim_line_count = extruder_stack.getProperty("brim_line_count", "value") + skirt_brim_line_width = extruder_stack.getProperty("skirt_brim_line_width", "value") + brim_gap = extruder_stack.getProperty("brim_gap", "value") + bed_adhesion_size_here = brim_gap + skirt_brim_line_width * brim_line_count * initial_layer_line_width_factor / 100.0 + # We don't create an additional line for the extruder we're printing the brim with. + bed_adhesion_size_here -= skirt_brim_line_width * initial_layer_line_width_factor / 100.0 + bed_adhesion_size = max(bed_adhesion_size, bed_adhesion_size_here) + + if bed_adhesion_size == -999: + Logger.warning(f"Couldn't find skirt/brim extruder among used extruders.") for extruder_stack in used_extruders: bed_adhesion_size += extruder_stack.getProperty("skirt_brim_line_width", "value") * extruder_stack.getProperty("initial_layer_line_width_factor", "value") / 100.0 - - # We don't create an additional line for the extruder we're printing the brim with. - bed_adhesion_size -= skirt_brim_line_width * initial_layer_line_width_factor / 100.0 elif adhesion_type == "skirt": + skirt_brim_extruder_nr = self._global_container_stack.getProperty("skirt_brim_extruder_nr", "value") + try: + skirt_brim_stack = self._global_container_stack.extruderList[int(skirt_brim_extruder_nr)] + except IndexError: + Logger.warning( + f"Couldn't find extruder with index '{skirt_brim_extruder_nr}', defaulting to 0 instead.") + skirt_brim_stack = self._global_container_stack.extruderList[0] + skirt_brim_line_width = skirt_brim_stack.getProperty("skirt_brim_line_width", "value") + + initial_layer_line_width_factor = skirt_brim_stack.getProperty("initial_layer_line_width_factor", "value") skirt_distance = skirt_brim_stack.getProperty("skirt_gap", "value") skirt_line_count = skirt_brim_stack.getProperty("skirt_line_count", "value") diff --git a/cura/Settings/ExtruderManager.py b/cura/Settings/ExtruderManager.py index 0fdc27ec81..b938ceaccd 100755 --- a/cura/Settings/ExtruderManager.py +++ b/cura/Settings/ExtruderManager.py @@ -275,7 +275,7 @@ class ExtruderManager(QObject): for extruder_setting in used_adhesion_extruders: extruder_str_nr = str(global_stack.getProperty(extruder_setting, "value")) if extruder_str_nr == "-1": - extruder_str_nr = self._application.getMachineManager().defaultExtruderPosition + continue # An optional extruder doesn't force any extruder to be used if it isn't used already if extruder_str_nr in self.extruderIds: used_extruder_stack_ids.add(self.extruderIds[extruder_str_nr]) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index b1cbb07904..d5c74b5d6c 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -5429,7 +5429,7 @@ { "label": "Skirt/Brim Extruder", "description": "The extruder train to use for printing the skirt or brim. This is used in multi-extrusion.", - "type": "extruder", + "type": "optional_extruder", "default_value": "0", "value": "adhesion_extruder_nr", "enabled": "extruders_enabled_count > 1 and (resolveOrValue('adhesion_type') == 'skirt' or resolveOrValue('adhesion_type') == 'brim' or resolveOrValue('prime_tower_brim_enable'))", From 33e3a45b5c8e0741a0d73287e2a8ec12061c41af Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Mon, 14 Feb 2022 16:30:11 +0100 Subject: [PATCH 004/161] fixes for optional skirt_brim_extruder_nr --- cura/BuildVolume.py | 14 +++++++------- cura/Settings/ExtruderManager.py | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py index aeacba7c03..c1106809cb 100755 --- a/cura/BuildVolume.py +++ b/cura/BuildVolume.py @@ -851,13 +851,13 @@ class BuildVolume(SceneNode): result = {} skirt_brim_extruder: ExtruderStack = None skirt_brim_extruder_nr = self._global_container_stack.getProperty("skirt_brim_extruder_nr", "value") - if skirt_brim_extruder_nr == -1: - skirt_brim_extruder = used_extruders[0] # The prime tower brim is always printed with the first extruder - else: - for extruder in used_extruders: - if int(extruder.getProperty("extruder_nr", "value")) == int(skirt_brim_extruder_nr): + + for extruder in used_extruders: + if skirt_brim_extruder_nr == -1: + skirt_brim_extruder = used_extruders[0] # The prime tower brim is always printed with the first extruder + elif int(extruder.getProperty("extruder_nr", "value")) == int(skirt_brim_extruder_nr): skirt_brim_extruder = extruder - result[extruder.getId()] = [] + result[extruder.getId()] = [] # Currently, the only normally printed object is the prime tower. if self._global_container_stack.getProperty("prime_tower_enable", "value"): @@ -1112,7 +1112,7 @@ class BuildVolume(SceneNode): bed_adhesion_size = -999 for extruder_stack in used_extruders: extruder_nr = int(extruder_stack.getProperty("extruder_nr", "value")) - if extruder_nr == skirt_brim_extruder_nr or skirt_brim_extruder_nr == -1: + if extruder_nr == skirt_brim_extruder_nr or int(skirt_brim_extruder_nr) == -1: initial_layer_line_width_factor = extruder_stack.getProperty("initial_layer_line_width_factor", "value") brim_line_count = extruder_stack.getProperty("brim_line_count", "value") skirt_brim_line_width = extruder_stack.getProperty("skirt_brim_line_width", "value") diff --git a/cura/Settings/ExtruderManager.py b/cura/Settings/ExtruderManager.py index b938ceaccd..0286923cc0 100755 --- a/cura/Settings/ExtruderManager.py +++ b/cura/Settings/ExtruderManager.py @@ -298,7 +298,7 @@ class ExtruderManager(QObject): # Starts with the adhesion extruder. adhesion_type = global_stack.getProperty("adhesion_type", "value") if adhesion_type in {"skirt", "brim"}: - return global_stack.getProperty("skirt_brim_extruder_nr", "value") + return max(0, int(global_stack.getProperty("skirt_brim_extruder_nr", "value"))) # optional skirt/brim extruder defaults to zero if adhesion_type == "raft": return global_stack.getProperty("raft_base_extruder_nr", "value") From 0339e4f1ca0da75fb6b303debdc59444a271552b Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Mon, 14 Feb 2022 16:31:03 +0100 Subject: [PATCH 005/161] reduce clearance needed between prime tower and models With the new implementation we don't need that much clearance. --- cura/BuildVolume.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py index c1106809cb..d44347bc0b 100755 --- a/cura/BuildVolume.py +++ b/cura/BuildVolume.py @@ -820,9 +820,7 @@ class BuildVolume(SceneNode): break if self._global_container_stack.getProperty("prime_tower_brim_enable", "value") and self._global_container_stack.getProperty("adhesion_type", "value") != "raft": brim_size = self._calculateBedAdhesionSize(used_extruders, "brim") - # Use 2x the brim size, since we need 1x brim size distance due to the object brim and another - # times the brim due to the brim of the prime tower - prime_tower_areas[extruder_id][area_index] = prime_tower_area.getMinkowskiHull(Polygon.approximatedCircle(2 * brim_size, num_segments = 24)) + prime_tower_areas[extruder_id][area_index] = prime_tower_area.getMinkowskiHull(Polygon.approximatedCircle(brim_size, num_segments = 24)) if not prime_tower_collision: result_areas[extruder_id].extend(prime_tower_areas[extruder_id]) result_areas_no_brim[extruder_id].extend(prime_tower_areas[extruder_id]) From 1bd6cbb3d6737e7d97c6bd60c5c520aa750071ae Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Wed, 16 Feb 2022 12:10:41 +0100 Subject: [PATCH 006/161] remove brim max With the new brim algorithms the brim will never be generated outside of the volume. It's nice to be able to input 9999 if you want the brim to cover the whole build plate... ... for testing purposes ;) --- resources/definitions/fdmprinter.def.json | 4 ---- 1 file changed, 4 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index d5c74b5d6c..7cbea36d1f 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -4653,7 +4653,6 @@ "default_value": 8.0, "minimum_value": "0.0", "maximum_value_warning": "50.0", - "maximum_value": "0.5 * min(machine_width, machine_depth)", "enabled": "(support_enable or support_meshes_present) and support_brim_enable", "settable_per_mesh": false, "settable_per_extruder": true, @@ -4668,7 +4667,6 @@ "default_value": 20, "minimum_value": "0", "maximum_value_warning": "50 / skirt_brim_line_width", - "maximum_value": "0.5 * min(machine_width, machine_depth) / skirt_brim_line_width", "value": "math.ceil(support_brim_width / (skirt_brim_line_width * initial_layer_line_width_factor / 100.0))", "enabled": "(support_enable or support_meshes_present) and support_brim_enable", "settable_per_mesh": false, @@ -5522,7 +5520,6 @@ "default_value": 8.0, "minimum_value": "0.0", "maximum_value_warning": "50.0", - "maximum_value": "0.5 * min(machine_width, machine_depth)", "enabled": "resolveOrValue('adhesion_type') == 'brim' or resolveOrValue('prime_tower_brim_enable')", "settable_per_mesh": false, "settable_per_extruder": true, @@ -5537,7 +5534,6 @@ "default_value": 20, "minimum_value": "0", "maximum_value_warning": "50 / skirt_brim_line_width", - "maximum_value": "0.5 * min(machine_width, machine_depth) / skirt_brim_line_width", "value": "math.ceil(brim_width / (skirt_brim_line_width * initial_layer_line_width_factor / 100.0))", "enabled": "resolveOrValue('adhesion_type') == 'brim' or resolveOrValue('prime_tower_brim_enable')", "settable_per_mesh": false, From 1f2ca2aa8f43bb87e5f18190b40b4601b45e213c Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Wed, 16 Feb 2022 12:11:02 +0100 Subject: [PATCH 007/161] Fix limit_to_extruder for skirt_brim_extruder --- resources/definitions/fdmprinter.def.json | 27 ++++++++++++----------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 7cbea36d1f..bebcec2653 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -5479,9 +5479,9 @@ "maximum_value_warning": "10", "maximum_value": "0.5 * min(machine_width, machine_depth) / skirt_brim_line_width", "enabled": "resolveOrValue('adhesion_type') == 'skirt'", + "limit_to_extruder": "skirt_brim_extruder_nr", "settable_per_mesh": false, - "settable_per_extruder": true, - "limit_to_extruder": "skirt_brim_extruder_nr" + "settable_per_extruder": true }, "skirt_gap": { @@ -5493,9 +5493,9 @@ "minimum_value_warning": "max(extruderValues('machine_nozzle_size'))", "maximum_value_warning": "10", "enabled": "resolveOrValue('adhesion_type') == 'skirt'", + "limit_to_extruder": "skirt_brim_extruder_nr", "settable_per_mesh": false, - "settable_per_extruder": true, - "limit_to_extruder": "skirt_brim_extruder_nr" + "settable_per_extruder": true }, "skirt_brim_minimal_length": { @@ -5508,6 +5508,7 @@ "minimum_value_warning": "25", "maximum_value_warning": "2500", "enabled": "resolveOrValue('adhesion_type') == 'skirt' or resolveOrValue('adhesion_type') == 'brim' or resolveOrValue('prime_tower_brim_enable')", + "limit_to_extruder": "skirt_brim_extruder_nr", "settable_per_mesh": false, "settable_per_extruder": true }, @@ -5521,9 +5522,9 @@ "minimum_value": "0.0", "maximum_value_warning": "50.0", "enabled": "resolveOrValue('adhesion_type') == 'brim' or resolveOrValue('prime_tower_brim_enable')", + "limit_to_extruder": "skirt_brim_extruder_nr", "settable_per_mesh": false, "settable_per_extruder": true, - "limit_to_extruder": "skirt_brim_extruder_nr", "children": { "brim_line_count": @@ -5536,9 +5537,9 @@ "maximum_value_warning": "50 / skirt_brim_line_width", "value": "math.ceil(brim_width / (skirt_brim_line_width * initial_layer_line_width_factor / 100.0))", "enabled": "resolveOrValue('adhesion_type') == 'brim' or resolveOrValue('prime_tower_brim_enable')", + "limit_to_extruder": "skirt_brim_extruder_nr", "settable_per_mesh": false, - "settable_per_extruder": true, - "limit_to_extruder": "skirt_brim_extruder_nr" + "settable_per_extruder": true } } }, @@ -5552,9 +5553,9 @@ "minimum_value": "0", "maximum_value_warning": "skirt_brim_line_width", "enabled": "resolveOrValue('adhesion_type') == 'brim'", + "limit_to_extruder": "skirt_brim_extruder_nr", "settable_per_mesh": true, - "settable_per_extruder": true, - "limit_to_extruder": "skirt_brim_extruder_nr" + "settable_per_extruder": true }, "brim_replaces_support": { @@ -5563,9 +5564,9 @@ "type": "bool", "default_value": true, "enabled": "resolveOrValue('adhesion_type') == 'brim' and (support_enable or support_meshes_present)", + "limit_to_extruder": "skirt_brim_extruder_nr", "settable_per_mesh": false, - "settable_per_extruder": true, - "limit_to_extruder": "support_infill_extruder_nr" + "settable_per_extruder": true }, "brim_outside_only": { @@ -5574,9 +5575,9 @@ "type": "bool", "default_value": true, "enabled": "resolveOrValue('adhesion_type') == 'brim'", + "limit_to_extruder": "skirt_brim_extruder_nr", "settable_per_mesh": false, - "settable_per_extruder": true, - "limit_to_extruder": "skirt_brim_extruder_nr" + "settable_per_extruder": true }, "raft_margin": { From fb8787f7bd397d088c96bf664211fe63ba6de345 Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Fri, 18 Feb 2022 15:29:54 +0100 Subject: [PATCH 008/161] fix: fix wrong placement of prime tower disallowed area The prime tower should no longer be displaced by the brim width --- cura/BuildVolume.py | 9 --------- 1 file changed, 9 deletions(-) diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py index d44347bc0b..a2ffa404f7 100755 --- a/cura/BuildVolume.py +++ b/cura/BuildVolume.py @@ -868,15 +868,6 @@ class BuildVolume(SceneNode): prime_tower_x = prime_tower_x - machine_width / 2 #Offset by half machine_width and _depth to put the origin in the front-left. prime_tower_y = prime_tower_y + machine_depth / 2 - if skirt_brim_extruder is not None and self._global_container_stack.getProperty("prime_tower_brim_enable", "value") and self._global_container_stack.getProperty("adhesion_type", "value") != "raft": - brim_size = ( - skirt_brim_extruder.getProperty("brim_line_count", "value") * - skirt_brim_extruder.getProperty("skirt_brim_line_width", "value") / 100.0 * - skirt_brim_extruder.getProperty("initial_layer_line_width_factor", "value") - ) - prime_tower_x -= brim_size - prime_tower_y += brim_size - radius = prime_tower_size / 2 prime_tower_area = Polygon.approximatedCircle(radius, num_segments = 24) prime_tower_area = prime_tower_area.translate(prime_tower_x - radius, prime_tower_y - radius) From d9282eabdda51e95ed0a1e0b2d7f46ada71a1ca5 Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Thu, 17 Mar 2022 10:07:00 +0100 Subject: [PATCH 009/161] brim_inside_margin user setting it allows for removing the brim inside holes completely if set to a high value, or just keep it a small distance away from internal holes --- resources/definitions/fdmprinter.def.json | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index bebcec2653..1499c8ed5e 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -5579,6 +5579,19 @@ "settable_per_mesh": false, "settable_per_extruder": true }, + "brim_inside_margin": + { + "label": "Brim Inside Avoid Margin", + "description": "If brim is only on outside then parts fully enclosed inside another part will get a brim which might overlap with the internal holes of the outer part. This setting controls how far to stay away from those internal holes. Set to a high value to prevent any brim from being generated for parts enclosed within the holes of other parts.", + "unit": "mm", + "type": "float", + "default_value": 5, + "minimum_value": "0", + "enabled": "resolveOrValue('adhesion_type') == 'brim' and any(extruderValues('brim_outside_only'))", + "limit_to_extruder": "skirt_brim_extruder_nr", + "settable_per_mesh": false, + "settable_per_extruder": true + }, "raft_margin": { "label": "Raft Extra Margin", From 4d146e882e4b362d442d35d55cf390b554a17383 Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Thu, 17 Mar 2022 14:39:24 +0100 Subject: [PATCH 010/161] remove skirt/brim adhesion size constraint it is handled by CuraEngine now. --- cura/BuildVolume.py | 54 ++------------------------------------------- 1 file changed, 2 insertions(+), 52 deletions(-) diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py index a2ffa404f7..38f8cc84f0 100755 --- a/cura/BuildVolume.py +++ b/cura/BuildVolume.py @@ -1090,60 +1090,10 @@ class BuildVolume(SceneNode): if adhesion_type is None: adhesion_type = container_stack.getProperty("adhesion_type", "value") - # Skirt_brim_line_width is a bit of an odd one out. The primary bit of the skirt/brim is printed - # with the adhesion extruder, but it also prints one extra line by all other extruders. As such, the - # setting does *not* have a limit_to_extruder setting (which means that we can't ask the global extruder what - # the value is. - - # Use brim width if brim is enabled OR the prime tower has a brim. - if adhesion_type == "brim": - skirt_brim_extruder_nr = self._global_container_stack.getProperty("skirt_brim_extruder_nr", "value") - bed_adhesion_size = -999 - for extruder_stack in used_extruders: - extruder_nr = int(extruder_stack.getProperty("extruder_nr", "value")) - if extruder_nr == skirt_brim_extruder_nr or int(skirt_brim_extruder_nr) == -1: - initial_layer_line_width_factor = extruder_stack.getProperty("initial_layer_line_width_factor", "value") - brim_line_count = extruder_stack.getProperty("brim_line_count", "value") - skirt_brim_line_width = extruder_stack.getProperty("skirt_brim_line_width", "value") - brim_gap = extruder_stack.getProperty("brim_gap", "value") - bed_adhesion_size_here = brim_gap + skirt_brim_line_width * brim_line_count * initial_layer_line_width_factor / 100.0 - # We don't create an additional line for the extruder we're printing the brim with. - bed_adhesion_size_here -= skirt_brim_line_width * initial_layer_line_width_factor / 100.0 - bed_adhesion_size = max(bed_adhesion_size, bed_adhesion_size_here) - - if bed_adhesion_size == -999: - Logger.warning(f"Couldn't find skirt/brim extruder among used extruders.") - - for extruder_stack in used_extruders: - bed_adhesion_size += extruder_stack.getProperty("skirt_brim_line_width", "value") * extruder_stack.getProperty("initial_layer_line_width_factor", "value") / 100.0 - elif adhesion_type == "skirt": - skirt_brim_extruder_nr = self._global_container_stack.getProperty("skirt_brim_extruder_nr", "value") - try: - skirt_brim_stack = self._global_container_stack.extruderList[int(skirt_brim_extruder_nr)] - except IndexError: - Logger.warning( - f"Couldn't find extruder with index '{skirt_brim_extruder_nr}', defaulting to 0 instead.") - skirt_brim_stack = self._global_container_stack.extruderList[0] - skirt_brim_line_width = skirt_brim_stack.getProperty("skirt_brim_line_width", "value") - - initial_layer_line_width_factor = skirt_brim_stack.getProperty("initial_layer_line_width_factor", "value") - skirt_distance = skirt_brim_stack.getProperty("skirt_gap", "value") - skirt_line_count = skirt_brim_stack.getProperty("skirt_line_count", "value") - - bed_adhesion_size = skirt_distance + ( - skirt_brim_line_width * skirt_line_count) * initial_layer_line_width_factor / 100.0 - - for extruder_stack in used_extruders: - bed_adhesion_size += extruder_stack.getProperty("skirt_brim_line_width", "value") * extruder_stack.getProperty("initial_layer_line_width_factor", "value") / 100.0 - - # We don't create an additional line for the extruder we're printing the skirt with. - bed_adhesion_size -= skirt_brim_line_width * initial_layer_line_width_factor / 100.0 - elif adhesion_type == "raft": + if adhesion_type == "raft": bed_adhesion_size = self._global_container_stack.getProperty("raft_margin", "value") # Should refer to the raft extruder if set. - elif adhesion_type == "none": + else: # raft, brim or skirt. Those last two are handled by CuraEngine. bed_adhesion_size = 0 - else: - raise Exception("Unknown bed adhesion type. Did you forget to update the build volume calculations for your new bed adhesion type?") max_length_available = 0.5 * min( self._global_container_stack.getProperty("machine_width", "value"), From 6da67e3d82b37da365287c8fcdfdf1b3315b0ca1 Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Thu, 17 Mar 2022 14:41:13 +0100 Subject: [PATCH 011/161] remove special case for prime tower brim disallowed area It's now handled in CuraEngine --- cura/BuildVolume.py | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py index 38f8cc84f0..a0710245c9 100755 --- a/cura/BuildVolume.py +++ b/cura/BuildVolume.py @@ -818,9 +818,6 @@ class BuildVolume(SceneNode): break if prime_tower_collision: # Already found a collision. break - if self._global_container_stack.getProperty("prime_tower_brim_enable", "value") and self._global_container_stack.getProperty("adhesion_type", "value") != "raft": - brim_size = self._calculateBedAdhesionSize(used_extruders, "brim") - prime_tower_areas[extruder_id][area_index] = prime_tower_area.getMinkowskiHull(Polygon.approximatedCircle(brim_size, num_segments = 24)) if not prime_tower_collision: result_areas[extruder_id].extend(prime_tower_areas[extruder_id]) result_areas_no_brim[extruder_id].extend(prime_tower_areas[extruder_id]) @@ -1076,7 +1073,7 @@ class BuildVolume(SceneNode): all_values[i] = 0 return all_values - def _calculateBedAdhesionSize(self, used_extruders, adhesion_override = None): + def _calculateBedAdhesionSize(self, used_extruders): """Get the bed adhesion size for the global container stack and used extruders :param adhesion_override: override adhesion type. @@ -1086,9 +1083,7 @@ class BuildVolume(SceneNode): return None container_stack = self._global_container_stack - adhesion_type = adhesion_override - if adhesion_type is None: - adhesion_type = container_stack.getProperty("adhesion_type", "value") + adhesion_type = container_stack.getProperty("adhesion_type", "value") if adhesion_type == "raft": bed_adhesion_size = self._global_container_stack.getProperty("raft_margin", "value") # Should refer to the raft extruder if set. From 91a5d154bc645c762a615e82d6d63878144dd122 Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Thu, 17 Mar 2022 15:27:41 +0100 Subject: [PATCH 012/161] allow any material to set the brim extruder to not overridden --- resources/definitions/fdmprinter.def.json | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 1499c8ed5e..3ae93103a6 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -5431,6 +5431,7 @@ "default_value": "0", "value": "adhesion_extruder_nr", "enabled": "extruders_enabled_count > 1 and (resolveOrValue('adhesion_type') == 'skirt' or resolveOrValue('adhesion_type') == 'brim' or resolveOrValue('prime_tower_brim_enable'))", + "resolve": "'-1' if '-1' in extruderValues('skirt_brim_extruder_nr') else adhesion_extruder_nr", "settable_per_mesh": false, "settable_per_extruder": false }, From fabaf2026de43309609a315dedd2f370fc2c4e56 Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Fri, 18 Mar 2022 09:55:02 +0100 Subject: [PATCH 013/161] reduce testing of bed adhesion size --- tests/TestBuildVolume.py | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/tests/TestBuildVolume.py b/tests/TestBuildVolume.py index 9a1c29da6c..e4b303e68a 100644 --- a/tests/TestBuildVolume.py +++ b/tests/TestBuildVolume.py @@ -86,12 +86,12 @@ class TestCalculateBedAdhesionSize: ({"adhesion_type": {"value": "skirt"}}, 0), ({"adhesion_type": {"value": "raft"}}, 0), ({"adhesion_type": {"value": "none"}}, 0), - ({"adhesion_type": {"value": "skirt"}, "skirt_line_count": {"value": 2}, "initial_layer_line_width_factor": {"value": 1}, "skirt_brim_line_width": {"value": 2}}, 0.02), + ({"adhesion_type": {"value": "skirt"}, "skirt_line_count": {"value": 2}, "initial_layer_line_width_factor": {"value": 1}, "skirt_brim_line_width": {"value": 2}}, 0), # Even though it's marked as skirt, it should behave as a brim as the prime tower has a brim (skirt line count is still at 0!) - ({"adhesion_type": {"value": "skirt"}, "prime_tower_brim_enable": {"value": True}, "skirt_brim_line_width": {"value": 2}, "initial_layer_line_width_factor": {"value": 3}}, -0.06), + ({"adhesion_type": {"value": "skirt"}, "prime_tower_brim_enable": {"value": True}, "skirt_brim_line_width": {"value": 2}, "initial_layer_line_width_factor": {"value": 3}}, 0), ({"brim_line_count": {"value": 1}, "skirt_brim_line_width": {"value": 2}, "initial_layer_line_width_factor": {"value": 3}}, 0), - ({"brim_line_count": {"value": 2}, "skirt_brim_line_width": {"value": 2}, "initial_layer_line_width_factor": {"value": 3}}, 0.06), - ({"brim_line_count": {"value": 9000000}, "skirt_brim_line_width": {"value": 90000}, "initial_layer_line_width_factor": {"value": 9000}}, 100), # Clamped at half the max size of buildplate + ({"brim_line_count": {"value": 2}, "skirt_brim_line_width": {"value": 2}, "initial_layer_line_width_factor": {"value": 3}}, 0), + ({"brim_line_count": {"value": 9000000}, "skirt_brim_line_width": {"value": 90000}, "initial_layer_line_width_factor": {"value": 9000}}, 0), # Clamped at half the max size of buildplate ]) def test_singleExtruder(self, build_volume: BuildVolume, setting_dict, result): self.createAndSetGlobalStack(build_volume) @@ -106,14 +106,6 @@ class TestCalculateBedAdhesionSize: with patch.dict(self.setting_property_dict, patched_dictionary): assert build_volume._calculateBedAdhesionSize([]) == result - def test_unknownBedAdhesion(self, build_volume: BuildVolume): - self.createAndSetGlobalStack(build_volume) - patched_dictionary = self.setting_property_dict.copy() - patched_dictionary.update({"adhesion_type": {"value": "OMGZOMGBBQ"}}) - with patch.dict(self.setting_property_dict, patched_dictionary): - with pytest.raises(Exception): - build_volume._calculateBedAdhesionSize([]) - class TestComputeDisallowedAreasStatic: setting_property_dict = {"machine_disallowed_areas": {"value": [[[-200, 112.5], [ -82, 112.5], [ -84, 102.5], [-115, 102.5]]]}, "machine_width": {"value": 200}, From 2ef483680263cd7d4a0f503d8b327e0758f4bc6a Mon Sep 17 00:00:00 2001 From: Dragos Circa Date: Mon, 28 Mar 2022 13:04:24 +0300 Subject: [PATCH 014/161] Update PauseAtHeight.py Change M18 to M84, add beep option and allow newlines in "Additional GCODE" fields --- .../scripts/PauseAtHeight.py | 59 ++++++++++++++----- 1 file changed, 43 insertions(+), 16 deletions(-) diff --git a/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py b/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py index b31b8efa7c..1511179d71 100644 --- a/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py +++ b/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py @@ -58,16 +58,25 @@ class PauseAtHeight(Script): "default_value": "marlin", "value": "\\\"griffin\\\" if machine_gcode_flavor==\\\"Griffin\\\" else \\\"reprap\\\" if machine_gcode_flavor==\\\"RepRap (RepRap)\\\" else \\\"repetier\\\" if machine_gcode_flavor==\\\"Repetier\\\" else \\\"bq\\\" if \\\"BQ\\\" in machine_name or \\\"Flying Bear Ghost 4S\\\" in machine_name else \\\"marlin\\\"" }, + "hold_steppers_on": + { + "label": "Keep motors engaged", + "description": "Keep the steppers engaged to allow change of filament without moving the head. Applying too much force will move the head/bed anyway", + "type": "bool", + "default_value": true, + "enabled": "pause_method != \\\"griffin\\\"" + }, "disarm_timeout": { "label": "Disarm timeout", - "description": "After this time steppers are going to disarm (meaning that they can easily lose their positions). Set this to 0 if you don't want to set any duration.", + "description": "After this time steppers are going to disarm (meaning that they can easily lose their positions). Set this to 0 if you don't want to set any duration and disarm immediately.", "type": "int", - "value": "0", + "value": "60", "minimum_value": "0", "minimum_value_warning": "0", "maximum_value_warning": "1800", - "unit": "s" + "unit": "s", + "enabled": "hold_steppers_on" }, "head_park_enabled": { @@ -192,6 +201,22 @@ class PauseAtHeight(Script): "default_value": "RepRap (Marlin/Sprinter)", "enabled": false }, + "beep_at_pause": + { + "label": "Beep at pause", + "description": "Make a beep when pausing", + "type": "bool", + "default_value": true + }, + "beep_length": + { + "label": "Beep length", + "description": "How much should the beep last", + "type": "int", + "default_value": "1000", + "unit": "ms", + "enabled": "beep_at_pause" + }, "custom_gcode_before_pause": { "label": "G-code Before Pause", @@ -242,6 +267,7 @@ class PauseAtHeight(Script): pause_at = self.getSettingValueByKey("pause_at") pause_height = self.getSettingValueByKey("pause_height") pause_layer = self.getSettingValueByKey("pause_layer") + hold_steppers_on = self.getSettingValueByKey("hold_steppers_on") disarm_timeout = self.getSettingValueByKey("disarm_timeout") retraction_amount = self.getSettingValueByKey("retraction_amount") retraction_speed = self.getSettingValueByKey("retraction_speed") @@ -260,6 +286,8 @@ class PauseAtHeight(Script): display_text = self.getSettingValueByKey("display_text") gcode_before = self.getSettingValueByKey("custom_gcode_before_pause") gcode_after = self.getSettingValueByKey("custom_gcode_after_pause") + beep_at_pause = self.getSettingValueByKey("beep_at_pause") + beep_length = self.getSettingValueByKey("beep_length") pause_method = self.getSettingValueByKey("pause_method") pause_command = { @@ -437,19 +465,26 @@ class PauseAtHeight(Script): prepend_gcode += "M117 " + display_text + "\n" # Set the disarm timeout - if disarm_timeout > 0: - prepend_gcode += self.putValue(M = 18, S = disarm_timeout) + " ; Set the disarm timeout\n" + if hold_steppers_on: + prepend_gcode += self.putValue(M = 84, S = 3600) + " ; Keep steppers engaged for 1h\n" + elif disarm_timeout > 0: + prepend_gcode += self.putValue(M = 84, S = disarm_timeout) + " ; Set the disarm timeout\n" + + # Beep at pause + if beep_at_pause: + prepend_gcode += self.putValue(M = 300, S = 440, P = beep_length) + " ; Beep\n" + # Set a custom GCODE section before pause if gcode_before: - prepend_gcode += gcode_before + "\n" + prepend_gcode += gcode_before.replace(";","\n") + "\n" # Wait till the user continues printing prepend_gcode += pause_command + " ; Do the actual pause\n" # Set a custom GCODE section before pause if gcode_after: - prepend_gcode += gcode_after + "\n" + prepend_gcode += gcode_after.replace(";","\n") + "\n" if pause_method == "repetier": #Push the filament back, @@ -479,15 +514,7 @@ class PauseAtHeight(Script): else: Logger.log("w", "No previous feedrate found in gcode, feedrate for next layer(s) might be incorrect") - extrusion_mode_string = "absolute" - extrusion_mode_numeric = 82 - - relative_extrusion = Application.getInstance().getGlobalContainerStack().getProperty("relative_extrusion", "value") - if relative_extrusion: - extrusion_mode_string = "relative" - extrusion_mode_numeric = 83 - - prepend_gcode += self.putValue(M = extrusion_mode_numeric) + " ; switch back to " + extrusion_mode_string + " E values\n" + prepend_gcode += self.putValue(M = 82) + "\n" # reset extrude value to pre pause value prepend_gcode += self.putValue(G = 92, E = current_e) + "\n" From c8e33a5188a636440b7ed8a5184f672ec396773d Mon Sep 17 00:00:00 2001 From: Dragos Circa Date: Mon, 28 Mar 2022 13:14:08 +0300 Subject: [PATCH 015/161] Update PauseAtHeight.py Enable disarm only if hold steppers is disabled --- plugins/PostProcessingPlugin/scripts/PauseAtHeight.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py b/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py index 1511179d71..ab69fe2379 100644 --- a/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py +++ b/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py @@ -71,12 +71,12 @@ class PauseAtHeight(Script): "label": "Disarm timeout", "description": "After this time steppers are going to disarm (meaning that they can easily lose their positions). Set this to 0 if you don't want to set any duration and disarm immediately.", "type": "int", - "value": "60", + "value": "0", "minimum_value": "0", "minimum_value_warning": "0", "maximum_value_warning": "1800", "unit": "s", - "enabled": "hold_steppers_on" + "enabled": "not hold_steppers_on" }, "head_park_enabled": { From 17ce499f717abcccd1add583a67da0cd6efbab72 Mon Sep 17 00:00:00 2001 From: Tim Kuipers Date: Tue, 8 Feb 2022 16:15:56 +0100 Subject: [PATCH 016/161] interlocking settings --- resources/definitions/fdmprinter.def.json | 75 +++++++++++++++++++++++ 1 file changed, 75 insertions(+) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 0c939e03f2..a53dc9122e 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -6259,6 +6259,81 @@ "settable_per_mesh": false, "settable_per_extruder": false }, + "interlocking_enable": + { + "label": "Generate Interlocking Structure", + "description": "Whether to generate a structure at the interface between two models of a different material in order to improve the adhesion. The structure consists of cells of horizontal beams with alternating direction which connect to each other over the Z direction in order to interlock with the beams of the other material.", + "type": "bool", + "enabled": "extruders_enabled_count > 1", + "default_value": false, + "resolve": "(extruders_enabled_count > 1) and any(extruderValues('interlocking_enable'))", + "settable_per_mesh": false, + "settable_per_extruder": false + }, + "interlocking_beam_width": + { + "label": "Interlocking Beam Width", + "description": "The width of the beams of this material in the interlocking structure.", + "type": "float", + "unit": "mm", + "enabled": "extruders_enabled_count > 1 and resolveOrValue('interlocking_enable')", + "default_value": 0.8, + "value": "2 * wall_line_width_0", + "minimum_value": "0.001", + "maximum_value": "min(0.5 * machine_width, 0.5 * machine_depth)", + "maximum_value_warning": "max(extruderValues('wall_line_width_0')) * 6", + "settable_per_mesh": true, + "settable_per_extruder": true + }, + "interlocking_orientation": + { + "label": "Interlocking Structure Orientation", + "description": "The direction of the beams of the interlocking structure in the XY plane as a rotation about the Z axis.", + "unit": "°", + "type": "float", + "enabled": "extruders_enabled_count > 1 and resolveOrValue('interlocking_enable')", + "default_value": 22.5, + "resolve": "min(extruderValues('interlocking_orientation'))", + "settable_per_mesh": false, + "settable_per_extruder": false + }, + "interlocking_beam_layer_count": + { + "label": "Interlocking Beam Layer Count", + "description": "The height of the beams of the interlocking structure as measured in number of layers. Less layers is stronger, but more prone to manufacturing defects.", + "type": "int", + "enabled": "extruders_enabled_count > 1 and resolveOrValue('interlocking_enable')", + "default_value": 2, + "minimum_value": "1", + "resolve": "max(extruderValues('interlocking_beam_layer_count'))", + "settable_per_mesh": false, + "settable_per_extruder": false + }, + "interlocking_depth": + { + "label": "Interlocking Depth", + "description": "The number of cells along the depth of the interface between two models where an interlocking structure is to be generated. Less cells is better, but too little cells can cause the not to be connected properly, which reduces the adhesion performance of the interlocking structure.", + "type": "int", + "enabled": "extruders_enabled_count > 1 and resolveOrValue('interlocking_enable')", + "default_value": 2, + "minimum_value": "1", + "resolve": "max(extruderValues('interlocking_depth'))", + "settable_per_mesh": false, + "settable_per_extruder": false + }, + "interlocking_boundary_avoidance": + { + "label": "Interlocking Boundary Avoidance", + "description": "The distance close to the boundary of the print where not to generate an interlocking structure as measued in number of cells times 2. If set to a value lower than the Inerlocking Depth then the interlocking structure can become visible on the outside of the print near the interfaces where two models meet.", + "type": "int", + "enabled": "extruders_enabled_count > 1 and resolveOrValue('interlocking_enable')", + "default_value": 3, + "minimum_value": "0", + "resolve": "max(extruderValues('interlocking_boundary_avoidance'))", + "minimum_value_warning": "resolveOrValue('interlocking_depth')", + "settable_per_mesh": false, + "settable_per_extruder": false + }, "switch_extruder_retraction_amount": { "label": "Nozzle Switch Retraction Distance", From f3b9c73d0f00a56ef919e54e7deb48b7be34f1da Mon Sep 17 00:00:00 2001 From: Paul Kuiper <46715907+pkuiper-ultimaker@users.noreply.github.com> Date: Wed, 5 Oct 2022 21:03:17 +0200 Subject: [PATCH 017/161] Create a resolve function on the "support_enable" setting such that underlying extruders (and thus also intent profiles) can enable support. Relates to PP-251 --- resources/definitions/fdmprinter.def.json | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index cc49213a6c..b559c54a91 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -4435,6 +4435,7 @@ "description": "Generate structures to support parts of the model which have overhangs. Without these structures, such parts would collapse during printing.", "type": "bool", "default_value": false, + "resolve": "any(extruderValues('support_enable'))", "settable_per_mesh": true, "settable_per_extruder": false }, From 78ee77c3615aaba395d5e91131696d26767e39cb Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Tue, 18 Oct 2022 12:05:04 +0200 Subject: [PATCH 018/161] update .mo files --- resources/i18n/de_DE/cura.po | 46 +- resources/i18n/de_DE/fdmextruder.def.json.po | 7 +- resources/i18n/de_DE/fdmprinter.def.json.po | 46 +- resources/i18n/es_ES/cura.po | 46 +- resources/i18n/es_ES/fdmextruder.def.json.po | 7 +- resources/i18n/es_ES/fdmprinter.def.json.po | 47 +- resources/i18n/fr_FR/cura.po | 46 +- resources/i18n/fr_FR/fdmextruder.def.json.po | 7 +- resources/i18n/fr_FR/fdmprinter.def.json.po | 48 +- resources/i18n/it_IT/cura.po | 2608 +++++++------- resources/i18n/it_IT/fdmextruder.def.json.po | 93 +- resources/i18n/it_IT/fdmprinter.def.json.po | 3249 +++++++++--------- resources/i18n/ja_JP/cura.po | 46 +- resources/i18n/ja_JP/fdmextruder.def.json.po | 7 +- resources/i18n/ja_JP/fdmprinter.def.json.po | 32 +- resources/i18n/ko_KR/cura.po | 10 +- resources/i18n/ko_KR/fdmextruder.def.json.po | 7 +- resources/i18n/ko_KR/fdmprinter.def.json.po | 7 +- resources/i18n/nl_NL/cura.po | 46 +- resources/i18n/nl_NL/fdmextruder.def.json.po | 7 +- resources/i18n/nl_NL/fdmprinter.def.json.po | 44 +- resources/i18n/pt_PT/cura.po | 42 +- resources/i18n/pt_PT/fdmextruder.def.json.po | 7 +- resources/i18n/pt_PT/fdmprinter.def.json.po | 46 +- resources/i18n/ru_RU/cura.po | 46 +- resources/i18n/ru_RU/fdmextruder.def.json.po | 7 +- resources/i18n/ru_RU/fdmprinter.def.json.po | 45 +- resources/i18n/tr_TR/cura.po | 46 +- resources/i18n/tr_TR/fdmextruder.def.json.po | 7 +- resources/i18n/tr_TR/fdmprinter.def.json.po | 44 +- resources/i18n/zh_CN/cura.po | 46 +- resources/i18n/zh_CN/fdmextruder.def.json.po | 7 +- resources/i18n/zh_CN/fdmprinter.def.json.po | 31 +- 33 files changed, 3399 insertions(+), 3431 deletions(-) diff --git a/resources/i18n/de_DE/cura.po b/resources/i18n/de_DE/cura.po index bb6faa141c..53a5e1e55a 100644 --- a/resources/i18n/de_DE/cura.po +++ b/resources/i18n/de_DE/cura.po @@ -1,10 +1,12 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. # +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-27 14:50+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -1001,17 +1003,17 @@ msgstr "Mehr erfahren" msgctxt "@info:status" msgid "" "You will receive a confirmation via email when the print job is approved" -msgstr "You will receive a confirmation via email when the print job is approved" +msgstr "Sie erhalten eine Bestätigung per E-Mail, wenn der Druckauftrag genehmigt wurde." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:19 msgctxt "@info:title" msgid "The print job was successfully submitted" -msgstr "The print job was successfully submitted" +msgstr "Der Druckauftrag wurde erfolgreich übermittelt." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:22 msgctxt "@action" msgid "Manage print jobs" -msgstr "Manage print jobs" +msgstr "Druckaufträge verwalten" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:15 msgctxt "@info:status" @@ -1330,7 +1332,7 @@ msgstr "Ultimaker Format Package" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py:19 msgctxt "@text Placeholder for the username if it has been deleted" msgid "deleted user" -msgstr "deleted user" +msgstr "gelöschter Benutzer" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeProfileReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:14 @@ -2504,12 +2506,12 @@ msgstr "Zuerst verfügbar" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:117 msgctxt "@info" msgid "Monitor your printers from everywhere using Ultimaker Digital Factory" -msgstr "Monitor your printers from everywhere using Ultimaker Digital Factory" +msgstr "Überwachen Sie Ihre Drucker standortunabhängig mit Ultimaker Digital Factory." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:129 msgctxt "@button" msgid "View printers in Digital Factory" -msgstr "View printers in Digital Factory" +msgstr "Drucker in der Digital Factory anzeigen" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:44 msgctxt "@title:window" @@ -3355,7 +3357,7 @@ msgctxt "@label" msgid "" "The material used in this project is currently not installed in Cura.
Install the material profile and reopen the project." -msgstr "The material used in this project is currently not installed in Cura.
Install the material profile and reopen the project." +msgstr "Das in diesem Projekt verwendete Material ist derzeit nicht in Cura installiert.
Installieren Sie das Materialprofil und öffnen Sie das Projekt erneut." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:515 msgctxt "@action:button" @@ -4178,12 +4180,12 @@ msgstr "Automatisch schneiden" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:340 msgctxt "@info:tooltip" msgid "Show an icon and notifications in the system notification area." -msgstr "Show an icon and notifications in the system notification area." +msgstr "Symbol und Benachrichtigungen im Infobereich des Systems anzeigen." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:348 msgctxt "@option:check" msgid "Add icon to system tray *" -msgstr "Add icon to system tray *" +msgstr "Symbol zur Taskleiste hinzufügen*" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:357 msgctxt "@label" @@ -5515,17 +5517,17 @@ msgstr "Sichtbarkeit einstellen verwalten..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:17 msgctxt "@title:window" msgid "Select Printer" -msgstr "Select Printer" +msgstr "Drucker auswählen" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:54 msgctxt "@title:label" msgid "Compatible Printers" -msgstr "Compatible Printers" +msgstr "Kompatible Drucker" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:94 msgctxt "@description" msgid "No compatible printers, that are currently online, where found." -msgstr "No compatible printers, that are currently online, where found." +msgstr "Es wurden keine kompatiblen Drucker gefunden, die derzeit online sind." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:16 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:635 @@ -5804,7 +5806,7 @@ msgstr "Support-Bibliothek für wissenschaftliche Berechnung" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:171 msgctxt "@Label Description for application dependency" msgid "Python Error tracking library" -msgstr "Python Error tracking library" +msgstr "Python-Fehlerverfolgungs-Bibliothek" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:172 msgctxt "@label Description for application dependency" @@ -5933,12 +5935,12 @@ msgstr "Damit werden Strukturen zur Unterstützung von Modellteilen mit Überhä #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:54 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is active and you overwrote some settings." -msgstr "%1 custom profile is active and you overwrote some settings." +msgstr "%1 benutzerdefiniertes Profil ist aktiv und einige Einstellungen wurden überschrieben." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:68 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is overriding some settings." -msgstr "%1 custom profile is overriding some settings." +msgstr "%1 benutzerdefiniertes Profil überschreibt einige Einstellungen." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:79 msgctxt "@info" @@ -6322,17 +6324,17 @@ msgstr "Drucker verwalten" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:34 msgctxt "@label" msgid "Hide all connected printers" -msgstr "Hide all connected printers" +msgstr "Alle verbundenen Drucker ausblenden" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:47 msgctxt "@label" msgid "Show all connected printers" -msgstr "Show all connected printers" +msgstr "Alle verbundenen Drucker anzeigen" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Other printers" -msgstr "Other printers" +msgstr "Andere Drucker" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:54 msgctxt "@label:PrintjobStatus" diff --git a/resources/i18n/de_DE/fdmextruder.def.json.po b/resources/i18n/de_DE/fdmextruder.def.json.po index 07417f095c..be2ab74a68 100644 --- a/resources/i18n/de_DE/fdmextruder.def.json.po +++ b/resources/i18n/de_DE/fdmextruder.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" diff --git a/resources/i18n/de_DE/fdmprinter.def.json.po b/resources/i18n/de_DE/fdmprinter.def.json.po index 2399108423..3624d70025 100644 --- a/resources/i18n/de_DE/fdmprinter.def.json.po +++ b/resources/i18n/de_DE/fdmprinter.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -1207,9 +1204,9 @@ msgid "" "propagate to the outside. However printing them later allows them to stack " "better when overhangs are printed. When there is an uneven amount of total " "innner walls, the 'center last line' is always printed last." -msgstr "Determines the order in which walls are printed. Printing outer walls earlier helps with dimensional accuracy, as faults from inner walls cannot propagate" -" to the outside. However printing them later allows them to stack better when overhangs are printed. When there is an uneven amount of total innner walls," -" the 'center last line' is always printed last." +msgstr "Bestimmt die Reihenfolge, in der die Wände gedruckt werden. Das frühe Drucken der Außenwände hilft bei der Maßgenauigkeit, da Fehler von Innenwänden nicht" +" an die Außenseite weitergegeben werden können. Wenn sie jedoch später gedruckt werden, ist ein Stapeldruck besser möglich, wenn Überhänge gedruckt werden." +" Bei einer ungeraden Gesamtzahl von Innenwänden wird die „mittlere letzte Linie“ immer zuletzt gedruckt." #: /fdmprinter.def.json msgctxt "inset_direction option inside_out" @@ -1284,9 +1281,10 @@ msgid "" "A higher Minimum Odd Wall Line Width leads to a higher maximum even wall " "line width. The maximum odd wall line width is calculated as 2 * Minimum " "Even Wall Line Width." -msgstr "The minimum line width for middle line gap filler polyline walls. This setting determines at which model thickness we switch from printing two wall lines," -" to printing two outer walls and a single central wall in the middle. A higher Minimum Odd Wall Line Width leads to a higher maximum even wall line width." -" The maximum odd wall line width is calculated as 2 * Minimum Even Wall Line Width." +msgstr "Die minimale Linienbreite für Polylinienwände mit Lücken in der mittleren Linie. Diese Einstellung legt fest, bei welcher Stärke im Modell ein Übergang" +" vom Druck zweier Wandlinien zum Druck zweier Außenwände und einer einzigen zentralen Wand in der Mitte erfolgt. Eine höhere minimale ungeradzahlige Wandlinienstärke" +" führt zu einer höheren maximalen geradzahligen Wandlinienstärke. Die maximale ungerade Wandlinienbreite wird berechnet als 2 x Minimale Wandlinienstärke" +" (geradzahlig)." #: /fdmprinter.def.json msgctxt "fill_outline_gaps label" @@ -3120,34 +3118,34 @@ msgstr "Fluss-Kompensation für die erste Schicht: Die auf der ersten Schicht ex #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 label" msgid "Initial Layer Inner Wall Flow" -msgstr "Initial Layer Inner Wall Flow" +msgstr "Innenwandfluss der ersten Schicht" #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 description" msgid "" "Flow compensation on wall lines for all wall lines except the outermost one, " "but only for the first layer" -msgstr "Flow compensation on wall lines for all wall lines except the outermost one, but only for the first layer" +msgstr "Durchflusskompensation an allen Wandlinien bis auf die äußere, aber nur für die erste Schicht." #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 label" msgid "Initial Layer Outer Wall Flow" -msgstr "Initial Layer Outer Wall Flow" +msgstr "Außenwandfluss der ersten Schicht" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 description" msgid "Flow compensation on the outermost wall line of the first layer." -msgstr "Flow compensation on the outermost wall line of the first layer." +msgstr "Durchflusskompensation an der äußersten Wandlinie der ersten Schicht." #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 label" msgid "Initial Layer Bottom Flow" -msgstr "Initial Layer Bottom Flow" +msgstr "Unterer Fluss der ersten Schicht" #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 description" msgid "Flow compensation on bottom lines of the first layer" -msgstr "Flow compensation on bottom lines of the first layer" +msgstr "Durchflusskompensation an den unteren Linien der ersten Schicht" #: /fdmprinter.def.json msgctxt "material_standby_temperature label" @@ -3458,14 +3456,15 @@ msgstr "Ermöglicht die Justierung der Druckkopfbeschleunigung. Eine Erhöhung d #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled label" msgid "Enable Travel Acceleration" -msgstr "Enable Travel Acceleration" +msgstr "Beschleunigung für Bewegung aktivieren" #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled description" msgid "" "Use a separate acceleration rate for travel moves. If disabled, travel moves " "will use the acceleration value of the printed line at their destination." -msgstr "Use a separate acceleration rate for travel moves. If disabled, travel moves will use the acceleration value of the printed line at their destination." +msgstr "Verwenden Sie eine separate Beschleunigungsrate für Bewegungen. Wenn diese Option deaktiviert ist, wird für Bewegungen der Beschleunigungswert der gedruckten" +" Linie an der Zielposition verwendet." #: /fdmprinter.def.json msgctxt "acceleration_print label" @@ -3677,14 +3676,15 @@ msgstr "Ermöglicht die Justierung der Ruckfunktion des Druckkopfes bei Änderun #: /fdmprinter.def.json msgctxt "jerk_travel_enabled label" msgid "Enable Travel Jerk" -msgstr "Enable Travel Jerk" +msgstr "Ruckfunktion für Bewegung aktivieren" #: /fdmprinter.def.json msgctxt "jerk_travel_enabled description" msgid "" "Use a separate jerk rate for travel moves. If disabled, travel moves will " "use the jerk value of the printed line at their destination." -msgstr "Use a separate jerk rate for travel moves. If disabled, travel moves will use the jerk value of the printed line at their destination." +msgstr "Verwenden Sie eine separate Ruckfunktionsrate für Bewegungen. Wenn diese Option deaktiviert ist, wird für Bewegungen der Ruckfunktionswert der gedruckten" +" Linie an der Zielposition verwendet." #: /fdmprinter.def.json msgctxt "jerk_print label" @@ -4547,14 +4547,14 @@ msgstr "Dies beschreibt den Durchmesser der dünnsten Äste der Baumstützstrukt #: /fdmprinter.def.json msgctxt "support_tree_max_diameter label" msgid "Tree Support Trunk Diameter" -msgstr "Tree Support Trunk Diameter" +msgstr "Stammdurchmesser der Baumstützstruktur" #: /fdmprinter.def.json msgctxt "support_tree_max_diameter description" msgid "" "The diameter of the widest branches of tree support. A thicker trunk is more " "sturdy; a thinner trunk takes up less space on the build plate." -msgstr "The diameter of the widest branches of tree support. A thicker trunk is more sturdy; a thinner trunk takes up less space on the build plate." +msgstr "Der Durchmesser der breitesten Äste der Baumstützstruktur. Ein dickerer Stamm ist robuster; ein dünnerer Stamm nimmt weniger Platz auf dem Druckbett ein." #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter_angle label" diff --git a/resources/i18n/es_ES/cura.po b/resources/i18n/es_ES/cura.po index 17d4629c7d..943158ee41 100644 --- a/resources/i18n/es_ES/cura.po +++ b/resources/i18n/es_ES/cura.po @@ -1,10 +1,12 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. # +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-27 14:50+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -1002,17 +1004,17 @@ msgstr "Más información" msgctxt "@info:status" msgid "" "You will receive a confirmation via email when the print job is approved" -msgstr "You will receive a confirmation via email when the print job is approved" +msgstr "Recibirá una confirmación por correo electrónico cuando se apruebe el trabajo de impresión" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:19 msgctxt "@info:title" msgid "The print job was successfully submitted" -msgstr "The print job was successfully submitted" +msgstr "El trabajo de impresión se ha enviado correctamente" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:22 msgctxt "@action" msgid "Manage print jobs" -msgstr "Manage print jobs" +msgstr "Gestionar trabajos de impresión" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:15 msgctxt "@info:status" @@ -1330,7 +1332,7 @@ msgstr "Paquete de formato Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py:19 msgctxt "@text Placeholder for the username if it has been deleted" msgid "deleted user" -msgstr "deleted user" +msgstr "usuario borrado" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeProfileReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:14 @@ -2505,12 +2507,12 @@ msgstr "Primera disponible" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:117 msgctxt "@info" msgid "Monitor your printers from everywhere using Ultimaker Digital Factory" -msgstr "Monitor your printers from everywhere using Ultimaker Digital Factory" +msgstr "Supervise sus impresoras desde cualquier lugar con Ultimaker Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:129 msgctxt "@button" msgid "View printers in Digital Factory" -msgstr "View printers in Digital Factory" +msgstr "Ver impresoras en Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:44 msgctxt "@title:window" @@ -3357,7 +3359,7 @@ msgctxt "@label" msgid "" "The material used in this project is currently not installed in Cura.
Install the material profile and reopen the project." -msgstr "The material used in this project is currently not installed in Cura.
Install the material profile and reopen the project." +msgstr "El material utilizado en este proyecto no está instalado actualmente en Cura.
Instale el perfil del material y vuelva a abrir el proyecto." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:515 msgctxt "@action:button" @@ -4179,12 +4181,12 @@ msgstr "Segmentar automáticamente" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:340 msgctxt "@info:tooltip" msgid "Show an icon and notifications in the system notification area." -msgstr "Show an icon and notifications in the system notification area." +msgstr "Mostrar un icono y notificaciones en el área de notificaciones del sistema." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:348 msgctxt "@option:check" msgid "Add icon to system tray *" -msgstr "Add icon to system tray *" +msgstr "Añadir icono a la bandeja del sistema *" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:357 msgctxt "@label" @@ -5516,17 +5518,17 @@ msgstr "Gestionar visibilidad de los ajustes..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:17 msgctxt "@title:window" msgid "Select Printer" -msgstr "Select Printer" +msgstr "Seleccionar impresora" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:54 msgctxt "@title:label" msgid "Compatible Printers" -msgstr "Compatible Printers" +msgstr "Impresoras compatibles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:94 msgctxt "@description" msgid "No compatible printers, that are currently online, where found." -msgstr "No compatible printers, that are currently online, where found." +msgstr "No se han encontrado impresoras compatibles que estén actualmente en línea." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:16 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:635 @@ -5805,7 +5807,7 @@ msgstr "Biblioteca de apoyo para cálculos científicos" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:171 msgctxt "@Label Description for application dependency" msgid "Python Error tracking library" -msgstr "Python Error tracking library" +msgstr "Biblioteca de seguimiento de errores de Python" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:172 msgctxt "@label Description for application dependency" @@ -5933,12 +5935,12 @@ msgstr "Generar estructuras para soportar piezas del modelo que tengan voladizos #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:54 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is active and you overwrote some settings." -msgstr "%1 custom profile is active and you overwrote some settings." +msgstr "el perfil personalizado %1 está activo y ha sobrescrito algunos ajustes." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:68 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is overriding some settings." -msgstr "%1 custom profile is overriding some settings." +msgstr "El perfil personalizado %1 está sobreescribiendo algunos ajustes." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:79 msgctxt "@info" @@ -6323,17 +6325,17 @@ msgstr "Administrar impresoras" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:34 msgctxt "@label" msgid "Hide all connected printers" -msgstr "Hide all connected printers" +msgstr "Ocultar todas las impresoras conectadas" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:47 msgctxt "@label" msgid "Show all connected printers" -msgstr "Show all connected printers" +msgstr "Mostrar todas las impresoras conectadas" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Other printers" -msgstr "Other printers" +msgstr "Otras impresoras" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:54 msgctxt "@label:PrintjobStatus" diff --git a/resources/i18n/es_ES/fdmextruder.def.json.po b/resources/i18n/es_ES/fdmextruder.def.json.po index ace11d3f73..6778f362c7 100644 --- a/resources/i18n/es_ES/fdmextruder.def.json.po +++ b/resources/i18n/es_ES/fdmextruder.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" diff --git a/resources/i18n/es_ES/fdmprinter.def.json.po b/resources/i18n/es_ES/fdmprinter.def.json.po index 189962db4f..bb8174bf28 100644 --- a/resources/i18n/es_ES/fdmprinter.def.json.po +++ b/resources/i18n/es_ES/fdmprinter.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -1210,9 +1207,9 @@ msgid "" "propagate to the outside. However printing them later allows them to stack " "better when overhangs are printed. When there is an uneven amount of total " "innner walls, the 'center last line' is always printed last." -msgstr "Determines the order in which walls are printed. Printing outer walls earlier helps with dimensional accuracy, as faults from inner walls cannot propagate" -" to the outside. However printing them later allows them to stack better when overhangs are printed. When there is an uneven amount of total innner walls," -" the 'center last line' is always printed last." +msgstr "Determina el orden de impresión de las paredes. La preimpresión de las paredes exteriores mejora la precisión dimensional ya que las fallas de las paredes" +" internas no pueden propagarse hacia el exterior. Sin embargo, si imprime más tarde, podrá apilarlos mejor cuando se impriman los voladizos. Cuando hay" +" una cantidad desigual de paredes interiores totales, la \"última línea central\" siempre se imprime al final." #: /fdmprinter.def.json msgctxt "inset_direction option inside_out" @@ -1289,9 +1286,10 @@ msgid "" "A higher Minimum Odd Wall Line Width leads to a higher maximum even wall " "line width. The maximum odd wall line width is calculated as 2 * Minimum " "Even Wall Line Width." -msgstr "The minimum line width for middle line gap filler polyline walls. This setting determines at which model thickness we switch from printing two wall lines," -" to printing two outer walls and a single central wall in the middle. A higher Minimum Odd Wall Line Width leads to a higher maximum even wall line width." -" The maximum odd wall line width is calculated as 2 * Minimum Even Wall Line Width." +msgstr "El ancho de línea mínimo para paredes de polilínea de relleno de hueco de línea intermedia. Este parámetro determina a partir de qué grosor de modelo pasamos" +" de imprimir dos líneas de paredes a imprimir dos paredes exteriores y una sola pared central en el medio. Un ancho mínimo más alto de la línea perimetral" +" impar conduce a un ancho máximo más alto de la línea perimetral par. El ancho máximo de línea perimetral impar se calcula como 2 * ancho mínimo de línea" +" perimetral par." #: /fdmprinter.def.json msgctxt "fill_outline_gaps label" @@ -3124,34 +3122,34 @@ msgstr "Compensación de flujo de la primera capa: la cantidad de material extru #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 label" msgid "Initial Layer Inner Wall Flow" -msgstr "Initial Layer Inner Wall Flow" +msgstr "Flujo de pared interior de la capa inicial" #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 description" msgid "" "Flow compensation on wall lines for all wall lines except the outermost one, " "but only for the first layer" -msgstr "Flow compensation on wall lines for all wall lines except the outermost one, but only for the first layer" +msgstr "Compensación de flujo en líneas de pared para todas las líneas excepto la más externa, pero solo para la primera capa" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 label" msgid "Initial Layer Outer Wall Flow" -msgstr "Initial Layer Outer Wall Flow" +msgstr "Flujo de pared exterior de la capa inicial" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 description" msgid "Flow compensation on the outermost wall line of the first layer." -msgstr "Flow compensation on the outermost wall line of the first layer." +msgstr "Compensación de flujo en la línea de pared más externa de la primera capa." #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 label" msgid "Initial Layer Bottom Flow" -msgstr "Initial Layer Bottom Flow" +msgstr "Flujo inferior de la capa inicial" #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 description" msgid "Flow compensation on bottom lines of the first layer" -msgstr "Flow compensation on bottom lines of the first layer" +msgstr "Compensación de flujo en las líneas inferiores de la primera capa" #: /fdmprinter.def.json msgctxt "material_standby_temperature label" @@ -3458,14 +3456,15 @@ msgstr "Permite ajustar la aceleración del cabezal de impresión. Aumentar las #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled label" msgid "Enable Travel Acceleration" -msgstr "Enable Travel Acceleration" +msgstr "Habilitar la aceleración de desplazamiento" #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled description" msgid "" "Use a separate acceleration rate for travel moves. If disabled, travel moves " "will use the acceleration value of the printed line at their destination." -msgstr "Use a separate acceleration rate for travel moves. If disabled, travel moves will use the acceleration value of the printed line at their destination." +msgstr "Utilice una tasa de aceleración independiente para los movimientos de desplazamiento. Si está deshabilitada, los movimientos de desplazamiento utilizarán" +" el valor de aceleración de la línea impresa en su destino." #: /fdmprinter.def.json msgctxt "acceleration_print label" @@ -3675,14 +3674,15 @@ msgstr "Permite ajustar el impulso del cabezal de impresión cuando la velocidad #: /fdmprinter.def.json msgctxt "jerk_travel_enabled label" msgid "Enable Travel Jerk" -msgstr "Enable Travel Jerk" +msgstr "Habilitar el impulso de desplazamiento" #: /fdmprinter.def.json msgctxt "jerk_travel_enabled description" msgid "" "Use a separate jerk rate for travel moves. If disabled, travel moves will " "use the jerk value of the printed line at their destination." -msgstr "Use a separate jerk rate for travel moves. If disabled, travel moves will use the jerk value of the printed line at their destination." +msgstr "Utilice una tasa de impulso independiente para los movimientos de desplazamiento. Si está deshabilitada, los movimientos de desplazamiento utilizarán el" +" valor de impulso de la línea impresa en su destino." #: /fdmprinter.def.json msgctxt "jerk_print label" @@ -4545,14 +4545,15 @@ msgstr "El diámetro de las ramas más finas del soporte en árbol. Cuanto más #: /fdmprinter.def.json msgctxt "support_tree_max_diameter label" msgid "Tree Support Trunk Diameter" -msgstr "Tree Support Trunk Diameter" +msgstr "Diámetro del tronco de soporte en árbol" #: /fdmprinter.def.json msgctxt "support_tree_max_diameter description" msgid "" "The diameter of the widest branches of tree support. A thicker trunk is more " "sturdy; a thinner trunk takes up less space on the build plate." -msgstr "The diameter of the widest branches of tree support. A thicker trunk is more sturdy; a thinner trunk takes up less space on the build plate." +msgstr "El diámetro de las ramas más anchas del soporte en árbol. Un tronco más grueso es más resistente; un tronco más delgado ocupa menos espacio en la placa" +" de impresión." #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter_angle label" diff --git a/resources/i18n/fr_FR/cura.po b/resources/i18n/fr_FR/cura.po index fd3a29a02c..ef78e258a2 100644 --- a/resources/i18n/fr_FR/cura.po +++ b/resources/i18n/fr_FR/cura.po @@ -1,10 +1,12 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. # +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-27 14:50+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -1001,17 +1003,17 @@ msgstr "En savoir plus" msgctxt "@info:status" msgid "" "You will receive a confirmation via email when the print job is approved" -msgstr "You will receive a confirmation via email when the print job is approved" +msgstr "Vous recevrez une confirmation par e-mail lorsque la tâche d'impression sera approuvée" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:19 msgctxt "@info:title" msgid "The print job was successfully submitted" -msgstr "The print job was successfully submitted" +msgstr "La tâche d'impression a bien été soumise" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:22 msgctxt "@action" msgid "Manage print jobs" -msgstr "Manage print jobs" +msgstr "Gérer les tâches d'impression" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:15 msgctxt "@info:status" @@ -1329,7 +1331,7 @@ msgstr "Ultimaker Format Package" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py:19 msgctxt "@text Placeholder for the username if it has been deleted" msgid "deleted user" -msgstr "deleted user" +msgstr "utilisateur supprimé" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeProfileReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:14 @@ -2505,12 +2507,12 @@ msgstr "Premier disponible" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:117 msgctxt "@info" msgid "Monitor your printers from everywhere using Ultimaker Digital Factory" -msgstr "Monitor your printers from everywhere using Ultimaker Digital Factory" +msgstr "Surveillez vos imprimantes à distance grâce à Ultimaker Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:129 msgctxt "@button" msgid "View printers in Digital Factory" -msgstr "View printers in Digital Factory" +msgstr "Afficher les imprimantes dans Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:44 msgctxt "@title:window" @@ -3357,7 +3359,7 @@ msgctxt "@label" msgid "" "The material used in this project is currently not installed in Cura.
Install the material profile and reopen the project." -msgstr "The material used in this project is currently not installed in Cura.
Install the material profile and reopen the project." +msgstr "Le matériau utilisé dans ce projet n'est actuellement pas installé dans Cura.
Installez le profil du matériau et rouvrez le projet." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:515 msgctxt "@action:button" @@ -4180,12 +4182,12 @@ msgstr "Découper automatiquement" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:340 msgctxt "@info:tooltip" msgid "Show an icon and notifications in the system notification area." -msgstr "Show an icon and notifications in the system notification area." +msgstr "Afficher une icône et des notifications dans la zone de notification du système." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:348 msgctxt "@option:check" msgid "Add icon to system tray *" -msgstr "Add icon to system tray *" +msgstr "Ajouter une icône à la barre de notification *" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:357 msgctxt "@label" @@ -5517,17 +5519,17 @@ msgstr "Gérer la visibilité des paramètres..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:17 msgctxt "@title:window" msgid "Select Printer" -msgstr "Select Printer" +msgstr "Sélectionner une imprimante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:54 msgctxt "@title:label" msgid "Compatible Printers" -msgstr "Compatible Printers" +msgstr "Imprimantes compatibles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:94 msgctxt "@description" msgid "No compatible printers, that are currently online, where found." -msgstr "No compatible printers, that are currently online, where found." +msgstr "Aucune imprimante compatible actuellement en ligne n'a été trouvée." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:16 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:635 @@ -5806,7 +5808,7 @@ msgstr "Prise en charge de la bibliothèque pour le calcul scientifique" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:171 msgctxt "@Label Description for application dependency" msgid "Python Error tracking library" -msgstr "Python Error tracking library" +msgstr "Bibliothèque de suivi des erreurs Python" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:172 msgctxt "@label Description for application dependency" @@ -5934,12 +5936,12 @@ msgstr "Générer des structures pour soutenir les parties du modèle qui possè #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:54 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is active and you overwrote some settings." -msgstr "%1 custom profile is active and you overwrote some settings." +msgstr "Le profil personnalisé %1 est actif et vous avez remplacé certains paramètres." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:68 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is overriding some settings." -msgstr "%1 custom profile is overriding some settings." +msgstr "Le profil personnalisé %1 remplace certains paramètres." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:79 msgctxt "@info" @@ -6325,17 +6327,17 @@ msgstr "Gérer les imprimantes" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:34 msgctxt "@label" msgid "Hide all connected printers" -msgstr "Hide all connected printers" +msgstr "Masquer toutes les imprimantes connectées" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:47 msgctxt "@label" msgid "Show all connected printers" -msgstr "Show all connected printers" +msgstr "Afficher toutes les imprimantes connectées" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Other printers" -msgstr "Other printers" +msgstr "Autres imprimantes" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:54 msgctxt "@label:PrintjobStatus" diff --git a/resources/i18n/fr_FR/fdmextruder.def.json.po b/resources/i18n/fr_FR/fdmextruder.def.json.po index 4520eee754..3702c6aac9 100644 --- a/resources/i18n/fr_FR/fdmextruder.def.json.po +++ b/resources/i18n/fr_FR/fdmextruder.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" diff --git a/resources/i18n/fr_FR/fdmprinter.def.json.po b/resources/i18n/fr_FR/fdmprinter.def.json.po index 576d539a9e..47c0d23bf0 100644 --- a/resources/i18n/fr_FR/fdmprinter.def.json.po +++ b/resources/i18n/fr_FR/fdmprinter.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -1208,9 +1205,9 @@ msgid "" "propagate to the outside. However printing them later allows them to stack " "better when overhangs are printed. When there is an uneven amount of total " "innner walls, the 'center last line' is always printed last." -msgstr "Determines the order in which walls are printed. Printing outer walls earlier helps with dimensional accuracy, as faults from inner walls cannot propagate" -" to the outside. However printing them later allows them to stack better when overhangs are printed. When there is an uneven amount of total innner walls," -" the 'center last line' is always printed last." +msgstr "Détermine l'ordre dans lequel les parois sont imprimées. L'impression des parois extérieures plus tôt permet une précision dimensionnelle car les défauts" +" des parois intérieures ne peuvent pas se propager à l'extérieur. Cependant, le fait de les imprimer plus tard leur permet de mieux s'empiler lorsque les" +" saillies sont imprimées. Lorsqu'il y a une quantité totale inégale de parois intérieures, la « dernière ligne centrale » est toujours imprimée en dernier." #: /fdmprinter.def.json msgctxt "inset_direction option inside_out" @@ -1286,9 +1283,10 @@ msgid "" "A higher Minimum Odd Wall Line Width leads to a higher maximum even wall " "line width. The maximum odd wall line width is calculated as 2 * Minimum " "Even Wall Line Width." -msgstr "The minimum line width for middle line gap filler polyline walls. This setting determines at which model thickness we switch from printing two wall lines," -" to printing two outer walls and a single central wall in the middle. A higher Minimum Odd Wall Line Width leads to a higher maximum even wall line width." -" The maximum odd wall line width is calculated as 2 * Minimum Even Wall Line Width." +msgstr "Largeur de ligne minimale pour les parois de polyligne de remplissage de l'espace de ligne médiane. Ce paramètre détermine à partir de quelle épaisseur" +" de modèle nous passons de l'impression de deux lignes de parois à l'impression de deux parois extérieures et d'une seule paroi centrale au milieu. Une" +" largeur de ligne de paroi impaire minimale plus élevée conduit à une largeur de ligne de paroi uniforme plus élevée. La largeur maximale de la ligne de" +" paroi impaire est calculée comme 2 × largeur minimale de la ligne de paroi paire." #: /fdmprinter.def.json msgctxt "fill_outline_gaps label" @@ -3129,34 +3127,35 @@ msgstr "Compensation du débit pour la couche initiale : la quantité de matér #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 label" msgid "Initial Layer Inner Wall Flow" -msgstr "Initial Layer Inner Wall Flow" +msgstr "Débit de la paroi intérieure de la couche initiale" #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 description" msgid "" "Flow compensation on wall lines for all wall lines except the outermost one, " "but only for the first layer" -msgstr "Flow compensation on wall lines for all wall lines except the outermost one, but only for the first layer" +msgstr "Compensation de débit sur les lignes de la paroi pour toutes les lignes de paroi, à l'exception de la ligne la plus externe, mais uniquement pour la première" +" couche." #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 label" msgid "Initial Layer Outer Wall Flow" -msgstr "Initial Layer Outer Wall Flow" +msgstr "Débit de la paroi extérieure de la couche initiale" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 description" msgid "Flow compensation on the outermost wall line of the first layer." -msgstr "Flow compensation on the outermost wall line of the first layer." +msgstr "Compensation de débit sur la ligne de la paroi la plus à l'extérieur de la première couche." #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 label" msgid "Initial Layer Bottom Flow" -msgstr "Initial Layer Bottom Flow" +msgstr "Débit des lignes du dessous de la couche initiale" #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 description" msgid "Flow compensation on bottom lines of the first layer" -msgstr "Flow compensation on bottom lines of the first layer" +msgstr "Compensation de débit sur les lignes du dessous de la première couche" #: /fdmprinter.def.json msgctxt "material_standby_temperature label" @@ -3464,14 +3463,15 @@ msgstr "Active le réglage de l'accélération de la tête d'impression. Augment #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled label" msgid "Enable Travel Acceleration" -msgstr "Enable Travel Acceleration" +msgstr "Activer l'accélération de déplacement" #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled description" msgid "" "Use a separate acceleration rate for travel moves. If disabled, travel moves " "will use the acceleration value of the printed line at their destination." -msgstr "Use a separate acceleration rate for travel moves. If disabled, travel moves will use the acceleration value of the printed line at their destination." +msgstr "Utilisez un taux d'accélération différent pour les déplacements. Si cette option est désactivée, les déplacements utiliseront la même accélération que" +" celle de la ligne imprimée à l'emplacement cible." #: /fdmprinter.def.json msgctxt "acceleration_print label" @@ -3681,14 +3681,15 @@ msgstr "Active le réglage de la saccade de la tête d'impression lorsque la vit #: /fdmprinter.def.json msgctxt "jerk_travel_enabled label" msgid "Enable Travel Jerk" -msgstr "Enable Travel Jerk" +msgstr "Activer la saccade de déplacement" #: /fdmprinter.def.json msgctxt "jerk_travel_enabled description" msgid "" "Use a separate jerk rate for travel moves. If disabled, travel moves will " "use the jerk value of the printed line at their destination." -msgstr "Use a separate jerk rate for travel moves. If disabled, travel moves will use the jerk value of the printed line at their destination." +msgstr "Utilisez un taux de saccades différent pour les déplacements. Si cette option est désactivée, les déplacements utiliseront les mêmes saccades que celle" +" de la ligne imprimée à l'emplacement cible." #: /fdmprinter.def.json msgctxt "jerk_print label" @@ -4552,14 +4553,15 @@ msgstr "Diamètre des branches les plus minces du support arborescent. Plus les #: /fdmprinter.def.json msgctxt "support_tree_max_diameter label" msgid "Tree Support Trunk Diameter" -msgstr "Tree Support Trunk Diameter" +msgstr "Diamètre du tronc du support arborescent" #: /fdmprinter.def.json msgctxt "support_tree_max_diameter description" msgid "" "The diameter of the widest branches of tree support. A thicker trunk is more " "sturdy; a thinner trunk takes up less space on the build plate." -msgstr "The diameter of the widest branches of tree support. A thicker trunk is more sturdy; a thinner trunk takes up less space on the build plate." +msgstr "Diamètre des branches les plus larges du support arborescent. Un tronc plus épais est plus robuste ; un tronc plus fin prend moins de place sur le plateau" +" de fabrication." #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter_angle label" diff --git a/resources/i18n/it_IT/cura.po b/resources/i18n/it_IT/cura.po index b5b3c8f07d..ef78e258a2 100644 --- a/resources/i18n/it_IT/cura.po +++ b/resources/i18n/it_IT/cura.po @@ -1,116 +1,118 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. # +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-27 14:50+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" -"Language: it_IT\n" +"Language: fr_FR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" +"Plural-Forms: nplurals=2; plural=n>1;\n" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:87 msgctxt "@tooltip" msgid "Outer Wall" -msgstr "Parete esterna" +msgstr "Paroi externe" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:88 msgctxt "@tooltip" msgid "Inner Walls" -msgstr "Pareti interne" +msgstr "Parois internes" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:89 msgctxt "@tooltip" msgid "Skin" -msgstr "Rivestimento esterno" +msgstr "Couche extérieure" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:90 msgctxt "@tooltip" msgid "Infill" -msgstr "Riempimento" +msgstr "Remplissage" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:91 msgctxt "@tooltip" msgid "Support Infill" -msgstr "Riempimento del supporto" +msgstr "Remplissage du support" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:92 msgctxt "@tooltip" msgid "Support Interface" -msgstr "Interfaccia supporto" +msgstr "Interface du support" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:93 msgctxt "@tooltip" msgid "Support" -msgstr "Supporto" +msgstr "Support" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:94 msgctxt "@tooltip" msgid "Skirt" -msgstr "Skirt" +msgstr "Jupe" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:95 msgctxt "@tooltip" msgid "Prime Tower" -msgstr "Torre di innesco" +msgstr "Tour primaire" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:96 msgctxt "@tooltip" msgid "Travel" -msgstr "Spostamenti" +msgstr "Déplacement" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:97 msgctxt "@tooltip" msgid "Retractions" -msgstr "Retrazioni" +msgstr "Rétractions" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:98 msgctxt "@tooltip" msgid "Other" -msgstr "Altro" +msgstr "Autre" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/TextManager.py:37 #: /Users/c.lamboo/ultimaker/Cura/cura/UI/TextManager.py:63 msgctxt "@text:window" msgid "The release notes could not be opened." -msgstr "Impossibile aprire le note sulla versione." +msgstr "Les notes de version n'ont pas pu être ouvertes." #: /Users/c.lamboo/ultimaker/Cura/cura/UI/ObjectsModel.py:69 #, python-brace-format msgctxt "@label" msgid "Group #{group_nr}" -msgstr "Gruppo #{group_nr}" +msgstr "Groupe nº {group_nr}" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:57 #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:277 msgctxt "@action:button" msgid "Next" -msgstr "Avanti" +msgstr "Suivant" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:286 #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WhatsNewPagesModel.py:68 msgctxt "@action:button" msgid "Skip" -msgstr "Salta" +msgstr "Passer" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:290 #: /Users/c.lamboo/ultimaker/Cura/cura/UI/AddPrinterPagesModel.py:26 msgctxt "@action:button" msgid "Finish" -msgstr "Fine" +msgstr "Fin" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/AddPrinterPagesModel.py:17 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:61 msgctxt "@action:button" msgid "Add" -msgstr "Aggiungi" +msgstr "Ajouter" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/AddPrinterPagesModel.py:33 #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:323 @@ -124,7 +126,7 @@ msgstr "Aggiungi" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ColorDialog.qml:139 msgctxt "@action:button" msgid "Cancel" -msgstr "Annulla" +msgstr "Annuler" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WhatsNewPagesModel.py:76 #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:444 @@ -133,13 +135,13 @@ msgstr "Annulla" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:188 msgctxt "@action:button" msgid "Close" -msgstr "Chiudi" +msgstr "Fermer" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:207 #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:140 msgctxt "@title:window" msgid "File Already Exists" -msgstr "Il file esiste già" +msgstr "Le fichier existe déjà" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:208 #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:141 @@ -148,18 +150,18 @@ msgctxt "@label Don't translate the XML tag !" msgid "" "The file {0} already exists. Are you sure you want to " "overwrite it?" -msgstr "Il file {0} esiste già. Sei sicuro di volerlo sovrascrivere?" +msgstr "Le fichier {0} existe déjà. Êtes-vous sûr de vouloir le remplacer ?" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:459 #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:462 msgctxt "@info:status" msgid "Invalid file URL:" -msgstr "File URL non valido:" +msgstr "URL de fichier invalide :" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/cura_empty_instance_containers.py:36 msgctxt "@info:not supported profile" msgid "Not supported" -msgstr "Non supportato" +msgstr "Non pris en charge" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/cura_empty_instance_containers.py:55 msgctxt "@info:No intent profile selected" @@ -170,30 +172,30 @@ msgstr "Default" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:219 msgctxt "@label" msgid "Nozzle" -msgstr "Ugello" +msgstr "Buse" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/MachineManager.py:889 msgctxt "@info:message Followed by a list of settings." msgid "" "Settings have been changed to match the current availability of extruders:" -msgstr "Le impostazioni sono state modificate in base all’attuale disponibilità di estrusori:" +msgstr "Les paramètres ont été modifiés pour correspondre aux extrudeuses actuellement disponibles :" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/MachineManager.py:890 msgctxt "@info:title" msgid "Settings updated" -msgstr "Impostazioni aggiornate" +msgstr "Paramètres mis à jour" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/MachineManager.py:1512 msgctxt "@info:title" msgid "Extruder(s) Disabled" -msgstr "Estrusore disabilitato" +msgstr "Extrudeuse(s) désactivée(s)" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:153 #, python-brace-format msgctxt "@info:status Don't translate the XML tags or !" msgid "" "Failed to export profile to {0}: {1}" -msgstr "Impossibile esportare il profilo su {0}: {1}" +msgstr "Échec de l'exportation du profil vers {0} : {1}" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:156 #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:166 @@ -202,7 +204,7 @@ msgstr "Impossibile esportare il profilo su {0}: { #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:173 msgctxt "@info:title" msgid "Error" -msgstr "Errore" +msgstr "Erreur" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:163 #, python-brace-format @@ -210,43 +212,43 @@ msgctxt "@info:status Don't translate the XML tag !" msgid "" "Failed to export profile to {0}: Writer plugin reported " "failure." -msgstr "Impossibile esportare il profilo su {0}: Rilevata anomalia durante scrittura plugin." +msgstr "Échec de l'exportation du profil vers {0} : le plug-in du générateur a rapporté une erreur." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:171 #, python-brace-format msgctxt "@info:status Don't translate the XML tag !" msgid "Exported profile to {0}" -msgstr "Profilo esportato su {0}" +msgstr "Profil exporté vers {0}" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:173 msgctxt "@info:title" msgid "Export succeeded" -msgstr "Esportazione riuscita" +msgstr "L'exportation a réussi" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:205 #, python-brace-format msgctxt "@info:status Don't translate the XML tags !" msgid "Failed to import profile from {0}: {1}" -msgstr "Impossibile importare il profilo da {0}: {1}" +msgstr "Impossible d'importer le profil depuis {0} : {1}" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:209 #, python-brace-format msgctxt "@info:status Don't translate the XML tags !" msgid "" "Can't import profile from {0} before a printer is added." -msgstr "Impossibile importare il profilo da {0} prima di aggiungere una stampante." +msgstr "Impossible d'importer le profil depuis {0} avant l'ajout d'une imprimante." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:224 #, python-brace-format msgctxt "@info:status Don't translate the XML tags !" msgid "No custom profile to import in file {0}" -msgstr "Nessun profilo personalizzato da importare nel file {0}" +msgstr "Aucun profil personnalisé à importer dans le fichier {0}" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:228 #, python-brace-format msgctxt "@info:status Don't translate the XML tags !" msgid "Failed to import profile from {0}:" -msgstr "Impossibile importare il profilo da {0}:" +msgstr "Échec de l'importation du profil depuis le fichier {0} :" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:252 #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:262 @@ -255,51 +257,51 @@ msgctxt "@info:status Don't translate the XML tags !" msgid "" "This profile {0} contains incorrect data, could not " "import it." -msgstr "Questo profilo {0} contiene dati errati, impossibile importarlo." +msgstr "Le profil {0} contient des données incorrectes ; échec de l'importation." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:355 #, python-brace-format msgctxt "@info:status Don't translate the XML tag !" msgid "Failed to import profile from {0}:" -msgstr "Impossibile importare il profilo da {0}:" +msgstr "Échec de l'importation du profil depuis le fichier {0} :" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:359 #, python-brace-format msgctxt "@info:status" msgid "Successfully imported profile {0}." -msgstr "Profilo {0} importato correttamente." +msgstr "Importation du profil {0} réussie." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:366 #, python-brace-format msgctxt "@info:status" msgid "File {0} does not contain any valid profile." -msgstr "Il file {0} non contiene nessun profilo valido." +msgstr "Le fichier {0} ne contient pas de profil valide." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:369 #, python-brace-format msgctxt "@info:status" msgid "Profile {0} has an unknown file type or is corrupted." -msgstr "Il profilo {0} ha un tipo di file sconosciuto o corrotto." +msgstr "Le profil {0} est un type de fichier inconnu ou est corrompu." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:443 msgctxt "@label" msgid "Custom profile" -msgstr "Profilo personalizzato" +msgstr "Personnaliser le profil" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:459 msgctxt "@info:status" msgid "Profile is missing a quality type." -msgstr "Il profilo è privo del tipo di qualità." +msgstr "Il manque un type de qualité au profil." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:463 msgctxt "@info:status" msgid "There is no active printer yet." -msgstr "Non ci sono ancora stampanti attive." +msgstr "Aucune imprimante n'est active pour le moment." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:469 msgctxt "@info:status" msgid "Unable to add the profile." -msgstr "Impossibile aggiungere il profilo." +msgstr "Impossible d'ajouter le profil." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:483 #, python-brace-format @@ -307,7 +309,7 @@ msgctxt "@info:status" msgid "" "Quality type '{0}' is not compatible with the current active machine " "definition '{1}'." -msgstr "Il tipo di qualità '{0}' non è compatibile con la definizione di macchina attiva corrente '{1}'." +msgstr "Le type de qualité « {0} » n'est pas compatible avec la définition actuelle de la machine active « {1} »." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:488 #, python-brace-format @@ -316,69 +318,69 @@ msgid "" "Warning: The profile is not visible because its quality type '{0}' is not " "available for the current configuration. Switch to a material/nozzle " "combination that can use this quality type." -msgstr "Avvertenza: il profilo non è visibile in quanto il tipo di qualità '{0}' non è disponibile per la configurazione corrente. Passare alla combinazione materiale/ugello" -" che consente di utilizzare questo tipo di qualità." +msgstr "Avertissement : le profil n'est pas visible car son type de qualité « {0} » n'est pas disponible pour la configuration actuelle. Passez à une combinaison" +" matériau/buse qui peut utiliser ce type de qualité." #: /Users/c.lamboo/ultimaker/Cura/cura/MultiplyObjectsJob.py:30 msgctxt "@info:status" msgid "Multiplying and placing objects" -msgstr "Moltiplicazione e collocazione degli oggetti" +msgstr "Multiplication et placement d'objets" #: /Users/c.lamboo/ultimaker/Cura/cura/MultiplyObjectsJob.py:32 msgctxt "@info:title" msgid "Placing Objects" -msgstr "Sistemazione oggetti" +msgstr "Placement des objets" #: /Users/c.lamboo/ultimaker/Cura/cura/MultiplyObjectsJob.py:99 #: /Users/c.lamboo/ultimaker/Cura/cura/Arranging/ArrangeObjectsJob.py:42 msgctxt "@info:status" msgid "Unable to find a location within the build volume for all objects" -msgstr "Impossibile individuare una posizione nel volume di stampa per tutti gli oggetti" +msgstr "Impossible de trouver un emplacement dans le volume d'impression pour tous les objets" #: /Users/c.lamboo/ultimaker/Cura/cura/MultiplyObjectsJob.py:100 msgctxt "@info:title" msgid "Placing Object" -msgstr "Sistemazione oggetto" +msgstr "Placement de l'objet" #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:540 msgctxt "@info:progress" msgid "Loading machines..." -msgstr "Caricamento macchine in corso..." +msgstr "Chargement des machines..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:547 msgctxt "@info:progress" msgid "Setting up preferences..." -msgstr "Impostazione delle preferenze..." +msgstr "Configuration des préférences..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:692 msgctxt "@info:progress" msgid "Initializing Active Machine..." -msgstr "Inizializzazione Active Machine in corso..." +msgstr "Initialisation de la machine active..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:838 msgctxt "@info:progress" msgid "Initializing machine manager..." -msgstr "Inizializzazione gestore macchina in corso..." +msgstr "Initialisation du gestionnaire de machine..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:852 msgctxt "@info:progress" msgid "Initializing build volume..." -msgstr "Inizializzazione volume di stampa in corso..." +msgstr "Initialisation du volume de fabrication..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:920 msgctxt "@info:progress" msgid "Setting up scene..." -msgstr "Impostazione scena in corso..." +msgstr "Préparation de la scène..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:956 msgctxt "@info:progress" msgid "Loading interface..." -msgstr "Caricamento interfaccia in corso..." +msgstr "Chargement de l'interface..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:961 msgctxt "@info:progress" msgid "Initializing engine..." -msgstr "Inizializzazione motore in corso..." +msgstr "Initialisation du moteur..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:1289 #, python-format @@ -392,82 +394,82 @@ msgstr "%(width).1f x %(depth).1f x %(height).1f mm" #, python-brace-format msgctxt "@info:status" msgid "Only one G-code file can be loaded at a time. Skipped importing {0}" -msgstr "È possibile caricare un solo file codice G per volta. Importazione saltata {0}" +msgstr "Un seul fichier G-Code peut être chargé à la fois. Importation de {0} sautée" #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:1817 #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationService.py:217 #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:189 msgctxt "@info:title" msgid "Warning" -msgstr "Avvertenza" +msgstr "Avertissement" #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:1827 #, python-brace-format msgctxt "@info:status" msgid "Can't open any other file if G-code is loading. Skipped importing {0}" -msgstr "Impossibile aprire altri file durante il caricamento del codice G. Importazione saltata {0}" +msgstr "Impossible d'ouvrir un autre fichier si le G-Code est en cours de chargement. Importation de {0} sautée" #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationHelpers.py:89 msgctxt "@message" msgid "Could not read response." -msgstr "Impossibile leggere la risposta." +msgstr "Impossible de lire la réponse." #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationRequestHandler.py:75 msgctxt "@message" msgid "The provided state is not correct." -msgstr "Lo stato fornito non è corretto." +msgstr "L'état fourni n'est pas correct." #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationRequestHandler.py:80 msgctxt "@message" msgid "Timeout when authenticating with the account server." -msgstr "Timeout durante l'autenticazione con il server account." +msgstr "Délai d'expiration lors de l'authentification avec le serveur de compte." #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationRequestHandler.py:97 msgctxt "@message" msgid "Please give the required permissions when authorizing this application." -msgstr "Fornire i permessi necessari al momento dell'autorizzazione di questa applicazione." +msgstr "Veuillez donner les permissions requises lors de l'autorisation de cette application." #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationRequestHandler.py:104 msgctxt "@message" msgid "Something unexpected happened when trying to log in, please try again." -msgstr "Si è verificato qualcosa di inatteso durante il tentativo di accesso, riprovare." +msgstr "Une erreur s'est produite lors de la connexion, veuillez réessayer." #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationService.py:216 msgctxt "@info" msgid "" "Unable to start a new sign in process. Check if another sign in attempt is " "still active." -msgstr "Impossibile avviare un nuovo processo di accesso. Verificare se è ancora attivo un altro tentativo di accesso." +msgstr "Impossible de lancer une nouvelle procédure de connexion. Vérifiez si une autre tentative de connexion est toujours active." #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationService.py:277 msgctxt "@info" msgid "Unable to reach the Ultimaker account server." -msgstr "Impossibile raggiungere il server account Ultimaker." +msgstr "Impossible d’atteindre le serveur du compte Ultimaker." #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationService.py:278 msgctxt "@info:title" msgid "Log-in failed" -msgstr "Log in non riuscito" +msgstr "Échec de la connexion" #: /Users/c.lamboo/ultimaker/Cura/cura/Arranging/ArrangeObjectsJob.py:25 msgctxt "@info:status" msgid "Finding new location for objects" -msgstr "Ricerca nuova posizione per gli oggetti" +msgstr "Recherche d'un nouvel emplacement pour les objets" #: /Users/c.lamboo/ultimaker/Cura/cura/Arranging/ArrangeObjectsJob.py:29 msgctxt "@info:title" msgid "Finding Location" -msgstr "Ricerca posizione" +msgstr "Recherche d'emplacement" #: /Users/c.lamboo/ultimaker/Cura/cura/Arranging/ArrangeObjectsJob.py:43 msgctxt "@info:title" msgid "Can't Find Location" -msgstr "Impossibile individuare posizione" +msgstr "Impossible de trouver un emplacement" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/ExtrudersModel.py:219 msgctxt "@menuitem" msgid "Not overridden" -msgstr "Non sottoposto a override" +msgstr "Pas écrasé" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:11 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:42 @@ -482,7 +484,7 @@ msgstr "Default" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:65 msgctxt "@label" msgid "Visual" -msgstr "Visivo" +msgstr "Visuel" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:15 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:46 @@ -491,7 +493,7 @@ msgctxt "@text" msgid "" "The visual profile is designed to print visual prototypes and models with " "the intent of high visual and surface quality." -msgstr "Il profilo visivo è destinato alla stampa di prototipi e modelli visivi, con l'intento di ottenere una qualità visiva e della superficie elevata." +msgstr "Le profil visuel est conçu pour imprimer des prototypes et des modèles visuels dans le but d'obtenir une qualité visuelle et de surface élevée." #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:18 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:49 @@ -507,15 +509,15 @@ msgctxt "@text" msgid "" "The engineering profile is designed to print functional prototypes and end-" "use parts with the intent of better accuracy and for closer tolerances." -msgstr "Il profilo di progettazione è destinato alla stampa di prototipi funzionali e di componenti d'uso finale, allo scopo di ottenere maggiore precisione e" -" tolleranze strette." +msgstr "Le profil d'ingénierie est conçu pour imprimer des prototypes fonctionnels et des pièces finales dans le but d'obtenir une meilleure précision et des tolérances" +" plus étroites." #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:22 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:53 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:75 msgctxt "@label" msgid "Draft" -msgstr "Bozza" +msgstr "Ébauche" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:23 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:54 @@ -524,170 +526,169 @@ msgctxt "@text" msgid "" "The draft profile is designed to print initial prototypes and concept " "validation with the intent of significant print time reduction." -msgstr "Il profilo bozza è destinato alla stampa dei prototipi iniziali e alla convalida dei concept, con l'intento di ridurre in modo significativo il tempo di" -" stampa." +msgstr "L'ébauche du profil est conçue pour imprimer les prototypes initiaux et la validation du concept dans le but de réduire considérablement le temps d'impression." #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/QualitySettingsModel.py:182 msgctxt "@info:status" msgid "Calculated" -msgstr "Calcolato" +msgstr "Calculer" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/QualityManagementModel.py:391 msgctxt "@label" msgid "Custom profiles" -msgstr "Profili personalizzati" +msgstr "Personnaliser les profils" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/QualityManagementModel.py:426 #, python-brace-format msgctxt "@item:inlistbox" msgid "All Supported Types ({0})" -msgstr "Tutti i tipi supportati ({0})" +msgstr "Tous les types supportés ({0})" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/QualityManagementModel.py:427 msgctxt "@item:inlistbox" msgid "All Files (*)" -msgstr "Tutti i file (*)" +msgstr "Tous les fichiers (*)" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83 msgctxt "@label" msgid "Unknown" -msgstr "Sconosciuto" +msgstr "Inconnu" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:113 msgctxt "@label" msgid "" "The printer(s) below cannot be connected because they are part of a group" -msgstr "Le stampanti riportate di seguito non possono essere collegate perché fanno parte di un gruppo" +msgstr "Les imprimantes ci-dessous ne peuvent pas être connectées car elles font partie d'un groupe" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:115 msgctxt "@label" msgid "Available networked printers" -msgstr "Stampanti disponibili in rete" +msgstr "Imprimantes en réseau disponibles" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/GlobalStacksModel.py:160 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Connected printers" -msgstr "Stampanti collegate" +msgstr "Imprimantes connectées" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/GlobalStacksModel.py:160 msgctxt "@label" msgid "Preset printers" -msgstr "Stampanti preimpostate" +msgstr "Imprimantes préréglées" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/GlobalStacksModel.py:165 #, python-brace-format msgctxt "@label {0} is the name of a printer that's about to be deleted." msgid "Are you sure you wish to remove {0}? This cannot be undone!" -msgstr "Rimuovere {0}? Questa operazione non può essere annullata!" +msgstr "Voulez-vous vraiment supprimer l'objet {0} ? Cette action est irréversible !" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/MaterialManagementModel.py:232 msgctxt "@label" msgid "Custom Material" -msgstr "Materiale personalizzato" +msgstr "Matériau personnalisé" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/MaterialManagementModel.py:233 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:340 msgctxt "@label" msgid "Custom" -msgstr "Personalizzata" +msgstr "Personnalisé" #: /Users/c.lamboo/ultimaker/Cura/cura/API/Account.py:199 msgctxt "@info:title" msgid "Login failed" -msgstr "Login non riuscito" +msgstr "La connexion a échoué" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:66 msgctxt "@action:button" msgid "" "Please sync the material profiles with your printers before starting to " "print." -msgstr "Sincronizzare i profili del materiale con le stampanti prima di iniziare a stampare." +msgstr "Veuillez synchroniser les profils de matériaux avec vos imprimantes avant de commencer à imprimer." #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:67 msgctxt "@action:button" msgid "New materials installed" -msgstr "Nuovi materiali installati" +msgstr "Nouveaux matériaux installés" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:74 msgctxt "@action:button" msgid "Sync materials" -msgstr "Sincronizza materiali" +msgstr "Synchroniser les matériaux" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:82 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.py:397 #: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/SolidView.py:80 msgctxt "@action:button" msgid "Learn more" -msgstr "Ulteriori informazioni" +msgstr "En savoir plus" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:135 msgctxt "@message:text" msgid "Could not save material archive to {}:" -msgstr "Impossibile salvare archivio materiali in {}:" +msgstr "Impossible d'enregistrer l'archive du matériau dans {} :" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:136 msgctxt "@message:title" msgid "Failed to save material archive" -msgstr "Impossibile salvare archivio materiali" +msgstr "Échec de l'enregistrement de l'archive des matériaux" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:188 msgctxt "@text" msgid "Unknown error." -msgstr "Errore sconosciuto." +msgstr "Erreur inconnue." #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:104 msgctxt "@text:error" msgid "Failed to create archive of materials to sync with printers." -msgstr "Impossibile creare archivio di materiali da sincronizzare con le stampanti." +msgstr "Échec de la création de l'archive des matériaux à synchroniser avec les imprimantes." #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:111 #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:165 msgctxt "@text:error" msgid "Failed to load the archive of materials to sync it with printers." -msgstr "Impossibile caricare l'archivio di materiali da sincronizzare con le stampanti." +msgstr "Impossible de charger l'archive des matériaux pour la synchroniser avec les imprimantes." #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:143 msgctxt "@text:error" msgid "The response from Digital Factory appears to be corrupted." -msgstr "La risposta da Digital Factory sembra essere danneggiata." +msgstr "La réponse de Digital Factory semble être corrompue." #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:147 #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:151 #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:155 msgctxt "@text:error" msgid "The response from Digital Factory is missing important information." -msgstr "Nella risposta da Digital Factory mancano informazioni importanti." +msgstr "Il manque des informations importantes dans la réponse de Digital Factory." #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:218 msgctxt "@text:error" msgid "" "Failed to connect to Digital Factory to sync materials with some of the " "printers." -msgstr "Impossibile connettersi a Digital Factory per sincronizzare i materiali con alcune delle stampanti." +msgstr "Échec de la connexion à Digital Factory pour synchroniser les matériaux avec certaines imprimantes." #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:232 msgctxt "@text:error" msgid "Failed to connect to Digital Factory." -msgstr "Impossibile connettersi a Digital Factory." +msgstr "Échec de la connexion à Digital Factory." #: /Users/c.lamboo/ultimaker/Cura/cura/BuildVolume.py:100 msgctxt "@info:status" msgid "" "The build volume height has been reduced due to the value of the \"Print " "Sequence\" setting to prevent the gantry from colliding with printed models." -msgstr "L’altezza del volume di stampa è stata ridotta a causa del valore dell’impostazione \"Sequenza di stampa” per impedire la collisione del gantry con i modelli" -" stampati." +msgstr "La hauteur du volume d'impression a été réduite en raison de la valeur du paramètre « Séquence d'impression » afin d'éviter que le portique ne heurte les" +" modèles imprimés." #: /Users/c.lamboo/ultimaker/Cura/cura/BuildVolume.py:103 msgctxt "@info:title" msgid "Build Volume" -msgstr "Volume di stampa" +msgstr "Volume d'impression" #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:115 msgctxt "@info:backup_failed" msgid "Could not create archive from user data directory: {}" -msgstr "Impossibile creare un archivio dalla directory dei dati utente: {}" +msgstr "Impossible de créer une archive à partir du répertoire de données de l'utilisateur : {}" #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:122 #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:159 @@ -695,27 +696,27 @@ msgstr "Impossibile creare un archivio dalla directory dei dati utente: {}" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:126 msgctxt "@info:title" msgid "Backup" -msgstr "Backup" +msgstr "Sauvegarde" #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:134 msgctxt "@info:backup_failed" msgid "Tried to restore a Cura backup without having proper data or meta data." -msgstr "Tentativo di ripristinare un backup di Cura senza dati o metadati appropriati." +msgstr "A essayé de restaurer une sauvegarde Cura sans disposer de données ou de métadonnées appropriées." #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:145 msgctxt "@info:backup_failed" msgid "Tried to restore a Cura backup that is higher than the current version." -msgstr "Tentativo di ripristinare un backup di Cura di versione superiore rispetto a quella corrente." +msgstr "A essayé de restaurer une sauvegarde Cura supérieure à la version actuelle." #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:158 msgctxt "@info:backup_failed" msgid "The following error occurred while trying to restore a Cura backup:" -msgstr "Nel tentativo di ripristinare un backup di Cura, si è verificato il seguente errore:" +msgstr "L'erreur suivante s'est produite lors de la restauration d'une sauvegarde Cura :" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:107 msgctxt "@title:window" msgid "Cura can't start" -msgstr "Impossibile avviare Cura" +msgstr "Échec du démarrage de Cura" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:113 msgctxt "@label crash message" @@ -730,35 +731,35 @@ msgid "" "

Please send us this Crash Report to fix the problem.\n" " " -msgstr "

Oops, Ultimaker Cura ha rilevato qualcosa che non sembra corretto.

\n

Abbiamo riscontrato un errore irrecuperabile durante" -" l’avvio. È stato probabilmente causato da alcuni file di configurazione errati. Suggeriamo di effettuare il backup e ripristinare la configurazione.

\n" -"

I backup sono contenuti nella cartella configurazione.

\n

Si prega di inviare questo Rapporto su crash" -" per correggere il problema.

\n " +msgstr "

Oups, un problème est survenu dans Ultimaker Cura.

\n

Une erreur irrécupérable est survenue lors du démarrage. Elle" +" peut avoir été causée par des fichiers de configuration incorrects. Nous vous suggérons de sauvegarder et de réinitialiser votre configuration.

\n " +"

Les sauvegardes se trouvent dans le dossier de configuration.

\n

Veuillez nous envoyer ce rapport d'incident pour que nous" +" puissions résoudre le problème.

\n " #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:122 msgctxt "@action:button" msgid "Send crash report to Ultimaker" -msgstr "Inviare il rapporto su crash a Ultimaker" +msgstr "Envoyer le rapport de d'incident à Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:125 msgctxt "@action:button" msgid "Show detailed crash report" -msgstr "Mostra il rapporto su crash dettagliato" +msgstr "Afficher le rapport d'incident détaillé" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:129 msgctxt "@action:button" msgid "Show configuration folder" -msgstr "Mostra cartella di configurazione" +msgstr "Afficher le dossier de configuration" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:140 msgctxt "@action:button" msgid "Backup and Reset Configuration" -msgstr "Backup e reset configurazione" +msgstr "Sauvegarder et réinitialiser la configuration" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:171 msgctxt "@title:window" msgid "Crash Report" -msgstr "Rapporto su crash" +msgstr "Rapport d'incident" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:190 msgctxt "@label crash message" @@ -768,48 +769,48 @@ msgid "" "

Please use the \"Send report\" button to post a bug report " "automatically to our servers

\n" " " -msgstr "

Si è verificato un errore fatale in Cura. Si prega di inviare questo Rapporto su crash per correggere il problema

\n

Usare il" -" pulsante “Invia report" per inviare automaticamente una segnalazione errore ai nostri server

\n " +msgstr "

Une erreur fatale est survenue dans Cura. Veuillez nous envoyer ce rapport d'incident pour résoudre le problème

\n

Veuillez" +" utiliser le bouton « Envoyer rapport » pour publier automatiquement un rapport d'erreur sur nos serveurs

\n " #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:198 msgctxt "@title:groupbox" msgid "System information" -msgstr "Informazioni di sistema" +msgstr "Informations système" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:207 msgctxt "@label unknown version of Cura" msgid "Unknown" -msgstr "Sconosciuto" +msgstr "Inconnu" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:228 msgctxt "@label Cura version number" msgid "Cura version" -msgstr "Versione Cura" +msgstr "Version Cura" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:229 msgctxt "@label" msgid "Cura language" -msgstr "Lingua Cura" +msgstr "Langue de Cura" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:230 msgctxt "@label" msgid "OS language" -msgstr "Lingua sistema operativo" +msgstr "Langue du SE" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:231 msgctxt "@label Type of platform" msgid "Platform" -msgstr "Piattaforma" +msgstr "Plate-forme" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:232 msgctxt "@label" msgid "Qt version" -msgstr "Versione Qt" +msgstr "Version Qt" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:233 msgctxt "@label" msgid "PyQt version" -msgstr "Versione PyQt" +msgstr "Version PyQt" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:234 msgctxt "@label OpenGL version" @@ -825,152 +826,152 @@ msgstr "Non ancora inizializzato" #, python-brace-format msgctxt "@label OpenGL version" msgid "
  • OpenGL Version: {version}
  • " -msgstr "
  • Versione OpenGL: {version}
  • " +msgstr "
  • Version OpenGL : {version}
  • " #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:268 #, python-brace-format msgctxt "@label OpenGL vendor" msgid "
  • OpenGL Vendor: {vendor}
  • " -msgstr "
  • Fornitore OpenGL: {vendor}
  • " +msgstr "
  • Revendeur OpenGL : {vendor}
  • " #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:269 #, python-brace-format msgctxt "@label OpenGL renderer" msgid "
  • OpenGL Renderer: {renderer}
  • " -msgstr "
  • Renderer OpenGL: {renderer}
  • " +msgstr "
  • Moteur de rendu OpenGL : {renderer}
  • " #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:304 msgctxt "@title:groupbox" msgid "Error traceback" -msgstr "Analisi errori" +msgstr "Retraçage de l'erreur" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:390 msgctxt "@title:groupbox" msgid "Logs" -msgstr "Registri" +msgstr "Journaux" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:418 msgctxt "@action:button" msgid "Send report" -msgstr "Invia report" +msgstr "Envoyer rapport" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsAction.py:32 msgctxt "@action" msgid "Machine Settings" -msgstr "Impostazioni macchina" +msgstr "Paramètres de la machine" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/__init__.py:14 msgctxt "@item:inlistbox" msgid "JPG Image" -msgstr "Immagine JPG" +msgstr "Image JPG" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/__init__.py:18 msgctxt "@item:inlistbox" msgid "JPEG Image" -msgstr "Immagine JPEG" +msgstr "Image JPEG" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/__init__.py:22 msgctxt "@item:inlistbox" msgid "PNG Image" -msgstr "Immagine PNG" +msgstr "Image PNG" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/__init__.py:26 msgctxt "@item:inlistbox" msgid "BMP Image" -msgstr "Immagine BMP" +msgstr "Image BMP" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/__init__.py:30 msgctxt "@item:inlistbox" msgid "GIF Image" -msgstr "Immagine GIF" +msgstr "Image GIF" #: /Users/c.lamboo/ultimaker/Cura/plugins/XRayView/__init__.py:12 msgctxt "@item:inlistbox" msgid "X-Ray view" -msgstr "Vista ai raggi X" +msgstr "Visualisation par rayons X" #: /Users/c.lamboo/ultimaker/Cura/plugins/X3DReader/__init__.py:13 msgctxt "@item:inlistbox" msgid "X3D File" -msgstr "File X3D" +msgstr "Fichier X3D" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraProfileReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraProfileWriter/__init__.py:14 msgctxt "@item:inlistbox" msgid "Cura Profile" -msgstr "Profilo Cura" +msgstr "Profil Cura" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:35 msgctxt "@item:inmenu" msgid "Post Processing" -msgstr "Post-elaborazione" +msgstr "Post-traitement" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:36 msgctxt "@item:inmenu" msgid "Modify G-Code" -msgstr "Modifica codice G" +msgstr "Modifier le G-Code" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/MeshFormatHandler.py:118 #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:66 msgctxt "@info:status" msgid "There are no file formats available to write with!" -msgstr "Non ci sono formati di file disponibili per la scrittura!" +msgstr "Aucun format de fichier n'est disponible pour écriture !" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadQueueFullMessage.py:16 msgctxt "@info:status" msgid "Print job queue is full. The printer can't accept a new job." -msgstr "La coda dei processi di stampa è piena. La stampante non può accettare un nuovo processo." +msgstr "La file d'attente pour les tâches d'impression est pleine. L'imprimante ne peut pas accepter une nouvelle tâche." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadQueueFullMessage.py:17 msgctxt "@info:title" msgid "Queue Full" -msgstr "Coda piena" +msgstr "La file d'attente est pleine" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadErrorMessage.py:15 msgctxt "@info:text" msgid "Could not upload the data to the printer." -msgstr "Impossibile caricare i dati sulla stampante." +msgstr "Impossible de transférer les données à l'imprimante." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadErrorMessage.py:16 msgctxt "@info:title" msgid "Network error" -msgstr "Errore di rete" +msgstr "Erreur de réseau" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NewPrinterDetectedMessage.py:13 msgctxt "info:status" msgid "New printer detected from your Ultimaker account" msgid_plural "New printers detected from your Ultimaker account" -msgstr[0] "Nuova stampante rilevata dall'account Ultimaker" -msgstr[1] "Nuove stampanti rilevate dall'account Ultimaker" +msgstr[0] "Nouvelle imprimante détectée à partir de votre compte Ultimaker" +msgstr[1] "Nouvelles imprimantes détectées à partir de votre compte Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NewPrinterDetectedMessage.py:29 #, python-brace-format msgctxt "info:status Filled in with printer name and printer model." msgid "Adding printer {name} ({model}) from your account" -msgstr "Aggiunta della stampante {name} ({model}) dall'account" +msgstr "Ajout de l'imprimante {name} ({model}) à partir de votre compte" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NewPrinterDetectedMessage.py:48 #, python-brace-format msgctxt "info:{0} gets replaced by a number of printers" msgid "... and {0} other" msgid_plural "... and {0} others" -msgstr[0] "... e {0} altra" -msgstr[1] "... e altre {0}" +msgstr[0] "... et {0} autre" +msgstr[1] "... et {0} autres" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NewPrinterDetectedMessage.py:57 msgctxt "info:status" msgid "Printers added from Digital Factory:" -msgstr "Stampanti aggiunte da Digital Factory:" +msgstr "Imprimantes ajoutées à partir de Digital Factory :" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadBlockedMessage.py:15 msgctxt "@info:status" msgid "Please wait until the current job has been sent." -msgstr "Attendere che sia stato inviato il processo corrente." +msgstr "Veuillez patienter jusqu'à ce que la tâche en cours ait été envoyée." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadBlockedMessage.py:16 msgctxt "@info:title" msgid "Print error" -msgstr "Errore di stampa" +msgstr "Erreur d'impression" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:25 #, python-brace-format @@ -979,50 +980,50 @@ msgid "" "Your printer {printer_name} could be connected via cloud.\n" " Manage your print queue and monitor your prints from anywhere connecting " "your printer to Digital Factory" -msgstr "Impossibile connettere la stampante {printer_name} tramite cloud.\n Gestisci la coda di stampa e monitora le stampe da qualsiasi posizione collegando" -" la stampante a Digital Factory" +msgstr "Votre imprimante {printer_name} pourrait être connectée via le cloud.\n Gérez votre file d'attente d'impression et surveillez vos impressions depuis" +" n'importe où en connectant votre imprimante à Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:26 msgctxt "@info:title" msgid "Are you ready for cloud printing?" -msgstr "Pronto per la stampa tramite cloud?" +msgstr "Êtes-vous prêt pour l'impression dans le cloud ?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:30 msgctxt "@action" msgid "Get started" -msgstr "Per iniziare" +msgstr "Prise en main" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:31 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:24 msgctxt "@action" msgid "Learn more" -msgstr "Ulteriori informazioni" +msgstr "En savoir plus" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:18 msgctxt "@info:status" msgid "" "You will receive a confirmation via email when the print job is approved" -msgstr "You will receive a confirmation via email when the print job is approved" +msgstr "Vous recevrez une confirmation par e-mail lorsque la tâche d'impression sera approuvée" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:19 msgctxt "@info:title" msgid "The print job was successfully submitted" -msgstr "The print job was successfully submitted" +msgstr "La tâche d'impression a bien été soumise" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:22 msgctxt "@action" msgid "Manage print jobs" -msgstr "Manage print jobs" +msgstr "Gérer les tâches d'impression" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:15 msgctxt "@info:status" msgid "Sending Print Job" -msgstr "Invio di un processo di stampa" +msgstr "Lancement d'une tâche d'impression" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:16 msgctxt "@info:status" msgid "Uploading print job to printer." -msgstr "Caricamento del processo di stampa sulla stampante." +msgstr "Téléchargement de la tâche d'impression sur l'imprimante." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/MaterialSyncMessage.py:24 #, python-brace-format @@ -1030,12 +1031,12 @@ msgctxt "@info:status" msgid "" "Cura has detected material profiles that were not yet installed on the host " "printer of group {0}." -msgstr "Cura ha rilevato dei profili di materiale non ancora installati sulla stampante host del gruppo {0}." +msgstr "Cura a détecté des profils de matériau qui ne sont pas encore installés sur l'imprimante hôte du groupe {0}." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/MaterialSyncMessage.py:26 msgctxt "@info:title" msgid "Sending materials to printer" -msgstr "Invio dei materiali alla stampante" +msgstr "Envoi de matériaux à l'imprimante" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NotClusterHostMessage.py:27 #, python-brace-format @@ -1043,24 +1044,24 @@ msgctxt "@info:status" msgid "" "You are attempting to connect to {0} but it is not the host of a group. You " "can visit the web page to configure it as a group host." -msgstr "Tentativo di connessione a {0} in corso, che non è l'host di un gruppo. È possibile visitare la pagina web per configurarla come host del gruppo." +msgstr "Vous tentez de vous connecter à {0} mais ce n'est pas l'hôte de groupe. Vous pouvez visiter la page Web pour la configurer en tant qu'hôte de groupe." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NotClusterHostMessage.py:30 msgctxt "@info:title" msgid "Not a group host" -msgstr "Non host del gruppo" +msgstr "Pas un hôte de groupe" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NotClusterHostMessage.py:36 msgctxt "@action" msgid "Configure group" -msgstr "Configurare il gruppo" +msgstr "Configurer le groupe" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:16 msgctxt "info:status" msgid "This printer is not linked to the Digital Factory:" msgid_plural "These printers are not linked to the Digital Factory:" -msgstr[0] "Questa stampante non è collegata a Digital Factory:" -msgstr[1] "Queste stampanti non sono collegate a Digital Factory:" +msgstr[0] "Cette imprimante n'est pas associée à Digital Factory :" +msgstr[1] "Ces imprimantes ne sont pas associées à Digital Factory :" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:22 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:422 @@ -1072,117 +1073,117 @@ msgstr "Ultimaker Digital Factory" #, python-brace-format msgctxt "info:status" msgid "To establish a connection, please visit the {website_link}" -msgstr "Per stabilire una connessione, visitare {website_link}" +msgstr "Pour établir une connexion, veuillez visiter le site {website_link}" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:32 msgctxt "info:status" msgid "A cloud connection is not available for a printer" msgid_plural "A cloud connection is not available for some printers" -msgstr[0] "Non è disponibile una connessione cloud per una stampante" -msgstr[1] "Non è disponibile una connessione cloud per alcune stampanti" +msgstr[0] "Une connexion cloud n'est pas disponible pour une imprimante" +msgstr[1] "Une connexion cloud n'est pas disponible pour certaines imprimantes" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:40 msgctxt "@action:button" msgid "Keep printer configurations" -msgstr "Mantenere le configurazioni delle stampanti" +msgstr "Conserver les configurations d'imprimante" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:45 msgctxt "@action:button" msgid "Remove printers" -msgstr "Rimuovere le stampanti" +msgstr "Supprimer des imprimantes" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/LegacyDeviceNoLongerSupportedMessage.py:18 msgctxt "@info:status" msgid "" "You are attempting to connect to a printer that is not running Ultimaker " "Connect. Please update the printer to the latest firmware." -msgstr "Si sta tentando di connettersi a una stampante che non esegue Ultimaker Connect. Aggiornare la stampante con il firmware più recente." +msgstr "Vous tentez de vous connecter à une imprimante qui n'exécute pas Ultimaker Connect. Veuillez mettre à jour l'imprimante avec le dernier micrologiciel." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/LegacyDeviceNoLongerSupportedMessage.py:21 msgctxt "@info:title" msgid "Update your printer" -msgstr "Aggiornare la stampante" +msgstr "Mettre à jour votre imprimante" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadSuccessMessage.py:15 msgctxt "@info:status" msgid "Print job was successfully sent to the printer." -msgstr "Processo di stampa inviato con successo alla stampante." +msgstr "L'envoi de la tâche d'impression à l'imprimante a réussi." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadSuccessMessage.py:16 msgctxt "@info:title" msgid "Data Sent" -msgstr "Dati inviati" +msgstr "Données envoyées" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Network/LocalClusterOutputDevice.py:62 msgctxt "@action:button Preceded by 'Ready to'." msgid "Print over network" -msgstr "Stampa sulla rete" +msgstr "Imprimer sur le réseau" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Network/LocalClusterOutputDevice.py:63 msgctxt "@properties:tooltip" msgid "Print over network" -msgstr "Stampa sulla rete" +msgstr "Imprimer sur le réseau" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Network/LocalClusterOutputDevice.py:64 msgctxt "@info:status" msgid "Connected over the network" -msgstr "Collegato alla rete" +msgstr "Connecté sur le réseau" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Utils.py:27 msgctxt "@info:status" msgid "tomorrow" -msgstr "domani" +msgstr "demain" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Utils.py:30 msgctxt "@info:status" msgid "today" -msgstr "oggi" +msgstr "aujourd'hui" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/UltimakerNetworkedPrinterAction.py:28 msgctxt "@action" msgid "Connect via Network" -msgstr "Collega tramite rete" +msgstr "Connecter via le réseau" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/AbstractCloudOutputDevice.py:80 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:162 msgctxt "@action:button" msgid "Print via cloud" -msgstr "Stampa tramite cloud" +msgstr "Imprimer via le cloud" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/AbstractCloudOutputDevice.py:81 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:163 msgctxt "@properties:tooltip" msgid "Print via cloud" -msgstr "Stampa tramite cloud" +msgstr "Imprimer via le cloud" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/AbstractCloudOutputDevice.py:82 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:164 msgctxt "@info:status" msgid "Connected via cloud" -msgstr "Collegato tramite cloud" +msgstr "Connecté via le cloud" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:425 #, python-brace-format msgctxt "@message {printer_name} is replaced with the name of the printer" msgid "{printer_name} will be removed until the next account sync." -msgstr "{printer_name} sarà rimossa fino alla prossima sincronizzazione account." +msgstr "L'imprimante {printer_name} sera supprimée jusqu'à la prochaine synchronisation de compte." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:426 #, python-brace-format msgctxt "@message {printer_name} is replaced with the name of the printer" msgid "To remove {printer_name} permanently, visit {digital_factory_link}" -msgstr "Per rimuovere definitivamente {printer_name}, visitare {digital_factory_link}" +msgstr "Pour supprimer {printer_name} définitivement, visitez le site {digital_factory_link}" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:427 #, python-brace-format msgctxt "@message {printer_name} is replaced with the name of the printer" msgid "Are you sure you want to remove {printer_name} temporarily?" -msgstr "Rimuovere temporaneamente {printer_name}?" +msgstr "Voulez-vous vraiment supprimer {printer_name} temporairement ?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:474 msgctxt "@title:window" msgid "Remove printers?" -msgstr "Rimuovere le stampanti?" +msgstr "Supprimer des imprimantes ?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:477 #, python-brace-format @@ -1195,8 +1196,8 @@ msgid_plural "" "You are about to remove {0} printers from Cura. This action cannot be " "undone.\n" "Are you sure you want to continue?" -msgstr[0] "Si sta per rimuovere {0} stampante da Cura. Questa azione non può essere annullata.\nContinuare?" -msgstr[1] "Si stanno per rimuovere {0} stampanti da Cura. Questa azione non può essere annullata.\nContinuare?" +msgstr[0] "Vous êtes sur le point de supprimer {0} imprimante de Cura. Cette action est irréversible.\nVoulez-vous vraiment continuer ?" +msgstr[1] "Vous êtes sur le point de supprimer {0} imprimantes de Cura. Cette action est irréversible.\nVoulez-vous vraiment continuer ?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:484 msgctxt "@label" @@ -1204,112 +1205,112 @@ msgid "" "You are about to remove all printers from Cura. This action cannot be " "undone.\n" "Are you sure you want to continue?" -msgstr "Si stanno per rimuovere tutte le stampanti da Cura. Questa azione non può essere annullata. \nContinuare?" +msgstr "Vous êtes sur le point de supprimer toutes les imprimantes de Cura. Cette action est irréversible.\nVoulez-vous vraiment continuer ?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:276 msgctxt "@action:button" msgid "Monitor print" -msgstr "Monitora stampa" +msgstr "Surveiller l'impression" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:278 msgctxt "@action:tooltip" msgid "Track the print in Ultimaker Digital Factory" -msgstr "Traccia la stampa in Ultimaker Digital Factory" +msgstr "Suivre l'impression dans Ultimaker Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:298 #, python-brace-format msgctxt "@error:send" msgid "Unknown error code when uploading print job: {0}" -msgstr "Codice di errore sconosciuto durante il caricamento del processo di stampa: {0}" +msgstr "Code d'erreur inconnu lors du téléchargement d'une tâche d'impression : {0}" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/__init__.py:28 msgctxt "@item:inlistbox" msgid "3MF file" -msgstr "File 3MF" +msgstr "Fichier 3MF" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/__init__.py:36 msgctxt "@item:inlistbox" msgid "Cura Project 3MF file" -msgstr "File 3MF Progetto Cura" +msgstr "Projet Cura fichier 3MF" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWriter.py:240 msgctxt "@error:zip" msgid "Error writing 3mf file." -msgstr "Errore scrittura file 3MF." +msgstr "Erreur d'écriture du fichier 3MF." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:31 msgctxt "@error:zip" msgid "3MF Writer plug-in is corrupt." -msgstr "Plug-in Writer 3MF danneggiato." +msgstr "Le plug-in 3MF Writer est corrompu." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:37 msgctxt "@error" msgid "There is no workspace yet to write. Please add a printer first." -msgstr "Ancora nessuna area di lavoro da scrivere. Aggiungere innanzitutto una stampante." +msgstr "Il n'y a pas encore d'espace de travail à écrire. Veuillez d'abord ajouter une imprimante." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:64 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:97 msgctxt "@error:zip" msgid "No permission to write the workspace here." -msgstr "Nessuna autorizzazione di scrittura dell'area di lavoro qui." +msgstr "Aucune autorisation d'écrire l'espace de travail ici." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:101 msgctxt "@error:zip" msgid "" "The operating system does not allow saving a project file to this location " "or with this file name." -msgstr "Il sistema operativo non consente di salvare un file di progetto in questa posizione o con questo nome file." +msgstr "Le système d'exploitation ne permet pas d'enregistrer un fichier de projet à cet emplacement ou avec ce nom de fichier." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/DriveApiService.py:86 #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26 msgctxt "@info:backup_status" msgid "There was an error trying to restore your backup." -msgstr "Si è verificato un errore cercando di ripristinare il backup." +msgstr "Une erreur s’est produite lors de la tentative de restauration de votre sauvegarde." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:69 msgctxt "@item:inmenu" msgid "Manage backups" -msgstr "Gestione backup" +msgstr "Gérer les sauvegardes" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:25 msgctxt "@info:title" msgid "Backups" -msgstr "Backup" +msgstr "Sauvegardes" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:26 msgctxt "@info:backup_status" msgid "There was an error while uploading your backup." -msgstr "Si è verificato un errore durante il caricamento del backup." +msgstr "Une erreur s’est produite lors du téléchargement de votre sauvegarde." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:46 msgctxt "@info:backup_status" msgid "Creating your backup..." -msgstr "Creazione del backup in corso..." +msgstr "Création de votre sauvegarde..." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:55 msgctxt "@info:backup_status" msgid "There was an error while creating your backup." -msgstr "Si è verificato un errore durante la creazione del backup." +msgstr "Une erreur s'est produite lors de la création de votre sauvegarde." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:59 msgctxt "@info:backup_status" msgid "Uploading your backup..." -msgstr "Caricamento backup in corso..." +msgstr "Téléchargement de votre sauvegarde..." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:69 msgctxt "@info:backup_status" msgid "Your backup has finished uploading." -msgstr "Caricamento backup completato." +msgstr "Le téléchargement de votre sauvegarde est terminé." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:103 msgctxt "@error:file_size" msgid "The backup exceeds the maximum file size." -msgstr "Il backup supera la dimensione file massima." +msgstr "La sauvegarde dépasse la taille de fichier maximale." #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/SliceInfo.py:95 msgctxt "@text" msgid "Unable to read example data file." -msgstr "Impossibile leggere il file di dati di esempio." +msgstr "Impossible de lire le fichier de données d'exemple." #: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:62 #: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:78 @@ -1319,54 +1320,54 @@ msgstr "Impossibile leggere il file di dati di esempio." #: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:178 msgctxt "@info:error" msgid "Can't write to UFP file:" -msgstr "Impossibile scrivere nel file UFP:" +msgstr "Impossible d'écrire dans le fichier UFP :" #: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/__init__.py:28 #: /Users/c.lamboo/ultimaker/Cura/plugins/UFPReader/__init__.py:22 msgctxt "@item:inlistbox" msgid "Ultimaker Format Package" -msgstr "Pacchetto formato Ultimaker" +msgstr "Ultimaker Format Package" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py:19 msgctxt "@text Placeholder for the username if it has been deleted" msgid "deleted user" -msgstr "deleted user" +msgstr "utilisateur supprimé" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeProfileReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/__init__.py:16 msgctxt "@item:inlistbox" msgid "G-code File" -msgstr "File G-Code" +msgstr "Fichier GCode" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/FlavorParser.py:350 msgctxt "@info:status" msgid "Parsing G-code" -msgstr "Parsing codice G" +msgstr "Analyse du G-Code" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/FlavorParser.py:352 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/FlavorParser.py:506 msgctxt "@info:title" msgid "G-code Details" -msgstr "Dettagli codice G" +msgstr "Détails G-Code" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/FlavorParser.py:504 msgctxt "@info:generic" msgid "" "Make sure the g-code is suitable for your printer and printer configuration " "before sending the file to it. The g-code representation may not be accurate." -msgstr "Verifica che il codice G sia idoneo alla tua stampante e alla sua configurazione prima di trasmettere il file. La rappresentazione del codice G potrebbe" -" non essere accurata." +msgstr "Assurez-vous que le g-code est adapté à votre imprimante et à la configuration de l'imprimante avant d'y envoyer le fichier. La représentation du g-code" +" peut ne pas être exacte." #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:18 msgctxt "@item:inlistbox" msgid "G File" -msgstr "File G" +msgstr "Fichier G" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:15 msgctxt "@item:inlistbox 'Open' is part of the name of this file format." msgid "Open Compressed Triangle Mesh" -msgstr "Open Compressed Triangle Mesh" +msgstr "Ouvrir le maillage triangulaire compressé" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:19 msgctxt "@item:inlistbox" @@ -1376,251 +1377,251 @@ msgstr "COLLADA Digital Asset Exchange" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:23 msgctxt "@item:inlistbox" msgid "glTF Binary" -msgstr "glTF Binary" +msgstr "glTF binaire" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:27 msgctxt "@item:inlistbox" msgid "glTF Embedded JSON" -msgstr "glTF Embedded JSON" +msgstr "glTF incorporé JSON" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:36 msgctxt "@item:inlistbox" msgid "Stanford Triangle Format" -msgstr "Stanford Triangle Format" +msgstr "Format Triangle de Stanford" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:40 msgctxt "@item:inlistbox" msgid "Compressed COLLADA Digital Asset Exchange" -msgstr "Compressed COLLADA Digital Asset Exchange" +msgstr "COLLADA Digital Asset Exchange compressé" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.py:24 msgctxt "@action" msgid "Level build plate" -msgstr "Livella piano di stampa" +msgstr "Nivellement du plateau" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelection.py:21 msgctxt "@action" msgid "Select upgrades" -msgstr "Seleziona aggiornamenti" +msgstr "Sélectionner les mises à niveau" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeGzReader/__init__.py:17 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeGzWriter/__init__.py:17 msgctxt "@item:inlistbox" msgid "Compressed G-code File" -msgstr "File G-Code compresso" +msgstr "Fichier G-Code compressé" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/RemotePackageList.py:117 msgctxt "@info:error" msgid "Could not interpret the server's response." -msgstr "Impossibile interpretare la risposta del server." +msgstr "Impossible d'interpréter la réponse du serveur." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/RemotePackageList.py:148 msgctxt "@info:error" msgid "Could not reach Marketplace." -msgstr "Impossibile raggiungere Marketplace." +msgstr "Impossible d'accéder à la Marketplace." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/LicensePresenter.py:42 msgctxt "@button" msgid "Decline and remove from account" -msgstr "Rifiuta e rimuovi dall'account" +msgstr "Décliner et supprimer du compte" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/LicenseModel.py:12 #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/LicenseDialog.qml:79 msgctxt "@button" msgid "Decline" -msgstr "Non accetto" +msgstr "Refuser" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/LicenseModel.py:13 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:53 msgctxt "@button" msgid "Agree" -msgstr "Accetta" +msgstr "Accepter" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/LicenseModel.py:77 msgctxt "@title:window" msgid "Plugin License Agreement" -msgstr "Accordo di licenza plugin" +msgstr "Plug-in d'accord de licence" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/CloudPackageChecker.py:144 msgctxt "@info:generic" msgid "Do you want to sync material and software packages with your account?" -msgstr "Desiderate sincronizzare pacchetti materiale e software con il vostro account?" +msgstr "Vous souhaitez synchroniser du matériel et des logiciels avec votre compte ?" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/CloudPackageChecker.py:145 #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/DownloadPresenter.py:95 msgctxt "@info:title" msgid "Changes detected from your Ultimaker account" -msgstr "Modifiche rilevate dal tuo account Ultimaker" +msgstr "Changements détectés à partir de votre compte Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/CloudPackageChecker.py:147 msgctxt "@action:button" msgid "Sync" -msgstr "Sincronizza" +msgstr "Synchroniser" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/RestartApplicationPresenter.py:22 msgctxt "@info:generic" msgid "You need to quit and restart {} before changes have effect." -msgstr "Affinché le modifiche diventino effettive, è necessario chiudere e riavviare {}." +msgstr "Vous devez quitter et redémarrer {} avant que les changements apportés ne prennent effet." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/DownloadPresenter.py:91 msgctxt "@info:generic" msgid "Syncing..." -msgstr "Sincronizzazione in corso..." +msgstr "Synchronisation..." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/SyncOrchestrator.py:79 msgctxt "@info:generic" msgid "{} plugins failed to download" -msgstr "Impossibile scaricare i plugin {}" +msgstr "Échec de téléchargement des plugins {}" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/LocalPackageList.py:28 msgctxt "@label" msgid "Installed Plugins" -msgstr "Plugin installati" +msgstr "Plug-ins installés" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/LocalPackageList.py:29 msgctxt "@label" msgid "Installed Materials" -msgstr "Materiali installati" +msgstr "Matériaux installés" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/LocalPackageList.py:33 msgctxt "@label" msgid "Bundled Plugins" -msgstr "Plugin inseriti nel bundle" +msgstr "Plug-ins groupés" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/LocalPackageList.py:34 msgctxt "@label" msgid "Bundled Materials" -msgstr "Materiali inseriti nel bundle" +msgstr "Matériaux groupés" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/PackageModel.py:43 msgctxt "@label:property" msgid "Unknown Package" -msgstr "Pacchetto sconosciuto" +msgstr "Dossier inconnu" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/PackageModel.py:66 msgctxt "@label:property" msgid "Unknown Author" -msgstr "Autore sconosciuto" +msgstr "Auteur inconnu" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/WindowsRemovableDrivePlugin.py:76 msgctxt "@item:intext" msgid "Removable Drive" -msgstr "Unità rimovibile" +msgstr "Lecteur amovible" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:23 msgctxt "@action:button Preceded by 'Ready to'." msgid "Save to Removable Drive" -msgstr "Salva su unità rimovibile" +msgstr "Enregistrer sur un lecteur amovible" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:24 #, python-brace-format msgctxt "@item:inlistbox" msgid "Save to Removable Drive {0}" -msgstr "Salva su unità rimovibile {0}" +msgstr "Enregistrer sur un lecteur amovible {0}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:109 #, python-brace-format msgctxt "@info:progress Don't translate the XML tags !" msgid "Saving to Removable Drive {0}" -msgstr "Salvataggio su unità rimovibile {0}" +msgstr "Enregistrement sur le lecteur amovible {0}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:110 msgctxt "@info:title" msgid "Saving" -msgstr "Salvataggio in corso" +msgstr "Enregistrement" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:120 #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:123 #, python-brace-format msgctxt "@info:status Don't translate the XML tags or !" msgid "Could not save to {0}: {1}" -msgstr "Impossibile salvare {0}: {1}" +msgstr "Impossible d'enregistrer {0} : {1}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139 #, python-brace-format msgctxt "@info:status Don't translate the tag {device}!" msgid "Could not find a file name when trying to write to {device}." -msgstr "Impossibile trovare un nome file durante il tentativo di scrittura su {device}." +msgstr "Impossible de trouver un nom de fichier lors d'une tentative d'écriture sur {device}." #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:152 #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:171 #, python-brace-format msgctxt "@info:status" msgid "Could not save to removable drive {0}: {1}" -msgstr "Impossibile salvare su unità rimovibile {0}: {1}" +msgstr "Impossible d'enregistrer sur le lecteur {0}: {1}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:162 #, python-brace-format msgctxt "@info:status" msgid "Saved to Removable Drive {0} as {1}" -msgstr "Salvato su unità rimovibile {0} come {1}" +msgstr "Enregistré sur le lecteur amovible {0} sous {1}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:163 msgctxt "@info:title" msgid "File Saved" -msgstr "File salvato" +msgstr "Fichier enregistré" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165 msgctxt "@action:button" msgid "Eject" -msgstr "Rimuovi" +msgstr "Ejecter" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165 #, python-brace-format msgctxt "@action" msgid "Eject removable device {0}" -msgstr "Rimuovi il dispositivo rimovibile {0}" +msgstr "Ejecter le lecteur amovible {0}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:184 #, python-brace-format msgctxt "@info:status" msgid "Ejected {0}. You can now safely remove the drive." -msgstr "Espulso {0}. È ora possibile rimuovere in modo sicuro l'unità." +msgstr "Lecteur {0} éjecté. Vous pouvez maintenant le retirer en tout sécurité." #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:185 msgctxt "@info:title" msgid "Safely Remove Hardware" -msgstr "Rimozione sicura dell'hardware" +msgstr "Retirez le lecteur en toute sécurité" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:188 #, python-brace-format msgctxt "@info:status" msgid "Failed to eject {0}. Another program may be using the drive." -msgstr "Espulsione non riuscita {0}. È possibile che un altro programma stia utilizzando l’unità." +msgstr "Impossible d'éjecter {0}. Un autre programme utilise peut-être ce lecteur." #: /Users/c.lamboo/ultimaker/Cura/plugins/MonitorStage/__init__.py:14 msgctxt "@item:inmenu" msgid "Monitor" -msgstr "Controlla" +msgstr "Surveiller" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:162 msgctxt "@message" msgid "" "Slicing failed with an unexpected error. Please consider reporting a bug on " "our issue tracker." -msgstr "Sezionamento non riuscito con un errore imprevisto. Valutare se segnalare un bug nel registro problemi." +msgstr "Échec de la découpe avec une erreur inattendue. Signalez un bug sur notre outil de suivi des problèmes." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:163 msgctxt "@message:title" msgid "Slicing failed" -msgstr "Sezionamento non riuscito" +msgstr "Échec de la découpe" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:168 msgctxt "@message:button" msgid "Report a bug" -msgstr "Segnala un errore" +msgstr "Notifier un bug" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:169 msgctxt "@message:description" msgid "Report a bug on Ultimaker Cura's issue tracker." -msgstr "Segnalare un errore nel registro problemi di Ultimaker Cura." +msgstr "Notifiez un bug sur l'outil de suivi des problèmes d'Ultimaker Cura." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:401 msgctxt "@info:status" msgid "" "Unable to slice with the current material as it is incompatible with the " "selected machine or configuration." -msgstr "Impossibile eseguire il sezionamento con il materiale corrente in quanto incompatibile con la macchina o la configurazione selezionata." +msgstr "Impossible de découper le matériau actuel, car celui-ci est incompatible avec la machine ou la configuration sélectionnée." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:402 #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:435 @@ -1630,7 +1631,7 @@ msgstr "Impossibile eseguire il sezionamento con il materiale corrente in quanto #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:499 msgctxt "@info:title" msgid "Unable to slice" -msgstr "Sezionamento impossibile" +msgstr "Impossible de découper" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:434 #, python-brace-format @@ -1638,7 +1639,7 @@ msgctxt "@info:status" msgid "" "Unable to slice with the current settings. The following settings have " "errors: {0}" -msgstr "Impossibile eseguire il sezionamento con le impostazioni attuali. Le seguenti impostazioni presentano errori: {0}" +msgstr "Impossible de couper avec les paramètres actuels. Les paramètres suivants contiennent des erreurs : {0}" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:461 #, python-brace-format @@ -1646,13 +1647,13 @@ msgctxt "@info:status" msgid "" "Unable to slice due to some per-model settings. The following settings have " "errors on one or more models: {error_labels}" -msgstr "Impossibile eseguire il sezionamento a causa di alcune impostazioni per modello. Le seguenti impostazioni presentano errori su uno o più modelli: {error_labels}" +msgstr "Impossible de couper en raison de certains paramètres par modèle. Les paramètres suivants contiennent des erreurs sur un ou plusieurs modèles : {error_labels}" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:473 msgctxt "@info:status" msgid "" "Unable to slice because the prime tower or prime position(s) are invalid." -msgstr "Impossibile eseguire il sezionamento perché la torre di innesco o la posizione di innesco non sono valide." +msgstr "Impossible de couper car la tour primaire ou la (les) position(s) d'amorçage ne sont pas valides." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:485 #, python-format @@ -1660,7 +1661,7 @@ msgctxt "@info:status" msgid "" "Unable to slice because there are objects associated with disabled Extruder " "%s." -msgstr "Impossibile effettuare il sezionamento in quanto vi sono oggetti associati a Extruder %s disabilitato." +msgstr "Impossible de couper car il existe des objets associés à l'extrudeuse désactivée %s." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:495 msgctxt "@info:status" @@ -1669,35 +1670,35 @@ msgid "" "- Fit within the build volume\n" "- Are assigned to an enabled extruder\n" "- Are not all set as modifier meshes" -msgstr "Verificare le impostazioni e controllare se i modelli:\n- Rientrano nel volume di stampa\n- Sono assegnati a un estrusore abilitato\n- Non sono tutti impostati" -" come maglie modificatore" +msgstr "Veuillez vérifier les paramètres et si vos modèles :\n- S'intègrent dans le volume de fabrication\n- Sont affectés à un extrudeur activé\n- N sont pas" +" tous définis comme des mailles de modificateur" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:52 #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:260 msgctxt "@info:status" msgid "Processing Layers" -msgstr "Elaborazione dei livelli" +msgstr "Traitement des couches" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:261 msgctxt "@info:title" msgid "Information" -msgstr "Informazioni" +msgstr "Informations" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/__init__.py:27 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/__init__.py:33 msgctxt "@item:inlistbox" msgid "3MF File" -msgstr "File 3MF" +msgstr "Fichier 3MF" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.py:212 msgctxt "@title:tab" msgid "Recommended" -msgstr "Consigliata" +msgstr "Recommandé" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.py:214 msgctxt "@title:tab" msgid "Custom" -msgstr "Personalizzata" +msgstr "Personnalisé" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.py:390 msgctxt "@info:status" @@ -1725,13 +1726,13 @@ msgid "" "Project file {0} contains an unknown machine type " "{1}. Cannot import the machine. Models will be imported " "instead." -msgstr "Il file di progetto {0} contiene un tipo di macchina sconosciuto {1}. Impossibile importare la macchina. Verranno" -" invece importati i modelli." +msgstr "Le fichier projet {0} contient un type de machine inconnu {1}. Impossible d'importer la machine. Les modèles seront" +" importés à la place." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:548 msgctxt "@info:title" msgid "Open Project File" -msgstr "Apri file progetto" +msgstr "Ouvrir un fichier de projet" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:650 #, python-brace-format @@ -1739,14 +1740,14 @@ msgctxt "@info:error Don't translate the XML tags or !" msgid "" "Project file {0} is suddenly inaccessible: {1}" "." -msgstr "Il file di progetto {0} è diventato improvvisamente inaccessibile: {1}." +msgstr "Le fichier de projet {0} est soudainement inaccessible : {1}." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:651 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:659 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:678 msgctxt "@info:title" msgid "Can't Open Project File" -msgstr "Impossibile aprire il file di progetto" +msgstr "Impossible d'ouvrir le fichier de projet" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:658 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:676 @@ -1754,7 +1755,7 @@ msgstr "Impossibile aprire il file di progetto" msgctxt "@info:error Don't translate the XML tags or !" msgid "" "Project file {0} is corrupt: {1}." -msgstr "Il file di progetto {0} è danneggiato: {1}." +msgstr "Le fichier de projet {0} est corrompu : {1}." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:723 #, python-brace-format @@ -1762,22 +1763,22 @@ msgctxt "@info:error Don't translate the XML tag !" msgid "" "Project file {0} is made using profiles that are " "unknown to this version of Ultimaker Cura." -msgstr "Il file di progetto {0} è realizzato con profili sconosciuti a questa versione di Ultimaker Cura." +msgstr "Le fichier de projet {0} a été réalisé en utilisant des profils inconnus de cette version d'Ultimaker Cura." #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/__init__.py:14 msgctxt "@label" msgid "Per Model Settings" -msgstr "Impostazioni per modello" +msgstr "Paramètres par modèle" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/__init__.py:15 msgctxt "@info:tooltip" msgid "Configure Per Model Settings" -msgstr "Configura impostazioni per modello" +msgstr "Configurer les paramètres par modèle" #: /Users/c.lamboo/ultimaker/Cura/plugins/ModelChecker/ModelChecker.py:31 msgctxt "@info:title" msgid "3D Model Assistant" -msgstr "Assistente modello 3D" +msgstr "Assistant de modèle 3D" #: /Users/c.lamboo/ultimaker/Cura/plugins/ModelChecker/ModelChecker.py:97 #, python-brace-format @@ -1790,131 +1791,131 @@ msgid "" "p>\n" "

    View print quality " "guide

    " -msgstr "

    La stampa di uno o più modelli 3D può non avvenire in modo ottimale a causa della dimensioni modello e della configurazione materiale:

    \n

    {model_names}

    \n

    Scopri" -" come garantire la migliore qualità ed affidabilità di stampa.

    \n

    Visualizza la guida alla qualità" -" di stampa

    " +msgstr "

    Un ou plusieurs modèles 3D peuvent ne pas s'imprimer de manière optimale en raison de la taille du modèle et de la configuration matérielle :

    \n

    {model_names}

    \n

    Découvrez" +" comment optimiser la qualité et la fiabilité de l'impression.

    \n

    Consultez le guide de qualité" +" d'impression

    " #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:42 msgctxt "@item:inmenu" msgid "USB printing" -msgstr "Stampa USB" +msgstr "Impression par USB" #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:43 msgctxt "@action:button Preceded by 'Ready to'." msgid "Print via USB" -msgstr "Stampa tramite USB" +msgstr "Imprimer via USB" #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:44 msgctxt "@info:tooltip" msgid "Print via USB" -msgstr "Stampa tramite USB" +msgstr "Imprimer via USB" #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:80 msgctxt "@info:status" msgid "Connected via USB" -msgstr "Connesso tramite USB" +msgstr "Connecté via USB" #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:110 msgctxt "@label" msgid "" "A USB print is in progress, closing Cura will stop this print. Are you sure?" -msgstr "Stampa tramite USB in corso, la chiusura di Cura interrompe la stampa. Confermare?" +msgstr "Une impression USB est en cours, la fermeture de Cura arrêtera cette impression. Êtes-vous sûr ?" #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:135 msgctxt "@message" msgid "" "A print is still in progress. Cura cannot start another print via USB until " "the previous print has completed." -msgstr "Stampa ancora in corso. Cura non può avviare un'altra stampa tramite USB finché la precedente non è stata completata." +msgstr "Une impression est encore en cours. Cura ne peut pas démarrer une autre impression via USB tant que l'impression précédente n'est pas terminée." #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:136 msgctxt "@message" msgid "Print in Progress" -msgstr "Stampa in corso" +msgstr "Impression en cours" #: /Users/c.lamboo/ultimaker/Cura/plugins/PreviewStage/__init__.py:13 msgctxt "@item:inmenu" msgid "Preview" -msgstr "Anteprima" +msgstr "Aperçu" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/GCodeWriter.py:75 msgctxt "@error:not supported" msgid "GCodeWriter does not support non-text mode." -msgstr "GCodeWriter non supporta la modalità non di testo." +msgstr "GCodeWriter ne prend pas en charge le mode non-texte." #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/GCodeWriter.py:81 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/GCodeWriter.py:97 msgctxt "@warning:status" msgid "Please prepare G-code before exporting." -msgstr "Preparare il codice G prima dell’esportazione." +msgstr "Veuillez préparer le G-Code avant d'exporter." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.py:27 msgctxt "@action" msgid "Update Firmware" -msgstr "Aggiornamento firmware" +msgstr "Mettre à jour le firmware" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeGzWriter/GCodeGzWriter.py:43 msgctxt "@error:not supported" msgid "GCodeGzWriter does not support text mode." -msgstr "GCodeGzWriter non supporta la modalità di testo." +msgstr "GCodeGzWriter ne prend pas en charge le mode texte." #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/__init__.py:15 msgctxt "@item:inlistbox" msgid "Layer view" -msgstr "Visualizzazione strato" +msgstr "Vue en couches" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:129 msgctxt "@info:status" msgid "Cura does not accurately display layers when Wire Printing is enabled." -msgstr "Cura non visualizza in modo accurato i layer se la funzione Wire Printing è abilitata." +msgstr "Cura n'affiche pas les couches avec précision lorsque l'impression filaire est activée." #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:130 msgctxt "@info:title" msgid "Simulation View" -msgstr "Vista simulazione" +msgstr "Vue simulation" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:133 msgctxt "@info:status" msgid "Nothing is shown because you need to slice first." -msgstr "Non viene visualizzato nulla poiché è necessario prima effetuare lo slicing." +msgstr "Rien ne s'affiche car vous devez d'abord découper." #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:134 msgctxt "@info:title" msgid "No layers to show" -msgstr "Nessun layer da visualizzare" +msgstr "Pas de couches à afficher" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:136 #: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/SolidView.py:74 msgctxt "@info:option_text" msgid "Do not show this message again" -msgstr "Non mostrare nuovamente questo messaggio" +msgstr "Ne plus afficher ce message" #: /Users/c.lamboo/ultimaker/Cura/plugins/LegacyProfileReader/__init__.py:14 msgctxt "@item:inlistbox" msgid "Cura 15.04 profiles" -msgstr "Profili Cura 15.04" +msgstr "Profils Cura 15.04" #: /Users/c.lamboo/ultimaker/Cura/plugins/AMFReader/__init__.py:15 msgctxt "@item:inlistbox" msgid "AMF File" -msgstr "File AMF" +msgstr "Fichier AMF" #: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/SolidView.py:71 msgctxt "@info:status" msgid "" "The highlighted areas indicate either missing or extraneous surfaces. Fix " "your model and open it again into Cura." -msgstr "Le aree evidenziate indicano superfici mancanti o estranee. Correggi il modello e aprilo nuovamente in Cura." +msgstr "Les zones surlignées indiquent que des surfaces manquent ou sont étrangères. Réparez votre modèle et ouvrez-le à nouveau dans Cura." #: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/SolidView.py:73 msgctxt "@info:title" msgid "Model Errors" -msgstr "Errori modello" +msgstr "Erreurs du modèle" #: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/__init__.py:12 msgctxt "@item:inmenu" msgid "Solid view" -msgstr "Visualizzazione compatta" +msgstr "Vue solide" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerMessage.py:17 #, python-brace-format @@ -1925,49 +1926,49 @@ msgid "" "New features or bug-fixes may be available for your {machine_name}! If you " "haven't done so already, it is recommended to update the firmware on your " "printer to version {latest_version}." -msgstr "Nuove funzionalità o bug fix potrebbero essere disponibili per {machine_name}. Se non è già stato fatto in precedenza, si consiglia di aggiornare il firmware" -" della stampante alla versione {latest_version}." +msgstr "De nouvelles fonctionnalités ou des correctifs de bugs sont disponibles pour votre {machine_name} ! Si vous ne l'avez pas encore fait, il est recommandé" +" de mettre à jour le micrologiciel de votre imprimante avec la version {latest_version}." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerMessage.py:22 #, python-format msgctxt "@info:title The %s gets replaced with the printer name." msgid "New %s stable firmware available" -msgstr "Nuovo firmware %s stabile disponibile" +msgstr "Nouveau %s firmware stable disponible" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerMessage.py:28 msgctxt "@action:button" msgid "How to update" -msgstr "Modalità di aggiornamento" +msgstr "Comment effectuer la mise à jour" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:127 msgctxt "@info" msgid "Could not access update information." -msgstr "Non è possibile accedere alle informazioni di aggiornamento." +msgstr "Impossible d'accéder aux informations de mise à jour." #: /Users/c.lamboo/ultimaker/Cura/plugins/SupportEraser/__init__.py:12 msgctxt "@label" msgid "Support Blocker" -msgstr "Blocco supporto" +msgstr "Blocage des supports" #: /Users/c.lamboo/ultimaker/Cura/plugins/SupportEraser/__init__.py:13 msgctxt "@info:tooltip" msgid "Create a volume in which supports are not printed." -msgstr "Crea un volume in cui i supporti non vengono stampati." +msgstr "Créer un volume dans lequel les supports ne sont pas imprimés." #: /Users/c.lamboo/ultimaker/Cura/plugins/PrepareStage/__init__.py:12 msgctxt "@item:inmenu" msgid "Prepare" -msgstr "Prepara" +msgstr "Préparer" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:56 msgctxt "@title:label" msgid "Printer Settings" -msgstr "Impostazioni della stampante" +msgstr "Paramètres de l'imprimante" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:68 msgctxt "@label" msgid "X (Width)" -msgstr "X (Larghezza)" +msgstr "X (Largeur)" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:72 #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:87 @@ -1988,42 +1989,42 @@ msgstr "mm" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:83 msgctxt "@label" msgid "Y (Depth)" -msgstr "Y (Profondità)" +msgstr "Y (Profondeur)" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:98 msgctxt "@label" msgid "Z (Height)" -msgstr "Z (Altezza)" +msgstr "Z (Hauteur)" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:112 msgctxt "@label" msgid "Build plate shape" -msgstr "Forma del piano di stampa" +msgstr "Forme du plateau" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:125 msgctxt "@label" msgid "Origin at center" -msgstr "Origine al centro" +msgstr "Origine au centre" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:137 msgctxt "@label" msgid "Heated bed" -msgstr "Piano riscaldato" +msgstr "Plateau chauffant" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:149 msgctxt "@label" msgid "Heated build volume" -msgstr "Volume di stampa riscaldato" +msgstr "Volume de fabrication chauffant" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:161 msgctxt "@label" msgid "G-code flavor" -msgstr "Versione codice G" +msgstr "Parfum G-Code" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:185 msgctxt "@title:label" msgid "Printhead Settings" -msgstr "Impostazioni della testina di stampa" +msgstr "Paramètres de la tête d'impression" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:197 msgctxt "@label" @@ -2048,87 +2049,87 @@ msgstr "Y max" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:275 msgctxt "@label" msgid "Gantry Height" -msgstr "Altezza gantry" +msgstr "Hauteur du portique" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:289 msgctxt "@label" msgid "Number of Extruders" -msgstr "Numero di estrusori" +msgstr "Nombre d'extrudeuses" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:341 msgctxt "@label" msgid "Apply Extruder offsets to GCode" -msgstr "Applica offset estrusore a gcode" +msgstr "Appliquer les décalages offset de l'extrudeuse au GCode" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:389 msgctxt "@title:label" msgid "Start G-code" -msgstr "Codice G avvio" +msgstr "G-Code de démarrage" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:400 msgctxt "@title:label" msgid "End G-code" -msgstr "Codice G fine" +msgstr "G-Code de fin" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsAction.qml:42 msgctxt "@title:tab" msgid "Printer" -msgstr "Stampante" +msgstr "Imprimante" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:63 msgctxt "@title:label" msgid "Nozzle Settings" -msgstr "Impostazioni ugello" +msgstr "Paramètres de la buse" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:74 msgctxt "@label" msgid "Nozzle size" -msgstr "Dimensione ugello" +msgstr "Taille de la buse" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:88 msgctxt "@label" msgid "Compatible material diameter" -msgstr "Diametro del materiale compatibile" +msgstr "Diamètre du matériau compatible" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:104 msgctxt "@label" msgid "Nozzle offset X" -msgstr "Scostamento X ugello" +msgstr "Décalage buse X" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:119 msgctxt "@label" msgid "Nozzle offset Y" -msgstr "Scostamento Y ugello" +msgstr "Décalage buse Y" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:134 msgctxt "@label" msgid "Cooling Fan Number" -msgstr "Numero ventola di raffreddamento" +msgstr "Numéro du ventilateur de refroidissement" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:162 msgctxt "@title:label" msgid "Extruder Start G-code" -msgstr "Codice G avvio estrusore" +msgstr "Extrudeuse G-Code de démarrage" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:176 msgctxt "@title:label" msgid "Extruder End G-code" -msgstr "Codice G fine estrusore" +msgstr "Extrudeuse G-Code de fin" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:14 msgctxt "@title:window" msgid "Convert Image" -msgstr "Converti immagine" +msgstr "Convertir l'image" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:33 msgctxt "@action:label" msgid "Height (mm)" -msgstr "Altezza (mm)" +msgstr "Hauteur (mm)" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:56 msgctxt "@info:tooltip" msgid "The maximum distance of each pixel from \"Base.\"" -msgstr "La distanza massima di ciascun pixel da \"Base.\"" +msgstr "La distance maximale de chaque pixel à partir de la « Base »." #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:66 msgctxt "@action:label" @@ -2138,37 +2139,37 @@ msgstr "Base (mm)" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:90 msgctxt "@info:tooltip" msgid "The base height from the build plate in millimeters." -msgstr "L'altezza della base dal piano di stampa in millimetri." +msgstr "La hauteur de la base à partir du plateau en millimètres." #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:100 msgctxt "@action:label" msgid "Width (mm)" -msgstr "Larghezza (mm)" +msgstr "Largeur (mm)" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:124 msgctxt "@info:tooltip" msgid "The width in millimeters on the build plate" -msgstr "La larghezza in millimetri sul piano di stampa" +msgstr "La largeur en millimètres sur le plateau de fabrication" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:134 msgctxt "@action:label" msgid "Depth (mm)" -msgstr "Profondità (mm)" +msgstr "Profondeur (mm)" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:158 msgctxt "@info:tooltip" msgid "The depth in millimeters on the build plate" -msgstr "La profondità in millimetri sul piano di stampa" +msgstr "La profondeur en millimètres sur le plateau" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:187 msgctxt "@item:inlistbox" msgid "Darker is higher" -msgstr "Più scuro è più alto" +msgstr "Le plus foncé est plus haut" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:188 msgctxt "@item:inlistbox" msgid "Lighter is higher" -msgstr "Più chiaro è più alto" +msgstr "Le plus clair est plus haut" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:195 msgctxt "@info:tooltip" @@ -2177,37 +2178,37 @@ msgid "" "to block more light coming through. For height maps lighter pixels signify " "higher terrain, so lighter pixels should correspond to thicker locations in " "the generated 3D model." -msgstr "Per le litofanie, i pixel scuri devono corrispondere alle posizioni più spesse per bloccare maggiormente il passaggio della luce. Per le mappe con altezze" -" superiori, i pixel più chiari indicano un terreno più elevato, quindi nel modello 3D generato i pixel più chiari devono corrispondere alle posizioni più" -" spesse." +msgstr "Pour les lithophanies, les pixels foncés doivent correspondre à des emplacements plus épais afin d'empêcher la lumière de passer. Pour des cartes de hauteur," +" les pixels clairs signifient un terrain plus élevé, de sorte que les pixels clairs doivent correspondre à des emplacements plus épais dans le modèle 3D" +" généré." #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:205 msgctxt "@action:label" msgid "Color Model" -msgstr "Modello a colori" +msgstr "Modèle de couleur" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:224 msgctxt "@item:inlistbox" msgid "Linear" -msgstr "Lineare" +msgstr "Linéaire" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:225 msgctxt "@item:inlistbox" msgid "Translucency" -msgstr "Traslucenza" +msgstr "Translucidité" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:232 msgctxt "@info:tooltip" msgid "" "For lithophanes a simple logarithmic model for translucency is available. " "For height maps the pixel values correspond to heights linearly." -msgstr "Per le litofanie, è disponibile un semplice modello logaritmico per la traslucenza. Per le mappe delle altezze, i valori in pixel corrispondono alle altezze" -" in modo lineare." +msgstr "Pour les lithophanes, un modèle logarithmique simple de la translucidité est disponible. Pour les cartes de hauteur, les valeurs des pixels correspondent" +" aux hauteurs de façon linéaire." #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:242 msgctxt "@action:label" msgid "1mm Transmittance (%)" -msgstr "Trasmittanza di 1 mm (%)" +msgstr "Transmission 1 mm (%)" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:263 msgctxt "@info:tooltip" @@ -2215,18 +2216,18 @@ msgid "" "The percentage of light penetrating a print with a thickness of 1 " "millimeter. Lowering this value increases the contrast in dark regions and " "decreases the contrast in light regions of the image." -msgstr "Percentuale di luce che penetra una stampa dello spessore di 1 millimetro. Se questo valore si riduce, il contrasto nelle aree scure dell'immagine aumenta," -" mentre il contrasto nelle aree chiare dell'immagine diminuisce." +msgstr "Le pourcentage de lumière pénétrant une impression avec une épaisseur de 1 millimètre. La diminution de cette valeur augmente le contraste dans les régions" +" sombres et diminue le contraste dans les régions claires de l'image." #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:274 msgctxt "@action:label" msgid "Smoothing" -msgstr "Smoothing" +msgstr "Lissage" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:298 msgctxt "@info:tooltip" msgid "The amount of smoothing to apply to the image." -msgstr "La quantità di smoothing (levigatura) da applicare all'immagine." +msgstr "La quantité de lissage à appliquer à l'image." #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:329 #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:136 @@ -2239,284 +2240,284 @@ msgstr "OK" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:17 msgctxt "@title:window" msgid "Post Processing Plugin" -msgstr "Plug-in di post-elaborazione" +msgstr "Plug-in de post-traitement" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:57 msgctxt "@label" msgid "Post Processing Scripts" -msgstr "Script di post-elaborazione" +msgstr "Scripts de post-traitement" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:215 msgctxt "@action" msgid "Add a script" -msgstr "Aggiungi uno script" +msgstr "Ajouter un script" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:251 msgctxt "@label" msgid "Settings" -msgstr "Impostazioni" +msgstr "Paramètres" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:460 msgctxt "@info:tooltip" msgid "Change active post-processing scripts." -msgstr "Modificare gli script di post-elaborazione attivi." +msgstr "Modifiez les scripts de post-traitement actifs." #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:464 msgctxt "@info:tooltip" msgid "The following script is active:" msgid_plural "The following scripts are active:" -msgstr[0] "È attivo il seguente script:" -msgstr[1] "Sono attivi i seguenti script:" +msgstr[0] "Le script suivant est actif :" +msgstr[1] "Les scripts suivants sont actifs :" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:144 msgctxt "@label" msgid "Move to top" -msgstr "Sposta in alto" +msgstr "Déplacer l'impression en haut" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:155 msgctxt "@label" msgid "Delete" -msgstr "Cancella" +msgstr "Effacer" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:186 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:284 msgctxt "@label" msgid "Resume" -msgstr "Riprendi" +msgstr "Reprendre" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:188 msgctxt "@label" msgid "Pausing..." -msgstr "Messa in pausa..." +msgstr "Mise en pause..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:190 msgctxt "@label" msgid "Resuming..." -msgstr "Ripresa in corso..." +msgstr "Reprise..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:192 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:279 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:288 msgctxt "@label" msgid "Pause" -msgstr "Pausa" +msgstr "Pause" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:206 msgctxt "@label" msgid "Aborting..." -msgstr "Interr. in corso..." +msgstr "Abandon..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:206 msgctxt "@label" msgid "Abort" -msgstr "Interrompi" +msgstr "Abandonner" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:218 msgctxt "@label %1 is the name of a print job." msgid "Are you sure you want to move %1 to the top of the queue?" -msgstr "Sei sicuro di voler spostare %1 all’inizio della coda?" +msgstr "Êtes-vous sûr de vouloir déplacer %1 en haut de la file d'attente ?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:219 msgctxt "@window:title" msgid "Move print job to top" -msgstr "Sposta il processo di stampa in alto" +msgstr "Déplacer l'impression en haut de la file d'attente" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:227 msgctxt "@label %1 is the name of a print job." msgid "Are you sure you want to delete %1?" -msgstr "Sei sicuro di voler cancellare %1?" +msgstr "Êtes-vous sûr de vouloir supprimer %1 ?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:228 msgctxt "@window:title" msgid "Delete print job" -msgstr "Cancella processo di stampa" +msgstr "Supprimer l'impression" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:236 msgctxt "@label %1 is the name of a print job." msgid "Are you sure you want to abort %1?" -msgstr "Sei sicuro di voler interrompere %1?" +msgstr "Êtes-vous sûr de vouloir annuler %1 ?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:237 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:326 msgctxt "@window:title" msgid "Abort print" -msgstr "Interrompi la stampa" +msgstr "Abandonner l'impression" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:12 msgctxt "@title:window" msgid "Print over network" -msgstr "Stampa sulla rete" +msgstr "Imprimer sur le réseau" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:53 msgctxt "@action:button" msgid "Print" -msgstr "Stampa" +msgstr "Imprimer" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:81 msgctxt "@label" msgid "Printer selection" -msgstr "Selezione stampante" +msgstr "Sélection d'imprimantes" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:20 msgctxt "@title:window" msgid "Configuration Changes" -msgstr "Modifiche configurazione" +msgstr "Modifications de configuration" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:36 msgctxt "@action:button" msgid "Override" -msgstr "Override" +msgstr "Remplacer" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:83 msgctxt "@label" msgid "The assigned printer, %1, requires the following configuration change:" msgid_plural "" "The assigned printer, %1, requires the following configuration changes:" -msgstr[0] "La stampante assegnata, %1, richiede la seguente modifica di configurazione:" -msgstr[1] "La stampante assegnata, %1, richiede le seguenti modifiche di configurazione:" +msgstr[0] "L'imprimante assignée, %1, nécessite la modification de configuration suivante :" +msgstr[1] "L'imprimante assignée, %1, nécessite les modifications de configuration suivantes :" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:87 msgctxt "@label" msgid "" "The printer %1 is assigned, but the job contains an unknown material " "configuration." -msgstr "La stampante %1 è assegnata, ma il processo contiene una configurazione materiale sconosciuta." +msgstr "L'imprimante %1 est assignée, mais le projet contient une configuration matérielle inconnue." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:97 msgctxt "@label" msgid "Change material %1 from %2 to %3." -msgstr "Cambia materiale %1 da %2 a %3." +msgstr "Changer le matériau %1 de %2 à %3." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:100 msgctxt "@label" msgid "Load %3 as material %1 (This cannot be overridden)." -msgstr "Caricare %3 come materiale %1 (Operazione non annullabile)." +msgstr "Charger %3 comme matériau %1 (Ceci ne peut pas être remplacé)." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:103 msgctxt "@label" msgid "Change print core %1 from %2 to %3." -msgstr "Cambia print core %1 da %2 a %3." +msgstr "Changer le print core %1 de %2 à %3." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:106 msgctxt "@label" msgid "Change build plate to %1 (This cannot be overridden)." -msgstr "Cambia piano di stampa a %1 (Operazione non annullabile)." +msgstr "Changer le plateau en %1 (Ceci ne peut pas être remplacé)." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:113 msgctxt "@label" msgid "" "Override will use the specified settings with the existing printer " "configuration. This may result in a failed print." -msgstr "L’override utilizza le impostazioni specificate con la configurazione stampante esistente. Ciò può causare una stampa non riuscita." +msgstr "Si vous sélectionnez « Remplacer », les paramètres de la configuration actuelle de l'imprimante seront utilisés. Cela peut entraîner l'échec de l'impression." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:151 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:181 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:178 msgctxt "@label" msgid "Glass" -msgstr "Vetro" +msgstr "Verre" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:154 msgctxt "@label" msgid "Aluminum" -msgstr "Alluminio" +msgstr "Aluminium" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:148 msgctxt "@label link to Connect and Cloud interfaces" msgid "Manage printer" -msgstr "Gestione stampanti" +msgstr "Gérer l'imprimante" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:253 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:479 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250 msgctxt "@info" msgid "Please update your printer's firmware to manage the queue remotely." -msgstr "Aggiornare il firmware della stampante per gestire la coda da remoto." +msgstr "Veuillez mettre à jour le Firmware de votre imprimante pour gérer la file d'attente à distance." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:287 msgctxt "@info" msgid "" "Webcam feeds for cloud printers cannot be viewed from Ultimaker Cura. Click " "\"Manage printer\" to visit Ultimaker Digital Factory and view this webcam." -msgstr "Impossibile visualizzare feed della Webcam per stampanti cloud da Ultimaker Cura. Fare clic su \"Gestione stampanti\" per visitare Ultimaker Digital Factory" -" e visualizzare questa Webcam." +msgstr "Les flux de webcam des imprimantes cloud ne peuvent pas être visualisés depuis Ultimaker Cura. Cliquez sur « Gérer l'imprimante » pour visiter Ultimaker" +" Digital Factory et voir cette webcam." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:347 msgctxt "@label:status" msgid "Loading..." -msgstr "Caricamento in corso..." +msgstr "Chargement..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:351 msgctxt "@label:status" msgid "Unavailable" -msgstr "Non disponibile" +msgstr "Indisponible" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:355 msgctxt "@label:status" msgid "Unreachable" -msgstr "Non raggiungibile" +msgstr "Injoignable" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:359 msgctxt "@label:status" msgid "Idle" -msgstr "Ferma" +msgstr "Inactif" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:363 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:76 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:78 msgctxt "@label:status" msgid "Preparing..." -msgstr "Preparazione in corso..." +msgstr "Préparation..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:368 msgctxt "@label:status" msgid "Printing" -msgstr "Stampa in corso" +msgstr "Impression" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:409 msgctxt "@label" msgid "Untitled" -msgstr "Senza titolo" +msgstr "Sans titre" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:424 msgctxt "@label" msgid "Anonymous" -msgstr "Anonimo" +msgstr "Anonyme" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:445 msgctxt "@label:status" msgid "Requires configuration changes" -msgstr "Richiede modifiche di configurazione" +msgstr "Nécessite des modifications de configuration" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:459 msgctxt "@action:button" msgid "Details" -msgstr "Dettagli" +msgstr "Détails" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:126 msgctxt "@label" msgid "Unavailable printer" -msgstr "Stampante non disponibile" +msgstr "Imprimante indisponible" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:128 msgctxt "@label" msgid "First available" -msgstr "Primo disponibile" +msgstr "Premier disponible" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:117 msgctxt "@info" msgid "Monitor your printers from everywhere using Ultimaker Digital Factory" -msgstr "Monitor your printers from everywhere using Ultimaker Digital Factory" +msgstr "Surveillez vos imprimantes à distance grâce à Ultimaker Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:129 msgctxt "@button" msgid "View printers in Digital Factory" -msgstr "View printers in Digital Factory" +msgstr "Afficher les imprimantes dans Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:44 msgctxt "@title:window" msgid "Connect to Networked Printer" -msgstr "Collega alla stampante in rete" +msgstr "Connecter à l'imprimante en réseau" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:51 msgctxt "@label" @@ -2526,19 +2527,19 @@ msgid "" "your printer to your WIFI network. If you don't connect Cura with your " "printer, you can still use a USB drive to transfer g-code files to your " "printer." -msgstr "Per stampare direttamente sulla stampante in rete, verificare che la stampante desiderata sia collegata alla rete mediante un cavo di rete o mediante collegamento" -" alla rete WIFI. Se non si esegue il collegamento di Cura alla stampante, è comunque possibile utilizzare una chiavetta USB per trasferire i file codice" -" G alla stampante." +msgstr "Pour imprimer directement sur votre imprimante via le réseau, assurez-vous que votre imprimante est connectée au réseau via un câble Ethernet ou en connectant" +" votre imprimante à votre réseau Wi-Fi. Si vous ne connectez pas Cura avec votre imprimante, vous pouvez utiliser une clé USB pour transférer les fichiers" +" g-code sur votre imprimante." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:51 msgctxt "@label" msgid "Select your printer from the list below:" -msgstr "Selezionare la stampante dall’elenco seguente:" +msgstr "Sélectionnez votre imprimante dans la liste ci-dessous :" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:71 msgctxt "@action:button" msgid "Edit" -msgstr "Modifica" +msgstr "Modifier" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:82 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:186 @@ -2546,109 +2547,109 @@ msgstr "Modifica" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:321 msgctxt "@action:button" msgid "Remove" -msgstr "Rimuovi" +msgstr "Supprimer" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:90 msgctxt "@action:button" msgid "Refresh" -msgstr "Aggiorna" +msgstr "Rafraîchir" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:161 msgctxt "@label" msgid "" "If your printer is not listed, read the network printing " "troubleshooting guide" -msgstr "Se la stampante non è nell’elenco, leggere la guida alla risoluzione dei problemi per la stampa in rete" +msgstr "Si votre imprimante n'apparaît pas dans la liste, lisez le guide de dépannage de l'impression en réseau" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:186 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:247 msgctxt "@label" msgid "Type" -msgstr "Tipo" +msgstr "Type" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:202 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:256 msgctxt "@label" msgid "Firmware version" -msgstr "Versione firmware" +msgstr "Version du firmware" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:212 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:266 msgctxt "@label" msgid "Address" -msgstr "Indirizzo" +msgstr "Adresse" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:232 msgctxt "@label" msgid "This printer is not set up to host a group of printers." -msgstr "Questa stampante non è predisposta per comandare un gruppo di stampanti." +msgstr "Cette imprimante n'est pas configurée pour héberger un groupe d'imprimantes." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:236 msgctxt "@label" msgid "This printer is the host for a group of %1 printers." -msgstr "Questa stampante comanda un gruppo di %1 stampanti." +msgstr "Cette imprimante est l'hôte d'un groupe d'imprimantes %1." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:245 msgctxt "@label" msgid "The printer at this address has not yet responded." -msgstr "La stampante a questo indirizzo non ha ancora risposto." +msgstr "L'imprimante à cette adresse n'a pas encore répondu." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:250 msgctxt "@action:button" msgid "Connect" -msgstr "Collega" +msgstr "Connecter" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:261 msgctxt "@title:window" msgid "Invalid IP address" -msgstr "Indirizzo IP non valido" +msgstr "Adresse IP non valide" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:262 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:141 msgctxt "@text" msgid "Please enter a valid IP address." -msgstr "Inserire un indirizzo IP valido." +msgstr "Veuillez saisir une adresse IP valide." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:272 msgctxt "@title:window" msgid "Printer Address" -msgstr "Indirizzo stampante" +msgstr "Adresse de l'imprimante" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:297 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:97 msgctxt "@label" msgid "Enter the IP address of your printer on the network." -msgstr "Inserire l'indirizzo IP della stampante in rete." +msgstr "Saisissez l'adresse IP de votre imprimante sur le réseau." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:29 msgctxt "@label" msgid "Queued" -msgstr "Coda di stampa" +msgstr "Mis en file d'attente" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:64 msgctxt "@label link to connect manager" msgid "Manage in browser" -msgstr "Gestisci nel browser" +msgstr "Gérer dans le navigateur" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:91 msgctxt "@label" msgid "There are no print jobs in the queue. Slice and send a job to add one." -msgstr "Non sono presenti processi di stampa nella coda. Eseguire lo slicing e inviare un processo per aggiungerne uno." +msgstr "Il n'y a pas de travaux d'impression dans la file d'attente. Découpez et envoyez une tache pour en ajouter une." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:99 msgctxt "@label" msgid "Print jobs" -msgstr "Processi di stampa" +msgstr "Tâches d'impression" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:108 msgctxt "@label" msgid "Total print time" -msgstr "Tempo di stampa totale" +msgstr "Temps total d'impression" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:117 msgctxt "@label" msgid "Waiting for" -msgstr "In attesa" +msgstr "Attente de" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:70 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:82 @@ -2657,18 +2658,18 @@ msgstr "In attesa" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:88 msgctxt "@label:status" msgid "Aborted" -msgstr "Interrotto" +msgstr "Abandonné" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:72 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:74 msgctxt "@label:status" msgid "Finished" -msgstr "Terminato" +msgstr "Terminé" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:80 msgctxt "@label:status" msgid "Aborting..." -msgstr "Interr. in corso..." +msgstr "Abandon..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:90 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:92 @@ -2676,133 +2677,133 @@ msgstr "Interr. in corso..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:96 msgctxt "@label:status" msgid "Failed" -msgstr "Non riuscita" +msgstr "Échec" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:98 msgctxt "@label:status" msgid "Pausing..." -msgstr "Messa in pausa..." +msgstr "Mise en pause..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:100 msgctxt "@label:status" msgid "Paused" -msgstr "In pausa" +msgstr "En pause" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:102 msgctxt "@label:status" msgid "Resuming..." -msgstr "Ripresa in corso..." +msgstr "Reprise..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:104 msgctxt "@label:status" msgid "Action required" -msgstr "Richiede un'azione" +msgstr "Action requise" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:106 msgctxt "@label:status" msgid "Finishes %1 at %2" -msgstr "Finisce %1 a %2" +msgstr "Finit %1 à %2" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/main.qml:25 msgctxt "@title:window" msgid "Cura Backups" -msgstr "Backup Cura" +msgstr "Sauvegardes Cura" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml:21 msgctxt "@backuplist:label" msgid "Cura Version" -msgstr "Versione Cura" +msgstr "Version Cura" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml:29 msgctxt "@backuplist:label" msgid "Machines" -msgstr "Macchine" +msgstr "Machines" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml:37 msgctxt "@backuplist:label" msgid "Materials" -msgstr "Materiali" +msgstr "Matériaux" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml:45 msgctxt "@backuplist:label" msgid "Profiles" -msgstr "Profili" +msgstr "Profils" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml:53 msgctxt "@backuplist:label" msgid "Plugins" -msgstr "Plugin" +msgstr "Plug-ins" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListFooter.qml:22 msgctxt "@button" msgid "Want more?" -msgstr "Ulteriori informazioni?" +msgstr "Vous en voulez plus ?" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListFooter.qml:31 msgctxt "@button" msgid "Backup Now" -msgstr "Esegui backup adesso" +msgstr "Sauvegarder maintenant" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListFooter.qml:43 msgctxt "@checkbox:description" msgid "Auto Backup" -msgstr "Backup automatico" +msgstr "Sauvegarde automatique" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListFooter.qml:44 msgctxt "@checkbox:description" msgid "Automatically create a backup each day that Cura is started." -msgstr "Crea automaticamente un backup ogni giorno in cui viene avviata Cura." +msgstr "Créez automatiquement une sauvegarde chaque jour où Cura est démarré." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItem.qml:64 msgctxt "@button" msgid "Restore" -msgstr "Ripristina" +msgstr "Restaurer" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItem.qml:93 msgctxt "@dialog:title" msgid "Delete Backup" -msgstr "Cancella backup" +msgstr "Supprimer la sauvegarde" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItem.qml:94 msgctxt "@dialog:info" msgid "Are you sure you want to delete this backup? This cannot be undone." -msgstr "Sei sicuro di voler cancellare questo backup? Questa operazione non può essere annullata." +msgstr "Êtes-vous sûr de vouloir supprimer cette sauvegarde ? Il est impossible d'annuler cette action." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItem.qml:102 msgctxt "@dialog:title" msgid "Restore Backup" -msgstr "Ripristina backup" +msgstr "Restaurer la sauvegarde" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItem.qml:103 msgctxt "@dialog:info" msgid "" "You will need to restart Cura before your backup is restored. Do you want to " "close Cura now?" -msgstr "Riavviare Cura prima di ripristinare il backup. Chiudere Cura adesso?" +msgstr "Vous devez redémarrer Cura avant que votre sauvegarde ne soit restaurée. Voulez-vous fermer Cura maintenant ?" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/BackupsPage.qml:28 msgctxt "@title" msgid "My Backups" -msgstr "I miei backup" +msgstr "Mes sauvegardes" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/BackupsPage.qml:36 msgctxt "@empty_state" msgid "" "You don't have any backups currently. Use the 'Backup Now' button to create " "one." -msgstr "Nessun backup. Usare il pulsante ‘Esegui backup adesso’ per crearne uno." +msgstr "Vous n'avez actuellement aucune sauvegarde. Utilisez le bouton « Sauvegarder maintenant » pour en créer une." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/BackupsPage.qml:55 msgctxt "@backup_limit_info" msgid "" "During the preview phase, you'll be limited to 5 visible backups. Remove a " "backup to see older ones." -msgstr "Durante la fase di anteprima, saranno visibili solo 5 backup. Rimuovi un backup per vedere quelli precedenti." +msgstr "Pendant la phase de prévisualisation, vous ne pourrez voir qu'un maximum de 5 sauvegardes. Supprimez une sauvegarde pour voir les plus anciennes." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:34 msgctxt "@description" msgid "Backup and synchronize your Cura settings." -msgstr "Backup e sincronizzazione delle impostazioni Cura." +msgstr "Sauvegardez et synchronisez vos paramètres Cura." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:47 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:180 @@ -2810,29 +2811,30 @@ msgstr "Backup e sincronizzazione delle impostazioni Cura." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/GeneralOperations.qml:49 msgctxt "@button" msgid "Sign in" -msgstr "Accedi" +msgstr "Se connecter" #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:16 msgctxt "@title:window" msgid "More information on anonymous data collection" -msgstr "Maggiori informazioni sulla raccolta di dati anonimi" +msgstr "Plus d'informations sur la collecte de données anonymes" #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:73 msgctxt "@text:window" msgid "" "Ultimaker Cura collects anonymous data in order to improve the print quality " "and user experience. Below is an example of all the data that is shared:" -msgstr "Ultimaker Cura acquisisce dati anonimi per migliorare la qualità di stampa e l'esperienza dell'utente. Di seguito è riportato un esempio dei dati condivisi:" +msgstr "Ultimaker Cura recueille des données anonymes afin d'améliorer la qualité d'impression et l'expérience utilisateur. Voici un exemple de toutes les données" +" partagées :" #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:107 msgctxt "@text:window" msgid "I don't want to send anonymous data" -msgstr "Non desidero inviare dati anonimi" +msgstr "Je ne veux pas envoyer de données anonymes" #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:116 msgctxt "@text:window" msgid "Allow sending anonymous data" -msgstr "Consenti l'invio di dati anonimi" +msgstr "Autoriser l'envoi de données anonymes" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/resources/qml/SaveProjectFilesPage.qml:216 msgctxt "@option" @@ -2847,17 +2849,17 @@ msgstr "Salva progetto Cura" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:30 msgctxt "@label" msgid "Please select any upgrades made to this Ultimaker Original" -msgstr "Seleziona qualsiasi aggiornamento realizzato per questa Ultimaker Original" +msgstr "Sélectionnez les mises à niveau disponibles pour cet Ultimaker Original" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:39 msgctxt "@label" msgid "Heated Build Plate (official kit or self-built)" -msgstr "Piano di stampa riscaldato (kit ufficiale o integrato)" +msgstr "Plateau chauffant (kit officiel ou fabriqué soi-même)" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.qml:30 msgctxt "@title" msgid "Build Plate Leveling" -msgstr "Livellamento del piano di stampa" +msgstr "Nivellement du plateau" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.qml:42 msgctxt "@label" @@ -2865,8 +2867,8 @@ msgid "" "To make sure your prints will come out great, you can now adjust your " "buildplate. When you click 'Move to Next Position' the nozzle will move to " "the different positions that can be adjusted." -msgstr "Per assicurarsi stampe di alta qualità, è ora possibile regolare il piano di stampa. Quando si fa clic su 'Spostamento alla posizione successiva' l'ugello" -" si sposterà in diverse posizioni che è possibile regolare." +msgstr "Pour obtenir des résultats d'impression optimaux, vous pouvez maintenant régler votre plateau. Quand vous cliquez sur 'Aller à la position suivante', la" +" buse se déplacera vers les différentes positions pouvant être réglées." #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.qml:52 msgctxt "@label" @@ -2874,18 +2876,18 @@ msgid "" "For every position; insert a piece of paper under the nozzle and adjust the " "print build plate height. The print build plate height is right when the " "paper is slightly gripped by the tip of the nozzle." -msgstr "Per ciascuna posizione: inserire un pezzo di carta sotto l'ugello e regolare la stampa dell'altezza del piano di stampa. L'altezza del piano di stampa" -" è corretta quando la carta sfiora la punta dell'ugello." +msgstr "Pour chacune des positions ; glissez un bout de papier sous la buse et ajustez la hauteur du plateau. La hauteur du plateau est juste lorsque la pointe" +" de la buse gratte légèrement le papier." #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.qml:67 msgctxt "@action:button" msgid "Start Build Plate Leveling" -msgstr "Avvio livellamento del piano di stampa" +msgstr "Démarrer le nivellement du plateau" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.qml:79 msgctxt "@action:button" msgid "Move to Next Position" -msgstr "Spostamento alla posizione successiva" +msgstr "Aller à la position suivante" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:172 msgctxt "@label Is followed by the name of an author" @@ -2896,74 +2898,74 @@ msgstr "Per mezzo di" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/OnboardBanner.qml:101 msgctxt "@button:label" msgid "Learn More" -msgstr "Ulteriori Informazioni" +msgstr "En Savoir Plus" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:226 msgctxt "@button" msgid "Enable" -msgstr "Abilita" +msgstr "Activer" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:226 msgctxt "@button" msgid "Disable" -msgstr "Disabilita" +msgstr "Désactiver" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:244 msgctxt "@button" msgid "Downgrading..." -msgstr "Downgrade in corso..." +msgstr "Téléchargement..." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:245 msgctxt "@button" msgid "Downgrade" -msgstr "Downgrade" +msgstr "Revenir à une version précédente" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:249 msgctxt "@button" msgid "Installing..." -msgstr "Installazione in corso..." +msgstr "Installation..." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:250 msgctxt "@button" msgid "Install" -msgstr "Installazione" +msgstr "Installer" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:254 msgctxt "@button" msgid "Uninstall" -msgstr "Disinstalla" +msgstr "Désinstaller" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:269 msgctxt "@button" msgid "Updating..." -msgstr "Aggiornamento in corso..." +msgstr "Mise à jour..." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:269 msgctxt "@button" msgid "Update" -msgstr "Aggiorna" +msgstr "Mise à jour" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Plugins.qml:8 msgctxt "@header" msgid "Install Plugins" -msgstr "Installa plugin" +msgstr "Installer les plug-ins" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Plugins.qml:12 msgctxt "@text" msgid "" "Streamline your workflow and customize your Ultimaker Cura experience with " "plugins contributed by our amazing community of users." -msgstr "Semplifica il flusso di lavoro e personalizza l'esperienza Ultimaker Cura experience con plugin forniti dalla nostra eccezionale comunità di utenti." +msgstr "Simplifiez votre flux de travail et personnalisez votre expérience Ultimaker Cura avec des plug-ins fournis par notre incroyable communauté d'utilisateurs." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:15 msgctxt "@title" msgid "Changes from your account" -msgstr "Modifiche dall'account" +msgstr "Changements à partir de votre compte" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:24 msgctxt "@button" msgid "Dismiss" -msgstr "Rimuovi" +msgstr "Ignorer" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:24 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:76 @@ -2971,196 +2973,196 @@ msgstr "Rimuovi" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:118 msgctxt "@button" msgid "Next" -msgstr "Avanti" +msgstr "Suivant" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:52 msgctxt "@label" msgid "The following packages will be added:" -msgstr "Verranno aggiunti i seguenti pacchetti:" +msgstr "Les packages suivants seront ajoutés:" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:94 msgctxt "@label" msgid "" "The following packages can not be installed because of an incompatible Cura " "version:" -msgstr "Impossibile installare i seguenti pacchetti a causa di una versione di Cura non compatibile:" +msgstr "Les packages suivants ne peuvent pas être installés en raison d'une version incompatible de Cura :" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/MultipleLicenseDialog.qml:35 msgctxt "@label" msgid "You need to accept the license to install the package" -msgstr "È necessario accettare la licenza per installare il pacchetto" +msgstr "Vous devez accepter la licence pour installer le package" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/LicenseDialog.qml:15 msgctxt "@button" msgid "Plugin license agreement" -msgstr "Accordo di licenza plugin" +msgstr "Contrat de licence du plugin" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/LicenseDialog.qml:47 msgctxt "@text" msgid "Please read and agree with the plugin licence." -msgstr "Leggi e accetta la licenza del plugin." +msgstr "Veuillez lire et accepter la licence du plug-in." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/LicenseDialog.qml:70 msgctxt "@button" msgid "Accept" -msgstr "Accetto" +msgstr "Accepter" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Materials.qml:8 #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/MissingPackages.qml:8 msgctxt "@header" msgid "Install Materials" -msgstr "Installa materiali" +msgstr "Installer des matériaux" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Materials.qml:12 msgctxt "@text" msgid "" "Select and install material profiles optimised for your Ultimaker 3D " "printers." -msgstr "Selezionare e installare i profili dei materiali ottimizzati per le stampanti 3D Ultimaker." +msgstr "Sélectionnez et installez des profils de matériaux optimisés pour vos imprimantes 3D Ultimaker." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/ManagePackagesButton.qml:32 msgctxt "@info:tooltip" msgid "Manage packages" -msgstr "Gestisci pacchetti" +msgstr "Gérer les packages" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:81 msgctxt "@header" msgid "Description" -msgstr "Descrizione" +msgstr "Description" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:110 msgctxt "@header" msgid "Compatible printers" -msgstr "Stampanti compatibili" +msgstr "Imprimantes compatibles" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:134 msgctxt "@info" msgid "No compatibility information" -msgstr "Nessuna informazione sulla compatibilità" +msgstr "Aucune information sur la compatibilité" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:152 msgctxt "@header" msgid "Compatible support materials" -msgstr "Materiali di supporto compatibili" +msgstr "Matériaux de support compatibles" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:176 msgctxt "@info No materials" msgid "None" -msgstr "Nessuno" +msgstr "Aucun" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:193 msgctxt "@header" msgid "Compatible with Material Station" -msgstr "Compatibile con Material Station" +msgstr "Compatible avec la Material Station" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:202 #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:228 msgctxt "@info" msgid "Yes" -msgstr "Sì" +msgstr "Oui" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:202 #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:228 msgctxt "@info" msgid "No" -msgstr "No" +msgstr "Non" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:219 msgctxt "@header" msgid "Optimized for Air Manager" -msgstr "Ottimizzato per Air Manager" +msgstr "Optimisé pour Air Manager" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:243 msgctxt "@button" msgid "Visit plug-in website" -msgstr "Visita il sito web del plug-in" +msgstr "Visitez le site Web du plug-in" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:243 msgctxt "@button" msgid "Website" -msgstr "Sito web" +msgstr "Site Internet" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:252 msgctxt "@button" msgid "Buy spool" -msgstr "Acquista bobina" +msgstr "Acheter une bobine" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:261 msgctxt "@button" msgid "Safety datasheet" -msgstr "Scheda tecnica sulla sicurezza" +msgstr "Fiche technique sur la sécurité" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:270 msgctxt "@button" msgid "Technical datasheet" -msgstr "Scheda tecnica" +msgstr "Fiche technique" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageDetails.qml:15 msgctxt "@header" msgid "Package details" -msgstr "Dettagli pacchetto" +msgstr "Détails sur le paquet" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageDetails.qml:40 msgctxt "@button:tooltip" msgid "Back" -msgstr "Indietro" +msgstr "Précédent" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:151 msgctxt "@button" msgid "Failed to load packages:" -msgstr "Impossibile caricare pacchetti:" +msgstr "Échec du chargement des packages :" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:151 msgctxt "@button" msgid "Retry?" -msgstr "Riprovare?" +msgstr "Réessayer ?" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:167 msgctxt "@button" msgid "Loading" -msgstr "Caricamento in corso" +msgstr "Chargement" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:183 msgctxt "@message" msgid "No more results to load" -msgstr "Nessun altro risultato da caricare" +msgstr "Plus aucun résultat à charger" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:183 msgctxt "@message" msgid "No results found with current filter" -msgstr "Nessun risultato trovato con il filtro corrente" +msgstr "Aucun résultat trouvé avec le filtre actuel" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:226 msgctxt "@button" msgid "Load more" -msgstr "Carica altro" +msgstr "Charger plus" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/VerifiedIcon.qml:21 msgctxt "@info" msgid "Ultimaker Verified Plug-in" -msgstr "Plug-in verificato Ultimaker" +msgstr "Plug-in Ultimaker vérifié" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/VerifiedIcon.qml:22 msgctxt "@info" msgid "Ultimaker Certified Material" -msgstr "Materiale certificato Ultimaker" +msgstr "Matériau Ultimaker certifié" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/VerifiedIcon.qml:23 msgctxt "@info" msgid "Ultimaker Verified Package" -msgstr "Pacchetto verificato Ultimaker" +msgstr "Package Ultimaker vérifié" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/ManagedPackages.qml:11 msgctxt "@header" msgid "Manage packages" -msgstr "Gestisci pacchetti" +msgstr "Gérer les packages" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/ManagedPackages.qml:15 msgctxt "@text" msgid "" "Manage your Ultimaker Cura plugins and material profiles here. Make sure to " "keep your plugins up to date and backup your setup regularly." -msgstr "Gestisci i plugin Ultimaker Cura e i profili del materiale qui. Accertarsi di mantenere i plugin aggiornati e di eseguire regolarmente il backup dell'impostazione." +msgstr "Gérez vos plug-ins Ultimaker Cura et vos profils matériaux ici. Assurez-vous de maintenir vos plug-ins à jour et de sauvegarder régulièrement votre configuration." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/InstallMissingPackagesDialog.qml:15 msgctxt "@title" @@ -3170,32 +3172,32 @@ msgstr "Installa materiali mancanti" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:87 msgctxt "@title" msgid "Loading..." -msgstr "Caricamento in corso..." +msgstr "Chargement..." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:148 msgctxt "@button" msgid "Plugins" -msgstr "Plugin" +msgstr "Plug-ins" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:156 msgctxt "@button" msgid "Materials" -msgstr "Materiali" +msgstr "Matériaux" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:193 msgctxt "@info" msgid "Search in the browser" -msgstr "Cerca nel browser" +msgstr "Rechercher dans le navigateur" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:271 msgctxt "@button" msgid "In order to use the package you will need to restart Cura" -msgstr "Per utilizzare il pacchetto è necessario riavviare Cura" +msgstr "Pour pouvoir utiliser le package, vous devrez redémarrer Cura" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:279 msgctxt "@info:button, %1 is the application name" msgid "Quit %1" -msgstr "Chiudere %1" +msgstr "Quitter %1" #: /Users/c.lamboo/ultimaker/Cura/plugins/MonitorStage/MonitorMain.qml:100 msgctxt "@info" @@ -3204,78 +3206,78 @@ msgid "" "- Check if the printer is turned on.\n" "- Check if the printer is connected to the network.\n" "- Check if you are signed in to discover cloud-connected printers." -msgstr "Accertarsi che la stampante sia collegata:\n- Controllare se la stampante è accesa.\n- Controllare se la stampante è collegata alla rete.\n- Controllare" -" se è stato effettuato l'accesso per rilevare le stampanti collegate al cloud." +msgstr "Assurez-vous que votre imprimante est connectée :\n- Vérifiez si l'imprimante est sous tension.\n- Vérifiez si l'imprimante est connectée au réseau.- Vérifiez" +" si vous êtes connecté pour découvrir les imprimantes connectées au cloud." #: /Users/c.lamboo/ultimaker/Cura/plugins/MonitorStage/MonitorMain.qml:113 msgctxt "@info" msgid "Please connect your printer to the network." -msgstr "Collegare la stampante alla rete." +msgstr "Veuillez connecter votre imprimante au réseau." #: /Users/c.lamboo/ultimaker/Cura/plugins/MonitorStage/MonitorMain.qml:148 msgctxt "@label link to technical assistance" msgid "View user manuals online" -msgstr "Visualizza i manuali utente online" +msgstr "Voir les manuels d'utilisation en ligne" #: /Users/c.lamboo/ultimaker/Cura/plugins/MonitorStage/MonitorMain.qml:164 msgctxt "@info" msgid "In order to monitor your print from Cura, please connect the printer." -msgstr "Al fine di monitorare la stampa da Cura, collegare la stampante." +msgstr "Pour surveiller votre impression depuis Cura, veuillez connecter l'imprimante." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:15 msgctxt "@title:window" msgid "Open Project" -msgstr "Apri progetto" +msgstr "Ouvrir un projet" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:64 msgctxt "@action:ComboBox Update/override existing profile" msgid "Update existing" -msgstr "Aggiorna esistente" +msgstr "Mettre à jour l'existant" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:65 msgctxt "@action:ComboBox Save settings in a new profile" msgid "Create new" -msgstr "Crea nuovo" +msgstr "Créer" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:83 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:61 msgctxt "@action:title" msgid "Summary - Cura Project" -msgstr "Riepilogo - Progetto Cura" +msgstr "Résumé - Projet Cura" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:109 msgctxt "@info:tooltip" msgid "How should the conflict in the machine be resolved?" -msgstr "Come può essere risolto il conflitto nella macchina?" +msgstr "Comment le conflit de la machine doit-il être résolu ?" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:165 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:97 msgctxt "@action:label" msgid "Printer settings" -msgstr "Impostazioni della stampante" +msgstr "Paramètres de l'imprimante" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:176 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:106 msgctxt "@action:label" msgid "Type" -msgstr "Tipo" +msgstr "Type" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:193 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:121 msgctxt "@action:label" msgid "Printer Group" -msgstr "Gruppo stampanti" +msgstr "Groupe d'imprimantes" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:218 msgctxt "@info:tooltip" msgid "How should the conflict in the profile be resolved?" -msgstr "Come può essere risolto il conflitto nel profilo?" +msgstr "Comment le conflit du profil doit-il être résolu ?" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:240 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:222 msgctxt "@action:label" msgid "Profile settings" -msgstr "Impostazioni profilo" +msgstr "Paramètres de profil" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:251 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:376 @@ -3283,7 +3285,7 @@ msgstr "Impostazioni profilo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:246 msgctxt "@action:label" msgid "Name" -msgstr "Nome" +msgstr "Nom" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:269 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:263 @@ -3295,74 +3297,74 @@ msgstr "Intent" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:230 msgctxt "@action:label" msgid "Not in profile" -msgstr "Non nel profilo" +msgstr "Absent du profil" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:293 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:235 msgctxt "@action:label" msgid "%1 override" msgid_plural "%1 overrides" -msgstr[0] "%1 override" -msgstr[1] "%1 override" +msgstr[0] "%1 écrasent" +msgstr[1] "%1 écrase" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:306 msgctxt "@action:label" msgid "Derivative from" -msgstr "Derivato da" +msgstr "Dérivé de" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:312 msgctxt "@action:label" msgid "%1, %2 override" msgid_plural "%1, %2 overrides" -msgstr[0] "%1, %2 override" -msgstr[1] "%1, %2 override" +msgstr[0] "%1, %2 écrasent" +msgstr[1] "%1, %2 écrase" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:334 msgctxt "@info:tooltip" msgid "How should the conflict in the material be resolved?" -msgstr "Come può essere risolto il conflitto nel materiale?" +msgstr "Comment le conflit du matériau doit-il être résolu ?" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:361 msgctxt "@action:label" msgid "Material settings" -msgstr "Impostazioni materiale" +msgstr "Paramètres du matériau" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:397 msgctxt "@action:label" msgid "Setting visibility" -msgstr "Impostazione visibilità" +msgstr "Visibilité des paramètres" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:406 msgctxt "@action:label" msgid "Mode" -msgstr "Modalità" +msgstr "Mode" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:422 msgctxt "@action:label" msgid "Visible settings:" -msgstr "Impostazioni visibili:" +msgstr "Paramètres visibles :" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:427 msgctxt "@action:label" msgid "%1 out of %2" -msgstr "%1 su %2" +msgstr "%1 sur %2" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:448 msgctxt "@action:warning" msgid "Loading a project will clear all models on the build plate." -msgstr "Il caricamento di un progetto annulla tutti i modelli sul piano di stampa." +msgstr "Le chargement d'un projet effacera tous les modèles sur le plateau." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:490 msgctxt "@label" msgid "" "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." -msgstr "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." +msgstr "Le matériau utilisé dans ce projet n'est actuellement pas installé dans Cura.
    Installez le profil du matériau et rouvrez le projet." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:515 msgctxt "@action:button" msgid "Open" -msgstr "Apri" +msgstr "Ouvrir" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:521 msgctxt "@action:button" @@ -3377,63 +3379,63 @@ msgstr "Installa materiale mancante" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:41 msgctxt "@label" msgid "Mesh Type" -msgstr "Tipo di maglia" +msgstr "Type de maille" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:81 msgctxt "@label" msgid "Normal model" -msgstr "Modello normale" +msgstr "Modèle normal" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:96 msgctxt "@label" msgid "Print as support" -msgstr "Stampa come supporto" +msgstr "Imprimer comme support" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:111 msgctxt "@label" msgid "Modify settings for overlaps" -msgstr "Modificare le impostazioni per le sovrapposizioni" +msgstr "Modifier les paramètres de chevauchement" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:126 msgctxt "@label" msgid "Don't support overlaps" -msgstr "Non supportano le sovrapposizioni" +msgstr "Ne prend pas en charge le chevauchement" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:159 msgctxt "@item:inlistbox" msgid "Infill mesh only" -msgstr "Solo maglia di riempimento" +msgstr "Maille de remplissage uniquement" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:160 msgctxt "@item:inlistbox" msgid "Cutting mesh" -msgstr "Ritaglio mesh" +msgstr "Maille de coupe" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:385 msgctxt "@action:button" msgid "Select settings" -msgstr "Seleziona impostazioni" +msgstr "Sélectionner les paramètres" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:17 msgctxt "@title:window" msgid "Select Settings to Customize for this model" -msgstr "Seleziona impostazioni di personalizzazione per questo modello" +msgstr "Sélectionner les paramètres pour personnaliser ce modèle" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:61 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:102 msgctxt "@label:textbox" msgid "Filter..." -msgstr "Filtro..." +msgstr "Filtrer..." #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:75 msgctxt "@label:checkbox" msgid "Show all" -msgstr "Mostra tutto" +msgstr "Afficher tout" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:31 msgctxt "@title" msgid "Update Firmware" -msgstr "Aggiornamento firmware" +msgstr "Mettre à jour le firmware" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:37 msgctxt "@label" @@ -3441,165 +3443,166 @@ msgid "" "Firmware is the piece of software running directly on your 3D printer. This " "firmware controls the step motors, regulates the temperature and ultimately " "makes your printer work." -msgstr "Il firmware è la parte di software eseguita direttamente sulla stampante 3D. Questo firmware controlla i motori passo-passo, regola la temperatura e, in" -" ultima analisi, consente il funzionamento della stampante." +msgstr "Le firmware est le logiciel fonctionnant directement dans votre imprimante 3D. Ce firmware contrôle les moteurs pas à pas, régule la température et surtout," +" fait que votre machine fonctionne." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:43 msgctxt "@label" msgid "" "The firmware shipping with new printers works, but new versions tend to have " "more features and improvements." -msgstr "Il firmware inviato a corredo delle nuove stampanti funziona, tuttavia le nuove versioni tendono ad avere più funzioni ed ottimizzazioni." +msgstr "Le firmware fourni avec les nouvelles imprimantes fonctionne, mais les nouvelles versions ont tendance à fournir davantage de fonctionnalités ainsi que" +" des améliorations." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:55 msgctxt "@action:button" msgid "Automatically upgrade Firmware" -msgstr "Aggiorna automaticamente il firmware" +msgstr "Mise à niveau automatique du firmware" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:66 msgctxt "@action:button" msgid "Upload custom Firmware" -msgstr "Carica il firmware personalizzato" +msgstr "Charger le firmware personnalisé" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:79 msgctxt "@label" msgid "" "Firmware can not be updated because there is no connection with the printer." -msgstr "Impossibile aggiornare il firmware: nessun collegamento con la stampante." +msgstr "Impossible de se connecter à l'imprimante ; échec de la mise à jour du firmware." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:86 msgctxt "@label" msgid "" "Firmware can not be updated because the connection with the printer does not " "support upgrading firmware." -msgstr "Impossibile aggiornare il firmware: il collegamento con la stampante non supporta l’aggiornamento del firmware." +msgstr "Échec de la mise à jour du firmware, car cette fonctionnalité n'est pas prise en charge par la connexion avec l'imprimante." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:93 msgctxt "@title:window" msgid "Select custom firmware" -msgstr "Seleziona il firmware personalizzato" +msgstr "Sélectionner le firmware personnalisé" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:113 msgctxt "@title:window" msgid "Firmware Update" -msgstr "Aggiornamento del firmware" +msgstr "Mise à jour du firmware" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:137 msgctxt "@label" msgid "Updating firmware." -msgstr "Aggiornamento firmware." +msgstr "Mise à jour du firmware en cours." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:139 msgctxt "@label" msgid "Firmware update completed." -msgstr "Aggiornamento del firmware completato." +msgstr "Mise à jour du firmware terminée." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:141 msgctxt "@label" msgid "Firmware update failed due to an unknown error." -msgstr "Aggiornamento firmware non riuscito a causa di un errore sconosciuto." +msgstr "Échec de la mise à jour du firmware en raison d'une erreur inconnue." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:143 msgctxt "@label" msgid "Firmware update failed due to an communication error." -msgstr "Aggiornamento firmware non riuscito a causa di un errore di comunicazione." +msgstr "Échec de la mise à jour du firmware en raison d'une erreur de communication." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:145 msgctxt "@label" msgid "Firmware update failed due to an input/output error." -msgstr "Aggiornamento firmware non riuscito a causa di un errore di input/output." +msgstr "Échec de la mise à jour du firmware en raison d'une erreur d'entrée/de sortie." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:147 msgctxt "@label" msgid "Firmware update failed due to missing firmware." -msgstr "Aggiornamento firmware non riuscito per firmware mancante." +msgstr "Échec de la mise à jour du firmware en raison du firmware manquant." #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:18 #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:47 msgctxt "@label" msgid "Color scheme" -msgstr "Schema colori" +msgstr "Modèle de couleurs" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:104 msgctxt "@label:listbox" msgid "Material Color" -msgstr "Colore materiale" +msgstr "Couleur du matériau" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:108 msgctxt "@label:listbox" msgid "Line Type" -msgstr "Tipo di linea" +msgstr "Type de ligne" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:112 msgctxt "@label:listbox" msgid "Speed" -msgstr "Velocità" +msgstr "Vitesse" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:116 msgctxt "@label:listbox" msgid "Layer Thickness" -msgstr "Spessore layer" +msgstr "Épaisseur de la couche" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:120 msgctxt "@label:listbox" msgid "Line Width" -msgstr "Larghezza della linea" +msgstr "Largeur de ligne" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:124 msgctxt "@label:listbox" msgid "Flow" -msgstr "Flusso" +msgstr "Débit" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:164 msgctxt "@label" msgid "Compatibility Mode" -msgstr "Modalità di compatibilità" +msgstr "Mode de compatibilité" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:231 msgctxt "@label" msgid "Travels" -msgstr "Spostamenti" +msgstr "Déplacements" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:237 msgctxt "@label" msgid "Helpers" -msgstr "Helper" +msgstr "Aides" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:243 msgctxt "@label" msgid "Shell" -msgstr "Guscio" +msgstr "Coque" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:249 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:74 msgctxt "@label" msgid "Infill" -msgstr "Riempimento" +msgstr "Remplissage" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:257 msgctxt "@label" msgid "Starts" -msgstr "Avvia" +msgstr "Démarre" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:304 msgctxt "@label" msgid "Only Show Top Layers" -msgstr "Mostra solo strati superiori" +msgstr "Afficher uniquement les couches supérieures" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:313 msgctxt "@label" msgid "Show 5 Detailed Layers On Top" -msgstr "Mostra 5 strati superiori in dettaglio" +msgstr "Afficher 5 niveaux détaillés en haut" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:326 msgctxt "@label" msgid "Top / Bottom" -msgstr "Superiore / Inferiore" +msgstr "Haut / bas" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:330 msgctxt "@label" msgid "Inner Wall" -msgstr "Parete interna" +msgstr "Paroi interne" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:397 msgctxt "@label" @@ -3614,36 +3617,36 @@ msgstr "max" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/SearchBar.qml:17 msgctxt "@placeholder" msgid "Search" -msgstr "Cerca" +msgstr "Rechercher" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:84 msgctxt "@label" msgid "" "This setting is not used because all the settings that it influences are " "overridden." -msgstr "Questa impostazione non è utilizzata perché tutte le impostazioni che influenza sono sottoposte a override." +msgstr "Ce paramètre n'est pas utilisé car tous les paramètres qu'il influence sont remplacés." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:89 msgctxt "@label Header for list of settings." msgid "Affects" -msgstr "Influisce su" +msgstr "Touche" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:94 msgctxt "@label Header for list of settings." msgid "Affected By" -msgstr "Influenzato da" +msgstr "Touché par" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:190 msgctxt "@label" msgid "" "This setting is always shared between all extruders. Changing it here will " "change the value for all extruders." -msgstr "Questa impostazione è sempre condivisa tra tutti gli estrusori. La sua modifica varierà il valore per tutti gli estrusori." +msgstr "Ce paramètre est toujours partagé par toutes les extrudeuses. Le modifier ici entraînera la modification de la valeur pour toutes les extrudeuses." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:194 msgctxt "@label" msgid "This setting is resolved from conflicting extruder-specific values:" -msgstr "Questa impostazione viene risolta dai valori in conflitto specifici dell'estrusore:" +msgstr "Ce paramètre est résolu à partir de valeurs conflictuelles spécifiques à l'extrudeur :" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:234 msgctxt "@label" @@ -3651,7 +3654,7 @@ msgid "" "This setting has a value that is different from the profile.\n" "\n" "Click to restore the value of the profile." -msgstr "Questa impostazione ha un valore diverso dal profilo.\n\nFare clic per ripristinare il valore del profilo." +msgstr "Ce paramètre possède une valeur qui est différente du profil.\n\nCliquez pour restaurer la valeur du profil." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:334 msgctxt "@label" @@ -3660,43 +3663,43 @@ msgid "" "set.\n" "\n" "Click to restore the calculated value." -msgstr "Questa impostazione normalmente viene calcolata, ma attualmente ha impostato un valore assoluto.\n\nFare clic per ripristinare il valore calcolato." +msgstr "Ce paramètre est normalement calculé mais il possède actuellement une valeur absolue définie.\n\nCliquez pour restaurer la valeur calculée." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:48 msgctxt "@label:textbox" msgid "Search settings" -msgstr "Impostazioni ricerca" +msgstr "Paramètres de recherche" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:395 msgctxt "@action:menu" msgid "Copy value to all extruders" -msgstr "Copia valore su tutti gli estrusori" +msgstr "Copier la valeur vers tous les extrudeurs" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:404 msgctxt "@action:menu" msgid "Copy all changed values to all extruders" -msgstr "Copia tutti i valori modificati su tutti gli estrusori" +msgstr "Copier toutes les valeurs modifiées vers toutes les extrudeuses" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:440 msgctxt "@action:menu" msgid "Hide this setting" -msgstr "Nascondi questa impostazione" +msgstr "Masquer ce paramètre" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:453 msgctxt "@action:menu" msgid "Don't show this setting" -msgstr "Nascondi questa impostazione" +msgstr "Masquer ce paramètre" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:457 msgctxt "@action:menu" msgid "Keep this setting visible" -msgstr "Mantieni visibile questa impostazione" +msgstr "Afficher ce paramètre" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:476 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:467 msgctxt "@action:menu" msgid "Configure setting visibility..." -msgstr "Configura visibilità delle impostazioni..." +msgstr "Configurer la visibilité des paramètres..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingCategory.qml:115 msgctxt "@label" @@ -3705,156 +3708,156 @@ msgid "" "value.\n" "\n" "Click to make these settings visible." -msgstr "Alcune impostazioni nascoste utilizzano valori diversi dal proprio valore normale calcolato.\n\nFare clic per rendere visibili queste impostazioni." +msgstr "Certains paramètres masqués utilisent des valeurs différentes de leur valeur normalement calculée.\n\nCliquez pour rendre ces paramètres visibles." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MainWindow/MainWindowHeader.qml:135 msgctxt "@action:button" msgid "Marketplace" -msgstr "Mercato" +msgstr "Marché en ligne" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MainWindow/ApplicationMenu.qml:63 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:13 msgctxt "@title:menu menubar:toplevel" msgid "&Settings" -msgstr "&Impostazioni" +msgstr "&Paramètres" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MainWindow/ApplicationMenu.qml:87 msgctxt "@title:window" msgid "New project" -msgstr "Nuovo progetto" +msgstr "Nouveau projet" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MainWindow/ApplicationMenu.qml:88 msgctxt "@info:question" msgid "" "Are you sure you want to start a new project? This will clear the build " "plate and any unsaved settings." -msgstr "Sei sicuro di voler aprire un nuovo progetto? Questo cancellerà il piano di stampa e tutte le impostazioni non salvate." +msgstr "Êtes-vous sûr(e) de souhaiter lancer un nouveau projet ? Cela supprimera les objets du plateau ainsi que tous paramètres non enregistrés." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:13 msgctxt "@title:tab" msgid "Setting Visibility" -msgstr "Impostazione visibilità" +msgstr "Visibilité des paramètres" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:24 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:134 msgctxt "@action:button" msgid "Defaults" -msgstr "Valori predefiniti" +msgstr "Rétablir les paramètres par défaut" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:55 msgctxt "@label:textbox" msgid "Check all" -msgstr "Controlla tutto" +msgstr "Vérifier tout" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:18 msgctxt "@title:window" msgid "Sync materials with printers" -msgstr "Sincronizza materiali con stampanti" +msgstr "Synchroniser les matériaux avec les imprimantes" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:49 msgctxt "@title:header" msgid "Sync materials with printers" -msgstr "Sincronizza materiali con stampanti" +msgstr "Synchroniser les matériaux avec les imprimantes" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:55 msgctxt "@text" msgid "" "Following a few simple steps, you will be able to synchronize all your " "material profiles with your printers." -msgstr "Seguendo alcuni semplici passaggi, sarà possibile sincronizzare tutti i profili del materiale con le stampanti." +msgstr "En suivant quelques étapes simples, vous serez en mesure de synchroniser tous vos profils de matériaux avec vos imprimantes." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:77 msgctxt "@button" msgid "Why do I need to sync material profiles?" -msgstr "Cosa occorre per sincronizzare i profili del materiale?" +msgstr "Pourquoi dois-je synchroniser les profils de matériaux ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:86 msgctxt "@button" msgid "Start" -msgstr "Avvio" +msgstr "Démarrer" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:144 msgctxt "@title:header" msgid "Sign in" -msgstr "Accedi" +msgstr "Se connecter" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:150 msgctxt "@text" msgid "" "To automatically sync the material profiles with all your printers connected " "to Digital Factory you need to be signed in in Cura." -msgstr "Per sincronizzare automaticamente i profili del materiale con tutte le stampanti collegate a Digital Factory è necessario aver effettuato l'accesso a Cura." +msgstr "Pour synchroniser automatiquement les profils de matériaux avec toutes vos imprimantes connectées à Digital Factory, vous devez être connecté à Cura." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:174 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:462 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:602 msgctxt "@button" msgid "Sync materials with USB" -msgstr "Sincronizza materiali con USB" +msgstr "Synchroniser les matériaux avec USB" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:207 msgctxt "@title:header" msgid "The following printers will receive the new material profiles:" -msgstr "Le stampanti seguenti riceveranno i nuovi profili del materiale:" +msgstr "Les imprimantes suivantes recevront les nouveaux profils de matériaux :" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:214 msgctxt "@title:header" msgid "Something went wrong when sending the materials to the printers." -msgstr "Si è verificato un errore durante l'invio di materiali alle stampanti." +msgstr "Un problème est survenu lors de l'envoi des matériaux aux imprimantes." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:221 msgctxt "@title:header" msgid "Material profiles successfully synced with the following printers:" -msgstr "I profili del materiale sono stati sincronizzati correttamente con le stampanti seguenti:" +msgstr "Les profils de matériaux ont été synchronisés avec les imprimantes suivantes :" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:258 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:445 msgctxt "@button" msgid "Troubleshooting" -msgstr "Ricerca e riparazione dei guasti" +msgstr "Dépannage" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:422 msgctxt "@text Asking the user whether printers are missing in a list." msgid "Printers missing?" -msgstr "Mancano stampanti?" +msgstr "Imprimantes manquantes ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:424 msgctxt "@text" msgid "" "Make sure all your printers are turned ON and connected to Digital Factory." -msgstr "Accertarsi che tutte le stampanti siano accese e collegate a Digital Factory." +msgstr "Assurez-vous que toutes vos imprimantes sont allumées et connectées à Digital Factory." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:433 msgctxt "@button" msgid "Refresh List" -msgstr "Aggiorna elenco" +msgstr "Actualiser la liste" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:473 msgctxt "@button" msgid "Try again" -msgstr "Riprova" +msgstr "Réessayer" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:477 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:712 msgctxt "@button" msgid "Done" -msgstr "Eseguito" +msgstr "Terminé" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:479 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:622 msgctxt "@button" msgid "Sync" -msgstr "Sincronizza" +msgstr "Synchroniser" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:535 msgctxt "@button" msgid "Syncing" -msgstr "Sincronizzazione" +msgstr "Synchronisation" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:553 msgctxt "@title:header" msgid "No printers found" -msgstr "Nessuna stampante trovata" +msgstr "Aucune imprimante trouvée" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:574 msgctxt "@text" @@ -3862,270 +3865,271 @@ msgid "" "It seems like you don't have any compatible printers connected to Digital " "Factory. Make sure your printer is connected and it's running the latest " "firmware." -msgstr "Nessuna stampante compatibile collegata a Digital Factory. Accertarsi che la stampante sia collegata e che il firmware più recente sia in esecuzione." +msgstr "Il semble que vous n'ayez aucune imprimante compatible connectée à Digital Factory. Assurez-vous que votre imprimante est connectée et qu'elle utilise" +" le dernier micrologiciel." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:585 msgctxt "@button" msgid "Learn how to connect your printer to Digital Factory" -msgstr "Scopri come collegare la stampante a Digital Factory" +msgstr "Découvrez comment connecter votre imprimante à Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:613 msgctxt "@button" msgid "Refresh" -msgstr "Aggiorna" +msgstr "Rafraîchir" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:642 msgctxt "@title:header" msgid "Sync material profiles via USB" -msgstr "Sincronizza profili del materiale tramite USB" +msgstr "Synchroniser les profils de matériaux via USB" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:648 msgctxt "" "@text In the UI this is followed by a list of steps the user needs to take." msgid "" "Follow the following steps to load the new material profiles to your printer." -msgstr "Eseguire le operazioni descritte di seguito per caricare nuovi profili del materiale nella stampante." +msgstr "Suivez les étapes suivantes pour charger les nouveaux profils de matériaux dans votre imprimante." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:679 msgctxt "@text" msgid "Click the export material archive button." -msgstr "Fare clic sul pulsante Esporta archivio materiali." +msgstr "Cliquez sur le bouton d'exportation des archives de matériaux." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:680 msgctxt "@text" msgid "Save the .umm file on a USB stick." -msgstr "Salvare il file .umm su una chiavetta USB." +msgstr "Enregistrez le fichier .umm sur une clé USB." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:681 msgctxt "@text" msgid "" "Insert the USB stick into your printer and launch the procedure to load new " "material profiles." -msgstr "Inserire la chiavetta USB nella stampante e avviare la procedura per caricare nuovi profili del materiale." +msgstr "Insérez la clé USB dans votre imprimante et lancez la procédure pour charger de nouveaux profils de matériaux." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:689 msgctxt "@button" msgid "How to load new material profiles to my printer" -msgstr "Come caricare nuovi profili del materiale nella stampante" +msgstr "Comment charger de nouveaux profils de matériaux dans mon imprimante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:703 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:299 msgctxt "@button" msgid "Back" -msgstr "Indietro" +msgstr "Précédent" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:712 msgctxt "@button" msgid "Export material archive" -msgstr "Esporta archivio materiali" +msgstr "Exporter l'archive des matériaux" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:747 msgctxt "@title:window" msgid "Export All Materials" -msgstr "Esporta tutti i materiali" +msgstr "Exporter tous les matériaux" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:121 msgctxt "@title:window" msgid "Confirm Diameter Change" -msgstr "Conferma modifica diametro" +msgstr "Confirmer le changement de diamètre" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:122 msgctxt "@label (%1 is a number)" msgid "" "The new filament diameter is set to %1 mm, which is not compatible with the " "current extruder. Do you wish to continue?" -msgstr "Il nuovo diametro del filamento impostato a %1 mm non è compatibile con l'attuale estrusore. Continuare?" +msgstr "Le nouveau diamètre de filament est réglé sur %1 mm, ce qui n'est pas compatible avec l'extrudeuse actuelle. Souhaitez-vous poursuivre ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:152 msgctxt "@label" msgid "Display Name" -msgstr "Visualizza nome" +msgstr "Afficher le nom" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:171 msgctxt "@label" msgid "Brand" -msgstr "Marchio" +msgstr "Marque" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:190 msgctxt "@label" msgid "Material Type" -msgstr "Tipo di materiale" +msgstr "Type de matériau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:210 msgctxt "@label" msgid "Color" -msgstr "Colore" +msgstr "Couleur" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:262 msgctxt "@title" msgid "Material color picker" -msgstr "Selettore colore materiale" +msgstr "Sélecteur de couleur de matériau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:275 msgctxt "@label" msgid "Properties" -msgstr "Proprietà" +msgstr "Propriétés" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:286 msgctxt "@label" msgid "Density" -msgstr "Densità" +msgstr "Densité" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:319 msgctxt "@label" msgid "Diameter" -msgstr "Diametro" +msgstr "Diamètre" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:369 msgctxt "@label" msgid "Filament Cost" -msgstr "Costo del filamento" +msgstr "Coût du filament" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:401 msgctxt "@label" msgid "Filament weight" -msgstr "Peso del filamento" +msgstr "Poids du filament" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:433 msgctxt "@label" msgid "Filament length" -msgstr "Lunghezza del filamento" +msgstr "Longueur du filament" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:451 msgctxt "@label" msgid "Cost per Meter" -msgstr "Costo al metro" +msgstr "Coût au mètre" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:465 msgctxt "@label" msgid "This material is linked to %1 and shares some of its properties." -msgstr "Questo materiale è collegato a %1 e condivide alcune delle sue proprietà." +msgstr "Ce matériau est lié à %1 et partage certaines de ses propriétés." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:472 msgctxt "@label" msgid "Unlink Material" -msgstr "Scollega materiale" +msgstr "Délier le matériau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:485 msgctxt "@label" msgid "Description" -msgstr "Descrizione" +msgstr "Description" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:503 msgctxt "@label" msgid "Adhesion Information" -msgstr "Informazioni sull’aderenza" +msgstr "Informations d'adhérence" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:642 msgctxt "@title" msgid "Information" -msgstr "Informazioni" +msgstr "Informations" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:647 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedPrintSetup.qml:82 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:18 msgctxt "@label" msgid "Print settings" -msgstr "Impostazioni di stampa" +msgstr "Paramètres d'impression" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:70 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:468 msgctxt "@title:tab" msgid "Materials" -msgstr "Materiali" +msgstr "Matériaux" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:72 msgctxt "@label" msgid "Materials compatible with active printer:" -msgstr "Materiali compatibili con la stampante attiva:" +msgstr "Matériaux compatibles avec l'imprimante active :" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:78 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:94 msgctxt "@action:button" msgid "Create new" -msgstr "Crea nuovo" +msgstr "Créer" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:90 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:88 msgctxt "@action:button" msgid "Import" -msgstr "Importa" +msgstr "Importer" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:101 msgctxt "@action:button" msgid "Sync with Printers" -msgstr "Sincronizza con le stampanti" +msgstr "Synchroniser les imprimantes" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:160 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:142 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:294 msgctxt "@action:button" msgid "Activate" -msgstr "Attiva" +msgstr "Activer" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:174 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:311 msgctxt "@action:button" msgid "Duplicate" -msgstr "Duplica" +msgstr "Dupliquer" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:198 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:342 msgctxt "@action:button" msgid "Export" -msgstr "Esporta" +msgstr "Exporter" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:212 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:392 msgctxt "@title:window" msgid "Confirm Remove" -msgstr "Conferma rimozione" +msgstr "Confirmer la suppression" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:215 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:393 msgctxt "@label (%1 is object name)" msgid "Are you sure you wish to remove %1? This cannot be undone!" -msgstr "Sei sicuro di voler rimuovere %1? Questa operazione non può essere annullata!" +msgstr "Êtes-vous sûr de vouloir supprimer l'objet %1 ? Vous ne pourrez pas revenir en arrière !" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:228 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:238 msgctxt "@title:window" msgid "Import Material" -msgstr "Importa materiale" +msgstr "Importer un matériau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:242 msgctxt "@info:status Don't translate the XML tag !" msgid "Successfully imported material %1" -msgstr "Materiale importato correttamente %1" +msgstr "Matériau %1 importé avec succès" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:245 msgctxt "@info:status Don't translate the XML tags or !" msgid "" "Could not import material %1: %2" -msgstr "Impossibile importare materiale {1}: %2" +msgstr "Impossible d'importer le matériau %1 : %2" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:256 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:267 msgctxt "@title:window" msgid "Export Material" -msgstr "Esporta materiale" +msgstr "Exporter un matériau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:272 msgctxt "@info:status Don't translate the XML tags and !" msgid "" "Failed to export material to %1: %2" -msgstr "Impossibile esportare il materiale su %1: %2" +msgstr "Échec de l'exportation de matériau vers %1 : %2" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:275 msgctxt "@info:status Don't translate the XML tag !" msgid "Successfully exported material to %1" -msgstr "Materiale esportato correttamente su %1" +msgstr "Matériau exporté avec succès vers %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityItem.qml:56 msgctxt "@item:tooltip" msgid "" "This setting has been hidden by the active machine and will not be visible." -msgstr "Questa impostazione è stata nascosta dalla macchina attiva e non sarà visibile." +msgstr "Ce paramètre a été masqué par la machine active et ne sera pas visible." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityItem.qml:73 msgctxt "@item:tooltip %1 is list of setting names" @@ -4135,306 +4139,306 @@ msgid "" msgid_plural "" "This setting has been hidden by the values of %1. Change the values of those " "settings to make this setting visible." -msgstr[0] "Questa impostazione è stata nascosta dal valore di %1. Modifica il valore di tale impostazione per rendere visibile l’impostazione." -msgstr[1] "Questa impostazione è stata nascosta dai valori di %1. Modifica i valori di tali impostazioni per rendere visibile questa impostazione." +msgstr[0] "Ce paramètre a été masqué par la valeur de %1. Modifiez la valeur de ce paramètre pour le rendre visible." +msgstr[1] "Ce paramètre a été masqué par les valeurs de %1. Modifiez les valeurs de ces paramètres pour les rendre visibles." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:14 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:461 msgctxt "@title:tab" msgid "General" -msgstr "Generale" +msgstr "Général" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:172 msgctxt "@label" msgid "Interface" -msgstr "Interfaccia" +msgstr "Interface" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:215 msgctxt "@heading" msgid "-- incomplete --" -msgstr "-- incompleto --" +msgstr "--complet --" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:261 msgctxt "@label" msgid "Currency:" -msgstr "Valuta:" +msgstr "Devise :" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:277 msgctxt "" "@label: Please keep the asterix, it's to indicate that a restart is needed." msgid "Theme*:" -msgstr "Tema*:" +msgstr "Thème* :" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:323 msgctxt "@info:tooltip" msgid "Slice automatically when changing settings." -msgstr "Seziona automaticamente alla modifica delle impostazioni." +msgstr "Découper automatiquement si les paramètres sont modifiés." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:331 msgctxt "@option:check" msgid "Slice automatically" -msgstr "Seziona automaticamente" +msgstr "Découper automatiquement" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:340 msgctxt "@info:tooltip" msgid "Show an icon and notifications in the system notification area." -msgstr "Show an icon and notifications in the system notification area." +msgstr "Afficher une icône et des notifications dans la zone de notification du système." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:348 msgctxt "@option:check" msgid "Add icon to system tray *" -msgstr "Add icon to system tray *" +msgstr "Ajouter une icône à la barre de notification *" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:357 msgctxt "@label" msgid "" "*You will need to restart the application for these changes to have effect." -msgstr "*Per rendere effettive le modifiche è necessario riavviare l'applicazione." +msgstr "*Vous devez redémarrer l'application pour appliquer ces changements." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:373 msgctxt "@label" msgid "Viewport behavior" -msgstr "Comportamento del riquadro di visualizzazione" +msgstr "Comportement Viewport" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:381 msgctxt "@info:tooltip" msgid "" "Highlight unsupported areas of the model in red. Without support these areas " "will not print properly." -msgstr "Evidenzia in rosso le zone non supportate del modello. In assenza di supporto, queste aree non saranno stampate in modo corretto." +msgstr "Surligne les parties non supportées du modèle en rouge. Sans ajouter de support, ces zones ne s'imprimeront pas correctement." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:390 msgctxt "@option:check" msgid "Display overhang" -msgstr "Visualizza sbalzo" +msgstr "Mettre en surbrillance les porte-à-faux" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:400 msgctxt "@info:tooltip" msgid "" "Highlight missing or extraneous surfaces of the model using warning signs. " "The toolpaths will often be missing parts of the intended geometry." -msgstr "Evidenziare le superfici mancanti o estranee del modello utilizzando i simboli di avvertenza. I percorsi degli utensili spesso ignoreranno parti della" -" geometria prevista." +msgstr "Surlignez les surfaces du modèle manquantes ou étrangères en utilisant les signes d'avertissement. Les Toolpaths seront souvent les parties manquantes" +" de la géométrie prévue." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:409 msgctxt "@option:check" msgid "Display model errors" -msgstr "Visualizzare gli errori del modello" +msgstr "Afficher les erreurs du modèle" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:417 msgctxt "@info:tooltip" msgid "" "Moves the camera so the model is in the center of the view when a model is " "selected" -msgstr "Sposta la fotocamera in modo che il modello si trovi al centro della visualizzazione quando è selezionato" +msgstr "Déplace la caméra afin que le modèle sélectionné se trouve au centre de la vue" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:422 msgctxt "@action:button" msgid "Center camera when item is selected" -msgstr "Centratura fotocamera alla selezione dell'elemento" +msgstr "Centrer la caméra lorsqu'un élément est sélectionné" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:432 msgctxt "@info:tooltip" msgid "Should the default zoom behavior of cura be inverted?" -msgstr "Il comportamento dello zoom predefinito di Cura dovrebbe essere invertito?" +msgstr "Le comportement de zoom par défaut de Cura doit-il être inversé ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:437 msgctxt "@action:button" msgid "Invert the direction of camera zoom." -msgstr "Inverti la direzione dello zoom della fotocamera." +msgstr "Inverser la direction du zoom de la caméra." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:453 msgctxt "@info:tooltip" msgid "Should zooming move in the direction of the mouse?" -msgstr "Lo zoom si muove nella direzione del mouse?" +msgstr "Le zoom doit-il se faire dans la direction de la souris ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:453 msgctxt "@info:tooltip" msgid "" "Zooming towards the mouse is not supported in the orthographic perspective." -msgstr "Nella prospettiva ortogonale lo zoom verso la direzione del mouse non è supportato." +msgstr "Le zoom vers la souris n'est pas pris en charge dans la perspective orthographique." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:458 msgctxt "@action:button" msgid "Zoom toward mouse direction" -msgstr "Zoom verso la direzione del mouse" +msgstr "Zoomer vers la direction de la souris" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:484 msgctxt "@info:tooltip" msgid "" "Should models on the platform be moved so that they no longer intersect?" -msgstr "I modelli sull’area di stampa devono essere spostati per evitare intersezioni?" +msgstr "Les modèles dans la zone d'impression doivent-ils être déplacés afin de ne plus se croiser ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:489 msgctxt "@option:check" msgid "Ensure models are kept apart" -msgstr "Assicurarsi che i modelli siano mantenuti separati" +msgstr "Veillez à ce que les modèles restent séparés" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:498 msgctxt "@info:tooltip" msgid "Should models on the platform be moved down to touch the build plate?" -msgstr "I modelli sull’area di stampa devono essere portati a contatto del piano di stampa?" +msgstr "Les modèles dans la zone d'impression doivent-ils être abaissés afin de toucher le plateau ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:503 msgctxt "@option:check" msgid "Automatically drop models to the build plate" -msgstr "Rilascia automaticamente i modelli sul piano di stampa" +msgstr "Abaisser automatiquement les modèles sur le plateau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:515 msgctxt "@info:tooltip" msgid "Show caution message in g-code reader." -msgstr "Visualizza il messaggio di avvertimento sul lettore codice G." +msgstr "Afficher le message d'avertissement dans le lecteur G-Code." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:524 msgctxt "@option:check" msgid "Caution message in g-code reader" -msgstr "Messaggio di avvertimento sul lettore codice G" +msgstr "Message d'avertissement dans le lecteur G-Code" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:532 msgctxt "@info:tooltip" msgid "Should layer be forced into compatibility mode?" -msgstr "Lo strato deve essere forzato in modalità di compatibilità?" +msgstr "La couche doit-elle être forcée en mode de compatibilité ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:537 msgctxt "@option:check" msgid "Force layer view compatibility mode (restart required)" -msgstr "Forzare la modalità di compatibilità visualizzazione strato (riavvio necessario)" +msgstr "Forcer l'affichage de la couche en mode de compatibilité (redémarrage requis)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:547 msgctxt "@info:tooltip" msgid "Should Cura open at the location it was closed?" -msgstr "Aprire Cura nel punto in cui è stato chiuso?" +msgstr "Est-ce que Cura devrait ouvrir à l'endroit où il a été fermé ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:552 msgctxt "@option:check" msgid "Restore window position on start" -msgstr "Ripristinare la posizione della finestra all'avvio" +msgstr "Restaurer la position de la fenêtre au démarrage" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:562 msgctxt "@info:tooltip" msgid "What type of camera rendering should be used?" -msgstr "Quale tipo di rendering della fotocamera è necessario utilizzare?" +msgstr "Quel type de rendu de la caméra doit-il être utilisé?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:569 msgctxt "@window:text" msgid "Camera rendering:" -msgstr "Rendering fotocamera:" +msgstr "Rendu caméra :" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:576 msgid "Perspective" -msgstr "Prospettiva" +msgstr "Perspective" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:577 msgid "Orthographic" -msgstr "Ortogonale" +msgstr "Orthographique" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:617 msgctxt "@label" msgid "Opening and saving files" -msgstr "Apertura e salvataggio file" +msgstr "Ouvrir et enregistrer des fichiers" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:624 msgctxt "@info:tooltip" msgid "" "Should opening files from the desktop or external applications open in the " "same instance of Cura?" -msgstr "L'apertura dei file dal desktop o da applicazioni esterne deve essere eseguita nella stessa istanza di Cura?" +msgstr "L'ouverture de fichiers à partir du bureau ou d'applications externes doit-elle se faire dans la même instance de Cura ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:629 msgctxt "@option:check" msgid "Use a single instance of Cura" -msgstr "Utilizzare una singola istanza di Cura" +msgstr "Utiliser une seule instance de Cura" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:640 msgctxt "@info:tooltip" msgid "" "Should the build plate be cleared before loading a new model in the single " "instance of Cura?" -msgstr "È necessario pulire il piano di stampa prima di caricare un nuovo modello nella singola istanza di Cura?" +msgstr "Les objets doivent-ils être supprimés du plateau de fabrication avant de charger un nouveau modèle dans l'instance unique de Cura ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:646 msgctxt "@option:check" msgid "Clear buildplate before loading model into the single instance" -msgstr "Pulire il piano di stampa prima di caricare il modello nella singola istanza" +msgstr "Supprimez les objets du plateau de fabrication avant de charger un modèle dans l'instance unique" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:656 msgctxt "@info:tooltip" msgid "Should models be scaled to the build volume if they are too large?" -msgstr "I modelli devono essere ridimensionati al volume di stampa, se troppo grandi?" +msgstr "Les modèles doivent-ils être mis à l'échelle du volume d'impression s'ils sont trop grands ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:661 msgctxt "@option:check" msgid "Scale large models" -msgstr "Ridimensiona i modelli troppo grandi" +msgstr "Réduire la taille des modèles trop grands" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:671 msgctxt "@info:tooltip" msgid "" "An model may appear extremely small if its unit is for example in meters " "rather than millimeters. Should these models be scaled up?" -msgstr "Un modello può apparire eccessivamente piccolo se la sua unità di misura è espressa in metri anziché in millimetri. Questi modelli devono essere aumentati?" +msgstr "Un modèle peut apparaître en tout petit si son unité est par exemple en mètres plutôt qu'en millimètres. Ces modèles doivent-ils être agrandis ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:676 msgctxt "@option:check" msgid "Scale extremely small models" -msgstr "Ridimensiona i modelli eccessivamente piccoli" +msgstr "Mettre à l'échelle les modèles extrêmement petits" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:686 msgctxt "@info:tooltip" msgid "Should models be selected after they are loaded?" -msgstr "I modelli devono essere selezionati dopo essere stati caricati?" +msgstr "Les modèles doivent-ils être sélectionnés après leur chargement ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:691 msgctxt "@option:check" msgid "Select models when loaded" -msgstr "Selezionare i modelli dopo il caricamento" +msgstr "Sélectionner les modèles lorsqu'ils sont chargés" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:701 msgctxt "@info:tooltip" msgid "" "Should a prefix based on the printer name be added to the print job name " "automatically?" -msgstr "Al nome del processo di stampa deve essere aggiunto automaticamente un prefisso basato sul nome della stampante?" +msgstr "Un préfixe basé sur le nom de l'imprimante doit-il être automatiquement ajouté au nom de la tâche d'impression ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:706 msgctxt "@option:check" msgid "Add machine prefix to job name" -msgstr "Aggiungi al nome del processo un prefisso macchina" +msgstr "Ajouter le préfixe de la machine au nom de la tâche" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:716 msgctxt "@info:tooltip" msgid "Should a summary be shown when saving a project file?" -msgstr "Quando si salva un file di progetto deve essere visualizzato un riepilogo?" +msgstr "Un résumé doit-il être affiché lors de l'enregistrement d'un fichier de projet ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:720 msgctxt "@option:check" msgid "Show summary dialog when saving project" -msgstr "Visualizza una finestra di riepilogo quando si salva un progetto" +msgstr "Afficher la boîte de dialogue du résumé lors de l'enregistrement du projet" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:730 msgctxt "@info:tooltip" msgid "Default behavior when opening a project file" -msgstr "Comportamento predefinito all'apertura di un file progetto" +msgstr "Comportement par défaut lors de l'ouverture d'un fichier de projet" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:738 msgctxt "@window:text" msgid "Default behavior when opening a project file: " -msgstr "Comportamento predefinito all'apertura di un file progetto: " +msgstr "Comportement par défaut lors de l'ouverture d'un fichier de projet : " #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:753 msgctxt "@option:openProject" msgid "Always ask me this" -msgstr "Chiedi sempre" +msgstr "Toujours me demander" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:754 msgctxt "@option:openProject" msgid "Always open as a project" -msgstr "Apri sempre come progetto" +msgstr "Toujours ouvrir comme projet" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:755 msgctxt "@option:openProject" msgid "Always import models" -msgstr "Importa sempre i modelli" +msgstr "Toujours importer les modèles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:792 msgctxt "@info:tooltip" @@ -4442,42 +4446,42 @@ msgid "" "When you have made changes to a profile and switched to a different one, a " "dialog will be shown asking whether you want to keep your modifications or " "not, or you can choose a default behaviour and never show that dialog again." -msgstr "Dopo aver modificato un profilo ed essere passati a un altro, si apre una finestra di dialogo che chiede se mantenere o eliminare le modifiche oppure se" -" scegliere un comportamento predefinito e non visualizzare più tale finestra di dialogo." +msgstr "Lorsque vous apportez des modifications à un profil puis passez à un autre profil, une boîte de dialogue apparaît, vous demandant si vous souhaitez conserver" +" les modifications. Vous pouvez aussi choisir une option par défaut, et le dialogue ne s'affichera plus." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:801 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedPrintSetup.qml:36 msgctxt "@label" msgid "Profiles" -msgstr "Profili" +msgstr "Profils" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:806 msgctxt "@window:text" msgid "" "Default behavior for changed setting values when switching to a different " "profile: " -msgstr "Comportamento predefinito per i valori di impostazione modificati al passaggio a un profilo diverso: " +msgstr "Comportement par défaut pour les valeurs de paramètres modifiées lors du passage à un profil différent : " #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:820 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:115 msgctxt "@option:discardOrKeep" msgid "Always ask me this" -msgstr "Chiedi sempre" +msgstr "Toujours me demander" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:821 msgctxt "@option:discardOrKeep" msgid "Always discard changed settings" -msgstr "Elimina sempre le impostazioni modificate" +msgstr "Toujours rejeter les paramètres modifiés" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:822 msgctxt "@option:discardOrKeep" msgid "Always transfer changed settings to new profile" -msgstr "Trasferisci sempre le impostazioni modificate a un nuovo profilo" +msgstr "Toujours transférer les paramètres modifiés dans le nouveau profil" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:856 msgctxt "@label" msgid "Privacy" -msgstr "Privacy" +msgstr "Confidentialité" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:862 msgctxt "@info:tooltip" @@ -4485,1051 +4489,1053 @@ msgid "" "Should anonymous data about your print be sent to Ultimaker? Note, no " "models, IP addresses or other personally identifiable information is sent or " "stored." -msgstr "I dati anonimi sulla stampa devono essere inviati a Ultimaker? Nota, non sono trasmessi o memorizzati modelli, indirizzi IP o altre informazioni personali." +msgstr "Les données anonymes de votre impression doivent-elles être envoyées à Ultimaker ? Notez qu'aucun modèle, aucune adresse IP ni aucune autre information" +" permettant de vous identifier personnellement ne seront envoyés ou stockés." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:867 msgctxt "@option:check" msgid "Send (anonymous) print information" -msgstr "Invia informazioni di stampa (anonime)" +msgstr "Envoyer des informations (anonymes) sur l'impression" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:897 msgctxt "@label" msgid "Updates" -msgstr "Aggiornamenti" +msgstr "Mises à jour" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:904 msgctxt "@info:tooltip" msgid "Should Cura check for updates when the program is started?" -msgstr "Cura deve verificare la presenza di eventuali aggiornamenti all’avvio del programma?" +msgstr "Cura doit-il vérifier les mises à jour au démarrage du programme ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:909 msgctxt "@option:check" msgid "Check for updates on start" -msgstr "Controlla aggiornamenti all’avvio" +msgstr "Vérifier les mises à jour au démarrage" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:925 msgctxt "@info:tooltip" msgid "When checking for updates, only check for stable releases." -msgstr "Quando si verifica la presenza di aggiornamenti, cercare solo versioni stabili." +msgstr "Lorsque vous vérifiez les mises à jour, ne vérifiez que les versions stables." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:931 msgctxt "@option:radio" msgid "Stable releases only" -msgstr "Solo versioni stabili" +msgstr "Uniquement les versions stables" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:941 msgctxt "@info:tooltip" msgid "When checking for updates, check for both stable and for beta releases." -msgstr "Quando si verifica la presenza di aggiornamenti, cercare versioni stabili e beta." +msgstr "Lorsque vous recherchez des mises à jour, vérifiez à la fois les versions stables et les versions bêta." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:947 msgctxt "@option:radio" msgid "Stable and Beta releases" -msgstr "Versioni stabili e beta" +msgstr "Versions stables et bêta" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:957 msgctxt "@info:tooltip" msgid "" "Should an automatic check for new plugins be done every time Cura is " "started? It is highly recommended that you do not disable this!" -msgstr "È necessario verificare automaticamente la presenza di nuovi plugin ad ogni avvio di Cura? Si consiglia di non disabilitare questa opzione!" +msgstr "Une vérification automatique des nouveaux plugins doit-elle être effectuée à chaque fois que Cura est lancé ? Il est fortement recommandé de ne pas désactiver" +" cette fonction !" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:962 msgctxt "@option:check" msgid "Get notifications for plugin updates" -msgstr "Ricevi notifiche di aggiornamenti plugin" +msgstr "Recevoir des notifications pour les mises à jour des plugins" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/RenameDialog.qml:22 msgctxt "@title:window" msgid "Rename" -msgstr "Rinomina" +msgstr "Renommer" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/RenameDialog.qml:23 msgctxt "@info" msgid "Please provide a new name." -msgstr "Indicare un nuovo nome." +msgstr "Veuillez indiquer un nouveau nom." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:17 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:466 msgctxt "@title:tab" msgid "Printers" -msgstr "Stampanti" +msgstr "Imprimantes" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:50 msgctxt "@action:button" msgid "Add New" -msgstr "Aggiungi nuovo" +msgstr "Ajouter un nouveau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:154 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:331 msgctxt "@action:button" msgid "Rename" -msgstr "Rinomina" +msgstr "Renommer" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:57 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:470 msgctxt "@title:tab" msgid "Profiles" -msgstr "Profili" +msgstr "Profils" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:59 msgctxt "@label" msgid "Profiles compatible with active printer:" -msgstr "Profili compatibili con la stampante attiva:" +msgstr "Profils compatibles avec l'imprimante active :" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:98 msgctxt "@action:tooltip" msgid "Create new profile from current settings/overrides" -msgstr "Crea nuovo profilo dalle impostazioni/esclusioni correnti" +msgstr "Créer un nouveau profil à partir des paramètres/remplacements actuels" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:125 msgctxt "@action:label" msgid "Some settings from current profile were overwritten." -msgstr "Alcune impostazioni del profilo corrente sono state sovrascritte." +msgstr "Certains paramètres du profil actuel ont été remplacés." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:140 msgctxt "@action:button" msgid "Update profile." -msgstr "Aggiornare il profilo." +msgstr "Mettre à jour le profil." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:143 msgctxt "@action:tooltip" msgid "Update profile with current settings/overrides" -msgstr "Aggiorna il profilo con le impostazioni/esclusioni correnti" +msgstr "Mettre à jour le profil avec les paramètres actuels  / forcer" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:148 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:256 msgctxt "@action:button" msgid "Discard current changes" -msgstr "Elimina le modifiche correnti" +msgstr "Ignorer les modifications actuelles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:158 msgctxt "@action:label" msgid "" "This profile uses the defaults specified by the printer, so it has no " "settings/overrides in the list below." -msgstr "Questo profilo utilizza le impostazioni predefinite dalla stampante, perciò non ci sono impostazioni/esclusioni nell’elenco riportato di seguito." +msgstr "Ce profil utilise les paramètres par défaut spécifiés par l'imprimante, de sorte qu'aucun paramètre / forçage n'apparaît dans la liste ci-dessous." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:165 msgctxt "@action:label" msgid "Your current settings match the selected profile." -msgstr "Le impostazioni correnti corrispondono al profilo selezionato." +msgstr "Vos paramètres actuels correspondent au profil sélectionné." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:175 msgctxt "@title:tab" msgid "Global Settings" -msgstr "Impostazioni globali" +msgstr "Paramètres généraux" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:278 msgctxt "@title:window" msgid "Create Profile" -msgstr "Crea profilo" +msgstr "Créer un profil" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:280 msgctxt "@info" msgid "Please provide a name for this profile." -msgstr "Indica un nome per questo profilo." +msgstr "Veuillez fournir un nom pour ce profil." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:352 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:368 msgctxt "@title:window" msgid "Export Profile" -msgstr "Esporta profilo" +msgstr "Exporter un profil" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:382 msgctxt "@title:window" msgid "Duplicate Profile" -msgstr "Duplica profilo" +msgstr "Dupliquer un profil" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:409 msgctxt "@title:window" msgid "Rename Profile" -msgstr "Rinomina profilo" +msgstr "Renommer le profil" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:422 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:429 msgctxt "@title:window" msgid "Import Profile" -msgstr "Importa profilo" +msgstr "Importer un profil" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewsSelector.qml:50 msgctxt "@label" msgid "View type" -msgstr "Visualizza tipo" +msgstr "Type d'affichage" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewOrientationControls.qml:25 msgctxt "@info:tooltip" msgid "3D View" -msgstr "Visualizzazione 3D" +msgstr "Vue 3D" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewOrientationControls.qml:38 msgctxt "@info:tooltip" msgid "Front View" -msgstr "Visualizzazione frontale" +msgstr "Vue de face" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewOrientationControls.qml:51 msgctxt "@info:tooltip" msgid "Top View" -msgstr "Visualizzazione superiore" +msgstr "Vue du dessus" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewOrientationControls.qml:64 msgctxt "@info:tooltip" msgid "Left View" -msgstr "Vista sinistra" +msgstr "Vue gauche" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewOrientationControls.qml:77 msgctxt "@info:tooltip" msgid "Right View" -msgstr "Vista destra" +msgstr "Vue droite" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectItemButton.qml:109 msgctxt "@label" msgid "Is printed as support." -msgstr "Viene stampato come supporto." +msgstr "Est imprimé comme support." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectItemButton.qml:112 msgctxt "@label" msgid "Other models overlapping with this model are modified." -msgstr "Gli altri modelli che si sovrappongono a questo modello sono stati modificati." +msgstr "D'autres modèles qui se chevauchent avec ce modèle ont été modifiés." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectItemButton.qml:115 msgctxt "@label" msgid "Infill overlapping with this model is modified." -msgstr "La sovrapposizione del riempimento con questo modello è stata modificata." +msgstr "Le chevauchement de remplissage avec ce modèle a été modifié." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectItemButton.qml:118 msgctxt "@label" msgid "Overlaps with this model are not supported." -msgstr "Le sovrapposizioni con questo modello non sono supportate." +msgstr "Les chevauchements avec ce modèle ne sont pas pris en charge." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectItemButton.qml:125 msgctxt "@label %1 is the number of settings it overrides." msgid "Overrides %1 setting." msgid_plural "Overrides %1 settings." -msgstr[0] "Ignora %1 impostazione." -msgstr[1] "Ignora %1 impostazioni." +msgstr[0] "Remplace le paramètre %1." +msgstr[1] "Remplace les paramètres %1." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintMonitor.qml:156 msgctxt "@label" msgid "Active print" -msgstr "Stampa attiva" +msgstr "Activer l'impression" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintMonitor.qml:164 msgctxt "@label" msgid "Job Name" -msgstr "Nome del processo" +msgstr "Nom de la tâche" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintMonitor.qml:172 msgctxt "@label" msgid "Printing Time" -msgstr "Tempo di stampa" +msgstr "Durée d'impression" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintMonitor.qml:180 msgctxt "@label" msgid "Estimated time left" -msgstr "Tempo residuo stimato" +msgstr "Durée restante estimée" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkOrLocalPrinterContent.qml:24 msgctxt "@label" msgid "Add a printer" -msgstr "Aggiungi una stampante" +msgstr "Ajouter une imprimante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkOrLocalPrinterContent.qml:38 msgctxt "@label" msgid "Add a networked printer" -msgstr "Aggiungi una stampante in rete" +msgstr "Ajouter une imprimante en réseau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkOrLocalPrinterContent.qml:87 msgctxt "@label" msgid "Add a non-networked printer" -msgstr "Aggiungi una stampante non in rete" +msgstr "Ajouter une imprimante hors réseau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:28 msgctxt "@label" msgid "What's New" -msgstr "Scopri le novità" +msgstr "Nouveautés" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:203 msgctxt "@label" msgid "Manufacturer" -msgstr "Produttore" +msgstr "Fabricant" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:214 msgctxt "@label" msgid "Profile author" -msgstr "Autore profilo" +msgstr "Auteur du profil" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:226 msgctxt "@label" msgid "Printer name" -msgstr "Nome stampante" +msgstr "Nom de l'imprimante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:232 msgctxt "@text" msgid "Please name your printer" -msgstr "Dare un nome alla stampante" +msgstr "Veuillez nommer votre imprimante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/ChangelogContent.qml:24 msgctxt "@label" msgid "Release Notes" -msgstr "Note sulla versione" +msgstr "Notes de version" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml:43 msgctxt "@label" msgid "There is no printer found over your network." -msgstr "Non è stata trovata alcuna stampante sulla rete." +msgstr "Aucune imprimante n'a été trouvée sur votre réseau." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml:162 msgctxt "@label" msgid "Refresh" -msgstr "Aggiorna" +msgstr "Rafraîchir" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml:173 msgctxt "@label" msgid "Add printer by IP" -msgstr "Aggiungi stampante per IP" +msgstr "Ajouter une imprimante par IP" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml:184 msgctxt "@label" msgid "Add cloud printer" -msgstr "Aggiungere una stampante cloud" +msgstr "Ajouter une imprimante cloud" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml:220 msgctxt "@label" msgid "Troubleshooting" -msgstr "Ricerca e riparazione dei guasti" +msgstr "Dépannage" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:64 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/GeneralOperations.qml:19 msgctxt "@label" msgid "Sign in to the Ultimaker platform" -msgstr "Accedi alla piattaforma Ultimaker" +msgstr "Connectez-vous à la plateforme Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:123 msgctxt "@text" msgid "Add material settings and plugins from the Marketplace" -msgstr "Aggiungi impostazioni materiale e plugin dal Marketplace" +msgstr "Ajoutez des paramètres de matériaux et des plug-ins depuis la Marketplace" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:149 msgctxt "@text" msgid "Backup and sync your material settings and plugins" -msgstr "Esegui il backup e la sincronizzazione delle impostazioni materiale e dei plugin" +msgstr "Sauvegardez et synchronisez vos paramètres de matériaux et vos plug-ins" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:175 msgctxt "@text" msgid "Share ideas and get help from 48,000+ users in the Ultimaker Community" -msgstr "Condividi idee e ottieni supporto da più di 48.000 utenti nella community di Ultimaker" +msgstr "Partagez vos idées et obtenez l'aide de plus de 48 000 utilisateurs de la communauté Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:189 msgctxt "@button" msgid "Skip" -msgstr "Salta" +msgstr "Ignorer" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:201 msgctxt "@text" msgid "Create a free Ultimaker Account" -msgstr "Crea un account Ultimaker gratuito" +msgstr "Créez gratuitement un compte Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:24 msgctxt "@label" msgid "Help us to improve Ultimaker Cura" -msgstr "Aiutaci a migliorare Ultimaker Cura" +msgstr "Aidez-nous à améliorer Ultimaker Cura" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:56 msgctxt "@text" msgid "" "Ultimaker Cura collects anonymous data to improve print quality and user " "experience, including:" -msgstr "Ultimaker Cura acquisisce dati anonimi per migliorare la qualità di stampa e l'esperienza dell'utente, tra cui:" +msgstr "Ultimaker Cura recueille des données anonymes pour améliorer la qualité d'impression et l'expérience utilisateur, notamment :" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:68 msgctxt "@text" msgid "Machine types" -msgstr "Tipi di macchine" +msgstr "Types de machines" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:74 msgctxt "@text" msgid "Material usage" -msgstr "Utilizzo dei materiali" +msgstr "Utilisation du matériau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:80 msgctxt "@text" msgid "Number of slices" -msgstr "Numero di sezionamenti" +msgstr "Nombre de découpes" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:86 msgctxt "@text" msgid "Print settings" -msgstr "Impostazioni di stampa" +msgstr "Paramètres d'impression" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:99 msgctxt "@text" msgid "" "Data collected by Ultimaker Cura will not contain any personal information." -msgstr "I dati acquisiti da Ultimaker Cura non conterranno alcuna informazione personale." +msgstr "Les données recueillies par Ultimaker Cura ne contiendront aucun renseignement personnel." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:100 msgctxt "@text" msgid "More information" -msgstr "Ulteriori informazioni" +msgstr "Plus d'informations" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DropDownWidget.qml:93 msgctxt "@label" msgid "Empty" -msgstr "Vuoto" +msgstr "Vide" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:47 msgctxt "@label" msgid "Add a Cloud printer" -msgstr "Aggiungere una stampante cloud" +msgstr "Ajouter une imprimante cloud" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:73 msgctxt "@label" msgid "Waiting for Cloud response" -msgstr "In attesa della risposta del cloud" +msgstr "En attente d'une réponse cloud" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:83 msgctxt "@label" msgid "No printers found in your account?" -msgstr "Non sono presenti stampanti nel cloud?" +msgstr "Aucune imprimante trouvée dans votre compte ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:117 msgctxt "@label" msgid "The following printers in your account have been added in Cura:" -msgstr "Le seguenti stampanti del tuo account sono state aggiunte in Cura:" +msgstr "Les imprimantes suivantes de votre compte ont été ajoutées à Cura :" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:186 msgctxt "@button" msgid "Add printer manually" -msgstr "Aggiungere la stampante manualmente" +msgstr "Ajouter l'imprimante manuellement" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:23 msgctxt "@label" msgid "User Agreement" -msgstr "Contratto di licenza" +msgstr "Accord utilisateur" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:67 msgctxt "@button" msgid "Decline and close" -msgstr "Rifiuta e chiudi" +msgstr "Décliner et fermer" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:70 msgctxt "@label" msgid "Add printer by IP address" -msgstr "Aggiungi stampante per indirizzo IP" +msgstr "Ajouter une imprimante par adresse IP" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:128 msgctxt "@text" msgid "Enter your printer's IP address." -msgstr "Inserire l'indirizzo IP della stampante." +msgstr "Saisissez l'adresse IP de votre imprimante." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:150 msgctxt "@button" msgid "Add" -msgstr "Aggiungi" +msgstr "Ajouter" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:195 msgctxt "@label" msgid "Could not connect to device." -msgstr "Impossibile connettersi al dispositivo." +msgstr "Impossible de se connecter à l'appareil." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:196 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:201 msgctxt "@label" msgid "Can't connect to your Ultimaker printer?" -msgstr "Non è possibile effettuare la connessione alla stampante Ultimaker?" +msgstr "Impossible de vous connecter à votre imprimante Ultimaker ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:200 msgctxt "@label" msgid "The printer at this address has not responded yet." -msgstr "La stampante a questo indirizzo non ha ancora risposto." +msgstr "L'imprimante à cette adresse n'a pas encore répondu." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:231 msgctxt "@label" msgid "" "This printer cannot be added because it's an unknown printer or it's not the " "host of a group." -msgstr "Questa stampante non può essere aggiunta perché è una stampante sconosciuta o non è l'host di un gruppo." +msgstr "Cette imprimante ne peut pas être ajoutée parce qu'il s'agit d'une imprimante inconnue ou de l'hôte d'un groupe." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:312 msgctxt "@button" msgid "Connect" -msgstr "Collega" +msgstr "Se connecter" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/WelcomeContent.qml:56 msgctxt "@label" msgid "Welcome to Ultimaker Cura" -msgstr "Benvenuto in Ultimaker Cura" +msgstr "Bienvenue dans Ultimaker Cura" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/WelcomeContent.qml:67 msgctxt "@text" msgid "" "Please follow these steps to set up Ultimaker Cura. This will only take a " "few moments." -msgstr "Segui questa procedura per configurare\nUltimaker Cura. Questa operazione richiederà solo pochi istanti." +msgstr "Veuillez suivre ces étapes pour configurer\nUltimaker Cura. Cela ne prendra que quelques instants." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/WelcomeContent.qml:82 msgctxt "@button" msgid "Get started" -msgstr "Per iniziare" +msgstr "Prise en main" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectSelector.qml:59 msgctxt "@label" msgid "Object list" -msgstr "Elenco oggetti" +msgstr "Liste d'objets" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:81 msgctxt "@action:inmenu" msgid "Show Online Troubleshooting" -msgstr "Mostra ricerca e riparazione dei guasti online" +msgstr "Afficher le dépannage en ligne" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:88 msgctxt "@action:inmenu" msgid "Toggle Full Screen" -msgstr "Attiva/disattiva schermo intero" +msgstr "Passer en Plein écran" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:96 msgctxt "@action:inmenu" msgid "Exit Full Screen" -msgstr "Esci da schermo intero" +msgstr "Quitter le mode plein écran" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:103 msgctxt "@action:inmenu menubar:edit" msgid "&Undo" -msgstr "&Annulla" +msgstr "&Annuler" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:113 msgctxt "@action:inmenu menubar:edit" msgid "&Redo" -msgstr "Ri&peti" +msgstr "&Rétablir" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:131 msgctxt "@action:inmenu menubar:file" msgid "&Quit" -msgstr "&Esci" +msgstr "&Quitter" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:139 msgctxt "@action:inmenu menubar:view" msgid "3D View" -msgstr "Visualizzazione 3D" +msgstr "Vue 3D" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:146 msgctxt "@action:inmenu menubar:view" msgid "Front View" -msgstr "Visualizzazione frontale" +msgstr "Vue de face" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:153 msgctxt "@action:inmenu menubar:view" msgid "Top View" -msgstr "Visualizzazione superiore" +msgstr "Vue du dessus" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:160 msgctxt "@action:inmenu menubar:view" msgid "Bottom View" -msgstr "Vista inferiore" +msgstr "Vue de dessous" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:167 msgctxt "@action:inmenu menubar:view" msgid "Left Side View" -msgstr "Visualizzazione lato sinistro" +msgstr "Vue latérale gauche" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:174 msgctxt "@action:inmenu menubar:view" msgid "Right Side View" -msgstr "Visualizzazione lato destro" +msgstr "Vue latérale droite" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:188 msgctxt "@action:inmenu" msgid "Configure Cura..." -msgstr "Configura Cura..." +msgstr "Configurer Cura..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:195 msgctxt "@action:inmenu menubar:printer" msgid "&Add Printer..." -msgstr "&Aggiungi stampante..." +msgstr "&Ajouter une imprimante..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:201 msgctxt "@action:inmenu menubar:printer" msgid "Manage Pr&inters..." -msgstr "Gestione stampanti..." +msgstr "Gérer les &imprimantes..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:208 msgctxt "@action:inmenu" msgid "Manage Materials..." -msgstr "Gestione materiali..." +msgstr "Gérer les matériaux..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:216 msgctxt "" "@action:inmenu Marketplace is a brand name of Ultimaker's, so don't " "translate." msgid "Add more materials from Marketplace" -msgstr "Aggiungere altri materiali da Marketplace" +msgstr "Ajouter d'autres matériaux depuis la Marketplace" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:223 msgctxt "@action:inmenu menubar:profile" msgid "&Update profile with current settings/overrides" -msgstr "&Aggiorna il profilo con le impostazioni/esclusioni correnti" +msgstr "&Mettre à jour le profil à l'aide des paramètres / forçages actuels" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:231 msgctxt "@action:inmenu menubar:profile" msgid "&Discard current changes" -msgstr "&Elimina le modifiche correnti" +msgstr "&Ignorer les modifications actuelles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:243 msgctxt "@action:inmenu menubar:profile" msgid "&Create profile from current settings/overrides..." -msgstr "&Crea profilo dalle impostazioni/esclusioni correnti..." +msgstr "&Créer un profil à partir des paramètres / forçages actuels..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:249 msgctxt "@action:inmenu menubar:profile" msgid "Manage Profiles..." -msgstr "Gestione profili..." +msgstr "Gérer les profils..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:257 msgctxt "@action:inmenu menubar:help" msgid "Show Online &Documentation" -msgstr "Mostra documentazione &online" +msgstr "Afficher la &documentation en ligne" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:265 msgctxt "@action:inmenu menubar:help" msgid "Report a &Bug" -msgstr "Se&gnala un errore" +msgstr "Notifier un &bug" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:273 msgctxt "@action:inmenu menubar:help" msgid "What's New" -msgstr "Scopri le novità" +msgstr "Quoi de neuf" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:287 msgctxt "@action:inmenu menubar:help" msgid "About..." -msgstr "Informazioni..." +msgstr "À propos de..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:294 msgctxt "@action:inmenu menubar:edit" msgid "Delete Selected" -msgstr "Cancella selezionati" +msgstr "Supprimer la sélection" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:304 msgctxt "@action:inmenu menubar:edit" msgid "Center Selected" -msgstr "Centra selezionati" +msgstr "Centrer la sélection" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:313 msgctxt "@action:inmenu menubar:edit" msgid "Multiply Selected" -msgstr "Moltiplica selezionati" +msgstr "Multiplier la sélection" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:322 msgctxt "@action:inmenu" msgid "Delete Model" -msgstr "Elimina modello" +msgstr "Supprimer le modèle" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:330 msgctxt "@action:inmenu" msgid "Ce&nter Model on Platform" -msgstr "C&entra modello su piattaforma" +msgstr "Ce&ntrer le modèle sur le plateau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:336 msgctxt "@action:inmenu menubar:edit" msgid "&Group Models" -msgstr "&Raggruppa modelli" +msgstr "&Grouper les modèles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:356 msgctxt "@action:inmenu menubar:edit" msgid "Ungroup Models" -msgstr "Separa modelli" +msgstr "Dégrouper les modèles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:366 msgctxt "@action:inmenu menubar:edit" msgid "&Merge Models" -msgstr "&Unisci modelli" +msgstr "&Fusionner les modèles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:376 msgctxt "@action:inmenu" msgid "&Multiply Model..." -msgstr "Mo<iplica modello..." +msgstr "&Multiplier le modèle..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:383 msgctxt "@action:inmenu menubar:edit" msgid "Select All Models" -msgstr "Seleziona tutti i modelli" +msgstr "Sélectionner tous les modèles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:393 msgctxt "@action:inmenu menubar:edit" msgid "Clear Build Plate" -msgstr "Cancellare piano di stampa" +msgstr "Supprimer les objets du plateau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:403 msgctxt "@action:inmenu menubar:file" msgid "Reload All Models" -msgstr "Ricarica tutti i modelli" +msgstr "Recharger tous les modèles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:412 msgctxt "@action:inmenu menubar:edit" msgid "Arrange All Models" -msgstr "Sistema tutti i modelli" +msgstr "Réorganiser tous les modèles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:420 msgctxt "@action:inmenu menubar:edit" msgid "Arrange Selection" -msgstr "Sistema selezione" +msgstr "Réorganiser la sélection" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:427 msgctxt "@action:inmenu menubar:edit" msgid "Reset All Model Positions" -msgstr "Reimposta tutte le posizioni dei modelli" +msgstr "Réinitialiser toutes les positions des modèles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:434 msgctxt "@action:inmenu menubar:edit" msgid "Reset All Model Transformations" -msgstr "Reimposta tutte le trasformazioni dei modelli" +msgstr "Réinitialiser tous les modèles et transformations" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:443 msgctxt "@action:inmenu menubar:file" msgid "&Open File(s)..." -msgstr "&Apri file..." +msgstr "&Ouvrir le(s) fichier(s)..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:453 msgctxt "@action:inmenu menubar:file" msgid "&New Project..." -msgstr "&Nuovo Progetto..." +msgstr "&Nouveau projet..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:460 msgctxt "@action:inmenu menubar:help" msgid "Show Configuration Folder" -msgstr "Mostra cartella di configurazione" +msgstr "Afficher le dossier de configuration" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ExtruderButton.qml:16 msgctxt "@label %1 is filled in with the name of an extruder" msgid "Print Selected Model with %1" msgid_plural "Print Selected Models with %1" -msgstr[0] "Stampa modello selezionato con %1" -msgstr[1] "Stampa modelli selezionati con %1" +msgstr[0] "Imprimer le modèle sélectionné avec %1" +msgstr[1] "Imprimer les modèles sélectionnés avec %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:115 msgctxt "@label:MonitorStatus" msgid "Not connected to a printer" -msgstr "Non collegato ad una stampante" +msgstr "Non connecté à une imprimante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:119 msgctxt "@label:MonitorStatus" msgid "Printer does not accept commands" -msgstr "La stampante non accetta comandi" +msgstr "L'imprimante n'accepte pas les commandes" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:129 msgctxt "@label:MonitorStatus" msgid "In maintenance. Please check the printer" -msgstr "In manutenzione. Controllare la stampante" +msgstr "En maintenance. Vérifiez l'imprimante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:140 msgctxt "@label:MonitorStatus" msgid "Lost connection with the printer" -msgstr "Persa connessione con la stampante" +msgstr "Connexion avec l'imprimante perdue" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:142 msgctxt "@label:MonitorStatus" msgid "Printing..." -msgstr "Stampa in corso..." +msgstr "Impression..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:145 msgctxt "@label:MonitorStatus" msgid "Paused" -msgstr "In pausa" +msgstr "En pause" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:148 msgctxt "@label:MonitorStatus" msgid "Preparing..." -msgstr "Preparazione in corso..." +msgstr "Préparation..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:150 msgctxt "@label:MonitorStatus" msgid "Please remove the print" -msgstr "Rimuovere la stampa" +msgstr "Supprimez l'imprimante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:318 msgctxt "@label" msgid "Abort Print" -msgstr "Interrompi la stampa" +msgstr "Abandonner l'impression" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:327 msgctxt "@label" msgid "Are you sure you want to abort the print?" -msgstr "Sei sicuro di voler interrompere la stampa?" +msgstr "Êtes-vous sûr(e) de vouloir abandonner l'impression ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ProfileOverview.qml:36 msgctxt "@title:column" msgid "Setting" -msgstr "Impostazione" +msgstr "Paramètre" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ProfileOverview.qml:37 msgctxt "@title:column" msgid "Profile" -msgstr "Profilo" +msgstr "Profil" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ProfileOverview.qml:38 msgctxt "@title:column" msgid "Current" -msgstr "Corrente" +msgstr "Actuel" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ProfileOverview.qml:39 msgctxt "@title:column Unit of measurement" msgid "Unit" -msgstr "Unità" +msgstr "Unité" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:34 msgctxt "@title:menu" msgid "&Material" -msgstr "Ma&teriale" +msgstr "&Matériau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:49 msgctxt "@action:inmenu" msgid "Set as Active Extruder" -msgstr "Imposta come estrusore attivo" +msgstr "Définir comme extrudeur actif" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:55 msgctxt "@action:inmenu" msgid "Enable Extruder" -msgstr "Abilita estrusore" +msgstr "Activer l'extrudeuse" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:63 msgctxt "@action:inmenu" msgid "Disable Extruder" -msgstr "Disabilita estrusore" +msgstr "Désactiver l'extrudeuse" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/FileMenu.qml:13 msgctxt "@title:menu menubar:toplevel" msgid "&File" -msgstr "&File" +msgstr "&Fichier" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/FileMenu.qml:45 msgctxt "@title:menu menubar:file" msgid "&Save Project..." -msgstr "&Salva progetto..." +msgstr "&Enregistrer le projet..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/FileMenu.qml:78 msgctxt "@title:menu menubar:file" msgid "&Export..." -msgstr "&Esporta..." +msgstr "E&xporter..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/FileMenu.qml:89 msgctxt "@action:inmenu menubar:file" msgid "Export Selection..." -msgstr "Esporta selezione..." +msgstr "Exporter la sélection..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/MaterialMenu.qml:13 msgctxt "@label:category menu label" msgid "Material" -msgstr "Materiale" +msgstr "Matériau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/MaterialMenu.qml:53 msgctxt "@label:category menu label" msgid "Favorites" -msgstr "Preferiti" +msgstr "Favoris" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/MaterialMenu.qml:78 msgctxt "@label:category menu label" msgid "Generic" -msgstr "Generale" +msgstr "Générique" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/PrinterMenu.qml:13 msgctxt "@title:menu menubar:settings" msgid "&Printer" -msgstr "S&tampante" +msgstr "Im&primante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/PrinterMenu.qml:17 msgctxt "@label:category menu label" msgid "Network enabled printers" -msgstr "Stampanti abilitate per la rete" +msgstr "Imprimantes réseau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/PrinterMenu.qml:50 msgctxt "@label:category menu label" msgid "Local printers" -msgstr "Stampanti locali" +msgstr "Imprimantes locales" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ExtensionMenu.qml:13 msgctxt "@title:menu menubar:toplevel" msgid "E&xtensions" -msgstr "Es&tensioni" +msgstr "E&xtensions" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/OpenFilesMenu.qml:15 msgctxt "@title:menu menubar:file" msgid "Open File(s)..." -msgstr "Apri file..." +msgstr "Ouvrir le(s) fichier(s)..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/PreferencesMenu.qml:21 msgctxt "@title:menu menubar:toplevel" msgid "P&references" -msgstr "P&referenze" +msgstr "P&références" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/AutoConfiguration.qml:18 msgctxt "@header" msgid "Configurations" -msgstr "Configurazioni" +msgstr "Configurations" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:27 msgctxt "@header" msgid "Custom" -msgstr "Personalizzata" +msgstr "Personnalisé" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:173 msgctxt "@label" msgid "Enabled" -msgstr "Abilitato" +msgstr "Activé" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:222 msgctxt "@label" msgid "Material" -msgstr "Materiale" +msgstr "Matériau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:348 msgctxt "@label" msgid "Use glue for better adhesion with this material combination." -msgstr "Utilizzare la colla per una migliore adesione con questa combinazione di materiali." +msgstr "Utiliser de la colle pour une meilleure adhérence avec cette combinaison de matériaux." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationListView.qml:52 msgctxt "@label" msgid "Loading available configurations from the printer..." -msgstr "Caricamento in corso configurazioni disponibili dalla stampante..." +msgstr "Chargement des configurations disponibles à partir de l'imprimante..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationListView.qml:53 msgctxt "@label" msgid "" "The configurations are not available because the printer is disconnected." -msgstr "Le configurazioni non sono disponibili perché la stampante è scollegata." +msgstr "Les configurations ne sont pas disponibles car l'imprimante est déconnectée." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationItem.qml:137 msgctxt "@label" msgid "" "This configuration is not available because %1 is not recognized. Please " "visit %2 to download the correct material profile." -msgstr "Questa configurazione non è disponibile perché %1 non viene riconosciuto. Visitare %2 per scaricare il profilo materiale corretto." +msgstr "Cette configuration n'est pas disponible car %1 n'est pas reconnu. Veuillez visiter %2 pour télécharger le profil matériel correct." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationItem.qml:138 msgctxt "@label" msgid "Marketplace" -msgstr "Mercato" +msgstr "Marché en ligne" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:106 msgctxt "@tooltip" msgid "" "The configuration of this extruder is not allowed, and prohibits slicing." -msgstr "La configurazione di questo estrusore non è consentita e proibisce il sezionamento." +msgstr "La configuration de cet extrudeur n'est pas autorisée et interdit la découpe." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:110 msgctxt "@tooltip" msgid "There are no profiles matching the configuration of this extruder." -msgstr "Nessun profilo corrispondente alla configurazione di questo estrusore." +msgstr "Aucun profil ne correspond à la configuration de cet extrudeur." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:250 msgctxt "@label" msgid "Select configuration" -msgstr "Seleziona configurazione" +msgstr "Sélectionner la configuration" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:358 msgctxt "@label" msgid "Configurations" -msgstr "Configurazioni" +msgstr "Configurations" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/HelpMenu.qml:14 msgctxt "@title:menu menubar:toplevel" msgid "&Help" -msgstr "&Help" +msgstr "&Aide" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SaveProjectMenu.qml:15 msgctxt "@title:menu menubar:file" msgid "Save Project..." -msgstr "Salva progetto..." +msgstr "Sauvegarder le projet..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/RecentFilesMenu.qml:15 msgctxt "@title:menu menubar:file" msgid "Open &Recent" -msgstr "Ap&ri recenti" +msgstr "Ouvrir un fichier &récent" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ViewMenu.qml:13 msgctxt "@title:menu menubar:toplevel" msgid "&View" -msgstr "&Visualizza" +msgstr "&Visualisation" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ViewMenu.qml:17 msgctxt "@action:inmenu menubar:view" msgid "&Camera position" -msgstr "&Posizione fotocamera" +msgstr "Position de la &caméra" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ViewMenu.qml:30 msgctxt "@action:inmenu menubar:view" msgid "Camera view" -msgstr "Visualizzazione fotocamera" +msgstr "Vue de la caméra" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ViewMenu.qml:48 msgctxt "@action:inmenu menubar:view" msgid "Perspective" -msgstr "Prospettiva" +msgstr "Perspective" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ViewMenu.qml:59 msgctxt "@action:inmenu menubar:view" msgid "Orthographic" -msgstr "Ortogonale" +msgstr "Orthographique" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ContextMenu.qml:29 msgctxt "@label" msgid "Print Selected Model With:" msgid_plural "Print Selected Models With:" -msgstr[0] "Stampa modello selezionato con:" -msgstr[1] "Stampa modelli selezionati con:" +msgstr[0] "Imprimer le modèle sélectionné avec :" +msgstr[1] "Imprimer les modèles sélectionnés avec :" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ContextMenu.qml:92 msgctxt "@title:window" msgid "Multiply Selected Model" msgid_plural "Multiply Selected Models" -msgstr[0] "Moltiplica modello selezionato" -msgstr[1] "Moltiplica modelli selezionati" +msgstr[0] "Multiplier le modèle sélectionné" +msgstr[1] "Multiplier les modèles sélectionnés" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ContextMenu.qml:123 msgctxt "@label" msgid "Number of Copies" -msgstr "Numero di copie" +msgstr "Nombre de copies" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/EditMenu.qml:12 msgctxt "@title:menu menubar:toplevel" msgid "&Edit" -msgstr "&Modifica" +msgstr "&Modifier" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:16 msgctxt "@action:inmenu" msgid "Visible Settings" -msgstr "Impostazioni visibili" +msgstr "Paramètres visibles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:42 msgctxt "@action:inmenu" msgid "Collapse All Categories" -msgstr "Comprimi tutte le categorie" +msgstr "Réduire toutes les catégories" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:51 msgctxt "@action:inmenu" msgid "Manage Setting Visibility..." -msgstr "Gestisci Impostazione visibilità..." +msgstr "Gérer la visibilité des paramètres..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:17 msgctxt "@title:window" msgid "Select Printer" -msgstr "Select Printer" +msgstr "Sélectionner une imprimante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:54 msgctxt "@title:label" msgid "Compatible Printers" -msgstr "Compatible Printers" +msgstr "Imprimantes compatibles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:94 msgctxt "@description" msgid "No compatible printers, that are currently online, where found." -msgstr "No compatible printers, that are currently online, where found." +msgstr "Aucune imprimante compatible actuellement en ligne n'a été trouvée." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:16 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:635 msgctxt "@title:window" msgid "Open file(s)" -msgstr "Apri file" +msgstr "Ouvrir le(s) fichier(s)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:47 msgctxt "@text:window" @@ -5537,45 +5543,45 @@ msgid "" "We have found one or more project file(s) within the files you have " "selected. You can open only one project file at a time. We suggest to only " "import models from those files. Would you like to proceed?" -msgstr "Rilevata la presenza di uno o più file progetto tra i file selezionati. È possibile aprire solo un file progetto alla volta. Si suggerisce di importare" -" i modelli solo da tali file. Vuoi procedere?" +msgstr "Nous avons trouvé au moins un fichier de projet parmi les fichiers que vous avez sélectionnés. Vous ne pouvez ouvrir qu'un seul fichier de projet à la" +" fois. Nous vous conseillons de n'importer que les modèles de ces fichiers. Souhaitez-vous continuer ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:64 msgctxt "@action:button" msgid "Import all as models" -msgstr "Importa tutto come modelli" +msgstr "Importer tout comme modèles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:17 msgctxt "@title:window" msgid "Open project file" -msgstr "Apri file progetto" +msgstr "Ouvrir un fichier de projet" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:84 msgctxt "@text:window" msgid "" "This is a Cura project file. Would you like to open it as a project or " "import the models from it?" -msgstr "Questo è un file progetto Cura. Vuoi aprirlo come progetto o importarne i modelli?" +msgstr "Ceci est un fichier de projet Cura. Souhaitez-vous l'ouvrir comme projet ou en importer les modèles ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:91 msgctxt "@text:window" msgid "Remember my choice" -msgstr "Ricorda la scelta" +msgstr "Se souvenir de mon choix" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:105 msgctxt "@action:button" msgid "Open as project" -msgstr "Apri come progetto" +msgstr "Ouvrir comme projet" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:110 msgctxt "@action:button" msgid "Import models" -msgstr "Importa i modelli" +msgstr "Importer les modèles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:13 msgctxt "@title:window" msgid "Discard or Keep changes" -msgstr "Elimina o mantieni modifiche" +msgstr "Annuler ou conserver les modifications" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:59 msgctxt "@text:window, %1 is a profile name" @@ -5583,341 +5589,341 @@ msgid "" "You have customized some profile settings. Would you like to Keep these " "changed settings after switching profiles? Alternatively, you can discard " "the changes to load the defaults from '%1'." -msgstr "Alcune impostazioni di profilo sono state personalizzate.\nMantenere queste impostazioni modificate dopo il cambio dei profili?\nIn alternativa, è possibile" -" eliminare le modifiche per caricare i valori predefiniti da '%1'." +msgstr "Vous avez personnalisé certains paramètres de profil.\nSouhaitez-vous conserver ces paramètres modifiés après avoir changé de profil ?\nVous pouvez également" +" annuler les modifications pour charger les valeurs par défaut de '%1'." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:85 msgctxt "@title:column" msgid "Profile settings" -msgstr "Impostazioni profilo" +msgstr "Paramètres du profil" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:87 msgctxt "@title:column" msgid "Current changes" -msgstr "Modifiche correnti" +msgstr "Modifications actuelles" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:116 msgctxt "@option:discardOrKeep" msgid "Discard and never ask again" -msgstr "Elimina e non chiedere nuovamente" +msgstr "Annuler et ne plus me demander" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:117 msgctxt "@option:discardOrKeep" msgid "Keep and never ask again" -msgstr "Mantieni e non chiedere nuovamente" +msgstr "Conserver et ne plus me demander" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:147 msgctxt "@action:button" msgid "Discard changes" -msgstr "Elimina modifiche" +msgstr "Annuler les modifications" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:153 msgctxt "@action:button" msgid "Keep changes" -msgstr "Mantieni modifiche" +msgstr "Conserver les modifications" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:14 msgctxt "@title:window" msgid "Save Project" -msgstr "Salva progetto" +msgstr "Enregistrer le projet" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:177 msgctxt "@action:label" msgid "Extruder %1" -msgstr "Estrusore %1" +msgstr "Extrudeuse %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:193 msgctxt "@action:label" msgid "%1 & material" -msgstr "%1 & materiale" +msgstr "%1 & matériau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:195 msgctxt "@action:label" msgid "Material" -msgstr "Materiale" +msgstr "Matériau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:284 msgctxt "@action:label" msgid "Don't show project summary on save again" -msgstr "Non mostrare il riepilogo di progetto alla ripetizione di salva" +msgstr "Ne pas afficher à nouveau le résumé du projet lors de l'enregistrement" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:298 msgctxt "@action:button" msgid "Save" -msgstr "Salva" +msgstr "Enregistrer" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:15 msgctxt "@title:window The argument is the application name." msgid "About %1" -msgstr "Informazioni su %1" +msgstr "À propos de %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:59 msgctxt "@label" msgid "version: %1" -msgstr "versione: %1" +msgstr "version : %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:74 msgctxt "@label" msgid "End-to-end solution for fused filament 3D printing." -msgstr "Soluzione end-to-end per la stampa 3D con filamento fuso." +msgstr "Solution complète pour l'impression 3D par dépôt de filament fondu." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:87 msgctxt "@info:credit" msgid "" "Cura is developed by Ultimaker B.V. in cooperation with the community.\n" "Cura proudly uses the following open source projects:" -msgstr "Cura è stato sviluppato da Ultimaker B.V. in cooperazione con la comunità.\nCura è orgogliosa di utilizzare i seguenti progetti open source:" +msgstr "Cura a été développé par Ultimaker B.V. en coopération avec la communauté Ultimaker.\nCura est fier d'utiliser les projets open source suivants :" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:138 msgctxt "@label Description for application component" msgid "Graphical user interface" -msgstr "Interfaccia grafica utente" +msgstr "Interface utilisateur graphique" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:139 msgctxt "@label Description for application component" msgid "Application framework" -msgstr "Struttura applicazione" +msgstr "Cadre d'application" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:140 msgctxt "@label Description for application component" msgid "G-code generator" -msgstr "Generatore codice G" +msgstr "Générateur G-Code" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:141 msgctxt "@label Description for application component" msgid "Interprocess communication library" -msgstr "Libreria di comunicazione intra-processo" +msgstr "Bibliothèque de communication interprocess" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:142 msgctxt "@label Description for application component" msgid "Python bindings for libnest2d" -msgstr "Vincoli Python per libnest2d" +msgstr "Liens en python pour libnest2d" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:143 msgctxt "@label Description for application component" msgid "Polygon packing library, developed by Prusa Research" -msgstr "Libreria di impacchettamento dei poligoni sviluppata da Prusa Research" +msgstr "Bibliothèque d'emballage de polygones, développée par Prusa Research" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:144 msgctxt "@label Description for application component" msgid "Support library for handling 3MF files" -msgstr "Libreria di supporto per gestione file 3MF" +msgstr "Prise en charge de la bibliothèque pour le traitement des fichiers 3MF" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:145 msgctxt "@label Description for application component" msgid "Support library for file metadata and streaming" -msgstr "Libreria di supporto per metadati file e streaming" +msgstr "Prise en charge de la bibliothèque pour les métadonnées et le streaming de fichiers" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:148 msgctxt "@label Description for application dependency" msgid "Programming language" -msgstr "Lingua di programmazione" +msgstr "Langage de programmation" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:149 msgctxt "@label Description for application dependency" msgid "GUI framework" -msgstr "Struttura GUI" +msgstr "Cadre IUG" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:150 msgctxt "@label Description for application dependency" msgid "GUI framework bindings" -msgstr "Vincoli struttura GUI" +msgstr "Liens cadre IUG" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:151 msgctxt "@label Description for application dependency" msgid "C/C++ Binding library" -msgstr "Libreria vincoli C/C++" +msgstr "Bibliothèque C/C++ Binding" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:152 msgctxt "@label Description for application dependency" msgid "Data interchange format" -msgstr "Formato scambio dati" +msgstr "Format d'échange de données" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:153 msgctxt "@label" msgid "Font" -msgstr "Font" +msgstr "Police" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:156 msgctxt "@label Description for application dependency" msgid "Polygon clipping library" -msgstr "Libreria ritaglio poligono" +msgstr "Bibliothèque de découpe polygone" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:157 msgctxt "@label Description for application dependency" msgid "JSON parser" -msgstr "Analizzatore JSON" +msgstr "Analyseur JSON" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:158 msgctxt "@label Description for application dependency" msgid "Utility functions, including an image loader" -msgstr "Funzioni di utilità, tra cui un caricatore di immagini" +msgstr "Fonctions utilitaires, y compris un chargeur d'images" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:159 msgctxt "@label Description for application dependency" msgid "Utility library, including Voronoi generation" -msgstr "Libreria utilità, tra cui generazione diagramma Voronoi" +msgstr "Bibliothèque d'utilitaires, y compris la génération d'un diagramme Voronoï" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:162 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:163 msgctxt "@label Description for application dependency" msgid "Root Certificates for validating SSL trustworthiness" -msgstr "Certificati di origine per la convalida dell'affidabilità SSL" +msgstr "Certificats racines pour valider la fiabilité SSL" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:164 msgctxt "@label Description for application dependency" msgid "Compatibility between Python 2 and 3" -msgstr "Compatibilità tra Python 2 e 3" +msgstr "Compatibilité entre Python 2 et Python 3" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:165 msgctxt "@label Description for application dependency" msgid "Support library for system keyring access" -msgstr "Libreria di supporto per accesso a keyring sistema" +msgstr "Bibliothèque de support pour l'accès au trousseau de clés du système" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:166 msgctxt "@label Description for application dependency" msgid "Support library for faster math" -msgstr "Libreria di supporto per calcolo rapido" +msgstr "Prise en charge de la bibliothèque pour des maths plus rapides" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:167 msgctxt "@label Description for application dependency" msgid "Support library for handling STL files" -msgstr "Libreria di supporto per gestione file STL" +msgstr "Prise en charge de la bibliothèque pour le traitement des fichiers STL" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:168 msgctxt "@label Description for application dependency" msgid "Python bindings for Clipper" -msgstr "Vincoli Python per Clipper" +msgstr "Connexions avec Python pour Clipper" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:169 msgctxt "@label Description for application dependency" msgid "Serial communication library" -msgstr "Libreria di comunicazione seriale" +msgstr "Bibliothèque de communication série" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:170 msgctxt "@label Description for application dependency" msgid "Support library for scientific computing" -msgstr "Libreria di supporto per calcolo scientifico" +msgstr "Prise en charge de la bibliothèque pour le calcul scientifique" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:171 msgctxt "@Label Description for application dependency" msgid "Python Error tracking library" -msgstr "Python Error tracking library" +msgstr "Bibliothèque de suivi des erreurs Python" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:172 msgctxt "@label Description for application dependency" msgid "Support library for handling triangular meshes" -msgstr "Libreria di supporto per gestione maglie triangolari" +msgstr "Prise en charge de la bibliothèque pour le traitement des mailles triangulaires" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:173 msgctxt "@label Description for application dependency" msgid "ZeroConf discovery library" -msgstr "Libreria scoperta ZeroConf" +msgstr "Bibliothèque de découverte ZeroConf" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:176 msgctxt "@label Description for development tool" msgid "Universal build system configuration" -msgstr "Configurazione universale del sistema di build" +msgstr "Configuration du système de fabrication universel" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:177 msgctxt "@label Description for development tool" msgid "Dependency and package manager" -msgstr "Gestore della dipendenza e del pacchetto" +msgstr "Gestionnaire des dépendances et des packages" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:178 msgctxt "@label Description for development tool" msgid "Packaging Python-applications" -msgstr "Pacchetto applicazioni Python" +msgstr "Packaging d'applications Python" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:179 msgctxt "@label Description for development tool" msgid "Linux cross-distribution application deployment" -msgstr "Apertura applicazione distribuzione incrociata Linux" +msgstr "Déploiement d'applications sur multiples distributions Linux" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:180 msgctxt "@label Description for development tool" msgid "Generating Windows installers" -msgstr "Generazione installatori Windows" +msgstr "Génération de programmes d'installation Windows" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ColorDialog.qml:107 msgctxt "@label" msgid "Hex" -msgstr "Esagonale" +msgstr "Hex" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:32 msgctxt "@label:button" msgid "My printers" -msgstr "Le mie stampanti" +msgstr "Mes imprimantes" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:34 msgctxt "@tooltip:button" msgid "Monitor printers in Ultimaker Digital Factory." -msgstr "Monitora le stampanti in Ultimaker Digital Factory." +msgstr "Surveillez les imprimantes dans Ultimaker Digital Factory." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:41 msgctxt "@tooltip:button" msgid "Create print projects in Digital Library." -msgstr "Crea progetti di stampa in Digital Library." +msgstr "Créez des projets d'impression dans Digital Library." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:46 msgctxt "@label:button" msgid "Print jobs" -msgstr "Processi di stampa" +msgstr "Tâches d'impression" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:48 msgctxt "@tooltip:button" msgid "Monitor print jobs and reprint from your print history." -msgstr "Monitora i processi di stampa dalla cronologia di stampa." +msgstr "Surveillez les tâches d'impression et réimprimez à partir de votre historique d'impression." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:55 msgctxt "@tooltip:button" msgid "Extend Ultimaker Cura with plugins and material profiles." -msgstr "Estendi Ultimaker Cura con plugin e profili del materiale." +msgstr "Étendez Ultimaker Cura avec des plug-ins et des profils de matériaux." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:62 msgctxt "@tooltip:button" msgid "Become a 3D printing expert with Ultimaker e-learning." -msgstr "Diventa un esperto di stampa 3D con e-learning Ultimaker." +msgstr "Devenez un expert de l'impression 3D avec les cours de formation en ligne Ultimaker." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:67 msgctxt "@label:button" msgid "Ultimaker support" -msgstr "Supporto Ultimaker" +msgstr "Assistance ultimaker" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:69 msgctxt "@tooltip:button" msgid "Learn how to get started with Ultimaker Cura." -msgstr "Scopri come iniziare a utilizzare Ultimaker Cura." +msgstr "Découvrez comment utiliser Ultimaker Cura." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:74 msgctxt "@label:button" msgid "Ask a question" -msgstr "Fai una domanda" +msgstr "Posez une question" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:76 msgctxt "@tooltip:button" msgid "Consult the Ultimaker Community." -msgstr "Consulta la community di Ultimaker." +msgstr "Consultez la communauté Ultimaker." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:81 msgctxt "@label:button" msgid "Report a bug" -msgstr "Segnala un errore" +msgstr "Notifier un bug" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:83 msgctxt "@tooltip:button" msgid "Let developers know that something is going wrong." -msgstr "Informa gli sviluppatori che si è verificato un errore." +msgstr "Informez les développeurs en cas de problème." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:90 msgctxt "@tooltip:button" msgid "Visit the Ultimaker website." -msgstr "Visita il sito Web Ultimaker." +msgstr "Visitez le site web Ultimaker." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedSupportSelector.qml:40 msgctxt "@label" msgid "Support" -msgstr "Supporto" +msgstr "Support" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedSupportSelector.qml:44 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedSupportSelector.qml:78 @@ -5925,17 +5931,17 @@ msgctxt "@label" msgid "" "Generate structures to support parts of the model which have overhangs. " "Without these structures, such parts would collapse during printing." -msgstr "Genera strutture per supportare le parti del modello a sbalzo. Senza queste strutture, queste parti collasserebbero durante la stampa." +msgstr "Générer des structures pour soutenir les parties du modèle qui possèdent des porte-à-faux. Sans ces structures, ces parties s'effondreront durant l'impression." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:54 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is active and you overwrote some settings." -msgstr "%1 custom profile is active and you overwrote some settings." +msgstr "Le profil personnalisé %1 est actif et vous avez remplacé certains paramètres." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:68 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is overriding some settings." -msgstr "%1 custom profile is overriding some settings." +msgstr "Le profil personnalisé %1 remplace certains paramètres." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:79 msgctxt "@info" @@ -5947,12 +5953,12 @@ msgstr "Alcune impostazioni sono state modificate." msgctxt "@label" msgid "" "Gradual infill will gradually increase the amount of infill towards the top." -msgstr "Un riempimento graduale aumenterà gradualmente la quantità di riempimento verso l'alto." +msgstr "Un remplissage graduel augmentera la quantité de remplissage vers le haut." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:216 msgctxt "@label" msgid "Gradual infill" -msgstr "Riempimento graduale" +msgstr "Remplissage graduel" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/UnsupportedProfileIndication.qml:31 msgctxt "@error" @@ -5974,14 +5980,15 @@ msgstr "Ulteriori informazioni" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedAdhesionSelector.qml:27 msgctxt "@label" msgid "Adhesion" -msgstr "Adesione" +msgstr "Adhérence" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedAdhesionSelector.qml:76 msgctxt "@label" msgid "" "Enable printing a brim or raft. This will add a flat area around or under " "your object which is easy to cut off afterwards." -msgstr "Abilita stampa di brim o raft. Questa funzione aggiunge un’area piana attorno o sotto l’oggetto, facile da tagliare successivamente." +msgstr "Activez l'impression d'une bordure ou plaquette (Brim/Raft). Cela ajoutera une zone plate autour de ou sous votre objet qui est facile à découper par la" +" suite." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedResolutionSelector.qml:27 msgctxt "@label" @@ -5991,37 +5998,37 @@ msgstr "Risoluzione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:20 msgctxt "@label shown when we load a Gcode file" msgid "Print setup disabled. G-code file can not be modified." -msgstr "Impostazione di stampa disabilitata. Il file G-code non può essere modificato." +msgstr "Configuration d'impression désactivée. Le fichier G-Code ne peut pas être modifié." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelectorHeader.qml:13 msgctxt "@label:Should be short" msgid "On" -msgstr "Inserita" +msgstr "On" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelectorHeader.qml:14 msgctxt "@label:Should be short" msgid "Off" -msgstr "Disinserita" +msgstr "Off" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelectorHeader.qml:34 msgctxt "@label" msgid "Experimental" -msgstr "Sperimentale" +msgstr "Expérimental" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelectorContents.qml:142 msgctxt "@button" msgid "Recommended" -msgstr "Consigliata" +msgstr "Recommandé" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelectorContents.qml:156 msgctxt "@button" msgid "Custom" -msgstr "Personalizzata" +msgstr "Personnalisé" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Custom/CustomPrintSetup.qml:46 msgctxt "@label" msgid "Profile" -msgstr "Profilo" +msgstr "Profil" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Custom/CustomPrintSetup.qml:145 msgctxt "@tooltip" @@ -6030,51 +6037,52 @@ msgid "" "profile.\n" "\n" "Click to open the profile manager." -msgstr "Alcuni valori di impostazione/esclusione sono diversi dai valori memorizzati nel profilo.\n\nFare clic per aprire la gestione profili." +msgstr "Certaines valeurs de paramètre / forçage sont différentes des valeurs enregistrées dans le profil. \n\nCliquez pour ouvrir le gestionnaire de profils." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:158 msgctxt "@label:header" msgid "Custom profiles" -msgstr "Profili personalizzati" +msgstr "Personnaliser les profils" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/OutputDeviceHeader.qml:55 msgctxt "@info:status" msgid "The printer is not connected." -msgstr "La stampante non è collegata." +msgstr "L'imprimante n'est pas connectée." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:25 msgctxt "@label" msgid "Build plate" -msgstr "Piano di stampa" +msgstr "Plateau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:55 msgctxt "@tooltip" msgid "" "The target temperature of the heated bed. The bed will heat up or cool down " "towards this temperature. If this is 0, the bed heating is turned off." -msgstr "La temperatura target del piano riscaldato. Il piano verrà riscaldato o raffreddato a questa temperatura. Se è 0, il riscaldamento del piano viene disattivato." +msgstr "Température cible du plateau chauffant. Le plateau sera chauffé ou refroidi pour tendre vers cette température. Si la valeur est 0, le chauffage du plateau" +" sera éteint." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:88 msgctxt "@tooltip" msgid "The current temperature of the heated bed." -msgstr "La temperatura corrente del piano riscaldato." +msgstr "Température actuelle du plateau chauffant." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:162 msgctxt "@tooltip of temperature input" msgid "The temperature to pre-heat the bed to." -msgstr "La temperatura di preriscaldo del piano." +msgstr "Température jusqu'à laquelle préchauffer le plateau." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:259 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:271 msgctxt "@button Cancel pre-heating" msgid "Cancel" -msgstr "Annulla" +msgstr "Annuler" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:263 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:274 msgctxt "@button" msgid "Pre-heat" -msgstr "Pre-riscaldo" +msgstr "Préchauffer" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:286 msgctxt "@tooltip of pre-heat" @@ -6082,31 +6090,31 @@ msgid "" "Heat the bed in advance before printing. You can continue adjusting your " "print while it is heating, and you won't have to wait for the bed to heat up " "when you're ready to print." -msgstr "Riscalda il piano prima della stampa. È possibile continuare a regolare la stampa durante il riscaldamento e non è necessario attendere il riscaldamento" -" del piano quando si è pronti per la stampa." +msgstr "Préchauffez le plateau avant l'impression. Vous pouvez continuer à ajuster votre impression pendant qu'il chauffe, et vous n'aurez pas à attendre que le" +" plateau chauffe lorsque vous serez prêt à lancer l'impression." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:40 msgctxt "@label" msgid "Extruder" -msgstr "Estrusore" +msgstr "Extrudeuse" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:70 msgctxt "@tooltip" msgid "" "The target temperature of the hotend. The hotend will heat up or cool down " "towards this temperature. If this is 0, the hotend heating is turned off." -msgstr "Temperatura target dell'estremità riscaldata. L'estremità riscaldata si riscalderà o raffredderà sino a questo valore di temperatura. Se questo è 0, l'estremità" -" riscaldata verrà spenta." +msgstr "Température cible de l'extrémité chauffante. L'extrémité chauffante sera chauffée ou refroidie pour tendre vers cette température. Si la valeur est 0," +" le chauffage de l'extrémité chauffante sera coupé." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:105 msgctxt "@tooltip" msgid "The current temperature of this hotend." -msgstr "La temperatura corrente di questa estremità calda." +msgstr "Température actuelle de cette extrémité chauffante." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:182 msgctxt "@tooltip of temperature input" msgid "The temperature to pre-heat the hotend to." -msgstr "La temperatura di preriscaldo dell’estremità calda." +msgstr "Température jusqu'à laquelle préchauffer l'extrémité chauffante." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:297 msgctxt "@tooltip of pre-heat" @@ -6114,33 +6122,33 @@ msgid "" "Heat the hotend in advance before printing. You can continue adjusting your " "print while it is heating, and you won't have to wait for the hotend to heat " "up when you're ready to print." -msgstr "Riscalda l’estremità calda prima della stampa. È possibile continuare a regolare la stampa durante il riscaldamento e non è necessario attendere il riscaldamento" -" dell’estremità calda quando si è pronti per la stampa." +msgstr "Préchauffez l'extrémité chauffante avant l'impression. Vous pouvez continuer l'ajustement de votre impression pendant qu'elle chauffe, ce qui vous évitera" +" un temps d'attente lorsque vous serez prêt à lancer l'impression." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:335 msgctxt "@tooltip" msgid "The colour of the material in this extruder." -msgstr "Il colore del materiale di questo estrusore." +msgstr "Couleur du matériau dans cet extrudeur." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:367 msgctxt "@tooltip" msgid "The material in this extruder." -msgstr "Il materiale di questo estrusore." +msgstr "Matériau dans cet extrudeur." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:400 msgctxt "@tooltip" msgid "The nozzle inserted in this extruder." -msgstr "L’ugello inserito in questo estrusore." +msgstr "Buse insérée dans cet extrudeur." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:51 msgctxt "@label" msgid "Printer control" -msgstr "Comando stampante" +msgstr "Contrôle de l'imprimante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:66 msgctxt "@label" msgid "Jog Position" -msgstr "Posizione Jog" +msgstr "Position de coupe" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:82 msgctxt "@label" @@ -6155,50 +6163,50 @@ msgstr "Z" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:217 msgctxt "@label" msgid "Jog Distance" -msgstr "Distanza Jog" +msgstr "Distance de coupe" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:257 msgctxt "@label" msgid "Send G-code" -msgstr "Invia codice G" +msgstr "Envoyer G-Code" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:319 msgctxt "@tooltip of G-code command input" msgid "" "Send a custom G-code command to the connected printer. Press 'enter' to send " "the command." -msgstr "Invia un comando codice G personalizzato alla stampante connessa. Premere ‘invio’ per inviare il comando." +msgstr "Envoyer une commande G-Code personnalisée à l'imprimante connectée. Appuyez sur « Entrée » pour envoyer la commande." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:250 msgctxt "@label" msgid "This package will be installed after restarting." -msgstr "Questo pacchetto sarà installato dopo il riavvio." +msgstr "Ce paquet sera installé après le redémarrage." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:464 msgctxt "@title:tab" msgid "Settings" -msgstr "Impostazioni" +msgstr "Paramètres" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:587 msgctxt "@title:window %1 is the application name" msgid "Closing %1" -msgstr "Chiusura di %1" +msgstr "Fermeture de %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:588 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:597 msgctxt "@label %1 is the application name" msgid "Are you sure you want to exit %1?" -msgstr "Chiudere %1?" +msgstr "Voulez-vous vraiment quitter %1 ?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:740 msgctxt "@window:title" msgid "Install Package" -msgstr "Installa il pacchetto" +msgstr "Installer le paquet" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:747 msgctxt "@title:window" msgid "Open File(s)" -msgstr "Apri file" +msgstr "Ouvrir le(s) fichier(s)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:749 msgctxt "@text:window" @@ -6206,18 +6214,18 @@ msgid "" "We have found one or more G-Code files within the files you have selected. " "You can only open one G-Code file at a time. If you want to open a G-Code " "file, please just select only one." -msgstr "Rilevata la presenza di uno o più file codice G tra i file selezionati. È possibile aprire solo un file codice G alla volta. Se desideri aprire un file" -" codice G, selezionane uno solo." +msgstr "Nous avons trouvé au moins un fichier G-Code parmi les fichiers que vous avez sélectionné. Vous ne pouvez ouvrir qu'un seul fichier G-Code à la fois. Si" +" vous souhaitez ouvrir un fichier G-Code, veuillez ne sélectionner qu'un seul fichier de ce type." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:829 msgctxt "@title:window" msgid "Add Printer" -msgstr "Aggiungi stampante" +msgstr "Ajouter une imprimante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:837 msgctxt "@title:window" msgid "What's New" -msgstr "Scopri le novità" +msgstr "Quoi de neuf" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/GeneralOperations.qml:39 msgctxt "@text" @@ -6225,151 +6233,151 @@ msgid "" "- Add material profiles and plug-ins from the Marketplace\n" "- Back-up and sync your material profiles and plug-ins\n" "- Share ideas and get help from 48,000+ users in the Ultimaker community" -msgstr "- Aggiungi profili materiale e plugin dal Marketplace\n- Esegui il backup e la sincronizzazione dei profili materiale e dei plugin\n- Condividi idee e" -" ottieni supporto da più di 48.000 utenti nella community di Ultimaker" +msgstr "- Ajoutez des profils de matériaux et des plug-ins à partir de la Marketplace\n- Sauvegardez et synchronisez vos profils de matériaux et vos plug-ins\n-" +" Partagez vos idées et obtenez l'aide de plus de 48 000 utilisateurs de la communauté Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/GeneralOperations.qml:58 msgctxt "@button" msgid "Create a free Ultimaker account" -msgstr "Crea un account Ultimaker gratuito" +msgstr "Créez gratuitement un compte Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/AccountWidget.qml:24 msgctxt "@action:button" msgid "Sign in" -msgstr "Accedi" +msgstr "Se connecter" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/UserOperations.qml:78 msgctxt "@label The argument is a timestamp" msgid "Last update: %1" -msgstr "Ultimo aggiornamento: %1" +msgstr "Dernière mise à jour : %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/UserOperations.qml:107 msgctxt "@button" msgid "Ultimaker Account" -msgstr "Account Ultimaker" +msgstr "Compte Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/UserOperations.qml:126 msgctxt "@button" msgid "Sign Out" -msgstr "Esci" +msgstr "Déconnexion" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/SyncState.qml:35 msgctxt "@label" msgid "Checking..." -msgstr "Verifica in corso..." +msgstr "Vérification en cours..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/SyncState.qml:42 msgctxt "@label" msgid "Account synced" -msgstr "Account sincronizzato" +msgstr "Compte synchronisé" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/SyncState.qml:49 msgctxt "@label" msgid "Something went wrong..." -msgstr "Si è verificato un errore..." +msgstr "Un problème s'est produit..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/SyncState.qml:102 msgctxt "@button" msgid "Install pending updates" -msgstr "Installare gli aggiornamenti in attesa" +msgstr "Installer les mises à jour en attente" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/SyncState.qml:123 msgctxt "@button" msgid "Check for account updates" -msgstr "Verificare gli aggiornamenti dell'account" +msgstr "Rechercher des mises à jour de compte" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:47 msgctxt "@status" msgid "" "The cloud printer is offline. Please check if the printer is turned on and " "connected to the internet." -msgstr "La stampante cloud è offline. Verificare se la stampante è accesa e collegata a Internet." +msgstr "L'imprimante cloud est hors ligne. Veuillez vérifier si l'imprimante est activée et connectée à Internet." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:51 msgctxt "@status" msgid "" "This printer is not linked to your account. Please visit the Ultimaker " "Digital Factory to establish a connection." -msgstr "Questa stampante non è collegata al tuo account. Visitare Ultimaker Digital Factory per stabilire una connessione." +msgstr "Cette imprimante n'est pas associée à votre compte. Veuillez visiter l'Ultimaker Digital Factory pour établir une connexion." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:56 msgctxt "@status" msgid "" "The cloud connection is currently unavailable. Please sign in to connect to " "the cloud printer." -msgstr "La connessione cloud al momento non è disponibile. Accedere per collegarsi alla stampante cloud." +msgstr "La connexion cloud est actuellement indisponible. Veuillez vous connecter pour connecter l'imprimante cloud." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:60 msgctxt "@status" msgid "" "The cloud connection is currently unavailable. Please check your internet " "connection." -msgstr "La connessione cloud al momento non è disponibile. Verificare la connessione a Internet." +msgstr "La connexion cloud est actuellement indisponible. Veuillez vérifier votre connexion Internet." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:237 msgctxt "@button" msgid "Add printer" -msgstr "Aggiungi stampante" +msgstr "Ajouter une imprimante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:254 msgctxt "@button" msgid "Manage printers" -msgstr "Gestione stampanti" +msgstr "Gérer les imprimantes" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:34 msgctxt "@label" msgid "Hide all connected printers" -msgstr "Hide all connected printers" +msgstr "Masquer toutes les imprimantes connectées" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:47 msgctxt "@label" msgid "Show all connected printers" -msgstr "Show all connected printers" +msgstr "Afficher toutes les imprimantes connectées" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Other printers" -msgstr "Other printers" +msgstr "Autres imprimantes" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:54 msgctxt "@label:PrintjobStatus" msgid "Slicing..." -msgstr "Sezionamento in corso..." +msgstr "Découpe en cours..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:78 msgctxt "@label:PrintjobStatus" msgid "Unable to slice" -msgstr "Sezionamento impossibile" +msgstr "Impossible de découper" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:114 msgctxt "@button" msgid "Processing" -msgstr "Elaborazione in corso" +msgstr "Traitement" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:114 msgctxt "@button" msgid "Slice" -msgstr "Sezionamento" +msgstr "Découper" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:115 msgctxt "@label" msgid "Start the slicing process" -msgstr "Avvia il processo di sezionamento" +msgstr "Démarrer le processus de découpe" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:132 msgctxt "@button" msgid "Cancel" -msgstr "Annulla" +msgstr "Annuler" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/PrintJobInformation.qml:31 msgctxt "@label" msgid "Time estimation" -msgstr "Stima del tempo" +msgstr "Estimation de durée" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/PrintJobInformation.qml:107 msgctxt "@label" msgid "Material estimation" -msgstr "Stima del materiale" +msgstr "Estimation du matériau" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/PrintJobInformation.qml:156 msgctxt "@label m for meter" @@ -6384,146 +6392,146 @@ msgstr "%1g" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/OutputProcessWidget.qml:59 msgctxt "@label" msgid "No time estimation available" -msgstr "Nessuna stima di tempo disponibile" +msgstr "Aucune estimation de la durée n'est disponible" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/OutputProcessWidget.qml:77 msgctxt "@label" msgid "No cost estimation available" -msgstr "Nessuna stima di costo disponibile" +msgstr "Aucune estimation des coûts n'est disponible" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/OutputProcessWidget.qml:127 msgctxt "@button" msgid "Preview" -msgstr "Anteprima" +msgstr "Aperçu" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/JobSpecs.qml:93 msgctxt "@text Print job name" msgid "Untitled" -msgstr "Senza titolo" +msgstr "Sans titre" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Widgets/ComboBox.qml:18 msgctxt "@label" msgid "No items to select from" -msgstr "Nessun elemento da selezionare da" +msgstr "Aucun élément à sélectionner" #: /MachineSettingsAction/plugin.json msgctxt "description" msgid "" "Provides a way to change machine settings (such as build volume, nozzle " "size, etc.)." -msgstr "Fornisce un modo per modificare le impostazioni della macchina (come il volume di stampa, la dimensione ugello, ecc.)" +msgstr "Permet de modifier les paramètres de la machine (tels que volume d'impression, taille de buse, etc.)" #: /MachineSettingsAction/plugin.json msgctxt "name" msgid "Machine Settings Action" -msgstr "Azione Impostazioni macchina" +msgstr "Action Paramètres de la machine" #: /ImageReader/plugin.json msgctxt "description" msgid "Enables ability to generate printable geometry from 2D image files." -msgstr "Abilita la possibilità di generare geometria stampabile da file immagine 2D." +msgstr "Permet de générer une géométrie imprimable à partir de fichiers d'image 2D." #: /ImageReader/plugin.json msgctxt "name" msgid "Image Reader" -msgstr "Lettore di immagine" +msgstr "Lecteur d'images" #: /XRayView/plugin.json msgctxt "description" msgid "Provides the X-Ray view." -msgstr "Fornisce la vista a raggi X." +msgstr "Permet la vue Rayon-X." #: /XRayView/plugin.json msgctxt "name" msgid "X-Ray View" -msgstr "Vista ai raggi X" +msgstr "Vue Rayon-X" #: /X3DReader/plugin.json msgctxt "description" msgid "Provides support for reading X3D files." -msgstr "Fornisce il supporto per la lettura di file X3D." +msgstr "Fournit la prise en charge de la lecture de fichiers X3D." #: /X3DReader/plugin.json msgctxt "name" msgid "X3D Reader" -msgstr "Lettore X3D" +msgstr "Lecteur X3D" #: /CuraProfileReader/plugin.json msgctxt "description" msgid "Provides support for importing Cura profiles." -msgstr "Fornisce supporto per l'importazione dei profili Cura." +msgstr "Fournit la prise en charge de l'importation de profils Cura." #: /CuraProfileReader/plugin.json msgctxt "name" msgid "Cura Profile Reader" -msgstr "Lettore profilo Cura" +msgstr "Lecteur de profil Cura" #: /PostProcessingPlugin/plugin.json msgctxt "description" msgid "Extension that allows for user created scripts for post processing" -msgstr "Estensione che consente la post-elaborazione degli script creati da utente" +msgstr "Extension qui permet le post-traitement des scripts créés par l'utilisateur" #: /PostProcessingPlugin/plugin.json msgctxt "name" msgid "Post Processing" -msgstr "Post-elaborazione" +msgstr "Post-traitement" #: /UM3NetworkPrinting/plugin.json msgctxt "description" msgid "Manages network connections to Ultimaker networked printers." -msgstr "Gestisce le connessioni di rete alle stampanti Ultimaker in rete." +msgstr "Gère les connexions réseau vers les imprimantes Ultimaker en réseau." #: /UM3NetworkPrinting/plugin.json msgctxt "name" msgid "Ultimaker Network Connection" -msgstr "Connessione di rete Ultimaker" +msgstr "Connexion réseau Ultimaker" #: /3MFWriter/plugin.json msgctxt "description" msgid "Provides support for writing 3MF files." -msgstr "Fornisce il supporto per la scrittura di file 3MF." +msgstr "Permet l'écriture de fichiers 3MF." #: /3MFWriter/plugin.json msgctxt "name" msgid "3MF Writer" -msgstr "Writer 3MF" +msgstr "Générateur 3MF" #: /CuraDrive/plugin.json msgctxt "description" msgid "Backup and restore your configuration." -msgstr "Effettua il backup o ripristina la configurazione." +msgstr "Sauvegardez et restaurez votre configuration." #: /CuraDrive/plugin.json msgctxt "name" msgid "Cura Backups" -msgstr "Backup Cura" +msgstr "Sauvegardes Cura" #: /SliceInfoPlugin/plugin.json msgctxt "description" msgid "Submits anonymous slice info. Can be disabled through preferences." -msgstr "Invia informazioni su sezionamento anonime Può essere disabilitato tramite le preferenze." +msgstr "Envoie des informations anonymes sur le découpage. Peut être désactivé dans les préférences." #: /SliceInfoPlugin/plugin.json msgctxt "name" msgid "Slice info" -msgstr "Informazioni su sezionamento" +msgstr "Information sur le découpage" #: /UFPWriter/plugin.json msgctxt "description" msgid "Provides support for writing Ultimaker Format Packages." -msgstr "Fornisce il supporto per la scrittura di pacchetti formato Ultimaker." +msgstr "Permet l'écriture de fichiers Ultimaker Format Package." #: /UFPWriter/plugin.json msgctxt "name" msgid "UFP Writer" -msgstr "Writer UFP" +msgstr "Générateur UFP" #: /DigitalLibrary/plugin.json msgctxt "description" msgid "" "Connects to the Digital Library, allowing Cura to open files from and save " "files to the Digital Library." -msgstr "Si collega alla Digital Library, consentendo a Cura di aprire file e salvare file in Digital Library." +msgstr "Se connecte à la Digital Library, permettant à Cura d'ouvrir des fichiers à partir de cette dernière et d'y enregistrer des fichiers." #: /DigitalLibrary/plugin.json msgctxt "name" @@ -6533,517 +6541,517 @@ msgstr "Ultimaker Digital Library" #: /GCodeProfileReader/plugin.json msgctxt "description" msgid "Provides support for importing profiles from g-code files." -msgstr "Fornisce supporto per l'importazione di profili da file G-Code." +msgstr "Fournit la prise en charge de l'importation de profils à partir de fichiers g-code." #: /GCodeProfileReader/plugin.json msgctxt "name" msgid "G-code Profile Reader" -msgstr "Lettore profilo codice G" +msgstr "Lecteur de profil G-Code" #: /GCodeReader/plugin.json msgctxt "description" msgid "Allows loading and displaying G-code files." -msgstr "Consente il caricamento e la visualizzazione dei file codice G." +msgstr "Permet le chargement et l'affichage de fichiers G-Code." #: /GCodeReader/plugin.json msgctxt "name" msgid "G-code Reader" -msgstr "Lettore codice G" +msgstr "Lecteur G-Code" #: /TrimeshReader/plugin.json msgctxt "description" msgid "Provides support for reading model files." -msgstr "Fornisce supporto per la lettura dei file modello." +msgstr "Fournit la prise en charge de la lecture de fichiers modèle 3D." #: /TrimeshReader/plugin.json msgctxt "name" msgid "Trimesh Reader" -msgstr "Trimesh Reader" +msgstr "Lecteur de Trimesh" #: /UltimakerMachineActions/plugin.json msgctxt "description" msgid "" "Provides machine actions for Ultimaker machines (such as bed leveling " "wizard, selecting upgrades, etc.)." -msgstr "Fornisce azioni macchina per le macchine Ultimaker (come la procedura guidata di livellamento del piano di stampa, la selezione degli aggiornamenti, ecc.)" +msgstr "Fournit les actions de la machine pour les machines Ultimaker (telles que l'assistant de calibration du plateau, sélection des mises à niveau, etc.)" #: /UltimakerMachineActions/plugin.json msgctxt "name" msgid "Ultimaker machine actions" -msgstr "Azioni della macchina Ultimaker" +msgstr "Actions de la machine Ultimaker" #: /GCodeGzReader/plugin.json msgctxt "description" msgid "Reads g-code from a compressed archive." -msgstr "Legge il codice G da un archivio compresso." +msgstr "Lit le G-Code à partir d'une archive compressée." #: /GCodeGzReader/plugin.json msgctxt "name" msgid "Compressed G-code Reader" -msgstr "Lettore codice G compresso" +msgstr "Lecteur G-Code compressé" #: /Marketplace/plugin.json msgctxt "description" msgid "" "Manages extensions to the application and allows browsing extensions from " "the Ultimaker website." -msgstr "Gestisce le estensioni per l'applicazione e consente di ricercare le estensioni nel sito Web Ultimaker." +msgstr "Gère les extensions de l'application et permet de parcourir les extensions à partir du site Web Ultimaker." #: /Marketplace/plugin.json msgctxt "name" msgid "Marketplace" -msgstr "Mercato" +msgstr "Marketplace" #: /RemovableDriveOutputDevice/plugin.json msgctxt "description" msgid "Provides removable drive hotplugging and writing support." -msgstr "Fornisce il collegamento a caldo dell'unità rimovibile e il supporto per la scrittura." +msgstr "Permet le branchement hot-plug et l'écriture sur lecteur amovible." #: /RemovableDriveOutputDevice/plugin.json msgctxt "name" msgid "Removable Drive Output Device Plugin" -msgstr "Plugin dispositivo di output unità rimovibile" +msgstr "Plugin de périphérique de sortie sur disque amovible" #: /MonitorStage/plugin.json msgctxt "description" msgid "Provides a monitor stage in Cura." -msgstr "Fornisce una fase di controllo in Cura." +msgstr "Fournit une étape de surveillance dans Cura." #: /MonitorStage/plugin.json msgctxt "name" msgid "Monitor Stage" -msgstr "Fase di controllo" +msgstr "Étape de surveillance" #: /VersionUpgrade/VersionUpgrade25to26/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 2.5 to Cura 2.6." -msgstr "Aggiorna le configurazioni da Cura 2.5 a Cura 2.6." +msgstr "Configurations des mises à niveau de Cura 2.5 vers Cura 2.6." #: /VersionUpgrade/VersionUpgrade25to26/plugin.json msgctxt "name" msgid "Version Upgrade 2.5 to 2.6" -msgstr "Aggiornamento della versione da 2.5 a 2.6" +msgstr "Mise à niveau de 2.5 vers 2.6" #: /VersionUpgrade/VersionUpgrade26to27/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 2.6 to Cura 2.7." -msgstr "Aggiorna le configurazioni da Cura 2.6 a Cura 2.7." +msgstr "Configurations des mises à niveau de Cura 2.6 vers Cura 2.7." #: /VersionUpgrade/VersionUpgrade26to27/plugin.json msgctxt "name" msgid "Version Upgrade 2.6 to 2.7" -msgstr "Aggiornamento della versione da 2.6 a 2.7" +msgstr "Mise à niveau de 2.6 vers 2.7" #: /VersionUpgrade/VersionUpgrade413to50/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.13 to Cura 5.0." -msgstr "Aggiorna le configurazioni da Cura 4.3 a Cura 5.0." +msgstr "Mises à niveau des configurations de Cura 4.13 vers Cura 5.0." #: /VersionUpgrade/VersionUpgrade413to50/plugin.json msgctxt "name" msgid "Version Upgrade 4.13 to 5.0" -msgstr "Aggiornamento della versione da 4.13 a 5.0" +msgstr "Mise à niveau de la version 4.13 vers la version 5.0" #: /VersionUpgrade/VersionUpgrade48to49/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.8 to Cura 4.9." -msgstr "Aggiorna le configurazioni da Cura 4.8 a Cura 4.9." +msgstr "Mises à niveau des configurations de Cura 4.8 vers Cura 4.9." #: /VersionUpgrade/VersionUpgrade48to49/plugin.json msgctxt "name" msgid "Version Upgrade 4.8 to 4.9" -msgstr "Aggiornamento della versione da 4.8 a 4.9" +msgstr "Mise à niveau de 4.8 vers 4.9" #: /VersionUpgrade/VersionUpgrade34to35/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 3.4 to Cura 3.5." -msgstr "Aggiorna le configurazioni da Cura 3.4 a Cura 3.5." +msgstr "Configurations des mises à niveau de Cura 3.4 vers Cura 3.5." #: /VersionUpgrade/VersionUpgrade34to35/plugin.json msgctxt "name" msgid "Version Upgrade 3.4 to 3.5" -msgstr "Aggiornamento della versione da 3.4 a 3.5" +msgstr "Mise à niveau de 3.4 vers 3.5" #: /VersionUpgrade/VersionUpgrade44to45/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.4 to Cura 4.5." -msgstr "Aggiorna le configurazioni da Cura 4.4 a Cura 4.5." +msgstr "Configurations des mises à niveau de Cura 4.4 vers Cura 4.5." #: /VersionUpgrade/VersionUpgrade44to45/plugin.json msgctxt "name" msgid "Version Upgrade 4.4 to 4.5" -msgstr "Aggiornamento della versione da 4.4 a 4.5" +msgstr "Mise à niveau de 4.4 vers 4.5" #: /VersionUpgrade/VersionUpgrade43to44/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.3 to Cura 4.4." -msgstr "Aggiorna le configurazioni da Cura 4.3 a Cura 4.4." +msgstr "Configurations des mises à niveau de Cura 4.3 vers Cura 4.4." #: /VersionUpgrade/VersionUpgrade43to44/plugin.json msgctxt "name" msgid "Version Upgrade 4.3 to 4.4" -msgstr "Aggiornamento della versione da 4.3 a 4.4" +msgstr "Mise à niveau de 4.3 vers 4.4" #: /VersionUpgrade/VersionUpgrade32to33/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 3.2 to Cura 3.3." -msgstr "Aggiorna le configurazioni da Cura 3.2 a Cura 3.3." +msgstr "Configurations des mises à niveau de Cura 3.2 vers Cura 3.3." #: /VersionUpgrade/VersionUpgrade32to33/plugin.json msgctxt "name" msgid "Version Upgrade 3.2 to 3.3" -msgstr "Aggiornamento della versione da 3.2 a 3.3" +msgstr "Mise à niveau de 3.2 vers 3.3" #: /VersionUpgrade/VersionUpgrade33to34/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 3.3 to Cura 3.4." -msgstr "Aggiorna le configurazioni da Cura 3.3 a Cura 3.4." +msgstr "Configurations des mises à niveau de Cura 3.3 vers Cura 3.4." #: /VersionUpgrade/VersionUpgrade33to34/plugin.json msgctxt "name" msgid "Version Upgrade 3.3 to 3.4" -msgstr "Aggiornamento della versione da 3.3 a 3.4" +msgstr "Mise à niveau de 3.3 vers 3.4" #: /VersionUpgrade/VersionUpgrade41to42/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.1 to Cura 4.2." -msgstr "Aggiorna le configurazioni da Cura 4.1 a Cura 4.2." +msgstr "Configurations des mises à jour de Cura 4.1 vers Cura 4.2." #: /VersionUpgrade/VersionUpgrade41to42/plugin.json msgctxt "name" msgid "Version Upgrade 4.1 to 4.2" -msgstr "Aggiornamento della versione da 4.1 a 4.2" +msgstr "Mise à jour de 4.1 vers 4.2" #: /VersionUpgrade/VersionUpgrade42to43/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.2 to Cura 4.3." -msgstr "Aggiorna le configurazioni da Cura 4.2 a Cura 4.3." +msgstr "Configurations des mises à jour de Cura 4.2 vers Cura 4.3." #: /VersionUpgrade/VersionUpgrade42to43/plugin.json msgctxt "name" msgid "Version Upgrade 4.2 to 4.3" -msgstr "Aggiornamento della versione da 4.2 a 4.3" +msgstr "Mise à jour de 4.2 vers 4.3" #: /VersionUpgrade/VersionUpgrade462to47/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.6.2 to Cura 4.7." -msgstr "Aggiorna le configurazioni da Cura 4.6.2 a Cura 4.7." +msgstr "Mises à niveau des configurations de Cura 4.6.2 vers Cura 4.7." #: /VersionUpgrade/VersionUpgrade462to47/plugin.json msgctxt "name" msgid "Version Upgrade 4.6.2 to 4.7" -msgstr "Aggiornamento versione da 4.6.2 a 4.7" +msgstr "Mise à niveau de 4.6.2 vers 4.7" #: /VersionUpgrade/VersionUpgrade35to40/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 3.5 to Cura 4.0." -msgstr "Aggiorna le configurazioni da Cura 3.5 a Cura 4.0." +msgstr "Configurations des mises à niveau de Cura 3.5 vers Cura 4.0." #: /VersionUpgrade/VersionUpgrade35to40/plugin.json msgctxt "name" msgid "Version Upgrade 3.5 to 4.0" -msgstr "Aggiornamento della versione da 3.5 a 4.0" +msgstr "Mise à niveau de 3.5 vers 4.0" #: /VersionUpgrade/VersionUpgrade22to24/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 2.2 to Cura 2.4." -msgstr "Aggiorna le configurazioni da Cura 2.2 a Cura 2.4." +msgstr "Configurations des mises à niveau de Cura 2.2 vers Cura 2.4." #: /VersionUpgrade/VersionUpgrade22to24/plugin.json msgctxt "name" msgid "Version Upgrade 2.2 to 2.4" -msgstr "Aggiornamento della versione da 2.2 a 2.4" +msgstr "Mise à niveau de 2.2 vers 2.4" #: /VersionUpgrade/VersionUpgrade21to22/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 2.1 to Cura 2.2." -msgstr "Aggiorna le configurazioni da Cura 2.1 a Cura 2.2." +msgstr "Configurations des mises à niveau de Cura 2.1 vers Cura 2.2." #: /VersionUpgrade/VersionUpgrade21to22/plugin.json msgctxt "name" msgid "Version Upgrade 2.1 to 2.2" -msgstr "Aggiornamento della versione da 2.1 a 2.2" +msgstr "Mise à niveau vers 2.1 vers 2.2" #: /VersionUpgrade/VersionUpgrade460to462/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.6.0 to Cura 4.6.2." -msgstr "Aggiorna le configurazioni da Cura 4.6.0 a Cura 4.6.2." +msgstr "Mises à niveau des configurations de Cura 4.6.0 vers Cura 4.6.2." #: /VersionUpgrade/VersionUpgrade460to462/plugin.json msgctxt "name" msgid "Version Upgrade 4.6.0 to 4.6.2" -msgstr "Aggiornamento versione da 4.6.0 a 4.6.2" +msgstr "Mise à niveau de 4.6.0 vers 4.6.2" #: /VersionUpgrade/VersionUpgrade47to48/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.7 to Cura 4.8." -msgstr "Aggiorna le configurazioni da Cura 4.7 a Cura 4.8." +msgstr "Mises à niveau des configurations de Cura 4.7 vers Cura 4.8." #: /VersionUpgrade/VersionUpgrade47to48/plugin.json msgctxt "name" msgid "Version Upgrade 4.7 to 4.8" -msgstr "Aggiornamento della versione da 4.7 a 4.8" +msgstr "Mise à niveau de 4.7 vers 4.8" #: /VersionUpgrade/VersionUpgrade49to410/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.9 to Cura 4.10." -msgstr "Aggiorna le configurazioni da Cura 4.9 a Cura 4.10." +msgstr "Mises à niveau des configurations de Cura 4.9 vers Cura 4.10." #: /VersionUpgrade/VersionUpgrade49to410/plugin.json msgctxt "name" msgid "Version Upgrade 4.9 to 4.10" -msgstr "Aggiornamento della versione da 4.9 a 4.10" +msgstr "Mise à niveau de 4.9 vers 4.10" #: /VersionUpgrade/VersionUpgrade45to46/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.5 to Cura 4.6." -msgstr "Aggiorna le configurazioni da Cura 4.5 a Cura 4.6." +msgstr "Mises à niveau des configurations de Cura 4.5 vers Cura 4.6." #: /VersionUpgrade/VersionUpgrade45to46/plugin.json msgctxt "name" msgid "Version Upgrade 4.5 to 4.6" -msgstr "Aggiornamento della versione da 4.5 a 4.6" +msgstr "Mise à niveau de 4.5 vers 4.6" #: /VersionUpgrade/VersionUpgrade27to30/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 2.7 to Cura 3.0." -msgstr "Aggiorna le configurazioni da Cura 2.7 a Cura 3.0." +msgstr "Met à niveau les configurations, de Cura 2.7 vers Cura 3.0." #: /VersionUpgrade/VersionUpgrade27to30/plugin.json msgctxt "name" msgid "Version Upgrade 2.7 to 3.0" -msgstr "Aggiornamento della versione da 2.7 a 3.0" +msgstr "Mise à niveau de version, de 2.7 vers 3.0" #: /VersionUpgrade/VersionUpgrade30to31/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 3.0 to Cura 3.1." -msgstr "Aggiorna le configurazioni da Cura 3.0 a Cura 3.1." +msgstr "Met à niveau les configurations, de Cura 3.0 vers Cura 3.1." #: /VersionUpgrade/VersionUpgrade30to31/plugin.json msgctxt "name" msgid "Version Upgrade 3.0 to 3.1" -msgstr "Aggiornamento della versione da 3.0 a 3.1" +msgstr "Mise à niveau de version, de 3.0 vers 3.1" #: /VersionUpgrade/VersionUpgrade411to412/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.11 to Cura 4.12." -msgstr "Aggiorna le configurazioni da Cura 4.11 a Cura 4.12." +msgstr "Mises à niveau des configurations de Cura 4.11 vers Cura 4.12." #: /VersionUpgrade/VersionUpgrade411to412/plugin.json msgctxt "name" msgid "Version Upgrade 4.11 to 4.12" -msgstr "Aggiornamento della versione da 4.11 a 4.12" +msgstr "Mise à niveau de la version 4.11 vers la version 4.12" #: /VersionUpgrade/VersionUpgrade40to41/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.0 to Cura 4.1." -msgstr "Aggiorna le configurazioni da Cura 4.0 a Cura 4.1." +msgstr "Configurations des mises à niveau de Cura 4.0 vers Cura 4.1." #: /VersionUpgrade/VersionUpgrade40to41/plugin.json msgctxt "name" msgid "Version Upgrade 4.0 to 4.1" -msgstr "Aggiornamento della versione da 4.0 a 4.1" +msgstr "Mise à niveau de 4.0 vers 4.1" #: /CuraEngineBackend/plugin.json msgctxt "description" msgid "Provides the link to the CuraEngine slicing backend." -msgstr "Fornisce il collegamento al back-end di sezionamento CuraEngine." +msgstr "Fournit le lien vers l'arrière du système de découpage CuraEngine." #: /CuraEngineBackend/plugin.json msgctxt "name" msgid "CuraEngine Backend" -msgstr "Back-end CuraEngine" +msgstr "Système CuraEngine" #: /3MFReader/plugin.json msgctxt "description" msgid "Provides support for reading 3MF files." -msgstr "Fornisce il supporto per la lettura di file 3MF." +msgstr "Fournit la prise en charge de la lecture de fichiers 3MF." #: /3MFReader/plugin.json msgctxt "name" msgid "3MF Reader" -msgstr "Lettore 3MF" +msgstr "Lecteur 3MF" #: /PerObjectSettingsTool/plugin.json msgctxt "description" msgid "Provides the Per Model Settings." -msgstr "Fornisce le impostazioni per modello." +msgstr "Fournit les paramètres par modèle." #: /PerObjectSettingsTool/plugin.json msgctxt "name" msgid "Per Model Settings Tool" -msgstr "Utilità impostazioni per modello" +msgstr "Outil de paramètres par modèle" #: /XmlMaterialProfile/plugin.json msgctxt "description" msgid "Provides capabilities to read and write XML-based material profiles." -msgstr "Offre la possibilità di leggere e scrivere profili di materiali basati su XML." +msgstr "Offre la possibilité de lire et d'écrire des profils matériels basés sur XML." #: /XmlMaterialProfile/plugin.json msgctxt "name" msgid "Material Profiles" -msgstr "Profili del materiale" +msgstr "Profils matériels" #: /CuraProfileWriter/plugin.json msgctxt "description" msgid "Provides support for exporting Cura profiles." -msgstr "Fornisce supporto per l'esportazione dei profili Cura." +msgstr "Fournit la prise en charge de l'exportation de profils Cura." #: /CuraProfileWriter/plugin.json msgctxt "name" msgid "Cura Profile Writer" -msgstr "Writer profilo Cura" +msgstr "Générateur de profil Cura" #: /ModelChecker/plugin.json msgctxt "description" msgid "" "Checks models and print configuration for possible printing issues and give " "suggestions." -msgstr "Controlla i modelli e la configurazione di stampa per eventuali problematiche di stampa e suggerimenti." +msgstr "Vérifie les modèles et la configuration de l'impression pour déceler d'éventuels problèmes d'impression et donne des suggestions." #: /ModelChecker/plugin.json msgctxt "name" msgid "Model Checker" -msgstr "Controllo modello" +msgstr "Contrôleur de modèle" #: /USBPrinting/plugin.json msgctxt "description" msgid "" "Accepts G-Code and sends them to a printer. Plugin can also update firmware." -msgstr "Accetta i G-Code e li invia ad una stampante. I plugin possono anche aggiornare il firmware." +msgstr "Accepte les G-Code et les envoie à une imprimante. Ce plugin peut aussi mettre à jour le firmware." #: /USBPrinting/plugin.json msgctxt "name" msgid "USB printing" -msgstr "Stampa USB" +msgstr "Impression par USB" #: /PreviewStage/plugin.json msgctxt "description" msgid "Provides a preview stage in Cura." -msgstr "Fornisce una fase di anteprima in Cura." +msgstr "Fournit une étape de prévisualisation dans Cura." #: /PreviewStage/plugin.json msgctxt "name" msgid "Preview Stage" -msgstr "Fase di anteprima" +msgstr "Étape de prévisualisation" #: /GCodeWriter/plugin.json msgctxt "description" msgid "Writes g-code to a file." -msgstr "Scrive il codice G in un file." +msgstr "Enregistre le G-Code dans un fichier." #: /GCodeWriter/plugin.json msgctxt "name" msgid "G-code Writer" -msgstr "Writer codice G" +msgstr "Générateur de G-Code" #: /UFPReader/plugin.json msgctxt "description" msgid "Provides support for reading Ultimaker Format Packages." -msgstr "Fornisce il supporto per la lettura di pacchetti formato Ultimaker." +msgstr "Fournit un support pour la lecture des paquets de format Ultimaker." #: /UFPReader/plugin.json msgctxt "name" msgid "UFP Reader" -msgstr "Lettore UFP" +msgstr "Lecteur UFP" #: /FirmwareUpdater/plugin.json msgctxt "description" msgid "Provides a machine actions for updating firmware." -msgstr "Fornisce azioni macchina per l’aggiornamento del firmware." +msgstr "Fournit à une machine des actions permettant la mise à jour du firmware." #: /FirmwareUpdater/plugin.json msgctxt "name" msgid "Firmware Updater" -msgstr "Aggiornamento firmware" +msgstr "Programme de mise à jour du firmware" #: /GCodeGzWriter/plugin.json msgctxt "description" msgid "Writes g-code to a compressed archive." -msgstr "Scrive il codice G in un archivio compresso." +msgstr "Enregistre le G-Code dans une archive compressée." #: /GCodeGzWriter/plugin.json msgctxt "name" msgid "Compressed G-code Writer" -msgstr "Writer codice G compresso" +msgstr "Générateur de G-Code compressé" #: /SimulationView/plugin.json msgctxt "description" msgid "Provides the preview of sliced layerdata." -msgstr "Fornisce l'anteprima dei dati dei livelli suddivisi in sezioni." +msgstr "Fournit l'aperçu des données du slice." #: /SimulationView/plugin.json msgctxt "name" msgid "Simulation View" -msgstr "Vista simulazione" +msgstr "Vue simulation" #: /LegacyProfileReader/plugin.json msgctxt "description" msgid "Provides support for importing profiles from legacy Cura versions." -msgstr "Fornisce supporto per l'importazione di profili dalle versioni legacy Cura." +msgstr "Fournit la prise en charge de l'importation de profils à partir de versions Cura antérieures." #: /LegacyProfileReader/plugin.json msgctxt "name" msgid "Legacy Cura Profile Reader" -msgstr "Lettore legacy profilo Cura" +msgstr "Lecteur de profil Cura antérieur" #: /AMFReader/plugin.json msgctxt "description" msgid "Provides support for reading AMF files." -msgstr "Fornisce il supporto per la lettura di file 3MF." +msgstr "Fournit la prise en charge de la lecture de fichiers AMF." #: /AMFReader/plugin.json msgctxt "name" msgid "AMF Reader" -msgstr "Lettore 3MF" +msgstr "Lecteur AMF" #: /SolidView/plugin.json msgctxt "description" msgid "Provides a normal solid mesh view." -msgstr "Fornisce una normale visualizzazione a griglia compatta." +msgstr "Affiche une vue en maille solide normale." #: /SolidView/plugin.json msgctxt "name" msgid "Solid View" -msgstr "Visualizzazione compatta" +msgstr "Vue solide" #: /FirmwareUpdateChecker/plugin.json msgctxt "description" msgid "Checks for firmware updates." -msgstr "Controlla disponibilità di aggiornamenti firmware." +msgstr "Vérifie les mises à jour du firmware." #: /FirmwareUpdateChecker/plugin.json msgctxt "name" msgid "Firmware Update Checker" -msgstr "Controllo aggiornamento firmware" +msgstr "Vérificateur des mises à jour du firmware" #: /SentryLogger/plugin.json msgctxt "description" msgid "Logs certain events so that they can be used by the crash reporter" -msgstr "Registra determinati eventi in modo che possano essere utilizzati dal segnalatore dei crash" +msgstr "Enregistre certains événements afin qu'ils puissent être utilisés par le rapporteur d'incident" #: /SentryLogger/plugin.json msgctxt "name" msgid "Sentry Logger" -msgstr "Logger sentinella" +msgstr "Journal d'événements dans Sentry" #: /SupportEraser/plugin.json msgctxt "description" msgid "" "Creates an eraser mesh to block the printing of support in certain places" -msgstr "Crea una maglia di cancellazione per bloccare la stampa del supporto in alcune posizioni" +msgstr "Crée un maillage effaceur pour bloquer l'impression du support en certains endroits" #: /SupportEraser/plugin.json msgctxt "name" msgid "Support Eraser" -msgstr "Cancellazione supporto" +msgstr "Effaceur de support" #: /PrepareStage/plugin.json msgctxt "description" msgid "Provides a prepare stage in Cura." -msgstr "Fornisce una fase di preparazione in Cura." +msgstr "Fournit une étape de préparation dans Cura." #: /PrepareStage/plugin.json msgctxt "name" msgid "Prepare Stage" -msgstr "Fase di preparazione" +msgstr "Étape de préparation" diff --git a/resources/i18n/it_IT/fdmextruder.def.json.po b/resources/i18n/it_IT/fdmextruder.def.json.po index a8b3f0fe34..3702c6aac9 100644 --- a/resources/i18n/it_IT/fdmextruder.def.json.po +++ b/resources/i18n/it_IT/fdmextruder.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -17,165 +14,165 @@ msgstr "" #: /fdmextruder.def.json msgctxt "machine_settings label" msgid "Machine" -msgstr "Macchina" +msgstr "Machine" #: /fdmextruder.def.json msgctxt "machine_settings description" msgid "Machine specific settings" -msgstr "Impostazioni macchina specifiche" +msgstr "Paramètres spécifiques de la machine" #: /fdmextruder.def.json msgctxt "extruder_nr label" msgid "Extruder" -msgstr "Estrusore" +msgstr "Extrudeuse" #: /fdmextruder.def.json msgctxt "extruder_nr description" msgid "The extruder train used for printing. This is used in multi-extrusion." -msgstr "Treno estrusore utilizzato per la stampa. Utilizzato nell’estrusione multipla." +msgstr "Le train d'extrudeuse utilisé pour l'impression. Cela est utilisé en multi-extrusion." #: /fdmextruder.def.json msgctxt "machine_nozzle_id label" msgid "Nozzle ID" -msgstr "ID ugello" +msgstr "ID buse" #: /fdmextruder.def.json msgctxt "machine_nozzle_id description" msgid "The nozzle ID for an extruder train, such as \"AA 0.4\" and \"BB 0.8\"." -msgstr "ID ugello per un treno estrusore, come \"AA 0.4\" e \"BB 0.8\"." +msgstr "ID buse pour un train d'extrudeuse, comme « AA 0.4 » et « BB 0.8 »." #: /fdmextruder.def.json msgctxt "machine_nozzle_size label" msgid "Nozzle Diameter" -msgstr "Diametro ugello" +msgstr "Diamètre de la buse" #: /fdmextruder.def.json msgctxt "machine_nozzle_size description" msgid "" "The inner diameter of the nozzle. Change this setting when using a non-" "standard nozzle size." -msgstr "Il diametro interno dell’ugello. Modificare questa impostazione quando si utilizza una dimensione ugello non standard." +msgstr "Le diamètre intérieur de la buse. Modifiez ce paramètre si vous utilisez une taille de buse non standard." #: /fdmextruder.def.json msgctxt "machine_nozzle_offset_x label" msgid "Nozzle X Offset" -msgstr "Offset X ugello" +msgstr "Buse Décalage X" #: /fdmextruder.def.json msgctxt "machine_nozzle_offset_x description" msgid "The x-coordinate of the offset of the nozzle." -msgstr "La coordinata y dell’offset dell’ugello." +msgstr "Les coordonnées X du décalage de la buse." #: /fdmextruder.def.json msgctxt "machine_nozzle_offset_y label" msgid "Nozzle Y Offset" -msgstr "Offset Y ugello" +msgstr "Buse Décalage Y" #: /fdmextruder.def.json msgctxt "machine_nozzle_offset_y description" msgid "The y-coordinate of the offset of the nozzle." -msgstr "La coordinata y dell’offset dell’ugello." +msgstr "Les coordonnées Y du décalage de la buse." #: /fdmextruder.def.json msgctxt "machine_extruder_start_code label" msgid "Extruder Start G-Code" -msgstr "Codice G avvio estrusore" +msgstr "Extrudeuse G-Code de démarrage" #: /fdmextruder.def.json msgctxt "machine_extruder_start_code description" msgid "Start g-code to execute when switching to this extruder." -msgstr "Inizio codice G da eseguire quando si passa a questo estrusore." +msgstr "Démarrer le G-Code à exécuter lors du passage à cette extrudeuse." #: /fdmextruder.def.json msgctxt "machine_extruder_start_pos_abs label" msgid "Extruder Start Position Absolute" -msgstr "Assoluto posizione avvio estrusore" +msgstr "Extrudeuse Position de départ absolue" #: /fdmextruder.def.json msgctxt "machine_extruder_start_pos_abs description" msgid "" "Make the extruder starting position absolute rather than relative to the " "last-known location of the head." -msgstr "Rende la posizione di partenza estrusore assoluta anziché relativa rispetto all’ultima posizione nota della testina." +msgstr "Rendre la position de départ de l'extrudeuse absolue plutôt que relative à la dernière position connue de la tête." #: /fdmextruder.def.json msgctxt "machine_extruder_start_pos_x label" msgid "Extruder Start Position X" -msgstr "X posizione avvio estrusore" +msgstr "Extrudeuse Position de départ X" #: /fdmextruder.def.json msgctxt "machine_extruder_start_pos_x description" msgid "The x-coordinate of the starting position when turning the extruder on." -msgstr "La coordinata x della posizione di partenza all’accensione dell’estrusore." +msgstr "Les coordonnées X de la position de départ lors de la mise en marche de l'extrudeuse." #: /fdmextruder.def.json msgctxt "machine_extruder_start_pos_y label" msgid "Extruder Start Position Y" -msgstr "Y posizione avvio estrusore" +msgstr "Extrudeuse Position de départ Y" #: /fdmextruder.def.json msgctxt "machine_extruder_start_pos_y description" msgid "The y-coordinate of the starting position when turning the extruder on." -msgstr "La coordinata y della posizione di partenza all’accensione dell’estrusore." +msgstr "Les coordonnées Y de la position de départ lors de la mise en marche de l'extrudeuse." #: /fdmextruder.def.json msgctxt "machine_extruder_end_code label" msgid "Extruder End G-Code" -msgstr "Codice G fine estrusore" +msgstr "Extrudeuse G-Code de fin" #: /fdmextruder.def.json msgctxt "machine_extruder_end_code description" msgid "End g-code to execute when switching away from this extruder." -msgstr "Fine codice G da eseguire quando si passa a questo estrusore." +msgstr "Fin du G-Code à exécuter lors de l'abandon de l'extrudeuse." #: /fdmextruder.def.json msgctxt "machine_extruder_end_pos_abs label" msgid "Extruder End Position Absolute" -msgstr "Assoluto posizione fine estrusore" +msgstr "Extrudeuse Position de fin absolue" #: /fdmextruder.def.json msgctxt "machine_extruder_end_pos_abs description" msgid "" "Make the extruder ending position absolute rather than relative to the last-" "known location of the head." -msgstr "Rende la posizione di fine estrusore assoluta anziché relativa rispetto all’ultima posizione nota della testina." +msgstr "Rendre la position de fin de l'extrudeuse absolue plutôt que relative à la dernière position connue de la tête." #: /fdmextruder.def.json msgctxt "machine_extruder_end_pos_x label" msgid "Extruder End Position X" -msgstr "Posizione X fine estrusore" +msgstr "Extrudeuse Position de fin X" #: /fdmextruder.def.json msgctxt "machine_extruder_end_pos_x description" msgid "The x-coordinate of the ending position when turning the extruder off." -msgstr "La coordinata x della posizione di fine allo spegnimento dell’estrusore." +msgstr "Les coordonnées X de la position de fin lors de l'arrêt de l'extrudeuse." #: /fdmextruder.def.json msgctxt "machine_extruder_end_pos_y label" msgid "Extruder End Position Y" -msgstr "Posizione Y fine estrusore" +msgstr "Extrudeuse Position de fin Y" #: /fdmextruder.def.json msgctxt "machine_extruder_end_pos_y description" msgid "The y-coordinate of the ending position when turning the extruder off." -msgstr "La coordinata y della posizione di fine allo spegnimento dell’estrusore." +msgstr "Les coordonnées Y de la position de fin lors de l'arrêt de l'extrudeuse." #: /fdmextruder.def.json msgctxt "extruder_prime_pos_z label" msgid "Extruder Prime Z Position" -msgstr "Posizione Z innesco estrusore" +msgstr "Extrudeuse Position d'amorçage Z" #: /fdmextruder.def.json msgctxt "extruder_prime_pos_z description" msgid "" "The Z coordinate of the position where the nozzle primes at the start of " "printing." -msgstr "Indica la coordinata Z della posizione in cui l’ugello si innesca all’avvio della stampa." +msgstr "Les coordonnées Z de la position à laquelle la buse s'amorce au début de l'impression." #: /fdmextruder.def.json msgctxt "machine_extruder_cooling_fan_number label" msgid "Extruder Print Cooling Fan" -msgstr "Ventola di raffreddamento stampa estrusore" +msgstr "Ventilateur de refroidissement d'impression de l'extrudeuse" #: /fdmextruder.def.json msgctxt "machine_extruder_cooling_fan_number description" @@ -183,61 +180,61 @@ msgid "" "The number of the print cooling fan associated with this extruder. Only " "change this from the default value of 0 when you have a different print " "cooling fan for each extruder." -msgstr "Il numero di ventole di raffreddamento stampa abbinate a questo estrusore. Modificarlo dal valore predefinito 0 solo quando si ha una ventola di raffreddamento" -" diversa per ciascun estrusore." +msgstr "Numéro du ventilateur de refroidissement d'impression associé à cette extrudeuse. Ne modifiez cette valeur par rapport à la valeur par défaut 0 que si" +" vous utilisez un ventilateur de refroidissement d'impression différent pour chaque extrudeuse." #: /fdmextruder.def.json msgctxt "platform_adhesion label" msgid "Build Plate Adhesion" -msgstr "Adesione piano di stampa" +msgstr "Adhérence du plateau" #: /fdmextruder.def.json msgctxt "platform_adhesion description" msgid "Adhesion" -msgstr "Adesione" +msgstr "Adhérence" #: /fdmextruder.def.json msgctxt "extruder_prime_pos_x label" msgid "Extruder Prime X Position" -msgstr "Posizione X innesco estrusore" +msgstr "Extrudeuse Position d'amorçage X" #: /fdmextruder.def.json msgctxt "extruder_prime_pos_x description" msgid "" "The X coordinate of the position where the nozzle primes at the start of " "printing." -msgstr "La coordinata X della posizione in cui l’ugello si innesca all’avvio della stampa." +msgstr "Les coordonnées X de la position à laquelle la buse s'amorce au début de l'impression." #: /fdmextruder.def.json msgctxt "extruder_prime_pos_y label" msgid "Extruder Prime Y Position" -msgstr "Posizione Y innesco estrusore" +msgstr "Extrudeuse Position d'amorçage Y" #: /fdmextruder.def.json msgctxt "extruder_prime_pos_y description" msgid "" "The Y coordinate of the position where the nozzle primes at the start of " "printing." -msgstr "La coordinata Y della posizione in cui l’ugello si innesca all’avvio della stampa." +msgstr "Les coordonnées Y de la position à laquelle la buse s'amorce au début de l'impression." #: /fdmextruder.def.json msgctxt "material label" msgid "Material" -msgstr "Materiale" +msgstr "Matériau" #: /fdmextruder.def.json msgctxt "material description" msgid "Material" -msgstr "Materiale" +msgstr "Matériau" #: /fdmextruder.def.json msgctxt "material_diameter label" msgid "Diameter" -msgstr "Diametro" +msgstr "Diamètre" #: /fdmextruder.def.json msgctxt "material_diameter description" msgid "" "Adjusts the diameter of the filament used. Match this value with the " "diameter of the used filament." -msgstr "Regolare il diametro del filamento utilizzato. Abbinare questo valore al diametro del filamento utilizzato." +msgstr "Ajuste le diamètre du filament utilisé. Faites correspondre cette valeur au diamètre du filament utilisé." diff --git a/resources/i18n/it_IT/fdmprinter.def.json.po b/resources/i18n/it_IT/fdmprinter.def.json.po index 23b56754fb..47c0d23bf0 100644 --- a/resources/i18n/it_IT/fdmprinter.def.json.po +++ b/resources/i18n/it_IT/fdmprinter.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -17,107 +14,107 @@ msgstr "" #: /fdmprinter.def.json msgctxt "machine_settings label" msgid "Machine" -msgstr "Macchina" +msgstr "Machine" #: /fdmprinter.def.json msgctxt "machine_settings description" msgid "Machine specific settings" -msgstr "Impostazioni macchina specifiche" +msgstr "Paramètres spécifiques de la machine" #: /fdmprinter.def.json msgctxt "machine_name label" msgid "Machine Type" -msgstr "Tipo di macchina" +msgstr "Type de machine" #: /fdmprinter.def.json msgctxt "machine_name description" msgid "The name of your 3D printer model." -msgstr "Il nome del modello della stampante 3D in uso." +msgstr "Le nom du modèle de votre imprimante 3D." #: /fdmprinter.def.json msgctxt "machine_show_variants label" msgid "Show Machine Variants" -msgstr "Mostra varianti macchina" +msgstr "Afficher les variantes de la machine" #: /fdmprinter.def.json msgctxt "machine_show_variants description" msgid "" "Whether to show the different variants of this machine, which are described " "in separate json files." -msgstr "Sceglie se mostrare le diverse varianti di questa macchina, descritte in file json a parte." +msgstr "Afficher ou non les différentes variantes de cette machine qui sont décrites dans des fichiers json séparés." #: /fdmprinter.def.json msgctxt "machine_start_gcode label" msgid "Start G-code" -msgstr "Codice G avvio" +msgstr "G-Code de démarrage" #: /fdmprinter.def.json msgctxt "machine_start_gcode description" msgid "" "G-code commands to be executed at the very start - separated by \n" "." -msgstr "I comandi codice G da eseguire all’avvio, separati da \n." +msgstr "Commandes G-Code à exécuter au tout début, séparées par \n." #: /fdmprinter.def.json msgctxt "machine_end_gcode label" msgid "End G-code" -msgstr "Codice G fine" +msgstr "G-Code de fin" #: /fdmprinter.def.json msgctxt "machine_end_gcode description" msgid "" "G-code commands to be executed at the very end - separated by \n" "." -msgstr "I comandi codice G da eseguire alla fine, separati da \n." +msgstr "Commandes G-Code à exécuter tout à la fin, séparées par \n." #: /fdmprinter.def.json msgctxt "material_guid label" msgid "Material GUID" -msgstr "GUID materiale" +msgstr "GUID matériau" #: /fdmprinter.def.json msgctxt "material_guid description" msgid "GUID of the material. This is set automatically." -msgstr "Il GUID del materiale. È impostato automaticamente." +msgstr "GUID du matériau. Cela est configuré automatiquement." #: /fdmprinter.def.json msgctxt "material_diameter label" msgid "Diameter" -msgstr "Diametro" +msgstr "Diamètre" #: /fdmprinter.def.json msgctxt "material_diameter description" msgid "" "Adjusts the diameter of the filament used. Match this value with the " "diameter of the used filament." -msgstr "Regolare il diametro del filamento utilizzato. Abbinare questo valore al diametro del filamento utilizzato." +msgstr "Ajuste le diamètre du filament utilisé. Faites correspondre cette valeur au diamètre du filament utilisé." #: /fdmprinter.def.json msgctxt "material_bed_temp_wait label" msgid "Wait for Build Plate Heatup" -msgstr "Attendi il riscaldamento del piano di stampa" +msgstr "Attendre le chauffage du plateau" #: /fdmprinter.def.json msgctxt "material_bed_temp_wait description" msgid "" "Whether to insert a command to wait until the build plate temperature is " "reached at the start." -msgstr "Sceglie se inserire un comando per attendere finché la temperatura del piano di stampa non viene raggiunta all’avvio." +msgstr "Insérer ou non une commande pour attendre que la température du plateau soit atteinte au démarrage." #: /fdmprinter.def.json msgctxt "material_print_temp_wait label" msgid "Wait for Nozzle Heatup" -msgstr "Attendi il riscaldamento dell’ugello" +msgstr "Attendre le chauffage de la buse" #: /fdmprinter.def.json msgctxt "material_print_temp_wait description" msgid "Whether to wait until the nozzle temperature is reached at the start." -msgstr "Sceglie se attendere finché la temperatura dell’ugello non viene raggiunta all’avvio." +msgstr "Attendre ou non que la température de la buse soit atteinte au démarrage." #: /fdmprinter.def.json msgctxt "material_print_temp_prepend label" msgid "Include Material Temperatures" -msgstr "Includi le temperature del materiale" +msgstr "Inclure les températures du matériau" #: /fdmprinter.def.json msgctxt "material_print_temp_prepend description" @@ -125,13 +122,13 @@ msgid "" "Whether to include nozzle temperature commands at the start of the gcode. " "When the start_gcode already contains nozzle temperature commands Cura " "frontend will automatically disable this setting." -msgstr "Sceglie se includere comandi temperatura ugello all’avvio del codice G. Quando start_gcode contiene già comandi temperatura ugello la parte anteriore di" -" Cura disabilita automaticamente questa impostazione." +msgstr "Inclure ou non les commandes de température de la buse au début du gcode. Si le gcode_démarrage contient déjà les commandes de température de la buse," +" l'interface Cura désactive automatiquement ce paramètre." #: /fdmprinter.def.json msgctxt "material_bed_temp_prepend label" msgid "Include Build Plate Temperature" -msgstr "Includi temperatura piano di stampa" +msgstr "Inclure la température du plateau" #: /fdmprinter.def.json msgctxt "material_bed_temp_prepend description" @@ -139,104 +136,104 @@ msgid "" "Whether to include build plate temperature commands at the start of the " "gcode. When the start_gcode already contains build plate temperature " "commands Cura frontend will automatically disable this setting." -msgstr "Sceglie se includere comandi temperatura piano di stampa all’avvio del codice G. Quando start_gcode contiene già comandi temperatura piano di stampa la" -" parte anteriore di Cura disabilita automaticamente questa impostazione." +msgstr "Inclure ou non les commandes de température du plateau au début du gcode. Si le gcode_démarrage contient déjà les commandes de température du plateau," +" l'interface Cura désactive automatiquement ce paramètre." #: /fdmprinter.def.json msgctxt "machine_width label" msgid "Machine Width" -msgstr "Larghezza macchina" +msgstr "Largeur de la machine" #: /fdmprinter.def.json msgctxt "machine_width description" msgid "The width (X-direction) of the printable area." -msgstr "La larghezza (direzione X) dell’area stampabile." +msgstr "La largeur (sens X) de la zone imprimable." #: /fdmprinter.def.json msgctxt "machine_depth label" msgid "Machine Depth" -msgstr "Profondità macchina" +msgstr "Profondeur de la machine" #: /fdmprinter.def.json msgctxt "machine_depth description" msgid "The depth (Y-direction) of the printable area." -msgstr "La profondità (direzione Y) dell’area stampabile." +msgstr "La profondeur (sens Y) de la zone imprimable." #: /fdmprinter.def.json msgctxt "machine_height label" msgid "Machine Height" -msgstr "Altezza macchina" +msgstr "Hauteur de la machine" #: /fdmprinter.def.json msgctxt "machine_height description" msgid "The height (Z-direction) of the printable area." -msgstr "L’altezza (direzione Z) dell’area stampabile." +msgstr "La hauteur (sens Z) de la zone imprimable." #: /fdmprinter.def.json msgctxt "machine_shape label" msgid "Build Plate Shape" -msgstr "Forma del piano di stampa" +msgstr "Forme du plateau" #: /fdmprinter.def.json msgctxt "machine_shape description" msgid "" "The shape of the build plate without taking unprintable areas into account." -msgstr "La forma del piano di stampa senza tenere conto delle aree non stampabili." +msgstr "La forme du plateau sans prendre les zones non imprimables en compte." #: /fdmprinter.def.json msgctxt "machine_shape option rectangular" msgid "Rectangular" -msgstr "Rettangolare" +msgstr "Rectangulaire" #: /fdmprinter.def.json msgctxt "machine_shape option elliptic" msgid "Elliptic" -msgstr "Ellittica" +msgstr "Elliptique" #: /fdmprinter.def.json msgctxt "machine_buildplate_type label" msgid "Build Plate Material" -msgstr "Materiale piano di stampa" +msgstr "Matériau du plateau" #: /fdmprinter.def.json msgctxt "machine_buildplate_type description" msgid "The material of the build plate installed on the printer." -msgstr "Il materiale del piano di stampa installato sulla stampante." +msgstr "Matériau du plateau installé sur l'imprimante." #: /fdmprinter.def.json msgctxt "machine_buildplate_type option glass" msgid "Glass" -msgstr "Cristallo" +msgstr "Verre" #: /fdmprinter.def.json msgctxt "machine_buildplate_type option aluminum" msgid "Aluminum" -msgstr "Alluminio" +msgstr "Aluminium" #: /fdmprinter.def.json msgctxt "machine_heated_bed label" msgid "Has Heated Build Plate" -msgstr "Piano di stampa riscaldato" +msgstr "A un plateau chauffé" #: /fdmprinter.def.json msgctxt "machine_heated_bed description" msgid "Whether the machine has a heated build plate present." -msgstr "Indica se la macchina ha un piano di stampa riscaldato." +msgstr "Si la machine a un plateau chauffé présent." #: /fdmprinter.def.json msgctxt "machine_heated_build_volume label" msgid "Has Build Volume Temperature Stabilization" -msgstr "È dotato della stabilizzazione della temperatura del volume di stampa" +msgstr "Est dotée de la stabilisation de la température du volume d'impression" #: /fdmprinter.def.json msgctxt "machine_heated_build_volume description" msgid "Whether the machine is able to stabilize the build volume temperature." -msgstr "Se la macchina è in grado di stabilizzare la temperatura del volume di stampa." +msgstr "Si la machine est capable de stabiliser la température du volume d'impression." #: /fdmprinter.def.json msgctxt "machine_always_write_active_tool label" msgid "Always Write Active Tool" -msgstr "Tenere sempre nota dello strumento attivo" +msgstr "Toujours écrire l'outil actif" #: /fdmprinter.def.json msgctxt "machine_always_write_active_tool description" @@ -244,130 +241,130 @@ msgid "" "Write active tool after sending temp commands to inactive tool. Required for " "Dual Extruder printing with Smoothie or other firmware with modal tool " "commands." -msgstr "Tenere nota dello strumento attivo dopo l'invio di comandi temporanei allo strumento non attivo. Richiesto per la stampa con doppio estrusore con Smoothie" -" o altro firmware con comandi modali dello strumento." +msgstr "Écrivez l'outil actif après avoir envoyé des commandes temporaires à l'outil inactif. Requis pour l'impression à double extrusion avec Smoothie ou un autre" +" micrologiciel avec des commandes d'outils modaux." #: /fdmprinter.def.json msgctxt "machine_center_is_zero label" msgid "Is Center Origin" -msgstr "Origine del centro" +msgstr "Est l'origine du centre" #: /fdmprinter.def.json msgctxt "machine_center_is_zero description" msgid "" "Whether the X/Y coordinates of the zero position of the printer is at the " "center of the printable area." -msgstr "Indica se le coordinate X/Y della posizione zero della stampante sono al centro dell’area stampabile." +msgstr "Si les coordonnées X/Y de la position zéro de l'imprimante se situent au centre de la zone imprimable." #: /fdmprinter.def.json msgctxt "machine_extruder_count label" msgid "Number of Extruders" -msgstr "Numero di estrusori" +msgstr "Nombre d'extrudeuses" #: /fdmprinter.def.json msgctxt "machine_extruder_count description" msgid "" "Number of extruder trains. An extruder train is the combination of a feeder, " "bowden tube, and nozzle." -msgstr "Il numero di treni di estrusori. Un treno di estrusori è la combinazione di un alimentatore, un tubo bowden e un ugello." +msgstr "Nombre de trains d'extrudeuse. Un train d'extrudeuse est la combinaison d'un chargeur, d'un tube bowden et d'une buse." #: /fdmprinter.def.json msgctxt "extruders_enabled_count label" msgid "Number of Extruders That Are Enabled" -msgstr "Numero di estrusori abilitati" +msgstr "Nombre d'extrudeuses activées" #: /fdmprinter.def.json msgctxt "extruders_enabled_count description" msgid "" "Number of extruder trains that are enabled; automatically set in software" -msgstr "Numero di treni di estrusori abilitati; impostato automaticamente nel software" +msgstr "Nombre de trains d'extrusion activés ; automatiquement défini dans le logiciel" #: /fdmprinter.def.json msgctxt "machine_nozzle_tip_outer_diameter label" msgid "Outer Nozzle Diameter" -msgstr "Diametro esterno ugello" +msgstr "Diamètre extérieur de la buse" #: /fdmprinter.def.json msgctxt "machine_nozzle_tip_outer_diameter description" msgid "The outer diameter of the tip of the nozzle." -msgstr "Il diametro esterno della punta dell'ugello." +msgstr "Le diamètre extérieur de la pointe de la buse." #: /fdmprinter.def.json msgctxt "machine_nozzle_head_distance label" msgid "Nozzle Length" -msgstr "Lunghezza ugello" +msgstr "Longueur de la buse" #: /fdmprinter.def.json msgctxt "machine_nozzle_head_distance description" msgid "" "The height difference between the tip of the nozzle and the lowest part of " "the print head." -msgstr "La differenza di altezza tra la punta dell’ugello e la parte inferiore della testina di stampa." +msgstr "La différence de hauteur entre la pointe de la buse et la partie la plus basse de la tête d'impression." #: /fdmprinter.def.json msgctxt "machine_nozzle_expansion_angle label" msgid "Nozzle Angle" -msgstr "Angolo ugello" +msgstr "Angle de la buse" #: /fdmprinter.def.json msgctxt "machine_nozzle_expansion_angle description" msgid "" "The angle between the horizontal plane and the conical part right above the " "tip of the nozzle." -msgstr "L’angolo tra il piano orizzontale e la parte conica esattamente sopra la punta dell’ugello." +msgstr "L'angle entre le plan horizontal et la partie conique juste au-dessus de la pointe de la buse." #: /fdmprinter.def.json msgctxt "machine_heat_zone_length label" msgid "Heat Zone Length" -msgstr "Lunghezza della zona di riscaldamento" +msgstr "Longueur de la zone chauffée" #: /fdmprinter.def.json msgctxt "machine_heat_zone_length description" msgid "" "The distance from the tip of the nozzle in which heat from the nozzle is " "transferred to the filament." -msgstr "La distanza dalla punta dell’ugello in cui il calore dall’ugello viene trasferito al filamento." +msgstr "Distance depuis la pointe du bec d'impression sur laquelle la chaleur du bec d'impression est transférée au filament." #: /fdmprinter.def.json msgctxt "machine_nozzle_temp_enabled label" msgid "Enable Nozzle Temperature Control" -msgstr "Abilita controllo temperatura ugello" +msgstr "Permettre le contrôle de la température de la buse" #: /fdmprinter.def.json msgctxt "machine_nozzle_temp_enabled description" msgid "" "Whether to control temperature from Cura. Turn this off to control nozzle " "temperature from outside of Cura." -msgstr "Per controllare la temperatura da Cura. Disattivare per controllare la temperatura ugello dall’esterno di Cura." +msgstr "Contrôler ou non la température depuis Cura. Désactivez cette option pour contrôler la température de la buse depuis une source autre que Cura." #: /fdmprinter.def.json msgctxt "machine_nozzle_heat_up_speed label" msgid "Heat Up Speed" -msgstr "Velocità di riscaldamento" +msgstr "Vitesse de chauffage" #: /fdmprinter.def.json msgctxt "machine_nozzle_heat_up_speed description" msgid "" "The speed (°C/s) by which the nozzle heats up averaged over the window of " "normal printing temperatures and the standby temperature." -msgstr "La velocità (°C/s) alla quale l’ugello si riscalda calcolando la media sulla gamma di temperature di stampa normale e la temperatura di attesa." +msgstr "La vitesse (°C/s) à laquelle la buse chauffe, sur une moyenne de la plage de températures d'impression normales et la température en veille." #: /fdmprinter.def.json msgctxt "machine_nozzle_cool_down_speed label" msgid "Cool Down Speed" -msgstr "Velocità di raffreddamento" +msgstr "Vitesse de refroidissement" #: /fdmprinter.def.json msgctxt "machine_nozzle_cool_down_speed description" msgid "" "The speed (°C/s) by which the nozzle cools down averaged over the window of " "normal printing temperatures and the standby temperature." -msgstr "La velocità (°C/s) alla quale l’ugello si raffredda calcolando la media sulla gamma di temperature di stampa normale e la temperatura di attesa." +msgstr "La vitesse (°C/s) à laquelle la buse refroidit, sur une moyenne de la plage de températures d'impression normales et la température en veille." #: /fdmprinter.def.json msgctxt "machine_min_cool_heat_time_window label" msgid "Minimal Time Standby Temperature" -msgstr "Tempo minimo temperatura di standby" +msgstr "Durée minimale température de veille" #: /fdmprinter.def.json msgctxt "machine_min_cool_heat_time_window description" @@ -375,18 +372,18 @@ msgid "" "The minimal time an extruder has to be inactive before the nozzle is cooled. " "Only when an extruder is not used for longer than this time will it be " "allowed to cool down to the standby temperature." -msgstr "Il tempo minimo in cui un estrusore deve essere inattivo prima che l’ugello si raffreddi. Solo quando un estrusore non è utilizzato per un periodo superiore" -" a questo tempo potrà raffreddarsi alla temperatura di standby." +msgstr "La durée minimale pendant laquelle une extrudeuse doit être inactive avant que la buse ait refroidi. Ce n'est que si une extrudeuse n'est pas utilisée" +" pendant une durée supérieure à celle-ci qu'elle pourra refroidir jusqu'à la température de veille." #: /fdmprinter.def.json msgctxt "machine_gcode_flavor label" msgid "G-code Flavor" -msgstr "Versione codice G" +msgstr "Parfum G-Code" #: /fdmprinter.def.json msgctxt "machine_gcode_flavor description" msgid "The type of g-code to be generated." -msgstr "Il tipo di codice G da generare." +msgstr "Type de G-Code à générer." #: /fdmprinter.def.json msgctxt "machine_gcode_flavor option RepRap (Marlin/Sprinter)" @@ -396,7 +393,7 @@ msgstr "Marlin" #: /fdmprinter.def.json msgctxt "machine_gcode_flavor option RepRap (Volumetric)" msgid "Marlin (Volumetric)" -msgstr "Marlin (volumetrica)" +msgstr "Marlin (Volumétrique)" #: /fdmprinter.def.json msgctxt "machine_gcode_flavor option RepRap (RepRap)" @@ -436,31 +433,31 @@ msgstr "Repetier" #: /fdmprinter.def.json msgctxt "machine_firmware_retract label" msgid "Firmware Retraction" -msgstr "Retrazione firmware" +msgstr "Rétraction du firmware" #: /fdmprinter.def.json msgctxt "machine_firmware_retract description" msgid "" "Whether to use firmware retract commands (G10/G11) instead of using the E " "property in G1 commands to retract the material." -msgstr "Specifica se usare comandi di retrazione firmware (G10/G11) anziché utilizzare la proprietà E nei comandi G1 per retrarre il materiale." +msgstr "S'il faut utiliser les commandes de rétraction du firmware (G10 / G11) au lieu d'utiliser la propriété E dans les commandes G1 pour rétracter le matériau." #: /fdmprinter.def.json msgctxt "machine_extruders_share_heater label" msgid "Extruders Share Heater" -msgstr "Condivisione del riscaldatore da parte degli estrusori" +msgstr "Les extrudeurs partagent le chauffage" #: /fdmprinter.def.json msgctxt "machine_extruders_share_heater description" msgid "" "Whether the extruders share a single heater rather than each extruder having " "its own heater." -msgstr "Indica se gli estrusori condividono un singolo riscaldatore piuttosto che avere ognuno il proprio." +msgstr "Si les extrudeurs partagent un seul chauffage au lieu que chaque extrudeur ait son propre chauffage." #: /fdmprinter.def.json msgctxt "machine_extruders_share_nozzle label" msgid "Extruders Share Nozzle" -msgstr "Estrusori condividono ugello" +msgstr "Les extrudeuses partagent la buse" #: /fdmprinter.def.json msgctxt "machine_extruders_share_nozzle description" @@ -472,14 +469,14 @@ msgid "" "retracted); in that case the initial retraction status is described, per " "extruder, by the 'machine_extruders_shared_nozzle_initial_retraction' " "parameter." -msgstr "Indica se gli estrusori condividono un singolo ugello piuttosto che avere ognuno il proprio. Se impostato su true, si prevede che lo script gcode di avvio" -" della stampante imposti tutti gli estrusori su uno stato di retrazione iniziale noto e mutuamente compatibile (nessuno o un solo filamento non retratto);" -" in questo caso lo stato di retrazione iniziale è descritto, per estrusore, dal parametro 'machine_extruders_shared_nozzle_initial_retraction'." +msgstr "Lorsque les extrudeuses partagent une seule buse au lieu que chaque extrudeuse ait sa propre buse. Lorsqu'il est défini à true, le script gcode de démarrage" +" de l'imprimante doit configurer correctement toutes les extrudeuses dans un état de rétraction initial connu et mutuellement compatible (zéro ou un filament" +" non rétracté) ; dans ce cas, l'état de rétraction initial est décrit, par extrudeuse, par le paramètre 'machine_extruders_shared_nozzle_initial_retraction'." #: /fdmprinter.def.json msgctxt "machine_extruders_shared_nozzle_initial_retraction label" msgid "Shared Nozzle Initial Retraction" -msgstr "Retrazione iniziale ugello condivisa" +msgstr "Rétraction initiale de la buse partagée" #: /fdmprinter.def.json msgctxt "machine_extruders_shared_nozzle_initial_retraction description" @@ -488,33 +485,33 @@ msgid "" "from the shared nozzle tip at the completion of the printer-start gcode " "script; the value should be equal to or greater than the length of the " "common part of the nozzle's ducts." -msgstr "La quantità di filamento di ogni estrusore che si presume sia stata retratta dalla punta dell'ugello condiviso al termine dello script gcode di avvio stampante;" -" il valore deve essere uguale o maggiore della lunghezza della parte comune dei condotti dell'ugello." +msgstr "La quantité de filament de chaque extrudeuse qui est supposée avoir été rétractée de l'extrémité de la buse partagée à la fin du script gcode de démarrage" +" de l'imprimante ; la valeur doit être égale ou supérieure à la longueur de la partie commune des conduits de la buse." #: /fdmprinter.def.json msgctxt "machine_disallowed_areas label" msgid "Disallowed Areas" -msgstr "Aree non consentite" +msgstr "Zones interdites" #: /fdmprinter.def.json msgctxt "machine_disallowed_areas description" msgid "A list of polygons with areas the print head is not allowed to enter." -msgstr "Un elenco di poligoni con aree alle quali la testina di stampa non può accedere." +msgstr "Une liste de polygones comportant les zones dans lesquelles la tête d'impression n'a pas le droit de pénétrer." #: /fdmprinter.def.json msgctxt "nozzle_disallowed_areas label" msgid "Nozzle Disallowed Areas" -msgstr "Aree ugello non consentite" +msgstr "Zones interdites au bec d'impression" #: /fdmprinter.def.json msgctxt "nozzle_disallowed_areas description" msgid "A list of polygons with areas the nozzle is not allowed to enter." -msgstr "Un elenco di poligoni con aree alle quali l’ugello non può accedere." +msgstr "Une liste de polygones comportant les zones dans lesquelles le bec n'a pas le droit de pénétrer." #: /fdmprinter.def.json msgctxt "machine_head_with_fans_polygon label" msgid "Machine Head & Fan Polygon" -msgstr "Poligono testina macchina e ventola" +msgstr "Polygone de la tête de la machine et du ventilateur" #: /fdmprinter.def.json msgctxt "machine_head_with_fans_polygon description" @@ -522,354 +519,353 @@ msgid "" "The shape of the print head. These are coordinates relative to the position " "of the print head, which is usually the position of its first extruder. The " "dimensions left and in front of the print head must be negative coordinates." -msgstr "La forma della testina di stampa. Queste sono le coordinate relative alla posizione della testina di stampa. Questa coincide in genere con la posizione" -" del primo estrusore. Le posizioni a sinistra e davanti alla testina di stampa devono essere coordinate negative." +msgstr "La forme de la tête d'impression. Ce sont des coordonnées par rapport à la position de la tête d'impression, qui est généralement la position de son premier" +" extrudeur. Les dimensions à gauche et devant la tête d'impression doivent être des coordonnées négatives." #: /fdmprinter.def.json msgctxt "gantry_height label" msgid "Gantry Height" -msgstr "Altezza gantry" +msgstr "Hauteur du portique" #: /fdmprinter.def.json msgctxt "gantry_height description" msgid "" "The height difference between the tip of the nozzle and the gantry system (X " "and Y axes)." -msgstr "La differenza di altezza tra la punta dell’ugello e il sistema gantry (assy X e Y)." +msgstr "La différence de hauteur entre la pointe de la buse et le système de portique (axes X et Y)." #: /fdmprinter.def.json msgctxt "machine_nozzle_id label" msgid "Nozzle ID" -msgstr "ID ugello" +msgstr "ID buse" #: /fdmprinter.def.json msgctxt "machine_nozzle_id description" msgid "The nozzle ID for an extruder train, such as \"AA 0.4\" and \"BB 0.8\"." -msgstr "ID ugello per un treno estrusore, come \"AA 0.4\" e \"BB 0.8\"." +msgstr "ID buse pour un train d'extrudeuse, comme « AA 0.4 » et « BB 0.8 »." #: /fdmprinter.def.json msgctxt "machine_nozzle_size label" msgid "Nozzle Diameter" -msgstr "Diametro ugello" +msgstr "Diamètre de la buse" #: /fdmprinter.def.json msgctxt "machine_nozzle_size description" msgid "" "The inner diameter of the nozzle. Change this setting when using a non-" "standard nozzle size." -msgstr "Il diametro interno dell’ugello. Modificare questa impostazione quando si utilizza una dimensione ugello non standard." +msgstr "Le diamètre intérieur de la buse. Modifiez ce paramètre si vous utilisez une taille de buse non standard." #: /fdmprinter.def.json msgctxt "machine_use_extruder_offset_to_offset_coords label" msgid "Offset with Extruder" -msgstr "Offset con estrusore" +msgstr "Décalage avec extrudeuse" #: /fdmprinter.def.json msgctxt "machine_use_extruder_offset_to_offset_coords description" msgid "" "Apply the extruder offset to the coordinate system. Affects all extruders." -msgstr "Applica l’offset estrusore al sistema coordinate. Influisce su tutti gli estrusori." +msgstr "Appliquez le décalage de l'extrudeuse au système de coordonnées. Affecte toutes les extrudeuses." #: /fdmprinter.def.json msgctxt "extruder_prime_pos_z label" msgid "Extruder Prime Z Position" -msgstr "Posizione Z innesco estrusore" +msgstr "Extrudeuse Position d'amorçage Z" #: /fdmprinter.def.json msgctxt "extruder_prime_pos_z description" msgid "" "The Z coordinate of the position where the nozzle primes at the start of " "printing." -msgstr "Indica la coordinata Z della posizione in cui l’ugello si innesca all’avvio della stampa." +msgstr "Les coordonnées Z de la position à laquelle la buse s'amorce au début de l'impression." #: /fdmprinter.def.json msgctxt "extruder_prime_pos_abs label" msgid "Absolute Extruder Prime Position" -msgstr "Posizione assoluta di innesco estrusore" +msgstr "Position d'amorçage absolue de l'extrudeuse" #: /fdmprinter.def.json msgctxt "extruder_prime_pos_abs description" msgid "" "Make the extruder prime position absolute rather than relative to the last-" "known location of the head." -msgstr "Rende la posizione di innesco estrusore assoluta anziché relativa rispetto all’ultima posizione nota della testina." +msgstr "Rendre la position d'amorçage de l'extrudeuse absolue plutôt que relative à la dernière position connue de la tête." #: /fdmprinter.def.json msgctxt "machine_max_feedrate_x label" msgid "Maximum Speed X" -msgstr "Velocità massima X" +msgstr "Vitesse maximale X" #: /fdmprinter.def.json msgctxt "machine_max_feedrate_x description" msgid "The maximum speed for the motor of the X-direction." -msgstr "Indica la velocità massima del motore per la direzione X." +msgstr "La vitesse maximale pour le moteur du sens X." #: /fdmprinter.def.json msgctxt "machine_max_feedrate_y label" msgid "Maximum Speed Y" -msgstr "Velocità massima Y" +msgstr "Vitesse maximale Y" #: /fdmprinter.def.json msgctxt "machine_max_feedrate_y description" msgid "The maximum speed for the motor of the Y-direction." -msgstr "Indica la velocità massima del motore per la direzione Y." +msgstr "La vitesse maximale pour le moteur du sens Y." #: /fdmprinter.def.json msgctxt "machine_max_feedrate_z label" msgid "Maximum Speed Z" -msgstr "Velocità massima Z" +msgstr "Vitesse maximale Z" #: /fdmprinter.def.json msgctxt "machine_max_feedrate_z description" msgid "The maximum speed for the motor of the Z-direction." -msgstr "Indica la velocità massima del motore per la direzione Z." +msgstr "La vitesse maximale pour le moteur du sens Z." #: /fdmprinter.def.json msgctxt "machine_max_feedrate_e label" msgid "Maximum Speed E" -msgstr "Velocità massima E" +msgstr "Vitesse maximale E" #: /fdmprinter.def.json msgctxt "machine_max_feedrate_e description" msgid "The maximum speed of the filament." -msgstr "Indica la velocità massima del filamento." +msgstr "La vitesse maximale du filament." #: /fdmprinter.def.json msgctxt "machine_max_acceleration_x label" msgid "Maximum Acceleration X" -msgstr "Accelerazione massima X" +msgstr "Accélération maximale X" #: /fdmprinter.def.json msgctxt "machine_max_acceleration_x description" msgid "Maximum acceleration for the motor of the X-direction" -msgstr "Indica l’accelerazione massima del motore per la direzione X" +msgstr "Accélération maximale pour le moteur du sens X" #: /fdmprinter.def.json msgctxt "machine_max_acceleration_y label" msgid "Maximum Acceleration Y" -msgstr "Accelerazione massima Y" +msgstr "Accélération maximale Y" #: /fdmprinter.def.json msgctxt "machine_max_acceleration_y description" msgid "Maximum acceleration for the motor of the Y-direction." -msgstr "Indica l’accelerazione massima del motore per la direzione Y." +msgstr "Accélération maximale pour le moteur du sens Y." #: /fdmprinter.def.json msgctxt "machine_max_acceleration_z label" msgid "Maximum Acceleration Z" -msgstr "Accelerazione massima Z" +msgstr "Accélération maximale Z" #: /fdmprinter.def.json msgctxt "machine_max_acceleration_z description" msgid "Maximum acceleration for the motor of the Z-direction." -msgstr "Indica l’accelerazione massima del motore per la direzione Z." +msgstr "Accélération maximale pour le moteur du sens Z." #: /fdmprinter.def.json msgctxt "machine_max_acceleration_e label" msgid "Maximum Filament Acceleration" -msgstr "Accelerazione massima filamento" +msgstr "Accélération maximale du filament" #: /fdmprinter.def.json msgctxt "machine_max_acceleration_e description" msgid "Maximum acceleration for the motor of the filament." -msgstr "Indica l’accelerazione massima del motore del filamento." +msgstr "Accélération maximale pour le moteur du filament." #: /fdmprinter.def.json msgctxt "machine_acceleration label" msgid "Default Acceleration" -msgstr "Accelerazione predefinita" +msgstr "Accélération par défaut" #: /fdmprinter.def.json msgctxt "machine_acceleration description" msgid "The default acceleration of print head movement." -msgstr "Indica l’accelerazione predefinita del movimento della testina di stampa." +msgstr "L'accélération par défaut du mouvement de la tête d'impression." #: /fdmprinter.def.json msgctxt "machine_max_jerk_xy label" msgid "Default X-Y Jerk" -msgstr "Jerk X-Y predefinito" +msgstr "Saccade X-Y par défaut" #: /fdmprinter.def.json msgctxt "machine_max_jerk_xy description" msgid "Default jerk for movement in the horizontal plane." -msgstr "Indica il jerk predefinito per lo spostamento sul piano orizzontale." +msgstr "Saccade par défaut pour le mouvement sur le plan horizontal." #: /fdmprinter.def.json msgctxt "machine_max_jerk_z label" msgid "Default Z Jerk" -msgstr "Jerk Z predefinito" +msgstr "Saccade Z par défaut" #: /fdmprinter.def.json msgctxt "machine_max_jerk_z description" msgid "Default jerk for the motor of the Z-direction." -msgstr "Indica il jerk predefinito del motore per la direzione Z." +msgstr "Saccade par défaut pour le moteur du sens Z." #: /fdmprinter.def.json msgctxt "machine_max_jerk_e label" msgid "Default Filament Jerk" -msgstr "Jerk filamento predefinito" +msgstr "Saccade par défaut du filament" #: /fdmprinter.def.json msgctxt "machine_max_jerk_e description" msgid "Default jerk for the motor of the filament." -msgstr "Indica il jerk predefinito del motore del filamento." +msgstr "Saccade par défaut pour le moteur du filament." #: /fdmprinter.def.json msgctxt "machine_steps_per_mm_x label" msgid "Steps per Millimeter (X)" -msgstr "Passi per millimetro (X)" +msgstr "Pas par millimètre (X)" #: /fdmprinter.def.json msgctxt "machine_steps_per_mm_x description" msgid "" "How many steps of the stepper motor will result in one millimeter of " "movement in the X direction." -msgstr "I passi del motore passo-passo in un millimetro di spostamento nella direzione X." +msgstr "Nombre de pas du moteur pas à pas correspondant à un mouvement d'un millimètre dans la direction X." #: /fdmprinter.def.json msgctxt "machine_steps_per_mm_y label" msgid "Steps per Millimeter (Y)" -msgstr "Passi per millimetro (Y)" +msgstr "Pas par millimètre (Y)" #: /fdmprinter.def.json msgctxt "machine_steps_per_mm_y description" msgid "" "How many steps of the stepper motor will result in one millimeter of " "movement in the Y direction." -msgstr "I passi del motore passo-passo in un millimetro di spostamento nella direzione Y." +msgstr "Nombre de pas du moteur pas à pas correspondant à un mouvement d'un millimètre dans la direction Y." #: /fdmprinter.def.json msgctxt "machine_steps_per_mm_z label" msgid "Steps per Millimeter (Z)" -msgstr "Passi per millimetro (Z)" +msgstr "Pas par millimètre (Z)" #: /fdmprinter.def.json msgctxt "machine_steps_per_mm_z description" msgid "" "How many steps of the stepper motor will result in one millimeter of " "movement in the Z direction." -msgstr "I passi del motore passo-passo in un millimetro di spostamento nella direzione Z." +msgstr "Nombre de pas du moteur pas à pas correspondant à un mouvement d'un millimètre dans la direction Z." #: /fdmprinter.def.json msgctxt "machine_steps_per_mm_e label" msgid "Steps per Millimeter (E)" -msgstr "Passi per millimetro (E)" +msgstr "Pas par millimètre (E)" #: /fdmprinter.def.json msgctxt "machine_steps_per_mm_e description" msgid "" "How many steps of the stepper motors will result in moving the feeder wheel " "by one millimeter around its circumference." -msgstr "Quanti passi dei motori passo-passo causano lo spostamento della ruota del tirafilo di un millimetro attorno alla sua circonferenza." +msgstr "Nombre de pas des moteurs pas à pas correspondant au déplacement de la roue du chargeur d'un millimètre sur sa circonférence." #: /fdmprinter.def.json msgctxt "machine_endstop_positive_direction_x label" msgid "X Endstop in Positive Direction" -msgstr "Endstop X in direzione positiva" +msgstr "Butée X en sens positif" #: /fdmprinter.def.json msgctxt "machine_endstop_positive_direction_x description" msgid "" "Whether the endstop of the X axis is in the positive direction (high X " "coordinate) or negative (low X coordinate)." -msgstr "Se l’endstop dell’asse X è in direzione positiva (coordinata X alta) o negativa (coordinata X bassa)." +msgstr "Détermine si la butée de l'axe X est en sens positif (haute coordonnée X) ou négatif (basse coordonnée X)." #: /fdmprinter.def.json msgctxt "machine_endstop_positive_direction_y label" msgid "Y Endstop in Positive Direction" -msgstr "Endstop Y in direzione positiva" +msgstr "Butée Y en sens positif" #: /fdmprinter.def.json msgctxt "machine_endstop_positive_direction_y description" msgid "" "Whether the endstop of the Y axis is in the positive direction (high Y " "coordinate) or negative (low Y coordinate)." -msgstr "Se l’endstop dell’asse Y è in direzione positiva (coordinata Y alta) o negativa (coordinata Y bassa)." +msgstr "Détermine si la butée de l'axe Y est en sens positif (haute coordonnée Y) ou négatif (basse coordonnée Y)." #: /fdmprinter.def.json msgctxt "machine_endstop_positive_direction_z label" msgid "Z Endstop in Positive Direction" -msgstr "Endstop Z in direzione positiva" +msgstr "Butée Z en sens positif" #: /fdmprinter.def.json msgctxt "machine_endstop_positive_direction_z description" msgid "" "Whether the endstop of the Z axis is in the positive direction (high Z " "coordinate) or negative (low Z coordinate)." -msgstr "Se l’endstop dell’asse Z è in direzione positiva (coordinata Z alta) o negativa (coordinata Z bassa)." +msgstr "Détermine si la butée de l'axe Z est en sens positif (haute coordonnée Z) ou négatif (basse coordonnée Z)." #: /fdmprinter.def.json msgctxt "machine_minimum_feedrate label" msgid "Minimum Feedrate" -msgstr "Velocità di alimentazione minima" +msgstr "Taux d'alimentation minimal" #: /fdmprinter.def.json msgctxt "machine_minimum_feedrate description" msgid "The minimal movement speed of the print head." -msgstr "Indica la velocità di spostamento minima della testina di stampa." +msgstr "La vitesse minimale de mouvement de la tête d'impression." #: /fdmprinter.def.json msgctxt "machine_feeder_wheel_diameter label" msgid "Feeder Wheel Diameter" -msgstr "Diametro ruota del tirafilo" +msgstr "Diamètre de roue du chargeur" #: /fdmprinter.def.json msgctxt "machine_feeder_wheel_diameter description" msgid "The diameter of the wheel that drives the material in the feeder." -msgstr "Il diametro della ruota che guida il materiale nel tirafilo." +msgstr "Diamètre de la roue qui entraîne le matériau dans le chargeur." #: /fdmprinter.def.json msgctxt "machine_scale_fan_speed_zero_to_one label" msgid "Scale Fan Speed To 0-1" -msgstr "Scala la velocità della ventola a 0-1" +msgstr "Mise à l'échelle de la vitesse du ventilateur à 0-1" #: /fdmprinter.def.json msgctxt "machine_scale_fan_speed_zero_to_one description" msgid "Scale the fan speed to be between 0 and 1 instead of between 0 and 256." -msgstr "Scalare la velocità della ventola in modo che sia compresa tra 0 e 1 anziché tra 0 e 256." +msgstr "Mettez à l'échelle la vitesse du ventilateur de 0 à 1 au lieu de 0 à 256." #: /fdmprinter.def.json msgctxt "resolution label" msgid "Quality" -msgstr "Qualità" +msgstr "Qualité" #: /fdmprinter.def.json msgctxt "resolution description" msgid "" "All settings that influence the resolution of the print. These settings have " "a large impact on the quality (and print time)" -msgstr "Indica tutte le impostazioni che influiscono sulla risoluzione della stampa. Queste impostazioni hanno un elevato impatto sulla qualità (e il tempo di" -" stampa)" +msgstr "Tous les paramètres qui influent sur la résolution de l'impression. Ces paramètres ont un impact conséquent sur la qualité (et la durée d'impression)." #: /fdmprinter.def.json msgctxt "layer_height label" msgid "Layer Height" -msgstr "Altezza dello strato" +msgstr "Hauteur de la couche" #: /fdmprinter.def.json msgctxt "layer_height description" msgid "" "The height of each layer in mm. Higher values produce faster prints in lower " "resolution, lower values produce slower prints in higher resolution." -msgstr "Indica l’altezza di ciascuno strato in mm. Valori più elevati generano stampe più rapide con risoluzione inferiore, valori più bassi generano stampe più" -" lente con risoluzione superiore." +msgstr "La hauteur de chaque couche en mm. Des valeurs plus élevées créent des impressions plus rapides dans une résolution moindre, tandis que des valeurs plus" +" basses entraînent des impressions plus lentes dans une résolution plus élevée." #: /fdmprinter.def.json msgctxt "layer_height_0 label" msgid "Initial Layer Height" -msgstr "Altezza dello strato iniziale" +msgstr "Hauteur de la couche initiale" #: /fdmprinter.def.json msgctxt "layer_height_0 description" msgid "" "The height of the initial layer in mm. A thicker initial layer makes " "adhesion to the build plate easier." -msgstr "Indica l’altezza dello strato iniziale in mm. Uno strato iniziale più spesso facilita l’adesione al piano di stampa." +msgstr "La hauteur de la couche initiale en mm. Une couche initiale plus épaisse adhère plus facilement au plateau." #: /fdmprinter.def.json msgctxt "line_width label" msgid "Line Width" -msgstr "Larghezza della linea" +msgstr "Largeur de ligne" #: /fdmprinter.def.json msgctxt "line_width description" @@ -877,208 +873,208 @@ msgid "" "Width of a single line. Generally, the width of each line should correspond " "to the width of the nozzle. However, slightly reducing this value could " "produce better prints." -msgstr "Indica la larghezza di una linea singola. In generale, la larghezza di ciascuna linea deve corrispondere alla larghezza dell’ugello. Tuttavia, una lieve" -" riduzione di questo valore potrebbe generare stampe migliori." +msgstr "Largeur d'une ligne. Généralement, la largeur de chaque ligne doit correspondre à la largeur de la buse. Toutefois, le fait de diminuer légèrement cette" +" valeur peut fournir de meilleures impressions." #: /fdmprinter.def.json msgctxt "wall_line_width label" msgid "Wall Line Width" -msgstr "Larghezza delle linee perimetrali" +msgstr "Largeur de ligne de la paroi" #: /fdmprinter.def.json msgctxt "wall_line_width description" msgid "Width of a single wall line." -msgstr "Indica la larghezza di una singola linea perimetrale." +msgstr "Largeur d'une seule ligne de la paroi." #: /fdmprinter.def.json msgctxt "wall_line_width_0 label" msgid "Outer Wall Line Width" -msgstr "Larghezza delle linee della parete esterna" +msgstr "Largeur de ligne de la paroi externe" #: /fdmprinter.def.json msgctxt "wall_line_width_0 description" msgid "" "Width of the outermost wall line. By lowering this value, higher levels of " "detail can be printed." -msgstr "Indica la larghezza della linea della parete esterna. Riducendo questo valore, è possibile stampare livelli di dettaglio più elevati." +msgstr "Largeur de la ligne la plus à l'extérieur de la paroi. Le fait de réduire cette valeur permet d'imprimer des niveaux plus élevés de détails." #: /fdmprinter.def.json msgctxt "wall_line_width_x label" msgid "Inner Wall(s) Line Width" -msgstr "Larghezza delle linee della parete interna" +msgstr "Largeur de ligne de la (des) paroi(s) interne(s)" #: /fdmprinter.def.json msgctxt "wall_line_width_x description" msgid "" "Width of a single wall line for all wall lines except the outermost one." -msgstr "Indica la larghezza di una singola linea della parete per tutte le linee della parete tranne quella più esterna." +msgstr "Largeur d'une seule ligne de la paroi pour toutes les lignes de paroi, à l’exception de la ligne la plus externe." #: /fdmprinter.def.json msgctxt "skin_line_width label" msgid "Top/Bottom Line Width" -msgstr "Larghezza delle linee superiore/inferiore" +msgstr "Largeur de la ligne du dessus/dessous" #: /fdmprinter.def.json msgctxt "skin_line_width description" msgid "Width of a single top/bottom line." -msgstr "Indica la larghezza di una singola linea superiore/inferiore." +msgstr "Largeur d'une seule ligne du dessus/dessous." #: /fdmprinter.def.json msgctxt "infill_line_width label" msgid "Infill Line Width" -msgstr "Larghezza delle linee di riempimento" +msgstr "Largeur de ligne de remplissage" #: /fdmprinter.def.json msgctxt "infill_line_width description" msgid "Width of a single infill line." -msgstr "Indica la larghezza di una singola linea di riempimento." +msgstr "Largeur d'une seule ligne de remplissage." #: /fdmprinter.def.json msgctxt "skirt_brim_line_width label" msgid "Skirt/Brim Line Width" -msgstr "Larghezza delle linee dello skirt/brim" +msgstr "Largeur des lignes de jupe/bordure" #: /fdmprinter.def.json msgctxt "skirt_brim_line_width description" msgid "Width of a single skirt or brim line." -msgstr "Indica la larghezza di una singola linea dello skirt o del brim." +msgstr "Largeur d'une seule ligne de jupe ou de bordure." #: /fdmprinter.def.json msgctxt "support_line_width label" msgid "Support Line Width" -msgstr "Larghezza delle linee di supporto" +msgstr "Largeur de ligne de support" #: /fdmprinter.def.json msgctxt "support_line_width description" msgid "Width of a single support structure line." -msgstr "Indica la larghezza di una singola linea di supporto." +msgstr "Largeur d'une seule ligne de support." #: /fdmprinter.def.json msgctxt "support_interface_line_width label" msgid "Support Interface Line Width" -msgstr "Larghezza della linea dell’interfaccia di supporto" +msgstr "Largeur de ligne d'interface de support" #: /fdmprinter.def.json msgctxt "support_interface_line_width description" msgid "Width of a single line of support roof or floor." -msgstr "Indica la larghezza di una singola linea di supporto superiore o inferiore." +msgstr "Largeur d'une seule ligne de plafond ou de bas de support." #: /fdmprinter.def.json msgctxt "support_roof_line_width label" msgid "Support Roof Line Width" -msgstr "Larghezza delle linee di supporto superiori" +msgstr "Largeur de ligne de plafond de support" #: /fdmprinter.def.json msgctxt "support_roof_line_width description" msgid "Width of a single support roof line." -msgstr "Indica la larghezza di una singola linea di supporto superiore." +msgstr "Largeur d'une seule ligne de plafond de support." #: /fdmprinter.def.json msgctxt "support_bottom_line_width label" msgid "Support Floor Line Width" -msgstr "Larghezza della linea di supporto inferiore" +msgstr "Largeur de ligne de bas de support" #: /fdmprinter.def.json msgctxt "support_bottom_line_width description" msgid "Width of a single support floor line." -msgstr "Indica la larghezza di una singola linea di supporto inferiore." +msgstr "Largeur d'une seule ligne de bas de support." #: /fdmprinter.def.json msgctxt "prime_tower_line_width label" msgid "Prime Tower Line Width" -msgstr "Larghezza della linea della torre di innesco" +msgstr "Largeur de ligne de la tour d'amorçage" #: /fdmprinter.def.json msgctxt "prime_tower_line_width description" msgid "Width of a single prime tower line." -msgstr "Indica la larghezza di una singola linea della torre di innesco." +msgstr "Largeur d'une seule ligne de tour d'amorçage." #: /fdmprinter.def.json msgctxt "initial_layer_line_width_factor label" msgid "Initial Layer Line Width" -msgstr "Larghezza linea strato iniziale" +msgstr "Largeur de ligne couche initiale" #: /fdmprinter.def.json msgctxt "initial_layer_line_width_factor description" msgid "" "Multiplier of the line width on the first layer. Increasing this could " "improve bed adhesion." -msgstr "Moltiplicatore della larghezza della linea del primo strato Il suo aumento potrebbe migliorare l'adesione al piano." +msgstr "Multiplicateur de la largeur de la ligne sur la première couche. Augmenter le multiplicateur peut améliorer l'adhésion au plateau." #: /fdmprinter.def.json msgctxt "shell label" msgid "Walls" -msgstr "Pareti" +msgstr "Parois" #: /fdmprinter.def.json msgctxt "shell description" msgid "Shell" -msgstr "Guscio" +msgstr "Coque" #: /fdmprinter.def.json msgctxt "wall_extruder_nr label" msgid "Wall Extruder" -msgstr "Estrusore pareti" +msgstr "Extrudeuse de paroi" #: /fdmprinter.def.json msgctxt "wall_extruder_nr description" msgid "" "The extruder train used for printing the walls. This is used in multi-" "extrusion." -msgstr "Treno estrusore utilizzato per stampare le pareti. Si utilizza nell'estrusione multipla." +msgstr "Le train d'extrudeuse utilisé pour l'impression des parois. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "wall_0_extruder_nr label" msgid "Outer Wall Extruder" -msgstr "Estrusore parete esterna" +msgstr "Extrudeuse de paroi externe" #: /fdmprinter.def.json msgctxt "wall_0_extruder_nr description" msgid "" "The extruder train used for printing the outer wall. This is used in multi-" "extrusion." -msgstr "Treno estrusore utilizzato per stampare la parete esterna. Si utilizza nell'estrusione multipla." +msgstr "Le train d'extrudeuse utilisé pour l'impression des parois externes. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "wall_x_extruder_nr label" msgid "Inner Wall Extruder" -msgstr "Estrusore parete interna" +msgstr "Extrudeuse de paroi interne" #: /fdmprinter.def.json msgctxt "wall_x_extruder_nr description" msgid "" "The extruder train used for printing the inner walls. This is used in multi-" "extrusion." -msgstr "Treno estrusore utilizzato per stampare le pareti interne. Si utilizza nell'estrusione multipla." +msgstr "Le train d'extrudeuse utilisé pour l'impression des parois internes. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "wall_thickness label" msgid "Wall Thickness" -msgstr "Spessore delle pareti" +msgstr "Épaisseur de la paroi" #: /fdmprinter.def.json msgctxt "wall_thickness description" msgid "" "The thickness of the walls in the horizontal direction. This value divided " "by the wall line width defines the number of walls." -msgstr "Spessore delle pareti in direzione orizzontale. Questo valore diviso per la larghezza della linea della parete definisce il numero di pareti." +msgstr "Épaisseur des parois en sens horizontal. Cette valeur divisée par la largeur de la ligne de la paroi définit le nombre de parois." #: /fdmprinter.def.json msgctxt "wall_line_count label" msgid "Wall Line Count" -msgstr "Numero delle linee perimetrali" +msgstr "Nombre de lignes de la paroi" #: /fdmprinter.def.json msgctxt "wall_line_count description" msgid "" "The number of walls. When calculated by the wall thickness, this value is " "rounded to a whole number." -msgstr "Indica il numero delle pareti. Quando calcolato mediante lo spessore della parete, il valore viene arrotondato a numero intero." +msgstr "Le nombre de parois. Lorsqu'elle est calculée par l'épaisseur de la paroi, cette valeur est arrondie à un nombre entier." #: /fdmprinter.def.json msgctxt "wall_transition_length label" msgid "Wall Transition Length" -msgstr "Lunghezza transizione parete" +msgstr "Longueur de transition de la paroi" #: /fdmprinter.def.json msgctxt "wall_transition_length description" @@ -1086,26 +1082,26 @@ msgid "" "When transitioning between different numbers of walls as the part becomes " "thinner, a certain amount of space is allotted to split or join the wall " "lines." -msgstr "Quando si esegue la transizione tra numeri di parete diversi poiché la parte diventa più sottile, viene allocata una determinata quantità di spazio per" -" dividere o unire le linee perimetrali." +msgstr "Lorsque l'on passe d'un nombre de parois à un autre, au fur et à mesure que la pièce s'amincit, un certain espace est alloué pour diviser ou joindre les" +" lignes de parois." #: /fdmprinter.def.json msgctxt "wall_distribution_count label" msgid "Wall Distribution Count" -msgstr "Conteggio distribuzione parete" +msgstr "Nombre de distributions des parois" #: /fdmprinter.def.json msgctxt "wall_distribution_count description" msgid "" "The number of walls, counted from the center, over which the variation needs " "to be spread. Lower values mean that the outer walls don't change in width." -msgstr "Il numero di pareti, conteggiate dal centro, su cui occorre distribuire la variazione. Valori più bassi indicano che la larghezza delle pareti esterne" -" non cambia." +msgstr "Le nombre de parois, comptées à partir du centre, sur lesquelles la variation doit être répartie. Les valeurs inférieures signifient que les parois extérieures" +" ne changent pas en termes de largeur." #: /fdmprinter.def.json msgctxt "wall_transition_angle label" msgid "Wall Transitioning Threshold Angle" -msgstr "Angolo di soglia di transizione parete" +msgstr "Angle du seuil de transition de la paroi" #: /fdmprinter.def.json msgctxt "wall_transition_angle description" @@ -1115,14 +1111,14 @@ msgid "" "no walls will be printed in the center to fill the remaining space. Reducing " "this setting reduces the number and length of these center walls, but may " "leave gaps or overextrude." -msgstr "Quando creare transizioni tra numeri di parete pari e dispari. Una forma a cuneo con un angolo maggiore di questa impostazione non presenta transazioni" -" e nessuna parete verrà stampata al centro per riempire lo spazio rimanente. Riducendo questa impostazione si riduce il numero e la lunghezza di queste" -" pareti centrali, ma potrebbe lasciare spazi vuoti o sovraestrusione." +msgstr "Quand créer des transitions entre un nombre uniforme et impair de parois. Une forme de coin dont l'angle est supérieur à ce paramètre n'aura pas de transitions" +" et aucune paroi ne sera imprimée au centre pour remplir l'espace restant. En réduisant ce paramètre, on réduit le nombre et la longueur de ces parois" +" centrales, mais on risque de laisser des trous ou sur-extruder." #: /fdmprinter.def.json msgctxt "wall_transition_filter_distance label" msgid "Wall Transitioning Filter Distance" -msgstr "Distanza di filtro transizione parete" +msgstr "Distance du filtre de transition des parois" #: /fdmprinter.def.json msgctxt "wall_transition_filter_distance description" @@ -1130,13 +1126,13 @@ msgid "" "If it would be transitioning back and forth between different numbers of " "walls in quick succession, don't transition at all. Remove transitions if " "they are closer together than this distance." -msgstr "Se si pensa di eseguire la transizione avanti e indietro tra numeri di pareti differenti in rapida successione, non eseguire alcuna transizione. Rimuovere" -" le transizioni se sono più vicine di questa distanza." +msgstr "S'il s'agit d'une transition d'avant en arrière entre différents nombres de parois en succession rapide, ne faites pas du tout la transition. Supprimez" +" les transitions si elles sont plus proches les unes des autres que cette distance." #: /fdmprinter.def.json msgctxt "wall_transition_filter_deviation label" msgid "Wall Transitioning Filter Margin" -msgstr "Margine filtro di transizione parete" +msgstr "Marge du filtre de transition des parois" #: /fdmprinter.def.json msgctxt "wall_transition_filter_deviation description" @@ -1147,27 +1143,27 @@ msgid "" "margin reduces the number of transitions, which reduces the number of " "extrusion starts/stops and travel time. However, large line width variation " "can lead to under- or overextrusion problems." -msgstr "Impedisce la transizione avanti e indietro tra una parete aggiuntiva e una di meno. Questo margine estende l'intervallo di larghezze linea che segue a" -" [Larghezza minima della linea perimetrale - Margine, 2 * Larghezza minima della linea perimetrale + Margine]. Incrementando questo margine si riduce il" -" numero di transizioni, che riduce il numero di avvii/interruzioni estrusione e durata dello spostamento. Tuttavia, variazioni ampie della larghezza della" -" linea possono portare a problemi di sottoestrusione o sovraestrusione." +msgstr "Empêchez la transition d'avant en arrière entre une paroi supplémentaire et une paroi en moins. Cette marge étend la gamme des largeurs de ligne qui suivent" +" à [Largeur minimale de la ligne de paroi - marge, 2 * Largeur minimale de la ligne de paroi + marge]. L'augmentation de cette marge réduit le nombre de" +" transitions, ce qui réduit le nombre de démarrages/arrêts d'extrusion et le temps de trajet. Cependant, une grande variation de la largeur de la ligne" +" peut entraîner des problèmes de sous-extrusion ou de sur-extrusion." #: /fdmprinter.def.json msgctxt "wall_0_wipe_dist label" msgid "Outer Wall Wipe Distance" -msgstr "Distanza del riempimento parete esterna" +msgstr "Distance d'essuyage paroi extérieure" #: /fdmprinter.def.json msgctxt "wall_0_wipe_dist description" msgid "" "Distance of a travel move inserted after the outer wall, to hide the Z seam " "better." -msgstr "Distanza di spostamento inserita dopo la parete esterna per nascondere meglio la giunzione Z." +msgstr "Distance d'un déplacement inséré après la paroi extérieure, pour mieux masquer la jointure en Z." #: /fdmprinter.def.json msgctxt "wall_0_inset label" msgid "Outer Wall Inset" -msgstr "Inserto parete esterna" +msgstr "Insert de paroi externe" #: /fdmprinter.def.json msgctxt "wall_0_inset description" @@ -1176,13 +1172,13 @@ msgid "" "than the nozzle, and printed after the inner walls, use this offset to get " "the hole in the nozzle to overlap with the inner walls instead of the " "outside of the model." -msgstr "Inserto applicato al percorso della parete esterna. Se la parete esterna è di dimensioni inferiori all’ugello e stampata dopo le pareti interne, utilizzare" -" questo offset per fare in modo che il foro dell’ugello si sovrapponga alle pareti interne anziché all’esterno del modello." +msgstr "Insert appliqué sur le passage de la paroi externe. Si la paroi externe est plus petite que la buse et imprimée après les parois intérieures, utiliser" +" ce décalage pour que le trou dans la buse chevauche les parois internes et non l'extérieur du modèle." #: /fdmprinter.def.json msgctxt "optimize_wall_printing_order label" msgid "Optimize Wall Printing Order" -msgstr "Ottimizzazione sequenza di stampa pareti" +msgstr "Optimiser l'ordre d'impression des parois" #: /fdmprinter.def.json msgctxt "optimize_wall_printing_order description" @@ -1192,14 +1188,14 @@ msgid "" "being enabled but some may actually take longer so please compare the print " "time estimates with and without optimization. First layer is not optimized " "when choosing brim as build plate adhesion type." -msgstr "Ottimizzare la sequenza di stampa delle pareti in modo da ridurre il numero di retrazioni e la distanza percorsa. L'abilitazione di questa funzione porta" -" vantaggi per la maggior parte dei pezzi; alcuni possono richiedere un maggior tempo di esecuzione; si consiglia di confrontare i tempi di stampa stimati" -" con e senza ottimizzazione. Scegliendo la funzione brim come tipo di adesione del piano di stampa, il primo strato non viene ottimizzato." +msgstr "Optimiser l'ordre dans lequel des parois sont imprimées de manière à réduire le nombre de retraits et les distances parcourues. La plupart des pièces bénéficieront" +" de cette possibilité, mais certaines peuvent en fait prendre plus de temps à l'impression ; veuillez dès lors comparer les estimations de durée d'impression" +" avec et sans optimisation. La première couche n'est pas optimisée lorsque le type d'adhérence au plateau est défini sur bordure." #: /fdmprinter.def.json msgctxt "inset_direction label" msgid "Wall Ordering" -msgstr "Ordinamento parete" +msgstr "Ordre des parois" #: /fdmprinter.def.json msgctxt "inset_direction description" @@ -1209,36 +1205,36 @@ msgid "" "propagate to the outside. However printing them later allows them to stack " "better when overhangs are printed. When there is an uneven amount of total " "innner walls, the 'center last line' is always printed last." -msgstr "Determines the order in which walls are printed. Printing outer walls earlier helps with dimensional accuracy, as faults from inner walls cannot propagate" -" to the outside. However printing them later allows them to stack better when overhangs are printed. When there is an uneven amount of total innner walls," -" the 'center last line' is always printed last." +msgstr "Détermine l'ordre dans lequel les parois sont imprimées. L'impression des parois extérieures plus tôt permet une précision dimensionnelle car les défauts" +" des parois intérieures ne peuvent pas se propager à l'extérieur. Cependant, le fait de les imprimer plus tard leur permet de mieux s'empiler lorsque les" +" saillies sont imprimées. Lorsqu'il y a une quantité totale inégale de parois intérieures, la « dernière ligne centrale » est toujours imprimée en dernier." #: /fdmprinter.def.json msgctxt "inset_direction option inside_out" msgid "Inside To Outside" -msgstr "Dall'interno all'esterno" +msgstr "De l'intérieur vers l'extérieur" #: /fdmprinter.def.json msgctxt "inset_direction option outside_in" msgid "Outside To Inside" -msgstr "Dall'esterno all'interno" +msgstr "De l'extérieur vers l'intérieur" #: /fdmprinter.def.json msgctxt "alternate_extra_perimeter label" msgid "Alternate Extra Wall" -msgstr "Parete supplementare alternativa" +msgstr "Alterner les parois supplémentaires" #: /fdmprinter.def.json msgctxt "alternate_extra_perimeter description" msgid "" "Prints an extra wall at every other layer. This way infill gets caught " "between these extra walls, resulting in stronger prints." -msgstr "Stampa una parete supplementare ogni due strati. In questo modo il riempimento rimane catturato tra queste pareti supplementari, creando stampe più resistenti." +msgstr "Imprime une paroi supplémentaire une couche sur deux. Ainsi, le remplissage est pris entre ces parois supplémentaires pour créer des impressions plus solides." #: /fdmprinter.def.json msgctxt "min_wall_line_width label" msgid "Minimum Wall Line Width" -msgstr "Larghezza minima della linea perimetrale" +msgstr "Largeur minimale de la ligne de paroi" #: /fdmprinter.def.json msgctxt "min_wall_line_width description" @@ -1250,15 +1246,15 @@ msgid "" "transition from N to N+1 walls at some geometry thickness where the N walls " "are wide and the N+1 walls are narrow. The widest possible wall line is " "twice the Minimum Wall Line Width." -msgstr "Per strutture sottili, circa una o due volte la dimensione dell'ugello, le larghezze delle linee devono essere modificate per rispettare lo spessore del" -" modello. Questa impostazione controlla la larghezza minima della linea consentita per le pareti. Le larghezze minime delle linee determinano intrinsecamente" -" anche le larghezze massime delle linee, poiché si esegue la transizione da N a N+1 pareti ad uno spessore geometrico in cui le pareti N sono larghe e" -" le pareti N+1 sono strette. La linea perimetrale più larga possible è due volte la larghezza minima della linea perimetrale." +msgstr "Pour les structures fines dont la taille correspond à une ou deux fois celle de la buse, il faut modifier la largeur des lignes pour respecter l'épaisseur" +" du modèle. Ce paramètre contrôle la largeur de ligne minimale autorisée pour les parois. Les largeurs de lignes minimales déterminent également les largeurs" +" de lignes maximales, puisque nous passons de N à N+1 parois à une certaine épaisseur géométrique où les N parois sont larges et les N+1 parois sont étroites." +" La ligne de paroi la plus large possible est égale à deux fois la largeur minimale de la ligne de paroi." #: /fdmprinter.def.json msgctxt "min_even_wall_line_width label" msgid "Minimum Even Wall Line Width" -msgstr "Larghezza minima della linea perimetrale pari" +msgstr "Largeur minimale de la ligne de paroi uniforme" #: /fdmprinter.def.json msgctxt "min_even_wall_line_width description" @@ -1268,15 +1264,15 @@ msgid "" "printing two wall lines. A higher Minimum Even Wall Line Width leads to a " "higher maximum odd wall line width. The maximum even wall line width is " "calculated as Outer Wall Line Width + 0.5 * Minimum Odd Wall Line Width." -msgstr "La larghezza minima della linea per normali pareti poligonali. Questa impostazione determina lo spessore modello in corrispondenza del quale si passa dalla" -" stampa di una singola linea perimetrale sottile alla stampa di due linee perimetrali. Una larghezza minima della linea perimetrale pari più elevata porta" -" a una larghezza massima della linea perimetrale dispari più elevata. La larghezza massima della linea perimetrale pari viene calcolata come Larghezza" -" della linea perimetrale esterna + 0,5 * Larghezza minima della linea perimetrale dispari." +msgstr "Largeur de ligne minimale pour les murs polygonaux normaux. Ce paramètre détermine à quelle épaisseur de modèle nous passons de l'impression d'une seule" +" ligne de paroi fine à l'impression de deux lignes de paroi. Une largeur minimale de ligne de paroi paire plus élevée entraîne une largeur maximale de" +" ligne de paroi impaire plus élevée. La largeur maximale de la ligne de paroi paire est calculée comme suit : largeur de la ligne de paroi extérieure +" +" 0,5 * largeur minimale de la ligne de paroi impaire." #: /fdmprinter.def.json msgctxt "min_odd_wall_line_width label" msgid "Minimum Odd Wall Line Width" -msgstr "Larghezza minima della linea perimetrale dispari" +msgstr "Largeur minimale de la ligne de paroi impaire" #: /fdmprinter.def.json msgctxt "min_odd_wall_line_width description" @@ -1287,26 +1283,27 @@ msgid "" "A higher Minimum Odd Wall Line Width leads to a higher maximum even wall " "line width. The maximum odd wall line width is calculated as 2 * Minimum " "Even Wall Line Width." -msgstr "The minimum line width for middle line gap filler polyline walls. This setting determines at which model thickness we switch from printing two wall lines," -" to printing two outer walls and a single central wall in the middle. A higher Minimum Odd Wall Line Width leads to a higher maximum even wall line width." -" The maximum odd wall line width is calculated as 2 * Minimum Even Wall Line Width." +msgstr "Largeur de ligne minimale pour les parois de polyligne de remplissage de l'espace de ligne médiane. Ce paramètre détermine à partir de quelle épaisseur" +" de modèle nous passons de l'impression de deux lignes de parois à l'impression de deux parois extérieures et d'une seule paroi centrale au milieu. Une" +" largeur de ligne de paroi impaire minimale plus élevée conduit à une largeur de ligne de paroi uniforme plus élevée. La largeur maximale de la ligne de" +" paroi impaire est calculée comme 2 × largeur minimale de la ligne de paroi paire." #: /fdmprinter.def.json msgctxt "fill_outline_gaps label" msgid "Print Thin Walls" -msgstr "Stampa pareti sottili" +msgstr "Imprimer parois fines" #: /fdmprinter.def.json msgctxt "fill_outline_gaps description" msgid "" "Print pieces of the model which are horizontally thinner than the nozzle " "size." -msgstr "Stampa parti del modello orizzontalmente più sottili delle dimensioni dell'ugello." +msgstr "Imprimer les parties du modèle qui sont horizontalement plus fines que la taille de la buse." #: /fdmprinter.def.json msgctxt "min_feature_size label" msgid "Minimum Feature Size" -msgstr "Dimensioni minime della feature" +msgstr "Taille minimale des entités" #: /fdmprinter.def.json msgctxt "min_feature_size description" @@ -1314,13 +1311,13 @@ msgid "" "Minimum thickness of thin features. Model features that are thinner than " "this value will not be printed, while features thicker than the Minimum " "Feature Size will be widened to the Minimum Wall Line Width." -msgstr "Spessore minimo di feature sottili. Le feature modello che sono più sottili di questo valore non verranno stampate, mentre le feature più spesse delle" -" dimensioni minime della feature verranno ampliate fino alla larghezza minima della linea perimetrale." +msgstr "Épaisseur minimale des entités fines. Les entités de modèle qui sont plus fines que cette valeur ne seront pas imprimées, tandis que les entités plus épaisses" +" que la taille d'entité minimale seront élargies à la largeur minimale de la ligne de paroi." #: /fdmprinter.def.json msgctxt "min_bead_width label" msgid "Minimum Thin Wall Line Width" -msgstr "Larghezza minima della linea perimetrale sottile" +msgstr "Largeur minimale de la ligne de paroi fine" #: /fdmprinter.def.json msgctxt "min_bead_width description" @@ -1329,13 +1326,13 @@ msgid "" "Feature Size) of the model. If the Minimum Wall Line Width is thinner than " "the thickness of the feature, the wall will become as thick as the feature " "itself." -msgstr "Larghezza della parete che sostituirà feature sottili (in base alle dimensioni minime della feature) del modello. Se la larghezza minima della linea perimetrale" -" è più sottile dello spessore della feature, la parete diventerà spessa come la feature stessa." +msgstr "La largeur de la paroi qui remplacera les entités fines (selon la taille minimale des entités) du modèle. Si la largeur minimale de la ligne de paroi est" +" plus fine que l'épaisseur de l'entité, la paroi deviendra aussi épaisse que l'entité elle-même." #: /fdmprinter.def.json msgctxt "xy_offset label" msgid "Horizontal Expansion" -msgstr "Espansione orizzontale" +msgstr "Expansion horizontale" #: /fdmprinter.def.json msgctxt "xy_offset description" @@ -1343,13 +1340,13 @@ msgid "" "Amount of offset applied to all polygons in each layer. Positive values can " "compensate for too big holes; negative values can compensate for too small " "holes." -msgstr "Determina l'entità di offset (o estensione dello strato) applicata a tutti i poligoni su ciascuno strato. I valori positivi possono compensare fori troppo" -" estesi; i valori negativi possono compensare fori troppo piccoli." +msgstr "Le décalage appliqué à tous les polygones dans chaque couche. Une valeur positive peut compenser les trous trop gros ; une valeur négative peut compenser" +" les trous trop petits." #: /fdmprinter.def.json msgctxt "xy_offset_layer_0 label" msgid "Initial Layer Horizontal Expansion" -msgstr "Espansione orizzontale dello strato iniziale" +msgstr "Expansion horizontale de la couche initiale" #: /fdmprinter.def.json msgctxt "xy_offset_layer_0 description" @@ -1357,25 +1354,26 @@ msgid "" "Amount of offset applied to all polygons in the first layer. A negative " "value can compensate for squishing of the first layer known as \"elephant's " "foot\"." -msgstr "È l'entità di offset (estensione dello strato) applicata a tutti i poligoni di supporto in ciascuno strato. Un valore negativo può compensare lo schiacciamento" -" del primo strato noto come \"zampa di elefante\"." +msgstr "Le décalage appliqué à tous les polygones dans la première couche. Une valeur négative peut compenser l'écrasement de la première couche, appelé « patte" +" d'éléphant »." #: /fdmprinter.def.json msgctxt "hole_xy_offset label" msgid "Hole Horizontal Expansion" -msgstr "Espansione orizzontale dei fori" +msgstr "Expansion horizontale des trous" #: /fdmprinter.def.json msgctxt "hole_xy_offset description" msgid "" "Amount of offset applied to all holes in each layer. Positive values " "increase the size of the holes, negative values reduce the size of the holes." -msgstr "Entità di offset applicato a tutti i fori di ciascuno strato. Valori positivi aumentano le dimensioni dei fori, mentre valori negativi le riducono." +msgstr "Le décalage appliqué à tous les trous dans chaque couche. Les valeurs positives augmentent la taille des trous ; les valeurs négatives réduisent la taille" +" des trous." #: /fdmprinter.def.json msgctxt "z_seam_type label" msgid "Z Seam Alignment" -msgstr "Allineamento delle giunzioni a Z" +msgstr "Alignement de la jointure en Z" #: /fdmprinter.def.json msgctxt "z_seam_type description" @@ -1385,109 +1383,109 @@ msgid "" "these near a user specified location, the seam is easiest to remove. When " "placed randomly the inaccuracies at the paths' start will be less " "noticeable. When taking the shortest path the print will be quicker." -msgstr "Punto di partenza di ogni percorso nell'ambito di uno strato. Quando i percorsi in strati consecutivi iniziano nello stesso punto, sulla stampa può apparire" -" una linea di giunzione verticale. Se si allineano in prossimità di una posizione specificata dall’utente, la linea di giunzione può essere rimossa più" -" facilmente. Se disposti in modo casuale, le imprecisioni in corrispondenza dell'inizio del percorso saranno meno evidenti. Prendendo il percorso più breve" -" la stampa sarà più veloce." +msgstr "Point de départ de chaque voie dans une couche. Quand les voies dans les couches consécutives démarrent au même endroit, une jointure verticale peut apparaître" +" sur l'impression. En alignant les points de départ près d'un emplacement défini par l'utilisateur, la jointure sera plus facile à faire disparaître. Lorsqu'elles" +" sont disposées de manière aléatoire, les imprécisions de départ des voies seront moins visibles. En choisissant la voie la plus courte, l'impression se" +" fera plus rapidement." #: /fdmprinter.def.json msgctxt "z_seam_type option back" msgid "User Specified" -msgstr "Specificato dall’utente" +msgstr "Utilisateur spécifié" #: /fdmprinter.def.json msgctxt "z_seam_type option shortest" msgid "Shortest" -msgstr "Il più breve" +msgstr "Plus court" #: /fdmprinter.def.json msgctxt "z_seam_type option random" msgid "Random" -msgstr "Casuale" +msgstr "Aléatoire" #: /fdmprinter.def.json msgctxt "z_seam_type option sharpest_corner" msgid "Sharpest Corner" -msgstr "Angolo più acuto" +msgstr "Angle le plus aigu" #: /fdmprinter.def.json msgctxt "z_seam_position label" msgid "Z Seam Position" -msgstr "Posizione della cucitura in Z" +msgstr "Position de la jointure en Z" #: /fdmprinter.def.json msgctxt "z_seam_position description" msgid "The position near where to start printing each part in a layer." -msgstr "La posizione accanto al punto in cui avviare la stampa di ciascuna parte in uno layer." +msgstr "La position près de laquelle démarre l'impression de chaque partie dans une couche." #: /fdmprinter.def.json msgctxt "z_seam_position option backleft" msgid "Back Left" -msgstr "Indietro a sinistra" +msgstr "Arrière gauche" #: /fdmprinter.def.json msgctxt "z_seam_position option back" msgid "Back" -msgstr "Indietro" +msgstr "Précédent" #: /fdmprinter.def.json msgctxt "z_seam_position option backright" msgid "Back Right" -msgstr "Indietro a destra" +msgstr "Arrière droit" #: /fdmprinter.def.json msgctxt "z_seam_position option right" msgid "Right" -msgstr "Destra" +msgstr "Droite" #: /fdmprinter.def.json msgctxt "z_seam_position option frontright" msgid "Front Right" -msgstr "Avanti a destra" +msgstr "Avant droit" #: /fdmprinter.def.json msgctxt "z_seam_position option front" msgid "Front" -msgstr "Avanti" +msgstr "Avant" #: /fdmprinter.def.json msgctxt "z_seam_position option frontleft" msgid "Front Left" -msgstr "Avanti a sinistra" +msgstr "Avant gauche" #: /fdmprinter.def.json msgctxt "z_seam_position option left" msgid "Left" -msgstr "Sinistra" +msgstr "Gauche" #: /fdmprinter.def.json msgctxt "z_seam_x label" msgid "Z Seam X" -msgstr "Giunzione Z X" +msgstr "X Jointure en Z" #: /fdmprinter.def.json msgctxt "z_seam_x description" msgid "" "The X coordinate of the position near where to start printing each part in a " "layer." -msgstr "La coordinata X della posizione in prossimità della quale si innesca all’avvio della stampa di ciascuna parte in uno strato." +msgstr "Coordonnée X de la position près de laquelle démarrer l'impression de chaque partie dans une couche." #: /fdmprinter.def.json msgctxt "z_seam_y label" msgid "Z Seam Y" -msgstr "Giunzione Z Y" +msgstr "Y Jointure en Z" #: /fdmprinter.def.json msgctxt "z_seam_y description" msgid "" "The Y coordinate of the position near where to start printing each part in a " "layer." -msgstr "La coordinata Y della posizione in prossimità della quale si innesca all’avvio della stampa di ciascuna parte in uno strato." +msgstr "Coordonnée Y de la position près de laquelle démarrer l'impression de chaque partie dans une couche." #: /fdmprinter.def.json msgctxt "z_seam_corner label" msgid "Seam Corner Preference" -msgstr "Preferenze angolo giunzione" +msgstr "Préférence de jointure d'angle" #: /fdmprinter.def.json msgctxt "z_seam_corner description" @@ -1499,40 +1497,40 @@ msgid "" "Seam makes the seam more likely to occur at an inside or outside corner. " "Smart Hiding allows both inside and outside corners, but chooses inside " "corners more frequently, if appropriate." -msgstr "Controlla se gli angoli sul profilo del modello influenzano la posizione della giunzione. Nessuno significa che gli angoli non hanno alcuna influenza sulla" -" posizione della giunzione. Nascondi giunzione favorisce la presenza della giunzione su un angolo interno. Esponi giunzione favorisce la presenza della" -" giunzione su un angolo esterno. Nascondi o esponi giunzione favorisce la presenza della giunzione su un angolo interno o esterno. Smart Hiding consente" -" sia gli angoli interni che quelli esterni ma sceglie con maggiore frequenza gli angoli interni, se opportuno." +msgstr "Vérifie si les angles du contour du modèle influencent l'emplacement de la jointure. « Aucune » signifie que les angles n'ont aucune influence sur l'emplacement" +" de la jointure. « Masquer la jointure » génère le positionnement de la jointure sur un angle intérieur. « Exposer la jointure » génère le positionnement" +" de la jointure sur un angle extérieur. « Masquer ou exposer la jointure » génère le positionnement de la jointure sur un angle intérieur ou extérieur." +" « Jointure intelligente » autorise les angles intérieurs et extérieurs, mais choisit plus fréquemment les angles intérieurs, le cas échéant." #: /fdmprinter.def.json msgctxt "z_seam_corner option z_seam_corner_none" msgid "None" -msgstr "Nessuno" +msgstr "Aucun" #: /fdmprinter.def.json msgctxt "z_seam_corner option z_seam_corner_inner" msgid "Hide Seam" -msgstr "Nascondi giunzione" +msgstr "Masquer jointure" #: /fdmprinter.def.json msgctxt "z_seam_corner option z_seam_corner_outer" msgid "Expose Seam" -msgstr "Esponi giunzione" +msgstr "Exposer jointure" #: /fdmprinter.def.json msgctxt "z_seam_corner option z_seam_corner_any" msgid "Hide or Expose Seam" -msgstr "Nascondi o esponi giunzione" +msgstr "Masquer ou exposer jointure" #: /fdmprinter.def.json msgctxt "z_seam_corner option z_seam_corner_weighted" msgid "Smart Hiding" -msgstr "Occultamento intelligente" +msgstr "Masquage intelligent" #: /fdmprinter.def.json msgctxt "z_seam_relative label" msgid "Z Seam Relative" -msgstr "Riferimento giunzione Z" +msgstr "Relatif à la jointure en Z" #: /fdmprinter.def.json msgctxt "z_seam_relative description" @@ -1540,72 +1538,72 @@ msgid "" "When enabled, the z seam coordinates are relative to each part's centre. " "When disabled, the coordinates define an absolute position on the build " "plate." -msgstr "Se abilitato, le coordinate della giunzione Z sono riferite al centro di ogni parte. Se disabilitato, le coordinate definiscono una posizione assoluta" -" sul piano di stampa." +msgstr "Si cette option est activée, les coordonnées de la jointure z sont relatives au centre de chaque partie. Si elle est désactivée, les coordonnées définissent" +" une position absolue sur le plateau." #: /fdmprinter.def.json msgctxt "top_bottom label" msgid "Top/Bottom" -msgstr "Superiore / Inferiore" +msgstr "Haut / bas" #: /fdmprinter.def.json msgctxt "top_bottom description" msgid "Top/Bottom" -msgstr "Superiore / Inferiore" +msgstr "Haut / bas" #: /fdmprinter.def.json msgctxt "roofing_extruder_nr label" msgid "Top Surface Skin Extruder" -msgstr "Estrusore rivestimento superficie superiore" +msgstr "Extrudeuse de couche extérieure de la surface supérieure" #: /fdmprinter.def.json msgctxt "roofing_extruder_nr description" msgid "" "The extruder train used for printing the top most skin. This is used in " "multi-extrusion." -msgstr "Treno estrusore utilizzato per stampare il rivestimento più in alto. Si utilizza nell'estrusione multipla." +msgstr "Le train d'extrudeuse utilisé pour l'impression de la couche extérieure supérieure. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "roofing_layer_count label" msgid "Top Surface Skin Layers" -msgstr "Strati di rivestimento superficie superiore" +msgstr "Couches extérieures de la surface supérieure" #: /fdmprinter.def.json msgctxt "roofing_layer_count description" msgid "" "The number of top most skin layers. Usually only one top most layer is " "sufficient to generate higher quality top surfaces." -msgstr "Numero degli strati di rivestimento superiori. Solitamente è sufficiente un unico strato di sommità per ottenere superfici superiori di qualità elevata." +msgstr "Nombre de couches extérieures supérieures. En général, une seule couche supérieure est suffisante pour générer des surfaces supérieures de qualité." #: /fdmprinter.def.json msgctxt "roofing_line_width label" msgid "Top Surface Skin Line Width" -msgstr "Larghezza linea rivestimento superficie superiore" +msgstr "Largeur de ligne de couche extérieure de la surface supérieure" #: /fdmprinter.def.json msgctxt "roofing_line_width description" msgid "Width of a single line of the areas at the top of the print." -msgstr "Larghezza di un singola linea delle aree nella parte superiore della stampa." +msgstr "Largeur d'une seule ligne de la zone en haut de l'impression." #: /fdmprinter.def.json msgctxt "roofing_pattern label" msgid "Top Surface Skin Pattern" -msgstr "Configurazione del rivestimento superficie superiore" +msgstr "Motif de couche extérieure de surface supérieure" #: /fdmprinter.def.json msgctxt "roofing_pattern description" msgid "The pattern of the top most layers." -msgstr "Configurazione degli strati superiori." +msgstr "Le motif des couches supérieures." #: /fdmprinter.def.json msgctxt "roofing_pattern option lines" msgid "Lines" -msgstr "Linee" +msgstr "Lignes" #: /fdmprinter.def.json msgctxt "roofing_pattern option concentric" msgid "Concentric" -msgstr "Concentrica" +msgstr "Concentrique" #: /fdmprinter.def.json msgctxt "roofing_pattern option zigzag" @@ -1615,7 +1613,7 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "roofing_monotonic label" msgid "Monotonic Top Surface Order" -msgstr "Ordine superficie superiore monotonico" +msgstr "Ordre monotone de la surface supérieure" #: /fdmprinter.def.json msgctxt "roofing_monotonic description" @@ -1623,13 +1621,13 @@ msgid "" "Print top surface lines in an ordering that causes them to always overlap " "with adjacent lines in a single direction. This takes slightly more time to " "print, but makes flat surfaces look more consistent." -msgstr "Stampa linee superficie superiori in un ordine che ne causa sempre la sovrapposizione con le linee adiacenti in un singola direzione. Questa operazione" -" richiede un tempo di stampa leggermente superiore ma rende l'aspetto delle superfici piane più uniforme." +msgstr "Imprimez les lignes de la surface supérieure dans un ordre tel qu'elles se chevauchent toujours avec les lignes adjacentes dans une seule direction. Cela" +" prend un peu plus de temps à imprimer, mais les surfaces planes ont l'air plus cohérentes." #: /fdmprinter.def.json msgctxt "roofing_angles label" msgid "Top Surface Skin Line Directions" -msgstr "Direzioni linea rivestimento superficie superiore" +msgstr "Sens de lignes de couche extérieure de surface supérieure" #: /fdmprinter.def.json msgctxt "roofing_angles description" @@ -1640,115 +1638,115 @@ msgid "" "it starts at the beginning again. The list items are separated by commas and " "the whole list is contained in square brackets. Default is an empty list " "which means use the traditional default angles (45 and 135 degrees)." -msgstr "Un elenco di direzioni linee intere da usare quando gli strati rivestimento superficie superiore utilizzano le linee o la configurazione zig zag. Gli elementi" -" dall’elenco sono utilizzati in sequenza con il progredire degli strati e, al raggiungimento della fine dell’elenco, la sequenza ricomincia dall’inizio." -" Le voci elencate sono separate da virgole e l’intero elenco è racchiuso tra parentesi quadre. L’elenco predefinito è vuoto, vale a dire che utilizza i" -" valori angolari predefiniti (45 e 135 gradi)." +msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser lorsque les couches extérieures de la surface supérieure utilisent le motif en lignes" +" ou en zig zag. Les éléments de la liste sont utilisés de manière séquentielle à mesure de l'avancement des couches. La liste reprend depuis le début lorsque" +" la fin est atteinte. Les éléments de la liste sont séparés par des virgules et la liste entière est encadrée entre crochets. La valeur par défaut est" +" une liste vide, ce qui signifie que les angles traditionnels par défaut seront utilisés (45 et 135 degrés)." #: /fdmprinter.def.json msgctxt "top_bottom_extruder_nr label" msgid "Top/Bottom Extruder" -msgstr "Estrusore superiore/inferiore" +msgstr "Extrudeuse du dessus/dessous" #: /fdmprinter.def.json msgctxt "top_bottom_extruder_nr description" msgid "" "The extruder train used for printing the top and bottom skin. This is used " "in multi-extrusion." -msgstr "Treno estrusore utilizzato per stampare il rivestimento superiore e quello inferiore. Si utilizza nell'estrusione multipla." +msgstr "Le train d'extrudeuse utilisé pour l'impression de la couche extérieure du haut et du bas. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "top_bottom_thickness label" msgid "Top/Bottom Thickness" -msgstr "Spessore dello strato superiore/inferiore" +msgstr "Épaisseur du dessus/dessous" #: /fdmprinter.def.json msgctxt "top_bottom_thickness description" msgid "" "The thickness of the top/bottom layers in the print. This value divided by " "the layer height defines the number of top/bottom layers." -msgstr "Indica lo spessore degli strati superiore/inferiore nella stampa. Questo valore diviso per la l’altezza dello strato definisce il numero degli strati superiori/inferiori." +msgstr "L’épaisseur des couches du dessus/dessous dans l'impression. Cette valeur divisée par la hauteur de la couche définit le nombre de couches du dessus/dessous." #: /fdmprinter.def.json msgctxt "top_thickness label" msgid "Top Thickness" -msgstr "Spessore dello strato superiore" +msgstr "Épaisseur du dessus" #: /fdmprinter.def.json msgctxt "top_thickness description" msgid "" "The thickness of the top layers in the print. This value divided by the " "layer height defines the number of top layers." -msgstr "Indica lo spessore degli strati superiori nella stampa. Questo valore diviso per la l’altezza dello strato definisce il numero degli strati superiori." +msgstr "L’épaisseur des couches du dessus dans l'impression. Cette valeur divisée par la hauteur de la couche définit le nombre de couches du dessus." #: /fdmprinter.def.json msgctxt "top_layers label" msgid "Top Layers" -msgstr "Strati superiori" +msgstr "Couches supérieures" #: /fdmprinter.def.json msgctxt "top_layers description" msgid "" "The number of top layers. When calculated by the top thickness, this value " "is rounded to a whole number." -msgstr "Indica il numero degli strati superiori. Quando calcolato mediante lo spessore dello strato superiore, il valore viene arrotondato a numero intero." +msgstr "Le nombre de couches supérieures. Lorsqu'elle est calculée par l'épaisseur du dessus, cette valeur est arrondie à un nombre entier." #: /fdmprinter.def.json msgctxt "bottom_thickness label" msgid "Bottom Thickness" -msgstr "Spessore degli strati inferiori" +msgstr "Épaisseur du dessous" #: /fdmprinter.def.json msgctxt "bottom_thickness description" msgid "" "The thickness of the bottom layers in the print. This value divided by the " "layer height defines the number of bottom layers." -msgstr "Indica lo spessore degli strati inferiori nella stampa. Questo valore diviso per la l’altezza dello strato definisce il numero degli strati inferiori." +msgstr "L’épaisseur des couches du dessous dans l'impression. Cette valeur divisée par la hauteur de la couche définit le nombre de couches du dessous." #: /fdmprinter.def.json msgctxt "bottom_layers label" msgid "Bottom Layers" -msgstr "Strati inferiori" +msgstr "Couches inférieures" #: /fdmprinter.def.json msgctxt "bottom_layers description" msgid "" "The number of bottom layers. When calculated by the bottom thickness, this " "value is rounded to a whole number." -msgstr "Indica il numero degli strati inferiori. Quando calcolato mediante lo spessore dello strato inferiore, il valore viene arrotondato a numero intero." +msgstr "Le nombre de couches inférieures. Lorsqu'elle est calculée par l'épaisseur du dessous, cette valeur est arrondie à un nombre entier." #: /fdmprinter.def.json msgctxt "initial_bottom_layers label" msgid "Initial Bottom Layers" -msgstr "Layer inferiori iniziali" +msgstr "Couches inférieures initiales" #: /fdmprinter.def.json msgctxt "initial_bottom_layers description" msgid "" "The number of initial bottom layers, from the build-plate upwards. When " "calculated by the bottom thickness, this value is rounded to a whole number." -msgstr "Il numero di layer inferiori iniziali, dal piano di stampa verso l'alto. Quando viene calcolato mediante lo spessore inferiore, questo valore viene arrotondato" -" a un numero intero." +msgstr "Le nombre de couches inférieures initiales à partir du haut du plateau. Lorsqu'elle est calculée par l'épaisseur du dessous, cette valeur est arrondie" +" à un nombre entier." #: /fdmprinter.def.json msgctxt "top_bottom_pattern label" msgid "Top/Bottom Pattern" -msgstr "Configurazione dello strato superiore/inferiore" +msgstr "Motif du dessus/dessous" #: /fdmprinter.def.json msgctxt "top_bottom_pattern description" msgid "The pattern of the top/bottom layers." -msgstr "Indica la configurazione degli strati superiori/inferiori." +msgstr "Le motif des couches du dessus/dessous." #: /fdmprinter.def.json msgctxt "top_bottom_pattern option lines" msgid "Lines" -msgstr "Linee" +msgstr "Lignes" #: /fdmprinter.def.json msgctxt "top_bottom_pattern option concentric" msgid "Concentric" -msgstr "Concentriche" +msgstr "Concentrique" #: /fdmprinter.def.json msgctxt "top_bottom_pattern option zigzag" @@ -1758,22 +1756,22 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "top_bottom_pattern_0 label" msgid "Bottom Pattern Initial Layer" -msgstr "Strato iniziale configurazione inferiore" +msgstr "Couche initiale du motif du dessous" #: /fdmprinter.def.json msgctxt "top_bottom_pattern_0 description" msgid "The pattern on the bottom of the print on the first layer." -msgstr "La configurazione al fondo della stampa sul primo strato." +msgstr "Motif au bas de l'impression sur la première couche." #: /fdmprinter.def.json msgctxt "top_bottom_pattern_0 option lines" msgid "Lines" -msgstr "Linee" +msgstr "Lignes" #: /fdmprinter.def.json msgctxt "top_bottom_pattern_0 option concentric" msgid "Concentric" -msgstr "Concentriche" +msgstr "Concentrique" #: /fdmprinter.def.json msgctxt "top_bottom_pattern_0 option zigzag" @@ -1783,7 +1781,7 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "connect_skin_polygons label" msgid "Connect Top/Bottom Polygons" -msgstr "Collega poligoni superiori/inferiori" +msgstr "Relier les polygones supérieurs / inférieurs" #: /fdmprinter.def.json msgctxt "connect_skin_polygons description" @@ -1792,14 +1790,14 @@ msgid "" "concentric pattern enabling this setting greatly reduces the travel time, " "but because the connections can happen midway over infill this feature can " "reduce the top surface quality." -msgstr "Collega i percorsi del rivestimento esterno superiore/inferiore quando corrono uno accanto all’altro. Per le configurazioni concentriche, l’abilitazione" -" di questa impostazione riduce notevolmente il tempo di spostamento, tuttavia poiché i collegamenti possono aver luogo a metà del riempimento, con questa" -" funzione la qualità della superficie superiore potrebbe risultare inferiore." +msgstr "Relier les voies de couche extérieure supérieures / inférieures lorsqu'elles sont côte à côte. Pour le motif concentrique, ce paramètre réduit considérablement" +" le temps de parcours, mais comme les liens peuvent se trouver à mi-chemin sur le remplissage, cette fonctionnalité peut réduire la qualité de la surface" +" supérieure." #: /fdmprinter.def.json msgctxt "skin_monotonic label" msgid "Monotonic Top/Bottom Order" -msgstr "Ordine superiore/inferiore monotonico" +msgstr "Ordre monotone dessus / dessous" #: /fdmprinter.def.json msgctxt "skin_monotonic description" @@ -1807,13 +1805,13 @@ msgid "" "Print top/bottom lines in an ordering that causes them to always overlap " "with adjacent lines in a single direction. This takes slightly more time to " "print, but makes flat surfaces look more consistent." -msgstr "Stampa linee superiori/inferiori in un ordine che ne causa sempre la sovrapposizione con le linee adiacenti in un singola direzione. Questa operazione" -" richiede un tempo di stampa leggermente superiore ma rende l'aspetto delle superfici piane più uniforme." +msgstr "Imprimez les lignes supérieures et inférieures dans un ordre tel qu'elles se chevauchent toujours avec les lignes adjacentes dans une seule direction." +" Cela prend un peu plus de temps à imprimer, mais les surfaces planes ont l'air plus cohérentes." #: /fdmprinter.def.json msgctxt "skin_angles label" msgid "Top/Bottom Line Directions" -msgstr "Direzioni delle linee superiori/inferiori" +msgstr "Sens de la ligne du dessus / dessous" #: /fdmprinter.def.json msgctxt "skin_angles description" @@ -1824,15 +1822,15 @@ msgid "" "the beginning again. The list items are separated by commas and the whole " "list is contained in square brackets. Default is an empty list which means " "use the traditional default angles (45 and 135 degrees)." -msgstr "Un elenco di direzioni linee intere da usare quando gli strati superiori/inferiori utilizzano le linee o la configurazione zig zag. Gli elementi dall’elenco" -" sono utilizzati in sequenza con il progredire degli strati e, al raggiungimento della fine dell’elenco, la sequenza ricomincia dall’inizio. Le voci elencate" -" sono separate da virgole e l’intero elenco è racchiuso tra parentesi quadre. L’elenco predefinito è vuoto, vale a dire che utilizza i valori angolari" -" predefiniti (45 e 135 gradi)." +msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser lorsque les couches du haut / bas utilisent le motif en lignes ou en zig zag. Les éléments" +" de la liste sont utilisés de manière séquentielle à mesure de l'avancement des couches. La liste reprend depuis le début lorsque la fin est atteinte." +" Les éléments de la liste sont séparés par des virgules et la liste entière est encadrée entre crochets. La valeur par défaut est une liste vide, ce qui" +" signifie que les angles traditionnels par défaut seront utilisés (45 et 135 degrés)." #: /fdmprinter.def.json msgctxt "skin_no_small_gaps_heuristic label" msgid "No Skin in Z Gaps" -msgstr "Nessun rivest. est. negli interstizi a Z" +msgstr "Aucune couche dans les trous en Z" #: /fdmprinter.def.json msgctxt "skin_no_small_gaps_heuristic description" @@ -1842,14 +1840,14 @@ msgid "" "setting to not generate skin if the vertical gap is very small. This " "improves printing time and slicing time, but technically leaves infill " "exposed to the air." -msgstr "Quando il modello presenta piccoli spazi vuoti verticali composti da un numero ridotto di strati, intorno a questi strati di norma dovrebbe essere presente" -" un rivestimento esterno nell'interstizio. Abilitare questa impostazione per non generare il rivestimento esterno se l'interstizio verticale è molto piccolo." -" Ciò consente di migliorare il tempo di stampa e il tempo di sezionamento, ma dal punto di vista tecnico lascia il riempimento esposto all'aria." +msgstr "Lorsque le modèle comporte de petits trous verticaux de quelques couches seulement, il doit normalement y avoir une couche autour de celles-ci dans l'espace" +" étroit. Activez ce paramètre pour ne pas générer de couche si le trou vertical est très petit. Cela améliore le temps d'impression et le temps de découpage," +" mais laisse techniquement le remplissage exposé à l'air." #: /fdmprinter.def.json msgctxt "skin_outline_count label" msgid "Extra Skin Wall Count" -msgstr "Numero di pareti di rivestimento esterno supplementari" +msgstr "Nombre supplémentaire de parois extérieures" #: /fdmprinter.def.json msgctxt "skin_outline_count description" @@ -1857,13 +1855,13 @@ msgid "" "Replaces the outermost part of the top/bottom pattern with a number of " "concentric lines. Using one or two lines improves roofs that start on infill " "material." -msgstr "Sostituisce la parte più esterna della configurazione degli strati superiori/inferiori con una serie di linee concentriche. L’utilizzo di una o due linee" -" migliora le parti superiori (tetti) che iniziano sul materiale di riempimento." +msgstr "Remplace la partie la plus externe du motif du dessus/dessous par un certain nombre de lignes concentriques. Le fait d'utiliser une ou deux lignes améliore" +" les plafonds qui commencent sur du matériau de remplissage." #: /fdmprinter.def.json msgctxt "ironing_enabled label" msgid "Enable Ironing" -msgstr "Abilita stiratura" +msgstr "Activer l'étirage" #: /fdmprinter.def.json msgctxt "ironing_enabled description" @@ -1872,37 +1870,35 @@ msgid "" "little material. This is meant to melt the plastic on top further, creating " "a smoother surface. The pressure in the nozzle chamber is kept high so that " "the creases in the surface are filled with material." -msgstr "Andare ancora una volta sulla superficie superiore, questa volta estrudendo una piccolissima quantità di materiale. Lo scopo è quello di sciogliere ulteriormente" -" la plastica sulla parte superiore, creando una superficie più liscia. La pressione nella camera dell'ugello viene mantenuta elevata, in modo che le grinze" -" nella superficie siano riempite con il materiale." +msgstr "Allez au-dessus de la surface une fois supplémentaire, mais en extrudant très peu de matériau. Cela signifie de faire fondre le plastique en haut un peu" +" plus, pour créer une surface lisse. La pression dans la chambre de la buse est maintenue élevée afin que les plis de la surface soient remplis de matériau." #: /fdmprinter.def.json msgctxt "ironing_only_highest_layer label" msgid "Iron Only Highest Layer" -msgstr "Stiramento del solo strato più elevato" +msgstr "N'étirer que la couche supérieure" #: /fdmprinter.def.json msgctxt "ironing_only_highest_layer description" msgid "" "Only perform ironing on the very last layer of the mesh. This saves time if " "the lower layers don't need a smooth surface finish." -msgstr "Effettua lo stiramento solo dell'ultimissimo strato della maglia. È possibile quindi risparmiare tempo se gli strati inferiori non richiedono una finitura" -" con superficie liscia." +msgstr "N'exécute un étirage que sur l'ultime couche du maillage. Ceci économise du temps si les couches inférieures ne nécessitent pas de fini lisse de surface." #: /fdmprinter.def.json msgctxt "ironing_pattern label" msgid "Ironing Pattern" -msgstr "Configurazione di stiratura" +msgstr "Motif d'étirage" #: /fdmprinter.def.json msgctxt "ironing_pattern description" msgid "The pattern to use for ironing top surfaces." -msgstr "Configurazione utilizzata per la stiratura della superficie superiore." +msgstr "Le motif à utiliser pour étirer les surfaces supérieures." #: /fdmprinter.def.json msgctxt "ironing_pattern option concentric" msgid "Concentric" -msgstr "Concentrica" +msgstr "Concentrique" #: /fdmprinter.def.json msgctxt "ironing_pattern option zigzag" @@ -1912,7 +1908,7 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "ironing_monotonic label" msgid "Monotonic Ironing Order" -msgstr "Ordine di stiratura monotonico" +msgstr "Ordre d'étirage monotone" #: /fdmprinter.def.json msgctxt "ironing_monotonic description" @@ -1920,23 +1916,23 @@ msgid "" "Print ironing lines in an ordering that causes them to always overlap with " "adjacent lines in a single direction. This takes slightly more time to " "print, but makes flat surfaces look more consistent." -msgstr "Stampa linee di stiratura in un ordine che ne causa sempre la sovrapposizione con le linee adiacenti in un singola direzione. Questa operazione richiede" -" un tempo di stampa leggermente superiore ma rende l'aspetto delle superfici piane più uniforme." +msgstr "Imprimez les lignes d'étirage dans un ordre tel qu'elles se chevauchent toujours avec les lignes adjacentes dans une seule direction. Cela prend un peu" +" plus de temps à imprimer, mais les surfaces planes ont l'air plus cohérentes." #: /fdmprinter.def.json msgctxt "ironing_line_spacing label" msgid "Ironing Line Spacing" -msgstr "Spaziatura delle linee di stiratura" +msgstr "Interligne de l'étirage" #: /fdmprinter.def.json msgctxt "ironing_line_spacing description" msgid "The distance between the lines of ironing." -msgstr "Distanza tra le linee di stiratura." +msgstr "La distance entre les lignes d'étirage." #: /fdmprinter.def.json msgctxt "ironing_flow label" msgid "Ironing Flow" -msgstr "Flusso di stiratura" +msgstr "Flux d'étirage" #: /fdmprinter.def.json msgctxt "ironing_flow description" @@ -1945,57 +1941,56 @@ msgid "" "ironing. Keeping the nozzle filled helps filling some of the crevices of the " "top surface, but too much results in overextrusion and blips on the side of " "the surface." -msgstr "Quantità di materiale, relativo ad una normale linea del rivestimento, da estrudere durante la stiratura. Mantenere l'ugello pieno aiuta a riempire alcune" -" delle fessure presenti sulla superficie superiore, ma una quantità eccessiva comporta un'estrusione eccessiva con conseguente puntinatura sui lati della" -" superficie." +msgstr "La quantité de matériau, relative à une ligne de couche extérieure normale, à extruder pendant l'étirage. Le fait de garder la buse pleine aide à remplir" +" certaines des crevasses de la surface supérieure ; mais si la quantité est trop importante, cela entraînera une surextrusion et l'apparition de coupures" +" sur le côté de la surface." #: /fdmprinter.def.json msgctxt "ironing_inset label" msgid "Ironing Inset" -msgstr "Inserto di stiratura" +msgstr "Insert d'étirage" #: /fdmprinter.def.json msgctxt "ironing_inset description" msgid "" "A distance to keep from the edges of the model. Ironing all the way to the " "edge of the mesh may result in a jagged edge on your print." -msgstr "Distanza da mantenere dai bordi del modello. La stiratura fino in fondo sino al bordo del reticolo può causare la formazione di un bordo frastagliato nella" -" stampa." +msgstr "Distance à garder à partir des bords du modèle. Étirer jusqu'au bord de la maille peut entraîner l'apparition d'un bord denté sur votre impression." #: /fdmprinter.def.json msgctxt "speed_ironing label" msgid "Ironing Speed" -msgstr "Velocità di stiratura" +msgstr "Vitesse d'étirage" #: /fdmprinter.def.json msgctxt "speed_ironing description" msgid "The speed at which to pass over the top surface." -msgstr "Velocità alla quale passare sopra la superficie superiore." +msgstr "La vitesse à laquelle passer sur la surface supérieure." #: /fdmprinter.def.json msgctxt "acceleration_ironing label" msgid "Ironing Acceleration" -msgstr "Accelerazione di stiratura" +msgstr "Accélération d'étirage" #: /fdmprinter.def.json msgctxt "acceleration_ironing description" msgid "The acceleration with which ironing is performed." -msgstr "L’accelerazione con cui viene effettuata la stiratura." +msgstr "L'accélération selon laquelle l'étirage est effectué." #: /fdmprinter.def.json msgctxt "jerk_ironing label" msgid "Ironing Jerk" -msgstr "Jerk stiratura" +msgstr "Saccade d'étirage" #: /fdmprinter.def.json msgctxt "jerk_ironing description" msgid "The maximum instantaneous velocity change while performing ironing." -msgstr "Indica la variazione della velocità istantanea massima durante la stiratura." +msgstr "Le changement instantané maximal de vitesse lors de l'étirage." #: /fdmprinter.def.json msgctxt "skin_overlap label" msgid "Skin Overlap Percentage" -msgstr "Percentuale di sovrapposizione del rivestimento esterno" +msgstr "Pourcentage de chevauchement de la couche extérieure" #: /fdmprinter.def.json msgctxt "skin_overlap description" @@ -2007,16 +2002,15 @@ msgid "" "over 50% may already cause any skin to go past the wall, because at that " "point the position of the nozzle of the skin-extruder may already reach past " "the middle of the wall." -msgstr "Regolare l’entità della sovrapposizione tra le pareti e (i punti finali delle) linee centrali del rivestimento esterno espressa in percentuale delle larghezze" -" delle linee del rivestimento esterno. Una leggera sovrapposizione consente alle pareti di essere saldamente collegate al rivestimento. Si noti che, data" -" una larghezza uguale del rivestimento esterno e della linea perimetrale, qualsiasi percentuale superiore al 50% può già causare il superamento della parete" -" da parte del rivestimento esterno in quanto, in quel punto, la posizione dell’ugello dell’estrusore del rivestimento esterno può già avere superato la" -" parte centrale della parete." +msgstr "Ajuster le degré de chevauchement entre les parois et les (extrémités des) lignes centrales de la couche extérieure, en pourcentage de la largeur des lignes" +" de la couche extérieure et de la paroi intérieure. Un chevauchement léger permet de relier fermement les parois à la couche extérieure. Notez que, si" +" la largeur de la couche extérieure est égale à celle de la ligne de la paroi, un pourcentage supérieur à 50 % peut déjà faire dépasser la couche extérieure" +" de la paroi, car dans ce cas la position de la buse de l'extrudeuse peut déjà atteindre le milieu de la paroi." #: /fdmprinter.def.json msgctxt "skin_overlap_mm label" msgid "Skin Overlap" -msgstr "Sovrapposizione del rivestimento esterno" +msgstr "Chevauchement de la couche extérieure" #: /fdmprinter.def.json msgctxt "skin_overlap_mm description" @@ -2027,15 +2021,15 @@ msgid "" "half the width of the wall may already cause any skin to go past the wall, " "because at that point the position of the nozzle of the skin-extruder may " "already reach past the middle of the wall." -msgstr "Regolare l’entità della sovrapposizione tra le pareti e (i punti finali delle) linee centrali del rivestimento esterno. Una leggera sovrapposizione consente" -" alle pareti di essere saldamente collegate al rivestimento. Si noti che, data una larghezza uguale del rivestimento esterno e della linea perimetrale," -" qualsiasi percentuale superiore alla metà della parete può già causare il superamento della parete da parte del rivestimento esterno in quanto, in quel" -" punto, la posizione dell’ugello dell’estrusore del rivestimento esterno può già aver superato la parte centrale della parete." +msgstr "Ajuster le degré de chevauchement entre les parois et les (extrémités des) lignes centrales de la couche extérieure. Un chevauchement léger permet de relier" +" fermement les parois à la couche extérieure. Notez que, si la largeur de la couche extérieure est égale à celle de la ligne de la paroi, une valeur supérieure" +" à la moitié de la largeur de la paroi peut déjà faire dépasser la couche extérieure de la paroi, car dans ce cas la position de la buse de l'extrudeuse" +" peut déjà atteindre le milieu de la paroi." #: /fdmprinter.def.json msgctxt "skin_preshrink label" msgid "Skin Removal Width" -msgstr "Larghezza rimozione rivestimento" +msgstr "Largeur de retrait de la couche extérieure" #: /fdmprinter.def.json msgctxt "skin_preshrink description" @@ -2044,13 +2038,14 @@ msgid "" "smaller than this value will disappear. This can help in limiting the amount " "of time and material spent on printing top/bottom skin at slanted surfaces " "in the model." -msgstr "Larghezza massima delle aree di rivestimento che è possibile rimuovere. Ogni area di rivestimento più piccola di questo valore verrà eliminata. Questo" -" può aiutare a limitare il tempo e il materiale necessari per la stampa del rivestimento superiore/inferiore sulle superfici inclinate del modello." +msgstr "La plus grande largeur des zones de la couche extérieure à faire disparaître. Toute zone de la couche extérieure plus étroite que cette valeur disparaîtra." +" Ceci peut aider à limiter le temps et la quantité de matière utilisés pour imprimer la couche extérieure supérieure/inférieure sur les surfaces obliques" +" du modèle." #: /fdmprinter.def.json msgctxt "top_skin_preshrink label" msgid "Top Skin Removal Width" -msgstr "Larghezza rimozione rivestimento superiore" +msgstr "Largeur de retrait de la couche extérieure supérieure" #: /fdmprinter.def.json msgctxt "top_skin_preshrink description" @@ -2059,13 +2054,14 @@ msgid "" "smaller than this value will disappear. This can help in limiting the amount " "of time and material spent on printing top skin at slanted surfaces in the " "model." -msgstr "Larghezza massima delle aree di rivestimento superiore che è possibile rimuovere. Ogni area di rivestimento più piccola di questo valore verrà eliminata." -" Questo può aiutare a limitare il tempo e il materiale necessari per la stampa del rivestimento superiore sulle superfici inclinate del modello." +msgstr "La plus grande largeur des zones de la couche extérieure supérieure à faire disparaître. Toute zone de la couche extérieure plus étroite que cette valeur" +" disparaîtra. Ceci peut aider à limiter le temps et la quantité de matière utilisés pour imprimer la couche extérieure supérieure sur les surfaces obliques" +" du modèle." #: /fdmprinter.def.json msgctxt "bottom_skin_preshrink label" msgid "Bottom Skin Removal Width" -msgstr "Larghezza rimozione rivestimento inferiore" +msgstr "Largeur de retrait de la couche extérieure inférieure" #: /fdmprinter.def.json msgctxt "bottom_skin_preshrink description" @@ -2074,13 +2070,14 @@ msgid "" "area smaller than this value will disappear. This can help in limiting the " "amount of time and material spent on printing bottom skin at slanted " "surfaces in the model." -msgstr "Larghezza massima delle aree di rivestimento inferiore che è possibile rimuovere. Ogni area di rivestimento più piccola di questo valore verrà eliminata." -" Questo può aiutare a limitare il tempo e il materiale necessari per la stampa del rivestimento inferiore sulle superfici inclinate del modello." +msgstr "La plus grande largeur des zones de la couche extérieure inférieure à faire disparaître. Toute zone de la couche extérieure plus étroite que cette valeur" +" disparaîtra. Ceci peut aider à limiter le temps et la quantité de matière utilisés pour imprimer la couche extérieure inférieure sur les surfaces obliques" +" du modèle." #: /fdmprinter.def.json msgctxt "expand_skins_expand_distance label" msgid "Skin Expand Distance" -msgstr "Distanza prolunga rivestimento esterno" +msgstr "Distance d'expansion de la couche extérieure" #: /fdmprinter.def.json msgctxt "expand_skins_expand_distance description" @@ -2088,13 +2085,13 @@ msgid "" "The distance the skins are expanded into the infill. Higher values makes the " "skin attach better to the infill pattern and makes the walls on neighboring " "layers adhere better to the skin. Lower values save amount of material used." -msgstr "Distanza per cui i rivestimenti si estendono nel riempimento. Valori maggiori migliorano l'aderenza del rivestimento al riempimento e consentono una migliore" -" aderenza al rivestimento delle pareti degli strati adiacenti. Valori minori consentono di risparmiare sul materiale utilizzato." +msgstr "La distance à laquelle les couches extérieures s'étendent à l'intérieur du remplissage. Des valeurs élevées lient mieux la couche extérieure au motif de" +" remplissage et font mieux adhérer à cette couche les parois des couches voisines. Des valeurs faibles économisent la quantité de matériau utilisé." #: /fdmprinter.def.json msgctxt "top_skin_expand_distance label" msgid "Top Skin Expand Distance" -msgstr "Distanza prolunga rivestimento superiore" +msgstr "Distance d'expansion de la couche extérieure supérieure" #: /fdmprinter.def.json msgctxt "top_skin_expand_distance description" @@ -2103,13 +2100,14 @@ msgid "" "the skin attach better to the infill pattern and makes the walls on the " "layer above adhere better to the skin. Lower values save amount of material " "used." -msgstr "Distanza per cui i rivestimenti superiori si estendono nel riempimento. Valori maggiori migliorano l'aderenza del rivestimento al riempimento e consentono" -" una migliore aderenza al rivestimento delle pareti dello strato superiore. Valori minori consentono di risparmiare sul materiale utilizzato." +msgstr "La distance à laquelle les couches extérieures supérieures s'étendent à l'intérieur du remplissage. Des valeurs élevées lient mieux la couche extérieure" +" au motif de remplissage et font mieux adhérer à cette couche les parois de la couche supérieure. Des valeurs faibles économisent la quantité de matériau" +" utilisé." #: /fdmprinter.def.json msgctxt "bottom_skin_expand_distance label" msgid "Bottom Skin Expand Distance" -msgstr "Distanza prolunga rivestimento inferiore" +msgstr "Distance d'expansion de la couche extérieure inférieure" #: /fdmprinter.def.json msgctxt "bottom_skin_expand_distance description" @@ -2118,13 +2116,14 @@ msgid "" "makes the skin attach better to the infill pattern and makes the skin adhere " "better to the walls on the layer below. Lower values save amount of material " "used." -msgstr "Distanza per cui i rivestimenti inferiori si estendono nel riempimento. Valori maggiori migliorano l'aderenza del rivestimento al riempimento e consentono" -" una migliore aderenza al rivestimento delle pareti dello strato inferiore. Valori minori consentono di risparmiare sul materiale utilizzato." +msgstr "La distance à laquelle les couches extérieures inférieures s'étendent à l'intérieur du remplissage. Des valeurs élevées lient mieux la couche extérieure" +" au motif de remplissage et font mieux adhérer à cette couche les parois de la couche inférieure. Des valeurs faibles économisent la quantité de matériau" +" utilisé." #: /fdmprinter.def.json msgctxt "max_skin_angle_for_expansion label" msgid "Maximum Skin Angle for Expansion" -msgstr "Angolo massimo rivestimento esterno per prolunga" +msgstr "Angle maximum de la couche extérieure pour l'expansion" #: /fdmprinter.def.json msgctxt "max_skin_angle_for_expansion description" @@ -2135,15 +2134,15 @@ msgid "" "vertical slope. An angle of 0° is horizontal and will cause no skin to be " "expanded, while an angle of 90° is vertical and will cause all skin to be " "expanded." -msgstr "Nelle superfici superiore e/o inferiore dell'oggetto con un angolo più grande di questa impostazione, il rivestimento esterno non sarà prolungato. Questo" -" evita il prolungamento delle aree del rivestimento esterno strette che vengono create quando la pendenza della superficie del modello è quasi verticale." -" Un angolo di 0° è orizzontale e non causa il prolungamento di alcun rivestimento esterno, mentre un angolo di 90° è verticale e causa il prolungamento" -" di tutto il rivestimento esterno." +msgstr "Les couches extérieures supérieures / inférieures des surfaces supérieures et / ou inférieures de votre objet possédant un angle supérieur à ce paramètre" +" ne seront pas étendues. Cela permet d'éviter d'étendre les zones de couche extérieure étroites qui sont créées lorsque la surface du modèle possède une" +" pente proche de la verticale. Un angle de 0° est horizontal et évitera l'extension des couches ; un angle de 90° est vertical et entraînera l'extension" +" de toutes les couches." #: /fdmprinter.def.json msgctxt "min_skin_width_for_expansion label" msgid "Minimum Skin Width for Expansion" -msgstr "Larghezza minima rivestimento esterno per prolunga" +msgstr "Largeur minimum de la couche extérieure pour l'expansion" #: /fdmprinter.def.json msgctxt "min_skin_width_for_expansion description" @@ -2151,57 +2150,56 @@ msgid "" "Skin areas narrower than this are not expanded. This avoids expanding the " "narrow skin areas that are created when the model surface has a slope close " "to the vertical." -msgstr "Le aree del rivestimento esterno inferiori a questa non vengono prolungate. In tal modo si evita di prolungare le aree del rivestimento esterno strette" -" che vengono create quando la superficie del modello presenta un’inclinazione quasi verticale." +msgstr "Les zones de couche extérieure plus étroites que cette valeur ne seront pas étendues. Cela permet d'éviter d'étendre les zones de couche extérieure étroites" +" qui sont créées lorsque la surface du modèle possède une pente proche de la verticale." #: /fdmprinter.def.json msgctxt "infill label" msgid "Infill" -msgstr "Riempimento" +msgstr "Remplissage" #: /fdmprinter.def.json msgctxt "infill description" msgid "Infill" -msgstr "Riempimento" +msgstr "Remplissage" #: /fdmprinter.def.json msgctxt "infill_extruder_nr label" msgid "Infill Extruder" -msgstr "Estrusore riempimento" +msgstr "Extrudeuse de remplissage" #: /fdmprinter.def.json msgctxt "infill_extruder_nr description" msgid "" "The extruder train used for printing infill. This is used in multi-extrusion." -msgstr "Treno estrusore utilizzato per stampare il riempimento. Si utilizza nell'estrusione multipla." +msgstr "Le train d'extrudeuse utilisé pour l'impression du remplissage. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "infill_sparse_density label" msgid "Infill Density" -msgstr "Densità del riempimento" +msgstr "Densité du remplissage" #: /fdmprinter.def.json msgctxt "infill_sparse_density description" msgid "Adjusts the density of infill of the print." -msgstr "Regola la densità del riempimento della stampa." +msgstr "Adapte la densité de remplissage de l'impression." #: /fdmprinter.def.json msgctxt "infill_line_distance label" msgid "Infill Line Distance" -msgstr "Distanza tra le linee di riempimento" +msgstr "Distance d'écartement de ligne de remplissage" #: /fdmprinter.def.json msgctxt "infill_line_distance description" msgid "" "Distance between the printed infill lines. This setting is calculated by the " "infill density and the infill line width." -msgstr "Indica la distanza tra le linee di riempimento stampate. Questa impostazione viene calcolata mediante la densità del riempimento e la larghezza della linea" -" di riempimento." +msgstr "Distance entre les lignes de remplissage imprimées. Ce paramètre est calculé par la densité du remplissage et la largeur de ligne de remplissage." #: /fdmprinter.def.json msgctxt "infill_pattern label" msgid "Infill Pattern" -msgstr "Configurazione di riempimento" +msgstr "Motif de remplissage" #: /fdmprinter.def.json msgctxt "infill_pattern description" @@ -2213,55 +2211,55 @@ msgid "" "octet infill change with every layer to provide a more equal distribution of " "strength over each direction. Lightning infill tries to minimize the infill, " "by only supporting the ceiling of the object." -msgstr "Configurazione del materiale di riempimento della stampa. Il riempimento a linea e a zig zag cambia direzione su strati alternati, riducendo il costo del" -" materiale. Le configurazioni a griglia, a triangolo, tri-esagonali, cubiche, ottagonali, a quarto di cubo, incrociate e concentriche sono stampate completamente" -" su ogni strato. Le configurazioni gyroid, cubiche, a quarto di cubo e ottagonali variano per ciascuno strato per garantire una più uniforme distribuzione" -" della forza in ogni direzione. Il riempimento fulmine cerca di minimizzare il riempimento, supportando solo la parte superiore dell'oggetto." +msgstr "Le motif du matériau de remplissage de l'impression. La ligne et le remplissage en zigzag changent de sens à chaque alternance de couche, réduisant ainsi" +" les coûts matériels. Les motifs en grille, en triangle, tri-hexagonaux, cubiques, octaédriques, quart cubiques, entrecroisés et concentriques sont entièrement" +" imprimés sur chaque couche. Les remplissages gyroïdes, cubiques, quart cubiques et octaédriques changent à chaque couche afin d'offrir une répartition" +" plus égale de la solidité dans chaque direction. Le remplissage éclair tente de minimiser le remplissage, en ne supportant que le plafond de l'objet." #: /fdmprinter.def.json msgctxt "infill_pattern option grid" msgid "Grid" -msgstr "Griglia" +msgstr "Grille" #: /fdmprinter.def.json msgctxt "infill_pattern option lines" msgid "Lines" -msgstr "Linee" +msgstr "Lignes" #: /fdmprinter.def.json msgctxt "infill_pattern option triangles" msgid "Triangles" -msgstr "Triangoli" +msgstr "Triangles" #: /fdmprinter.def.json msgctxt "infill_pattern option trihexagon" msgid "Tri-Hexagon" -msgstr "Tri-esagonale" +msgstr "Trihexagonal" #: /fdmprinter.def.json msgctxt "infill_pattern option cubic" msgid "Cubic" -msgstr "Cubo" +msgstr "Cubique" #: /fdmprinter.def.json msgctxt "infill_pattern option cubicsubdiv" msgid "Cubic Subdivision" -msgstr "Suddivisione in cubi" +msgstr "Subdivision cubique" #: /fdmprinter.def.json msgctxt "infill_pattern option tetrahedral" msgid "Octet" -msgstr "Ottagonale" +msgstr "Octaédrique" #: /fdmprinter.def.json msgctxt "infill_pattern option quarter_cubic" msgid "Quarter Cubic" -msgstr "Quarto di cubo" +msgstr "Quart cubique" #: /fdmprinter.def.json msgctxt "infill_pattern option concentric" msgid "Concentric" -msgstr "Concentriche" +msgstr "Concentrique" #: /fdmprinter.def.json msgctxt "infill_pattern option zigzag" @@ -2271,27 +2269,27 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "infill_pattern option cross" msgid "Cross" -msgstr "Incrociata" +msgstr "Entrecroisé" #: /fdmprinter.def.json msgctxt "infill_pattern option cross_3d" msgid "Cross 3D" -msgstr "Incrociata 3D" +msgstr "Entrecroisé 3D" #: /fdmprinter.def.json msgctxt "infill_pattern option gyroid" msgid "Gyroid" -msgstr "Gyroid" +msgstr "Gyroïde" #: /fdmprinter.def.json msgctxt "infill_pattern option lightning" msgid "Lightning" -msgstr "Fulmine" +msgstr "Éclair" #: /fdmprinter.def.json msgctxt "zig_zaggify_infill label" msgid "Connect Infill Lines" -msgstr "Collegamento delle linee di riempimento" +msgstr "Relier les lignes de remplissage" #: /fdmprinter.def.json msgctxt "zig_zaggify_infill description" @@ -2301,14 +2299,14 @@ msgid "" "the infill adhere to the walls better and reduce the effects of infill on " "the quality of vertical surfaces. Disabling this setting reduces the amount " "of material used." -msgstr "Collegare le estremità nel punto in cui il riempimento incontra la parete interna utilizzando una linea che segue la forma della parete interna. L'abilitazione" -" di questa impostazione può far meglio aderire il riempimento alle pareti riducendo nel contempo gli effetti del riempimento sulla qualità delle superfici" -" verticali. La disabilitazione di questa impostazione consente di ridurre la quantità di materiale utilizzato." +msgstr "Relie les extrémités où le motif de remplissage touche la paroi interne, à l'aide d'une ligne épousant la forme de la paroi interne. Activer ce paramètre" +" peut faire mieux coller le remplissage aux parois, et réduit les effets du remplissage sur la qualité des surfaces verticales. Désactiver ce paramètre" +" diminue la quantité de matière utilisée." #: /fdmprinter.def.json msgctxt "connect_infill_polygons label" msgid "Connect Infill Polygons" -msgstr "Collega poligoni di riempimento" +msgstr "Relier les polygones de remplissage" #: /fdmprinter.def.json msgctxt "connect_infill_polygons description" @@ -2316,13 +2314,13 @@ msgid "" "Connect infill paths where they run next to each other. For infill patterns " "which consist of several closed polygons, enabling this setting greatly " "reduces the travel time." -msgstr "Collega i percorsi di riempimento quando corrono uno accanto all’altro. Per le configurazioni di riempimento composte da più poligoni chiusi, l’abilitazione" -" di questa impostazione riduce notevolmente il tempo di spostamento." +msgstr "Relier les voies de remplissage lorsqu'elles sont côte à côte. Pour les motifs de remplissage composés de plusieurs polygones fermés, ce paramètre permet" +" de réduire considérablement le temps de parcours." #: /fdmprinter.def.json msgctxt "infill_angles label" msgid "Infill Line Directions" -msgstr "Direzioni delle linee di riempimento" +msgstr "Sens de ligne de remplissage" #: /fdmprinter.def.json msgctxt "infill_angles description" @@ -2333,35 +2331,35 @@ msgid "" "the whole list is contained in square brackets. Default is an empty list " "which means use the traditional default angles (45 and 135 degrees for the " "lines and zig zag patterns and 45 degrees for all other patterns)." -msgstr "Un elenco di direzioni linee intere. Gli elementi dall’elenco sono utilizzati in sequenza con il progredire degli strati e, al raggiungimento della fine" -" dell’elenco, la sequenza ricomincia dall’inizio. Le voci elencate sono separate da virgole e l’intero elenco è racchiuso tra parentesi quadre. L’elenco" -" predefinito è vuoto, vale a dire che utilizza i valori angolari predefiniti (45 e 135 gradi per le linee e la configurazione zig zag e 45 gradi per tutte" -" le altre configurazioni)." +msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser. Les éléments de la liste sont utilisés de manière séquentielle à mesure de l'avancement" +" des couches. La liste reprend depuis le début lorsque la fin est atteinte. Les éléments de la liste sont séparés par des virgules et la liste entière" +" est encadrée entre crochets. La valeur par défaut est une liste vide, ce qui signifie que les angles traditionnels par défaut seront utilisés (45 et 135" +" degrés pour les motifs en lignes et en zig zag et 45 degrés pour tout autre motif)." #: /fdmprinter.def.json msgctxt "infill_offset_x label" msgid "Infill X Offset" -msgstr "Offset X riempimento" +msgstr "Remplissage Décalage X" #: /fdmprinter.def.json msgctxt "infill_offset_x description" msgid "The infill pattern is moved this distance along the X axis." -msgstr "Il riempimento si sposta di questa distanza lungo l'asse X." +msgstr "Le motif de remplissage est décalé de cette distance sur l'axe X." #: /fdmprinter.def.json msgctxt "infill_offset_y label" msgid "Infill Y Offset" -msgstr "Offset Y riempimento" +msgstr "Remplissage Décalage Y" #: /fdmprinter.def.json msgctxt "infill_offset_y description" msgid "The infill pattern is moved this distance along the Y axis." -msgstr "Il riempimento si sposta di questa distanza lungo l'asse Y." +msgstr "Le motif de remplissage est décalé de cette distance sur l'axe Y." #: /fdmprinter.def.json msgctxt "infill_randomize_start_location label" msgid "Randomize Infill Start" -msgstr "Avvio con riempimento casuale" +msgstr "Randomiser le démarrage du remplissage" #: /fdmprinter.def.json msgctxt "infill_randomize_start_location description" @@ -2369,13 +2367,13 @@ msgid "" "Randomize which infill line is printed first. This prevents one segment " "becoming the strongest, but it does so at the cost of an additional travel " "move." -msgstr "Decidere in modo casuale quale sarà la linea di riempimento ad essere stampata per prima. In tal modo si evita che un segmento diventi il più resistente" -" sebbene si esegua uno spostamento aggiuntivo." +msgstr "Randomisez la ligne de remplissage qui est imprimée en premier. Cela empêche un segment de devenir plus fort, mais cela se fait au prix d'un déplacement" +" supplémentaire." #: /fdmprinter.def.json msgctxt "infill_multiplier label" msgid "Infill Line Multiplier" -msgstr "Moltiplicatore delle linee di riempimento" +msgstr "Multiplicateur de ligne de remplissage" #: /fdmprinter.def.json msgctxt "infill_multiplier description" @@ -2383,13 +2381,13 @@ msgid "" "Convert each infill line to this many lines. The extra lines do not cross " "over each other, but avoid each other. This makes the infill stiffer, but " "increases print time and material usage." -msgstr "Converte ogni linea di riempimento in questo numero di linee. Le linee supplementari non si incrociano tra loro, ma si evitano. In tal modo il riempimento" -" risulta più rigido, ma il tempo di stampa e la quantità di materiale aumentano." +msgstr "Convertir chaque ligne de remplissage en ce nombre de lignes. Les lignes supplémentaires ne se croisent pas entre elles, mais s'évitent mutuellement. Cela" +" rend le remplissage plus rigide, mais augmente le temps d'impression et la quantité de matériau utilisé." #: /fdmprinter.def.json msgctxt "infill_wall_line_count label" msgid "Extra Infill Wall Count" -msgstr "Conteggio pareti di riempimento supplementari" +msgstr "Nombre de parois de remplissage supplémentaire" #: /fdmprinter.def.json msgctxt "infill_wall_line_count description" @@ -2400,15 +2398,15 @@ msgid "" "This feature can combine with the Connect Infill Polygons to connect all the " "infill into a single extrusion path without the need for travels or " "retractions if configured right." -msgstr "Aggiunge pareti supplementari intorno alla zona di riempimento. Queste pareti possono ridurre l’abbassamento delle linee del rivestimento esterno superiore/inferiore," -" pertanto saranno necessari meno strati di rivestimento esterno superiore/inferiore per ottenere la stessa qualità al costo del materiale supplementare.\nQuesta" -" funzione può essere abbinata a Collega poligoni riempimento per collegare tutto il riempimento in un unico percorso di estrusione senza necessità di avanzamenti" -" o arretramenti, se configurata correttamente." +msgstr "Ajoutez des parois supplémentaires autour de la zone de remplissage. De telles parois peuvent réduire l'affaissement des lignes de couche extérieure supérieure / inférieure," +" réduisant le nombre de couches extérieures supérieures / inférieures nécessaires pour obtenir la même qualité, au prix d'un peu de matériau supplémentaire.\nConfigurée" +" correctement, cette fonctionnalité peut être combinée avec « Relier les polygones de remplissage » pour relier tous les remplissages en un seul mouvement" +" d'extrusion sans avoir besoin de déplacements ou de rétractions." #: /fdmprinter.def.json msgctxt "sub_div_rad_add label" msgid "Cubic Subdivision Shell" -msgstr "Guscio suddivisione in cubi" +msgstr "Coque de la subdivision cubique" #: /fdmprinter.def.json msgctxt "sub_div_rad_add description" @@ -2417,13 +2415,13 @@ msgid "" "boundary of the model, as to decide whether this cube should be subdivided. " "Larger values lead to a thicker shell of small cubes near the boundary of " "the model." -msgstr "Un aggiunta al raggio dal centro di ciascun cubo per controllare il contorno del modello, per decidere se questo cubo deve essere suddiviso. Valori maggiori" -" comportano un guscio più spesso di cubi piccoli vicino al contorno del modello." +msgstr "Une addition au rayon à partir du centre de chaque cube pour vérifier la bordure du modèle, afin de décider si ce cube doit être subdivisé. Des valeurs" +" plus importantes entraînent une coque plus épaisse de petits cubes à proximité de la bordure du modèle." #: /fdmprinter.def.json msgctxt "infill_overlap label" msgid "Infill Overlap Percentage" -msgstr "Percentuale di sovrapposizione del riempimento" +msgstr "Pourcentage de chevauchement du remplissage" #: /fdmprinter.def.json msgctxt "infill_overlap description" @@ -2431,25 +2429,25 @@ msgid "" "The amount of overlap between the infill and the walls as a percentage of " "the infill line width. A slight overlap allows the walls to connect firmly " "to the infill." -msgstr "Indica la quantità di sovrapposizione tra il riempimento e le pareti come percentuale della larghezza della linea di riempimento. Una leggera sovrapposizione" -" consente il saldo collegamento delle pareti al riempimento." +msgstr "Le degré de chevauchement entre le remplissage et les parois exprimé en pourcentage de la largeur de ligne de remplissage. Un chevauchement faible permet" +" aux parois de se connecter fermement au remplissage." #: /fdmprinter.def.json msgctxt "infill_overlap_mm label" msgid "Infill Overlap" -msgstr "Sovrapposizione del riempimento" +msgstr "Chevauchement du remplissage" #: /fdmprinter.def.json msgctxt "infill_overlap_mm description" msgid "" "The amount of overlap between the infill and the walls. A slight overlap " "allows the walls to connect firmly to the infill." -msgstr "Indica la quantità di sovrapposizione tra il riempimento e le pareti. Una leggera sovrapposizione consente il saldo collegamento delle pareti al riempimento." +msgstr "Le degré de chevauchement entre le remplissage et les parois. Un léger chevauchement permet de lier fermement les parois au remplissage." #: /fdmprinter.def.json msgctxt "infill_wipe_dist label" msgid "Infill Wipe Distance" -msgstr "Distanza del riempimento" +msgstr "Distance de remplissage" #: /fdmprinter.def.json msgctxt "infill_wipe_dist description" @@ -2457,26 +2455,25 @@ msgid "" "Distance of a travel move inserted after every infill line, to make the " "infill stick to the walls better. This option is similar to infill overlap, " "but without extrusion and only on one end of the infill line." -msgstr "Indica la distanza di uno spostamento inserito dopo ogni linea di riempimento, per determinare una migliore adesione del riempimento alle pareti. Questa" -" opzione è simile alla sovrapposizione del riempimento, ma senza estrusione e solo su una estremità della linea di riempimento." +msgstr "Distance de déplacement à insérer après chaque ligne de remplissage, pour s'assurer que le remplissage collera mieux aux parois externes. Cette option" +" est similaire au chevauchement du remplissage, mais sans extrusion et seulement à l'une des deux extrémités de la ligne de remplissage." #: /fdmprinter.def.json msgctxt "infill_sparse_thickness label" msgid "Infill Layer Thickness" -msgstr "Spessore dello strato di riempimento" +msgstr "Épaisseur de la couche de remplissage" #: /fdmprinter.def.json msgctxt "infill_sparse_thickness description" msgid "" "The thickness per layer of infill material. This value should always be a " "multiple of the layer height and is otherwise rounded." -msgstr "Indica lo spessore per strato di materiale di riempimento. Questo valore deve sempre essere un multiplo dell’altezza dello strato e in caso contrario viene" -" arrotondato." +msgstr "L'épaisseur par couche de matériau de remplissage. Cette valeur doit toujours être un multiple de la hauteur de la couche et arrondie." #: /fdmprinter.def.json msgctxt "gradual_infill_steps label" msgid "Gradual Infill Steps" -msgstr "Fasi di riempimento graduale" +msgstr "Étapes de remplissage progressif" #: /fdmprinter.def.json msgctxt "gradual_infill_steps description" @@ -2484,24 +2481,24 @@ msgid "" "Number of times to reduce the infill density by half when getting further " "below top surfaces. Areas which are closer to top surfaces get a higher " "density, up to the Infill Density." -msgstr "Indica il numero di volte per dimezzare la densità del riempimento quando si va al di sotto degli strati superiori. Le aree più vicine agli strati superiori" -" avranno una densità maggiore, fino alla densità del riempimento." +msgstr "Nombre de fois pour réduire la densité de remplissage de moitié en poursuivant sous les surfaces du dessus. Les zones qui sont plus proches des surfaces" +" du dessus possèdent une densité plus élevée, jusqu'à la Densité du remplissage." #: /fdmprinter.def.json msgctxt "gradual_infill_step_height label" msgid "Gradual Infill Step Height" -msgstr "Altezza fasi di riempimento graduale" +msgstr "Hauteur de l'étape de remplissage progressif" #: /fdmprinter.def.json msgctxt "gradual_infill_step_height description" msgid "" "The height of infill of a given density before switching to half the density." -msgstr "Indica l’altezza di riempimento di una data densità prima di passare a metà densità." +msgstr "La hauteur de remplissage d'une densité donnée avant de passer à la moitié de la densité." #: /fdmprinter.def.json msgctxt "infill_before_walls label" msgid "Infill Before Walls" -msgstr "Riempimento prima delle pareti" +msgstr "Imprimer le remplissage avant les parois" #: /fdmprinter.def.json msgctxt "infill_before_walls description" @@ -2510,24 +2507,23 @@ msgid "" "lead to more accurate walls, but overhangs print worse. Printing the infill " "first leads to sturdier walls, but the infill pattern might sometimes show " "through the surface." -msgstr "Stampa il riempimento prima delle pareti. La stampa preliminare delle pareti può avere come risultato pareti più precise, ma sbalzi di stampa peggiori." -" La stampa preliminare del riempimento produce pareti più robuste, anche se a volte la configurazione (o pattern) di riempimento potrebbe risultare visibile" -" attraverso la superficie." +msgstr "Imprime le remplissage avant d'imprimer les parois. Imprimer les parois d'abord permet d'obtenir des parois plus précises, mais les porte-à-faux s'impriment" +" plus mal. Imprimer le remplissage d'abord entraîne des parois plus résistantes, mais le motif de remplissage se verra parfois à travers la surface." #: /fdmprinter.def.json msgctxt "min_infill_area label" msgid "Minimum Infill Area" -msgstr "Area minima riempimento" +msgstr "Zone de remplissage minimum" #: /fdmprinter.def.json msgctxt "min_infill_area description" msgid "Don't generate areas of infill smaller than this (use skin instead)." -msgstr "Non generare aree di riempimento inferiori a questa (piuttosto usare il rivestimento esterno)." +msgstr "Ne pas générer de zones de remplissage plus petites que cela (utiliser plutôt une couche extérieure)" #: /fdmprinter.def.json msgctxt "infill_support_enabled label" msgid "Infill Support" -msgstr "Supporto riempimento" +msgstr "Support de remplissage" #: /fdmprinter.def.json msgctxt "infill_support_enabled description" @@ -2535,13 +2531,13 @@ msgid "" "Print infill structures only where tops of the model should be supported. " "Enabling this reduces print time and material usage, but leads to ununiform " "object strength." -msgstr "Stampare le strutture di riempimento solo laddove è necessario supportare le sommità del modello. L'abilitazione di questa funzione riduce il tempo di" -" stampa e l'utilizzo del materiale, ma comporta una disuniforme resistenza dell'oggetto." +msgstr "Imprimer les structures de remplissage uniquement là où le haut du modèle doit être supporté, ce qui permet de réduire le temps d'impression et l'utilisation" +" de matériau, mais conduit à une résistance uniforme de l'objet." #: /fdmprinter.def.json msgctxt "infill_support_angle label" msgid "Infill Overhang Angle" -msgstr "Angolo di sbalzo del riempimento" +msgstr "Angle de porte-à-faux de remplissage" #: /fdmprinter.def.json msgctxt "infill_support_angle description" @@ -2549,93 +2545,92 @@ msgid "" "The minimum angle of internal overhangs for which infill is added. At a " "value of 0° objects are totally filled with infill, 90° will not provide any " "infill." -msgstr "L'angolo minimo degli sbalzi interni per il quale viene aggiunto il riempimento. Per un valore corrispondente a 0°, gli oggetti sono completamente riempiti" -" di materiale, per un valore corrispondente a 90° non è previsto riempimento." +msgstr "Angle minimal des porte-à-faux internes pour lesquels le remplissage est ajouté. À une valeur de 0°, les objets sont totalement remplis, 90° ne fournira" +" aucun remplissage." #: /fdmprinter.def.json msgctxt "skin_edge_support_thickness label" msgid "Skin Edge Support Thickness" -msgstr "Spessore del supporto del bordo del rivestimento" +msgstr "Épaisseur de soutien des bords de la couche" #: /fdmprinter.def.json msgctxt "skin_edge_support_thickness description" msgid "The thickness of the extra infill that supports skin edges." -msgstr "Spessore del riempimento supplementare che supporta i bordi del rivestimento." +msgstr "L'épaisseur du remplissage supplémentaire qui soutient les bords de la couche." #: /fdmprinter.def.json msgctxt "skin_edge_support_layers label" msgid "Skin Edge Support Layers" -msgstr "Layer di supporto del bordo del rivestimento" +msgstr "Couches de soutien des bords de la couche extérieure" #: /fdmprinter.def.json msgctxt "skin_edge_support_layers description" msgid "The number of infill layers that supports skin edges." -msgstr "Numero di layer di riempimento che supportano i bordi del rivestimento." +msgstr "Le nombre de couches de remplissage qui soutient les bords de la couche." #: /fdmprinter.def.json msgctxt "lightning_infill_support_angle label" msgid "Lightning Infill Support Angle" -msgstr "Angolo di supporto riempimento fulmine" +msgstr "Angle de support du remplissage éclair" #: /fdmprinter.def.json msgctxt "lightning_infill_support_angle description" msgid "" "Determines when a lightning infill layer has to support anything above it. " "Measured in the angle given the thickness of a layer." -msgstr "Determina quando uno strato di riempimento fulmine deve supportare il materiale sopra di esso. Misurato nell'angolo dato lo stesso di uno strato." +msgstr "Détermine quand une couche de remplissage éclair doit soutenir tout ce qui se trouve au-dessus. Mesuré dans l'angle au vu de l'épaisseur d'une couche." #: /fdmprinter.def.json msgctxt "lightning_infill_overhang_angle label" msgid "Lightning Infill Overhang Angle" -msgstr "Angolo di sbalzo riempimento fulmine" +msgstr "Angle de saillie du remplissage éclair" #: /fdmprinter.def.json msgctxt "lightning_infill_overhang_angle description" msgid "" "Determines when a lightning infill layer has to support the model above it. " "Measured in the angle given the thickness." -msgstr "Determina quando uno strato di riempimento fulmine deve supportare il modello sopra di esso. Misurato nell'angolo dato lo spessore." +msgstr "Détermine quand une couche de remplissage éclair doit soutenir le modèle au-dessus. Mesuré dans l'angle au vu de l'épaisseur." #: /fdmprinter.def.json msgctxt "lightning_infill_prune_angle label" msgid "Lightning Infill Prune Angle" -msgstr "Angolo eliminazione riempimento fulmine" +msgstr "Angle d'élagage du remplissage éclair" #: /fdmprinter.def.json msgctxt "lightning_infill_prune_angle description" msgid "" "The endpoints of infill lines are shortened to save on material. This " "setting is the angle of overhang of the endpoints of these lines." -msgstr "I punti finali delle linee di riempimento vengono accorciati per risparmiare sul materiale. Questa impostazione è l'angolo di sbalzo dei punti finali di" -" queste linee." +msgstr "Les extrémités des lignes de remplissage sont raccourcies pour économiser du matériau. Ce paramètre est l'angle de saillie des extrémités de ces lignes." #: /fdmprinter.def.json msgctxt "lightning_infill_straightening_angle label" msgid "Lightning Infill Straightening Angle" -msgstr "Angolo di raddrizzatura riempimento fulmine" +msgstr "Angle de redressement du remplissage éclair" #: /fdmprinter.def.json msgctxt "lightning_infill_straightening_angle description" msgid "" "The infill lines are straightened out to save on printing time. This is the " "maximum angle of overhang allowed across the length of the infill line." -msgstr "Le linee di riempimento vengono raddrizzate per risparmiare sul tempo di stampa. Questo è l'angolo di sbalzo massimo consentito sulla lunghezza della linea" -" di riempimento." +msgstr "Les lignes de remplissage sont redressées pour gagner du temps d'impression. Il s'agit de l'angle maximal de saillie autorisé sur la longueur de la ligne" +" de remplissage." #: /fdmprinter.def.json msgctxt "material label" msgid "Material" -msgstr "Materiale" +msgstr "Matériau" #: /fdmprinter.def.json msgctxt "material description" msgid "Material" -msgstr "Materiale" +msgstr "Matériau" #: /fdmprinter.def.json msgctxt "default_material_print_temperature label" msgid "Default Printing Temperature" -msgstr "Temperatura di stampa preimpostata" +msgstr "Température d’impression par défaut" #: /fdmprinter.def.json msgctxt "default_material_print_temperature description" @@ -2643,84 +2638,84 @@ msgid "" "The default temperature used for printing. This should be the \"base\" " "temperature of a material. All other print temperatures should use offsets " "based on this value" -msgstr "La temperatura preimpostata utilizzata per la stampa. Deve essere la temperatura “base” di un materiale. Tutte le altre temperature di stampa devono usare" -" scostamenti basati su questo valore" +msgstr "La température par défaut utilisée pour l'impression. Il doit s'agir de la température de « base » d'un matériau. Toutes les autres températures d'impression" +" doivent utiliser des décalages basés sur cette valeur" #: /fdmprinter.def.json msgctxt "build_volume_temperature label" msgid "Build Volume Temperature" -msgstr "Temperatura volume di stampa" +msgstr "Température du volume d'impression" #: /fdmprinter.def.json msgctxt "build_volume_temperature description" msgid "" "The temperature of the environment to print in. If this is 0, the build " "volume temperature will not be adjusted." -msgstr "La temperatura dell'ambiente in cui stampare. Se il valore è 0, la temperatura del volume di stampa non verrà regolata." +msgstr "La température de l'environnement d'impression. Si cette valeur est 0, la température du volume d'impression ne sera pas ajustée." #: /fdmprinter.def.json msgctxt "material_print_temperature label" msgid "Printing Temperature" -msgstr "Temperatura di stampa" +msgstr "Température d’impression" #: /fdmprinter.def.json msgctxt "material_print_temperature description" msgid "The temperature used for printing." -msgstr "Indica la temperatura usata per la stampa." +msgstr "Température utilisée pour l'impression." #: /fdmprinter.def.json msgctxt "material_print_temperature_layer_0 label" msgid "Printing Temperature Initial Layer" -msgstr "Temperatura di stampa Strato iniziale" +msgstr "Température d’impression couche initiale" #: /fdmprinter.def.json msgctxt "material_print_temperature_layer_0 description" msgid "" "The temperature used for printing the first layer. Set at 0 to disable " "special handling of the initial layer." -msgstr "Indica la temperatura usata per la stampa del primo strato. Impostare a 0 per disabilitare la manipolazione speciale dello strato iniziale." +msgstr "Température utilisée pour l'impression de la première couche. Définissez-la sur 0 pour désactiver le traitement spécial de la couche initiale." #: /fdmprinter.def.json msgctxt "material_initial_print_temperature label" msgid "Initial Printing Temperature" -msgstr "Temperatura di stampa iniziale" +msgstr "Température d’impression initiale" #: /fdmprinter.def.json msgctxt "material_initial_print_temperature description" msgid "" "The minimal temperature while heating up to the Printing Temperature at " "which printing can already start." -msgstr "La temperatura minima durante il riscaldamento fino alla temperatura alla quale può già iniziare la stampa." +msgstr "La température minimale pendant le chauffage jusqu'à la température d'impression à laquelle l'impression peut démarrer." #: /fdmprinter.def.json msgctxt "material_final_print_temperature label" msgid "Final Printing Temperature" -msgstr "Temperatura di stampa finale" +msgstr "Température d’impression finale" #: /fdmprinter.def.json msgctxt "material_final_print_temperature description" msgid "" "The temperature to which to already start cooling down just before the end " "of printing." -msgstr "La temperatura alla quale può già iniziare il raffreddamento prima della fine della stampa." +msgstr "La température à laquelle le refroidissement commence juste avant la fin de l'impression." #: /fdmprinter.def.json msgctxt "material_extrusion_cool_down_speed label" msgid "Extrusion Cool Down Speed Modifier" -msgstr "Modificatore della velocità di raffreddamento estrusione" +msgstr "Modificateur de vitesse de refroidissement de l'extrusion" #: /fdmprinter.def.json msgctxt "material_extrusion_cool_down_speed description" msgid "" "The extra speed by which the nozzle cools while extruding. The same value is " "used to signify the heat up speed lost when heating up while extruding." -msgstr "Indica l'incremento di velocità di raffreddamento dell'ugello in fase di estrusione. Lo stesso valore viene usato per indicare la perdita di velocità di" -" riscaldamento durante il riscaldamento in fase di estrusione." +msgstr "La vitesse supplémentaire à laquelle la buse refroidit pendant l'extrusion. La même valeur est utilisée pour indiquer la perte de vitesse de chauffage" +" pendant l'extrusion." #: /fdmprinter.def.json msgctxt "default_material_bed_temperature label" msgid "Default Build Plate Temperature" -msgstr "Temperatura piano di stampa preimpostata" +msgstr "Température du plateau par défaut" #: /fdmprinter.def.json msgctxt "default_material_bed_temperature description" @@ -2728,94 +2723,94 @@ msgid "" "The default temperature used for the heated build plate. This should be the " "\"base\" temperature of a build plate. All other print temperatures should " "use offsets based on this value" -msgstr "La temperatura preimpostata utilizzata per il piano di stampa. Deve essere la temperatura “base” di un piano di stampa. Tutte le altre temperature di stampa" -" devono usare scostamenti basati su questo valore" +msgstr "Température par défaut utilisée pour le plateau chauffant. Il doit s'agir de la température de « base » d'un plateau. Toutes les autres températures d'impression" +" sont définies en fonction de cette valeur" #: /fdmprinter.def.json msgctxt "material_bed_temperature label" msgid "Build Plate Temperature" -msgstr "Temperatura piano di stampa" +msgstr "Température du plateau" #: /fdmprinter.def.json msgctxt "material_bed_temperature description" msgid "" "The temperature used for the heated build plate. If this is 0, the build " "plate is left unheated." -msgstr "Indica la temperatura utilizzata per il piano di stampa riscaldato. Se questo valore è 0, il piano di stampa viene lasciato non riscaldato." +msgstr "Température utilisée pour le plateau de fabrication chauffé. Si elle est définie sur 0, le plateau de fabrication ne sera pas chauffé." #: /fdmprinter.def.json msgctxt "material_bed_temperature_layer_0 label" msgid "Build Plate Temperature Initial Layer" -msgstr "Temperatura piano di stampa Strato iniziale" +msgstr "Température du plateau couche initiale" #: /fdmprinter.def.json msgctxt "material_bed_temperature_layer_0 description" msgid "" "The temperature used for the heated build plate at the first layer. If this " "is 0, the build plate is left unheated during the first layer." -msgstr "Indica la temperatura usata per il piano di stampa riscaldato per il primo strato. Se questo valore è 0, il piano di stampa viene lasciato non riscaldato" -" per il primo strato." +msgstr "Température utilisée pour le plateau de fabrication chauffé à la première couche. Si elle est définie sur 0, le plateau de fabrication ne sera pas chauffé" +" lors de la première couche." #: /fdmprinter.def.json msgctxt "material_adhesion_tendency label" msgid "Adhesion Tendency" -msgstr "Tendenza di adesione" +msgstr "Tendance à l'adhérence" #: /fdmprinter.def.json msgctxt "material_adhesion_tendency description" msgid "Surface adhesion tendency." -msgstr "Tendenza di adesione superficiale." +msgstr "Tendance à l'adhérence de la surface." #: /fdmprinter.def.json msgctxt "material_surface_energy label" msgid "Surface Energy" -msgstr "Energia superficiale" +msgstr "Énergie de la surface" #: /fdmprinter.def.json msgctxt "material_surface_energy description" msgid "Surface energy." -msgstr "Energia superficiale." +msgstr "Énergie de la surface." #: /fdmprinter.def.json msgctxt "material_shrinkage_percentage label" msgid "Scaling Factor Shrinkage Compensation" -msgstr "Fattore di scala per la compensazione della contrazione" +msgstr "Mise à l'échelle du facteur de compensation de contraction" #: /fdmprinter.def.json msgctxt "material_shrinkage_percentage description" msgid "" "To compensate for the shrinkage of the material as it cools down, the model " "will be scaled with this factor." -msgstr "Per compensare la contrazione del materiale durante il raffreddamento, il modello sarà scalato con questo fattore." +msgstr "Pour compenser la contraction du matériau lors de son refroidissement, le modèle est mis à l'échelle avec ce facteur." #: /fdmprinter.def.json msgctxt "material_shrinkage_percentage_xy label" msgid "Horizontal Scaling Factor Shrinkage Compensation" -msgstr "Fattore di scala orizzontale per la compensazione della contrazione" +msgstr "Compensation du rétrécissement du facteur d'échelle horizontale" #: /fdmprinter.def.json msgctxt "material_shrinkage_percentage_xy description" msgid "" "To compensate for the shrinkage of the material as it cools down, the model " "will be scaled with this factor in the XY-direction (horizontally)." -msgstr "Per compensare la contrazione del materiale durante il raffreddamento, il modello sarà scalato con questo fattore nella direzione XY (orizzontalmente)." +msgstr "Pour compenser le rétrécissement du matériau lors du refroidissement, le modèle sera mis à l'échelle avec ce facteur dans la direction XY (horizontalement)." #: /fdmprinter.def.json msgctxt "material_shrinkage_percentage_z label" msgid "Vertical Scaling Factor Shrinkage Compensation" -msgstr "Fattore di scala verticale per la compensazione della contrazione" +msgstr "Compensation du rétrécissement du facteur d'échelle verticale" #: /fdmprinter.def.json msgctxt "material_shrinkage_percentage_z description" msgid "" "To compensate for the shrinkage of the material as it cools down, the model " "will be scaled with this factor in the Z-direction (vertically)." -msgstr "Per compensare la contrazione del materiale durante il raffreddamento, il modello sarà scalato con questo fattore nella direzione Z (verticalmente)." +msgstr "Pour compenser le rétrécissement du matériau lors du refroidissement, le modèle sera mis à l'échelle avec ce facteur dans la direction Z (verticalement)." #: /fdmprinter.def.json msgctxt "material_crystallinity label" msgid "Crystalline Material" -msgstr "Materiale cristallino" +msgstr "Matériau cristallin" #: /fdmprinter.def.json msgctxt "material_crystallinity description" @@ -2823,134 +2818,133 @@ msgid "" "Is this material the type that breaks off cleanly when heated (crystalline), " "or is it the type that produces long intertwined polymer chains (non-" "crystalline)?" -msgstr "Questo tipo di materiale è quello che si stacca in modo netto quando viene riscaldato (cristallino) oppure è il tipo che produce lunghe catene di polimeri" -" intrecciati (non cristallino)?" +msgstr "Ce matériau se casse-t-il proprement lorsqu'il est chauffé (cristallin) ou est-ce le type qui produit de longues chaînes polymères entrelacées (non cristallines) ?" #: /fdmprinter.def.json msgctxt "material_anti_ooze_retracted_position label" msgid "Anti-ooze Retracted Position" -msgstr "Posizione retratta anti fuoriuscita di materiale" +msgstr "Position anti-suintage rétractée" #: /fdmprinter.def.json msgctxt "material_anti_ooze_retracted_position description" msgid "How far the material needs to be retracted before it stops oozing." -msgstr "La distanza alla quale deve essere retratto il materiale prima che smetta di fuoriuscire." +msgstr "Jusqu'où le matériau doit être rétracté avant qu'il cesse de suinter." #: /fdmprinter.def.json msgctxt "material_anti_ooze_retraction_speed label" msgid "Anti-ooze Retraction Speed" -msgstr "Velocità di retrazione anti fuoriuscita del materiale" +msgstr "Vitesse de rétraction de l'anti-suintage" #: /fdmprinter.def.json msgctxt "material_anti_ooze_retraction_speed description" msgid "" "How fast the material needs to be retracted during a filament switch to " "prevent oozing." -msgstr "La velocità a cui deve essere retratto il materiale durante un cambio di filamento per evitare la fuoriuscita di materiale." +msgstr "À quelle vitesse le matériau doit-il être rétracté lors d'un changement de filament pour empêcher le suintage." #: /fdmprinter.def.json msgctxt "material_break_preparation_retracted_position label" msgid "Break Preparation Retracted Position" -msgstr "Posizione di retrazione prima della rottura" +msgstr "Préparation de rupture Position rétractée" #: /fdmprinter.def.json msgctxt "material_break_preparation_retracted_position description" msgid "How far the filament can be stretched before it breaks, while heated." -msgstr "La lunghezza massima di estensione del filamento prima che si rompa durante il riscaldamento." +msgstr "Jusqu'où le filament peut être étiré avant qu'il ne se casse, pendant qu'il est chauffé." #: /fdmprinter.def.json msgctxt "material_break_preparation_speed label" msgid "Break Preparation Retraction Speed" -msgstr "Velocità di retrazione prima della rottura" +msgstr "Vitesse de rétraction de préparation de rupture" #: /fdmprinter.def.json msgctxt "material_break_preparation_speed description" msgid "" "How fast the filament needs to be retracted just before breaking it off in a " "retraction." -msgstr "La velocità massima di retrazione del filamento prima che si rompa durante questa operazione." +msgstr "La vitesse à laquelle le filament doit être rétracté juste avant de le briser dans une rétraction." #: /fdmprinter.def.json msgctxt "material_break_preparation_temperature label" msgid "Break Preparation Temperature" -msgstr "Temperatura di preparazione alla rottura" +msgstr "Température de préparation de rupture" #: /fdmprinter.def.json msgctxt "material_break_preparation_temperature description" msgid "" "The temperature used to purge material, should be roughly equal to the " "highest possible printing temperature." -msgstr "La temperatura utilizzata per scaricare il materiale. deve essere più o meno uguale alla massima temperatura di stampa possibile." +msgstr "La température utilisée pour purger le matériau devrait être à peu près égale à la température d'impression la plus élevée possible." #: /fdmprinter.def.json msgctxt "material_break_retracted_position label" msgid "Break Retracted Position" -msgstr "Posizione di retrazione per la rottura" +msgstr "Position rétractée de rupture" #: /fdmprinter.def.json msgctxt "material_break_retracted_position description" msgid "How far to retract the filament in order to break it cleanly." -msgstr "La distanza di retrazione del filamento al fine di consentirne la rottura netta." +msgstr "Jusqu'où rétracter le filament afin de le casser proprement." #: /fdmprinter.def.json msgctxt "material_break_speed label" msgid "Break Retraction Speed" -msgstr "Velocità di retrazione per la rottura" +msgstr "Vitesse de rétraction de rupture" #: /fdmprinter.def.json msgctxt "material_break_speed description" msgid "" "The speed at which to retract the filament in order to break it cleanly." -msgstr "La velocità alla quale retrarre il filamento al fine di romperlo in modo netto." +msgstr "La vitesse à laquelle rétracter le filament afin de le rompre proprement." #: /fdmprinter.def.json msgctxt "material_break_temperature label" msgid "Break Temperature" -msgstr "Temperatura di rottura" +msgstr "Température de rupture" #: /fdmprinter.def.json msgctxt "material_break_temperature description" msgid "The temperature at which the filament is broken for a clean break." -msgstr "La temperatura a cui il filamento viene rotto, con una rottura netta." +msgstr "La température à laquelle le filament est cassé pour une rupture propre." #: /fdmprinter.def.json msgctxt "material_flush_purge_speed label" msgid "Flush Purge Speed" -msgstr "Velocità di svuotamento dello scarico" +msgstr "Vitesse de purge d'insertion" #: /fdmprinter.def.json msgctxt "material_flush_purge_speed description" msgid "How fast to prime the material after switching to a different material." -msgstr "Velocità di adescamento del materiale dopo il passaggio a un materiale diverso." +msgstr "La vitesse d'amorçage du matériau après le passage à un autre matériau." #: /fdmprinter.def.json msgctxt "material_flush_purge_length label" msgid "Flush Purge Length" -msgstr "Lunghezza di svuotamento dello scarico" +msgstr "Longueur de la purge d'insertion" #: /fdmprinter.def.json msgctxt "material_flush_purge_length description" msgid "" "How much material to use to purge the previous material out of the nozzle " "(in length of filament) when switching to a different material." -msgstr "Quantità di materiale da utilizzare per svuotare il materiale precedente dall'ugello (in lunghezza del filamento) quando si passa a un materiale diverso." +msgstr "La quantité de matériau à utiliser pour purger le matériau précédent de la buse (en longueur de filament) lors du passage à un autre matériau." #: /fdmprinter.def.json msgctxt "material_end_of_filament_purge_speed label" msgid "End of Filament Purge Speed" -msgstr "Velocità di svuotamento di fine filamento" +msgstr "Vitesse de purge de l'extrémité du filament" #: /fdmprinter.def.json msgctxt "material_end_of_filament_purge_speed description" msgid "" "How fast to prime the material after replacing an empty spool with a fresh " "spool of the same material." -msgstr "Velocità di adescamento del materiale dopo la sostituzione di una bobina vuota con una nuova dello stesso materiale." +msgstr "La vitesse d'amorçage du matériau après le remplacement d'une bobine vide par une nouvelle bobine du même matériau." #: /fdmprinter.def.json msgctxt "material_end_of_filament_purge_length label" msgid "End of Filament Purge Length" -msgstr "Lunghezza di svuotamento di fine filamento" +msgstr "Longueur de purge de l'extrémité du filament" #: /fdmprinter.def.json msgctxt "material_end_of_filament_purge_length description" @@ -2958,23 +2952,23 @@ msgid "" "How much material to use to purge the previous material out of the nozzle " "(in length of filament) when replacing an empty spool with a fresh spool of " "the same material." -msgstr "Quantità di materiale da utilizzare per svuotare il materiale precedente dall'ugello (in lunghezza del filamento) durante la sostituzione di una bobina" -" vuota con una nuova dello stesso materiale." +msgstr "La quantité de matériau à utiliser pour purger le matériau précédent de la buse (en longueur de filament) lors du remplacement d'une bobine vide par une" +" nouvelle bobine du même matériau." #: /fdmprinter.def.json msgctxt "material_maximum_park_duration label" msgid "Maximum Park Duration" -msgstr "Durata di posizionamento massima" +msgstr "Durée maximum du stationnement" #: /fdmprinter.def.json msgctxt "material_maximum_park_duration description" msgid "How long the material can be kept out of dry storage safely." -msgstr "Tempo per il quale è possibile mantenere il materiale all'esterno di un luogo di conservazione asciutto in sicurezza." +msgstr "La durée pendant laquelle le matériau peut être conservé à l'abri de la sécheresse." #: /fdmprinter.def.json msgctxt "material_no_load_move_factor label" msgid "No Load Move Factor" -msgstr "Fattore di spostamento senza carico" +msgstr "Facteur de déplacement sans chargement" #: /fdmprinter.def.json msgctxt "material_no_load_move_factor description" @@ -2982,242 +2976,243 @@ msgid "" "A factor indicating how much the filament gets compressed between the feeder " "and the nozzle chamber, used to determine how far to move the material for a " "filament switch." -msgstr "Fattore indicante la quantità di filamento che viene compressa tra l'alimentatore e la camera dell'ugello, usato per stabilire a quale distanza spostare" -" il materiale per un cambio di filamento." +msgstr "Un facteur indiquant la quantité de filament compressée entre le chargeur et la chambre de la buse ; utilisé pour déterminer jusqu'où faire avancer le" +" matériau pour changer de filament." #: /fdmprinter.def.json msgctxt "material_flow label" msgid "Flow" -msgstr "Flusso" +msgstr "Débit" #: /fdmprinter.def.json msgctxt "material_flow description" msgid "" "Flow compensation: the amount of material extruded is multiplied by this " "value." -msgstr "Determina la compensazione del flusso: la quantità di materiale estruso viene moltiplicata per questo valore." +msgstr "Compensation du débit : la quantité de matériau extrudée est multipliée par cette valeur." #: /fdmprinter.def.json msgctxt "wall_material_flow label" msgid "Wall Flow" -msgstr "Flusso della parete" +msgstr "Débit de paroi" #: /fdmprinter.def.json msgctxt "wall_material_flow description" msgid "Flow compensation on wall lines." -msgstr "Compensazione del flusso sulle linee perimetrali." +msgstr "Compensation de débit sur les lignes de la paroi." #: /fdmprinter.def.json msgctxt "wall_0_material_flow label" msgid "Outer Wall Flow" -msgstr "Flusso della parete esterna" +msgstr "Débit de paroi externe" #: /fdmprinter.def.json msgctxt "wall_0_material_flow description" msgid "Flow compensation on the outermost wall line." -msgstr "Compensazione del flusso sulla linea perimetrale più esterna." +msgstr "Compensation de débit sur la ligne de la paroi la plus à l'extérieur." #: /fdmprinter.def.json msgctxt "wall_x_material_flow label" msgid "Inner Wall(s) Flow" -msgstr "Flusso pareti interne" +msgstr "Débit de paroi(s) interne(s)" #: /fdmprinter.def.json msgctxt "wall_x_material_flow description" msgid "" "Flow compensation on wall lines for all wall lines except the outermost one." -msgstr "Compensazione del flusso sulle linee perimetrali per tutte le linee perimetrali tranne quella più esterna." +msgstr "Compensation de débit sur les lignes de la paroi pour toutes les lignes de paroi, à l'exception de la ligne la plus externe." #: /fdmprinter.def.json msgctxt "skin_material_flow label" msgid "Top/Bottom Flow" -msgstr "Flusso superiore/inferiore" +msgstr "Débit du dessus/dessous" #: /fdmprinter.def.json msgctxt "skin_material_flow description" msgid "Flow compensation on top/bottom lines." -msgstr "Compensazione del flusso sulle linee superiore/inferiore." +msgstr "Compensation de débit sur les lignes du dessus/dessous." #: /fdmprinter.def.json msgctxt "roofing_material_flow label" msgid "Top Surface Skin Flow" -msgstr "Flusso rivestimento esterno superficie superiore" +msgstr "Débit de la surface du dessus" #: /fdmprinter.def.json msgctxt "roofing_material_flow description" msgid "Flow compensation on lines of the areas at the top of the print." -msgstr "Compensazione del flusso sulle linee delle aree nella parte superiore della stampa." +msgstr "Compensation de débit sur les lignes des zones en haut de l'impression." #: /fdmprinter.def.json msgctxt "infill_material_flow label" msgid "Infill Flow" -msgstr "Flusso di riempimento" +msgstr "Débit de remplissage" #: /fdmprinter.def.json msgctxt "infill_material_flow description" msgid "Flow compensation on infill lines." -msgstr "Compensazione del flusso sulle linee di riempimento." +msgstr "Compensation de débit sur les lignes de remplissage." #: /fdmprinter.def.json msgctxt "skirt_brim_material_flow label" msgid "Skirt/Brim Flow" -msgstr "Flusso dello skirt/brim" +msgstr "Débit de la jupe/bordure" #: /fdmprinter.def.json msgctxt "skirt_brim_material_flow description" msgid "Flow compensation on skirt or brim lines." -msgstr "Compensazione del flusso sulle linee dello skirt o del brim." +msgstr "Compensation de débit sur les lignes de jupe ou bordure." #: /fdmprinter.def.json msgctxt "support_material_flow label" msgid "Support Flow" -msgstr "Flusso del supporto" +msgstr "Débit du support" #: /fdmprinter.def.json msgctxt "support_material_flow description" msgid "Flow compensation on support structure lines." -msgstr "Compensazione del flusso sulle linee di supporto." +msgstr "Compensation de débit sur les lignes de support." #: /fdmprinter.def.json msgctxt "support_interface_material_flow label" msgid "Support Interface Flow" -msgstr "Flusso interfaccia di supporto" +msgstr "Débit de l'interface de support" #: /fdmprinter.def.json msgctxt "support_interface_material_flow description" msgid "Flow compensation on lines of support roof or floor." -msgstr "Compensazione del flusso sulle linee di supporto superiore o inferiore." +msgstr "Compensation de débit sur les lignes de plafond ou de bas de support." #: /fdmprinter.def.json msgctxt "support_roof_material_flow label" msgid "Support Roof Flow" -msgstr "Flusso supporto superiore" +msgstr "Débit du plafond de support" #: /fdmprinter.def.json msgctxt "support_roof_material_flow description" msgid "Flow compensation on support roof lines." -msgstr "Compensazione del flusso sulle linee di supporto superiore." +msgstr "Compensation de débit sur les lignes du plafond de support." #: /fdmprinter.def.json msgctxt "support_bottom_material_flow label" msgid "Support Floor Flow" -msgstr "Flusso supporto inferiore" +msgstr "Débit du bas de support" #: /fdmprinter.def.json msgctxt "support_bottom_material_flow description" msgid "Flow compensation on support floor lines." -msgstr "Compensazione del flusso sulle linee di supporto inferiore." +msgstr "Compensation de débit sur les lignes de bas de support." #: /fdmprinter.def.json msgctxt "prime_tower_flow label" msgid "Prime Tower Flow" -msgstr "Flusso torre di innesco" +msgstr "Débit de la tour d'amorçage" #: /fdmprinter.def.json msgctxt "prime_tower_flow description" msgid "Flow compensation on prime tower lines." -msgstr "Compensazione del flusso sulle linee della torre di innesco." +msgstr "Compensation de débit sur les lignes de la tour d'amorçage." #: /fdmprinter.def.json msgctxt "material_flow_layer_0 label" msgid "Initial Layer Flow" -msgstr "Flusso dello strato iniziale" +msgstr "Débit de la couche initiale" #: /fdmprinter.def.json msgctxt "material_flow_layer_0 description" msgid "" "Flow compensation for the first layer: the amount of material extruded on " "the initial layer is multiplied by this value." -msgstr "Determina la compensazione del flusso per il primo strato: la quantità di materiale estruso sullo strato iniziale viene moltiplicata per questo valore." +msgstr "Compensation du débit pour la couche initiale : la quantité de matériau extrudée sur la couche initiale est multipliée par cette valeur." #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 label" msgid "Initial Layer Inner Wall Flow" -msgstr "Initial Layer Inner Wall Flow" +msgstr "Débit de la paroi intérieure de la couche initiale" #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 description" msgid "" "Flow compensation on wall lines for all wall lines except the outermost one, " "but only for the first layer" -msgstr "Flow compensation on wall lines for all wall lines except the outermost one, but only for the first layer" +msgstr "Compensation de débit sur les lignes de la paroi pour toutes les lignes de paroi, à l'exception de la ligne la plus externe, mais uniquement pour la première" +" couche." #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 label" msgid "Initial Layer Outer Wall Flow" -msgstr "Initial Layer Outer Wall Flow" +msgstr "Débit de la paroi extérieure de la couche initiale" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 description" msgid "Flow compensation on the outermost wall line of the first layer." -msgstr "Flow compensation on the outermost wall line of the first layer." +msgstr "Compensation de débit sur la ligne de la paroi la plus à l'extérieur de la première couche." #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 label" msgid "Initial Layer Bottom Flow" -msgstr "Initial Layer Bottom Flow" +msgstr "Débit des lignes du dessous de la couche initiale" #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 description" msgid "Flow compensation on bottom lines of the first layer" -msgstr "Flow compensation on bottom lines of the first layer" +msgstr "Compensation de débit sur les lignes du dessous de la première couche" #: /fdmprinter.def.json msgctxt "material_standby_temperature label" msgid "Standby Temperature" -msgstr "Temperatura di Standby" +msgstr "Température de veille" #: /fdmprinter.def.json msgctxt "material_standby_temperature description" msgid "" "The temperature of the nozzle when another nozzle is currently used for " "printing." -msgstr "Indica la temperatura dell'ugello quando un altro ugello è attualmente in uso per la stampa." +msgstr "La température de la buse lorsqu'une autre buse est actuellement utilisée pour l'impression." #: /fdmprinter.def.json msgctxt "speed label" msgid "Speed" -msgstr "Velocità" +msgstr "Vitesse" #: /fdmprinter.def.json msgctxt "speed description" msgid "Speed" -msgstr "Velocità" +msgstr "Vitesse" #: /fdmprinter.def.json msgctxt "speed_print label" msgid "Print Speed" -msgstr "Velocità di stampa" +msgstr "Vitesse d’impression" #: /fdmprinter.def.json msgctxt "speed_print description" msgid "The speed at which printing happens." -msgstr "Indica la velocità alla quale viene effettuata la stampa." +msgstr "La vitesse à laquelle l'impression s'effectue." #: /fdmprinter.def.json msgctxt "speed_infill label" msgid "Infill Speed" -msgstr "Velocità di riempimento" +msgstr "Vitesse de remplissage" #: /fdmprinter.def.json msgctxt "speed_infill description" msgid "The speed at which infill is printed." -msgstr "Indica la velocità alla quale viene stampato il riempimento." +msgstr "La vitesse à laquelle le remplissage est imprimé." #: /fdmprinter.def.json msgctxt "speed_wall label" msgid "Wall Speed" -msgstr "Velocità di stampa della parete" +msgstr "Vitesse d'impression de la paroi" #: /fdmprinter.def.json msgctxt "speed_wall description" msgid "The speed at which the walls are printed." -msgstr "Indica la velocità alla quale vengono stampate le pareti." +msgstr "La vitesse à laquelle les parois sont imprimées." #: /fdmprinter.def.json msgctxt "speed_wall_0 label" msgid "Outer Wall Speed" -msgstr "Velocità di stampa della parete esterna" +msgstr "Vitesse d'impression de la paroi externe" #: /fdmprinter.def.json msgctxt "speed_wall_0 description" @@ -3226,14 +3221,13 @@ msgid "" "at a lower speed improves the final skin quality. However, having a large " "difference between the inner wall speed and the outer wall speed will affect " "quality in a negative way." -msgstr "Indica la velocità alla quale vengono stampate le pareti più esterne. La stampa della parete esterna ad una velocità inferiore migliora la qualità finale" -" del rivestimento. Tuttavia, una grande differenza tra la velocità di stampa della parete interna e quella della parete esterna avrà effetti negativi sulla" -" qualità." +msgstr "La vitesse à laquelle les parois externes sont imprimées. L’impression de la paroi externe à une vitesse inférieure améliore la qualité finale de la coque." +" Néanmoins, si la différence entre la vitesse de la paroi interne et la vitesse de la paroi externe est importante, la qualité finale sera réduite." #: /fdmprinter.def.json msgctxt "speed_wall_x label" msgid "Inner Wall Speed" -msgstr "Velocità di stampa della parete interna" +msgstr "Vitesse d'impression de la paroi interne" #: /fdmprinter.def.json msgctxt "speed_wall_x description" @@ -3241,34 +3235,33 @@ msgid "" "The speed at which all inner walls are printed. Printing the inner wall " "faster than the outer wall will reduce printing time. It works well to set " "this in between the outer wall speed and the infill speed." -msgstr "Indica la velocità alla quale vengono stampate tutte le pareti interne. La stampa della parete interna eseguita più velocemente di quella della parete" -" esterna consentirà di ridurre il tempo di stampa. Si consiglia di impostare questo parametro ad un valore intermedio tra la velocità della parete esterna" -" e quella di riempimento." +msgstr "La vitesse à laquelle toutes les parois internes seront imprimées. L’impression de la paroi interne à une vitesse supérieure réduira le temps d'impression" +" global. Il est bon de définir cette vitesse entre celle de l'impression de la paroi externe et du remplissage." #: /fdmprinter.def.json msgctxt "speed_roofing label" msgid "Top Surface Skin Speed" -msgstr "Velocità del rivestimento superficie" +msgstr "Vitesse de la couche extérieure de la surface supérieure" #: /fdmprinter.def.json msgctxt "speed_roofing description" msgid "The speed at which top surface skin layers are printed." -msgstr "Indica la velocità di stampa degli strati superiori." +msgstr "La vitesse à laquelle les couches extérieures de la surface supérieure sont imprimées." #: /fdmprinter.def.json msgctxt "speed_topbottom label" msgid "Top/Bottom Speed" -msgstr "Velocità di stampa delle parti superiore/inferiore" +msgstr "Vitesse d'impression du dessus/dessous" #: /fdmprinter.def.json msgctxt "speed_topbottom description" msgid "The speed at which top/bottom layers are printed." -msgstr "Indica la velocità alla quale vengono stampati gli strati superiore/inferiore." +msgstr "La vitesse à laquelle les couches du dessus/dessous sont imprimées." #: /fdmprinter.def.json msgctxt "speed_support label" msgid "Support Speed" -msgstr "Velocità di stampa del supporto" +msgstr "Vitesse d'impression des supports" #: /fdmprinter.def.json msgctxt "speed_support description" @@ -3276,62 +3269,62 @@ msgid "" "The speed at which the support structure is printed. Printing support at " "higher speeds can greatly reduce printing time. The surface quality of the " "support structure is not important since it is removed after printing." -msgstr "Indica la velocità alla quale viene stampata la struttura di supporto. La stampa della struttura di supporto a velocità elevate può ridurre considerevolmente" -" i tempi di stampa. La qualità superficiale della struttura di supporto di norma non riveste grande importanza in quanto viene rimossa dopo la stampa." +msgstr "La vitesse à laquelle les supports sont imprimés. Imprimer les supports à une vitesse supérieure peut fortement accélérer l’impression. Par ailleurs, la" +" qualité de la structure des supports n’a généralement pas beaucoup d’importance du fait qu'elle est retirée après l'impression." #: /fdmprinter.def.json msgctxt "speed_support_infill label" msgid "Support Infill Speed" -msgstr "Velocità di riempimento del supporto" +msgstr "Vitesse d'impression du remplissage de support" #: /fdmprinter.def.json msgctxt "speed_support_infill description" msgid "" "The speed at which the infill of support is printed. Printing the infill at " "lower speeds improves stability." -msgstr "Indica la velocità alla quale viene stampato il riempimento del supporto. La stampa del riempimento a velocità inferiori migliora la stabilità." +msgstr "La vitesse à laquelle le remplissage de support est imprimé. L'impression du remplissage à une vitesse plus faible permet de renforcer la stabilité." #: /fdmprinter.def.json msgctxt "speed_support_interface label" msgid "Support Interface Speed" -msgstr "Velocità interfaccia supporto" +msgstr "Vitesse d'impression de l'interface de support" #: /fdmprinter.def.json msgctxt "speed_support_interface description" msgid "" "The speed at which the roofs and floors of support are printed. Printing " "them at lower speeds can improve overhang quality." -msgstr "Velocità alla quale vengono stampate le parti superiori e inferiori del supporto. La loro stampa a velocità inferiori può migliorare la qualità dello sbalzo." +msgstr "La vitesse à laquelle les plafonds et bas de support sont imprimés. Les imprimer à de plus faibles vitesses améliore la qualité des porte-à-faux." #: /fdmprinter.def.json msgctxt "speed_support_roof label" msgid "Support Roof Speed" -msgstr "Velocità di stampa della parte superiore (tetto) del supporto" +msgstr "Vitesse d'impression des plafonds de support" #: /fdmprinter.def.json msgctxt "speed_support_roof description" msgid "" "The speed at which the roofs of support are printed. Printing them at lower " "speeds can improve overhang quality." -msgstr "Velocità alla quale vengono stampate le parti superiori del supporto. La loro stampa a velocità inferiori può migliorare la qualità dello sbalzo." +msgstr "La vitesse à laquelle les plafonds de support sont imprimés. Les imprimer à de plus faibles vitesses améliore la qualité des porte-à-faux." #: /fdmprinter.def.json msgctxt "speed_support_bottom label" msgid "Support Floor Speed" -msgstr "Velocità di stampa della parte inferiore del supporto" +msgstr "Vitesse d'impression des bas de support" #: /fdmprinter.def.json msgctxt "speed_support_bottom description" msgid "" "The speed at which the floor of support is printed. Printing it at lower " "speed can improve adhesion of support on top of your model." -msgstr "Velocità alla quale viene stampata la parte inferiore del supporto. La stampa ad una velocità inferiore può migliorare l'adesione del supporto nella parte" -" superiore del modello." +msgstr "La vitesse à laquelle le bas de support est imprimé. L'impression à une vitesse plus faible permet de renforcer l'adhésion du support au-dessus de votre" +" modèle." #: /fdmprinter.def.json msgctxt "speed_prime_tower label" msgid "Prime Tower Speed" -msgstr "Velocità della torre di innesco" +msgstr "Vitesse de la tour d'amorçage" #: /fdmprinter.def.json msgctxt "speed_prime_tower description" @@ -3339,23 +3332,23 @@ msgid "" "The speed at which the prime tower is printed. Printing the prime tower " "slower can make it more stable when the adhesion between the different " "filaments is suboptimal." -msgstr "Indica la velocità alla quale è stampata la torre di innesco. La stampa della torre di innesco a una velocità inferiore può renderla maggiormente stabile" -" quando l’adesione tra i diversi filamenti non è ottimale." +msgstr "La vitesse à laquelle la tour d'amorçage est imprimée. L'impression plus lente de la tour d'amorçage peut la rendre plus stable lorsque l'adhérence entre" +" les différents filaments est sous-optimale." #: /fdmprinter.def.json msgctxt "speed_travel label" msgid "Travel Speed" -msgstr "Velocità degli spostamenti" +msgstr "Vitesse de déplacement" #: /fdmprinter.def.json msgctxt "speed_travel description" msgid "The speed at which travel moves are made." -msgstr "Indica la velocità alla quale vengono effettuati gli spostamenti." +msgstr "La vitesse à laquelle les déplacements s'effectuent." #: /fdmprinter.def.json msgctxt "speed_layer_0 label" msgid "Initial Layer Speed" -msgstr "Velocità di stampa dello strato iniziale" +msgstr "Vitesse de la couche initiale" #: /fdmprinter.def.json msgctxt "speed_layer_0 description" @@ -3363,25 +3356,25 @@ msgid "" "The speed for the initial layer. A lower value is advised to improve " "adhesion to the build plate. Does not affect the build plate adhesion " "structures themselves, like brim and raft." -msgstr "La velocità dello strato iniziale. È consigliabile un valore inferiore per migliorare l'adesione al piano di stampa. Non influisce sulle strutture di adesione" -" del piano di stampa stesse, come brim e raft." +msgstr "La vitesse de la couche initiale. Une valeur plus faible est recommandée pour améliorer l'adhérence au plateau de fabrication. N'affecte pas les structures" +" d'adhérence au plateau, comme la bordure et le radeau." #: /fdmprinter.def.json msgctxt "speed_print_layer_0 label" msgid "Initial Layer Print Speed" -msgstr "Velocità di stampa strato iniziale" +msgstr "Vitesse d’impression de la couche initiale" #: /fdmprinter.def.json msgctxt "speed_print_layer_0 description" msgid "" "The speed of printing for the initial layer. A lower value is advised to " "improve adhesion to the build plate." -msgstr "Indica la velocità di stampa per lo strato iniziale. Un valore inferiore è consigliabile per migliorare l’adesione al piano di stampa." +msgstr "La vitesse d'impression de la couche initiale. Une valeur plus faible est recommandée pour améliorer l'adhérence au plateau." #: /fdmprinter.def.json msgctxt "speed_travel_layer_0 label" msgid "Initial Layer Travel Speed" -msgstr "Velocità di spostamento dello strato iniziale" +msgstr "Vitesse de déplacement de la couche initiale" #: /fdmprinter.def.json msgctxt "speed_travel_layer_0 description" @@ -3390,14 +3383,13 @@ msgid "" "prevent pulling previously printed parts away from the build plate. The " "value of this setting can automatically be calculated from the ratio between " "the Travel Speed and the Print Speed." -msgstr "Indica la velocità di spostamento per lo strato iniziale. Un valore inferiore è consigliabile per evitare di rimuovere le parti precedentemente stampate" -" dal piano di stampa. Il valore di questa impostazione può essere calcolato automaticamente dal rapporto tra la velocità di spostamento e la velocità di" -" stampa." +msgstr "Vitesse des mouvements de déplacement dans la couche initiale. Une valeur plus faible est recommandée pour éviter que les pièces déjà imprimées ne s'écartent" +" du plateau. La valeur de ce paramètre peut être calculée automatiquement à partir du ratio entre la vitesse des mouvements et la vitesse d'impression." #: /fdmprinter.def.json msgctxt "skirt_brim_speed label" msgid "Skirt/Brim Speed" -msgstr "Velocità dello skirt/brim" +msgstr "Vitesse d'impression de la jupe/bordure" #: /fdmprinter.def.json msgctxt "skirt_brim_speed description" @@ -3405,13 +3397,13 @@ msgid "" "The speed at which the skirt and brim are printed. Normally this is done at " "the initial layer speed, but sometimes you might want to print the skirt or " "brim at a different speed." -msgstr "Indica la velocità a cui sono stampati lo skirt ed il brim. Normalmente questa operazione viene svolta alla velocità di stampa dello strato iniziale, ma" -" a volte è possibile che si desideri stampare lo skirt o il brim ad una velocità diversa." +msgstr "La vitesse à laquelle la jupe et la bordure sont imprimées. Normalement, cette vitesse est celle de la couche initiale, mais il est parfois nécessaire" +" d’imprimer la jupe ou la bordure à une vitesse différente." #: /fdmprinter.def.json msgctxt "speed_z_hop label" msgid "Z Hop Speed" -msgstr "Velocità di sollevamento Z" +msgstr "Vitesse du décalage en Z" #: /fdmprinter.def.json msgctxt "speed_z_hop description" @@ -3419,13 +3411,13 @@ msgid "" "The speed at which the vertical Z movement is made for Z Hops. This is " "typically lower than the print speed since the build plate or machine's " "gantry is harder to move." -msgstr "Velocità alla quale viene eseguito il movimento Z verticale per i sollevamenti in Z. In genere è inferiore alla velocità di stampa, dal momento che il" -" piano o il corpo di stampa della macchina sono più difficili da spostare." +msgstr "La vitesse à laquelle le mouvement vertical en Z est effectué pour des décalages en Z. Cette vitesse est généralement inférieure à la vitesse d'impression" +" car le plateau ou le portique de la machine est plus difficile à déplacer." #: /fdmprinter.def.json msgctxt "speed_slowdown_layers label" msgid "Number of Slower Layers" -msgstr "Numero di strati stampati a velocità inferiore" +msgstr "Nombre de couches plus lentes" #: /fdmprinter.def.json msgctxt "speed_slowdown_layers description" @@ -3433,13 +3425,13 @@ msgid "" "The first few layers are printed slower than the rest of the model, to get " "better adhesion to the build plate and improve the overall success rate of " "prints. The speed is gradually increased over these layers." -msgstr "I primi strati vengono stampati più lentamente rispetto al resto del modello, per ottenere una migliore adesione al piano di stampa ed ottimizzare nel" -" complesso la percentuale di successo delle stampe. La velocità aumenta gradualmente nel corso di esecuzione degli strati successivi." +msgstr "Les premières couches sont imprimées plus lentement que le reste du modèle afin d’obtenir une meilleure adhérence au plateau et d’améliorer le taux de" +" réussite global des impressions. La vitesse augmente graduellement à chacune de ces couches." #: /fdmprinter.def.json msgctxt "speed_equalize_flow_width_factor label" msgid "Flow Equalization Ratio" -msgstr "Rapporto di equalizzazione del flusso" +msgstr "Rapport d'égalisation des débits" #: /fdmprinter.def.json msgctxt "speed_equalize_flow_width_factor description" @@ -3450,219 +3442,218 @@ msgid "" "normal Line Width are printed twice as fast and lines twice as wide are " "printed half as fast. A value larger than 100% can help to compensate for " "the higher pressure required to extrude wide lines." -msgstr "Fattore di correzione della velocità basato sulla larghezza di estrusione. A 0% la velocità di movimento viene mantenuta costante alla velocità di stampa." -" Al 100% la velocità di movimento viene regolata in modo da mantenere costante il flusso (in mm³/s), ovvero le linee la cui larghezza è metà di quella" -" normale vengono stampate due volte più velocemente e le linee larghe il doppio vengono stampate a metà della velocità. Un valore maggiore di 100% può aiutare" -" a compensare la pressione più alta richiesta per estrudere linee larghe." +msgstr "Facteur de correction de la largeur d'extrusion en fonction de la vitesse. À 0 %, la vitesse de mouvement reste constante à la vitesse d'impression. À" +" 100 %, la vitesse de mouvement est ajustée de sorte que le débit (en mm³/s) reste constant, c'est-à-dire que les lignes à la moitié de la largeur de ligne" +" normale sont imprimées deux fois plus vite et que les lignes à la moitié de la largeur sont imprimées aussi vite. Une valeur supérieure à 100 % peut aider" +" à compenser la pression plus élevée requise pour extruder les lignes larges." #: /fdmprinter.def.json msgctxt "acceleration_enabled label" msgid "Enable Acceleration Control" -msgstr "Abilita controllo accelerazione" +msgstr "Activer le contrôle d'accélération" #: /fdmprinter.def.json msgctxt "acceleration_enabled description" msgid "" "Enables adjusting the print head acceleration. Increasing the accelerations " "can reduce printing time at the cost of print quality." -msgstr "Abilita la regolazione dell’accelerazione della testina di stampa. Aumentando le accelerazioni il tempo di stampa si riduce a discapito della qualità di" -" stampa." +msgstr "Active le réglage de l'accélération de la tête d'impression. Augmenter les accélérations peut réduire la durée d'impression au détriment de la qualité" +" d'impression." #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled label" msgid "Enable Travel Acceleration" -msgstr "Enable Travel Acceleration" +msgstr "Activer l'accélération de déplacement" #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled description" msgid "" "Use a separate acceleration rate for travel moves. If disabled, travel moves " "will use the acceleration value of the printed line at their destination." -msgstr "Use a separate acceleration rate for travel moves. If disabled, travel moves will use the acceleration value of the printed line at their destination." +msgstr "Utilisez un taux d'accélération différent pour les déplacements. Si cette option est désactivée, les déplacements utiliseront la même accélération que" +" celle de la ligne imprimée à l'emplacement cible." #: /fdmprinter.def.json msgctxt "acceleration_print label" msgid "Print Acceleration" -msgstr "Accelerazione di stampa" +msgstr "Accélération de l'impression" #: /fdmprinter.def.json msgctxt "acceleration_print description" msgid "The acceleration with which printing happens." -msgstr "L’accelerazione con cui avviene la stampa." +msgstr "L'accélération selon laquelle l'impression s'effectue." #: /fdmprinter.def.json msgctxt "acceleration_infill label" msgid "Infill Acceleration" -msgstr "Accelerazione riempimento" +msgstr "Accélération de remplissage" #: /fdmprinter.def.json msgctxt "acceleration_infill description" msgid "The acceleration with which infill is printed." -msgstr "L’accelerazione con cui viene stampato il riempimento." +msgstr "L'accélération selon laquelle le remplissage est imprimé." #: /fdmprinter.def.json msgctxt "acceleration_wall label" msgid "Wall Acceleration" -msgstr "Accelerazione parete" +msgstr "Accélération de la paroi" #: /fdmprinter.def.json msgctxt "acceleration_wall description" msgid "The acceleration with which the walls are printed." -msgstr "Indica l’accelerazione alla quale vengono stampate le pareti." +msgstr "L'accélération selon laquelle les parois sont imprimées." #: /fdmprinter.def.json msgctxt "acceleration_wall_0 label" msgid "Outer Wall Acceleration" -msgstr "Accelerazione parete esterna" +msgstr "Accélération de la paroi externe" #: /fdmprinter.def.json msgctxt "acceleration_wall_0 description" msgid "The acceleration with which the outermost walls are printed." -msgstr "Indica l’accelerazione alla quale vengono stampate le pareti più esterne." +msgstr "L'accélération selon laquelle les parois externes sont imprimées." #: /fdmprinter.def.json msgctxt "acceleration_wall_x label" msgid "Inner Wall Acceleration" -msgstr "Accelerazione parete interna" +msgstr "Accélération de la paroi intérieure" #: /fdmprinter.def.json msgctxt "acceleration_wall_x description" msgid "The acceleration with which all inner walls are printed." -msgstr "Indica l’accelerazione alla quale vengono stampate tutte le pareti interne." +msgstr "L'accélération selon laquelle toutes les parois intérieures sont imprimées." #: /fdmprinter.def.json msgctxt "acceleration_roofing label" msgid "Top Surface Skin Acceleration" -msgstr "Accelerazione del rivestimento superficie superiore" +msgstr "Accélération de couche extérieure de surface supérieure" #: /fdmprinter.def.json msgctxt "acceleration_roofing description" msgid "The acceleration with which top surface skin layers are printed." -msgstr "Indica l'accelerazione alla quale vengono stampati gli strati rivestimento superficie superiore." +msgstr "La vitesse à laquelle les couches extérieures de surface supérieure sont imprimées." #: /fdmprinter.def.json msgctxt "acceleration_topbottom label" msgid "Top/Bottom Acceleration" -msgstr "Accelerazione strato superiore/inferiore" +msgstr "Accélération du dessus/dessous" #: /fdmprinter.def.json msgctxt "acceleration_topbottom description" msgid "The acceleration with which top/bottom layers are printed." -msgstr "Indica l’accelerazione alla quale vengono stampati gli strati superiore/inferiore." +msgstr "L'accélération selon laquelle les couches du dessus/dessous sont imprimées." #: /fdmprinter.def.json msgctxt "acceleration_support label" msgid "Support Acceleration" -msgstr "Accelerazione supporto" +msgstr "Accélération du support" #: /fdmprinter.def.json msgctxt "acceleration_support description" msgid "The acceleration with which the support structure is printed." -msgstr "Indica l’accelerazione con cui viene stampata la struttura di supporto." +msgstr "L'accélération selon laquelle la structure de support est imprimée." #: /fdmprinter.def.json msgctxt "acceleration_support_infill label" msgid "Support Infill Acceleration" -msgstr "Accelerazione riempimento supporto" +msgstr "Accélération de remplissage du support" #: /fdmprinter.def.json msgctxt "acceleration_support_infill description" msgid "The acceleration with which the infill of support is printed." -msgstr "Indica l’accelerazione con cui viene stampato il riempimento del supporto." +msgstr "L'accélération selon laquelle le remplissage de support est imprimé." #: /fdmprinter.def.json msgctxt "acceleration_support_interface label" msgid "Support Interface Acceleration" -msgstr "Accelerazione interfaccia supporto" +msgstr "Accélération de l'interface du support" #: /fdmprinter.def.json msgctxt "acceleration_support_interface description" msgid "" "The acceleration with which the roofs and floors of support are printed. " "Printing them at lower acceleration can improve overhang quality." -msgstr "Accelerazione alla quale vengono stampate le parti superiori e inferiori del supporto. La loro stampa ad un'accelerazione inferiore può migliorare la qualità" -" dello sbalzo." +msgstr "L'accélération selon laquelle les plafonds et bas de support sont imprimés. Les imprimer avec une accélération plus faible améliore la qualité des porte-à-faux." #: /fdmprinter.def.json msgctxt "acceleration_support_roof label" msgid "Support Roof Acceleration" -msgstr "Accelerazione parte superiore del supporto" +msgstr "Accélération des plafonds de support" #: /fdmprinter.def.json msgctxt "acceleration_support_roof description" msgid "" "The acceleration with which the roofs of support are printed. Printing them " "at lower acceleration can improve overhang quality." -msgstr "Accelerazione alla quale vengono stampate le parti superiori del supporto. La loro stampa ad un'accelerazione inferiore può migliorare la qualità dello" -" sbalzo." +msgstr "L'accélération selon laquelle les plafonds de support sont imprimés. Les imprimer avec une accélération plus faible améliore la qualité des porte-à-faux." #: /fdmprinter.def.json msgctxt "acceleration_support_bottom label" msgid "Support Floor Acceleration" -msgstr "Accelerazione parte inferiore del supporto" +msgstr "Accélération des bas de support" #: /fdmprinter.def.json msgctxt "acceleration_support_bottom description" msgid "" "The acceleration with which the floors of support are printed. Printing them " "at lower acceleration can improve adhesion of support on top of your model." -msgstr "Accelerazione alla quale vengono stampate le parti inferiori del supporto. La stampa ad una accelerazione inferiore può migliorare l'adesione del supporto" -" nella parte superiore del modello." +msgstr "L'accélération selon laquelle les bas de support sont imprimés. Les imprimer avec une accélération plus faible renforce l'adhésion du support au-dessus" +" du modèle." #: /fdmprinter.def.json msgctxt "acceleration_prime_tower label" msgid "Prime Tower Acceleration" -msgstr "Accelerazione della torre di innesco" +msgstr "Accélération de la tour d'amorçage" #: /fdmprinter.def.json msgctxt "acceleration_prime_tower description" msgid "The acceleration with which the prime tower is printed." -msgstr "Indica l’accelerazione con cui viene stampata la torre di innesco." +msgstr "L'accélération selon laquelle la tour d'amorçage est imprimée." #: /fdmprinter.def.json msgctxt "acceleration_travel label" msgid "Travel Acceleration" -msgstr "Accelerazione spostamenti" +msgstr "Accélération de déplacement" #: /fdmprinter.def.json msgctxt "acceleration_travel description" msgid "The acceleration with which travel moves are made." -msgstr "Indica l’accelerazione alla quale vengono effettuati gli spostamenti." +msgstr "L'accélération selon laquelle les déplacements s'effectuent." #: /fdmprinter.def.json msgctxt "acceleration_layer_0 label" msgid "Initial Layer Acceleration" -msgstr "Accelerazione dello strato iniziale" +msgstr "Accélération de la couche initiale" #: /fdmprinter.def.json msgctxt "acceleration_layer_0 description" msgid "The acceleration for the initial layer." -msgstr "Indica l’accelerazione dello strato iniziale." +msgstr "L'accélération pour la couche initiale." #: /fdmprinter.def.json msgctxt "acceleration_print_layer_0 label" msgid "Initial Layer Print Acceleration" -msgstr "Accelerazione di stampa strato iniziale" +msgstr "Accélération de l'impression de la couche initiale" #: /fdmprinter.def.json msgctxt "acceleration_print_layer_0 description" msgid "The acceleration during the printing of the initial layer." -msgstr "Indica l’accelerazione durante la stampa dello strato iniziale." +msgstr "L'accélération durant l'impression de la couche initiale." #: /fdmprinter.def.json msgctxt "acceleration_travel_layer_0 label" msgid "Initial Layer Travel Acceleration" -msgstr "Accelerazione spostamenti dello strato iniziale" +msgstr "Accélération de déplacement de la couche initiale" #: /fdmprinter.def.json msgctxt "acceleration_travel_layer_0 description" msgid "The acceleration for travel moves in the initial layer." -msgstr "Indica l’accelerazione degli spostamenti dello strato iniziale." +msgstr "L'accélération pour les déplacements dans la couche initiale." #: /fdmprinter.def.json msgctxt "acceleration_skirt_brim label" msgid "Skirt/Brim Acceleration" -msgstr "Accelerazione skirt/brim" +msgstr "Accélération de la jupe/bordure" #: /fdmprinter.def.json msgctxt "acceleration_skirt_brim description" @@ -3670,13 +3661,13 @@ msgid "" "The acceleration with which the skirt and brim are printed. Normally this is " "done with the initial layer acceleration, but sometimes you might want to " "print the skirt or brim at a different acceleration." -msgstr "Indica l’accelerazione alla quale sono stampati lo skirt ed il brim. Normalmente questa operazione viene svolta all’accelerazione dello strato iniziale," -" ma a volte è possibile che si desideri stampare lo skirt o il brim ad un’accelerazione diversa." +msgstr "L'accélération selon laquelle la jupe et la bordure sont imprimées. Normalement, cette accélération est celle de la couche initiale, mais il est parfois" +" nécessaire d’imprimer la jupe ou la bordure à une accélération différente." #: /fdmprinter.def.json msgctxt "jerk_enabled label" msgid "Enable Jerk Control" -msgstr "Abilita controllo jerk" +msgstr "Activer le contrôle de saccade" #: /fdmprinter.def.json msgctxt "jerk_enabled description" @@ -3684,327 +3675,329 @@ msgid "" "Enables adjusting the jerk of print head when the velocity in the X or Y " "axis changes. Increasing the jerk can reduce printing time at the cost of " "print quality." -msgstr "Abilita la regolazione del jerk della testina di stampa quando la velocità nell’asse X o Y cambia. Aumentando il jerk il tempo di stampa si riduce a discapito" -" della qualità di stampa." +msgstr "Active le réglage de la saccade de la tête d'impression lorsque la vitesse sur l'axe X ou Y change. Augmenter les saccades peut réduire la durée d'impression" +" au détriment de la qualité d'impression." #: /fdmprinter.def.json msgctxt "jerk_travel_enabled label" msgid "Enable Travel Jerk" -msgstr "Enable Travel Jerk" +msgstr "Activer la saccade de déplacement" #: /fdmprinter.def.json msgctxt "jerk_travel_enabled description" msgid "" "Use a separate jerk rate for travel moves. If disabled, travel moves will " "use the jerk value of the printed line at their destination." -msgstr "Use a separate jerk rate for travel moves. If disabled, travel moves will use the jerk value of the printed line at their destination." +msgstr "Utilisez un taux de saccades différent pour les déplacements. Si cette option est désactivée, les déplacements utiliseront les mêmes saccades que celle" +" de la ligne imprimée à l'emplacement cible." #: /fdmprinter.def.json msgctxt "jerk_print label" msgid "Print Jerk" -msgstr "Jerk stampa" +msgstr "Imprimer en saccade" #: /fdmprinter.def.json msgctxt "jerk_print description" msgid "The maximum instantaneous velocity change of the print head." -msgstr "Indica il cambio della velocità istantanea massima della testina di stampa." +msgstr "Le changement instantané maximal de vitesse de la tête d'impression." #: /fdmprinter.def.json msgctxt "jerk_infill label" msgid "Infill Jerk" -msgstr "Jerk riempimento" +msgstr "Saccade de remplissage" #: /fdmprinter.def.json msgctxt "jerk_infill description" msgid "The maximum instantaneous velocity change with which infill is printed." -msgstr "Indica il cambio della velocità istantanea massima con cui viene stampato il riempimento." +msgstr "Le changement instantané maximal de vitesse selon lequel le remplissage est imprimé." #: /fdmprinter.def.json msgctxt "jerk_wall label" msgid "Wall Jerk" -msgstr "Jerk parete" +msgstr "Saccade de paroi" #: /fdmprinter.def.json msgctxt "jerk_wall description" msgid "" "The maximum instantaneous velocity change with which the walls are printed." -msgstr "Indica il cambio della velocità istantanea massima con cui vengono stampate le pareti." +msgstr "Le changement instantané maximal de vitesse selon lequel les parois sont imprimées." #: /fdmprinter.def.json msgctxt "jerk_wall_0 label" msgid "Outer Wall Jerk" -msgstr "Jerk parete esterna" +msgstr "Saccade de paroi externe" #: /fdmprinter.def.json msgctxt "jerk_wall_0 description" msgid "" "The maximum instantaneous velocity change with which the outermost walls are " "printed." -msgstr "Indica il cambio della velocità istantanea massima con cui vengono stampate le pareti più esterne." +msgstr "Le changement instantané maximal de vitesse selon lequel les parois externes sont imprimées." #: /fdmprinter.def.json msgctxt "jerk_wall_x label" msgid "Inner Wall Jerk" -msgstr "Jerk parete interna" +msgstr "Saccade de paroi intérieure" #: /fdmprinter.def.json msgctxt "jerk_wall_x description" msgid "" "The maximum instantaneous velocity change with which all inner walls are " "printed." -msgstr "Indica il cambio della velocità istantanea massima con cui vengono stampate tutte le pareti interne." +msgstr "Le changement instantané maximal de vitesse selon lequel les parois intérieures sont imprimées." #: /fdmprinter.def.json msgctxt "jerk_roofing label" msgid "Top Surface Skin Jerk" -msgstr "Jerk del rivestimento superficie superiore" +msgstr "Saccade de couches extérieures de la surface supérieure" #: /fdmprinter.def.json msgctxt "jerk_roofing description" msgid "" "The maximum instantaneous velocity change with which top surface skin layers " "are printed." -msgstr "Indica la variazione di velocità istantanea massima con cui vengono stampati gli strati rivestimento superficie superiore." +msgstr "Le changement instantané maximal de vitesse selon lequel les couches extérieures de surface supérieure sont imprimées." #: /fdmprinter.def.json msgctxt "jerk_topbottom label" msgid "Top/Bottom Jerk" -msgstr "Jerk strato superiore/inferiore" +msgstr "Saccade du dessus/dessous" #: /fdmprinter.def.json msgctxt "jerk_topbottom description" msgid "" "The maximum instantaneous velocity change with which top/bottom layers are " "printed." -msgstr "Indica il cambio della velocità istantanea massima con cui vengono stampati gli strati superiore/inferiore." +msgstr "Le changement instantané maximal de vitesse selon lequel les couches du dessus/dessous sont imprimées." #: /fdmprinter.def.json msgctxt "jerk_support label" msgid "Support Jerk" -msgstr "Jerk supporto" +msgstr "Saccade des supports" #: /fdmprinter.def.json msgctxt "jerk_support description" msgid "" "The maximum instantaneous velocity change with which the support structure " "is printed." -msgstr "Indica il cambio della velocità istantanea massima con cui viene stampata la struttura del supporto." +msgstr "Le changement instantané maximal de vitesse selon lequel la structure de support est imprimée." #: /fdmprinter.def.json msgctxt "jerk_support_infill label" msgid "Support Infill Jerk" -msgstr "Jerk riempimento supporto" +msgstr "Saccade de remplissage du support" #: /fdmprinter.def.json msgctxt "jerk_support_infill description" msgid "" "The maximum instantaneous velocity change with which the infill of support " "is printed." -msgstr "Indica il cambio della velocità istantanea massima con cui viene stampato il riempimento del supporto." +msgstr "Le changement instantané maximal de vitesse selon lequel le remplissage de support est imprimé." #: /fdmprinter.def.json msgctxt "jerk_support_interface label" msgid "Support Interface Jerk" -msgstr "Jerk interfaccia supporto" +msgstr "Saccade de l'interface de support" #: /fdmprinter.def.json msgctxt "jerk_support_interface description" msgid "" "The maximum instantaneous velocity change with which the roofs and floors of " "support are printed." -msgstr "Indica la variazione della velocità istantanea massima con cui vengono stampate le parti superiori e inferiori." +msgstr "Le changement instantané maximal de vitesse selon lequel les plafonds et bas sont imprimés." #: /fdmprinter.def.json msgctxt "jerk_support_roof label" msgid "Support Roof Jerk" -msgstr "Jerk parte superiore del supporto" +msgstr "Saccade des plafonds de support" #: /fdmprinter.def.json msgctxt "jerk_support_roof description" msgid "" "The maximum instantaneous velocity change with which the roofs of support " "are printed." -msgstr "Indica la variazione della velocità istantanea massima con cui vengono stampate le parti superiori." +msgstr "Le changement instantané maximal de vitesse selon lequel les plafonds de support sont imprimés." #: /fdmprinter.def.json msgctxt "jerk_support_bottom label" msgid "Support Floor Jerk" -msgstr "Jerk parte inferiore del supporto" +msgstr "Saccade des bas de support" #: /fdmprinter.def.json msgctxt "jerk_support_bottom description" msgid "" "The maximum instantaneous velocity change with which the floors of support " "are printed." -msgstr "Indica la variazione della velocità istantanea massima con cui vengono stampate le parti inferiori." +msgstr "Le changement instantané maximal de vitesse selon lequel les bas de support sont imprimés." #: /fdmprinter.def.json msgctxt "jerk_prime_tower label" msgid "Prime Tower Jerk" -msgstr "Jerk della torre di innesco" +msgstr "Saccade de la tour d'amorçage" #: /fdmprinter.def.json msgctxt "jerk_prime_tower description" msgid "" "The maximum instantaneous velocity change with which the prime tower is " "printed." -msgstr "Indica il cambio della velocità istantanea massima con cui viene stampata la torre di innesco del supporto." +msgstr "Le changement instantané maximal de vitesse selon lequel la tour d'amorçage est imprimée." #: /fdmprinter.def.json msgctxt "jerk_travel label" msgid "Travel Jerk" -msgstr "Jerk spostamenti" +msgstr "Saccade de déplacement" #: /fdmprinter.def.json msgctxt "jerk_travel description" msgid "" "The maximum instantaneous velocity change with which travel moves are made." -msgstr "Indica il cambio della velocità istantanea massima con cui vengono effettuati gli spostamenti." +msgstr "Le changement instantané maximal de vitesse selon lequel les déplacements s'effectuent." #: /fdmprinter.def.json msgctxt "jerk_layer_0 label" msgid "Initial Layer Jerk" -msgstr "Jerk dello strato iniziale" +msgstr "Saccade de la couche initiale" #: /fdmprinter.def.json msgctxt "jerk_layer_0 description" msgid "The print maximum instantaneous velocity change for the initial layer." -msgstr "Indica il cambio della velocità istantanea massima dello strato iniziale." +msgstr "Le changement instantané maximal de vitesse pour la couche initiale." #: /fdmprinter.def.json msgctxt "jerk_print_layer_0 label" msgid "Initial Layer Print Jerk" -msgstr "Jerk di stampa strato iniziale" +msgstr "Saccade d’impression de la couche initiale" #: /fdmprinter.def.json msgctxt "jerk_print_layer_0 description" msgid "" "The maximum instantaneous velocity change during the printing of the initial " "layer." -msgstr "Indica il cambio della velocità istantanea massima durante la stampa dello strato iniziale." +msgstr "Le changement instantané maximal de vitesse durant l'impression de la couche initiale." #: /fdmprinter.def.json msgctxt "jerk_travel_layer_0 label" msgid "Initial Layer Travel Jerk" -msgstr "Jerk spostamenti dello strato iniziale" +msgstr "Saccade de déplacement de la couche initiale" #: /fdmprinter.def.json msgctxt "jerk_travel_layer_0 description" msgid "The acceleration for travel moves in the initial layer." -msgstr "Indica l’accelerazione degli spostamenti dello strato iniziale." +msgstr "L'accélération pour les déplacements dans la couche initiale." #: /fdmprinter.def.json msgctxt "jerk_skirt_brim label" msgid "Skirt/Brim Jerk" -msgstr "Jerk dello skirt/brim" +msgstr "Saccade de la jupe/bordure" #: /fdmprinter.def.json msgctxt "jerk_skirt_brim description" msgid "" "The maximum instantaneous velocity change with which the skirt and brim are " "printed." -msgstr "Indica il cambio della velocità istantanea massima con cui vengono stampati lo skirt e il brim." +msgstr "Le changement instantané maximal de vitesse selon lequel la jupe et la bordure sont imprimées." #: /fdmprinter.def.json msgctxt "travel label" msgid "Travel" -msgstr "Spostamenti" +msgstr "Déplacement" #: /fdmprinter.def.json msgctxt "travel description" msgid "travel" -msgstr "spostamenti" +msgstr "déplacement" #: /fdmprinter.def.json msgctxt "retraction_enable label" msgid "Enable Retraction" -msgstr "Abilitazione della retrazione" +msgstr "Activer la rétraction" #: /fdmprinter.def.json msgctxt "retraction_enable description" msgid "Retract the filament when the nozzle is moving over a non-printed area." -msgstr "Ritrae il filamento quando l'ugello si sta muovendo su un'area non stampata." +msgstr "Rétracte le filament quand la buse se déplace vers une zone non imprimée." #: /fdmprinter.def.json msgctxt "retract_at_layer_change label" msgid "Retract at Layer Change" -msgstr "Retrazione al cambio strato" +msgstr "Rétracter au changement de couche" #: /fdmprinter.def.json msgctxt "retract_at_layer_change description" msgid "Retract the filament when the nozzle is moving to the next layer." -msgstr "Ritrae il filamento quando l'ugello si sta muovendo allo strato successivo." +msgstr "Rétracter le filament quand le bec se déplace vers la prochaine couche." #: /fdmprinter.def.json msgctxt "retraction_amount label" msgid "Retraction Distance" -msgstr "Distanza di retrazione" +msgstr "Distance de rétraction" #: /fdmprinter.def.json msgctxt "retraction_amount description" msgid "The length of material retracted during a retraction move." -msgstr "La lunghezza del materiale retratto durante il movimento di retrazione." +msgstr "La longueur de matériau rétracté pendant une rétraction." #: /fdmprinter.def.json msgctxt "retraction_speed label" msgid "Retraction Speed" -msgstr "Velocità di retrazione" +msgstr "Vitesse de rétraction" #: /fdmprinter.def.json msgctxt "retraction_speed description" msgid "" "The speed at which the filament is retracted and primed during a retraction " "move." -msgstr "Indica la velocità alla quale il filamento viene retratto e preparato durante un movimento di retrazione." +msgstr "La vitesse à laquelle le filament est rétracté et préparé pendant une rétraction." #: /fdmprinter.def.json msgctxt "retraction_retract_speed label" msgid "Retraction Retract Speed" -msgstr "Velocità di retrazione" +msgstr "Vitesse de rétraction" #: /fdmprinter.def.json msgctxt "retraction_retract_speed description" msgid "The speed at which the filament is retracted during a retraction move." -msgstr "Indica la velocità alla quale il filamento viene retratto durante un movimento di retrazione." +msgstr "La vitesse à laquelle le filament est rétracté pendant une rétraction." #: /fdmprinter.def.json msgctxt "retraction_prime_speed label" msgid "Retraction Prime Speed" -msgstr "Velocità di innesco dopo la retrazione" +msgstr "Vitesse de rétraction d'amorçage" #: /fdmprinter.def.json msgctxt "retraction_prime_speed description" msgid "The speed at which the filament is primed during a retraction move." -msgstr "Indica la velocità alla quale il filamento viene preparato durante un movimento di retrazione." +msgstr "La vitesse à laquelle le filament est préparé pendant une rétraction." #: /fdmprinter.def.json msgctxt "retraction_extra_prime_amount label" msgid "Retraction Extra Prime Amount" -msgstr "Entità di innesco supplementare dopo la retrazione" +msgstr "Volume supplémentaire à l'amorçage" #: /fdmprinter.def.json msgctxt "retraction_extra_prime_amount description" msgid "" "Some material can ooze away during a travel move, which can be compensated " "for here." -msgstr "Qui è possibile compensare l’eventuale trafilamento di materiale che può verificarsi durante uno spostamento." +msgstr "Du matériau peut suinter pendant un déplacement, ce qui peut être compensé ici." #: /fdmprinter.def.json msgctxt "retraction_min_travel label" msgid "Retraction Minimum Travel" -msgstr "Distanza minima di retrazione" +msgstr "Déplacement minimal de rétraction" #: /fdmprinter.def.json msgctxt "retraction_min_travel description" msgid "" "The minimum distance of travel needed for a retraction to happen at all. " "This helps to get fewer retractions in a small area." -msgstr "Determina la distanza minima necessaria affinché avvenga una retrazione. Questo consente di avere un minor numero di retrazioni in piccole aree." +msgstr "La distance minimale de déplacement nécessaire pour qu’une rétraction ait lieu. Cela permet d’éviter qu’un grand nombre de rétractions ne se produisent" +" sur une petite portion." #: /fdmprinter.def.json msgctxt "retraction_count_max label" msgid "Maximum Retraction Count" -msgstr "Numero massimo di retrazioni" +msgstr "Nombre maximal de rétractions" #: /fdmprinter.def.json msgctxt "retraction_count_max description" @@ -4013,14 +4006,13 @@ msgid "" "extrusion distance window. Further retractions within this window will be " "ignored. This avoids retracting repeatedly on the same piece of filament, as " "that can flatten the filament and cause grinding issues." -msgstr "Questa impostazione limita il numero di retrazioni previste all'interno della finestra di minima distanza di estrusione. Ulteriori retrazioni nell'ambito" -" di questa finestra saranno ignorate. Questo evita di eseguire ripetute retrazioni sullo stesso pezzo di filamento, onde evitarne l'appiattimento e conseguenti" -" problemi di deformazione." +msgstr "Ce paramètre limite le nombre de rétractions dans l'intervalle de distance minimal d'extrusion. Les rétractions qui dépassent cette valeur seront ignorées." +" Cela évite les rétractions répétitives sur le même morceau de filament, car cela risque de l’aplatir et de générer des problèmes d’écrasement." #: /fdmprinter.def.json msgctxt "retraction_extrusion_window label" msgid "Minimum Extrusion Distance Window" -msgstr "Finestra di minima distanza di estrusione" +msgstr "Intervalle de distance minimale d'extrusion" #: /fdmprinter.def.json msgctxt "retraction_extrusion_window description" @@ -4029,13 +4021,13 @@ msgid "" "should be approximately the same as the retraction distance, so that " "effectively the number of times a retraction passes the same patch of " "material is limited." -msgstr "La finestra in cui è impostato il massimo numero di retrazioni. Questo valore deve corrispondere all'incirca alla distanza di retrazione, in modo da limitare" -" effettivamente il numero di volte che una retrazione interessa lo stesso spezzone di materiale." +msgstr "L'intervalle dans lequel le nombre maximal de rétractions est incrémenté. Cette valeur doit être du même ordre de grandeur que la distance de rétraction," +" limitant ainsi le nombre de mouvements de rétraction sur une même portion de matériau." #: /fdmprinter.def.json msgctxt "limit_support_retractions label" msgid "Limit Support Retractions" -msgstr "Limitazione delle retrazioni del supporto" +msgstr "Limiter les rétractations du support" #: /fdmprinter.def.json msgctxt "limit_support_retractions description" @@ -4043,13 +4035,13 @@ msgid "" "Omit retraction when moving from support to support in a straight line. " "Enabling this setting saves print time, but can lead to excessive stringing " "within the support structure." -msgstr "Omettere la retrazione negli spostamenti da un supporto ad un altro in linea retta. L'abilitazione di questa impostazione riduce il tempo di stampa, ma" -" può comportare un'eccessiva produzione di filamenti all'interno della struttura del supporto." +msgstr "Omettre la rétraction lors du passage entre supports en ligne droite. L'activation de ce paramètre permet de gagner du temps lors de l'impression, mais" +" peut conduire à un stringing excessif à l'intérieur de la structure de support." #: /fdmprinter.def.json msgctxt "retraction_combing label" msgid "Combing Mode" -msgstr "Modalità Combing" +msgstr "Mode de détours" #: /fdmprinter.def.json msgctxt "retraction_combing description" @@ -4059,40 +4051,39 @@ msgid "" "retractions. If combing is off, the material will retract and the nozzle " "moves in a straight line to the next point. It is also possible to avoid " "combing over top/bottom skin areas or to only comb within the infill." -msgstr "La funzione Combing tiene l’ugello all’interno delle aree già stampate durante lo spostamento. In tal modo le corse di spostamento sono leggermente più" -" lunghe ma si riduce l’esigenza di effettuare retrazioni. Se questa funzione viene disabilitata, il materiale viene retratto e l’ugello si sposta in linea" -" retta al punto successivo. È anche possibile evitare il combing sopra le aree del rivestimento esterno superiore/inferiore o effettuare il combing solo" -" nel riempimento." +msgstr "Les détours maintiennent la buse dans les zones déjà imprimées lors des déplacements. Cela résulte en des déplacements légèrement plus longs mais réduit" +" le recours aux rétractions. Si les détours sont désactivés, le matériau se rétractera et la buse se déplacera en ligne droite jusqu'au point suivant." +" Il est également possible d'éviter les détours sur les zones de la couche du dessus / dessous ou d'effectuer les détours uniquement dans le remplissage." #: /fdmprinter.def.json msgctxt "retraction_combing option off" msgid "Off" -msgstr "Disinserita" +msgstr "Désactivé" #: /fdmprinter.def.json msgctxt "retraction_combing option all" msgid "All" -msgstr "Tutto" +msgstr "Tout" #: /fdmprinter.def.json msgctxt "retraction_combing option no_outer_surfaces" msgid "Not on Outer Surface" -msgstr "Non su superficie esterna" +msgstr "Pas sur la surface extérieure" #: /fdmprinter.def.json msgctxt "retraction_combing option noskin" msgid "Not in Skin" -msgstr "Non nel rivestimento" +msgstr "Pas dans la couche extérieure" #: /fdmprinter.def.json msgctxt "retraction_combing option infill" msgid "Within Infill" -msgstr "Nel riempimento" +msgstr "À l'intérieur du remplissage" #: /fdmprinter.def.json msgctxt "retraction_combing_max_distance label" msgid "Max Comb Distance With No Retract" -msgstr "Massima distanza di combing senza retrazione" +msgstr "Distance de détour max. sans rétraction" #: /fdmprinter.def.json msgctxt "retraction_combing_max_distance description" @@ -4100,83 +4091,83 @@ msgid "" "When greater than zero, combing travel moves that are longer than this " "distance will use retraction. If set to zero, there is no maximum and " "combing moves will not use retraction." -msgstr "Per un valore superiore a zero, le corse di spostamento in modalità combing superiori a tale distanza utilizzeranno la retrazione. Se il valore impostato" -" è zero, non è presente un valore massimo e le corse in modalità combing non utilizzeranno la retrazione." +msgstr "Lorsque cette distance est supérieure à zéro, les déplacements de détour qui sont plus longs que cette distance utiliseront la rétraction. Si elle est" +" définie sur zéro, il n'y a pas de maximum et les mouvements de détour n'utiliseront pas la rétraction." #: /fdmprinter.def.json msgctxt "travel_retract_before_outer_wall label" msgid "Retract Before Outer Wall" -msgstr "Retrazione prima della parete esterna" +msgstr "Rétracter avant la paroi externe" #: /fdmprinter.def.json msgctxt "travel_retract_before_outer_wall description" msgid "Always retract when moving to start an outer wall." -msgstr "Arretra sempre quando si sposta per iniziare una parete esterna." +msgstr "Toujours rétracter lors du déplacement pour commencer une paroi externe." #: /fdmprinter.def.json msgctxt "travel_avoid_other_parts label" msgid "Avoid Printed Parts When Traveling" -msgstr "Aggiramento delle parti stampate durante gli spostamenti" +msgstr "Éviter les pièces imprimées lors du déplacement" #: /fdmprinter.def.json msgctxt "travel_avoid_other_parts description" msgid "" "The nozzle avoids already printed parts when traveling. This option is only " "available when combing is enabled." -msgstr "Durante lo spostamento l’ugello evita le parti già stampate. Questa opzione è disponibile solo quando è abilitata la funzione Combing." +msgstr "La buse contourne les pièces déjà imprimées lorsqu'elle se déplace. Cette option est disponible uniquement lorsque les détours sont activés." #: /fdmprinter.def.json msgctxt "travel_avoid_supports label" msgid "Avoid Supports When Traveling" -msgstr "Aggiramento dei supporti durante gli spostamenti" +msgstr "Éviter les supports lors du déplacement" #: /fdmprinter.def.json msgctxt "travel_avoid_supports description" msgid "" "The nozzle avoids already printed supports when traveling. This option is " "only available when combing is enabled." -msgstr "Durante lo spostamento l'ugello evita i supporti già stampati. Questa opzione è disponibile solo quando è abilitata la funzione combing." +msgstr "La buse contourne les supports déjà imprimés lorsqu'elle se déplace. Cette option est disponible uniquement lorsque les détours sont activés." #: /fdmprinter.def.json msgctxt "travel_avoid_distance label" msgid "Travel Avoid Distance" -msgstr "Distanza di aggiramento durante gli spostamenti" +msgstr "Distance d'évitement du déplacement" #: /fdmprinter.def.json msgctxt "travel_avoid_distance description" msgid "" "The distance between the nozzle and already printed parts when avoiding " "during travel moves." -msgstr "La distanza tra l’ugello e le parti già stampate quando si effettua lo spostamento con aggiramento." +msgstr "La distance entre la buse et les pièces déjà imprimées lors du contournement pendant les déplacements." #: /fdmprinter.def.json msgctxt "layer_start_x label" msgid "Layer Start X" -msgstr "Avvio strato X" +msgstr "X début couche" #: /fdmprinter.def.json msgctxt "layer_start_x description" msgid "" "The X coordinate of the position near where to find the part to start " "printing each layer." -msgstr "La coordinata X della posizione in prossimità della quale si trova la parte per avviare la stampa di ciascuno strato." +msgstr "Coordonnée X de la position près de laquelle trouver la partie pour démarrer l'impression de chaque couche." #: /fdmprinter.def.json msgctxt "layer_start_y label" msgid "Layer Start Y" -msgstr "Avvio strato Y" +msgstr "Y début couche" #: /fdmprinter.def.json msgctxt "layer_start_y description" msgid "" "The Y coordinate of the position near where to find the part to start " "printing each layer." -msgstr "La coordinata Y della posizione in prossimità della quale si trova la parte per avviare la stampa di ciascuno strato." +msgstr "Coordonnée Y de la position près de laquelle trouver la partie pour démarrer l'impression de chaque couche." #: /fdmprinter.def.json msgctxt "retraction_hop_enabled label" msgid "Z Hop When Retracted" -msgstr "Z Hop durante la retrazione" +msgstr "Décalage en Z lors d’une rétraction" #: /fdmprinter.def.json msgctxt "retraction_hop_enabled description" @@ -4185,36 +4176,36 @@ msgid "" "clearance between the nozzle and the print. It prevents the nozzle from " "hitting the print during travel moves, reducing the chance to knock the " "print from the build plate." -msgstr "Ogniqualvolta avviene una retrazione, il piano di stampa viene abbassato per creare uno spazio tra l’ugello e la stampa. Previene l’urto dell’ugello sulla" -" stampa durante gli spostamenti riducendo la possibilità di far cadere la stampa dal piano." +msgstr "À chaque rétraction, le plateau est abaissé pour créer un espace entre la buse et l'impression. Cela évite que la buse ne touche l'impression pendant les" +" déplacements, réduisant ainsi le risque de heurter l'impression à partir du plateau." #: /fdmprinter.def.json msgctxt "retraction_hop_only_when_collides label" msgid "Z Hop Only Over Printed Parts" -msgstr "Z Hop solo su parti stampate" +msgstr "Décalage en Z uniquement sur les pièces imprimées" #: /fdmprinter.def.json msgctxt "retraction_hop_only_when_collides description" msgid "" "Only perform a Z Hop when moving over printed parts which cannot be avoided " "by horizontal motion by Avoid Printed Parts when Traveling." -msgstr "Esegue solo uno Z Hop quando si sposta sopra le parti stampate che non possono essere evitate mediante uno spostamento orizzontale con Aggiramento delle" -" parti stampate durante lo spostamento." +msgstr "Appliquer un décalage en Z uniquement lors du mouvement au-dessus de pièces imprimées qui ne peuvent être évitées par le mouvement horizontal, via Éviter" +" les pièces imprimées lors du déplacement." #: /fdmprinter.def.json msgctxt "retraction_hop label" msgid "Z Hop Height" -msgstr "Altezza Z Hop" +msgstr "Hauteur du décalage en Z" #: /fdmprinter.def.json msgctxt "retraction_hop description" msgid "The height difference when performing a Z Hop." -msgstr "La differenza di altezza durante l’esecuzione di uno Z Hop." +msgstr "La différence de hauteur lors de la réalisation d'un décalage en Z." #: /fdmprinter.def.json msgctxt "retraction_hop_after_extruder_switch label" msgid "Z Hop After Extruder Switch" -msgstr "Z Hop dopo cambio estrusore" +msgstr "Décalage en Z après changement d'extrudeuse" #: /fdmprinter.def.json msgctxt "retraction_hop_after_extruder_switch description" @@ -4222,55 +4213,56 @@ msgid "" "After the machine switched from one extruder to the other, the build plate " "is lowered to create clearance between the nozzle and the print. This " "prevents the nozzle from leaving oozed material on the outside of a print." -msgstr "Dopo il passaggio della macchina da un estrusore all’altro, il piano di stampa viene abbassato per creare uno spazio tra l’ugello e la stampa. In tal modo" -" si previene il rilascio di materiale fuoriuscito dall’ugello sull’esterno di una stampa." +msgstr "Une fois que la machine est passée d'une extrudeuse à l'autre, le plateau s'abaisse pour créer un dégagement entre la buse et l'impression. Cela évite" +" que la buse ne ressorte avec du matériau suintant sur l'extérieur d'une impression." #: /fdmprinter.def.json msgctxt "retraction_hop_after_extruder_switch_height label" msgid "Z Hop After Extruder Switch Height" -msgstr "Z Hop dopo cambio altezza estrusore" +msgstr "Décalage en Z après changement de hauteur d'extrudeuse" #: /fdmprinter.def.json msgctxt "retraction_hop_after_extruder_switch_height description" msgid "The height difference when performing a Z Hop after extruder switch." -msgstr "La differenza di altezza durante l'esecuzione di uno Z Hop dopo il cambio dell'estrusore." +msgstr "La différence de hauteur lors de la réalisation d'un décalage en Z après changement d'extrudeuse." #: /fdmprinter.def.json msgctxt "cooling label" msgid "Cooling" -msgstr "Raffreddamento" +msgstr "Refroidissement" #: /fdmprinter.def.json msgctxt "cooling description" msgid "Cooling" -msgstr "Raffreddamento" +msgstr "Refroidissement" #: /fdmprinter.def.json msgctxt "cool_fan_enabled label" msgid "Enable Print Cooling" -msgstr "Abilitazione raffreddamento stampa" +msgstr "Activer le refroidissement de l'impression" #: /fdmprinter.def.json msgctxt "cool_fan_enabled description" msgid "" "Enables the print cooling fans while printing. The fans improve print " "quality on layers with short layer times and bridging / overhangs." -msgstr "Abilita le ventole di raffreddamento durante la stampa. Le ventole migliorano la qualità di stampa sugli strati con tempi per strato più brevi e ponti/sbalzi." +msgstr "Active les ventilateurs de refroidissement de l'impression pendant l'impression. Les ventilateurs améliorent la qualité de l'impression sur les couches" +" présentant des durées de couche courtes et des ponts / porte-à-faux." #: /fdmprinter.def.json msgctxt "cool_fan_speed label" msgid "Fan Speed" -msgstr "Velocità della ventola" +msgstr "Vitesse du ventilateur" #: /fdmprinter.def.json msgctxt "cool_fan_speed description" msgid "The speed at which the print cooling fans spin." -msgstr "Indica la velocità di rotazione delle ventole di raffreddamento stampa." +msgstr "La vitesse à laquelle les ventilateurs de refroidissement de l'impression tournent." #: /fdmprinter.def.json msgctxt "cool_fan_speed_min label" msgid "Regular Fan Speed" -msgstr "Velocità regolare della ventola" +msgstr "Vitesse régulière du ventilateur" #: /fdmprinter.def.json msgctxt "cool_fan_speed_min description" @@ -4278,13 +4270,13 @@ msgid "" "The speed at which the fans spin before hitting the threshold. When a layer " "prints faster than the threshold, the fan speed gradually inclines towards " "the maximum fan speed." -msgstr "Indica la velocità alla quale ruotano le ventole prima di raggiungere la soglia. Quando uno strato viene stampato a una velocità superiore alla soglia," -" la velocità della ventola tende gradualmente verso la velocità massima della ventola." +msgstr "La vitesse à laquelle les ventilateurs tournent avant d'atteindre la limite. Lorsqu'une couche s'imprime plus rapidement que la limite, la vitesse du ventilateur" +" augmente progressivement jusqu'à atteindre la vitesse maximale." #: /fdmprinter.def.json msgctxt "cool_fan_speed_max label" msgid "Maximum Fan Speed" -msgstr "Velocità massima della ventola" +msgstr "Vitesse maximale du ventilateur" #: /fdmprinter.def.json msgctxt "cool_fan_speed_max description" @@ -4292,13 +4284,13 @@ msgid "" "The speed at which the fans spin on the minimum layer time. The fan speed " "gradually increases between the regular fan speed and maximum fan speed when " "the threshold is hit." -msgstr "Indica la velocità di rotazione della ventola al tempo minimo per strato. La velocità della ventola aumenta gradualmente tra la velocità regolare della" -" ventola e la velocità massima della ventola quando viene raggiunta la soglia." +msgstr "La vitesse à laquelle les ventilateurs tournent sur la durée minimale d'une couche. La vitesse du ventilateur augmente progressivement entre la vitesse" +" régulière du ventilateur et la vitesse maximale lorsque la limite est atteinte." #: /fdmprinter.def.json msgctxt "cool_min_layer_time_fan_speed_max label" msgid "Regular/Maximum Fan Speed Threshold" -msgstr "Soglia velocità regolare/massima della ventola" +msgstr "Limite de vitesse régulière/maximale du ventilateur" #: /fdmprinter.def.json msgctxt "cool_min_layer_time_fan_speed_max description" @@ -4307,14 +4299,14 @@ msgid "" "maximum fan speed. Layers that print slower than this time use regular fan " "speed. For faster layers the fan speed gradually increases towards the " "maximum fan speed." -msgstr "Indica il tempo per strato che definisce la soglia tra la velocità regolare e quella massima della ventola. Gli strati che vengono stampati a una velocità" -" inferiore a questo valore utilizzano una velocità regolare della ventola. Per gli strati stampati più velocemente la velocità della ventola aumenta gradualmente" -" verso la velocità massima della ventola." +msgstr "La durée de couche qui définit la limite entre la vitesse régulière et la vitesse maximale du ventilateur. Les couches qui s'impriment moins vite que cette" +" durée utilisent la vitesse régulière du ventilateur. Pour les couches plus rapides, la vitesse du ventilateur augmente progressivement jusqu'à atteindre" +" la vitesse maximale." #: /fdmprinter.def.json msgctxt "cool_fan_speed_0 label" msgid "Initial Fan Speed" -msgstr "Velocità iniziale della ventola" +msgstr "Vitesse des ventilateurs initiale" #: /fdmprinter.def.json msgctxt "cool_fan_speed_0 description" @@ -4322,13 +4314,13 @@ msgid "" "The speed at which the fans spin at the start of the print. In subsequent " "layers the fan speed is gradually increased up to the layer corresponding to " "Regular Fan Speed at Height." -msgstr "La velocità di rotazione della ventola all’inizio della stampa. Negli strati successivi la velocità della ventola aumenta gradualmente da zero fino allo" -" strato corrispondente alla velocità regolare in altezza." +msgstr "Vitesse à laquelle les ventilateurs tournent au début de l'impression. Pour les couches suivantes, la vitesse des ventilateurs augmente progressivement" +" jusqu'à la couche qui correspond à la vitesse régulière des ventilateurs en hauteur." #: /fdmprinter.def.json msgctxt "cool_fan_full_at_height label" msgid "Regular Fan Speed at Height" -msgstr "Velocità regolare della ventola in altezza" +msgstr "Vitesse régulière du ventilateur à la hauteur" #: /fdmprinter.def.json msgctxt "cool_fan_full_at_height description" @@ -4336,26 +4328,26 @@ msgid "" "The height at which the fans spin on regular fan speed. At the layers below " "the fan speed gradually increases from Initial Fan Speed to Regular Fan " "Speed." -msgstr "Indica l’altezza alla quale la ventola ruota alla velocità regolare. Agli strati stampati a velocità inferiore la velocità della ventola aumenta gradualmente" -" dalla velocità iniziale a quella regolare." +msgstr "Hauteur à laquelle les ventilateurs tournent à la vitesse régulière. Pour les couches situées en-dessous, la vitesse des ventilateurs augmente progressivement" +" de la vitesse des ventilateurs initiale jusqu'à la vitesse régulière." #: /fdmprinter.def.json msgctxt "cool_fan_full_layer label" msgid "Regular Fan Speed at Layer" -msgstr "Velocità regolare della ventola in corrispondenza dello strato" +msgstr "Vitesse régulière du ventilateur à la couche" #: /fdmprinter.def.json msgctxt "cool_fan_full_layer description" msgid "" "The layer at which the fans spin on regular fan speed. If regular fan speed " "at height is set, this value is calculated and rounded to a whole number." -msgstr "Indica lo strato in corrispondenza del quale la ventola ruota alla velocità regolare. Se è impostata la velocità regolare in altezza, questo valore viene" -" calcolato e arrotondato a un numero intero." +msgstr "La couche à laquelle les ventilateurs tournent à la vitesse régulière. Si la vitesse régulière du ventilateur à la hauteur est définie, cette valeur est" +" calculée et arrondie à un nombre entier." #: /fdmprinter.def.json msgctxt "cool_min_layer_time label" msgid "Minimum Layer Time" -msgstr "Tempo minimo per strato" +msgstr "Durée minimale d’une couche" #: /fdmprinter.def.json msgctxt "cool_min_layer_time description" @@ -4365,14 +4357,14 @@ msgid "" "material to cool down properly before printing the next layer. Layers may " "still take shorter than the minimal layer time if Lift Head is disabled and " "if the Minimum Speed would otherwise be violated." -msgstr "Indica il tempo minimo dedicato a uno strato. Questo forza la stampante a rallentare, per impiegare almeno il tempo impostato qui per uno strato. Questo" -" consente il corretto raffreddamento del materiale stampato prima di procedere alla stampa dello strato successivo. La stampa degli strati potrebbe richiedere" -" un tempo inferiore al minimo se la funzione Sollevamento della testina è disabilitata e se la velocità minima non viene rispettata." +msgstr "Temps minimum passé sur une couche. Cela force l'imprimante à ralentir afin de passer au minimum la durée définie ici sur une couche. Cela permet au matériau" +" imprimé de refroidir correctement avant l'impression de la couche suivante. Les couches peuvent néanmoins prendre moins de temps que le temps de couche" +" minimum si « Lift Head  » (Relever Tête) est désactivé et si la vitesse minimum serait autrement non respectée." #: /fdmprinter.def.json msgctxt "cool_min_speed label" msgid "Minimum Speed" -msgstr "Velocità minima" +msgstr "Vitesse minimale" #: /fdmprinter.def.json msgctxt "cool_min_speed description" @@ -4380,13 +4372,13 @@ msgid "" "The minimum print speed, despite slowing down due to the minimum layer time. " "When the printer would slow down too much, the pressure in the nozzle would " "be too low and result in bad print quality." -msgstr "Indica la velocità minima di stampa, a prescindere dal rallentamento per il tempo minimo per strato. Quando la stampante rallenta eccessivamente, la pressione" -" nell’ugello risulta insufficiente con conseguente scarsa qualità di stampa." +msgstr "La vitesse minimale d'impression, malgré le ralentissement dû à la durée minimale d'une couche. Si l'imprimante devait trop ralentir, la pression au niveau" +" de la buse serait trop faible, ce qui résulterait en une mauvaise qualité d'impression." #: /fdmprinter.def.json msgctxt "cool_lift_head label" msgid "Lift Head" -msgstr "Sollevamento della testina" +msgstr "Relever la tête" #: /fdmprinter.def.json msgctxt "cool_lift_head description" @@ -4394,107 +4386,107 @@ msgid "" "When the minimum speed is hit because of minimum layer time, lift the head " "away from the print and wait the extra time until the minimum layer time is " "reached." -msgstr "Quando viene raggiunta la velocità minima per il tempo minimo per strato, sollevare la testina dalla stampa e attendere il tempo supplementare fino al" -" raggiungimento del valore per tempo minimo per strato." +msgstr "Lorsque la vitesse minimale est atteinte à cause de la durée minimale d'une couche, relève la tête de l'impression et attend que la durée supplémentaire" +" jusqu'à la durée minimale d'une couche soit atteinte." #: /fdmprinter.def.json msgctxt "support label" msgid "Support" -msgstr "Supporto" +msgstr "Supports" #: /fdmprinter.def.json msgctxt "support description" msgid "Support" -msgstr "Supporto" +msgstr "Supports" #: /fdmprinter.def.json msgctxt "support_enable label" msgid "Generate Support" -msgstr "Generazione supporto" +msgstr "Générer les supports" #: /fdmprinter.def.json msgctxt "support_enable description" msgid "" "Generate structures to support parts of the model which have overhangs. " "Without these structures, such parts would collapse during printing." -msgstr "Genera strutture per supportare le parti del modello a sbalzo. Senza queste strutture, queste parti collasserebbero durante la stampa." +msgstr "Générer des structures pour soutenir les parties du modèle qui possèdent des porte-à-faux. Sans ces structures, ces parties s'effondreront durant l'impression." #: /fdmprinter.def.json msgctxt "support_extruder_nr label" msgid "Support Extruder" -msgstr "Estrusore del supporto" +msgstr "Extrudeuse de support" #: /fdmprinter.def.json msgctxt "support_extruder_nr description" msgid "" "The extruder train to use for printing the support. This is used in multi-" "extrusion." -msgstr "Il treno estrusore utilizzato per la stampa del supporto. Utilizzato nell’estrusione multipla." +msgstr "Le train d'extrudeuse à utiliser pour l'impression du support. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "support_infill_extruder_nr label" msgid "Support Infill Extruder" -msgstr "Estrusore riempimento del supporto" +msgstr "Extrudeuse de remplissage du support" #: /fdmprinter.def.json msgctxt "support_infill_extruder_nr description" msgid "" "The extruder train to use for printing the infill of the support. This is " "used in multi-extrusion." -msgstr "Il treno estrusore utilizzato per la stampa del riempimento del supporto. Utilizzato nell’estrusione multipla." +msgstr "Le train d'extrudeuse à utiliser pour l'impression du remplissage du support. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "support_extruder_nr_layer_0 label" msgid "First Layer Support Extruder" -msgstr "Estrusore del supporto primo strato" +msgstr "Extrudeuse de support de la première couche" #: /fdmprinter.def.json msgctxt "support_extruder_nr_layer_0 description" msgid "" "The extruder train to use for printing the first layer of support infill. " "This is used in multi-extrusion." -msgstr "Il treno estrusore utilizzato per la stampa del primo strato del riempimento del supporto. Utilizzato nell’estrusione multipla." +msgstr "Le train d'extrudeuse à utiliser pour l'impression de la première couche de remplissage du support. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "support_interface_extruder_nr label" msgid "Support Interface Extruder" -msgstr "Estrusore interfaccia del supporto" +msgstr "Extrudeuse de l'interface du support" #: /fdmprinter.def.json msgctxt "support_interface_extruder_nr description" msgid "" "The extruder train to use for printing the roofs and floors of the support. " "This is used in multi-extrusion." -msgstr "Treno estrusore utilizzato per la stampa delle parti superiori e inferiori del supporto. Utilizzato nell’estrusione multipla." +msgstr "Le train d'extrudeuse à utiliser pour l'impression des plafonds et bas du support. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "support_roof_extruder_nr label" msgid "Support Roof Extruder" -msgstr "Estrusore parte superiore del supporto" +msgstr "Extrudeuse des plafonds de support" #: /fdmprinter.def.json msgctxt "support_roof_extruder_nr description" msgid "" "The extruder train to use for printing the roofs of the support. This is " "used in multi-extrusion." -msgstr "Treno estrusore utilizzato per la stampa delle parti superiori del supporto. Utilizzato nell’estrusione multipla." +msgstr "Le train d'extrudeuse à utiliser pour l'impression des plafonds du support. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "support_bottom_extruder_nr label" msgid "Support Floor Extruder" -msgstr "Estrusore parte inferiore del supporto" +msgstr "Extrudeuse des bas de support" #: /fdmprinter.def.json msgctxt "support_bottom_extruder_nr description" msgid "" "The extruder train to use for printing the floors of the support. This is " "used in multi-extrusion." -msgstr "Treno estrusore utilizzato per la stampa delle parti inferiori del supporto. Utilizzato nell’estrusione multipla." +msgstr "Le train d'extrudeuse à utiliser pour l'impression des bas du support. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "support_structure label" msgid "Support Structure" -msgstr "Struttura di supporto" +msgstr "Structure du support" #: /fdmprinter.def.json msgctxt "support_structure description" @@ -4505,36 +4497,36 @@ msgid "" "the overhanging areas that support the model on the tips of those branches, " "and allows the branches to crawl around the model to support it from the " "build plate as much as possible." -msgstr "Scegliere tra le tecniche disponibili per generare il supporto. Il supporto \"normale\" crea una struttura di supporto direttamente sotto le parti di sbalzo" -" e rilascia tali aree direttamente al di sotto. La struttura \"ad albero\" crea delle ramificazioni verso le aree di sbalzo che supportano il modello sulle" -" punte di tali ramificazioni consentendo a queste ultime di avanzare intorno al modello per supportarlo il più possibile dal piano di stampa." +msgstr "Choisit entre les techniques disponibles pour générer un support. Le support « Normal » créer une structure de support directement sous les pièces en porte-à-faux" +" et fait descendre ces zones directement vers le bas. Le support « Arborescent » crée des branches vers les zones en porte-à-faux qui supportent le modèle" +" à l'extrémité de ces branches et permet aux branches de ramper autour du modèle afin de les supporter le plus possible sur le plateau de fabrication." #: /fdmprinter.def.json msgctxt "support_structure option normal" msgid "Normal" -msgstr "Normale" +msgstr "Normal" #: /fdmprinter.def.json msgctxt "support_structure option tree" msgid "Tree" -msgstr "Albero" +msgstr "Arborescence" #: /fdmprinter.def.json msgctxt "support_tree_angle label" msgid "Tree Support Branch Angle" -msgstr "Angolo ramo supporto ad albero" +msgstr "Angle des branches de support arborescent" #: /fdmprinter.def.json msgctxt "support_tree_angle description" msgid "" "The angle of the branches. Use a lower angle to make them more vertical and " "more stable. Use a higher angle to be able to have more reach." -msgstr "L’angolo dei rami. Utilizzare un angolo minore per renderli più verticali e più stabili. Utilizzare un angolo maggiore per avere una portata maggiore." +msgstr "Angle des branches. Utilisez un angle plus faible pour les rendre plus verticales et plus stables ; utilisez un angle plus élevé pour avoir plus de portée." #: /fdmprinter.def.json msgctxt "support_tree_branch_distance label" msgid "Tree Support Branch Distance" -msgstr "Distanza ramo supporto ad albero" +msgstr "Distance des branches de support arborescent" #: /fdmprinter.def.json msgctxt "support_tree_branch_distance description" @@ -4542,37 +4534,39 @@ msgid "" "How far apart the branches need to be when they touch the model. Making this " "distance small will cause the tree support to touch the model at more " "points, causing better overhang but making support harder to remove." -msgstr "La distanza tra i rami necessaria quando toccano il modello. Una distanza ridotta causa il contatto del supporto ad albero con il modello in più punti," -" generando migliore sovrapposizione ma rendendo più difficoltosa la rimozione del supporto." +msgstr "Distance à laquelle doivent se trouver les branches lorsqu'elles touchent le modèle. Si vous réduisez cette distance, le support arborescent touchera le" +" modèle à plus d'endroits, ce qui causera un meilleur porte-à-faux mais rendra le support plus difficile à enlever." #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter label" msgid "Tree Support Branch Diameter" -msgstr "Diametro ramo supporto ad albero" +msgstr "Diamètre des branches de support arborescent" #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter description" msgid "" "The diameter of the thinnest branches of tree support. Thicker branches are " "more sturdy. Branches towards the base will be thicker than this." -msgstr "Il diametro dei rami più sottili del supporto. I rami più spessi sono più resistenti. I rami verso la base avranno spessore maggiore." +msgstr "Diamètre des branches les plus minces du support arborescent. Plus les branches sont épaisses, plus elles sont robustes ; les branches proches de la base" +" seront plus épaisses que cette valeur." #: /fdmprinter.def.json msgctxt "support_tree_max_diameter label" msgid "Tree Support Trunk Diameter" -msgstr "Tree Support Trunk Diameter" +msgstr "Diamètre du tronc du support arborescent" #: /fdmprinter.def.json msgctxt "support_tree_max_diameter description" msgid "" "The diameter of the widest branches of tree support. A thicker trunk is more " "sturdy; a thinner trunk takes up less space on the build plate." -msgstr "The diameter of the widest branches of tree support. A thicker trunk is more sturdy; a thinner trunk takes up less space on the build plate." +msgstr "Diamètre des branches les plus larges du support arborescent. Un tronc plus épais est plus robuste ; un tronc plus fin prend moins de place sur le plateau" +" de fabrication." #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter_angle label" msgid "Tree Support Branch Diameter Angle" -msgstr "Angolo diametro ramo supporto ad albero" +msgstr "Angle de diamètre des branches de support arborescent" #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter_angle description" @@ -4581,13 +4575,13 @@ msgid "" "the bottom. An angle of 0 will cause the branches to have uniform thickness " "over their length. A bit of an angle can increase stability of the tree " "support." -msgstr "L’angolo del diametro dei rami con il graduale ispessimento verso il fondo. Un angolo pari a 0 genera rami con spessore uniforme sull’intera lunghezza." -" Un angolo minimo può aumentare la stabilità del supporto ad albero." +msgstr "Angle du diamètre des branches au fur et à mesure qu'elles s'épaississent lorsqu'elles sont proches du fond. Avec un angle de 0°, les branches auront une" +" épaisseur uniforme sur toute leur longueur. Donner un peu d'angle permet d'augmenter la stabilité du support arborescent." #: /fdmprinter.def.json msgctxt "support_tree_collision_resolution label" msgid "Tree Support Collision Resolution" -msgstr "Risoluzione collisione supporto ad albero" +msgstr "Résolution de collision du support arborescent" #: /fdmprinter.def.json msgctxt "support_tree_collision_resolution description" @@ -4595,13 +4589,13 @@ msgid "" "Resolution to compute collisions with to avoid hitting the model. Setting " "this lower will produce more accurate trees that fail less often, but " "increases slicing time dramatically." -msgstr "Risoluzione per calcolare le collisioni per evitare di colpire il modello. L’impostazione a un valore basso genera alberi più accurati che si rompono meno" -" sovente, ma aumenta notevolmente il tempo di sezionamento." +msgstr "Résolution servant à calculer les collisions afin d'éviter de heurter le modèle. Plus ce paramètre est faible, plus les arborescences seront précises et" +" stables, mais cela augmente considérablement le temps de découpage." #: /fdmprinter.def.json msgctxt "support_type label" msgid "Support Placement" -msgstr "Posizionamento supporto" +msgstr "Positionnement des supports" #: /fdmprinter.def.json msgctxt "support_type description" @@ -4609,63 +4603,63 @@ msgid "" "Adjusts the placement of the support structures. The placement can be set to " "touching build plate or everywhere. When set to everywhere the support " "structures will also be printed on the model." -msgstr "Regola il posizionamento delle strutture di supporto. Il posizionamento può essere impostato su contatto con il piano di stampa o in tutti i possibili" -" punti. Quando impostato su tutti i possibili punti, le strutture di supporto verranno anche stampate sul modello." +msgstr "Ajuste le positionnement des supports. Le positionnement peut être défini pour toucher le plateau ou n'importe où. Lorsqu'il est défini sur n'importe où," +" les supports seront également imprimés sur le modèle." #: /fdmprinter.def.json msgctxt "support_type option buildplate" msgid "Touching Buildplate" -msgstr "Contatto con il Piano di Stampa" +msgstr "En contact avec le plateau" #: /fdmprinter.def.json msgctxt "support_type option everywhere" msgid "Everywhere" -msgstr "In Tutti i Possibili Punti" +msgstr "Partout" #: /fdmprinter.def.json msgctxt "support_angle label" msgid "Support Overhang Angle" -msgstr "Angolo di sbalzo del supporto" +msgstr "Angle de porte-à-faux de support" #: /fdmprinter.def.json msgctxt "support_angle description" msgid "" "The minimum angle of overhangs for which support is added. At a value of 0° " "all overhangs are supported, 90° will not provide any support." -msgstr "Indica l’angolo minimo degli sbalzi per i quali viene aggiunto il supporto. A un valore di 0 ° tutti gli sbalzi vengono supportati, con un valore di 90 °" -" non sarà fornito alcun supporto." +msgstr "L'angle minimal des porte-à-faux pour lesquels un support est ajouté. À une valeur de 0 °, tous les porte-à-faux sont soutenus, tandis qu'à 90 °, aucun" +" support ne sera créé." #: /fdmprinter.def.json msgctxt "support_pattern label" msgid "Support Pattern" -msgstr "Configurazione del supporto" +msgstr "Motif du support" #: /fdmprinter.def.json msgctxt "support_pattern description" msgid "" "The pattern of the support structures of the print. The different options " "available result in sturdy or easy to remove support." -msgstr "Indica la configurazione delle strutture di supporto della stampa. Le diverse opzioni disponibili generano un supporto robusto o facile da rimuovere." +msgstr "Le motif des supports de l'impression. Les différentes options disponibles résultent en des supports difficiles ou faciles à retirer." #: /fdmprinter.def.json msgctxt "support_pattern option lines" msgid "Lines" -msgstr "Linee" +msgstr "Lignes" #: /fdmprinter.def.json msgctxt "support_pattern option grid" msgid "Grid" -msgstr "Griglia" +msgstr "Grille" #: /fdmprinter.def.json msgctxt "support_pattern option triangles" msgid "Triangles" -msgstr "Triangoli" +msgstr "Triangles" #: /fdmprinter.def.json msgctxt "support_pattern option concentric" msgid "Concentric" -msgstr "Concentriche" +msgstr "Concentrique" #: /fdmprinter.def.json msgctxt "support_pattern option zigzag" @@ -4675,17 +4669,17 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "support_pattern option cross" msgid "Cross" -msgstr "Incrociata" +msgstr "Entrecroisé" #: /fdmprinter.def.json msgctxt "support_pattern option gyroid" msgid "Gyroid" -msgstr "Gyroid" +msgstr "Gyroïde" #: /fdmprinter.def.json msgctxt "support_wall_count label" msgid "Support Wall Line Count" -msgstr "Numero delle linee perimetrali supporto" +msgstr "Nombre de lignes de la paroi du support" #: /fdmprinter.def.json msgctxt "support_wall_count description" @@ -4693,13 +4687,13 @@ msgid "" "The number of walls with which to surround support infill. Adding a wall can " "make support print more reliably and can support overhangs better, but " "increases print time and material used." -msgstr "Il numero di pareti circostanti il riempimento di supporto. L'aggiunta di una parete può rendere la stampa del supporto più affidabile ed in grado di supportare" -" meglio gli sbalzi, ma aumenta il tempo di stampa ed il materiale utilizzato." +msgstr "Nombre de parois qui entourent le remplissage de support. L'ajout d'une paroi peut rendre l'impression de support plus fiable et mieux supporter les porte-à-faux," +" mais augmente le temps d'impression et la quantité de matériau nécessaire." #: /fdmprinter.def.json msgctxt "zig_zaggify_support label" msgid "Connect Support Lines" -msgstr "Collegamento linee supporto" +msgstr "Relier les lignes de support" #: /fdmprinter.def.json msgctxt "zig_zaggify_support description" @@ -4707,62 +4701,61 @@ msgid "" "Connect the ends of the support lines together. Enabling this setting can " "make your support more sturdy and reduce underextrusion, but it will cost " "more material." -msgstr "Collega le estremità delle linee del supporto. L’abilitazione di questa impostazione consente di ottenere un supporto più robusto e ridurre la sottoestrusione," -" ma si utilizza più materiale." +msgstr "Relie les extrémités des lignes de support. L'activation de ce paramètre peut rendre votre support plus robuste et réduire la sous-extrusion, mais cela" +" demandera d'utiliser plus de matériau." #: /fdmprinter.def.json msgctxt "support_connect_zigzags label" msgid "Connect Support ZigZags" -msgstr "Collegamento Zig Zag supporto" +msgstr "Relier les zigzags de support" #: /fdmprinter.def.json msgctxt "support_connect_zigzags description" msgid "" "Connect the ZigZags. This will increase the strength of the zig zag support " "structure." -msgstr "Collega i ZigZag. Questo aumenta la forza della struttura di supporto a zig zag." +msgstr "Relie les zigzags. Cela augmente la solidité des supports en zigzag." #: /fdmprinter.def.json msgctxt "support_infill_rate label" msgid "Support Density" -msgstr "Densità del supporto" +msgstr "Densité du support" #: /fdmprinter.def.json msgctxt "support_infill_rate description" msgid "" "Adjusts the density of the support structure. A higher value results in " "better overhangs, but the supports are harder to remove." -msgstr "Regola la densità della struttura di supporto. Un valore superiore genera sbalzi migliori, ma i supporti sono più difficili da rimuovere." +msgstr "Ajuste la densité du support. Une valeur plus élevée résulte en de meilleurs porte-à-faux, mais les supports sont plus difficiles à enlever." #: /fdmprinter.def.json msgctxt "support_line_distance label" msgid "Support Line Distance" -msgstr "Distanza tra le linee del supporto" +msgstr "Distance d'écartement de ligne du support" #: /fdmprinter.def.json msgctxt "support_line_distance description" msgid "" "Distance between the printed support structure lines. This setting is " "calculated by the support density." -msgstr "Indica la distanza tra le linee della struttura di supporto stampata. Questa impostazione viene calcolata mediante la densità del supporto." +msgstr "Distance entre les lignes de support imprimées. Ce paramètre est calculé par la densité du support." #: /fdmprinter.def.json msgctxt "support_initial_layer_line_distance label" msgid "Initial Layer Support Line Distance" -msgstr "Distanza tra le linee del supporto dello strato iniziale" +msgstr "Distance d'écartement de ligne du support de la couche initiale" #: /fdmprinter.def.json msgctxt "support_initial_layer_line_distance description" msgid "" "Distance between the printed initial layer support structure lines. This " "setting is calculated by the support density." -msgstr "Indica la distanza tra le linee della struttura di supporto dello strato iniziale stampato. Questa impostazione viene calcolata mediante la densità del" -" supporto." +msgstr "Distance entre les lignes de la structure de support de la couche initiale imprimée. Ce paramètre est calculé en fonction de la densité du support." #: /fdmprinter.def.json msgctxt "support_infill_angles label" msgid "Support Infill Line Directions" -msgstr "Direzione delle linee di riempimento supporto" +msgstr "Direction de ligne de remplissage du support" #: /fdmprinter.def.json msgctxt "support_infill_angles description" @@ -4772,14 +4765,14 @@ msgid "" "it starts at the beginning again. The list items are separated by commas and " "the whole list is contained in square brackets. Default is an empty list " "which means use the default angle 0 degrees." -msgstr "Elenco di direzioni linee intere da utilizzare. Gli elementi dall'elenco sono utilizzati in sequenza con il progredire dei layers e, al raggiungimento" -" della fine dell'elenco, la sequenza ricomincia dall’inizio. Le voci elencate sono separate da virgole e l'intero elenco è racchiuso tra parentesi quadre." -" L’elenco predefinito è vuoto, vale a dire che utilizza l'angolo predefinito di 0 gradi." +msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser. Les éléments de la liste sont utilisés de manière séquentielle à mesure de l'avancement" +" des couches. La liste reprend depuis le début lorsque la fin est atteinte. Les éléments de la liste sont séparés par des virgules et la liste entière" +" est encadrée entre crochets. La valeur par défaut est une liste vide, ce qui signifie que l'angle par défaut est utilisé (0 degré)." #: /fdmprinter.def.json msgctxt "support_brim_enable label" msgid "Enable Support Brim" -msgstr "Abilitazione brim del supporto" +msgstr "Activer la bordure du support" #: /fdmprinter.def.json msgctxt "support_brim_enable description" @@ -4787,39 +4780,38 @@ msgid "" "Generate a brim within the support infill regions of the first layer. This " "brim is printed underneath the support, not around it. Enabling this setting " "increases the adhesion of support to the build plate." -msgstr "Genera un brim entro le zone di riempimento del supporto del primo strato. Questo brim viene stampato al di sotto del supporto, non intorno ad esso. L’abilitazione" -" di questa impostazione aumenta l’adesione del supporto al piano di stampa." +msgstr "Générer un bord à l'intérieur des zones de remplissage du support de la première couche. Cette bordure est imprimée sous le support et non autour de celui-ci," +" ce qui augmente l'adhérence du support au plateau." #: /fdmprinter.def.json msgctxt "support_brim_width label" msgid "Support Brim Width" -msgstr "Larghezza del brim del supporto" +msgstr "Largeur de la bordure du support" #: /fdmprinter.def.json msgctxt "support_brim_width description" msgid "" "The width of the brim to print underneath the support. A larger brim " "enhances adhesion to the build plate, at the cost of some extra material." -msgstr "Corrisponde alla larghezza del brim da stampare al di sotto del supporto. Un brim più largo migliora l’adesione al piano di stampa, ma utilizza una maggiore" -" quantità di materiale." +msgstr "Largeur de la bordure à imprimer sous le support. Une plus grande bordure améliore l'adhérence au plateau, mais demande un peu de matériau supplémentaire." #: /fdmprinter.def.json msgctxt "support_brim_line_count label" msgid "Support Brim Line Count" -msgstr "Numero di linee del brim del supporto" +msgstr "Nombre de lignes de la bordure du support" #: /fdmprinter.def.json msgctxt "support_brim_line_count description" msgid "" "The number of lines used for the support brim. More brim lines enhance " "adhesion to the build plate, at the cost of some extra material." -msgstr "Corrisponde al numero di linee utilizzate per il brim del supporto. Più linee brim migliorano l’adesione al piano di stampa, ma utilizzano una maggiore" -" quantità di materiale." +msgstr "Nombre de lignes utilisées pour la bordure du support. L'augmentation du nombre de lignes de bordure améliore l'adhérence au plateau, mais demande un peu" +" de matériau supplémentaire." #: /fdmprinter.def.json msgctxt "support_z_distance label" msgid "Support Z Distance" -msgstr "Distanza Z supporto" +msgstr "Distance Z des supports" #: /fdmprinter.def.json msgctxt "support_z_distance description" @@ -4827,43 +4819,43 @@ msgid "" "Distance from the top/bottom of the support structure to the print. This gap " "provides clearance to remove the supports after the model is printed. This " "value is rounded up to a multiple of the layer height." -msgstr "È la distanza dalla parte superiore/inferiore della struttura di supporto alla stampa. Questa distanza fornisce lo spazio per rimuovere i supporti dopo" -" aver stampato il modello. Questo valore viene arrotondato per eccesso a un multiplo dell’altezza strato." +msgstr "Distance entre le dessus/dessous du support et l'impression. Cet écart offre un espace permettant de retirer les supports une fois l'impression du modèle" +" terminée. Cette valeur est arrondie au chiffre supérieur jusqu'à atteindre un multiple de la hauteur de la couche." #: /fdmprinter.def.json msgctxt "support_top_distance label" msgid "Support Top Distance" -msgstr "Distanza superiore supporto" +msgstr "Distance supérieure des supports" #: /fdmprinter.def.json msgctxt "support_top_distance description" msgid "Distance from the top of the support to the print." -msgstr "È la distanza tra la parte superiore del supporto e la stampa." +msgstr "Distance entre l’impression et le haut des supports." #: /fdmprinter.def.json msgctxt "support_bottom_distance label" msgid "Support Bottom Distance" -msgstr "Distanza inferiore supporto" +msgstr "Distance inférieure des supports" #: /fdmprinter.def.json msgctxt "support_bottom_distance description" msgid "Distance from the print to the bottom of the support." -msgstr "È la distanza tra la stampa e la parte inferiore del supporto." +msgstr "Distance entre l’impression et le bas des supports." #: /fdmprinter.def.json msgctxt "support_xy_distance label" msgid "Support X/Y Distance" -msgstr "Distanza X/Y supporto" +msgstr "Distance X/Y des supports" #: /fdmprinter.def.json msgctxt "support_xy_distance description" msgid "Distance of the support structure from the print in the X/Y directions." -msgstr "Indica la distanza della struttura di supporto dalla stampa, nelle direzioni X/Y." +msgstr "Distance entre le support et l'impression dans les directions X/Y." #: /fdmprinter.def.json msgctxt "support_xy_overrides_z label" msgid "Support Distance Priority" -msgstr "Priorità distanza supporto" +msgstr "Priorité de distance des supports" #: /fdmprinter.def.json msgctxt "support_xy_overrides_z description" @@ -4872,34 +4864,34 @@ msgid "" "versa. When X/Y overrides Z the X/Y distance can push away the support from " "the model, influencing the actual Z distance to the overhang. We can disable " "this by not applying the X/Y distance around overhangs." -msgstr "Indica se la distanza X/Y del supporto esclude la distanza Z del supporto o viceversa. Quando X/Y esclude Z, la distanza X/Y può allontanare il supporto" -" dal modello, influenzando l’effettiva distanza Z allo sbalzo. È possibile disabilitare questa funzione non applicando la distanza X/Y intorno agli sbalzi." +msgstr "Si la Distance X/Y des supports annule la Distance Z des supports ou inversement. Lorsque X/Y annule Z, la distance X/Y peut écarter le support du modèle," +" influençant ainsi la distance Z réelle par rapport au porte-à-faux. Nous pouvons désactiver cela en n'appliquant pas la distance X/Y autour des porte-à-faux." #: /fdmprinter.def.json msgctxt "support_xy_overrides_z option xy_overrides_z" msgid "X/Y overrides Z" -msgstr "X/Y esclude Z" +msgstr "X/Y annule Z" #: /fdmprinter.def.json msgctxt "support_xy_overrides_z option z_overrides_xy" msgid "Z overrides X/Y" -msgstr "Z esclude X/Y" +msgstr "Z annule X/Y" #: /fdmprinter.def.json msgctxt "support_xy_distance_overhang label" msgid "Minimum Support X/Y Distance" -msgstr "Distanza X/Y supporto minima" +msgstr "Distance X/Y minimale des supports" #: /fdmprinter.def.json msgctxt "support_xy_distance_overhang description" msgid "" "Distance of the support structure from the overhang in the X/Y directions." -msgstr "Indica la distanza della struttura di supporto dallo sbalzo, nelle direzioni X/Y." +msgstr "Distance entre la structure de support et le porte-à-faux dans les directions X/Y." #: /fdmprinter.def.json msgctxt "support_bottom_stair_step_height label" msgid "Support Stair Step Height" -msgstr "Altezza gradini supporto" +msgstr "Hauteur de la marche de support" #: /fdmprinter.def.json msgctxt "support_bottom_stair_step_height description" @@ -4908,13 +4900,13 @@ msgid "" "model. A low value makes the support harder to remove, but too high values " "can lead to unstable support structures. Set to zero to turn off the stair-" "like behaviour." -msgstr "Altezza dei gradini della parte inferiore del supporto a scala che appoggia sul modello. Un valore inferiore rende il supporto più difficile da rimuovere," -" ma valori troppo elevati possono rendere instabili le strutture di supporto. Impostare a zero per disabilitare il profilo a scala." +msgstr "La hauteur de la marche du support en forme d'escalier reposant sur le modèle. Une valeur faible rend le support plus difficile à enlever, mais des valeurs" +" trop élevées peuvent entraîner des supports instables. Définir la valeur sur zéro pour désactiver le comportement en forme d'escalier." #: /fdmprinter.def.json msgctxt "support_bottom_stair_step_width label" msgid "Support Stair Step Maximum Width" -msgstr "Larghezza massima gradino supporto" +msgstr "Largeur maximale de la marche de support" #: /fdmprinter.def.json msgctxt "support_bottom_stair_step_width description" @@ -4922,13 +4914,13 @@ msgid "" "The maximum width of the steps of the stair-like bottom of support resting " "on the model. A low value makes the support harder to remove, but too high " "values can lead to unstable support structures." -msgstr "Larghezza massima dei gradini della parte inferiore del supporto a scala che appoggia sul modello. Un valore inferiore rende il supporto più difficile" -" da rimuovere, ma valori troppo elevati possono rendere instabili le strutture di supporto." +msgstr "La largeur maximale de la marche du support en forme d'escalier reposant sur le modèle. Une valeur faible rend le support plus difficile à enlever, mais" +" des valeurs trop élevées peuvent entraîner des supports instables." #: /fdmprinter.def.json msgctxt "support_bottom_stair_step_min_slope label" msgid "Support Stair Step Minimum Slope Angle" -msgstr "Angolo di pendenza minimo gradini supporto" +msgstr "Angle de pente minimum de la marche de support" #: /fdmprinter.def.json msgctxt "support_bottom_stair_step_min_slope description" @@ -4937,13 +4929,13 @@ msgid "" "should make support easier to remove on shallower slopes, but really low " "values may result in some very counter-intuitive results on other parts of " "the model." -msgstr "La pendenza minima dell'area alla quale ha effetto la creazione dei gradini. Valori bassi dovrebbero semplificare la rimozione del supporto sulle pendenze" -" meno profonde, ma in realtà dei valori bassi possono generare risultati molto irrazionali sulle altre parti del modello." +msgstr "La pente minimum de la zone pour un effet de marche de support. Des valeurs basses devraient faciliter l'enlèvement du support sur les pentes peu superficielles ;" +" des valeurs très basses peuvent donner des résultats vraiment contre-intuitifs sur d'autres pièces du modèle." #: /fdmprinter.def.json msgctxt "support_join_distance label" msgid "Support Join Distance" -msgstr "Distanza giunzione supporto" +msgstr "Distance de jointement des supports" #: /fdmprinter.def.json msgctxt "support_join_distance description" @@ -4951,39 +4943,36 @@ msgid "" "The maximum distance between support structures in the X/Y directions. When " "separate structures are closer together than this value, the structures " "merge into one." -msgstr "La distanza massima tra le strutture di supporto nelle direzioni X/Y. Quando la distanza tra le strutture è inferiore al valore indicato, le strutture" -" convergono in una unica." +msgstr "La distance maximale entre les supports dans les directions X/Y. Lorsque des modèle séparés sont plus rapprochés que cette valeur, ils fusionnent." #: /fdmprinter.def.json msgctxt "support_offset label" msgid "Support Horizontal Expansion" -msgstr "Espansione orizzontale supporto" +msgstr "Expansion horizontale des supports" #: /fdmprinter.def.json msgctxt "support_offset description" msgid "" "Amount of offset applied to all support polygons in each layer. Positive " "values can smooth out the support areas and result in more sturdy support." -msgstr "È l'entità di offset (estensione dello strato) applicato a tutti i poligoni di supporto in ciascuno strato. I valori positivi possono appianare le aree" -" di supporto, accrescendone la robustezza." +msgstr "Le décalage appliqué à tous les polygones pour chaque couche. Une valeur positive peut lisser les zones de support et rendre le support plus solide." #: /fdmprinter.def.json msgctxt "support_infill_sparse_thickness label" msgid "Support Infill Layer Thickness" -msgstr "Spessore dello strato di riempimento di supporto" +msgstr "Épaisseur de la couche de remplissage de support" #: /fdmprinter.def.json msgctxt "support_infill_sparse_thickness description" msgid "" "The thickness per layer of support infill material. This value should always " "be a multiple of the layer height and is otherwise rounded." -msgstr "Indica lo spessore per strato del materiale di riempimento del supporto. Questo valore deve sempre essere un multiplo dell’altezza dello strato e in caso" -" contrario viene arrotondato." +msgstr "L'épaisseur par couche de matériau de remplissage de support. Cette valeur doit toujours être un multiple de la hauteur de la couche et arrondie." #: /fdmprinter.def.json msgctxt "gradual_support_infill_steps label" msgid "Gradual Support Infill Steps" -msgstr "Fasi di riempimento graduale del supporto" +msgstr "Étapes de remplissage graduel du support" #: /fdmprinter.def.json msgctxt "gradual_support_infill_steps description" @@ -4991,37 +4980,37 @@ msgid "" "Number of times to reduce the support infill density by half when getting " "further below top surfaces. Areas which are closer to top surfaces get a " "higher density, up to the Support Infill Density." -msgstr "Indica il numero di volte per dimezzare la densità del riempimento quando si va al di sotto delle superfici superiori. Le aree più vicine alle superfici" -" superiori avranno una densità maggiore, fino alla densità del riempimento." +msgstr "Nombre de fois pour réduire la densité de remplissage du support de moitié en poursuivant sous les surfaces du dessus. Les zones qui sont plus proches" +" des surfaces du dessus possèdent une densité plus élevée, jusqu'à la Densité de remplissage du support." #: /fdmprinter.def.json msgctxt "gradual_support_infill_step_height label" msgid "Gradual Support Infill Step Height" -msgstr "Altezza fasi di riempimento graduale del supporto" +msgstr "Hauteur d'étape de remplissage graduel du support" #: /fdmprinter.def.json msgctxt "gradual_support_infill_step_height description" msgid "" "The height of support infill of a given density before switching to half the " "density." -msgstr "Indica l’altezza di riempimento del supporto di una data densità prima di passare a metà densità." +msgstr "La hauteur de remplissage de support d'une densité donnée avant de passer à la moitié de la densité." #: /fdmprinter.def.json msgctxt "minimum_support_area label" msgid "Minimum Support Area" -msgstr "Area minima supporto" +msgstr "Surface minimale de support" #: /fdmprinter.def.json msgctxt "minimum_support_area description" msgid "" "Minimum area size for support polygons. Polygons which have an area smaller " "than this value will not be generated." -msgstr "Dimensioni minime area per i poligoni del supporto. I poligoni con un’area inferiore a questo valore non verranno generati." +msgstr "Taille minimale de la surface des polygones de support : les polygones dont la surface est inférieure à cette valeur ne seront pas générés." #: /fdmprinter.def.json msgctxt "support_interface_enable label" msgid "Enable Support Interface" -msgstr "Abilitazione interfaccia supporto" +msgstr "Activer l'interface de support" #: /fdmprinter.def.json msgctxt "support_interface_enable description" @@ -5029,74 +5018,73 @@ msgid "" "Generate a dense interface between the model and the support. This will " "create a skin at the top of the support on which the model is printed and at " "the bottom of the support, where it rests on the model." -msgstr "Genera un’interfaccia densa tra il modello e il supporto. Questo crea un rivestimento esterno sulla sommità del supporto su cui viene stampato il modello" -" e al fondo del supporto, dove appoggia sul modello." +msgstr "Générer une interface dense entre le modèle et le support. Cela créera une couche sur le dessus du support sur lequel le modèle est imprimé et sur le dessous" +" du support sur lequel le modèle repose." #: /fdmprinter.def.json msgctxt "support_roof_enable label" msgid "Enable Support Roof" -msgstr "Abilitazione irrobustimento parte superiore (tetto) del supporto" +msgstr "Activer les plafonds de support" #: /fdmprinter.def.json msgctxt "support_roof_enable description" msgid "" "Generate a dense slab of material between the top of support and the model. " "This will create a skin between the model and support." -msgstr "Genera una spessa lastra di materiale tra la parte superiore del supporto e il modello. Questo crea un rivestimento tra modello e supporto." +msgstr "Générer une plaque dense de matériau entre le plafond du support et le modèle. Cela créera une couche extérieure entre le modèle et le support." #: /fdmprinter.def.json msgctxt "support_bottom_enable label" msgid "Enable Support Floor" -msgstr "Abilitazione parte inferiore supporto" +msgstr "Activer les bas de support" #: /fdmprinter.def.json msgctxt "support_bottom_enable description" msgid "" "Generate a dense slab of material between the bottom of the support and the " "model. This will create a skin between the model and support." -msgstr "Genera una spessa lastra di materiale tra la parte inferiore del supporto e il modello. Questo crea un rivestimento tra modello e supporto." +msgstr "Générer une plaque dense de matériau entre le bas du support et le modèle. Cela créera une couche extérieure entre le modèle et le support." #: /fdmprinter.def.json msgctxt "support_interface_height label" msgid "Support Interface Thickness" -msgstr "Spessore interfaccia supporto" +msgstr "Épaisseur de l'interface de support" #: /fdmprinter.def.json msgctxt "support_interface_height description" msgid "" "The thickness of the interface of the support where it touches with the " "model on the bottom or the top." -msgstr "Indica lo spessore dell’interfaccia del supporto dove tocca il modello nella parte inferiore o in quella superiore." +msgstr "L'épaisseur de l'interface du support à l'endroit auquel il touche le modèle, sur le dessous ou le dessus." #: /fdmprinter.def.json msgctxt "support_roof_height label" msgid "Support Roof Thickness" -msgstr "Spessore parte superiore (tetto) del supporto" +msgstr "Épaisseur du plafond de support" #: /fdmprinter.def.json msgctxt "support_roof_height description" msgid "" "The thickness of the support roofs. This controls the amount of dense layers " "at the top of the support on which the model rests." -msgstr "Lo spessore delle parti superiori del supporto. Questo controlla la quantità di strati fitti alla sommità del supporto su cui appoggia il modello." +msgstr "L'épaisseur des plafonds de support. Cela contrôle la quantité de couches denses sur le dessus du support sur lequel le modèle repose." #: /fdmprinter.def.json msgctxt "support_bottom_height label" msgid "Support Floor Thickness" -msgstr "Spessore parte inferiore del supporto" +msgstr "Épaisseur du bas de support" #: /fdmprinter.def.json msgctxt "support_bottom_height description" msgid "" "The thickness of the support floors. This controls the number of dense " "layers that are printed on top of places of a model on which support rests." -msgstr "Indica lo spessore delle parti inferiori del supporto. Questo controlla il numero di strati fitti stampati sulla sommità dei punti di un modello su cui" -" appoggia un supporto." +msgstr "L'épaisseur des bas de support. Cela contrôle le nombre de couches denses imprimées sur le dessus des endroits d'un modèle sur lequel le support repose." #: /fdmprinter.def.json msgctxt "support_interface_skip_height label" msgid "Support Interface Resolution" -msgstr "Risoluzione interfaccia supporto" +msgstr "Résolution de l'interface du support" #: /fdmprinter.def.json msgctxt "support_interface_skip_height description" @@ -5105,14 +5093,14 @@ msgid "" "the given height. Lower values will slice slower, while higher values may " "cause normal support to be printed in some places where there should have " "been support interface." -msgstr "Quando si controlla dove si trova il modello sopra e sotto il supporto, procedere ad intervalli di altezza prestabilita. Valori inferiori causeranno un" -" sezionamento più lento, mentre valori più alti potrebbero causare la stampa del supporto normale in alcuni punti in cui dovrebbe esserci un'interfaccia" -" di supporto." +msgstr "Lors de la vérification de l'emplacement d'un modèle au-dessus et en-dessous du support, effectuer des étapes de la hauteur définie. Des valeurs plus faibles" +" découperont plus lentement, tandis que des valeurs plus élevées peuvent causer l'impression d'un support normal à des endroits où il devrait y avoir une" +" interface de support." #: /fdmprinter.def.json msgctxt "support_interface_density label" msgid "Support Interface Density" -msgstr "Densità interfaccia supporto" +msgstr "Densité de l'interface de support" #: /fdmprinter.def.json msgctxt "support_interface_density description" @@ -5120,90 +5108,90 @@ msgid "" "Adjusts the density of the roofs and floors of the support structure. A " "higher value results in better overhangs, but the supports are harder to " "remove." -msgstr "Regola la densità delle parti superiori e inferiori della struttura di supporto. Un valore superiore genera sbalzi migliori, ma i supporti sono più difficili" -" da rimuovere." +msgstr "Ajuste la densité des plafonds et bas de la structure de support. Une valeur plus élevée résulte en de meilleurs porte-à-faux, mais les supports sont plus" +" difficiles à enlever." #: /fdmprinter.def.json msgctxt "support_roof_density label" msgid "Support Roof Density" -msgstr "Densità parte superiore (tetto) del supporto" +msgstr "Densité du plafond de support" #: /fdmprinter.def.json msgctxt "support_roof_density description" msgid "" "The density of the roofs of the support structure. A higher value results in " "better overhangs, but the supports are harder to remove." -msgstr "Densità delle parti superiori della struttura di supporto. Un valore superiore genera sbalzi migliori, ma i supporti sono più difficili da rimuovere." +msgstr "La densité des plafonds de la structure de support. Une valeur plus élevée résulte en de meilleurs porte-à-faux, mais les supports sont plus difficiles" +" à enlever." #: /fdmprinter.def.json msgctxt "support_roof_line_distance label" msgid "Support Roof Line Distance" -msgstr "Distanza tra le linee della parte superiore (tetto) del supporto" +msgstr "Distance d'écartement de ligne du plafond de support" #: /fdmprinter.def.json msgctxt "support_roof_line_distance description" msgid "" "Distance between the printed support roof lines. This setting is calculated " "by the Support Roof Density, but can be adjusted separately." -msgstr "Distanza tra le linee della parte superiore del supporto stampate. Questa impostazione viene calcolata dalla densità della parte superiore del supporto," -" ma può essere regolata separatamente." +msgstr "Distance entre les lignes du plafond de support imprimées. Ce paramètre est calculé par la densité du plafond de support mais peut également être défini" +" séparément." #: /fdmprinter.def.json msgctxt "support_bottom_density label" msgid "Support Floor Density" -msgstr "Densità parte inferiore del supporto" +msgstr "Densité du bas de support" #: /fdmprinter.def.json msgctxt "support_bottom_density description" msgid "" "The density of the floors of the support structure. A higher value results " "in better adhesion of the support on top of the model." -msgstr "Densità delle parti inferiori della struttura di supporto. Un valore più alto comporta una migliore adesione del supporto alla parte superiore del modello." +msgstr "La densité des bas de la structure de support. Une valeur plus élevée résulte en une meilleure adhésion du support au-dessus du modèle." #: /fdmprinter.def.json msgctxt "support_bottom_line_distance label" msgid "Support Floor Line Distance" -msgstr "Distanza della linea di supporto inferiore" +msgstr "Distance d'écartement de ligne de bas de support" #: /fdmprinter.def.json msgctxt "support_bottom_line_distance description" msgid "" "Distance between the printed support floor lines. This setting is calculated " "by the Support Floor Density, but can be adjusted separately." -msgstr "Distanza tra le linee della parte inferiore del supporto stampate. Questa impostazione viene calcolata dalla densità della parte inferiore del supporto," -" ma può essere regolata separatamente." +msgstr "Distance entre les lignes du bas de support imprimées. Ce paramètre est calculé par la densité du bas de support mais peut également être défini séparément." #: /fdmprinter.def.json msgctxt "support_interface_pattern label" msgid "Support Interface Pattern" -msgstr "Configurazione interfaccia supporto" +msgstr "Motif de l'interface de support" #: /fdmprinter.def.json msgctxt "support_interface_pattern description" msgid "" "The pattern with which the interface of the support with the model is " "printed." -msgstr "È la configurazione (o pattern) con cui viene stampata l’interfaccia del supporto con il modello." +msgstr "Le motif selon lequel l'interface du support avec le modèle est imprimée." #: /fdmprinter.def.json msgctxt "support_interface_pattern option lines" msgid "Lines" -msgstr "Linee" +msgstr "Lignes" #: /fdmprinter.def.json msgctxt "support_interface_pattern option grid" msgid "Grid" -msgstr "Griglia" +msgstr "Grille" #: /fdmprinter.def.json msgctxt "support_interface_pattern option triangles" msgid "Triangles" -msgstr "Triangoli" +msgstr "Triangles" #: /fdmprinter.def.json msgctxt "support_interface_pattern option concentric" msgid "Concentric" -msgstr "Concentriche" +msgstr "Concentrique" #: /fdmprinter.def.json msgctxt "support_interface_pattern option zigzag" @@ -5213,32 +5201,32 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "support_roof_pattern label" msgid "Support Roof Pattern" -msgstr "Configurazione della parte superiore (tetto) del supporto" +msgstr "Motif du plafond de support" #: /fdmprinter.def.json msgctxt "support_roof_pattern description" msgid "The pattern with which the roofs of the support are printed." -msgstr "È la configurazione (o pattern) con cui vengono stampate le parti superiori del supporto." +msgstr "Le motif d'impression pour les plafonds de support." #: /fdmprinter.def.json msgctxt "support_roof_pattern option lines" msgid "Lines" -msgstr "Linee" +msgstr "Lignes" #: /fdmprinter.def.json msgctxt "support_roof_pattern option grid" msgid "Grid" -msgstr "Griglia" +msgstr "Grille" #: /fdmprinter.def.json msgctxt "support_roof_pattern option triangles" msgid "Triangles" -msgstr "Triangoli" +msgstr "Triangles" #: /fdmprinter.def.json msgctxt "support_roof_pattern option concentric" msgid "Concentric" -msgstr "Concentriche" +msgstr "Concentrique" #: /fdmprinter.def.json msgctxt "support_roof_pattern option zigzag" @@ -5248,32 +5236,32 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "support_bottom_pattern label" msgid "Support Floor Pattern" -msgstr "Configurazione della parte inferiore del supporto" +msgstr "Motif du bas de support" #: /fdmprinter.def.json msgctxt "support_bottom_pattern description" msgid "The pattern with which the floors of the support are printed." -msgstr "È la configurazione (o pattern) con cui vengono stampate le parti inferiori del supporto." +msgstr "Le motif d'impression pour les bas de support." #: /fdmprinter.def.json msgctxt "support_bottom_pattern option lines" msgid "Lines" -msgstr "Linee" +msgstr "Lignes" #: /fdmprinter.def.json msgctxt "support_bottom_pattern option grid" msgid "Grid" -msgstr "Griglia" +msgstr "Grille" #: /fdmprinter.def.json msgctxt "support_bottom_pattern option triangles" msgid "Triangles" -msgstr "Triangoli" +msgstr "Triangles" #: /fdmprinter.def.json msgctxt "support_bottom_pattern option concentric" msgid "Concentric" -msgstr "Concentriche" +msgstr "Concentrique" #: /fdmprinter.def.json msgctxt "support_bottom_pattern option zigzag" @@ -5283,76 +5271,75 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "minimum_interface_area label" msgid "Minimum Support Interface Area" -msgstr "Area minima interfaccia supporto" +msgstr "Surface minimale de l'interface de support" #: /fdmprinter.def.json msgctxt "minimum_interface_area description" msgid "" "Minimum area size for support interface polygons. Polygons which have an " "area smaller than this value will be printed as normal support." -msgstr "Dimensione minima dell'area per i poligoni dell'interfaccia di supporto. I poligoni con un'area più piccola rispetto a questo valore saranno stampati come" -" supporto normale." +msgstr "Taille minimale de la surface des polygones d'interface de support. Les polygones dont la surface est inférieure à cette valeur ne seront pas imprimés" +" comme support normal." #: /fdmprinter.def.json msgctxt "minimum_roof_area label" msgid "Minimum Support Roof Area" -msgstr "Area minima parti superiori supporto" +msgstr "Surface minimale du plafond de support" #: /fdmprinter.def.json msgctxt "minimum_roof_area description" msgid "" "Minimum area size for the roofs of the support. Polygons which have an area " "smaller than this value will be printed as normal support." -msgstr "Dimensione minima dell'area per le parti superiori del supporto. I poligoni con un'area più piccola rispetto a questo valore saranno stampati come supporto" -" normale." +msgstr "Taille minimale de la surface des plafonds du support. Les polygones dont la surface est inférieure à cette valeur ne seront pas imprimés comme support" +" normal." #: /fdmprinter.def.json msgctxt "minimum_bottom_area label" msgid "Minimum Support Floor Area" -msgstr "Area minima parti inferiori supporto" +msgstr "Surface minimale du bas de support" #: /fdmprinter.def.json msgctxt "minimum_bottom_area description" msgid "" "Minimum area size for the floors of the support. Polygons which have an area " "smaller than this value will be printed as normal support." -msgstr "Dimensione minima dell'area per le parti inferiori del supporto. I poligoni con un'area più piccola rispetto a questo valore saranno stampati come supporto" -" normale." +msgstr "Taille minimale de la surface des bas du support. Les polygones dont la surface est inférieure à cette valeur ne seront pas imprimés comme support normal." #: /fdmprinter.def.json msgctxt "support_interface_offset label" msgid "Support Interface Horizontal Expansion" -msgstr "Espansione orizzontale interfaccia supporto" +msgstr "Expansion horizontale de l'interface de support" #: /fdmprinter.def.json msgctxt "support_interface_offset description" msgid "Amount of offset applied to the support interface polygons." -msgstr "Entità di offset applicato ai poligoni di interfaccia del supporto." +msgstr "Quantité de décalage appliquée aux polygones de l'interface de support." #: /fdmprinter.def.json msgctxt "support_roof_offset label" msgid "Support Roof Horizontal Expansion" -msgstr "Espansione orizzontale parti superiori supporto" +msgstr "Expansion horizontale du plafond de support" #: /fdmprinter.def.json msgctxt "support_roof_offset description" msgid "Amount of offset applied to the roofs of the support." -msgstr "Entità di offset applicato alle parti superiori del supporto." +msgstr "Quantité de décalage appliqué aux plafonds du support." #: /fdmprinter.def.json msgctxt "support_bottom_offset label" msgid "Support Floor Horizontal Expansion" -msgstr "Espansione orizzontale parti inferiori supporto" +msgstr "Expansion horizontale du bas de support" #: /fdmprinter.def.json msgctxt "support_bottom_offset description" msgid "Amount of offset applied to the floors of the support." -msgstr "Entità di offset applicato alle parti inferiori del supporto." +msgstr "Quantité de décalage appliqué aux bas du support." #: /fdmprinter.def.json msgctxt "support_interface_angles label" msgid "Support Interface Line Directions" -msgstr "Direzioni della linea dell'interfaccia di supporto" +msgstr "Direction de ligne d'interface du support" #: /fdmprinter.def.json msgctxt "support_interface_angles description" @@ -5363,15 +5350,15 @@ msgid "" "the whole list is contained in square brackets. Default is an empty list " "which means use the default angles (alternates between 45 and 135 degrees if " "interfaces are quite thick or 90 degrees)." -msgstr "Elenco di direzioni linee intere da utilizzare. Gli elementi dall'elenco sono utilizzati in sequenza con il progredire dei layers e, al raggiungimento" -" della fine dell'elenco, la sequenza ricomincia dall’inizio. Le voci elencate sono separate da virgole e l'intero elenco è racchiuso tra parentesi quadre." -" L'elenco predefinito è vuoto, vale a dire che utilizza gli angoli predefiniti (alterna tra 45 e 135 gradi se le interfacce sono abbastanza spesse oppure" -" 90 gradi)." +msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser. Les éléments de la liste sont utilisés de manière séquentielle à mesure de l'avancement" +" des couches. La liste reprend depuis le début lorsque la fin est atteinte. Les éléments de la liste sont séparés par des virgules et la liste entière" +" est encadrée entre crochets. La valeur par défaut est une liste vide, ce qui signifie que les angles par défaut sont utilisés (alternative entre 45 et" +" 135 degrés si les interfaces sont assez épaisses ou 90 degrés)." #: /fdmprinter.def.json msgctxt "support_roof_angles label" msgid "Support Roof Line Directions" -msgstr "Direzioni delle linee di supporto superiori" +msgstr "Direction de la ligne de plafond de support" #: /fdmprinter.def.json msgctxt "support_roof_angles description" @@ -5382,15 +5369,15 @@ msgid "" "the whole list is contained in square brackets. Default is an empty list " "which means use the default angles (alternates between 45 and 135 degrees if " "interfaces are quite thick or 90 degrees)." -msgstr "Elenco di direzioni linee intere da utilizzare. Gli elementi dall'elenco sono utilizzati in sequenza con il progredire dei layers e, al raggiungimento" -" della fine dell'elenco, la sequenza ricomincia dall’inizio. Le voci elencate sono separate da virgole e l'intero elenco è racchiuso tra parentesi quadre." -" L'elenco predefinito è vuoto, vale a dire che utilizza gli angoli predefiniti (alterna tra 45 e 135 gradi se le interfacce sono abbastanza spesse oppure" -" 90 gradi)." +msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser. Les éléments de la liste sont utilisés de manière séquentielle à mesure de l'avancement" +" des couches. La liste reprend depuis le début lorsque la fin est atteinte. Les éléments de la liste sont séparés par des virgules et la liste entière" +" est encadrée entre crochets. La valeur par défaut est une liste vide, ce qui signifie que les angles par défaut sont utilisés (alternative entre 45 et" +" 135 degrés si les interfaces sont assez épaisses ou 90 degrés)." #: /fdmprinter.def.json msgctxt "support_bottom_angles label" msgid "Support Floor Line Directions" -msgstr "Direzioni della larghezza della linea di supporto inferiore" +msgstr "Direction de la ligne de bas de support" #: /fdmprinter.def.json msgctxt "support_bottom_angles description" @@ -5401,40 +5388,41 @@ msgid "" "the whole list is contained in square brackets. Default is an empty list " "which means use the default angles (alternates between 45 and 135 degrees if " "interfaces are quite thick or 90 degrees)." -msgstr "Elenco di direzioni linee intere da utilizzare. Gli elementi dall'elenco sono utilizzati in sequenza con il progredire dei layers e, al raggiungimento" -" della fine dell'elenco, la sequenza ricomincia dall’inizio. Le voci elencate sono separate da virgole e l'intero elenco è racchiuso tra parentesi quadre." -" L'elenco predefinito è vuoto, vale a dire che utilizza gli angoli predefiniti (alterna tra 45 e 135 gradi se le interfacce sono abbastanza spesse oppure" -" 90 gradi)." +msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser. Les éléments de la liste sont utilisés de manière séquentielle à mesure de l'avancement" +" des couches. La liste reprend depuis le début lorsque la fin est atteinte. Les éléments de la liste sont séparés par des virgules et la liste entière" +" est encadrée entre crochets. La valeur par défaut est une liste vide, ce qui signifie que les angles par défaut sont utilisés (alternative entre 45 et" +" 135 degrés si les interfaces sont assez épaisses ou 90 degrés)." #: /fdmprinter.def.json msgctxt "support_fan_enable label" msgid "Fan Speed Override" -msgstr "Override velocità della ventola" +msgstr "Annulation de la vitesse du ventilateur" #: /fdmprinter.def.json msgctxt "support_fan_enable description" msgid "" "When enabled, the print cooling fan speed is altered for the skin regions " "immediately above the support." -msgstr "Quando abilitata, la velocità della ventola di raffreddamento stampa viene modificata per le zone del rivestimento esterno subito sopra il supporto." +msgstr "Lorsque cette fonction est activée, la vitesse du ventilateur de refroidissement de l'impression est modifiée pour les régions de la couche extérieure" +" situées immédiatement au-dessus du support." #: /fdmprinter.def.json msgctxt "support_supported_skin_fan_speed label" msgid "Supported Skin Fan Speed" -msgstr "Velocità della ventola del rivestimento esterno supportato" +msgstr "Vitesse du ventilateur de couche extérieure supportée" #: /fdmprinter.def.json msgctxt "support_supported_skin_fan_speed description" msgid "" "Percentage fan speed to use when printing the skin regions immediately above " "the support. Using a high fan speed can make the support easier to remove." -msgstr "Percentuale della velocità della ventola da usare quando si stampano le zone del rivestimento esterno subito sopra il supporto. L’uso di una velocità ventola" -" elevata può facilitare la rimozione del supporto." +msgstr "Pourcentage de la vitesse du ventilateur à utiliser lors de l'impression des zones de couche extérieure situées immédiatement au-dessus du support. Une" +" vitesse de ventilateur élevée facilite le retrait du support." #: /fdmprinter.def.json msgctxt "support_use_towers label" msgid "Use Towers" -msgstr "Utilizzo delle torri" +msgstr "Utilisation de tours" #: /fdmprinter.def.json msgctxt "support_use_towers description" @@ -5442,81 +5430,81 @@ msgid "" "Use specialized towers to support tiny overhang areas. These towers have a " "larger diameter than the region they support. Near the overhang the towers' " "diameter decreases, forming a roof." -msgstr "Utilizza speciali torri per il supporto di piccolissime aree di sbalzo. Queste torri hanno un diametro maggiore rispetto a quello dell'area che supportano." -" In prossimità dello sbalzo il diametro delle torri diminuisce, formando un 'tetto'." +msgstr "Utilise des tours spéciales pour soutenir de petites zones en porte-à-faux. Le diamètre de ces tours est plus large que la zone qu’elles soutiennent. Près" +" du porte-à-faux, le diamètre des tours diminue pour former un toit." #: /fdmprinter.def.json msgctxt "support_tower_diameter label" msgid "Tower Diameter" -msgstr "Diametro della torre" +msgstr "Diamètre de la tour" #: /fdmprinter.def.json msgctxt "support_tower_diameter description" msgid "The diameter of a special tower." -msgstr "Corrisponde al diametro di una torre speciale." +msgstr "Le diamètre d’une tour spéciale." #: /fdmprinter.def.json msgctxt "support_tower_maximum_supported_diameter label" msgid "Maximum Tower-Supported Diameter" -msgstr "Diametro supportato dalla torre" +msgstr "Diamètre maximal supporté par la tour" #: /fdmprinter.def.json msgctxt "support_tower_maximum_supported_diameter description" msgid "" "Maximum diameter in the X/Y directions of a small area which is to be " "supported by a specialized support tower." -msgstr "È il diametro massimo nelle direzioni X/Y di una piccola area, che deve essere sostenuta da una torre speciale." +msgstr "Le diamètre maximal sur les axes X/Y d’une petite zone qui doit être soutenue par une tour de soutien spéciale." #: /fdmprinter.def.json msgctxt "support_tower_roof_angle label" msgid "Tower Roof Angle" -msgstr "Angolazione della parte superiore (tetto) della torre" +msgstr "Angle du toit de la tour" #: /fdmprinter.def.json msgctxt "support_tower_roof_angle description" msgid "" "The angle of a rooftop of a tower. A higher value results in pointed tower " "roofs, a lower value results in flattened tower roofs." -msgstr "L’angolo della parte superiore di una torre. Un valore superiore genera parti superiori appuntite, un valore inferiore, parti superiori piatte." +msgstr "L'angle du toit d'une tour. Une valeur plus élevée entraîne des toits de tour pointus, tandis qu'une valeur plus basse résulte en des toits plats." #: /fdmprinter.def.json msgctxt "support_mesh_drop_down label" msgid "Drop Down Support Mesh" -msgstr "Maglia supporto di discesa" +msgstr "Maillage de support descendant" #: /fdmprinter.def.json msgctxt "support_mesh_drop_down description" msgid "" "Make support everywhere below the support mesh, so that there's no overhang " "in the support mesh." -msgstr "Rappresenta il supporto ovunque sotto la maglia di supporto, in modo che in questa non vi siano punti a sbalzo." +msgstr "Inclure du support à tout emplacement sous le maillage de support, de sorte à ce qu'il n'y ait pas de porte-à-faux dans le maillage de support." #: /fdmprinter.def.json msgctxt "support_meshes_present label" msgid "Scene Has Support Meshes" -msgstr "La scena è dotata di maglie di supporto" +msgstr "La scène comporte un maillage de support" #: /fdmprinter.def.json msgctxt "support_meshes_present description" msgid "" "There are support meshes present in the scene. This setting is controlled by " "Cura." -msgstr "Nella scena sono presenti maglie di supporto. Questa impostazione è controllata da Cura." +msgstr "Un maillage de support est présent sur la scène. Ce paramètre est contrôlé par Cura." #: /fdmprinter.def.json msgctxt "platform_adhesion label" msgid "Build Plate Adhesion" -msgstr "Adesione piano di stampa" +msgstr "Adhérence du plateau" #: /fdmprinter.def.json msgctxt "platform_adhesion description" msgid "Adhesion" -msgstr "Adesione" +msgstr "Adhérence" #: /fdmprinter.def.json msgctxt "prime_blob_enable label" msgid "Enable Prime Blob" -msgstr "Abilitazione blob di innesco" +msgstr "Activer la goutte de préparation" #: /fdmprinter.def.json msgctxt "prime_blob_enable description" @@ -5525,38 +5513,38 @@ msgid "" "setting on will ensure that the extruder will have material ready at the " "nozzle before printing. Printing Brim or Skirt can act like priming too, in " "which case turning this setting off saves some time." -msgstr "Eventuale innesco del filamento con un blob prima della stampa. L'attivazione di questa impostazione garantisce che l'estrusore avrà il materiale pronto" -" all'ugello prima della stampa. Anche la stampa Brim o Skirt può funzionare da innesco, nel qual caso la disabilitazione di questa impostazione consente" -" di risparmiare tempo." +msgstr "Préparer les filaments avec une goutte avant l'impression. Ce paramètre permet d'assurer que l'extrudeuse disposera de matériau prêt au niveau de la buse" +" avant l'impression. La jupe/bordure d'impression peut également servir de préparation, auquel cas le fait de laisser ce paramètre désactivé permet de" +" gagner un peu de temps." #: /fdmprinter.def.json msgctxt "extruder_prime_pos_x label" msgid "Extruder Prime X Position" -msgstr "Posizione X innesco estrusore" +msgstr "Extrudeuse Position d'amorçage X" #: /fdmprinter.def.json msgctxt "extruder_prime_pos_x description" msgid "" "The X coordinate of the position where the nozzle primes at the start of " "printing." -msgstr "La coordinata X della posizione in cui l’ugello si innesca all’avvio della stampa." +msgstr "Les coordonnées X de la position à laquelle la buse s'amorce au début de l'impression." #: /fdmprinter.def.json msgctxt "extruder_prime_pos_y label" msgid "Extruder Prime Y Position" -msgstr "Posizione Y innesco estrusore" +msgstr "Extrudeuse Position d'amorçage Y" #: /fdmprinter.def.json msgctxt "extruder_prime_pos_y description" msgid "" "The Y coordinate of the position where the nozzle primes at the start of " "printing." -msgstr "La coordinata Y della posizione in cui l’ugello si innesca all’avvio della stampa." +msgstr "Les coordonnées Y de la position à laquelle la buse s'amorce au début de l'impression." #: /fdmprinter.def.json msgctxt "adhesion_type label" msgid "Build Plate Adhesion Type" -msgstr "Tipo di adesione piano di stampa" +msgstr "Type d'adhérence du plateau" #: /fdmprinter.def.json msgctxt "adhesion_type description" @@ -5566,107 +5554,106 @@ msgid "" "base of your model to prevent warping. Raft adds a thick grid with a roof " "below the model. Skirt is a line printed around the model, but not connected " "to the model." -msgstr "Sono previste diverse opzioni che consentono di migliorare l'applicazione dello strato iniziale dell’estrusione e migliorano l’adesione. Il brim aggiunge" -" un'area piana a singolo strato attorno alla base del modello, per evitare deformazioni. Il raft aggiunge un fitto reticolato con un tetto al di sotto" -" del modello. Lo skirt è una linea stampata attorno al modello, ma non collegata al modello." +msgstr "Différentes options qui permettent d'améliorer la préparation de votre extrusion et l'adhérence au plateau. La bordure ajoute une zone plate d'une seule" +" couche autour de la base de votre modèle, afin de l'empêcher de se redresser. Le radeau ajoute une grille épaisse avec un toit sous le modèle. La jupe" +" est une ligne imprimée autour du modèle mais qui n'est pas rattachée au modèle." #: /fdmprinter.def.json msgctxt "adhesion_type option skirt" msgid "Skirt" -msgstr "Skirt" +msgstr "Jupe" #: /fdmprinter.def.json msgctxt "adhesion_type option brim" msgid "Brim" -msgstr "Brim" +msgstr "Bordure" #: /fdmprinter.def.json msgctxt "adhesion_type option raft" msgid "Raft" -msgstr "Raft" +msgstr "Radeau" #: /fdmprinter.def.json msgctxt "adhesion_type option none" msgid "None" -msgstr "Nessuno" +msgstr "Aucun" #: /fdmprinter.def.json msgctxt "adhesion_extruder_nr label" msgid "Build Plate Adhesion Extruder" -msgstr "Estrusore adesione piano di stampa" +msgstr "Extrudeuse d'adhérence du plateau" #: /fdmprinter.def.json msgctxt "adhesion_extruder_nr description" msgid "" "The extruder train to use for printing the skirt/brim/raft. This is used in " "multi-extrusion." -msgstr "Il treno estrusore utilizzato per la stampa dello skirt/brim/raft. Utilizzato nell’estrusione multipla." +msgstr "Le train d'extrudeuse à utiliser pour l'impression de la jupe/la bordure/du radeau. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "skirt_brim_extruder_nr label" msgid "Skirt/Brim Extruder" -msgstr "Estrusore skirt/brim" +msgstr "Extrudeur de la jupe/bordure" #: /fdmprinter.def.json msgctxt "skirt_brim_extruder_nr description" msgid "" "The extruder train to use for printing the skirt or brim. This is used in " "multi-extrusion." -msgstr "Il treno estrusore utilizzato per la stampa dello skirt o del brim. Utilizzato nell’estrusione multipla." +msgstr "Le train d'extrudeur à utiliser pour l'impression de la jupe ou de la bordure. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "raft_base_extruder_nr label" msgid "Raft Base Extruder" -msgstr "Estrusore della base del raft" +msgstr "Extrudeur de la base du raft" #: /fdmprinter.def.json msgctxt "raft_base_extruder_nr description" msgid "" "The extruder train to use for printing the first layer of the raft. This is " "used in multi-extrusion." -msgstr "Il treno estrusore utilizzato per la stampa del primo strato del raft. Utilizzato nell’estrusione multipla." +msgstr "Le train d'extrudeur à utiliser pour l'impression de la première couche du radeau. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "raft_interface_extruder_nr label" msgid "Raft Middle Extruder" -msgstr "Estrusore intermedio del raft" +msgstr "Extrudeur du milieu du radeau" #: /fdmprinter.def.json msgctxt "raft_interface_extruder_nr description" msgid "" "The extruder train to use for printing the middle layer of the raft. This is " "used in multi-extrusion." -msgstr "Il treno estrusore utilizzato per la stampa dello strato intermedio del raft. Utilizzato nell’estrusione multipla." +msgstr "Le train d'extrudeur à utiliser pour imprimer la couche intermédiaire du radeau. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "raft_surface_extruder_nr label" msgid "Raft Top Extruder" -msgstr "Estrusore superiore del raft" +msgstr "Extrudeur du haut du radeau" #: /fdmprinter.def.json msgctxt "raft_surface_extruder_nr description" msgid "" "The extruder train to use for printing the top layer(s) of the raft. This is " "used in multi-extrusion." -msgstr "Il treno estrusore utilizzato per la stampa degli strati superiori del raft. Utilizzato nell’estrusione multipla." +msgstr "Le train d'extrudeur à utiliser pour imprimer la ou les couches du haut du radeau. Cela est utilisé en multi-extrusion." #: /fdmprinter.def.json msgctxt "skirt_line_count label" msgid "Skirt Line Count" -msgstr "Numero di linee dello skirt" +msgstr "Nombre de lignes de la jupe" #: /fdmprinter.def.json msgctxt "skirt_line_count description" msgid "" "Multiple skirt lines help to prime your extrusion better for small models. " "Setting this to 0 will disable the skirt." -msgstr "Più linee di skirt contribuiscono a migliorare l'avvio dell'estrusione per modelli di piccole dimensioni. L'impostazione di questo valore a 0 disattiverà" -" la funzione skirt." +msgstr "Une jupe à plusieurs lignes vous aide à mieux préparer votre extrusion pour les petits modèles. Définissez celle valeur sur 0 pour désactiver la jupe." #: /fdmprinter.def.json msgctxt "skirt_gap label" msgid "Skirt Distance" -msgstr "Distanza dello skirt" +msgstr "Distance de la jupe" #: /fdmprinter.def.json msgctxt "skirt_gap description" @@ -5674,12 +5661,13 @@ msgid "" "The horizontal distance between the skirt and the first layer of the print.\n" "This is the minimum distance. Multiple skirt lines will extend outwards from " "this distance." -msgstr "Indica la distanza orizzontale tra lo skirt ed il primo strato della stampa.\nQuesta è la distanza minima. Più linee di skirt aumenteranno tale distanza." +msgstr "La distance horizontale entre la jupe et la première couche de l’impression.\nIl s’agit de la distance minimale séparant la jupe de l’objet. Si la jupe" +" a d’autres lignes, celles-ci s’étendront vers l’extérieur." #: /fdmprinter.def.json msgctxt "skirt_brim_minimal_length label" msgid "Skirt/Brim Minimum Length" -msgstr "Lunghezza minima dello skirt/brim" +msgstr "Longueur minimale de la jupe/bordure" #: /fdmprinter.def.json msgctxt "skirt_brim_minimal_length description" @@ -5688,13 +5676,14 @@ msgid "" "all skirt or brim lines together, more skirt or brim lines will be added " "until the minimum length is reached. Note: If the line count is set to 0 " "this is ignored." -msgstr "Indica la lunghezza minima dello skirt o del brim. Se tale lunghezza minima non viene raggiunta da tutte le linee skirt o brim insieme, saranno aggiunte" -" più linee di skirt o brim fino a raggiungere la lunghezza minima. Nota: se il valore è impostato a 0, questa funzione viene ignorata." +msgstr "La longueur minimale de la jupe ou bordure. Si cette longueur n’est pas atteinte par toutes les lignes de jupe ou de bordure ensemble, d’autres lignes" +" de jupe ou de bordure seront ajoutées afin d’atteindre la longueur minimale. Veuillez noter que si le nombre de lignes est défini sur 0, cette option est" +" ignorée." #: /fdmprinter.def.json msgctxt "brim_width label" msgid "Brim Width" -msgstr "Larghezza del brim" +msgstr "Largeur de la bordure" #: /fdmprinter.def.json msgctxt "brim_width description" @@ -5702,25 +5691,26 @@ msgid "" "The distance from the model to the outermost brim line. A larger brim " "enhances adhesion to the build plate, but also reduces the effective print " "area." -msgstr "Indica la distanza tra il modello e la linea di estremità del brim. Un brim di maggiore dimensione aderirà meglio al piano di stampa, ma con riduzione" -" dell'area di stampa." +msgstr "La distance entre le modèle et la ligne de bordure la plus à l'extérieur. Une bordure plus large renforce l'adhérence au plateau mais réduit également" +" la zone d'impression réelle." #: /fdmprinter.def.json msgctxt "brim_line_count label" msgid "Brim Line Count" -msgstr "Numero di linee del brim" +msgstr "Nombre de lignes de la bordure" #: /fdmprinter.def.json msgctxt "brim_line_count description" msgid "" "The number of lines used for a brim. More brim lines enhance adhesion to the " "build plate, but also reduces the effective print area." -msgstr "Corrisponde al numero di linee utilizzate per un brim. Più linee brim migliorano l’adesione al piano di stampa, ma con riduzione dell'area di stampa." +msgstr "Le nombre de lignes utilisées pour une bordure. Un plus grand nombre de lignes de bordure renforce l'adhérence au plateau mais réduit également la zone" +" d'impression réelle." #: /fdmprinter.def.json msgctxt "brim_gap label" msgid "Brim Distance" -msgstr "Distanza del Brim" +msgstr "Distance de la bordure" #: /fdmprinter.def.json msgctxt "brim_gap description" @@ -5728,13 +5718,13 @@ msgid "" "The horizontal distance between the first brim line and the outline of the " "first layer of the print. A small gap can make the brim easier to remove " "while still providing the thermal benefits." -msgstr "Distanza orizzontale tra la linea del primo brim e il profilo del primo layer della stampa. Un piccolo interstizio può semplificare la rimozione del brim" -" e allo stesso tempo fornire dei vantaggi termici." +msgstr "La distance horizontale entre la première ligne de bordure et le contour de la première couche de l'impression. Un petit trou peut faciliter l'enlèvement" +" de la bordure tout en offrant des avantages thermiques." #: /fdmprinter.def.json msgctxt "brim_replaces_support label" msgid "Brim Replaces Support" -msgstr "Brim in sostituzione del supporto" +msgstr "La bordure remplace le support" #: /fdmprinter.def.json msgctxt "brim_replaces_support description" @@ -5742,13 +5732,13 @@ msgid "" "Enforce brim to be printed around the model even if that space would " "otherwise be occupied by support. This replaces some regions of the first " "layer of support by brim regions." -msgstr "Abilita la stampa del brim intorno al modello anche se quello spazio dovrebbe essere occupato dal supporto. Sostituisce alcune zone del primo strato del" -" supporto con zone del brim." +msgstr "Appliquer la bordure à imprimer autour du modèle même si cet espace aurait autrement dû être occupé par le support, en remplaçant certaines régions de" +" la première couche de support par des régions de la bordure." #: /fdmprinter.def.json msgctxt "brim_outside_only label" msgid "Brim Only on Outside" -msgstr "Brim solo sull’esterno" +msgstr "Bordure uniquement sur l'extérieur" #: /fdmprinter.def.json msgctxt "brim_outside_only description" @@ -5756,13 +5746,13 @@ msgid "" "Only print the brim on the outside of the model. This reduces the amount of " "brim you need to remove afterwards, while it doesn't reduce the bed adhesion " "that much." -msgstr "Stampa il brim solo sull’esterno del modello. Questo riduce la quantità del brim che si deve rimuovere in seguito, mentre non riduce particolarmente l’adesione" -" al piano." +msgstr "Imprimer uniquement la bordure sur l'extérieur du modèle. Cela réduit la quantité de bordure que vous devez retirer par la suite, sans toutefois véritablement" +" réduire l'adhérence au plateau." #: /fdmprinter.def.json msgctxt "raft_margin label" msgid "Raft Extra Margin" -msgstr "Margine extra del raft" +msgstr "Marge supplémentaire du radeau" #: /fdmprinter.def.json msgctxt "raft_margin description" @@ -5770,13 +5760,13 @@ msgid "" "If the raft is enabled, this is the extra raft area around the model which " "is also given a raft. Increasing this margin will create a stronger raft " "while using more material and leaving less area for your print." -msgstr "Se è abilitata la funzione raft, questo valore indica di quanto il raft fuoriesce rispetto al perimetro esterno del modello. Aumentando questo margine" -" si creerà un raft più robusto, utilizzando però più materiale e lasciando meno spazio per la stampa." +msgstr "Si vous avez appliqué un radeau, alors il s’agit de l’espace de radeau supplémentaire autour du modèle qui dispose déjà d’un radeau. L’augmentation de" +" cette marge va créer un radeau plus solide, mais requiert davantage de matériau et laisse moins de place pour votre impression." #: /fdmprinter.def.json msgctxt "raft_smoothing label" msgid "Raft Smoothing" -msgstr "Smoothing raft" +msgstr "Lissage de radeau" #: /fdmprinter.def.json msgctxt "raft_smoothing description" @@ -5785,13 +5775,13 @@ msgid "" "rounded. Inward corners are rounded to a semi circle with a radius equal to " "the value given here. This setting also removes holes in the raft outline " "which are smaller than such a circle." -msgstr "Questa impostazione controlla l'entità dell'arrotondamento degli angoli interni sul profilo raft. Gli angoli interni vengono arrotondati a semicerchio" -" con un raggio pari al valore indicato. Questa impostazione elimina inoltre i fori sul profilo raft più piccoli di tale cerchio." +msgstr "Ce paramètre définit combien d'angles intérieurs sont arrondis dans le contour de radeau. Les angles internes sont arrondis en un demi-cercle avec un rayon" +" égal à la valeur indiquée ici. Ce paramètre élimine également les cavités dans le contour de radeau qui sont d'une taille inférieure à ce cercle." #: /fdmprinter.def.json msgctxt "raft_airgap label" msgid "Raft Air Gap" -msgstr "Traferro del raft" +msgstr "Lame d'air du radeau" #: /fdmprinter.def.json msgctxt "raft_airgap description" @@ -5799,13 +5789,13 @@ msgid "" "The gap between the final raft layer and the first layer of the model. Only " "the first layer is raised by this amount to lower the bonding between the " "raft layer and the model. Makes it easier to peel off the raft." -msgstr "È l'interstizio tra lo strato di raft finale ed il primo strato del modello. Solo il primo strato viene sollevato di questo valore per ridurre l'adesione" -" fra lo strato di raft e il modello. Ciò rende più facile rimuovere il raft." +msgstr "L’espace entre la dernière couche du radeau et la première couche du modèle. Seule la première couche est surélevée de cette quantité d’espace pour réduire" +" l’adhérence entre la couche du radeau et le modèle. Cela facilite le décollage du radeau." #: /fdmprinter.def.json msgctxt "layer_0_z_overlap label" msgid "Initial Layer Z Overlap" -msgstr "Z Sovrapposizione Primo Strato" +msgstr "Chevauchement Z de la couche initiale" #: /fdmprinter.def.json msgctxt "layer_0_z_overlap description" @@ -5813,13 +5803,13 @@ msgid "" "Make the first and second layer of the model overlap in the Z direction to " "compensate for the filament lost in the airgap. All models above the first " "model layer will be shifted down by this amount." -msgstr "Effettua il primo e secondo strato di sovrapposizione modello nella direzione Z per compensare il filamento perso nel traferro. Tutti i modelli sopra il" -" primo strato del modello saranno spostati verso il basso di questa quantità." +msgstr "La première et la deuxième couche du modèle se chevauchent dans la direction Z pour compenser le filament perdu dans l'entrefer. Toutes les couches au-dessus" +" de la première couche du modèle seront décalées de ce montant." #: /fdmprinter.def.json msgctxt "raft_surface_layers label" msgid "Raft Top Layers" -msgstr "Strati superiori del raft" +msgstr "Couches supérieures du radeau" #: /fdmprinter.def.json msgctxt "raft_surface_layers description" @@ -5827,48 +5817,48 @@ msgid "" "The number of top layers on top of the 2nd raft layer. These are fully " "filled layers that the model sits on. 2 layers result in a smoother top " "surface than 1." -msgstr "Numero di strati sulla parte superiore del secondo strato del raft. Si tratta di strati completamente riempiti su cui poggia il modello. 2 strati danno" -" come risultato una superficie superiore più levigata rispetto ad 1 solo strato." +msgstr "Nombre de couches de surface au-dessus de la deuxième couche du radeau. Il s’agit des couches entièrement remplies sur lesquelles le modèle est posé. En" +" général, deux couches offrent une surface plus lisse qu'une seule." #: /fdmprinter.def.json msgctxt "raft_surface_thickness label" msgid "Raft Top Layer Thickness" -msgstr "Spessore dello strato superiore del raft" +msgstr "Épaisseur de la couche supérieure du radeau" #: /fdmprinter.def.json msgctxt "raft_surface_thickness description" msgid "Layer thickness of the top raft layers." -msgstr "È lo spessore degli strati superiori del raft." +msgstr "Épaisseur des couches supérieures du radeau." #: /fdmprinter.def.json msgctxt "raft_surface_line_width label" msgid "Raft Top Line Width" -msgstr "Larghezza delle linee superiori del raft" +msgstr "Largeur de la ligne supérieure du radeau" #: /fdmprinter.def.json msgctxt "raft_surface_line_width description" msgid "" "Width of the lines in the top surface of the raft. These can be thin lines " "so that the top of the raft becomes smooth." -msgstr "Indica la larghezza delle linee della superficie superiore del raft. Queste possono essere linee sottili atte a levigare la parte superiore del raft." +msgstr "Largeur des lignes de la surface supérieure du radeau. Elles doivent être fines pour rendre le dessus du radeau lisse." #: /fdmprinter.def.json msgctxt "raft_surface_line_spacing label" msgid "Raft Top Spacing" -msgstr "Spaziatura superiore del raft" +msgstr "Interligne supérieur du radeau" #: /fdmprinter.def.json msgctxt "raft_surface_line_spacing description" msgid "" "The distance between the raft lines for the top raft layers. The spacing " "should be equal to the line width, so that the surface is solid." -msgstr "Indica la distanza tra le linee che costituiscono la maglia superiore del raft. La distanza deve essere uguale alla larghezza delle linee, in modo tale" -" da ottenere una superficie solida." +msgstr "La distance entre les lignes du radeau pour les couches supérieures de celui-ci. Cet espace doit être égal à la largeur de ligne afin de créer une surface" +" solide." #: /fdmprinter.def.json msgctxt "raft_interface_layers label" msgid "Raft Middle Layers" -msgstr "Strati intermedi del raft" +msgstr "Couches du milieu du radeau" #: /fdmprinter.def.json msgctxt "raft_interface_layers description" @@ -5876,36 +5866,35 @@ msgid "" "The number of layers between the base and the surface of the raft. These " "comprise the main thickness of the raft. Increasing this creates a thicker, " "sturdier raft." -msgstr "Il numero di strati tra la base e la superficie del raft. Questi costituiscono lo spessore principale del raft. L'incremento di questo numero crea un raft" -" più spesso e robusto." +msgstr "Nombre de couches entre la base et la surface du radeau. Elles comprennent l'épaisseur principale du radeau. En l'augmentant, on obtient un radeau plus" +" épais et plus solide." #: /fdmprinter.def.json msgctxt "raft_interface_thickness label" msgid "Raft Middle Thickness" -msgstr "Spessore dello strato intermedio del raft" +msgstr "Épaisseur intermédiaire du radeau" #: /fdmprinter.def.json msgctxt "raft_interface_thickness description" msgid "Layer thickness of the middle raft layer." -msgstr "È lo spessore dello strato intermedio del raft." +msgstr "Épaisseur de la couche intermédiaire du radeau." #: /fdmprinter.def.json msgctxt "raft_interface_line_width label" msgid "Raft Middle Line Width" -msgstr "Larghezza delle linee dello strato intermedio del raft" +msgstr "Largeur de la ligne intermédiaire du radeau" #: /fdmprinter.def.json msgctxt "raft_interface_line_width description" msgid "" "Width of the lines in the middle raft layer. Making the second layer extrude " "more causes the lines to stick to the build plate." -msgstr "Indica la larghezza delle linee dello strato intermedio del raft. Una maggiore estrusione del secondo strato provoca l'incollamento delle linee al piano" -" di stampa." +msgstr "Largeur des lignes de la couche intermédiaire du radeau. Une plus grande extrusion de la deuxième couche renforce l'adhérence des lignes au plateau." #: /fdmprinter.def.json msgctxt "raft_interface_line_spacing label" msgid "Raft Middle Spacing" -msgstr "Spaziatura dello strato intermedio del raft" +msgstr "Interligne intermédiaire du radeau" #: /fdmprinter.def.json msgctxt "raft_interface_line_spacing description" @@ -5913,59 +5902,59 @@ msgid "" "The distance between the raft lines for the middle raft layer. The spacing " "of the middle should be quite wide, while being dense enough to support the " "top raft layers." -msgstr "Indica la distanza fra le linee dello strato intermedio del raft. La spaziatura dello strato intermedio deve essere abbastanza ampia, ma al tempo stesso" -" sufficientemente fitta da sostenere gli strati superiori del raft." +msgstr "La distance entre les lignes du radeau pour la couche intermédiaire de celui-ci. L'espace intermédiaire doit être assez large et suffisamment dense pour" +" supporter les couches supérieures du radeau." #: /fdmprinter.def.json msgctxt "raft_base_thickness label" msgid "Raft Base Thickness" -msgstr "Spessore della base del raft" +msgstr "Épaisseur de la base du radeau" #: /fdmprinter.def.json msgctxt "raft_base_thickness description" msgid "" "Layer thickness of the base raft layer. This should be a thick layer which " "sticks firmly to the printer build plate." -msgstr "Indica lo spessore dello strato di base del raft. Questo strato deve essere spesso per aderire saldamente al piano di stampa." +msgstr "Épaisseur de la couche de base du radeau. Cette couche doit être épaisse et adhérer fermement au plateau." #: /fdmprinter.def.json msgctxt "raft_base_line_width label" msgid "Raft Base Line Width" -msgstr "Larghezza delle linee dello strato di base del raft" +msgstr "Largeur de la ligne de base du radeau" #: /fdmprinter.def.json msgctxt "raft_base_line_width description" msgid "" "Width of the lines in the base raft layer. These should be thick lines to " "assist in build plate adhesion." -msgstr "Indica la larghezza delle linee dello strato di base del raft. Le linee di questo strato devono essere spesse per favorire l'adesione al piano di stampa." +msgstr "Largeur des lignes de la couche de base du radeau. Elles doivent être épaisses pour permettre l’adhérence au plateau." #: /fdmprinter.def.json msgctxt "raft_base_line_spacing label" msgid "Raft Base Line Spacing" -msgstr "Spaziatura delle linee dello strato di base del raft" +msgstr "Espacement des lignes de base du radeau" #: /fdmprinter.def.json msgctxt "raft_base_line_spacing description" msgid "" "The distance between the raft lines for the base raft layer. Wide spacing " "makes for easy removal of the raft from the build plate." -msgstr "Indica la distanza tra le linee che costituiscono lo strato di base del raft. Un'ampia spaziatura favorisce la rimozione del raft dal piano di stampa." +msgstr "La distance entre les lignes du radeau pour la couche de base de celui-ci. Un interligne large facilite le retrait du radeau du plateau." #: /fdmprinter.def.json msgctxt "raft_speed label" msgid "Raft Print Speed" -msgstr "Velocità di stampa del raft" +msgstr "Vitesse d’impression du radeau" #: /fdmprinter.def.json msgctxt "raft_speed description" msgid "The speed at which the raft is printed." -msgstr "Indica la velocità alla quale il raft è stampato." +msgstr "La vitesse à laquelle le radeau est imprimé." #: /fdmprinter.def.json msgctxt "raft_surface_speed label" msgid "Raft Top Print Speed" -msgstr "Velocità di stampa parte superiore del raft" +msgstr "Vitesse d’impression du dessus du radeau" #: /fdmprinter.def.json msgctxt "raft_surface_speed description" @@ -5973,13 +5962,13 @@ msgid "" "The speed at which the top raft layers are printed. These should be printed " "a bit slower, so that the nozzle can slowly smooth out adjacent surface " "lines." -msgstr "Indica la velocità alla quale sono stampati gli strati superiori del raft. La stampa di questi strati deve avvenire un po' più lentamente, in modo da consentire" -" all'ugello di levigare lentamente le linee superficiali adiacenti." +msgstr "Vitesse à laquelle les couches du dessus du radeau sont imprimées. Elles doivent être imprimées légèrement plus lentement afin que la buse puisse lentement" +" lisser les lignes de surface adjacentes." #: /fdmprinter.def.json msgctxt "raft_interface_speed label" msgid "Raft Middle Print Speed" -msgstr "Velocità di stampa raft intermedio" +msgstr "Vitesse d’impression du milieu du radeau" #: /fdmprinter.def.json msgctxt "raft_interface_speed description" @@ -5987,13 +5976,13 @@ msgid "" "The speed at which the middle raft layer is printed. This should be printed " "quite slowly, as the volume of material coming out of the nozzle is quite " "high." -msgstr "Indica la velocità alla quale viene stampato lo strato intermedio del raft. La sua stampa deve avvenire molto lentamente, considerato che il volume di" -" materiale che fuoriesce dall'ugello è piuttosto elevato." +msgstr "La vitesse à laquelle la couche du milieu du radeau est imprimée. Cette couche doit être imprimée suffisamment lentement du fait que la quantité de matériau" +" sortant de la buse est assez importante." #: /fdmprinter.def.json msgctxt "raft_base_speed label" msgid "Raft Base Print Speed" -msgstr "Velocità di stampa della base del raft" +msgstr "Vitesse d’impression de la base du radeau" #: /fdmprinter.def.json msgctxt "raft_base_speed description" @@ -6001,222 +5990,222 @@ msgid "" "The speed at which the base raft layer is printed. This should be printed " "quite slowly, as the volume of material coming out of the nozzle is quite " "high." -msgstr "Indica la velocità alla quale viene stampata la base del raft. La sua stampa deve avvenire molto lentamente, considerato che il volume di materiale che" -" fuoriesce dall'ugello è piuttosto elevato." +msgstr "La vitesse à laquelle la couche de base du radeau est imprimée. Cette couche doit être imprimée suffisamment lentement du fait que la quantité de matériau" +" sortant de la buse est assez importante." #: /fdmprinter.def.json msgctxt "raft_acceleration label" msgid "Raft Print Acceleration" -msgstr "Accelerazione di stampa del raft" +msgstr "Accélération de l'impression du radeau" #: /fdmprinter.def.json msgctxt "raft_acceleration description" msgid "The acceleration with which the raft is printed." -msgstr "Indica l’accelerazione con cui viene stampato il raft." +msgstr "L'accélération selon laquelle le radeau est imprimé." #: /fdmprinter.def.json msgctxt "raft_surface_acceleration label" msgid "Raft Top Print Acceleration" -msgstr "Accelerazione di stampa parte superiore del raft" +msgstr "Accélération de l'impression du dessus du radeau" #: /fdmprinter.def.json msgctxt "raft_surface_acceleration description" msgid "The acceleration with which the top raft layers are printed." -msgstr "Indica l’accelerazione alla quale vengono stampati gli strati superiori del raft." +msgstr "L'accélération selon laquelle les couches du dessus du radeau sont imprimées." #: /fdmprinter.def.json msgctxt "raft_interface_acceleration label" msgid "Raft Middle Print Acceleration" -msgstr "Accelerazione di stampa raft intermedio" +msgstr "Accélération de l'impression du milieu du radeau" #: /fdmprinter.def.json msgctxt "raft_interface_acceleration description" msgid "The acceleration with which the middle raft layer is printed." -msgstr "Indica l’accelerazione con cui viene stampato lo strato intermedio del raft." +msgstr "L'accélération selon laquelle la couche du milieu du radeau est imprimée." #: /fdmprinter.def.json msgctxt "raft_base_acceleration label" msgid "Raft Base Print Acceleration" -msgstr "Accelerazione di stampa della base del raft" +msgstr "Accélération de l'impression de la base du radeau" #: /fdmprinter.def.json msgctxt "raft_base_acceleration description" msgid "The acceleration with which the base raft layer is printed." -msgstr "Indica l’accelerazione con cui viene stampato lo strato di base del raft." +msgstr "L'accélération selon laquelle la couche de base du radeau est imprimée." #: /fdmprinter.def.json msgctxt "raft_jerk label" msgid "Raft Print Jerk" -msgstr "Jerk stampa del raft" +msgstr "Saccade d’impression du radeau" #: /fdmprinter.def.json msgctxt "raft_jerk description" msgid "The jerk with which the raft is printed." -msgstr "Indica il jerk con cui viene stampato il raft." +msgstr "La saccade selon laquelle le radeau est imprimé." #: /fdmprinter.def.json msgctxt "raft_surface_jerk label" msgid "Raft Top Print Jerk" -msgstr "Jerk di stampa parte superiore del raft" +msgstr "Saccade d’impression du dessus du radeau" #: /fdmprinter.def.json msgctxt "raft_surface_jerk description" msgid "The jerk with which the top raft layers are printed." -msgstr "Indica il jerk al quale vengono stampati gli strati superiori del raft." +msgstr "La saccade selon laquelle les couches du dessus du radeau sont imprimées." #: /fdmprinter.def.json msgctxt "raft_interface_jerk label" msgid "Raft Middle Print Jerk" -msgstr "Jerk di stampa raft intermedio" +msgstr "Saccade d’impression du milieu du radeau" #: /fdmprinter.def.json msgctxt "raft_interface_jerk description" msgid "The jerk with which the middle raft layer is printed." -msgstr "Indica il jerk con cui viene stampato lo strato intermedio del raft." +msgstr "La saccade selon laquelle la couche du milieu du radeau est imprimée." #: /fdmprinter.def.json msgctxt "raft_base_jerk label" msgid "Raft Base Print Jerk" -msgstr "Jerk di stampa della base del raft" +msgstr "Saccade d’impression de la base du radeau" #: /fdmprinter.def.json msgctxt "raft_base_jerk description" msgid "The jerk with which the base raft layer is printed." -msgstr "Indica il jerk con cui viene stampato lo strato di base del raft." +msgstr "La saccade selon laquelle la couche de base du radeau est imprimée." #: /fdmprinter.def.json msgctxt "raft_fan_speed label" msgid "Raft Fan Speed" -msgstr "Velocità della ventola per il raft" +msgstr "Vitesse du ventilateur pendant le radeau" #: /fdmprinter.def.json msgctxt "raft_fan_speed description" msgid "The fan speed for the raft." -msgstr "Indica la velocità di rotazione della ventola per il raft." +msgstr "La vitesse du ventilateur pour le radeau." #: /fdmprinter.def.json msgctxt "raft_surface_fan_speed label" msgid "Raft Top Fan Speed" -msgstr "Velocità della ventola per la parte superiore del raft" +msgstr "Vitesse du ventilateur pour le dessus du radeau" #: /fdmprinter.def.json msgctxt "raft_surface_fan_speed description" msgid "The fan speed for the top raft layers." -msgstr "Indica la velocità di rotazione della ventola per gli strati superiori del raft." +msgstr "La vitesse du ventilateur pour les couches du dessus du radeau." #: /fdmprinter.def.json msgctxt "raft_interface_fan_speed label" msgid "Raft Middle Fan Speed" -msgstr "Velocità della ventola per il raft intermedio" +msgstr "Vitesse du ventilateur pour le milieu du radeau" #: /fdmprinter.def.json msgctxt "raft_interface_fan_speed description" msgid "The fan speed for the middle raft layer." -msgstr "Indica la velocità di rotazione della ventola per gli strati intermedi del raft." +msgstr "La vitesse du ventilateur pour la couche du milieu du radeau." #: /fdmprinter.def.json msgctxt "raft_base_fan_speed label" msgid "Raft Base Fan Speed" -msgstr "Velocità della ventola per la base del raft" +msgstr "Vitesse du ventilateur pour la base du radeau" #: /fdmprinter.def.json msgctxt "raft_base_fan_speed description" msgid "The fan speed for the base raft layer." -msgstr "Indica la velocità di rotazione della ventola per lo strato di base del raft." +msgstr "La vitesse du ventilateur pour la couche de base du radeau." #: /fdmprinter.def.json msgctxt "dual label" msgid "Dual Extrusion" -msgstr "Doppia estrusione" +msgstr "Double extrusion" #: /fdmprinter.def.json msgctxt "dual description" msgid "Settings used for printing with multiple extruders." -msgstr "Indica le impostazioni utilizzate per la stampa con estrusori multipli." +msgstr "Paramètres utilisés pour imprimer avec plusieurs extrudeuses." #: /fdmprinter.def.json msgctxt "prime_tower_enable label" msgid "Enable Prime Tower" -msgstr "Abilitazione torre di innesco" +msgstr "Activer la tour d'amorçage" #: /fdmprinter.def.json msgctxt "prime_tower_enable description" msgid "" "Print a tower next to the print which serves to prime the material after " "each nozzle switch." -msgstr "Stampa una torre accanto alla stampa che serve per innescare il materiale dopo ogni cambio ugello." +msgstr "Imprimer une tour à côté de l'impression qui sert à amorcer le matériau après chaque changement de buse." #: /fdmprinter.def.json msgctxt "prime_tower_size label" msgid "Prime Tower Size" -msgstr "Dimensioni torre di innesco" +msgstr "Taille de la tour d'amorçage" #: /fdmprinter.def.json msgctxt "prime_tower_size description" msgid "The width of the prime tower." -msgstr "Indica la larghezza della torre di innesco." +msgstr "La largeur de la tour d'amorçage." #: /fdmprinter.def.json msgctxt "prime_tower_min_volume label" msgid "Prime Tower Minimum Volume" -msgstr "Volume minimo torre di innesco" +msgstr "Volume minimum de la tour d'amorçage" #: /fdmprinter.def.json msgctxt "prime_tower_min_volume description" msgid "" "The minimum volume for each layer of the prime tower in order to purge " "enough material." -msgstr "Il volume minimo per ciascuno strato della torre di innesco per scaricare materiale a sufficienza." +msgstr "Le volume minimum pour chaque touche de la tour d'amorçage afin de purger suffisamment de matériau." #: /fdmprinter.def.json msgctxt "prime_tower_position_x label" msgid "Prime Tower X Position" -msgstr "Posizione X torre di innesco" +msgstr "Position X de la tour d'amorçage" #: /fdmprinter.def.json msgctxt "prime_tower_position_x description" msgid "The x coordinate of the position of the prime tower." -msgstr "Indica la coordinata X della posizione della torre di innesco." +msgstr "Les coordonnées X de la position de la tour d'amorçage." #: /fdmprinter.def.json msgctxt "prime_tower_position_y label" msgid "Prime Tower Y Position" -msgstr "Posizione Y torre di innesco" +msgstr "Position Y de la tour d'amorçage" #: /fdmprinter.def.json msgctxt "prime_tower_position_y description" msgid "The y coordinate of the position of the prime tower." -msgstr "Indica la coordinata Y della posizione della torre di innesco." +msgstr "Les coordonnées Y de la position de la tour d'amorçage." #: /fdmprinter.def.json msgctxt "prime_tower_wipe_enabled label" msgid "Wipe Inactive Nozzle on Prime Tower" -msgstr "Ugello pulitura inattiva sulla torre di innesco" +msgstr "Essuyer le bec d'impression inactif sur la tour d'amorçage" #: /fdmprinter.def.json msgctxt "prime_tower_wipe_enabled description" msgid "" "After printing the prime tower with one nozzle, wipe the oozed material from " "the other nozzle off on the prime tower." -msgstr "Dopo la stampa della torre di innesco con un ugello, pulisce il materiale fuoriuscito dall’altro ugello sulla torre di innesco." +msgstr "Après l'impression de la tour d'amorçage à l'aide d'une buse, nettoyer le matériau qui suinte de l'autre buse sur la tour d'amorçage." #: /fdmprinter.def.json msgctxt "prime_tower_brim_enable label" msgid "Prime Tower Brim" -msgstr "Brim torre di innesco" +msgstr "Bordure de la tour d'amorçage" #: /fdmprinter.def.json msgctxt "prime_tower_brim_enable description" msgid "" "Prime-towers might need the extra adhesion afforded by a brim even if the " "model doesn't. Presently can't be used with the 'Raft' adhesion-type." -msgstr "Le torri di innesco potrebbero richiedere un'adesione supplementare fornita da un bordo (brim), anche se il modello non lo prevede. Attualmente non può" -" essere utilizzato con il tipo di adesione 'Raft'." +msgstr "Les tours d'amorçage peuvent avoir besoin de l'adhérence supplémentaire d'une bordure, même si le modèle n'en a pas besoin. Ne peut actuellement pas être" +" utilisé avec le type d'adhérence « Raft » (radeau)." #: /fdmprinter.def.json msgctxt "ooze_shield_enabled label" msgid "Enable Ooze Shield" -msgstr "Abilitazione del riparo materiale fuoriuscito" +msgstr "Activer le bouclier de suintage" #: /fdmprinter.def.json msgctxt "ooze_shield_enabled description" @@ -6224,13 +6213,13 @@ msgid "" "Enable exterior ooze shield. This will create a shell around the model which " "is likely to wipe a second nozzle if it's at the same height as the first " "nozzle." -msgstr "Abilita il riparo esterno del materiale fuoriuscito. Questo crea un guscio intorno al modello per pulitura con un secondo ugello, se è alla stessa altezza" -" del primo ugello." +msgstr "Activer le bouclier de suintage extérieur. Cela créera une coque autour du modèle qui est susceptible d'essuyer une deuxième buse si celle-ci est à la" +" même hauteur que la première buse." #: /fdmprinter.def.json msgctxt "ooze_shield_angle label" msgid "Ooze Shield Angle" -msgstr "Angolo del riparo materiale fuoriuscito" +msgstr "Angle du bouclier de suintage" #: /fdmprinter.def.json msgctxt "ooze_shield_angle description" @@ -6238,23 +6227,23 @@ msgid "" "The maximum angle a part in the ooze shield will have. With 0 degrees being " "vertical, and 90 degrees being horizontal. A smaller angle leads to less " "failed ooze shields, but more material." -msgstr "È l'angolazione massima ammessa delle parti nel riparo. Con 0 gradi verticale e 90 gradi orizzontale. Un angolo più piccolo comporta minori ripari non" -" riusciti, ma maggiore materiale." +msgstr "L'angle maximal qu'une partie du bouclier de suintage peut adopter. Zéro degré est vertical et 90 degrés est horizontal. Un angle plus petit entraîne moins" +" d'échecs au niveau des boucliers de suintage, mais utilise plus de matériaux." #: /fdmprinter.def.json msgctxt "ooze_shield_dist label" msgid "Ooze Shield Distance" -msgstr "Distanza del riparo materiale fuoriuscito" +msgstr "Distance du bouclier de suintage" #: /fdmprinter.def.json msgctxt "ooze_shield_dist description" msgid "Distance of the ooze shield from the print, in the X/Y directions." -msgstr "Indica la distanza del riparo materiale fuoriuscito dalla stampa, nelle direzioni X/Y." +msgstr "Distance entre le bouclier de suintage et l'impression dans les directions X/Y." #: /fdmprinter.def.json msgctxt "switch_extruder_retraction_amount label" msgid "Nozzle Switch Retraction Distance" -msgstr "Distanza di retrazione cambio ugello" +msgstr "Distance de rétraction de changement de buse" #: /fdmprinter.def.json msgctxt "switch_extruder_retraction_amount description" @@ -6262,69 +6251,69 @@ msgid "" "The amount of retraction when switching extruders. Set to 0 for no " "retraction at all. This should generally be the same as the length of the " "heat zone." -msgstr "Indica il valore di retrazione alla commutazione degli estrusori. Impostato a 0 per nessuna retrazione. Questo valore generalmente dovrebbe essere lo stesso" -" della lunghezza della zona di riscaldamento." +msgstr "Degré de rétraction lors de la commutation d'extrudeuses. Une valeur de 0 signifie qu'il n'y aura aucune rétraction. En général, cette valeur doit être" +" équivalente à la longueur de la zone de chauffe." #: /fdmprinter.def.json msgctxt "switch_extruder_retraction_speeds label" msgid "Nozzle Switch Retraction Speed" -msgstr "Velocità di retrazione cambio ugello" +msgstr "Vitesse de rétraction de changement de buse" #: /fdmprinter.def.json msgctxt "switch_extruder_retraction_speeds description" msgid "" "The speed at which the filament is retracted. A higher retraction speed " "works better, but a very high retraction speed can lead to filament grinding." -msgstr "Indica la velocità di retrazione del filamento. Una maggiore velocità di retrazione funziona bene, ma una velocità di retrazione eccessiva può portare" -" alla deformazione del filamento." +msgstr "La vitesse à laquelle le filament est rétracté. Une vitesse de rétraction plus élevée fonctionne mieux, mais une vitesse de rétraction très élevée peut" +" causer l'écrasement du filament." #: /fdmprinter.def.json msgctxt "switch_extruder_retraction_speed label" msgid "Nozzle Switch Retract Speed" -msgstr "Velocità di retrazione cambio ugello" +msgstr "Vitesse de rétraction de changement de buse" #: /fdmprinter.def.json msgctxt "switch_extruder_retraction_speed description" msgid "" "The speed at which the filament is retracted during a nozzle switch retract." -msgstr "Indica la velocità alla quale il filamento viene retratto durante una retrazione per cambio ugello." +msgstr "La vitesse à laquelle le filament est rétracté pendant une rétraction de changement de buse." #: /fdmprinter.def.json msgctxt "switch_extruder_prime_speed label" msgid "Nozzle Switch Prime Speed" -msgstr "Velocità innesco cambio ugello" +msgstr "Vitesse d'amorçage de changement de buse" #: /fdmprinter.def.json msgctxt "switch_extruder_prime_speed description" msgid "" "The speed at which the filament is pushed back after a nozzle switch " "retraction." -msgstr "Indica la velocità alla quale il filamento viene sospinto indietro dopo la retrazione per cambio ugello." +msgstr "La vitesse à laquelle le filament est poussé vers l'arrière après une rétraction de changement de buse." #: /fdmprinter.def.json msgctxt "switch_extruder_extra_prime_amount label" msgid "Nozzle Switch Extra Prime Amount" -msgstr "Quantità di materiale extra della Prime Tower, al cambio ugello" +msgstr "Montant de l'amorce supplémentaire lors d'un changement de buse" #: /fdmprinter.def.json msgctxt "switch_extruder_extra_prime_amount description" msgid "Extra material to prime after nozzle switching." -msgstr "Materiale extra per l'innesco dopo il cambio dell'ugello." +msgstr "Matériel supplémentaire à amorcer après le changement de buse." #: /fdmprinter.def.json msgctxt "meshfix label" msgid "Mesh Fixes" -msgstr "Correzioni delle maglie" +msgstr "Corrections" #: /fdmprinter.def.json msgctxt "meshfix description" msgid "Make the meshes more suited for 3D printing." -msgstr "Rendere le maglie più indicate alla stampa 3D." +msgstr "Rendez les mailles plus adaptées à l'impression 3D." #: /fdmprinter.def.json msgctxt "meshfix_union_all label" msgid "Union Overlapping Volumes" -msgstr "Unione dei volumi in sovrapposizione" +msgstr "Joindre les volumes se chevauchant" #: /fdmprinter.def.json msgctxt "meshfix_union_all description" @@ -6332,13 +6321,13 @@ msgid "" "Ignore the internal geometry arising from overlapping volumes within a mesh " "and print the volumes as one. This may cause unintended internal cavities to " "disappear." -msgstr "Questa funzione ignora la geometria interna derivante da volumi in sovrapposizione all’interno di una maglia, stampandoli come un unico volume. Questo" -" può comportare la scomparsa di cavità interne." +msgstr "Ignorer la géométrie interne pouvant découler de volumes se chevauchant à l'intérieur d'un maillage et imprimer les volumes comme un seul. Cela peut entraîner" +" la disparition des cavités internes accidentelles." #: /fdmprinter.def.json msgctxt "meshfix_union_all_remove_holes label" msgid "Remove All Holes" -msgstr "Rimozione di tutti i fori" +msgstr "Supprimer tous les trous" #: /fdmprinter.def.json msgctxt "meshfix_union_all_remove_holes description" @@ -6346,13 +6335,13 @@ msgid "" "Remove the holes in each layer and keep only the outside shape. This will " "ignore any invisible internal geometry. However, it also ignores layer holes " "which can be viewed from above or below." -msgstr "Rimuove i fori presenti su ciascuno strato e mantiene soltanto la forma esterna. Questa funzione ignora qualsiasi invisibile geometria interna. Tuttavia," -" essa ignora allo stesso modo i fori degli strati visibili da sopra o da sotto." +msgstr "Supprime les trous dans chacune des couches et conserve uniquement la forme extérieure. Tous les détails internes invisibles seront ignorés. Il en va de" +" même pour les trous qui pourraient être visibles depuis le dessus ou le dessous de la pièce." #: /fdmprinter.def.json msgctxt "meshfix_extensive_stitching label" msgid "Extensive Stitching" -msgstr "Ricucitura completa dei fori" +msgstr "Raccommodage" #: /fdmprinter.def.json msgctxt "meshfix_extensive_stitching description" @@ -6360,13 +6349,13 @@ msgid "" "Extensive stitching tries to stitch up open holes in the mesh by closing the " "hole with touching polygons. This option can introduce a lot of processing " "time." -msgstr "Questa funzione tenta di 'ricucire' i fori aperti nella maglia chiudendo il foro con poligoni a contatto. Questa opzione può richiedere lunghi tempi di" -" elaborazione." +msgstr "Le raccommodage consiste en la suppression des trous dans le maillage en tentant de fermer le trou avec des intersections entre polygones existants. Cette" +" option peut induire beaucoup de temps de calcul." #: /fdmprinter.def.json msgctxt "meshfix_keep_open_polygons label" msgid "Keep Disconnected Faces" -msgstr "Mantenimento delle superfici scollegate" +msgstr "Conserver les faces disjointes" #: /fdmprinter.def.json msgctxt "meshfix_keep_open_polygons description" @@ -6375,38 +6364,38 @@ msgid "" "a layer with big holes. Enabling this option keeps those parts which cannot " "be stitched. This option should be used as a last resort option when " "everything else fails to produce proper g-code." -msgstr "Di norma Cura cerca di \"ricucire\" piccoli fori nella maglia e di rimuovere le parti di uno strato che presentano grossi fori. Abilitando questa opzione," -" Cura mantiene quelle parti che non possono essere 'ricucite'. Questa opzione deve essere utilizzata come ultima risorsa quando non sia stato possibile" -" produrre un corretto codice G in nessun altro modo." +msgstr "Normalement, Cura essaye de raccommoder les petits trous dans le maillage et supprime les parties des couches contenant de gros trous. Activer cette option" +" pousse Cura à garder les parties qui ne peuvent être raccommodées. Cette option doit être utilisée en dernier recours quand tout le reste échoue à produire" +" un G-Code correct." #: /fdmprinter.def.json msgctxt "multiple_mesh_overlap label" msgid "Merged Meshes Overlap" -msgstr "Sovrapposizione maglie" +msgstr "Chevauchement des mailles fusionnées" #: /fdmprinter.def.json msgctxt "multiple_mesh_overlap description" msgid "" "Make meshes which are touching each other overlap a bit. This makes them " "bond together better." -msgstr "Fa sovrapporre leggermente le maglie a contatto tra loro. In tal modo ne migliora l’adesione." +msgstr "Faire de sorte que les maillages qui se touchent se chevauchent légèrement. Cela permet aux maillages de mieux adhérer les uns aux autres." #: /fdmprinter.def.json msgctxt "carve_multiple_volumes label" msgid "Remove Mesh Intersection" -msgstr "Rimuovi intersezione maglie" +msgstr "Supprimer l'intersection des mailles" #: /fdmprinter.def.json msgctxt "carve_multiple_volumes description" msgid "" "Remove areas where multiple meshes are overlapping with each other. This may " "be used if merged dual material objects overlap with each other." -msgstr "Rimuove le aree in cui maglie multiple si sovrappongono tra loro. Questo può essere usato se oggetti di due materiali uniti si sovrappongono tra loro." +msgstr "Supprime les zones sur lesquelles plusieurs mailles se chevauchent. Cette option peut être utilisée si des objets à matériau double fusionné se chevauchent." #: /fdmprinter.def.json msgctxt "alternate_carve_order label" msgid "Alternate Mesh Removal" -msgstr "Rimozione maglie alternate" +msgstr "Alterner le retrait des maillages" #: /fdmprinter.def.json msgctxt "alternate_carve_order description" @@ -6415,13 +6404,13 @@ msgid "" "that the overlapping meshes become interwoven. Turning this setting off will " "cause one of the meshes to obtain all of the volume in the overlap, while it " "is removed from the other meshes." -msgstr "Selezionare quali volumi di intersezione maglie appartengono a ciascuno strato, in modo che le maglie sovrapposte diventino interconnesse. Disattivando" -" questa funzione una delle maglie ottiene tutto il volume della sovrapposizione, che viene rimosso dalle altre maglie." +msgstr "Passe aux volumes d'intersection de maille qui appartiennent à chaque couche, de manière à ce que les mailles qui se chevauchent soient entrelacées. Si" +" vous désactivez ce paramètre, l'une des mailles obtiendra tout le volume dans le chevauchement tandis qu'il est retiré des autres mailles." #: /fdmprinter.def.json msgctxt "remove_empty_first_layers label" msgid "Remove Empty First Layers" -msgstr "Rimuovere i primi strati vuoti" +msgstr "Supprimer les premières couches vides" #: /fdmprinter.def.json msgctxt "remove_empty_first_layers description" @@ -6429,13 +6418,13 @@ msgid "" "Remove empty layers beneath the first printed layer if they are present. " "Disabling this setting can cause empty first layers if the Slicing Tolerance " "setting is set to Exclusive or Middle." -msgstr "Rimuovere gli strati vuoti sotto il primo strato stampato, se presenti. La disabilitazione di questa impostazione può provocare la presenza di primi strati" -" vuoti, se l'impostazione di Tolleranza di sezionamento è impostata su Esclusiva o Intermedia." +msgstr "Supprimer les couches vides sous la première couche imprimée si elles sont présentes. Le fait de désactiver ce paramètre peut entraîner l'apparition de" +" premières couches vides si le paramètre Tolérance à la découpe est défini sur Exclusif ou Milieu." #: /fdmprinter.def.json msgctxt "meshfix_maximum_resolution label" msgid "Maximum Resolution" -msgstr "Risoluzione massima" +msgstr "Résolution maximum" #: /fdmprinter.def.json msgctxt "meshfix_maximum_resolution description" @@ -6444,14 +6433,14 @@ msgid "" "mesh will have a lower resolution. This may allow the printer to keep up " "with the speed it has to process g-code and will increase slice speed by " "removing details of the mesh that it can't process anyway." -msgstr "La dimensione minima di un segmento di linea dopo il sezionamento. Se tale dimensione aumenta, la maglia avrà una risoluzione inferiore. Questo può consentire" -" alla stampante di mantenere la velocità per processare il g-code ed aumenterà la velocità di sezionamento eliminando i dettagli della maglia che non è" -" comunque in grado di processare." +msgstr "Taille minimum d'un segment de ligne après découpage. Si vous augmentez cette valeur, la maille aura une résolution plus faible. Cela peut permettre à" +" l'imprimante de suivre la vitesse à laquelle elle doit traiter le G-Code et augmentera la vitesse de découpe en enlevant des détails de la maille que l'imprimante" +" ne peut pas traiter de toute manière." #: /fdmprinter.def.json msgctxt "meshfix_maximum_travel_resolution label" msgid "Maximum Travel Resolution" -msgstr "Risoluzione massima di spostamento" +msgstr "Résolution de déplacement maximum" #: /fdmprinter.def.json msgctxt "meshfix_maximum_travel_resolution description" @@ -6460,14 +6449,14 @@ msgid "" "this, the travel moves will have less smooth corners. This may allow the " "printer to keep up with the speed it has to process g-code, but it may cause " "model avoidance to become less accurate." -msgstr "La dimensione minima di un segmento lineare di spostamento dopo il sezionamento. Aumentando tale dimensione, le corse di spostamento avranno meno angoli" -" arrotondati. La stampante può così mantenere la velocità per processare il g-code, ma si può verificare una riduzione della precisione di aggiramento" -" del modello." +msgstr "Taille minimale d'un segment de ligne de déplacement après la découpe. Si vous augmentez cette valeur, les mouvements de déplacement auront des coins moins" +" lisses. Cela peut permettre à l'imprimante de suivre la vitesse à laquelle elle doit traiter le G-Code, mais cela peut réduire la précision de l'évitement" +" du modèle." #: /fdmprinter.def.json msgctxt "meshfix_maximum_deviation label" msgid "Maximum Deviation" -msgstr "Deviazione massima" +msgstr "Écart maximum" #: /fdmprinter.def.json msgctxt "meshfix_maximum_deviation description" @@ -6477,14 +6466,14 @@ msgid "" "but the g-code will be smaller. Maximum Deviation is a limit for Maximum " "Resolution, so if the two conflict the Maximum Deviation will always be held " "true." -msgstr "La deviazione massima consentita quando si riduce la risoluzione per l'impostazione Risoluzione massima. Se si aumenta questo parametro, la stampa sarà" -" meno precisa, ma il g-code sarà più piccolo. Deviazione massima rappresenta il limite per Risoluzione massima; pertanto se le due impostazioni sono in" -" conflitto, verrà considerata vera l'impostazione Deviazione massima." +msgstr "L'écart maximum autorisé lors de la réduction de la résolution pour le paramètre Résolution maximum. Si vous augmentez cette valeur, l'impression sera" +" moins précise, mais le G-Code sera plus petit. L'écart maximum est une limite pour la résolution maximum. Donc si les deux entrent en conflit, l'Écart" +" maximum restera valable." #: /fdmprinter.def.json msgctxt "meshfix_maximum_extrusion_area_deviation label" msgid "Maximum Extrusion Area Deviation" -msgstr "Deviazione massima dell'area di estrusione" +msgstr "Écart maximal de la surface d'extrusion" #: /fdmprinter.def.json msgctxt "meshfix_maximum_extrusion_area_deviation description" @@ -6497,25 +6486,26 @@ msgid "" "over-) extrusion in between straight parallel walls, as more intermediate " "width-changing points will be allowed to be removed. Your print will be less " "accurate, but the g-code will be smaller." -msgstr "La deviazione massima dell'area di estrusione consentita durante la rimozione di punti intermedi da una linea retta. Un punto intermedio può fungere da" -" punto di modifica larghezza in una lunga linea retta. Pertanto, se viene rimosso, la linea avrà una larghezza uniforme e, come risultato, perderà (o guadagnerà)" -" area di estrusione. In caso di incremento si può notare una leggera sotto (o sovra) estrusione tra pareti parallele rette, poiché sarà possibile rimuovere" -" più punti di variazione della larghezza intermedi. La stampa sarà meno precisa, ma il G-Code sarà più piccolo." +msgstr "L'écart maximal de la surface d'extrusion autorisé lors de la suppression des points intermédiaires d'une ligne droite. Un point intermédiaire peut servir" +" de point de changement de largeur dans une longue ligne droite. Par conséquent, s'il est supprimé, la ligne aura une largeur uniforme et, par conséquent," +" cela engendrera la perte (ou le gain) d'un peu de surface d'extrusion. Si vous augmentez cette valeur, vous pourrez constater une légère sous-extrusion" +" (ou sur-extrusion) entre les parois parallèles droites car davantage de points intermédiaires de changement de largeur pourront être supprimés. Votre" +" impression sera moins précise, mais le G-code sera plus petit." #: /fdmprinter.def.json msgctxt "blackmagic label" msgid "Special Modes" -msgstr "Modalità speciali" +msgstr "Modes spéciaux" #: /fdmprinter.def.json msgctxt "blackmagic description" msgid "Non-traditional ways to print your models." -msgstr "Modi non tradizionali di stampare i modelli." +msgstr "Des moyens non traditionnels d'imprimer vos modèles." #: /fdmprinter.def.json msgctxt "print_sequence label" msgid "Print Sequence" -msgstr "Sequenza di stampa" +msgstr "Séquence d'impression" #: /fdmprinter.def.json msgctxt "print_sequence description" @@ -6525,24 +6515,24 @@ msgid "" "only one extruder is enabled and b) all models are separated in such a way " "that the whole print head can move in between and all models are lower than " "the distance between the nozzle and the X/Y axes." -msgstr "Indica se stampare tutti i modelli un layer alla volta o se attendere di terminare un modello prima di passare al successivo. La modalità \"uno per volta\"" -" è possibile solo se a) è abilitato solo un estrusore b) tutti i modelli sono separati in modo tale che l'intera testina di stampa possa muoversi tra di" -" essi e che tutti i modelli siano più bassi della distanza tra l'ugello e gli assi X/Y." +msgstr "Imprime tous les modèles en même temps, couche par couche, ou attend la fin d'un modèle pour en commencer un autre. Le mode « Un modèle à la fois » est" +" disponible seulement si a) un seul extrudeur est activé et si b) tous les modèles sont suffisamment éloignés pour que la tête puisse passer entre eux" +" et qu'ils sont tous inférieurs à la distance entre la buse et les axes X/Y." #: /fdmprinter.def.json msgctxt "print_sequence option all_at_once" msgid "All at Once" -msgstr "Tutti contemporaneamente" +msgstr "Tout en même temps" #: /fdmprinter.def.json msgctxt "print_sequence option one_at_a_time" msgid "One at a Time" -msgstr "Uno alla volta" +msgstr "Un à la fois" #: /fdmprinter.def.json msgctxt "infill_mesh label" msgid "Infill Mesh" -msgstr "Maglia di riempimento" +msgstr "Maille de remplissage" #: /fdmprinter.def.json msgctxt "infill_mesh description" @@ -6550,13 +6540,13 @@ msgid "" "Use this mesh to modify the infill of other meshes with which it overlaps. " "Replaces infill regions of other meshes with regions for this mesh. It's " "suggested to only print one Wall and no Top/Bottom Skin for this mesh." -msgstr "Utilizzare questa maglia per modificare il riempimento di altre maglie a cui è sovrapposta. Sostituisce le regioni di riempimento di altre maglie con le" -" regioni di questa maglia. Si consiglia di stampare solo una parete e non il rivestimento esterno superiore/inferiore per questa maglia." +msgstr "Utiliser cette maille pour modifier le remplissage d'autres mailles qu'elle chevauche. Remplace les régions de remplissage d'autres mailles par des régions" +" de cette maille. Il est conseillé d'imprimer uniquement une Paroi et pas de Couche du dessus/dessous pour cette maille." #: /fdmprinter.def.json msgctxt "infill_mesh_order label" msgid "Mesh Processing Rank" -msgstr "Classificazione dell'elaborazione delle maglie" +msgstr "Rang de traitement du maillage" #: /fdmprinter.def.json msgctxt "infill_mesh_order description" @@ -6566,14 +6556,14 @@ msgid "" "settings of the mesh with the highest rank. An infill mesh with a higher " "rank will modify the infill of infill meshes with lower rank and normal " "meshes." -msgstr "Determina la priorità di questa mesh quando si considera la sovrapposizione multipla delle mesh di riempimento. Per le aree con la sovrapposizione di più" -" mesh di riempimento verranno utilizzate le impostazioni della mesh con la classificazione più alta. Una mesh di riempimento con una classificazione più" -" alta modificherà il riempimento delle mesh di riempimento con una classificazione inferiore e delle mesh normali." +msgstr "Détermine la priorité de cette maille lorsque plusieurs chevauchements de mailles de remplissage sont pris en considération. Les zones comportant plusieurs" +" chevauchements de mailles de remplissage prendront en compte les paramètres du maillage ayant l'ordre le plus élevé. Une maille de remplissage possédant" +" un ordre plus élevé modifiera le remplissage des mailles de remplissage ayant un ordre plus bas et des mailles normales." #: /fdmprinter.def.json msgctxt "cutting_mesh label" msgid "Cutting Mesh" -msgstr "Ritaglio maglia" +msgstr "Maille de coupe" #: /fdmprinter.def.json msgctxt "cutting_mesh description" @@ -6581,47 +6571,47 @@ msgid "" "Limit the volume of this mesh to within other meshes. You can use this to " "make certain areas of one mesh print with different settings and with a " "whole different extruder." -msgstr "Limita il volume di questa maglia all'interno di altre maglie. Questo può essere utilizzato per stampare talune aree di una maglia con impostazioni diverse" -" e con un diverso estrusore." +msgstr "Limiter le volume de ce maillage à celui des autres maillages. Cette option permet de faire en sorte que certaines zones d'un maillage s'impriment avec" +" des paramètres différents et avec une extrudeuse entièrement différente." #: /fdmprinter.def.json msgctxt "mold_enabled label" msgid "Mold" -msgstr "Stampo" +msgstr "Moule" #: /fdmprinter.def.json msgctxt "mold_enabled description" msgid "" "Print models as a mold, which can be cast in order to get a model which " "resembles the models on the build plate." -msgstr "Stampa i modelli come uno stampo, che può essere fuso per ottenere un modello che assomigli ai modelli sul piano di stampa." +msgstr "Imprimer les modèles comme moule, qui peut être coulé afin d'obtenir un modèle ressemblant à ceux présents sur le plateau." #: /fdmprinter.def.json msgctxt "mold_width label" msgid "Minimal Mold Width" -msgstr "Larghezza minimo dello stampo" +msgstr "Largeur minimale de moule" #: /fdmprinter.def.json msgctxt "mold_width description" msgid "" "The minimal distance between the outside of the mold and the outside of the " "model." -msgstr "Distanza minima tra l'esterno dello stampo e l'esterno del modello." +msgstr "La distance minimale entre l'extérieur du moule et l'extérieur du modèle." #: /fdmprinter.def.json msgctxt "mold_roof_height label" msgid "Mold Roof Height" -msgstr "Altezza parte superiore dello stampo" +msgstr "Hauteur du plafond de moule" #: /fdmprinter.def.json msgctxt "mold_roof_height description" msgid "The height above horizontal parts in your model which to print mold." -msgstr "Altezza sopra le parti orizzontali del modello che stampano lo stampo." +msgstr "La hauteur au-dessus des parties horizontales dans votre modèle pour laquelle imprimer le moule." #: /fdmprinter.def.json msgctxt "mold_angle label" msgid "Mold Angle" -msgstr "Angolo stampo" +msgstr "Angle du moule" #: /fdmprinter.def.json msgctxt "mold_angle description" @@ -6629,38 +6619,38 @@ msgid "" "The angle of overhang of the outer walls created for the mold. 0° will make " "the outer shell of the mold vertical, while 90° will make the outside of the " "model follow the contour of the model." -msgstr "Angolo dello sbalzo delle pareti esterne creato per il modello. 0° rende il guscio esterno dello stampo verticale, mentre 90° fa in modo che il guscio" -" esterno dello stampo segua il profilo del modello." +msgstr "L'angle de porte-à-faux des parois externes créées pour le moule. La valeur 0° rendra la coque externe du moule verticale, alors que 90° fera que l'extérieur" +" du modèle suive les contours du modèle." #: /fdmprinter.def.json msgctxt "support_mesh label" msgid "Support Mesh" -msgstr "Supporto maglia" +msgstr "Maillage de support" #: /fdmprinter.def.json msgctxt "support_mesh description" msgid "" "Use this mesh to specify support areas. This can be used to generate support " "structure." -msgstr "Utilizzare questa maglia per specificare le aree di supporto. Può essere usata per generare una struttura di supporto." +msgstr "Utiliser ce maillage pour spécifier des zones de support. Cela peut être utilisé pour générer une structure de support." #: /fdmprinter.def.json msgctxt "anti_overhang_mesh label" msgid "Anti Overhang Mesh" -msgstr "Maglia anti-sovrapposizione" +msgstr "Maillage anti-surplomb" #: /fdmprinter.def.json msgctxt "anti_overhang_mesh description" msgid "" "Use this mesh to specify where no part of the model should be detected as " "overhang. This can be used to remove unwanted support structure." -msgstr "Utilizzare questa maglia per specificare dove nessuna parte del modello deve essere rilevata come in sovrapposizione. Può essere usato per rimuovere struttura" -" di supporto indesiderata." +msgstr "Utiliser cette maille pour préciser à quel endroit aucune partie du modèle doit être détectée comme porte-à-faux. Cette option peut être utilisée pour" +" supprimer la structure de support non souhaitée." #: /fdmprinter.def.json msgctxt "magic_mesh_surface_mode label" msgid "Surface Mode" -msgstr "Modalità superficie" +msgstr "Mode de surface" #: /fdmprinter.def.json msgctxt "magic_mesh_surface_mode description" @@ -6670,29 +6660,29 @@ msgid "" "single wall tracing the mesh surface with no infill and no top/bottom skin. " "\"Both\" prints enclosed volumes like normal and any remaining polygons as " "surfaces." -msgstr "Trattare il modello solo come una superficie, un volume o volumi con superfici libere. Il modo di stampa normale stampa solo volumi delimitati. “Superficie”" -" stampa una parete singola tracciando la superficie della maglia senza riempimento e senza rivestimento esterno superiore/inferiore. “Entrambi” stampa" -" i volumi delimitati come normali ed eventuali poligoni rimanenti come superfici." +msgstr "Traite le modèle comme surface seule, un volume ou des volumes avec des surfaces seules. Le mode d'impression normal imprime uniquement des volumes fermés." +" « Surface » imprime une paroi seule autour de la surface de la maille, sans remplissage ni couche du dessus/dessous. « Les deux » imprime des volumes" +" fermés comme en mode normal et les polygones restants comme surfaces." #: /fdmprinter.def.json msgctxt "magic_mesh_surface_mode option normal" msgid "Normal" -msgstr "Normale" +msgstr "Normal" #: /fdmprinter.def.json msgctxt "magic_mesh_surface_mode option surface" msgid "Surface" -msgstr "Superficie" +msgstr "Surface" #: /fdmprinter.def.json msgctxt "magic_mesh_surface_mode option both" msgid "Both" -msgstr "Entrambi" +msgstr "Les deux" #: /fdmprinter.def.json msgctxt "magic_spiralize label" msgid "Spiralize Outer Contour" -msgstr "Stampa del contorno esterno con movimento spiraliforme" +msgstr "Spiraliser le contour extérieur" #: /fdmprinter.def.json msgctxt "magic_spiralize description" @@ -6701,14 +6691,14 @@ msgid "" "steady Z increase over the whole print. This feature turns a solid model " "into a single walled print with a solid bottom. This feature should only be " "enabled when each layer only contains a single part." -msgstr "Appiattisce il contorno esterno attorno all'asse Z con movimento spiraliforme. Questo crea un aumento costante lungo l'asse Z durante tutto il processo" -" di stampa. Questa caratteristica consente di ottenere un modello pieno in una singola stampata con fondo solido. Questa caratteristica deve essere abilitata" -" solo quando ciascuno strato contiene solo una singola parte." +msgstr "Cette fonction ajuste le déplacement en Z sur le bord extérieur. Cela va créer une augmentation stable de Z sur toute l’impression. Cette fonction transforme" +" un modèle solide en une impression à paroi unique avec une base solide. Cette fonctionnalité doit être activée seulement lorsque chaque couche contient" +" uniquement une seule partie." #: /fdmprinter.def.json msgctxt "smooth_spiralized_contours label" msgid "Smooth Spiralized Contours" -msgstr "Levigazione dei profili con movimento spiraliforme" +msgstr "Lisser les contours spiralisés" #: /fdmprinter.def.json msgctxt "smooth_spiralized_contours description" @@ -6716,13 +6706,13 @@ msgid "" "Smooth the spiralized contours to reduce the visibility of the Z seam (the Z " "seam should be barely visible on the print but will still be visible in the " "layer view). Note that smoothing will tend to blur fine surface details." -msgstr "Leviga i profili con movimento spiraliforme per ridurre la visibilità della giunzione Z (la giunzione Z dovrebbe essere appena visibile sulla stampa, ma" -" rimane visibile nella visualizzazione a strati). Notare che la levigatura tende a rimuovere le bavature fini della superficie." +msgstr "Lisser les contours spiralisés pour réduire la visibilité de la jointure en Z (la jointure en Z doit être à peine visible sur l'impression mais sera toujours" +" visible dans la vue en couches). Veuillez remarquer que le lissage aura tendance à estomper les détails très fins de la surface." #: /fdmprinter.def.json msgctxt "relative_extrusion label" msgid "Relative Extrusion" -msgstr "Estrusione relativa" +msgstr "Extrusion relative" #: /fdmprinter.def.json msgctxt "relative_extrusion description" @@ -6733,24 +6723,25 @@ msgid "" "amount of deposited material compared to absolute E-steps. Irrespective of " "this setting, the extrusion mode will always be set to absolute before any g-" "code script is output." -msgstr "Utilizza l'estrusione relativa invece di quella assoluta. L'utilizzo di fasi E relative facilita la post-elaborazione del codice G. Tuttavia, questa impostazione" -" non è supportata da tutte le stampanti e può causare deviazioni molto piccole nella quantità di materiale depositato rispetto alle fasi E assolute. Indipendentemente" -" da questa impostazione, la modalità estrusione sarà sempre impostata su assoluta prima che venga generato uno script in codice G." +msgstr "Utiliser l'extrusion relative au lieu de l'extrusion absolue. L'utilisation de pas E relatifs facilite le post-traitement du G-Code. Toutefois, cela n'est" +" pas pris en charge par toutes les imprimantes et peut occasionner de très légers écarts dans la quantité de matériau déposé, par rapport à l'utilisation" +" des pas E absolus. Indépendamment de ce paramètre, le mode d'extrusion sera défini par défaut comme absolu avant qu'un quelconque script de G-Code soit" +" produit." #: /fdmprinter.def.json msgctxt "experimental label" msgid "Experimental" -msgstr "Sperimentale" +msgstr "Expérimental" #: /fdmprinter.def.json msgctxt "experimental description" msgid "Features that haven't completely been fleshed out yet." -msgstr "Funzionalità che non sono state ancora precisate completamente." +msgstr "Des fonctionnalités qui n'ont pas encore été complètement développées." #: /fdmprinter.def.json msgctxt "slicing_tolerance label" msgid "Slicing Tolerance" -msgstr "Tolleranza di sezionamento" +msgstr "Tolérance à la découpe" #: /fdmprinter.def.json msgctxt "slicing_tolerance description" @@ -6762,30 +6753,30 @@ msgid "" "(Exclusive) or a layer has the areas which fall inside anywhere within the " "layer (Inclusive). Inclusive retains the most details, Exclusive makes for " "the best fit and Middle stays closest to the original surface." -msgstr "Tolleranza verticale negli strati sezionati. Di norma i contorni di uno strato vengono generati prendendo le sezioni incrociate fino al centro dello spessore" -" di ciascun livello (intermedie). In alternativa, ogni strato può avere le aree che cadono all'interno del volume per tutto lo spessore dello strato (esclusive)" -" oppure uno strato presenta le aree che rientrano all'interno di qualsiasi punto dello strato (inclusive). Le aree inclusive conservano la maggior parte" -" dei dettagli; le esclusive generano la soluzione migliore, mentre le intermedie restano più vicine alla superficie originale." +msgstr "Tolérance verticale dans les couches découpées. Les contours d'une couche sont normalement générés en faisant passer les sections entrecroisées au milieu" +" de chaque épaisseur de couche (Milieu). Alternativement, chaque couche peut posséder des zones situées à l'intérieur du volume à travers toute l'épaisseur" +" de la couche (Exclusif) ou une couche peut avoir des zones situées à l'intérieur à tout endroit dans la couche (Inclusif). L'option Inclusif permet de" +" conserver le plus de détails ; l'option Exclusif permet d'obtenir une adaptation optimale ; l'option Milieu permet de rester proche de la surface d'origine." #: /fdmprinter.def.json msgctxt "slicing_tolerance option middle" msgid "Middle" -msgstr "Intermedia" +msgstr "Milieu" #: /fdmprinter.def.json msgctxt "slicing_tolerance option exclusive" msgid "Exclusive" -msgstr "Esclusiva" +msgstr "Exclusif" #: /fdmprinter.def.json msgctxt "slicing_tolerance option inclusive" msgid "Inclusive" -msgstr "Inclusiva" +msgstr "Inclusif" #: /fdmprinter.def.json msgctxt "infill_enable_travel_optimization label" msgid "Infill Travel Optimization" -msgstr "Ottimizzazione spostamenti riempimento" +msgstr "Optimisation du déplacement de remplissage" #: /fdmprinter.def.json msgctxt "infill_enable_travel_optimization description" @@ -6795,38 +6786,38 @@ msgid "" "much depends on the model being sliced, infill pattern, density, etc. Note " "that, for some models that have many small areas of infill, the time to " "slice the model may be greatly increased." -msgstr "Quando abilitato, l’ordine di stampa delle linee di riempimento viene ottimizzato per ridurre la distanza percorsa. La riduzione del tempo di spostamento" -" ottenuta dipende in particolare dal modello sezionato, dalla configurazione di riempimento, dalla densità, ecc. Si noti che, per alcuni modelli che hanno" -" piccole aree di riempimento, il tempo di sezionamento del modello può aumentare notevolmente." +msgstr "Lorsque cette option est activée, l'ordre dans lequel les lignes de remplissage sont imprimées est optimisé pour réduire la distance parcourue. La réduction" +" du temps de parcours dépend en grande partie du modèle à découper, du type de remplissage, de la densité, etc. Remarque : pour certains modèles possédant" +" beaucoup de petites zones de remplissage, le temps de découpe du modèle peut en être considérablement augmenté." #: /fdmprinter.def.json msgctxt "material_flow_dependent_temperature label" msgid "Auto Temperature" -msgstr "Temperatura automatica" +msgstr "Température auto" #: /fdmprinter.def.json msgctxt "material_flow_dependent_temperature description" msgid "" "Change the temperature for each layer automatically with the average flow " "speed of that layer." -msgstr "Modifica automaticamente la temperatura per ciascuno strato con la velocità media del flusso per tale strato." +msgstr "Modifie automatiquement la température pour chaque couche en fonction de la vitesse de flux moyenne pour cette couche." #: /fdmprinter.def.json msgctxt "material_flow_temp_graph label" msgid "Flow Temperature Graph" -msgstr "Grafico della temperatura del flusso" +msgstr "Graphique de la température du flux" #: /fdmprinter.def.json msgctxt "material_flow_temp_graph description" msgid "" "Data linking material flow (in mm3 per second) to temperature (degrees " "Celsius)." -msgstr "Collegamento dei dati di flusso del materiale (in mm3 al secondo) alla temperatura (in °C)." +msgstr "Données reliant le flux de matériau (en mm3 par seconde) à la température (degrés Celsius)." #: /fdmprinter.def.json msgctxt "minimum_polygon_circumference label" msgid "Minimum Polygon Circumference" -msgstr "Circonferenza minima dei poligoni" +msgstr "Circonférence minimale du polygone" #: /fdmprinter.def.json msgctxt "minimum_polygon_circumference description" @@ -6835,108 +6826,108 @@ msgid "" "will be filtered out. Lower values lead to higher resolution mesh at the " "cost of slicing time. It is meant mostly for high resolution SLA printers " "and very tiny 3D models with a lot of details." -msgstr "I poligoni in strati sezionati con una circonferenza inferiore a questo valore verranno scartati. I valori inferiori generano una maglia con risoluzione" -" superiore al costo del tempo di sezionamento. È dedicata in particolare alle stampanti SLA ad alta risoluzione e a modelli 3D molto piccoli, ricchi di" -" dettagli." +msgstr "Les polygones en couches tranchées dont la circonférence est inférieure à cette valeur seront filtrés. Des valeurs élevées permettent d'obtenir un maillage" +" de meilleure résolution mais augmentent le temps de découpe. Cette option est principalement destinée aux imprimantes SLA haute résolution et aux modèles" +" 3D de très petite taille avec beaucoup de détails." #: /fdmprinter.def.json msgctxt "support_skip_some_zags label" msgid "Break Up Support In Chunks" -msgstr "Rottura del supporto in pezzi di grandi dimensioni" +msgstr "Démantèlement du support en morceaux" #: /fdmprinter.def.json msgctxt "support_skip_some_zags description" msgid "" "Skip some support line connections to make the support structure easier to " "break away. This setting is applicable to the Zig Zag support infill pattern." -msgstr "Salto di alcuni collegamenti per rendere la struttura del supporto più facile da rompere. Questa impostazione è applicabile alla configurazione a zig-zag" -" del riempimento del supporto." +msgstr "Ignorer certaines connexions de ligne du support pour rendre la structure de support plus facile à casser. Ce paramètre s'applique au motif de remplissage" +" du support en zigzag." #: /fdmprinter.def.json msgctxt "support_skip_zag_per_mm label" msgid "Support Chunk Size" -msgstr "Dimensioni frammento supporto" +msgstr "Taille de morceaux du support" #: /fdmprinter.def.json msgctxt "support_skip_zag_per_mm description" msgid "" "Leave out a connection between support lines once every N millimeter to make " "the support structure easier to break away." -msgstr "Lasciare un collegamento tra le linee del supporto ogni N millimetri per facilitare la rottura del supporto stesso." +msgstr "Ignorer une connexion entre lignes du support tous les N millimètres, pour rendre la structure de support plus facile à casser." #: /fdmprinter.def.json msgctxt "support_zag_skip_count label" msgid "Support Chunk Line Count" -msgstr "Conteggio linee di rottura supporto" +msgstr "Comptage des lignes de morceaux du support" #: /fdmprinter.def.json msgctxt "support_zag_skip_count description" msgid "" "Skip one in every N connection lines to make the support structure easier to " "break away." -msgstr "Salto di una ogni N linee di collegamento per rendere la struttura del supporto più facile da rompere." +msgstr "Ignorer une ligne de connexion sur N pour rendre la structure de support plus facile à casser." #: /fdmprinter.def.json msgctxt "draft_shield_enabled label" msgid "Enable Draft Shield" -msgstr "Abilitazione del riparo paravento" +msgstr "Activer le bouclier" #: /fdmprinter.def.json msgctxt "draft_shield_enabled description" msgid "" "This will create a wall around the model, which traps (hot) air and shields " "against exterior airflow. Especially useful for materials which warp easily." -msgstr "In tal modo si creerà una protezione attorno al modello che intrappola l'aria (calda) e lo protegge da flussi d’aria esterna. Particolarmente utile per" -" i materiali soggetti a deformazione." +msgstr "Cela créera une paroi autour du modèle qui retient l'air (chaud) et protège contre les courants d'air. Particulièrement utile pour les matériaux qui se" +" soulèvent facilement." #: /fdmprinter.def.json msgctxt "draft_shield_dist label" msgid "Draft Shield X/Y Distance" -msgstr "Distanza X/Y del riparo paravento" +msgstr "Distance X/Y du bouclier" #: /fdmprinter.def.json msgctxt "draft_shield_dist description" msgid "Distance of the draft shield from the print, in the X/Y directions." -msgstr "Indica la distanza del riparo paravento dalla stampa, nelle direzioni X/Y." +msgstr "Distance entre la pièce et le bouclier dans les directions X et Y." #: /fdmprinter.def.json msgctxt "draft_shield_height_limitation label" msgid "Draft Shield Limitation" -msgstr "Limitazione del riparo paravento" +msgstr "Limite du bouclier" #: /fdmprinter.def.json msgctxt "draft_shield_height_limitation description" msgid "" "Set the height of the draft shield. Choose to print the draft shield at the " "full height of the model or at a limited height." -msgstr "Imposta l’altezza del riparo paravento. Scegliere di stampare il riparo paravento all’altezza totale del modello o a un’altezza limitata." +msgstr "Définit la hauteur du bouclier. Choisissez d'imprimer le bouclier à la pleine hauteur du modèle ou à une hauteur limitée." #: /fdmprinter.def.json msgctxt "draft_shield_height_limitation option full" msgid "Full" -msgstr "Piena altezza" +msgstr "Pleine hauteur" #: /fdmprinter.def.json msgctxt "draft_shield_height_limitation option limited" msgid "Limited" -msgstr "Limitazione in altezza" +msgstr "Limitée" #: /fdmprinter.def.json msgctxt "draft_shield_height label" msgid "Draft Shield Height" -msgstr "Altezza del riparo paravento" +msgstr "Hauteur du bouclier" #: /fdmprinter.def.json msgctxt "draft_shield_height description" msgid "" "Height limitation of the draft shield. Above this height no draft shield " "will be printed." -msgstr "Indica la limitazione in altezza del riparo paravento. Al di sopra di tale altezza non sarà stampato alcun riparo." +msgstr "Hauteur limite du bouclier. Au-delà de cette hauteur, aucun bouclier ne sera imprimé." #: /fdmprinter.def.json msgctxt "conical_overhang_enabled label" msgid "Make Overhang Printable" -msgstr "Rendi stampabile lo sbalzo" +msgstr "Rendre le porte-à-faux imprimable" #: /fdmprinter.def.json msgctxt "conical_overhang_enabled description" @@ -6944,13 +6935,13 @@ msgid "" "Change the geometry of the printed model such that minimal support is " "required. Steep overhangs will become shallow overhangs. Overhanging areas " "will drop down to become more vertical." -msgstr "Cambia la geometria del modello stampato in modo da richiedere un supporto minimo. Sbalzi molto inclinati diventeranno sbalzi poco profondi. Le aree di" -" sbalzo scendono per diventare più verticali." +msgstr "Change la géométrie du modèle imprimé de manière à nécessiter un support minimal. Les porte-à-faux abrupts deviendront des porte-à-faux minces. Les zones" +" en porte-à-faux descendront pour devenir plus verticales." #: /fdmprinter.def.json msgctxt "conical_overhang_angle label" msgid "Maximum Model Angle" -msgstr "Massimo angolo modello" +msgstr "Angle maximal du modèle" #: /fdmprinter.def.json msgctxt "conical_overhang_angle description" @@ -6958,13 +6949,13 @@ msgid "" "The maximum angle of overhangs after the they have been made printable. At a " "value of 0° all overhangs are replaced by a piece of model connected to the " "build plate, 90° will not change the model in any way." -msgstr "L’angolo massimo degli sbalzi dopo essere stati resi stampabili. A un valore di 0° tutti gli sbalzi sono sostituiti da un pezzo del modello collegato al" -" piano di stampa, 90° non cambia il modello in alcun modo." +msgstr "L'angle maximal des porte-à-faux après qu'ils aient été rendus imprimables. À une valeur de 0°, tous les porte-à-faux sont remplacés par une pièce de modèle" +" rattachée au plateau, tandis que 90° ne changera en rien le modèle." #: /fdmprinter.def.json msgctxt "conical_overhang_hole_size label" msgid "Maximum Overhang Hole Area" -msgstr "Area foro di sbalzo massima" +msgstr "Surface maximale du trou en porte-à-faux" #: /fdmprinter.def.json msgctxt "conical_overhang_hole_size description" @@ -6972,13 +6963,13 @@ msgid "" "The maximum area of a hole in the base of the model before it's removed by " "Make Overhang Printable. Holes smaller than this will be retained. A value " "of 0 mm² will fill all holes in the models base." -msgstr "L'area massima di un foro nella base del modello prima che venga rimossa da Rendi stampabile lo sbalzo. I fori più piccoli di questo verranno mantenuti." -" Un valore di 0 mm² riempirà i fori nella base del modello." +msgstr "Zone maximale d'un trou dans la base du modèle avant d'être retirée par l'outil Rendre le porte-à-faux imprimable. Les trous plus petits seront conservés." +" Une valeur de 0 mm² remplira tous les trous dans la base des modèles." #: /fdmprinter.def.json msgctxt "coasting_enable label" msgid "Enable Coasting" -msgstr "Abilitazione della funzione di Coasting" +msgstr "Activer la roue libre" #: /fdmprinter.def.json msgctxt "coasting_enable description" @@ -6986,25 +6977,25 @@ msgid "" "Coasting replaces the last part of an extrusion path with a travel path. The " "oozed material is used to print the last piece of the extrusion path in " "order to reduce stringing." -msgstr "Il Coasting sostituisce l'ultima parte di un percorso di estrusione con un percorso di spostamento. Il materiale fuoriuscito viene utilizzato per stampare" -" l'ultimo tratto del percorso di estrusione al fine di ridurre i filamenti." +msgstr "L'option « roue libre » remplace la dernière partie d'un mouvement d'extrusion par un mouvement de déplacement. Le matériau qui suinte de la buse est alors" +" utilisé pour imprimer la dernière partie du tracé du mouvement d'extrusion, ce qui réduit le stringing." #: /fdmprinter.def.json msgctxt "coasting_volume label" msgid "Coasting Volume" -msgstr "Volume di Coasting" +msgstr "Volume en roue libre" #: /fdmprinter.def.json msgctxt "coasting_volume description" msgid "" "The volume otherwise oozed. This value should generally be close to the " "nozzle diameter cubed." -msgstr "È il volume di materiale fuoriuscito. Questo valore deve di norma essere prossimo al diametro dell'ugello al cubo." +msgstr "Volume de matière qui devrait suinter de la buse. Cette valeur doit généralement rester proche du diamètre de la buse au cube." #: /fdmprinter.def.json msgctxt "coasting_min_volume label" msgid "Minimum Volume Before Coasting" -msgstr "Volume minimo prima del Coasting" +msgstr "Volume minimal avant roue libre" #: /fdmprinter.def.json msgctxt "coasting_min_volume description" @@ -7013,13 +7004,14 @@ msgid "" "For smaller extrusion paths, less pressure has been built up in the bowden " "tube and so the coasted volume is scaled linearly. This value should always " "be larger than the Coasting Volume." -msgstr "È il volume minimo di un percorso di estrusione prima di consentire il coasting. Per percorsi di estrusione inferiori, nel tubo Bowden si è accumulata" -" una pressione inferiore, quindi il volume rilasciato si riduce in modo lineare. Questo valore dovrebbe essere sempre maggiore del volume di Coasting." +msgstr "Le plus petit volume qu'un mouvement d'extrusion doit entraîner avant d'autoriser la roue libre. Pour les petits mouvements d'extrusion, une pression moindre" +" s'est formée dans le tube bowden, de sorte que le volume déposable en roue libre est alors réduit linéairement. Cette valeur doit toujours être supérieure" +" au volume en roue libre." #: /fdmprinter.def.json msgctxt "coasting_speed label" msgid "Coasting Speed" -msgstr "Velocità di Coasting" +msgstr "Vitesse de roue libre" #: /fdmprinter.def.json msgctxt "coasting_speed description" @@ -7027,59 +7019,60 @@ msgid "" "The speed by which to move during coasting, relative to the speed of the " "extrusion path. A value slightly under 100% is advised, since during the " "coasting move the pressure in the bowden tube drops." -msgstr "È la velocità a cui eseguire lo spostamento durante il Coasting, rispetto alla velocità del percorso di estrusione. Si consiglia di impostare un valore" -" leggermente al di sotto del 100%, poiché durante il Coasting la pressione nel tubo Bowden scende." +msgstr "Vitesse de déplacement pendant une roue libre, par rapport à la vitesse de déplacement pendant l'extrusion. Une valeur légèrement inférieure à 100 % est" +" conseillée car, lors du mouvement en roue libre, la pression dans le tube bowden chute." #: /fdmprinter.def.json msgctxt "cross_infill_pocket_size label" msgid "Cross 3D Pocket Size" -msgstr "Dimensioni cavità 3D incrociata" +msgstr "Taille de poches entrecroisées 3D" #: /fdmprinter.def.json msgctxt "cross_infill_pocket_size description" msgid "" "The size of pockets at four-way crossings in the cross 3D pattern at heights " "where the pattern is touching itself." -msgstr "Dimensioni delle cavità negli incroci a quattro vie nella configurazione 3D incrociata alle altezze a cui la configurazione tocca se stessa." +msgstr "La taille de poches aux croisements à quatre branches dans le motif entrecroisé 3D, à des hauteurs où le motif se touche lui-même." #: /fdmprinter.def.json msgctxt "cross_infill_density_image label" msgid "Cross Infill Density Image" -msgstr "Immagine di densità del riempimento incrociato" +msgstr "Image de densité du remplissage croisé" #: /fdmprinter.def.json msgctxt "cross_infill_density_image description" msgid "" "The file location of an image of which the brightness values determine the " "minimal density at the corresponding location in the infill of the print." -msgstr "La posizione del file di un'immagine i cui i valori di luminosità determinano la densità minima nella posizione corrispondente nel riempimento della stampa." +msgstr "Emplacement du fichier d'une image dont les valeurs de luminosité déterminent la densité minimale à l'emplacement correspondant dans le remplissage de" +" l'impression." #: /fdmprinter.def.json msgctxt "cross_support_density_image label" msgid "Cross Fill Density Image for Support" -msgstr "Immagine di densità del riempimento incrociato per il supporto" +msgstr "Image de densité du remplissage croisé pour le support" #: /fdmprinter.def.json msgctxt "cross_support_density_image description" msgid "" "The file location of an image of which the brightness values determine the " "minimal density at the corresponding location in the support." -msgstr "La posizione del file di un'immagine i cui i valori di luminosità determinano la densità minima nella posizione corrispondente nel supporto." +msgstr "Emplacement du fichier d'une image dont les valeurs de luminosité déterminent la densité minimale à l'emplacement correspondant dans le support." #: /fdmprinter.def.json msgctxt "support_conical_enabled label" msgid "Enable Conical Support" -msgstr "Abilitazione del supporto conico" +msgstr "Activer les supports coniques" #: /fdmprinter.def.json msgctxt "support_conical_enabled description" msgid "Make support areas smaller at the bottom than at the overhang." -msgstr "Realizza aree di supporto più piccole nella parte inferiore che in corrispondenza dello sbalzo." +msgstr "Rendre les aires de support plus petites en bas qu'au niveau du porte-à-faux à supporter." #: /fdmprinter.def.json msgctxt "support_conical_angle label" msgid "Conical Support Angle" -msgstr "Angolo del supporto conico" +msgstr "Angle des supports coniques" #: /fdmprinter.def.json msgctxt "support_conical_angle description" @@ -7088,60 +7081,60 @@ msgid "" "90 degrees being horizontal. Smaller angles cause the support to be more " "sturdy, but consist of more material. Negative angles cause the base of the " "support to be wider than the top." -msgstr "È l'angolo di inclinazione del supporto conico. Con 0 gradi verticale e 90 gradi orizzontale. Angoli inferiori rendono il supporto più robusto, ma richiedono" -" una maggiore quantità di materiale. Angoli negativi rendono la base del supporto più larga rispetto alla parte superiore." +msgstr "Angle d'inclinaison des supports coniques. Un angle de 0 degré est vertical tandis qu'un angle de 90 degrés est horizontal. Les petits angles rendent le" +" support plus solide mais utilisent plus de matière. Les angles négatifs rendent la base du support plus large que le sommet." #: /fdmprinter.def.json msgctxt "support_conical_min_width label" msgid "Conical Support Minimum Width" -msgstr "Larghezza minima del supporto conico" +msgstr "Largeur minimale des supports coniques" #: /fdmprinter.def.json msgctxt "support_conical_min_width description" msgid "" "Minimum width to which the base of the conical support area is reduced. " "Small widths can lead to unstable support structures." -msgstr "Indica la larghezza minima alla quale viene ridotta la base dell’area del supporto conico. Larghezze minori possono comportare strutture di supporto instabili." +msgstr "Largeur minimale à laquelle la base du support conique est réduite. Des largeurs étroites peuvent entraîner des supports instables." #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_enabled label" msgid "Fuzzy Skin" -msgstr "Rivestimento esterno incoerente (fuzzy)" +msgstr "Surfaces floues" #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_enabled description" msgid "" "Randomly jitter while printing the outer wall, so that the surface has a " "rough and fuzzy look." -msgstr "Distorsione (jitter) casuale durante la stampa della parete esterna, così che la superficie assume un aspetto ruvido ed incoerente (fuzzy)." +msgstr "Produit une agitation aléatoire lors de l'impression de la paroi extérieure, ce qui lui donne une apparence rugueuse et floue." #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_outside_only label" msgid "Fuzzy Skin Outside Only" -msgstr "Fuzzy Skin solo all'esterno" +msgstr "Couche floue à l'extérieur uniquement" #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_outside_only description" msgid "Jitter only the parts' outlines and not the parts' holes." -msgstr "Distorce solo i profili delle parti, non i fori di queste." +msgstr "N'agitez que les contours des pièces et non les trous des pièces." #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_thickness label" msgid "Fuzzy Skin Thickness" -msgstr "Spessore del rivestimento esterno incoerente (fuzzy)" +msgstr "Épaisseur de la couche floue" #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_thickness description" msgid "" "The width within which to jitter. It's advised to keep this below the outer " "wall width, since the inner walls are unaltered." -msgstr "Indica la larghezza entro cui è ammessa la distorsione (jitter). Si consiglia di impostare questo valore ad un livello inferiore rispetto alla larghezza" -" della parete esterna, poiché le pareti interne rimangono inalterate." +msgstr "Largeur autorisée pour l'agitation aléatoire. Il est conseillé de garder cette valeur inférieure à l'épaisseur de la paroi extérieure, ainsi, les parois" +" intérieures ne seront pas altérées." #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_point_density label" msgid "Fuzzy Skin Density" -msgstr "Densità del rivestimento esterno incoerente (fuzzy)" +msgstr "Densité de la couche floue" #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_point_density description" @@ -7149,13 +7142,13 @@ msgid "" "The average density of points introduced on each polygon in a layer. Note " "that the original points of the polygon are discarded, so a low density " "results in a reduction of the resolution." -msgstr "Indica la densità media dei punti introdotti su ciascun poligono in uno strato. Si noti che i punti originali del poligono vengono scartati, perciò una" -" bassa densità si traduce in una riduzione della risoluzione." +msgstr "Densité moyenne de points ajoutée à chaque polygone sur une couche. Notez que les points originaux du polygone ne seront plus pris en compte, une faible" +" densité résultant alors en une diminution de la résolution." #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_point_dist label" msgid "Fuzzy Skin Point Distance" -msgstr "Distanza dei punti del rivestimento incoerente (fuzzy)" +msgstr "Distance entre les points de la couche floue" #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_point_dist description" @@ -7164,26 +7157,25 @@ msgid "" "segment. Note that the original points of the polygon are discarded, so a " "high smoothness results in a reduction of the resolution. This value must be " "higher than half the Fuzzy Skin Thickness." -msgstr "Indica la distanza media tra i punti casuali introdotti su ciascun segmento di linea. Si noti che i punti originali del poligono vengono scartati, perciò" -" un elevato livello di regolarità si traduce in una riduzione della risoluzione. Questo valore deve essere superiore alla metà dello spessore del rivestimento" -" incoerente (fuzzy)." +msgstr "Distance moyenne entre les points ajoutés aléatoirement sur chaque segment de ligne. Il faut noter que les points originaux du polygone ne sont plus pris" +" en compte donc un fort lissage conduira à une diminution de la résolution. Cette valeur doit être supérieure à la moitié de l'épaisseur de la couche floue." #: /fdmprinter.def.json msgctxt "flow_rate_max_extrusion_offset label" msgid "Flow Rate Compensation Max Extrusion Offset" -msgstr "Offset massimo dell'estrusione di compensazione del flusso" +msgstr "Décalage d'extrusion max. pour compensation du débit" #: /fdmprinter.def.json msgctxt "flow_rate_max_extrusion_offset description" msgid "" "The maximum distance in mm to move the filament to compensate for changes in " "flow rate." -msgstr "Distanza massima in mm di spostamento del filamento per compensare le modifiche nella velocità di flusso." +msgstr "La distance maximale en mm pour déplacer le filament afin de compenser les variations du débit." #: /fdmprinter.def.json msgctxt "flow_rate_extrusion_offset_factor label" msgid "Flow Rate Compensation Factor" -msgstr "Fattore di compensazione del flusso" +msgstr "Facteur de compensation du débit" #: /fdmprinter.def.json msgctxt "flow_rate_extrusion_offset_factor description" @@ -7191,13 +7183,13 @@ msgid "" "How far to move the filament in order to compensate for changes in flow " "rate, as a percentage of how far the filament would move in one second of " "extrusion." -msgstr "Distanza di spostamento del filamento al fine di compensare le modifiche nella velocità di flusso, come percentuale della distanza di spostamento del filamento" -" in un secondo di estrusione." +msgstr "La distance de déplacement du filament pour compenser les variations du débit, en pourcentage de la distance de déplacement du filament en une seconde" +" d'extrusion." #: /fdmprinter.def.json msgctxt "wireframe_enabled label" msgid "Wire Printing" -msgstr "Funzione Wire Printing (WP)" +msgstr "Impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_enabled description" @@ -7206,14 +7198,13 @@ msgid "" "thin air'. This is realized by horizontally printing the contours of the " "model at given Z intervals which are connected via upward and diagonally " "downward lines." -msgstr "Consente di stampare solo la superficie esterna come una struttura di linee, realizzando una stampa \"sospesa nell'aria\". Questa funzione si realizza" -" mediante la stampa orizzontale dei contorni del modello con determinati intervalli Z che sono collegati tramite linee che si estendono verticalmente verso" -" l'alto e diagonalmente verso il basso." +msgstr "Imprime uniquement la surface extérieure avec une structure grillagée et clairsemée. Cette impression est « dans les airs » et est réalisée en imprimant" +" horizontalement les contours du modèle aux intervalles donnés de l’axe Z et en les connectant au moyen de lignes ascendantes et diagonalement descendantes." #: /fdmprinter.def.json msgctxt "wireframe_height label" msgid "WP Connection Height" -msgstr "Altezza di connessione WP" +msgstr "Hauteur de connexion pour l'impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_height description" @@ -7221,140 +7212,139 @@ msgid "" "The height of the upward and diagonally downward lines between two " "horizontal parts. This determines the overall density of the net structure. " "Only applies to Wire Printing." -msgstr "Indica l'altezza delle linee che si estendono verticalmente verso l'alto e diagonalmente verso il basso tra due parti orizzontali. Questo determina la" -" densità complessiva della struttura del reticolo. Applicabile solo alla funzione Wire Printing." +msgstr "La hauteur des lignes ascendantes et diagonalement descendantes entre deux pièces horizontales. Elle détermine la densité globale de la structure du filet." +" Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_roof_inset label" msgid "WP Roof Inset Distance" -msgstr "Distanza dalla superficie superiore WP" +msgstr "Distance d’insert de toit pour les impressions filaires" #: /fdmprinter.def.json msgctxt "wireframe_roof_inset description" msgid "" "The distance covered when making a connection from a roof outline inward. " "Only applies to Wire Printing." -msgstr "Indica la distanza percorsa durante la realizzazione di una connessione da un profilo della superficie superiore (tetto) verso l'interno. Applicabile solo" -" alla funzione Wire Printing." +msgstr "La distance couverte lors de l'impression d'une connexion d'un contour de toit vers l’intérieur. Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_printspeed label" msgid "WP Speed" -msgstr "Velocità WP" +msgstr "Vitesse d’impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_printspeed description" msgid "" "Speed at which the nozzle moves when extruding material. Only applies to " "Wire Printing." -msgstr "Indica la velocità a cui l'ugello si muove durante l'estrusione del materiale. Applicabile solo alla funzione Wire Printing." +msgstr "Vitesse à laquelle la buse se déplace lorsqu’elle extrude du matériau. Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_printspeed_bottom label" msgid "WP Bottom Printing Speed" -msgstr "Velocità di stampa della parte inferiore WP" +msgstr "Vitesse d’impression filaire du bas" #: /fdmprinter.def.json msgctxt "wireframe_printspeed_bottom description" msgid "" "Speed of printing the first layer, which is the only layer touching the " "build platform. Only applies to Wire Printing." -msgstr "Indica la velocità di stampa del primo strato, che è il solo strato a contatto con il piano di stampa. Applicabile solo alla funzione Wire Printing." +msgstr "Vitesse d’impression de la première couche qui constitue la seule couche en contact avec le plateau d'impression. Uniquement applicable à l'impression" +" filaire." #: /fdmprinter.def.json msgctxt "wireframe_printspeed_up label" msgid "WP Upward Printing Speed" -msgstr "Velocità di stampa verticale WP" +msgstr "Vitesse d’impression filaire ascendante" #: /fdmprinter.def.json msgctxt "wireframe_printspeed_up description" msgid "" "Speed of printing a line upward 'in thin air'. Only applies to Wire Printing." -msgstr "Indica la velocità di stampa di una linea verticale verso l'alto della struttura \"sospesa nell'aria\". Applicabile solo alla funzione Wire Printing." +msgstr "Vitesse d’impression d’une ligne ascendante « dans les airs ». Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_printspeed_down label" msgid "WP Downward Printing Speed" -msgstr "Velocità di stampa diagonale WP" +msgstr "Vitesse d’impression filaire descendante" #: /fdmprinter.def.json msgctxt "wireframe_printspeed_down description" msgid "" "Speed of printing a line diagonally downward. Only applies to Wire Printing." -msgstr "Indica la velocità di stampa di una linea diagonale verso il basso. Applicabile solo alla funzione Wire Printing." +msgstr "Vitesse d’impression d’une ligne diagonalement descendante. Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_printspeed_flat label" msgid "WP Horizontal Printing Speed" -msgstr "Velocità di stampa orizzontale WP" +msgstr "Vitesse d’impression filaire horizontale" #: /fdmprinter.def.json msgctxt "wireframe_printspeed_flat description" msgid "" "Speed of printing the horizontal contours of the model. Only applies to Wire " "Printing." -msgstr "Indica la velocità di stampa dei contorni orizzontali del modello. Applicabile solo alla funzione Wire Printing." +msgstr "Vitesse d'impression du contour horizontal du modèle. Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_flow label" msgid "WP Flow" -msgstr "Flusso WP" +msgstr "Débit de l'impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_flow description" msgid "" "Flow compensation: the amount of material extruded is multiplied by this " "value. Only applies to Wire Printing." -msgstr "Determina la compensazione del flusso: la quantità di materiale estruso viene moltiplicata per questo valore. Applicabile solo alla funzione Wire Printing." +msgstr "Compensation du débit : la quantité de matériau extrudée est multipliée par cette valeur. Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_flow_connection label" msgid "WP Connection Flow" -msgstr "Flusso di connessione WP" +msgstr "Débit de connexion de l'impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_flow_connection description" msgid "Flow compensation when going up or down. Only applies to Wire Printing." -msgstr "Determina la compensazione di flusso nei percorsi verso l'alto o verso il basso. Applicabile solo alla funzione Wire Printing." +msgstr "Compensation du débit lorsqu’il monte ou descend. Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_flow_flat label" msgid "WP Flat Flow" -msgstr "Flusso linee piatte WP" +msgstr "Débit des fils plats" #: /fdmprinter.def.json msgctxt "wireframe_flow_flat description" msgid "" "Flow compensation when printing flat lines. Only applies to Wire Printing." -msgstr "Determina la compensazione di flusso durante la stampa di linee piatte. Applicabile solo alla funzione Wire Printing." +msgstr "Compensation du débit lors de l’impression de lignes planes. Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_top_delay label" msgid "WP Top Delay" -msgstr "Ritardo dopo spostamento verso l'alto WP" +msgstr "Attente pour le haut de l'impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_top_delay description" msgid "" "Delay time after an upward move, so that the upward line can harden. Only " "applies to Wire Printing." -msgstr "Indica il tempo di ritardo dopo uno spostamento verso l'alto, in modo da consentire l'indurimento della linea verticale indirizzata verso l'alto. Applicabile" -" solo alla funzione Wire Printing." +msgstr "Temps d’attente après un déplacement vers le haut, afin que la ligne ascendante puisse durcir. Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_bottom_delay label" msgid "WP Bottom Delay" -msgstr "Ritardo dopo spostamento verso il basso WP" +msgstr "Attente pour le bas de l'impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_bottom_delay description" msgid "Delay time after a downward move. Only applies to Wire Printing." -msgstr "Indica il tempo di ritardo dopo uno spostamento verso il basso. Applicabile solo alla funzione Wire Printing." +msgstr "Temps d’attente après un déplacement vers le bas. Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_flat_delay label" msgid "WP Flat Delay" -msgstr "Ritardo tra due segmenti orizzontali WP" +msgstr "Attente horizontale de l'impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_flat_delay description" @@ -7362,13 +7352,13 @@ msgid "" "Delay time between two horizontal segments. Introducing such a delay can " "cause better adhesion to previous layers at the connection points, while too " "long delays cause sagging. Only applies to Wire Printing." -msgstr "Indica il tempo di ritardo tra due segmenti orizzontali. Introducendo un tale ritardo si può ottenere una migliore adesione agli strati precedenti in corrispondenza" -" dei punti di collegamento, mentre ritardi troppo prolungati provocano cedimenti. Applicabile solo alla funzione Wire Printing." +msgstr "Attente entre deux segments horizontaux. L’introduction d’un tel temps d’attente peut permettre une meilleure adhérence aux couches précédentes au niveau" +" des points de connexion, tandis que des temps d’attente trop longs peuvent provoquer un affaissement. Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_up_half_speed label" msgid "WP Ease Upward" -msgstr "Spostamento verso l'alto a velocità ridotta WP" +msgstr "Écart ascendant de l'impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_up_half_speed description" @@ -7376,13 +7366,13 @@ msgid "" "Distance of an upward move which is extruded with half speed.\n" "This can cause better adhesion to previous layers, while not heating the " "material in those layers too much. Only applies to Wire Printing." -msgstr "Indica la distanza di uno spostamento verso l'alto con estrusione a velocità dimezzata.\nCiò può garantire una migliore adesione agli strati precedenti," -" senza eccessivo riscaldamento del materiale su questi strati. Applicabile solo alla funzione Wire Printing." +msgstr "Distance d’un déplacement ascendant qui est extrudé à mi-vitesse.\nCela peut permettre une meilleure adhérence aux couches précédentes sans surchauffer" +" le matériau dans ces couches. Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_top_jump label" msgid "WP Knot Size" -msgstr "Dimensione dei nodi WP" +msgstr "Taille de nœud de l'impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_top_jump description" @@ -7390,25 +7380,25 @@ msgid "" "Creates a small knot at the top of an upward line, so that the consecutive " "horizontal layer has a better chance to connect to it. Only applies to Wire " "Printing." -msgstr "Crea un piccolo nodo alla sommità di una linea verticale verso l'alto, in modo che lo strato orizzontale consecutivo abbia una migliore possibilità di" -" collegarsi ad essa. Applicabile solo alla funzione Wire Printing." +msgstr "Crée un petit nœud en haut d’une ligne ascendante pour que la couche horizontale suivante s’y accroche davantage. Uniquement applicable à l'impression" +" filaire." #: /fdmprinter.def.json msgctxt "wireframe_fall_down label" msgid "WP Fall Down" -msgstr "Caduta del materiale WP" +msgstr "Descente de l'impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_fall_down description" msgid "" "Distance with which the material falls down after an upward extrusion. This " "distance is compensated for. Only applies to Wire Printing." -msgstr "Indica la distanza di caduta del materiale dopo un estrusione verso l'alto. Tale distanza viene compensata. Applicabile solo alla funzione Wire Printing." +msgstr "La distance de laquelle le matériau chute après avoir extrudé vers le haut. Cette distance est compensée. Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_drag_along label" msgid "WP Drag Along" -msgstr "Trascinamento WP" +msgstr "Entraînement de l'impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_drag_along description" @@ -7416,13 +7406,13 @@ msgid "" "Distance with which the material of an upward extrusion is dragged along " "with the diagonally downward extrusion. This distance is compensated for. " "Only applies to Wire Printing." -msgstr "Indica la distanza di trascinamento del materiale di una estrusione verso l'alto nell'estrusione diagonale verso il basso. Tale distanza viene compensata." -" Applicabile solo alla funzione Wire Printing." +msgstr "Distance sur laquelle le matériau d’une extrusion ascendante est entraîné par l’extrusion diagonalement descendante. La distance est compensée. Uniquement" +" applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_strategy label" msgid "WP Strategy" -msgstr "Strategia WP" +msgstr "Stratégie de l'impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_strategy description" @@ -7434,30 +7424,30 @@ msgid "" "however, it may require slow printing speeds. Another strategy is to " "compensate for the sagging of the top of an upward line; however, the lines " "won't always fall down as predicted." -msgstr "Strategia per garantire il collegamento di due strati consecutivi ad ogni punto di connessione. La retrazione consente l'indurimento delle linee verticali" -" verso l'alto nella giusta posizione, ma può causare la deformazione del filamento. È possibile realizzare un nodo all'estremità di una linea verticale" -" verso l'alto per accrescere la possibilità di collegamento e lasciarla raffreddare; tuttavia ciò può richiedere velocità di stampa ridotte. Un'altra strategia" -" consiste nel compensare il cedimento della parte superiore di una linea verticale verso l'alto; tuttavia le linee non sempre ricadono come previsto." +msgstr "Stratégie garantissant que deux couches consécutives se touchent à chaque point de connexion. La rétraction permet aux lignes ascendantes de durcir dans" +" la bonne position, mais cela peut provoquer l’écrasement des filaments. Un nœud peut être fait à la fin d’une ligne ascendante pour augmenter les chances" +" de raccorder cette ligne et la laisser refroidir. Toutefois, cela peut nécessiter de ralentir la vitesse d’impression. Une autre stratégie consiste à" +" compenser l’affaissement du dessus d’une ligne ascendante, mais les lignes ne tombent pas toujours comme prévu." #: /fdmprinter.def.json msgctxt "wireframe_strategy option compensate" msgid "Compensate" -msgstr "Compensazione" +msgstr "Compenser" #: /fdmprinter.def.json msgctxt "wireframe_strategy option knot" msgid "Knot" -msgstr "Nodo" +msgstr "Nœud" #: /fdmprinter.def.json msgctxt "wireframe_strategy option retract" msgid "Retract" -msgstr "Retrazione" +msgstr "Rétraction" #: /fdmprinter.def.json msgctxt "wireframe_straight_before_down label" msgid "WP Straighten Downward Lines" -msgstr "Correzione delle linee diagonali WP" +msgstr "Redresser les lignes descendantes de l'impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_straight_before_down description" @@ -7465,13 +7455,13 @@ msgid "" "Percentage of a diagonally downward line which is covered by a horizontal " "line piece. This can prevent sagging of the top most point of upward lines. " "Only applies to Wire Printing." -msgstr "Indica la percentuale di copertura di una linea diagonale verso il basso da un tratto di linea orizzontale. Questa opzione può impedire il cedimento della" -" sommità delle linee verticali verso l'alto. Applicabile solo alla funzione Wire Printing." +msgstr "Pourcentage d’une ligne diagonalement descendante couvert par une pièce à lignes horizontales. Cela peut empêcher le fléchissement du point le plus haut" +" des lignes ascendantes. Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_roof_fall_down label" msgid "WP Roof Fall Down" -msgstr "Caduta delle linee della superficie superiore (tetto) WP" +msgstr "Affaissement du dessus de l'impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_roof_fall_down description" @@ -7479,13 +7469,13 @@ msgid "" "The distance which horizontal roof lines printed 'in thin air' fall down " "when being printed. This distance is compensated for. Only applies to Wire " "Printing." -msgstr "Indica la distanza di caduta delle linee della superficie superiore (tetto) della struttura \"sospesa nell'aria\" durante la stampa. Questa distanza viene" -" compensata. Applicabile solo alla funzione Wire Printing." +msgstr "La distance d’affaissement lors de l’impression des lignes horizontales du dessus d’une pièce qui sont imprimées « dans les airs ». Cet affaissement est" +" compensé. Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_roof_drag_along label" msgid "WP Roof Drag Along" -msgstr "Trascinamento superficie superiore (tetto) WP" +msgstr "Entraînement du dessus de l'impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_roof_drag_along description" @@ -7493,26 +7483,26 @@ msgid "" "The distance of the end piece of an inward line which gets dragged along " "when going back to the outer outline of the roof. This distance is " "compensated for. Only applies to Wire Printing." -msgstr "Indica la distanza di trascinamento dell'estremità di una linea interna durante lo spostamento di ritorno verso il contorno esterno della superficie superiore" -" (tetto). Questa distanza viene compensata. Applicabile solo alla funzione Wire Printing." +msgstr "La distance parcourue par la pièce finale d’une ligne intérieure qui est entraînée lorsqu’elle retourne sur le contour extérieur du dessus. Cette distance" +" est compensée. Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_roof_outer_delay label" msgid "WP Roof Outer Delay" -msgstr "Ritardo su perimetro esterno foro superficie superiore (tetto) WP" +msgstr "Délai d'impression filaire de l'extérieur du dessus" #: /fdmprinter.def.json msgctxt "wireframe_roof_outer_delay description" msgid "" "Time spent at the outer perimeters of hole which is to become a roof. Longer " "times can ensure a better connection. Only applies to Wire Printing." -msgstr "Indica il tempo trascorso sul perimetro esterno del foro di una superficie superiore (tetto). Tempi più lunghi possono garantire un migliore collegamento." -" Applicabile solo alla funzione Wire Printing." +msgstr "Temps passé sur le périmètre extérieur de l’orifice qui deviendra le dessus. Un temps plus long peut garantir une meilleure connexion. Uniquement applicable" +" pour l'impression filaire." #: /fdmprinter.def.json msgctxt "wireframe_nozzle_clearance label" msgid "WP Nozzle Clearance" -msgstr "Gioco ugello WP" +msgstr "Ecartement de la buse de l'impression filaire" #: /fdmprinter.def.json msgctxt "wireframe_nozzle_clearance description" @@ -7521,47 +7511,47 @@ msgid "" "clearance results in diagonally downward lines with a less steep angle, " "which in turn results in less upward connections with the next layer. Only " "applies to Wire Printing." -msgstr "Indica la distanza tra l'ugello e le linee diagonali verso il basso. Un maggior gioco risulta in linee diagonali verso il basso con un minor angolo di" -" inclinazione, cosa che a sua volta si traduce in meno collegamenti verso l'alto con lo strato successivo. Applicabile solo alla funzione Wire Printing." +msgstr "Distance entre la buse et les lignes descendantes horizontalement. Un espacement plus important génère des lignes diagonalement descendantes avec un angle" +" moins abrupt, qui génère alors des connexions moins ascendantes avec la couche suivante. Uniquement applicable à l'impression filaire." #: /fdmprinter.def.json msgctxt "adaptive_layer_height_enabled label" msgid "Use Adaptive Layers" -msgstr "Uso di strati adattivi" +msgstr "Utiliser des couches adaptatives" #: /fdmprinter.def.json msgctxt "adaptive_layer_height_enabled description" msgid "" "Adaptive layers computes the layer heights depending on the shape of the " "model." -msgstr "Gli strati adattivi calcolano l’altezza degli strati in base alla forma del modello." +msgstr "Cette option calcule la hauteur des couches en fonction de la forme du modèle." #: /fdmprinter.def.json msgctxt "adaptive_layer_height_variation label" msgid "Adaptive Layers Maximum Variation" -msgstr "Variazione massima strati adattivi" +msgstr "Variation maximale des couches adaptatives" #: /fdmprinter.def.json msgctxt "adaptive_layer_height_variation description" msgid "The maximum allowed height different from the base layer height." -msgstr "La differenza di altezza massima rispetto all’altezza dello strato di base." +msgstr "Hauteur maximale autorisée par rapport à la couche de base." #: /fdmprinter.def.json msgctxt "adaptive_layer_height_variation_step label" msgid "Adaptive Layers Variation Step Size" -msgstr "Dimensione variazione strati adattivi" +msgstr "Taille des étapes de variation des couches adaptatives" #: /fdmprinter.def.json msgctxt "adaptive_layer_height_variation_step description" msgid "" "The difference in height of the next layer height compared to the previous " "one." -msgstr "La differenza in altezza dello strato successivo rispetto al precedente." +msgstr "Différence de hauteur de la couche suivante par rapport à la précédente." #: /fdmprinter.def.json msgctxt "adaptive_layer_height_threshold label" msgid "Adaptive Layers Topography Size" -msgstr "Dimensione della topografia dei layer adattivi" +msgstr "Taille de la topographie des couches adaptatives" #: /fdmprinter.def.json msgctxt "adaptive_layer_height_threshold description" @@ -7569,13 +7559,13 @@ msgid "" "Target horizontal distance between two adjacent layers. Reducing this " "setting causes thinner layers to be used to bring the edges of the layers " "closer together." -msgstr "Distanza orizzontale target tra due layer adiacenti. Riducendo questa impostazione, i layer più sottili verranno utilizzati per avvicinare i margini dei" -" layer." +msgstr "Distance horizontale cible entre deux couches adjacentes. La réduction de ce paramètre entraîne l'utilisation de couches plus fines pour rapprocher les" +" bords des couches." #: /fdmprinter.def.json msgctxt "wall_overhang_angle label" msgid "Overhanging Wall Angle" -msgstr "Angolo parete di sbalzo" +msgstr "Angle de parois en porte-à-faux" #: /fdmprinter.def.json msgctxt "wall_overhang_angle description" @@ -7584,37 +7574,37 @@ msgid "" "wall settings. When the value is 90, no walls will be treated as " "overhanging. Overhang that gets supported by support will not be treated as " "overhang either." -msgstr "Le pareti con uno sbalzo superiore a quest'angolo saranno stampate con le impostazioni per le pareti a sbalzo. Se il valore è 90, nessuna parete sarà trattata" -" come parete a sbalzo. Nemmeno lo sbalzo supportato dal supporto sarà trattato come tale." +msgstr "Les parois ayant un angle supérieur à cette valeur seront imprimées en utilisant les paramètres de parois en porte-à-faux. Si la valeur est 90, aucune" +" paroi ne sera considérée comme étant en porte-à-faux. La saillie soutenue par le support ne sera pas non plus considérée comme étant en porte-à-faux." #: /fdmprinter.def.json msgctxt "wall_overhang_speed_factor label" msgid "Overhanging Wall Speed" -msgstr "Velocità parete di sbalzo" +msgstr "Vitesse de paroi en porte-à-faux" #: /fdmprinter.def.json msgctxt "wall_overhang_speed_factor description" msgid "" "Overhanging walls will be printed at this percentage of their normal print " "speed." -msgstr "Le pareti di sbalzo verranno stampate a questa percentuale della loro normale velocità di stampa." +msgstr "Les parois en porte-à-faux seront imprimées à ce pourcentage de leur vitesse d'impression normale." #: /fdmprinter.def.json msgctxt "bridge_settings_enabled label" msgid "Enable Bridge Settings" -msgstr "Abilita impostazioni ponte" +msgstr "Activer les paramètres du pont" #: /fdmprinter.def.json msgctxt "bridge_settings_enabled description" msgid "" "Detect bridges and modify print speed, flow and fan settings while bridges " "are printed." -msgstr "Rileva i ponti e modifica la velocità di stampa, il flusso e le impostazioni ventola durante la stampa dei ponti." +msgstr "Détecter les ponts et modifier la vitesse d'impression, le débit et les paramètres du ventilateur pendant l'impression des ponts." #: /fdmprinter.def.json msgctxt "bridge_wall_min_length label" msgid "Minimum Bridge Wall Length" -msgstr "Lunghezza minima parete ponte" +msgstr "Longueur minimale de la paroi du pont" #: /fdmprinter.def.json msgctxt "bridge_wall_min_length description" @@ -7622,13 +7612,13 @@ msgid "" "Unsupported walls shorter than this will be printed using the normal wall " "settings. Longer unsupported walls will be printed using the bridge wall " "settings." -msgstr "Le pareti non supportate di lunghezza inferiore a questo valore verranno stampate utilizzando le normali impostazioni parete. Le pareti non supportate" -" di lunghezza superiore verranno stampate utilizzando le impostazioni parete ponte." +msgstr "Les parois non supportées dont la longueur est inférieure à cette valeur seront imprimées selon les paramètres de parois normaux, tandis que celles dont" +" la longueur est supérieure à cette valeur seront imprimées selon les paramètres de parois du pont." #: /fdmprinter.def.json msgctxt "bridge_skin_support_threshold label" msgid "Bridge Skin Support Threshold" -msgstr "Soglia di supporto rivestimento esterno ponte" +msgstr "Limite de support de la couche extérieure du pont" #: /fdmprinter.def.json msgctxt "bridge_skin_support_threshold description" @@ -7636,26 +7626,26 @@ msgid "" "If a skin region is supported for less than this percentage of its area, " "print it using the bridge settings. Otherwise it is printed using the normal " "skin settings." -msgstr "Se una zona di rivestimento esterno è supportata per meno di questa percentuale della sua area, effettuare la stampa utilizzando le impostazioni ponte." -" In caso contrario viene stampata utilizzando le normali impostazioni rivestimento esterno." +msgstr "Si une région de couche extérieure est supportée pour une valeur inférieure à ce pourcentage de sa surface, elle sera imprimée selon les paramètres du" +" pont. Sinon, elle sera imprimée selon les paramètres normaux de la couche extérieure." #: /fdmprinter.def.json msgctxt "bridge_sparse_infill_max_density label" msgid "Bridge Sparse Infill Max Density" -msgstr "Densità massima del riempimento rado del Bridge" +msgstr "Densité maximale du remplissage mince du pont" #: /fdmprinter.def.json msgctxt "bridge_sparse_infill_max_density description" msgid "" "Maximum density of infill considered to be sparse. Skin over sparse infill " "is considered to be unsupported and so may be treated as a bridge skin." -msgstr "Densità massima del riempimento considerato rado. Il rivestimento esterno sul riempimento rado è considerato non supportato; pertanto potrebbe essere trattato" -" come rivestimento esterno ponte." +msgstr "Densité maximale du remplissage considéré comme étant mince. La couche sur le remplissage mince est considérée comme non soutenue et peut donc être traitée" +" comme une couche du pont." #: /fdmprinter.def.json msgctxt "bridge_wall_coast label" msgid "Bridge Wall Coasting" -msgstr "Coasting parete ponte" +msgstr "Roue libre pour paroi du pont" #: /fdmprinter.def.json msgctxt "bridge_wall_coast description" @@ -7663,79 +7653,79 @@ msgid "" "This controls the distance the extruder should coast immediately before a " "bridge wall begins. Coasting before the bridge starts can reduce the " "pressure in the nozzle and may produce a flatter bridge." -msgstr "Questo comanda la distanza che l’estrusore deve percorrere in coasting immediatamente dopo l’inizio di una parete ponte. Il coasting prima dell’inizio" -" del ponte può ridurre la pressione nell’ugello e generare un ponte più piatto." +msgstr "Ce paramètre contrôle la distance que l'extrudeuse doit parcourir en roue libre immédiatement avant le début d'une paroi de pont. L'utilisation de la roue" +" libre avant le début du pont permet de réduire la pression à l'intérieur de la buse et d'obtenir un pont plus plat." #: /fdmprinter.def.json msgctxt "bridge_wall_speed label" msgid "Bridge Wall Speed" -msgstr "Velocità di stampa della parete ponte" +msgstr "Vitesse de paroi du pont" #: /fdmprinter.def.json msgctxt "bridge_wall_speed description" msgid "The speed at which the bridge walls are printed." -msgstr "Indica la velocità alla quale vengono stampate le pareti ponte." +msgstr "Vitesse à laquelle les parois de pont sont imprimées." #: /fdmprinter.def.json msgctxt "bridge_wall_material_flow label" msgid "Bridge Wall Flow" -msgstr "Flusso della parete ponte" +msgstr "Débit de paroi du pont" #: /fdmprinter.def.json msgctxt "bridge_wall_material_flow description" msgid "" "When printing bridge walls, the amount of material extruded is multiplied by " "this value." -msgstr "Quando si stampano le pareti ponte, la quantità di materiale estruso viene moltiplicata per questo valore." +msgstr "Lors de l'impression des parois de pont, la quantité de matériau extrudé est multipliée par cette valeur." #: /fdmprinter.def.json msgctxt "bridge_skin_speed label" msgid "Bridge Skin Speed" -msgstr "Velocità di stampa del rivestimento esterno ponte" +msgstr "Vitesse de la couche extérieure du pont" #: /fdmprinter.def.json msgctxt "bridge_skin_speed description" msgid "The speed at which bridge skin regions are printed." -msgstr "Indica la velocità alla quale vengono stampate le zone di rivestimento esterno del ponte." +msgstr "Vitesse à laquelle les régions de la couche extérieure du pont sont imprimées." #: /fdmprinter.def.json msgctxt "bridge_skin_material_flow label" msgid "Bridge Skin Flow" -msgstr "Flusso del rivestimento esterno ponte" +msgstr "Débit de la couche extérieure du pont" #: /fdmprinter.def.json msgctxt "bridge_skin_material_flow description" msgid "" "When printing bridge skin regions, the amount of material extruded is " "multiplied by this value." -msgstr "Quando si stampano le zone di rivestimento esterno ponte, la quantità di materiale estruso viene moltiplicata per questo valore." +msgstr "Lors de l'impression des régions de la couche extérieure du pont, la quantité de matériau extrudé est multipliée par cette valeur." #: /fdmprinter.def.json msgctxt "bridge_skin_density label" msgid "Bridge Skin Density" -msgstr "Densità del rivestimento esterno ponte" +msgstr "Densité de la couche extérieure du pont" #: /fdmprinter.def.json msgctxt "bridge_skin_density description" msgid "" "The density of the bridge skin layer. Values less than 100 will increase the " "gaps between the skin lines." -msgstr "La densità dello strato del rivestimento esterno ponte. I valori inferiori a 100 aumentano la distanza tra le linee del rivestimento esterno." +msgstr "Densité de la couche extérieure du pont. Des valeurs inférieures à 100 augmenteront les écarts entre les lignes de la couche extérieure." #: /fdmprinter.def.json msgctxt "bridge_fan_speed label" msgid "Bridge Fan Speed" -msgstr "Velocità della ventola ponte" +msgstr "Vitesse du ventilateur du pont" #: /fdmprinter.def.json msgctxt "bridge_fan_speed description" msgid "Percentage fan speed to use when printing bridge walls and skin." -msgstr "La velocità della ventola in percentuale da usare durante la stampa delle pareti e del rivestimento esterno ponte." +msgstr "Vitesse du ventilateur en pourcentage à utiliser pour l'impression des parois et de la couche extérieure du pont." #: /fdmprinter.def.json msgctxt "bridge_enable_more_layers label" msgid "Bridge Has Multiple Layers" -msgstr "Ponte a strati multipli" +msgstr "Le pont possède plusieurs couches" #: /fdmprinter.def.json msgctxt "bridge_enable_more_layers description" @@ -7743,101 +7733,101 @@ msgid "" "If enabled, the second and third layers above the air are printed using the " "following settings. Otherwise, those layers are printed using the normal " "settings." -msgstr "Se abilitata, il secondo e il terzo strato sopra l’aria vengono stampati utilizzando le seguenti impostazioni. In caso contrario, questi strati vengono" -" stampati utilizzando le impostazioni normali." +msgstr "Si cette option est activée, les deuxième et troisième couches au-dessus de la zone d'air seront imprimées selon les paramètres suivants. Sinon, ces couches" +" seront imprimées selon les paramètres normaux." #: /fdmprinter.def.json msgctxt "bridge_skin_speed_2 label" msgid "Bridge Second Skin Speed" -msgstr "Velocità di stampa del secondo rivestimento esterno ponte" +msgstr "Vitesse de la deuxième couche extérieure du pont" #: /fdmprinter.def.json msgctxt "bridge_skin_speed_2 description" msgid "Print speed to use when printing the second bridge skin layer." -msgstr "La velocità di stampa da usare per stampare il secondo strato del rivestimento esterno ponte." +msgstr "Vitesse d'impression à utiliser lors de l'impression de la deuxième couche extérieure du pont." #: /fdmprinter.def.json msgctxt "bridge_skin_material_flow_2 label" msgid "Bridge Second Skin Flow" -msgstr "Flusso del secondo rivestimento esterno ponte" +msgstr "Débit de la deuxième couche extérieure du pont" #: /fdmprinter.def.json msgctxt "bridge_skin_material_flow_2 description" msgid "" "When printing the second bridge skin layer, the amount of material extruded " "is multiplied by this value." -msgstr "Quando si stampa il secondo strato del rivestimento esterno ponte, la quantità di materiale estruso viene moltiplicata per questo valore." +msgstr "Lors de l'impression de la deuxième couche extérieure du pont, la quantité de matériau extrudé est multipliée par cette valeur." #: /fdmprinter.def.json msgctxt "bridge_skin_density_2 label" msgid "Bridge Second Skin Density" -msgstr "Densità del secondo rivestimento esterno ponte" +msgstr "Densité de la deuxième couche extérieure du pont" #: /fdmprinter.def.json msgctxt "bridge_skin_density_2 description" msgid "" "The density of the second bridge skin layer. Values less than 100 will " "increase the gaps between the skin lines." -msgstr "La densità del secondo strato del rivestimento esterno ponte. I valori inferiori a 100 aumentano la distanza tra le linee del rivestimento esterno." +msgstr "Densité de la deuxième couche extérieure du pont. Des valeurs inférieures à 100 augmenteront les écarts entre les lignes de la couche extérieure." #: /fdmprinter.def.json msgctxt "bridge_fan_speed_2 label" msgid "Bridge Second Skin Fan Speed" -msgstr "Velocità della ventola per il secondo rivestimento esterno ponte" +msgstr "Vitesse du ventilateur de la deuxième couche extérieure du pont" #: /fdmprinter.def.json msgctxt "bridge_fan_speed_2 description" msgid "Percentage fan speed to use when printing the second bridge skin layer." -msgstr "La velocità delle ventola in percentuale da usare per stampare il secondo strato del rivestimento esterno ponte." +msgstr "Vitesse du ventilateur en pourcentage à utiliser pour l'impression de la deuxième couche extérieure du pont." #: /fdmprinter.def.json msgctxt "bridge_skin_speed_3 label" msgid "Bridge Third Skin Speed" -msgstr "Velocità di stampa del terzo rivestimento esterno ponte" +msgstr "Vitesse de la troisième couche extérieure du pont" #: /fdmprinter.def.json msgctxt "bridge_skin_speed_3 description" msgid "Print speed to use when printing the third bridge skin layer." -msgstr "La velocità di stampa da usare per stampare il terzo strato del rivestimento esterno ponte." +msgstr "Vitesse d'impression à utiliser lors de l'impression de la troisième couche extérieure du pont." #: /fdmprinter.def.json msgctxt "bridge_skin_material_flow_3 label" msgid "Bridge Third Skin Flow" -msgstr "Flusso del terzo rivestimento esterno ponte" +msgstr "Débit de la troisième couche extérieure du pont" #: /fdmprinter.def.json msgctxt "bridge_skin_material_flow_3 description" msgid "" "When printing the third bridge skin layer, the amount of material extruded " "is multiplied by this value." -msgstr "Quando si stampa il terzo strato del rivestimento esterno ponte, la quantità di materiale estruso viene moltiplicata per questo valore." +msgstr "Lors de l'impression de la troisième couche extérieure du pont, la quantité de matériau extrudé est multipliée par cette valeur." #: /fdmprinter.def.json msgctxt "bridge_skin_density_3 label" msgid "Bridge Third Skin Density" -msgstr "Densità del terzo rivestimento esterno ponte" +msgstr "Densité de la troisième couche extérieure du pont" #: /fdmprinter.def.json msgctxt "bridge_skin_density_3 description" msgid "" "The density of the third bridge skin layer. Values less than 100 will " "increase the gaps between the skin lines." -msgstr "La densità del terzo strato del rivestimento esterno ponte. I valori inferiori a 100 aumentano la distanza tra le linee del rivestimento esterno." +msgstr "Densité de la troisième couche extérieure du pont. Des valeurs inférieures à 100 augmenteront les écarts entre les lignes de la couche extérieure." #: /fdmprinter.def.json msgctxt "bridge_fan_speed_3 label" msgid "Bridge Third Skin Fan Speed" -msgstr "Velocità della ventola del terzo rivestimento esterno ponte" +msgstr "Vitesse du ventilateur de la troisième couche extérieure du pont" #: /fdmprinter.def.json msgctxt "bridge_fan_speed_3 description" msgid "Percentage fan speed to use when printing the third bridge skin layer." -msgstr "La velocità della ventola in percentuale da usare per stampare il terzo strato del rivestimento esterno ponte." +msgstr "Vitesse du ventilateur en pourcentage à utiliser pour l'impression de la troisième couche extérieure du pont." #: /fdmprinter.def.json msgctxt "clean_between_layers label" msgid "Wipe Nozzle Between Layers" -msgstr "Pulitura ugello tra gli strati" +msgstr "Essuyer la buse entre les couches" #: /fdmprinter.def.json msgctxt "clean_between_layers description" @@ -7846,14 +7836,14 @@ msgid "" "Enabling this setting could influence behavior of retract at layer change. " "Please use Wipe Retraction settings to control retraction at layers where " "the wipe script will be working." -msgstr "Indica se includere nel G-Code la pulitura ugello tra i layer (massimo 1 per layer). L'attivazione di questa impostazione potrebbe influenzare il comportamento" -" della retrazione al cambio layer. Utilizzare le impostazioni di retrazione per pulitura per controllare la retrazione in corrispondenza dei layer in cui" -" sarà in funzione lo script di pulitura." +msgstr "Inclure ou non le G-Code d'essuyage de la buse entre les couches (maximum 1 par couche). L'activation de ce paramètre peut influencer le comportement de" +" la rétraction lors du changement de couche. Veuillez utiliser les paramètres de rétraction d'essuyage pour contrôler la rétraction aux couches où le script" +" d'essuyage sera exécuté." #: /fdmprinter.def.json msgctxt "max_extrusion_before_wipe label" msgid "Material Volume Between Wipes" -msgstr "Volume di materiale tra le operazioni di pulitura" +msgstr "Volume de matériau entre les essuyages" #: /fdmprinter.def.json msgctxt "max_extrusion_before_wipe description" @@ -7862,90 +7852,90 @@ msgid "" "initiated. If this value is less than the volume of material required in a " "layer, the setting has no effect in this layer, i.e. it is limited to one " "wipe per layer." -msgstr "Il massimo volume di materiale che può essere estruso prima di iniziare un'altra operazione di pulitura ugello. Se questo valore è inferiore al volume" -" del materiale richiesto in un layer, l'impostazione non ha effetto in questo layer, vale a dire che si limita a una pulitura per layer." +msgstr "Le volume maximum de matériau qui peut être extrudé avant qu'un autre essuyage de buse ne soit lancé. Si cette valeur est inférieure au volume de matériau" +" nécessaire dans une couche, le paramètre n'a aucun effet dans cette couche, c'est-à-dire qu'il est limité à un essuyage par couche." #: /fdmprinter.def.json msgctxt "wipe_retraction_enable label" msgid "Wipe Retraction Enable" -msgstr "Retrazione per pulitura abilitata" +msgstr "Activation de la rétraction d'essuyage" #: /fdmprinter.def.json msgctxt "wipe_retraction_enable description" msgid "Retract the filament when the nozzle is moving over a non-printed area." -msgstr "Ritrae il filamento quando l'ugello si sta muovendo su un'area non stampata." +msgstr "Rétracte le filament quand la buse se déplace vers une zone non imprimée." #: /fdmprinter.def.json msgctxt "wipe_retraction_amount label" msgid "Wipe Retraction Distance" -msgstr "Distanza di retrazione per pulitura" +msgstr "Distance de rétraction d'essuyage" #: /fdmprinter.def.json msgctxt "wipe_retraction_amount description" msgid "" "Amount to retract the filament so it does not ooze during the wipe sequence." -msgstr "L'entità di retrazione del filamento in modo che non fuoriesca durante la sequenza di pulitura." +msgstr "La distance de rétraction du filament afin qu'il ne suinte pas pendant la séquence d'essuyage." #: /fdmprinter.def.json msgctxt "wipe_retraction_extra_prime_amount label" msgid "Wipe Retraction Extra Prime Amount" -msgstr "Entità di innesco supplementare dopo retrazione per pulitura" +msgstr "Degré supplémentaire de rétraction d'essuyage d'amorçage" #: /fdmprinter.def.json msgctxt "wipe_retraction_extra_prime_amount description" msgid "" "Some material can ooze away during a wipe travel moves, which can be " "compensated for here." -msgstr "Qui è possibile compensare l’eventuale trafilamento di materiale che può verificarsi nel corso della pulitura durante il movimento." +msgstr "Du matériau peut suinter pendant un déplacement d'essuyage, ce qui peut être compensé ici." #: /fdmprinter.def.json msgctxt "wipe_retraction_speed label" msgid "Wipe Retraction Speed" -msgstr "Velocità di retrazione per pulitura" +msgstr "Vitesse de rétraction d'essuyage" #: /fdmprinter.def.json msgctxt "wipe_retraction_speed description" msgid "" "The speed at which the filament is retracted and primed during a wipe " "retraction move." -msgstr "Indica la velocità alla quale il filamento viene retratto e preparato durante un movimento di retrazione per pulitura." +msgstr "La vitesse à laquelle le filament est rétracté et préparé pendant un déplacement de rétraction d'essuyage." #: /fdmprinter.def.json msgctxt "wipe_retraction_retract_speed label" msgid "Wipe Retraction Retract Speed" -msgstr "Velocità di retrazione per pulitura" +msgstr "Vitesse de rétraction d'essuyage" #: /fdmprinter.def.json msgctxt "wipe_retraction_retract_speed description" msgid "" "The speed at which the filament is retracted during a wipe retraction move." -msgstr "Indica la velocità alla quale il filamento viene retratto durante un movimento di retrazione per pulitura." +msgstr "La vitesse à laquelle le filament est rétracté pendant un déplacement de rétraction d'essuyage." #: /fdmprinter.def.json msgctxt "wipe_retraction_prime_speed label" msgid "Wipe Retraction Prime Speed" -msgstr "Velocità di pulitura retrazione" +msgstr "Vitesse primaire de rétraction d'essuyage" #: /fdmprinter.def.json msgctxt "wipe_retraction_prime_speed description" msgid "" "The speed at which the filament is primed during a wipe retraction move." -msgstr "Indica la velocità alla quale il filamento viene preparato durante un movimento di retrazione per pulitura." +msgstr "La vitesse à laquelle le filament est préparé pendant un déplacement de rétraction d'essuyage." #: /fdmprinter.def.json msgctxt "wipe_pause label" msgid "Wipe Pause" -msgstr "Pausa pulitura" +msgstr "Pause d'essuyage" #: /fdmprinter.def.json msgctxt "wipe_pause description" msgid "Pause after the unretract." -msgstr "Pausa dopo ripristino." +msgstr "Pause après l'irrétraction." #: /fdmprinter.def.json msgctxt "wipe_hop_enable label" msgid "Wipe Z Hop" -msgstr "Pulitura Z Hop" +msgstr "Décalage en Z de l'essuyage" #: /fdmprinter.def.json msgctxt "wipe_hop_enable description" @@ -7953,100 +7943,100 @@ msgid "" "When wiping, the build plate is lowered to create clearance between the " "nozzle and the print. It prevents the nozzle from hitting the print during " "travel moves, reducing the chance to knock the print from the build plate." -msgstr "Durante la pulizia, il piano di stampa viene abbassato per creare uno spazio tra l'ugello e la stampa. Questo impedisce l'urto dell'ugello sulla stampa" -" durante gli spostamenti, riducendo la possibilità di far cadere la stampa dal piano." +msgstr "Lors de l'essuyage, le plateau de fabrication est abaissé pour créer un espace entre la buse et l'impression. Cela évite que la buse ne touche l'impression" +" pendant les déplacements, réduisant ainsi le risque de heurter l'impression à partir du plateau de fabrication." #: /fdmprinter.def.json msgctxt "wipe_hop_amount label" msgid "Wipe Z Hop Height" -msgstr "Altezza Z Hop pulitura" +msgstr "Hauteur du décalage en Z d'essuyage" #: /fdmprinter.def.json msgctxt "wipe_hop_amount description" msgid "The height difference when performing a Z Hop." -msgstr "La differenza di altezza durante l’esecuzione di uno Z Hop." +msgstr "La différence de hauteur lors de la réalisation d'un décalage en Z." #: /fdmprinter.def.json msgctxt "wipe_hop_speed label" msgid "Wipe Hop Speed" -msgstr "Velocità di sollevamento (Hop) per pulitura" +msgstr "Vitesse du décalage d'essuyage" #: /fdmprinter.def.json msgctxt "wipe_hop_speed description" msgid "Speed to move the z-axis during the hop." -msgstr "Velocità di spostamento dell'asse z durante il sollevamento (Hop)." +msgstr "Vitesse de déplacement de l'axe Z pendant le décalage." #: /fdmprinter.def.json msgctxt "wipe_brush_pos_x label" msgid "Wipe Brush X Position" -msgstr "Posizione X spazzolino di pulitura" +msgstr "Position X de la brosse d'essuyage" #: /fdmprinter.def.json msgctxt "wipe_brush_pos_x description" msgid "X location where wipe script will start." -msgstr "Posizione X in cui verrà avviato lo script di pulitura." +msgstr "Emplacement X où le script d'essuyage démarrera." #: /fdmprinter.def.json msgctxt "wipe_repeat_count label" msgid "Wipe Repeat Count" -msgstr "Conteggio ripetizioni operazioni di pulitura" +msgstr "Nombre de répétitions d'essuyage" #: /fdmprinter.def.json msgctxt "wipe_repeat_count description" msgid "Number of times to move the nozzle across the brush." -msgstr "Numero di passaggi dell'ugello attraverso lo spazzolino." +msgstr "Le nombre de déplacements de la buse à travers la brosse." #: /fdmprinter.def.json msgctxt "wipe_move_distance label" msgid "Wipe Move Distance" -msgstr "Distanza spostamento longitudinale di pulitura" +msgstr "Distance de déplacement d'essuyage" #: /fdmprinter.def.json msgctxt "wipe_move_distance description" msgid "The distance to move the head back and forth across the brush." -msgstr "La distanza dello spostamento longitudinale eseguito dalla testina attraverso lo spazzolino." +msgstr "La distance de déplacement de la tête d'avant en arrière à travers la brosse." #: /fdmprinter.def.json msgctxt "small_hole_max_size label" msgid "Small Hole Max Size" -msgstr "Dimensione massima foro piccolo" +msgstr "Taille maximale des petits trous" #: /fdmprinter.def.json msgctxt "small_hole_max_size description" msgid "" "Holes and part outlines with a diameter smaller than this will be printed " "using Small Feature Speed." -msgstr "I fori e i profili delle parti con un diametro inferiore a quello indicato verranno stampati utilizzando Velocità Dettagli di piccole dimensioni." +msgstr "Les trous et les contours des pièces dont le diamètre est inférieur à celui-ci seront imprimés en utilisant l'option Vitesse de petite structure." #: /fdmprinter.def.json msgctxt "small_feature_max_length label" msgid "Small Feature Max Length" -msgstr "Lunghezza massima dettagli di piccole dimensioni" +msgstr "Longueur max de petite structure" #: /fdmprinter.def.json msgctxt "small_feature_max_length description" msgid "" "Feature outlines that are shorter than this length will be printed using " "Small Feature Speed." -msgstr "Profili di dettagli inferiori a questa lunghezza saranno stampati utilizzando Velocità Dettagli di piccole dimensioni." +msgstr "Les contours des structures dont le diamètre est inférieur à cette longueur seront imprimés en utilisant l'option Vitesse de petite structure." #: /fdmprinter.def.json msgctxt "small_feature_speed_factor label" msgid "Small Feature Speed" -msgstr "Velocità dettagli piccole dimensioni" +msgstr "Vitesse de petite structure" #: /fdmprinter.def.json msgctxt "small_feature_speed_factor description" msgid "" "Small features will be printed at this percentage of their normal print " "speed. Slower printing can help with adhesion and accuracy." -msgstr "I dettagli di piccole dimensioni verranno stampati a questa percentuale della velocità di stampa normale. Una stampa più lenta può aiutare in termini di" -" adesione e precisione." +msgstr "Les petites structures seront imprimées à ce pourcentage de la vitesse d'impression normale. Une impression plus lente peut aider à l'adhésion et à la" +" précision." #: /fdmprinter.def.json msgctxt "small_feature_speed_factor_0 label" msgid "Small Feature Initial Layer Speed" -msgstr "Velocità layer iniziale per dettagli di piccole dimensioni" +msgstr "Vitesse de la couche initiale de petite structure" #: /fdmprinter.def.json msgctxt "small_feature_speed_factor_0 description" @@ -8054,106 +8044,107 @@ msgid "" "Small features on the first layer will be printed at this percentage of " "their normal print speed. Slower printing can help with adhesion and " "accuracy." -msgstr "I dettagli di piccole dimensioni sul primo layer saranno stampati a questa percentuale della velocità di stampa normale. Una stampa più lenta può aiutare" -" in termini di adesione e precisione." +msgstr "Les petites structures sur la première couche seront imprimées à ce pourcentage de la vitesse d'impression normale. Une impression plus lente peut aider" +" à l'adhésion et à la précision." #: /fdmprinter.def.json msgctxt "material_alternate_walls label" msgid "Alternate Wall Directions" -msgstr "Alterna direzioni parete" +msgstr "Alterner les directions des parois" #: /fdmprinter.def.json msgctxt "material_alternate_walls description" msgid "" "Alternate wall directions every other layer and inset. Useful for materials " "that can build up stress, like for metal printing." -msgstr "Consente di alternare direzioni parete ogni altro strato o inserto. Utile per materiali che possono accumulare stress, come per la stampa su metallo." +msgstr "Alternez les directions des parois, une couche et un insert sur deux. Utile pour les matériaux qui peuvent accumuler des contraintes, comme pour l'impression" +" de métal." #: /fdmprinter.def.json msgctxt "raft_remove_inside_corners label" msgid "Remove Raft Inside Corners" -msgstr "Rimuovi angoli interni raft" +msgstr "Supprimer les coins intérieurs du radeau" #: /fdmprinter.def.json msgctxt "raft_remove_inside_corners description" msgid "Remove inside corners from the raft, causing the raft to become convex." -msgstr "Consente di rimuovere angoli interni dal raft, facendolo diventare convesso." +msgstr "Supprimez les coins intérieurs du radeau afin de le rendre convexe." #: /fdmprinter.def.json msgctxt "raft_base_wall_count label" msgid "Raft Base Wall Count" -msgstr "Conteggio parete base del raft" +msgstr "Nombre de parois à la base du radeau" #: /fdmprinter.def.json msgctxt "raft_base_wall_count description" msgid "" "The number of contours to print around the linear pattern in the base layer " "of the raft." -msgstr "Il numero di contorni da stampare intorno alla configurazione lineare nello strato di base del raft." +msgstr "Le nombre de contours à imprimer autour du motif linéaire dans la couche de base du radeau." #: /fdmprinter.def.json msgctxt "command_line_settings label" msgid "Command Line Settings" -msgstr "Impostazioni riga di comando" +msgstr "Paramètres de ligne de commande" #: /fdmprinter.def.json msgctxt "command_line_settings description" msgid "" "Settings which are only used if CuraEngine isn't called from the Cura " "frontend." -msgstr "Impostazioni utilizzate solo se CuraEngine non è chiamato dalla parte anteriore di Cura." +msgstr "Paramètres qui sont utilisés uniquement si CuraEngine n'est pas invoqué depuis l'interface Cura." #: /fdmprinter.def.json msgctxt "center_object label" msgid "Center Object" -msgstr "Centra oggetto" +msgstr "Centrer l'objet" #: /fdmprinter.def.json msgctxt "center_object description" msgid "" "Whether to center the object on the middle of the build platform (0,0), " "instead of using the coordinate system in which the object was saved." -msgstr "Per centrare l’oggetto al centro del piano di stampa (0,0) anziché utilizzare il sistema di coordinate in cui l’oggetto è stato salvato." +msgstr "S'il faut centrer l'objet au milieu du plateau d'impression (0,0) au lieu d'utiliser le système de coordonnées dans lequel l'objet a été enregistré." #: /fdmprinter.def.json msgctxt "mesh_position_x label" msgid "Mesh Position X" -msgstr "Posizione maglia X" +msgstr "Position X de la maille" #: /fdmprinter.def.json msgctxt "mesh_position_x description" msgid "Offset applied to the object in the x direction." -msgstr "Offset applicato all’oggetto per la direzione X." +msgstr "Offset appliqué à l'objet dans la direction X." #: /fdmprinter.def.json msgctxt "mesh_position_y label" msgid "Mesh Position Y" -msgstr "Posizione maglia Y" +msgstr "Position Y de la maille" #: /fdmprinter.def.json msgctxt "mesh_position_y description" msgid "Offset applied to the object in the y direction." -msgstr "Offset applicato all’oggetto per la direzione Y." +msgstr "Offset appliqué à l'objet dans la direction Y." #: /fdmprinter.def.json msgctxt "mesh_position_z label" msgid "Mesh Position Z" -msgstr "Posizione maglia Z" +msgstr "Position Z de la maille" #: /fdmprinter.def.json msgctxt "mesh_position_z description" msgid "" "Offset applied to the object in the z direction. With this you can perform " "what was used to be called 'Object Sink'." -msgstr "Offset applicato all’oggetto in direzione z. Con questo potrai effettuare quello che veniva denominato 'Object Sink’." +msgstr "Décalage appliqué à l'objet dans le sens z. Cela vous permet d'exécuter ce que l'on appelait « Affaissement de l'objet »." #: /fdmprinter.def.json msgctxt "mesh_rotation_matrix label" msgid "Mesh Rotation Matrix" -msgstr "Matrice rotazione maglia" +msgstr "Matrice de rotation de la maille" #: /fdmprinter.def.json msgctxt "mesh_rotation_matrix description" msgid "" "Transformation matrix to be applied to the model when loading it from file." -msgstr "Matrice di rotazione da applicare al modello quando caricato dal file." +msgstr "Matrice de transformation à appliquer au modèle lors de son chargement depuis le fichier." diff --git a/resources/i18n/ja_JP/cura.po b/resources/i18n/ja_JP/cura.po index 273aa892ba..6bea632653 100644 --- a/resources/i18n/ja_JP/cura.po +++ b/resources/i18n/ja_JP/cura.po @@ -1,10 +1,12 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. # +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-27 14:50+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -993,17 +995,17 @@ msgstr "詳しく見る" msgctxt "@info:status" msgid "" "You will receive a confirmation via email when the print job is approved" -msgstr "You will receive a confirmation via email when the print job is approved" +msgstr "プリントジョブが承認されると、確認の電子メールが届きます" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:19 msgctxt "@info:title" msgid "The print job was successfully submitted" -msgstr "The print job was successfully submitted" +msgstr "プリントジョブは正常に送信されました" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:22 msgctxt "@action" msgid "Manage print jobs" -msgstr "Manage print jobs" +msgstr "プリントジョブの管理" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:15 msgctxt "@info:status" @@ -1318,7 +1320,7 @@ msgstr "Ultimakerフォーマットパッケージ" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py:19 msgctxt "@text Placeholder for the username if it has been deleted" msgid "deleted user" -msgstr "deleted user" +msgstr "削除されたユーザー" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeProfileReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:14 @@ -2480,12 +2482,12 @@ msgstr "次の空き" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:117 msgctxt "@info" msgid "Monitor your printers from everywhere using Ultimaker Digital Factory" -msgstr "Monitor your printers from everywhere using Ultimaker Digital Factory" +msgstr "Ultimaker Digital Factoryを使用して、あらゆる場所から自分のプリンターをモニタリング" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:129 msgctxt "@button" msgid "View printers in Digital Factory" -msgstr "View printers in Digital Factory" +msgstr "Digital Factoryでプリンターを表示する" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:44 msgctxt "@title:window" @@ -3324,7 +3326,7 @@ msgctxt "@label" msgid "" "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." -msgstr "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." +msgstr "このプロジェクトで使用する材料は、現在Curaにインストールされていません。
    材料プロファイルをインストールし、再度プロジェクトを開いてください。" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:515 msgctxt "@action:button" @@ -4143,12 +4145,12 @@ msgstr "自動的にスライスする" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:340 msgctxt "@info:tooltip" msgid "Show an icon and notifications in the system notification area." -msgstr "Show an icon and notifications in the system notification area." +msgstr "システムの通知領域に、アイコンと通知を表示します。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:348 msgctxt "@option:check" msgid "Add icon to system tray *" -msgstr "Add icon to system tray *" +msgstr "システムトレイにアイコンを追加する *" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:357 msgctxt "@label" @@ -5472,17 +5474,17 @@ msgstr "視野のセッティングを管理する..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:17 msgctxt "@title:window" msgid "Select Printer" -msgstr "Select Printer" +msgstr "プリンターを選択する" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:54 msgctxt "@title:label" msgid "Compatible Printers" -msgstr "Compatible Printers" +msgstr "互換性のあるプリンター" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:94 msgctxt "@description" msgid "No compatible printers, that are currently online, where found." -msgstr "No compatible printers, that are currently online, where found." +msgstr "現在オンライン状態で互換性があるプリンターは見つかりませんでした。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:16 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:635 @@ -5759,7 +5761,7 @@ msgstr "サイエンスコンピューティングを操作するためのライ #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:171 msgctxt "@Label Description for application dependency" msgid "Python Error tracking library" -msgstr "Python Error tracking library" +msgstr "Pythonエラー追跡ライブラリー" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:172 msgctxt "@label Description for application dependency" @@ -5887,12 +5889,12 @@ msgstr "オーバーハングがあるモデルにサポートを生成します #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:54 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is active and you overwrote some settings." -msgstr "%1 custom profile is active and you overwrote some settings." +msgstr "%1カスタムプロファイルが稼働し、一部の設定を上書きしました。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:68 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is overriding some settings." -msgstr "%1 custom profile is overriding some settings." +msgstr "%1カスタムプロファイルが、一部の設定を上書き中です。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:79 msgctxt "@info" @@ -6271,17 +6273,17 @@ msgstr "プリンター管理" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:34 msgctxt "@label" msgid "Hide all connected printers" -msgstr "Hide all connected printers" +msgstr "接続されているすべてのプリンターを隠す" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:47 msgctxt "@label" msgid "Show all connected printers" -msgstr "Show all connected printers" +msgstr "接続されているすべてのプリンターを表示する" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Other printers" -msgstr "Other printers" +msgstr "その他のプリンター" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:54 msgctxt "@label:PrintjobStatus" diff --git a/resources/i18n/ja_JP/fdmextruder.def.json.po b/resources/i18n/ja_JP/fdmextruder.def.json.po index 969ead944e..cfc88ea1c7 100644 --- a/resources/i18n/ja_JP/fdmextruder.def.json.po +++ b/resources/i18n/ja_JP/fdmextruder.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" diff --git a/resources/i18n/ja_JP/fdmprinter.def.json.po b/resources/i18n/ja_JP/fdmprinter.def.json.po index 42df76f88b..33ef5be9ab 100644 --- a/resources/i18n/ja_JP/fdmprinter.def.json.po +++ b/resources/i18n/ja_JP/fdmprinter.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -1187,9 +1184,7 @@ msgid "" "propagate to the outside. However printing them later allows them to stack " "better when overhangs are printed. When there is an uneven amount of total " "innner walls, the 'center last line' is always printed last." -msgstr "Determines the order in which walls are printed. Printing outer walls earlier helps with dimensional accuracy, as faults from inner walls cannot propagate" -" to the outside. However printing them later allows them to stack better when overhangs are printed. When there is an uneven amount of total innner walls," -" the 'center last line' is always printed last." +msgstr "ウォールをプリントする順序を決定します。アウターウォールを先にプリントすると、インナーウォールの不具合が外側に影響しないため、寸法精度が向上します。一方、アウターウォールを後からプリントすると、オーバーハングをプリントする際の積み重ねがより良くなります。インナーウォールの量が全体で不均一な場合、「中央の最後のライン」は常に最後に印刷されます。" #: /fdmprinter.def.json msgctxt "inset_direction option inside_out" @@ -1260,9 +1255,8 @@ msgid "" "A higher Minimum Odd Wall Line Width leads to a higher maximum even wall " "line width. The maximum odd wall line width is calculated as 2 * Minimum " "Even Wall Line Width." -msgstr "The minimum line width for middle line gap filler polyline walls. This setting determines at which model thickness we switch from printing two wall lines," -" to printing two outer walls and a single central wall in the middle. A higher Minimum Odd Wall Line Width leads to a higher maximum even wall line width." -" The maximum odd wall line width is calculated as 2 * Minimum Even Wall Line Width." +msgstr "中央ラインギャップフィラーのポリラインウォールにおける最小ライン幅。この設定は、2本のウォールラインのプリントから、2個のアウターウォールと中央の1個の中心ウォールのプリントに切り替わるモデルの厚さを決定します。最小奇数ウォールライン幅を大きくすると、最大偶数ウォールライン幅も大きくなります。最大奇数ウォールライン幅は、2" +" * 最小偶数ウォールライン幅(2倍)として計算されます。" #: /fdmprinter.def.json msgctxt "fill_outline_gaps label" @@ -3024,34 +3018,34 @@ msgstr "初期レイヤーの流量補修:初期レイヤーの マテリアル #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 label" msgid "Initial Layer Inner Wall Flow" -msgstr "Initial Layer Inner Wall Flow" +msgstr "初期レイヤーインナーウォールのフロー" #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 description" msgid "" "Flow compensation on wall lines for all wall lines except the outermost one, " "but only for the first layer" -msgstr "Flow compensation on wall lines for all wall lines except the outermost one, but only for the first layer" +msgstr "最も外側のものを除く、すべてのウォールラインに関するフロー補正です(ただし、初期レイヤーのみ)。" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 label" msgid "Initial Layer Outer Wall Flow" -msgstr "Initial Layer Outer Wall Flow" +msgstr "初期レイヤーアウターウォールのフロー" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 description" msgid "Flow compensation on the outermost wall line of the first layer." -msgstr "Flow compensation on the outermost wall line of the first layer." +msgstr "初期レイヤーでの、最も外側のウォールラインにおけるフロー補正です。" #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 label" msgid "Initial Layer Bottom Flow" -msgstr "Initial Layer Bottom Flow" +msgstr "初期レイヤーのボトムでのフロー" #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 description" msgid "Flow compensation on bottom lines of the first layer" -msgstr "Flow compensation on bottom lines of the first layer" +msgstr "第1レイヤーのボトムラインでのフロー補正" #: /fdmprinter.def.json msgctxt "material_standby_temperature label" @@ -4404,14 +4398,14 @@ msgstr "ツリーサポートの最も細い枝の直径。枝は太いほど丈 #: /fdmprinter.def.json msgctxt "support_tree_max_diameter label" msgid "Tree Support Trunk Diameter" -msgstr "Tree Support Trunk Diameter" +msgstr "ツリーをサポートする本体の直径" #: /fdmprinter.def.json msgctxt "support_tree_max_diameter description" msgid "" "The diameter of the widest branches of tree support. A thicker trunk is more " "sturdy; a thinner trunk takes up less space on the build plate." -msgstr "The diameter of the widest branches of tree support. A thicker trunk is more sturdy; a thinner trunk takes up less space on the build plate." +msgstr "ツリーサポートにおける最も太い枝の直径です。本体は太いほど強固になり、また、細いほどビルドプレート上で占有するスペースが少なくなります。" #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter_angle label" diff --git a/resources/i18n/ko_KR/cura.po b/resources/i18n/ko_KR/cura.po index a1bd467900..96dff02c38 100644 --- a/resources/i18n/ko_KR/cura.po +++ b/resources/i18n/ko_KR/cura.po @@ -1,10 +1,12 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. # +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-27 14:50+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" diff --git a/resources/i18n/ko_KR/fdmextruder.def.json.po b/resources/i18n/ko_KR/fdmextruder.def.json.po index 152fd43f7f..ca475bd6e0 100644 --- a/resources/i18n/ko_KR/fdmextruder.def.json.po +++ b/resources/i18n/ko_KR/fdmextruder.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" diff --git a/resources/i18n/ko_KR/fdmprinter.def.json.po b/resources/i18n/ko_KR/fdmprinter.def.json.po index 85e3962817..23eff2ff53 100644 --- a/resources/i18n/ko_KR/fdmprinter.def.json.po +++ b/resources/i18n/ko_KR/fdmprinter.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" diff --git a/resources/i18n/nl_NL/cura.po b/resources/i18n/nl_NL/cura.po index c6c1eca7e8..c015cf77d5 100644 --- a/resources/i18n/nl_NL/cura.po +++ b/resources/i18n/nl_NL/cura.po @@ -1,10 +1,12 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. # +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-27 14:50+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -999,17 +1001,17 @@ msgstr "Meer informatie" msgctxt "@info:status" msgid "" "You will receive a confirmation via email when the print job is approved" -msgstr "You will receive a confirmation via email when the print job is approved" +msgstr "U ontvangt een bevestiging via e-mail wanneer de printtaak is goedgekeurd" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:19 msgctxt "@info:title" msgid "The print job was successfully submitted" -msgstr "The print job was successfully submitted" +msgstr "De printtaak is succesvol ingediend" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:22 msgctxt "@action" msgid "Manage print jobs" -msgstr "Manage print jobs" +msgstr "Printtaken beheren" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:15 msgctxt "@info:status" @@ -1327,7 +1329,7 @@ msgstr "Ultimaker Format Package" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py:19 msgctxt "@text Placeholder for the username if it has been deleted" msgid "deleted user" -msgstr "deleted user" +msgstr "verwijderde gebruiker" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeProfileReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:14 @@ -2501,12 +2503,12 @@ msgstr "Eerst beschikbaar" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:117 msgctxt "@info" msgid "Monitor your printers from everywhere using Ultimaker Digital Factory" -msgstr "Monitor your printers from everywhere using Ultimaker Digital Factory" +msgstr "Monitor uw printers overal met Ultimaker Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:129 msgctxt "@button" msgid "View printers in Digital Factory" -msgstr "View printers in Digital Factory" +msgstr "Printers weergeven in Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:44 msgctxt "@title:window" @@ -3353,7 +3355,7 @@ msgctxt "@label" msgid "" "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." -msgstr "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." +msgstr "Het materiaal dat in dit project wordt gebruikt, is momenteel niet geïnstalleerd in Cura.
    Installeer het materiaalprofiel en open het project opnieuw." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:515 msgctxt "@action:button" @@ -4175,12 +4177,12 @@ msgstr "Automatisch slicen" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:340 msgctxt "@info:tooltip" msgid "Show an icon and notifications in the system notification area." -msgstr "Show an icon and notifications in the system notification area." +msgstr "Toon een pictogram en meldingen in het systeemvak voor meldingen." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:348 msgctxt "@option:check" msgid "Add icon to system tray *" -msgstr "Add icon to system tray *" +msgstr "Pictogram toevoegen aan systeemvak *" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:357 msgctxt "@label" @@ -5513,17 +5515,17 @@ msgstr "Instelling voor zichtbaarheid beheren..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:17 msgctxt "@title:window" msgid "Select Printer" -msgstr "Select Printer" +msgstr "Printer selecteren" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:54 msgctxt "@title:label" msgid "Compatible Printers" -msgstr "Compatible Printers" +msgstr "Compatibele printers" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:94 msgctxt "@description" msgid "No compatible printers, that are currently online, where found." -msgstr "No compatible printers, that are currently online, where found." +msgstr "Geen compatibele printers, die momenteel online zijn, indien gevonden." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:16 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:635 @@ -5802,7 +5804,7 @@ msgstr "Ondersteuningsbibliotheek voor wetenschappelijke berekeningen" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:171 msgctxt "@Label Description for application dependency" msgid "Python Error tracking library" -msgstr "Python Error tracking library" +msgstr "Python fouttraceringsbibliotheek" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:172 msgctxt "@label Description for application dependency" @@ -5930,12 +5932,12 @@ msgstr "Genereer structuren om delen van het model met overhang te ondersteunen. #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:54 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is active and you overwrote some settings." -msgstr "%1 custom profile is active and you overwrote some settings." +msgstr "%1 aangepast profiel is actief en u hebt bepaalde instellingen overschreven." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:68 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is overriding some settings." -msgstr "%1 custom profile is overriding some settings." +msgstr "%1 aangepast profiel overschrijft sommige instellingen." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:79 msgctxt "@info" @@ -6321,17 +6323,17 @@ msgstr "Printers beheren" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:34 msgctxt "@label" msgid "Hide all connected printers" -msgstr "Hide all connected printers" +msgstr "Alle aangesloten printers verbergen" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:47 msgctxt "@label" msgid "Show all connected printers" -msgstr "Show all connected printers" +msgstr "Alle aangesloten printers tonen" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Other printers" -msgstr "Other printers" +msgstr "Andere printers" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:54 msgctxt "@label:PrintjobStatus" diff --git a/resources/i18n/nl_NL/fdmextruder.def.json.po b/resources/i18n/nl_NL/fdmextruder.def.json.po index 2f03da518c..0c4575ab6e 100644 --- a/resources/i18n/nl_NL/fdmextruder.def.json.po +++ b/resources/i18n/nl_NL/fdmextruder.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" diff --git a/resources/i18n/nl_NL/fdmprinter.def.json.po b/resources/i18n/nl_NL/fdmprinter.def.json.po index 3d19b8e53d..dae3070043 100644 --- a/resources/i18n/nl_NL/fdmprinter.def.json.po +++ b/resources/i18n/nl_NL/fdmprinter.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -1206,9 +1203,9 @@ msgid "" "propagate to the outside. However printing them later allows them to stack " "better when overhangs are printed. When there is an uneven amount of total " "innner walls, the 'center last line' is always printed last." -msgstr "Determines the order in which walls are printed. Printing outer walls earlier helps with dimensional accuracy, as faults from inner walls cannot propagate" -" to the outside. However printing them later allows them to stack better when overhangs are printed. When there is an uneven amount of total innner walls," -" the 'center last line' is always printed last." +msgstr "Bepaalt de volgorde waarin de wanden worden geprint. Wanneer u de buitenwanden het eerst print, bevordert u de nauwkeurigheid van de afmetingen, omdat" +" fouten in de binnenwanden niet worden overgedragen op de buitenzijde. Door ze later te printen kunt u echter beter stapelen wanneer de overhangs worden" +" geprint. Bij een oneven aantal binnenwanden wordt de 'middelste laatste regel' altijd als laatste afgedrukt." #: /fdmprinter.def.json msgctxt "inset_direction option inside_out" @@ -1284,9 +1281,10 @@ msgid "" "A higher Minimum Odd Wall Line Width leads to a higher maximum even wall " "line width. The maximum odd wall line width is calculated as 2 * Minimum " "Even Wall Line Width." -msgstr "The minimum line width for middle line gap filler polyline walls. This setting determines at which model thickness we switch from printing two wall lines," -" to printing two outer walls and a single central wall in the middle. A higher Minimum Odd Wall Line Width leads to a higher maximum even wall line width." -" The maximum odd wall line width is calculated as 2 * Minimum Even Wall Line Width." +msgstr "De minimum lijnbreedte voor opvuller voor ruimte middelste lijn bij wanden met meerdere lijnen. Deze instelling bepaalt bij welke modeldikte we overschakelen" +" van het printen van twee wandlijnen naar het printen van twee buitenwanden en één centrale wand in het midden. Een hogere Minimum breedte ongelijkmatige" +" wandlijn leidt naar een hogere maximale lijnbreedte bij een gelijkmatige wand. De maximum breedte ongelijkmatige wandlijn wordt berekend als 2 * de Minimum" +" breedte gelijkmatige wandlijn." #: /fdmprinter.def.json msgctxt "fill_outline_gaps label" @@ -3112,34 +3110,34 @@ msgstr "Doorvoercompensatie voor de eerste laag: de hoeveelheid materiaal die vo #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 label" msgid "Initial Layer Inner Wall Flow" -msgstr "Initial Layer Inner Wall Flow" +msgstr "Initiële laag binnenwandstroom" #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 description" msgid "" "Flow compensation on wall lines for all wall lines except the outermost one, " "but only for the first layer" -msgstr "Flow compensation on wall lines for all wall lines except the outermost one, but only for the first layer" +msgstr "Stroomcompensatie op wandlijnen voor alle wandlijnen behalve de buitenste, maar alleen voor de eerste laag" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 label" msgid "Initial Layer Outer Wall Flow" -msgstr "Initial Layer Outer Wall Flow" +msgstr "Initiële laag buitenwandstroom" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 description" msgid "Flow compensation on the outermost wall line of the first layer." -msgstr "Flow compensation on the outermost wall line of the first layer." +msgstr "Doorvoercompensatie op de buitenmuurlijn van de eerste laag." #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 label" msgid "Initial Layer Bottom Flow" -msgstr "Initial Layer Bottom Flow" +msgstr "Initiële laag bodemstroom" #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 description" msgid "Flow compensation on bottom lines of the first layer" -msgstr "Flow compensation on bottom lines of the first layer" +msgstr "Stroomcompensatie op de onderste lijnen van de eerste laag" #: /fdmprinter.def.json msgctxt "material_standby_temperature label" @@ -3445,14 +3443,14 @@ msgstr "Hiermee stelt u de printkopacceleratie in. Door het verhogen van de acce #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled label" msgid "Enable Travel Acceleration" -msgstr "Enable Travel Acceleration" +msgstr "Bewegingsacceleratie inschakelen" #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled description" msgid "" "Use a separate acceleration rate for travel moves. If disabled, travel moves " "will use the acceleration value of the printed line at their destination." -msgstr "Use a separate acceleration rate for travel moves. If disabled, travel moves will use the acceleration value of the printed line at their destination." +msgstr "Gebruik een andere acceleratiesnelheid voor bewegingen. Indien uitgeschakeld, gebruikt de beweging de acceleratiewaarde van de geprinte lijn op de bestemming." #: /fdmprinter.def.json msgctxt "acceleration_print label" @@ -3662,14 +3660,14 @@ msgstr "Hiermee stelt u de schok van de printkop in wanneer de snelheid in de X- #: /fdmprinter.def.json msgctxt "jerk_travel_enabled label" msgid "Enable Travel Jerk" -msgstr "Enable Travel Jerk" +msgstr "Bewegingsschok inschakelen" #: /fdmprinter.def.json msgctxt "jerk_travel_enabled description" msgid "" "Use a separate jerk rate for travel moves. If disabled, travel moves will " "use the jerk value of the printed line at their destination." -msgstr "Use a separate jerk rate for travel moves. If disabled, travel moves will use the jerk value of the printed line at their destination." +msgstr "Gebruik een andere bewegingsschok voor bewegingen. Indien uitgeschakeld, gebruikt de beweging de bewegingsschokwaarde van de geprinte lijn op de bestemming." #: /fdmprinter.def.json msgctxt "jerk_print label" @@ -4531,14 +4529,14 @@ msgstr "Hiermee stelt u de diameter in van de dunste takken van de boomsupportst #: /fdmprinter.def.json msgctxt "support_tree_max_diameter label" msgid "Tree Support Trunk Diameter" -msgstr "Tree Support Trunk Diameter" +msgstr "Takdiameter van boomsupportstructuur" #: /fdmprinter.def.json msgctxt "support_tree_max_diameter description" msgid "" "The diameter of the widest branches of tree support. A thicker trunk is more " "sturdy; a thinner trunk takes up less space on the build plate." -msgstr "The diameter of the widest branches of tree support. A thicker trunk is more sturdy; a thinner trunk takes up less space on the build plate." +msgstr "De diameter van de breedste takken boomondersteuning. Een dikkere kofferbak is steviger; een dunnere kofferbak neemt minder ruimte in op het platform." #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter_angle label" diff --git a/resources/i18n/pt_PT/cura.po b/resources/i18n/pt_PT/cura.po index d16be356d4..c44a6a62ba 100644 --- a/resources/i18n/pt_PT/cura.po +++ b/resources/i18n/pt_PT/cura.po @@ -1,10 +1,12 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. # +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-27 14:50+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -1003,17 +1005,17 @@ msgstr "Saber mais" msgctxt "@info:status" msgid "" "You will receive a confirmation via email when the print job is approved" -msgstr "You will receive a confirmation via email when the print job is approved" +msgstr "Receberá uma confirmação por e-mail quando o trabalho de impressão for aprovado" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:19 msgctxt "@info:title" msgid "The print job was successfully submitted" -msgstr "The print job was successfully submitted" +msgstr "O trabalho de impressão foi enviado com sucesso" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:22 msgctxt "@action" msgid "Manage print jobs" -msgstr "Manage print jobs" +msgstr "Gerir trabalhos de impressão" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:15 msgctxt "@info:status" @@ -1331,7 +1333,7 @@ msgstr "Arquivo Ultimaker Format" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py:19 msgctxt "@text Placeholder for the username if it has been deleted" msgid "deleted user" -msgstr "deleted user" +msgstr "utilizador excluído" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeProfileReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:14 @@ -2506,12 +2508,12 @@ msgstr "Primeira disponível" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:117 msgctxt "@info" msgid "Monitor your printers from everywhere using Ultimaker Digital Factory" -msgstr "Monitor your printers from everywhere using Ultimaker Digital Factory" +msgstr "Monitorize as suas impressoras de qualquer lugar usando a Ultimaker Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:129 msgctxt "@button" msgid "View printers in Digital Factory" -msgstr "View printers in Digital Factory" +msgstr "Visualize as impressoras na fábrica digital" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:44 msgctxt "@title:window" @@ -3358,7 +3360,7 @@ msgctxt "@label" msgid "" "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." -msgstr "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." +msgstr "O material usado neste projeto não está atualmente instalado no Cura.
    Instale o perfil de material e reabra o projeto." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:515 msgctxt "@action:button" @@ -4180,12 +4182,12 @@ msgstr "Seccionar automaticamente" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:340 msgctxt "@info:tooltip" msgid "Show an icon and notifications in the system notification area." -msgstr "Show an icon and notifications in the system notification area." +msgstr "Mostre um ícone e notificações na área de notificação do sistema." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:348 msgctxt "@option:check" msgid "Add icon to system tray *" -msgstr "Add icon to system tray *" +msgstr "Adicione o ícone à bandeja do sistema *" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:357 msgctxt "@label" @@ -5516,7 +5518,7 @@ msgstr "Gerir Visibilidade das Definições..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:17 msgctxt "@title:window" msgid "Select Printer" -msgstr "Select Printer" +msgstr "Selecionar impressora" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:54 msgctxt "@title:label" @@ -5526,7 +5528,7 @@ msgstr "Impressoras compatíveis" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:94 msgctxt "@description" msgid "No compatible printers, that are currently online, where found." -msgstr "No compatible printers, that are currently online, where found." +msgstr "Nenhuma impressora compatível, que esteja online no momento, foi encontrada." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:16 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:635 @@ -5933,12 +5935,12 @@ msgstr "Criar estruturas para suportar partes do modelo, suspensas ou com saliê #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:54 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is active and you overwrote some settings." -msgstr "%1 custom profile is active and you overwrote some settings." +msgstr "%1 perfil personalizado está ativo e sobrescreveu algumas configurações." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:68 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is overriding some settings." -msgstr "%1 custom profile is overriding some settings." +msgstr "%1 perfil personalizado está a sobrepor-se a algumas configurações." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:79 msgctxt "@info" @@ -6324,17 +6326,17 @@ msgstr "Gerir impressoras" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:34 msgctxt "@label" msgid "Hide all connected printers" -msgstr "Hide all connected printers" +msgstr "Ocultar todas as impressoras conectadas" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:47 msgctxt "@label" msgid "Show all connected printers" -msgstr "Show all connected printers" +msgstr "Mostrar todas as impressoras conectadas" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Other printers" -msgstr "Other printers" +msgstr "Outras impressoras" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:54 msgctxt "@label:PrintjobStatus" diff --git a/resources/i18n/pt_PT/fdmextruder.def.json.po b/resources/i18n/pt_PT/fdmextruder.def.json.po index 355d4b4fa3..571ea566bd 100644 --- a/resources/i18n/pt_PT/fdmextruder.def.json.po +++ b/resources/i18n/pt_PT/fdmextruder.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" diff --git a/resources/i18n/pt_PT/fdmprinter.def.json.po b/resources/i18n/pt_PT/fdmprinter.def.json.po index fa0c00ea10..55fd3cddc9 100644 --- a/resources/i18n/pt_PT/fdmprinter.def.json.po +++ b/resources/i18n/pt_PT/fdmprinter.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -1210,9 +1207,9 @@ msgid "" "propagate to the outside. However printing them later allows them to stack " "better when overhangs are printed. When there is an uneven amount of total " "innner walls, the 'center last line' is always printed last." -msgstr "Determines the order in which walls are printed. Printing outer walls earlier helps with dimensional accuracy, as faults from inner walls cannot propagate" -" to the outside. However printing them later allows them to stack better when overhangs are printed. When there is an uneven amount of total innner walls," -" the 'center last line' is always printed last." +msgstr "Determina a ordem pela qual as paredes são impressas. Imprimir paredes externas antecipadamente ajuda em termos de precisão dimensional, uma vez que as" +" falhas de paredes internas não se podem propagar para o exterior. No entanto, imprimi-las mais tarde permite empilhá-las melhor quando são impressas saliências." +" Quando há uma quantidade desigual de paredes internas totais, a \"última linha central\" é sempre impressa em último lugar." #: /fdmprinter.def.json msgctxt "inset_direction option inside_out" @@ -1289,9 +1286,10 @@ msgid "" "A higher Minimum Odd Wall Line Width leads to a higher maximum even wall " "line width. The maximum odd wall line width is calculated as 2 * Minimum " "Even Wall Line Width." -msgstr "The minimum line width for middle line gap filler polyline walls. This setting determines at which model thickness we switch from printing two wall lines," -" to printing two outer walls and a single central wall in the middle. A higher Minimum Odd Wall Line Width leads to a higher maximum even wall line width." -" The maximum odd wall line width is calculated as 2 * Minimum Even Wall Line Width." +msgstr "Diâmetro mínimo da linha para as paredes poligonais de enchimento de folgas das linhas do meio. Esta definição determina a espessura do modelo em que passamos" +" da impressão de duas linhas da parede para a impressão de duas paredes exteriores e de uma única parede central no meio. Um diâmetro mínimo da parede" +" ímpar maior provoca um maior diâmetro máximo de linha da parede par. O diâmetro máximo de linha da parede ímpar é calculado como 2 * diâmetro mínimo de" +" linha da parede par." #: /fdmprinter.def.json msgctxt "fill_outline_gaps label" @@ -3126,34 +3124,34 @@ msgstr "Compensação de fluxo para a camada inicial: a quantidade de material e #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 label" msgid "Initial Layer Inner Wall Flow" -msgstr "Initial Layer Inner Wall Flow" +msgstr "Fluxo da parede interna da camada inicial" #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 description" msgid "" "Flow compensation on wall lines for all wall lines except the outermost one, " "but only for the first layer" -msgstr "Flow compensation on wall lines for all wall lines except the outermost one, but only for the first layer" +msgstr "Compensação de fluxo em linhas de parede para todas as linhas de parede, exceto a mais externa, mas somente para a primeira camada" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 label" msgid "Initial Layer Outer Wall Flow" -msgstr "Initial Layer Outer Wall Flow" +msgstr "Fluxo da parede externa da camada inicial" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 description" msgid "Flow compensation on the outermost wall line of the first layer." -msgstr "Flow compensation on the outermost wall line of the first layer." +msgstr "Compensação de fluxo na linha de parede mais externa da primeira camada." #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 label" msgid "Initial Layer Bottom Flow" -msgstr "Initial Layer Bottom Flow" +msgstr "Fluxo inferior da camada inicial" #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 description" msgid "Flow compensation on bottom lines of the first layer" -msgstr "Flow compensation on bottom lines of the first layer" +msgstr "Compensação de fluxo nos resultados da primeira camada" #: /fdmprinter.def.json msgctxt "material_standby_temperature label" @@ -3461,14 +3459,15 @@ msgstr "Permite o ajuste da aceleração da cabeça de impressão. Aumentar as a #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled label" msgid "Enable Travel Acceleration" -msgstr "Enable Travel Acceleration" +msgstr "Ativar a aceleração da viagem" #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled description" msgid "" "Use a separate acceleration rate for travel moves. If disabled, travel moves " "will use the acceleration value of the printed line at their destination." -msgstr "Use a separate acceleration rate for travel moves. If disabled, travel moves will use the acceleration value of the printed line at their destination." +msgstr "Utilizar uma taxa de aceleração separada para movimentos de viagem. Se desativados, os movimentos de viagem utilizarão o valor da aceleração da linha impressa" +" no seu destino." #: /fdmprinter.def.json msgctxt "acceleration_print label" @@ -3678,14 +3677,15 @@ msgstr "Permite ajustar o jerk da cabeça de impressão quando a velocidade nos #: /fdmprinter.def.json msgctxt "jerk_travel_enabled label" msgid "Enable Travel Jerk" -msgstr "Enable Travel Jerk" +msgstr "Ativar Jerk de Viagem" #: /fdmprinter.def.json msgctxt "jerk_travel_enabled description" msgid "" "Use a separate jerk rate for travel moves. If disabled, travel moves will " "use the jerk value of the printed line at their destination." -msgstr "Use a separate jerk rate for travel moves. If disabled, travel moves will use the jerk value of the printed line at their destination." +msgstr "Utilizar uma taxa de jerk separada para movimentos de viagem. Se for desativado, os movimentos de viagem utilizarão o valor do jerk da linha impressa no" +" seu destino." #: /fdmprinter.def.json msgctxt "jerk_print label" @@ -4548,14 +4548,14 @@ msgstr "O diâmetro dos ramos mais finos dos suportes tipo árvore. Ramos mais g #: /fdmprinter.def.json msgctxt "support_tree_max_diameter label" msgid "Tree Support Trunk Diameter" -msgstr "Tree Support Trunk Diameter" +msgstr "Diâmetro Tronco Suporte Árvore" #: /fdmprinter.def.json msgctxt "support_tree_max_diameter description" msgid "" "The diameter of the widest branches of tree support. A thicker trunk is more " "sturdy; a thinner trunk takes up less space on the build plate." -msgstr "The diameter of the widest branches of tree support. A thicker trunk is more sturdy; a thinner trunk takes up less space on the build plate." +msgstr "O diâmetro dos ramos mais amplos do suporte de árvores. Um ramo mais grosso é mais resistente; um ramo mais fino ocupa menos espaço na base de construção." #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter_angle label" diff --git a/resources/i18n/ru_RU/cura.po b/resources/i18n/ru_RU/cura.po index 916e8ee892..3ef33a8dcd 100644 --- a/resources/i18n/ru_RU/cura.po +++ b/resources/i18n/ru_RU/cura.po @@ -1,10 +1,12 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. # +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-27 14:50+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -1000,17 +1002,17 @@ msgstr "Узнать больше" msgctxt "@info:status" msgid "" "You will receive a confirmation via email when the print job is approved" -msgstr "You will receive a confirmation via email when the print job is approved" +msgstr "Вы получите подтверждение по электронной почте после утверждения задания печати" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:19 msgctxt "@info:title" msgid "The print job was successfully submitted" -msgstr "The print job was successfully submitted" +msgstr "Задание печати успешно отправлено" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:22 msgctxt "@action" msgid "Manage print jobs" -msgstr "Manage print jobs" +msgstr "Управление заданиями печати" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:15 msgctxt "@info:status" @@ -1331,7 +1333,7 @@ msgstr "Пакет формата Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py:19 msgctxt "@text Placeholder for the username if it has been deleted" msgid "deleted user" -msgstr "deleted user" +msgstr "удаленный пользователь" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeProfileReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:14 @@ -2506,12 +2508,12 @@ msgstr "Первое доступное" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:117 msgctxt "@info" msgid "Monitor your printers from everywhere using Ultimaker Digital Factory" -msgstr "Monitor your printers from everywhere using Ultimaker Digital Factory" +msgstr "Следите за своими принтерами откуда угодно с помощью Ultimaker Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:129 msgctxt "@button" msgid "View printers in Digital Factory" -msgstr "View printers in Digital Factory" +msgstr "Просмотреть принтеры в Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:44 msgctxt "@title:window" @@ -3360,7 +3362,7 @@ msgctxt "@label" msgid "" "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." -msgstr "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." +msgstr "Материал, используемый в этом проекте, в настоящее время не установлен в Cura.
    Установите профиль материала и откройте проект снова." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:515 msgctxt "@action:button" @@ -4182,12 +4184,12 @@ msgstr "Нарезать автоматически" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:340 msgctxt "@info:tooltip" msgid "Show an icon and notifications in the system notification area." -msgstr "Show an icon and notifications in the system notification area." +msgstr "Показать значок и уведомления в области уведомлений системы." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:348 msgctxt "@option:check" msgid "Add icon to system tray *" -msgstr "Add icon to system tray *" +msgstr "Добавить значок в системный трей*" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:357 msgctxt "@label" @@ -5522,17 +5524,17 @@ msgstr "Управление видимостью настроек..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:17 msgctxt "@title:window" msgid "Select Printer" -msgstr "Select Printer" +msgstr "Выберите принтер" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:54 msgctxt "@title:label" msgid "Compatible Printers" -msgstr "Compatible Printers" +msgstr "Совместимые принтеры" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:94 msgctxt "@description" msgid "No compatible printers, that are currently online, where found." -msgstr "No compatible printers, that are currently online, where found." +msgstr "Нет совместимых принтеров, которые в настоящее время находятся в сети." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:16 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:635 @@ -5811,7 +5813,7 @@ msgstr "Вспомогательная библиотека для научны #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:171 msgctxt "@Label Description for application dependency" msgid "Python Error tracking library" -msgstr "Python Error tracking library" +msgstr "Библиотека отслеживания ошибок Python" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:172 msgctxt "@label Description for application dependency" @@ -5939,12 +5941,12 @@ msgstr "Генерация структур для поддержки навис #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:54 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is active and you overwrote some settings." -msgstr "%1 custom profile is active and you overwrote some settings." +msgstr "Активен %1 собственный профиль, и вы переписали некоторые настройки." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:68 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is overriding some settings." -msgstr "%1 custom profile is overriding some settings." +msgstr "%1 собственный профиль переопределяет некоторые параметры." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:79 msgctxt "@info" @@ -6326,17 +6328,17 @@ msgstr "Управление принтерами" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:34 msgctxt "@label" msgid "Hide all connected printers" -msgstr "Hide all connected printers" +msgstr "Скрыть все подключенные принтеры" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:47 msgctxt "@label" msgid "Show all connected printers" -msgstr "Show all connected printers" +msgstr "Показать все подключенные принтеры" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Other printers" -msgstr "Other printers" +msgstr "Другие принтеры" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:54 msgctxt "@label:PrintjobStatus" diff --git a/resources/i18n/ru_RU/fdmextruder.def.json.po b/resources/i18n/ru_RU/fdmextruder.def.json.po index 3e40c2f2db..cf116fd67e 100644 --- a/resources/i18n/ru_RU/fdmextruder.def.json.po +++ b/resources/i18n/ru_RU/fdmextruder.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" diff --git a/resources/i18n/ru_RU/fdmprinter.def.json.po b/resources/i18n/ru_RU/fdmprinter.def.json.po index 1c17e4d19b..4e0109e7f0 100644 --- a/resources/i18n/ru_RU/fdmprinter.def.json.po +++ b/resources/i18n/ru_RU/fdmprinter.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -1205,9 +1202,9 @@ msgid "" "propagate to the outside. However printing them later allows them to stack " "better when overhangs are printed. When there is an uneven amount of total " "innner walls, the 'center last line' is always printed last." -msgstr "Determines the order in which walls are printed. Printing outer walls earlier helps with dimensional accuracy, as faults from inner walls cannot propagate" -" to the outside. However printing them later allows them to stack better when overhangs are printed. When there is an uneven amount of total innner walls," -" the 'center last line' is always printed last." +msgstr "Определяет порядок печати стенок. Если сначала печатать наружные стенки, это поможет более точно определять размеры стенок, поскольку дефекты внутренних" +" стенок не смогут распространяться наружу. Если печатать внешние стенки позже, это позволит лучше укладывать их друг на друга при печати выступов. При" +" нечетном количестве общих внутренних стен «центральная последняя линия» всегда печатается последней." #: /fdmprinter.def.json msgctxt "inset_direction option inside_out" @@ -1283,9 +1280,9 @@ msgid "" "A higher Minimum Odd Wall Line Width leads to a higher maximum even wall " "line width. The maximum odd wall line width is calculated as 2 * Minimum " "Even Wall Line Width." -msgstr "The minimum line width for middle line gap filler polyline walls. This setting determines at which model thickness we switch from printing two wall lines," -" to printing two outer walls and a single central wall in the middle. A higher Minimum Odd Wall Line Width leads to a higher maximum even wall line width." -" The maximum odd wall line width is calculated as 2 * Minimum Even Wall Line Width." +msgstr "Минимальная ширина линии для полилинейных стенок, заполняющих зазоры средней линии. Этот параметр определяет, при какой толщине модели выполняется переключение" +" с печати стенки в две линии на печать двух внешних стенок и одной центральной стенки посередине. Чем выше значение минимальной ширины линии нечетной стенки," +" тем выше максимальная ширина линии четной стенки. Максимальная ширина линии нечетной стенки вычисляется по формуле: 2 × ширина линии четной стенки." #: /fdmprinter.def.json msgctxt "fill_outline_gaps label" @@ -3103,34 +3100,34 @@ msgstr "Компенсация потока для первого слоя: об #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 label" msgid "Initial Layer Inner Wall Flow" -msgstr "Initial Layer Inner Wall Flow" +msgstr "Обтекание внутренней стенки начального слоя" #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 description" msgid "" "Flow compensation on wall lines for all wall lines except the outermost one, " "but only for the first layer" -msgstr "Flow compensation on wall lines for all wall lines except the outermost one, but only for the first layer" +msgstr "Компенсация потока на линиях стен для всех линий стен, кроме самой внешней, но только для первого слоя" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 label" msgid "Initial Layer Outer Wall Flow" -msgstr "Initial Layer Outer Wall Flow" +msgstr "Поток внешней стенки первого слоя" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 description" msgid "Flow compensation on the outermost wall line of the first layer." -msgstr "Flow compensation on the outermost wall line of the first layer." +msgstr "Компенсация потока на внешней линии стенки первого слоя." #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 label" msgid "Initial Layer Bottom Flow" -msgstr "Initial Layer Bottom Flow" +msgstr "Поток низа первого слоя" #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 description" msgid "Flow compensation on bottom lines of the first layer" -msgstr "Flow compensation on bottom lines of the first layer" +msgstr "Компенсация потока на нижних линиях первого слоя" #: /fdmprinter.def.json msgctxt "material_standby_temperature label" @@ -3435,14 +3432,15 @@ msgstr "Разрешает регулирование ускорения гол #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled label" msgid "Enable Travel Acceleration" -msgstr "Enable Travel Acceleration" +msgstr "Включить ускорение перемещения" #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled description" msgid "" "Use a separate acceleration rate for travel moves. If disabled, travel moves " "will use the acceleration value of the printed line at their destination." -msgstr "Use a separate acceleration rate for travel moves. If disabled, travel moves will use the acceleration value of the printed line at their destination." +msgstr "Использовать отдельный коэффициент ускорения для перемещения. Если опция отключена, то при перемещении будет использоваться значение ускорения строки в" +" пункте назначения." #: /fdmprinter.def.json msgctxt "acceleration_print label" @@ -3650,14 +3648,15 @@ msgstr "Разрешает управление скоростью измене #: /fdmprinter.def.json msgctxt "jerk_travel_enabled label" msgid "Enable Travel Jerk" -msgstr "Enable Travel Jerk" +msgstr "Включить рывок перемещения" #: /fdmprinter.def.json msgctxt "jerk_travel_enabled description" msgid "" "Use a separate jerk rate for travel moves. If disabled, travel moves will " "use the jerk value of the printed line at their destination." -msgstr "Use a separate jerk rate for travel moves. If disabled, travel moves will use the jerk value of the printed line at their destination." +msgstr "Использовать отдельный коэффициент рывка для перемещения. Если опция отключена, то при перемещении будет использоваться значение рывка строки в пункте" +" назначения." #: /fdmprinter.def.json msgctxt "jerk_print label" @@ -4519,14 +4518,14 @@ msgstr "Диаметр самых тонких ответвлений древо #: /fdmprinter.def.json msgctxt "support_tree_max_diameter label" msgid "Tree Support Trunk Diameter" -msgstr "Tree Support Trunk Diameter" +msgstr "Диаметр ствола древовидной поддержки" #: /fdmprinter.def.json msgctxt "support_tree_max_diameter description" msgid "" "The diameter of the widest branches of tree support. A thicker trunk is more " "sturdy; a thinner trunk takes up less space on the build plate." -msgstr "The diameter of the widest branches of tree support. A thicker trunk is more sturdy; a thinner trunk takes up less space on the build plate." +msgstr "Диаметр самых широких ветвей древовидной поддержки. Более толстый ствол будет более прочным. Более тонкий ствол занимает меньше места на печатной пластине." #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter_angle label" diff --git a/resources/i18n/tr_TR/cura.po b/resources/i18n/tr_TR/cura.po index 9812f04b47..15f440557b 100644 --- a/resources/i18n/tr_TR/cura.po +++ b/resources/i18n/tr_TR/cura.po @@ -1,10 +1,12 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. # +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-27 14:50+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -998,17 +1000,17 @@ msgstr "Daha fazla bilgi edinin" msgctxt "@info:status" msgid "" "You will receive a confirmation via email when the print job is approved" -msgstr "You will receive a confirmation via email when the print job is approved" +msgstr "Baskı işi onaylandığında e-posta yoluyla bir onay alacaksınız" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:19 msgctxt "@info:title" msgid "The print job was successfully submitted" -msgstr "The print job was successfully submitted" +msgstr "Baskı işi başarıyla gönderildi" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:22 msgctxt "@action" msgid "Manage print jobs" -msgstr "Manage print jobs" +msgstr "Baskı işlerini yönet" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:15 msgctxt "@info:status" @@ -1327,7 +1329,7 @@ msgstr "Ultimaker Biçim Paketi" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py:19 msgctxt "@text Placeholder for the username if it has been deleted" msgid "deleted user" -msgstr "deleted user" +msgstr "silinmiş kullanıcı" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeProfileReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:14 @@ -2500,12 +2502,12 @@ msgstr "İlk kullanılabilen" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:117 msgctxt "@info" msgid "Monitor your printers from everywhere using Ultimaker Digital Factory" -msgstr "Monitor your printers from everywhere using Ultimaker Digital Factory" +msgstr "Ultimaker Digital Factory'yi kullanarak yazıcılarınızı her yerden izleyin" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:129 msgctxt "@button" msgid "View printers in Digital Factory" -msgstr "View printers in Digital Factory" +msgstr "Digital Factory’deki yazıcıları görüntüle" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:44 msgctxt "@title:window" @@ -3351,7 +3353,7 @@ msgctxt "@label" msgid "" "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." -msgstr "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." +msgstr "Bu projede kullanılan malzeme şu anda Cura’da yüklü değil.
    Malzeme profilini yükleyin ve projeyi yeniden açın." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:515 msgctxt "@action:button" @@ -4172,12 +4174,12 @@ msgstr "Otomatik olarak dilimle" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:340 msgctxt "@info:tooltip" msgid "Show an icon and notifications in the system notification area." -msgstr "Show an icon and notifications in the system notification area." +msgstr "Sistem bildirim alanında bir simge ve bildirim göster." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:348 msgctxt "@option:check" msgid "Add icon to system tray *" -msgstr "Add icon to system tray *" +msgstr "Sistem tepsisine simge ekle *" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:357 msgctxt "@label" @@ -5506,17 +5508,17 @@ msgstr "Ayar Görünürlüğünü Yönet..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:17 msgctxt "@title:window" msgid "Select Printer" -msgstr "Select Printer" +msgstr "Yazıcı Seç" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:54 msgctxt "@title:label" msgid "Compatible Printers" -msgstr "Compatible Printers" +msgstr "Uyumlu yazıcılar" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:94 msgctxt "@description" msgid "No compatible printers, that are currently online, where found." -msgstr "No compatible printers, that are currently online, where found." +msgstr "Şu anda çevrimiçi olan hiçbir uyumlu yazıcı bulunamadı." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:16 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:635 @@ -5795,7 +5797,7 @@ msgstr "Bilimsel bilgi işlem için destek kitaplığı" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:171 msgctxt "@Label Description for application dependency" msgid "Python Error tracking library" -msgstr "Python Error tracking library" +msgstr "Python Hata takip kitaplığı" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:172 msgctxt "@label Description for application dependency" @@ -5923,12 +5925,12 @@ msgstr "Modellerin askıda kalan kısımlarını destekleyen yapılar oluşturun #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:54 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is active and you overwrote some settings." -msgstr "%1 custom profile is active and you overwrote some settings." +msgstr "%1 özel profili etkin ve bazı ayarların üzerine yazdınız." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:68 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is overriding some settings." -msgstr "%1 custom profile is overriding some settings." +msgstr "%1 özel profili bazı ayarları geçersiz kılıyor." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:79 msgctxt "@info" @@ -6311,17 +6313,17 @@ msgstr "Yazıcıları yönet" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:34 msgctxt "@label" msgid "Hide all connected printers" -msgstr "Hide all connected printers" +msgstr "Bağlı tüm yazıcıları gizle" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:47 msgctxt "@label" msgid "Show all connected printers" -msgstr "Show all connected printers" +msgstr "Bağlı tüm yazıcıları göster" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Other printers" -msgstr "Other printers" +msgstr "Diğer yazıcılar" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:54 msgctxt "@label:PrintjobStatus" diff --git a/resources/i18n/tr_TR/fdmextruder.def.json.po b/resources/i18n/tr_TR/fdmextruder.def.json.po index 2ec59f54fa..503342b631 100644 --- a/resources/i18n/tr_TR/fdmextruder.def.json.po +++ b/resources/i18n/tr_TR/fdmextruder.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" diff --git a/resources/i18n/tr_TR/fdmprinter.def.json.po b/resources/i18n/tr_TR/fdmprinter.def.json.po index 1f318e9f7e..8bb7d2d2e7 100644 --- a/resources/i18n/tr_TR/fdmprinter.def.json.po +++ b/resources/i18n/tr_TR/fdmprinter.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.2\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -1206,9 +1203,9 @@ msgid "" "propagate to the outside. However printing them later allows them to stack " "better when overhangs are printed. When there is an uneven amount of total " "innner walls, the 'center last line' is always printed last." -msgstr "Determines the order in which walls are printed. Printing outer walls earlier helps with dimensional accuracy, as faults from inner walls cannot propagate" -" to the outside. However printing them later allows them to stack better when overhangs are printed. When there is an uneven amount of total innner walls," -" the 'center last line' is always printed last." +msgstr "Duvarların basılacağı sırayı belirler. Dış duvarların önce basılması, iç duvarlardaki hataların dışarıya taşmasını önleyerek boyutların doğru olmasını" +" sağlar. Bu duvarların daha sonra basılması ise çıkıntılar basılırken daha iyi yığınlanma sağlar. Toplam iç duvar sayısı çift olmadığında ’ortadaki son" +" hat’ her zaman en son yazdırılır." #: /fdmprinter.def.json msgctxt "inset_direction option inside_out" @@ -1282,9 +1279,9 @@ msgid "" "A higher Minimum Odd Wall Line Width leads to a higher maximum even wall " "line width. The maximum odd wall line width is calculated as 2 * Minimum " "Even Wall Line Width." -msgstr "The minimum line width for middle line gap filler polyline walls. This setting determines at which model thickness we switch from printing two wall lines," -" to printing two outer walls and a single central wall in the middle. A higher Minimum Odd Wall Line Width leads to a higher maximum even wall line width." -" The maximum odd wall line width is calculated as 2 * Minimum Even Wall Line Width." +msgstr "Orta hat boşluğunu dolduran çok hatlı duvarlar için minimum hat genişliğidir. Bu ayar, iki duvar hattı baskısının hangi model kalınlığında iki dış duvar" +" ve tek bir merkezi orta duvar baskısına geçirileceğini belirler. Daha yüksek Minimum Tek Duvar Hattı Genişliği değeri belirlenmesi daha yüksek maksimum" +" çift duvar hattı genişliği oluşturur. Maksimum tek duvar hattı genişliği, 2 * Minimum Çift Duvar Hattı Genişliği formülüyle hesaplanır." #: /fdmprinter.def.json msgctxt "fill_outline_gaps label" @@ -3099,34 +3096,34 @@ msgstr "İlk katman için akış dengelemesi: ilk katmana ekstrude edilen malzem #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 label" msgid "Initial Layer Inner Wall Flow" -msgstr "Initial Layer Inner Wall Flow" +msgstr "İlk Katman İç Duvar Akışı" #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 description" msgid "" "Flow compensation on wall lines for all wall lines except the outermost one, " "but only for the first layer" -msgstr "Flow compensation on wall lines for all wall lines except the outermost one, but only for the first layer" +msgstr "En dıştaki hariç tüm duvar hatları için duvar hatların için akış telafisi, ancak yalnızca ilk katman için" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 label" msgid "Initial Layer Outer Wall Flow" -msgstr "Initial Layer Outer Wall Flow" +msgstr "İlk Katman Dış Duvar Akışı" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 description" msgid "Flow compensation on the outermost wall line of the first layer." -msgstr "Flow compensation on the outermost wall line of the first layer." +msgstr "İlk katmanın en dış duvar hattı için akış telafisi." #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 label" msgid "Initial Layer Bottom Flow" -msgstr "Initial Layer Bottom Flow" +msgstr "İlk Katman Alt Akış" #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 description" msgid "Flow compensation on bottom lines of the first layer" -msgstr "Flow compensation on bottom lines of the first layer" +msgstr "İlk katmanın alt hatları için akış telafisi" #: /fdmprinter.def.json msgctxt "material_standby_temperature label" @@ -3429,14 +3426,14 @@ msgstr "Yazıcı başlığı ivmesinin ayarlanmasını sağlar. İvmeleri artır #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled label" msgid "Enable Travel Acceleration" -msgstr "Enable Travel Acceleration" +msgstr "Hareket İvmesini Etkinleştir" #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled description" msgid "" "Use a separate acceleration rate for travel moves. If disabled, travel moves " "will use the acceleration value of the printed line at their destination." -msgstr "Use a separate acceleration rate for travel moves. If disabled, travel moves will use the acceleration value of the printed line at their destination." +msgstr "Hareket hamleleri için farklı bir ivme oranı kullanın. Devre dışı bırakılırsa hareket hamleleri, varış noktasındaki yazdırılmış hattın ivme değerini kullanır." #: /fdmprinter.def.json msgctxt "acceleration_print label" @@ -3644,14 +3641,15 @@ msgstr "X veya Y eksenlerindeki hareket hızı değiştiğinde yazıcı başlı #: /fdmprinter.def.json msgctxt "jerk_travel_enabled label" msgid "Enable Travel Jerk" -msgstr "Enable Travel Jerk" +msgstr "Hareket Salınımını Etkinleştir" #: /fdmprinter.def.json msgctxt "jerk_travel_enabled description" msgid "" "Use a separate jerk rate for travel moves. If disabled, travel moves will " "use the jerk value of the printed line at their destination." -msgstr "Use a separate jerk rate for travel moves. If disabled, travel moves will use the jerk value of the printed line at their destination." +msgstr "Hareket hamleleri için farklı bir salınım oranı kullanın. Devre dışı bırakılırsa hareket hamleleri, varış noktasındaki yazdırılmış hattın salınım değerini" +" kullanır." #: /fdmprinter.def.json msgctxt "jerk_print label" @@ -4506,14 +4504,14 @@ msgstr "Ağaç desteğin en ince dallarının çapı. Daha kalın dallar daha da #: /fdmprinter.def.json msgctxt "support_tree_max_diameter label" msgid "Tree Support Trunk Diameter" -msgstr "Tree Support Trunk Diameter" +msgstr "Ağaç Destek Gövde Çapı" #: /fdmprinter.def.json msgctxt "support_tree_max_diameter description" msgid "" "The diameter of the widest branches of tree support. A thicker trunk is more " "sturdy; a thinner trunk takes up less space on the build plate." -msgstr "The diameter of the widest branches of tree support. A thicker trunk is more sturdy; a thinner trunk takes up less space on the build plate." +msgstr "Ağaç desteğinin en geniş dallarının çapı. Daha kalın bir gövde daha sağlam olur; daha ince bir gövde, yapı plakasında daha az yer kaplar." #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter_angle label" diff --git a/resources/i18n/zh_CN/cura.po b/resources/i18n/zh_CN/cura.po index e93c320a5b..6c63a0b8fc 100644 --- a/resources/i18n/zh_CN/cura.po +++ b/resources/i18n/zh_CN/cura.po @@ -1,10 +1,12 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. # +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.1\n" +"Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-27 14:50+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -996,17 +998,17 @@ msgstr "Zjistit více" msgctxt "@info:status" msgid "" "You will receive a confirmation via email when the print job is approved" -msgstr "You will receive a confirmation via email when the print job is approved" +msgstr "打印作业获得批准后,您将收到确认电子邮件" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:19 msgctxt "@info:title" msgid "The print job was successfully submitted" -msgstr "The print job was successfully submitted" +msgstr "打印作业已成功提交" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:22 msgctxt "@action" msgid "Manage print jobs" -msgstr "Manage print jobs" +msgstr "管理打印作业" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:15 msgctxt "@info:status" @@ -1321,7 +1323,7 @@ msgstr "Balíček ve formátu Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py:19 msgctxt "@text Placeholder for the username if it has been deleted" msgid "deleted user" -msgstr "deleted user" +msgstr "已删除的用户" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeProfileReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:14 @@ -2492,12 +2494,12 @@ msgstr "První dostupný" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:117 msgctxt "@info" msgid "Monitor your printers from everywhere using Ultimaker Digital Factory" -msgstr "Monitor your printers from everywhere using Ultimaker Digital Factory" +msgstr "使用 Ultimaker Digital Factory 从任意位置监控打印机" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:129 msgctxt "@button" msgid "View printers in Digital Factory" -msgstr "View printers in Digital Factory" +msgstr "查看 Digital Factory 中的打印机" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:44 msgctxt "@title:window" @@ -3340,7 +3342,7 @@ msgctxt "@label" msgid "" "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." -msgstr "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." +msgstr "此项目中使用的材料当前未安装在 Cura 中。
    安装材料配置文件并重新打开项目。" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:515 msgctxt "@action:button" @@ -4160,12 +4162,12 @@ msgstr "Slicovat automaticky" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:340 msgctxt "@info:tooltip" msgid "Show an icon and notifications in the system notification area." -msgstr "Show an icon and notifications in the system notification area." +msgstr "在系统通知区域中显示图标和通知。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:348 msgctxt "@option:check" msgid "Add icon to system tray *" -msgstr "Add icon to system tray *" +msgstr "在系统托盘中添加图标 *" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:357 msgctxt "@label" @@ -5491,17 +5493,17 @@ msgstr "Spravovat nastavení viditelnosti ..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:17 msgctxt "@title:window" msgid "Select Printer" -msgstr "Select Printer" +msgstr "选择打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:54 msgctxt "@title:label" msgid "Compatible Printers" -msgstr "Compatible Printers" +msgstr "Kompatibilní tiskárny" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:94 msgctxt "@description" msgid "No compatible printers, that are currently online, where found." -msgstr "No compatible printers, that are currently online, where found." +msgstr "没有找到当前联机的兼容打印机。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:16 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:635 @@ -5780,7 +5782,7 @@ msgstr "科学计算支持库" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:171 msgctxt "@Label Description for application dependency" msgid "Python Error tracking library" -msgstr "Python Error tracking library" +msgstr "Python 错误跟踪库" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:172 msgctxt "@label Description for application dependency" @@ -5908,12 +5910,12 @@ msgstr "Vytvořte struktury pro podporu částí modelu, které mají přesahy. #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:54 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is active and you overwrote some settings." -msgstr "%1 custom profile is active and you overwrote some settings." +msgstr "%1自定义配置文件处于活动状态,并且已覆盖某些设置。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:68 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is overriding some settings." -msgstr "%1 custom profile is overriding some settings." +msgstr "%1自定义配置文件正在覆盖某些设置。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:79 msgctxt "@info" @@ -6296,17 +6298,17 @@ msgstr "Spravovat tiskárny" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:34 msgctxt "@label" msgid "Hide all connected printers" -msgstr "Hide all connected printers" +msgstr "隐藏所有连接的打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:47 msgctxt "@label" msgid "Show all connected printers" -msgstr "Show all connected printers" +msgstr "显示所有连接的打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Other printers" -msgstr "Other printers" +msgstr "其他打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:54 msgctxt "@label:PrintjobStatus" diff --git a/resources/i18n/zh_CN/fdmextruder.def.json.po b/resources/i18n/zh_CN/fdmextruder.def.json.po index f836b0f0e3..466874aeef 100644 --- a/resources/i18n/zh_CN/fdmextruder.def.json.po +++ b/resources/i18n/zh_CN/fdmextruder.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.1\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" diff --git a/resources/i18n/zh_CN/fdmprinter.def.json.po b/resources/i18n/zh_CN/fdmprinter.def.json.po index e85298f7c6..cc77360a73 100644 --- a/resources/i18n/zh_CN/fdmprinter.def.json.po +++ b/resources/i18n/zh_CN/fdmprinter.def.json.po @@ -1,10 +1,7 @@ -# Cura -# Copyright (C) 2022 Ultimaker B.V. -# This file is distributed under the same license as the Cura package. -# +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: Cura 5.1\n" +"Project-Id-Version: Uranium json setting files\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" @@ -1187,9 +1184,7 @@ msgid "" "propagate to the outside. However printing them later allows them to stack " "better when overhangs are printed. When there is an uneven amount of total " "innner walls, the 'center last line' is always printed last." -msgstr "Determines the order in which walls are printed. Printing outer walls earlier helps with dimensional accuracy, as faults from inner walls cannot propagate" -" to the outside. However printing them later allows them to stack better when overhangs are printed. When there is an uneven amount of total innner walls," -" the 'center last line' is always printed last." +msgstr "确定打印壁的顺序。先打印外壁有助于提高尺寸精度,因为内壁的误差不会传播到外壁。不过,在打印悬垂对象时,后打印外壁可以实现更好的堆叠。当总内壁数量不均匀时,“中心最后线”总是最后打印。" #: /fdmprinter.def.json msgctxt "inset_direction option inside_out" @@ -1259,9 +1254,7 @@ msgid "" "A higher Minimum Odd Wall Line Width leads to a higher maximum even wall " "line width. The maximum odd wall line width is calculated as 2 * Minimum " "Even Wall Line Width." -msgstr "The minimum line width for middle line gap filler polyline walls. This setting determines at which model thickness we switch from printing two wall lines," -" to printing two outer walls and a single central wall in the middle. A higher Minimum Odd Wall Line Width leads to a higher maximum even wall line width." -" The maximum odd wall line width is calculated as 2 * Minimum Even Wall Line Width." +msgstr "中间走线空隙填料多线壁的最小走线宽度。此设置确定在什么模型厚度下,我们从打印两根壁走线切换到打印两个外壁并在中间打印一个中心壁。更高的最小奇数壁走线宽度会带来更高的最大偶数壁走线宽度。最大奇数壁走线宽度计算方法是:2 * 最小偶数壁走线宽度。" #: /fdmprinter.def.json msgctxt "fill_outline_gaps label" @@ -3023,34 +3016,34 @@ msgstr "第一层的流量补偿:起始层挤出的材料量乘以此值。" #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 label" msgid "Initial Layer Inner Wall Flow" -msgstr "Initial Layer Inner Wall Flow" +msgstr "起始层内壁流量" #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 description" msgid "" "Flow compensation on wall lines for all wall lines except the outermost one, " "but only for the first layer" -msgstr "Flow compensation on wall lines for all wall lines except the outermost one, but only for the first layer" +msgstr "适用于所有壁走线(最外壁走线除外)的流量补偿,但仅适用于第一层" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 label" msgid "Initial Layer Outer Wall Flow" -msgstr "Initial Layer Outer Wall Flow" +msgstr "起始层外壁流量" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 description" msgid "Flow compensation on the outermost wall line of the first layer." -msgstr "Flow compensation on the outermost wall line of the first layer." +msgstr "第一层最外壁线上的流量补偿。" #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 label" msgid "Initial Layer Bottom Flow" -msgstr "Initial Layer Bottom Flow" +msgstr "起始层底部流量" #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 description" msgid "Flow compensation on bottom lines of the first layer" -msgstr "Flow compensation on bottom lines of the first layer" +msgstr "第一层底线的流量补偿" #: /fdmprinter.def.json msgctxt "material_standby_temperature label" @@ -4403,14 +4396,14 @@ msgstr "树形支撑最细分支的直径。较粗的分支更坚固。接近基 #: /fdmprinter.def.json msgctxt "support_tree_max_diameter label" msgid "Tree Support Trunk Diameter" -msgstr "Tree Support Trunk Diameter" +msgstr "树形支撑主干直径" #: /fdmprinter.def.json msgctxt "support_tree_max_diameter description" msgid "" "The diameter of the widest branches of tree support. A thicker trunk is more " "sturdy; a thinner trunk takes up less space on the build plate." -msgstr "The diameter of the widest branches of tree support. A thicker trunk is more sturdy; a thinner trunk takes up less space on the build plate." +msgstr "树形支撑最粗分支的直径。较粗的主干更坚固;较细主干在构建板上占据的空间较小。" #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter_angle label" From 670f439fe24308007d1187118c808f89d2cbc601 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Tue, 18 Oct 2022 14:02:35 +0200 Subject: [PATCH 019/161] update pt_br po files --- resources/i18n/pt_BR/cura.po | 490 +++++++------------- resources/i18n/pt_BR/fdmprinter.def.json.po | 26 +- 2 files changed, 171 insertions(+), 345 deletions(-) diff --git a/resources/i18n/pt_BR/cura.po b/resources/i18n/pt_BR/cura.po index 281e4f0208..ae77341568 100644 --- a/resources/i18n/pt_BR/cura.po +++ b/resources/i18n/pt_BR/cura.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Cura 5.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-27 14:50+0200\n" -"PO-Revision-Date: 2022-07-04 04:14+0200\n" +"PO-Revision-Date: 2022-10-10 08:19+0200\n" "Last-Translator: Cláudio Sampaio \n" "Language-Team: Cláudio Sampaio \n" "Language: pt_BR\n" @@ -15,7 +15,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -"X-Generator: Poedit 3.0.1\n" +"X-Generator: Poedit 3.1.1\n" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:87 msgctxt "@tooltip" @@ -77,8 +77,7 @@ msgctxt "@tooltip" msgid "Other" msgstr "Outros" -#: /Users/c.lamboo/ultimaker/Cura/cura/UI/TextManager.py:37 -#: /Users/c.lamboo/ultimaker/Cura/cura/UI/TextManager.py:63 +#: /Users/c.lamboo/ultimaker/Cura/cura/UI/TextManager.py:37 /Users/c.lamboo/ultimaker/Cura/cura/UI/TextManager.py:63 msgctxt "@text:window" msgid "The release notes could not be opened." msgstr "As notas de lançamento não puderam ser abertas." @@ -89,68 +88,52 @@ msgctxt "@label" msgid "Group #{group_nr}" msgstr "Grupo #{group_nr}" -#: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:57 -#: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:277 +#: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:57 /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:277 msgctxt "@action:button" msgid "Next" msgstr "Próximo" -#: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:286 -#: /Users/c.lamboo/ultimaker/Cura/cura/UI/WhatsNewPagesModel.py:68 +#: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:286 /Users/c.lamboo/ultimaker/Cura/cura/UI/WhatsNewPagesModel.py:68 msgctxt "@action:button" msgid "Skip" msgstr "Pular" -#: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:290 -#: /Users/c.lamboo/ultimaker/Cura/cura/UI/AddPrinterPagesModel.py:26 +#: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:290 /Users/c.lamboo/ultimaker/Cura/cura/UI/AddPrinterPagesModel.py:26 msgctxt "@action:button" msgid "Finish" msgstr "Finalizar" -#: /Users/c.lamboo/ultimaker/Cura/cura/UI/AddPrinterPagesModel.py:17 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:61 +#: /Users/c.lamboo/ultimaker/Cura/cura/UI/AddPrinterPagesModel.py:17 /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:61 msgctxt "@action:button" msgid "Add" msgstr "Adicionar" -#: /Users/c.lamboo/ultimaker/Cura/cura/UI/AddPrinterPagesModel.py:33 -#: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:323 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:43 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:27 -#: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:147 -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:509 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/RenameDialog.qml:74 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:59 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:293 +#: /Users/c.lamboo/ultimaker/Cura/cura/UI/AddPrinterPagesModel.py:33 /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:323 /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:43 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:27 /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:147 /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:509 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/RenameDialog.qml:74 /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:59 /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:293 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ColorDialog.qml:139 msgctxt "@action:button" msgid "Cancel" msgstr "Cancelar" -#: /Users/c.lamboo/ultimaker/Cura/cura/UI/WhatsNewPagesModel.py:76 -#: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:444 -#: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:135 -#: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:175 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:188 +#: /Users/c.lamboo/ultimaker/Cura/cura/UI/WhatsNewPagesModel.py:76 /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:444 /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:135 +#: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:175 /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:188 msgctxt "@action:button" msgid "Close" msgstr "Fechar" -#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:207 -#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:140 +#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:207 /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:140 msgctxt "@title:window" msgid "File Already Exists" msgstr "O Arquivo Já Existe" -#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:208 -#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:141 +#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:208 /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:141 #, python-brace-format msgctxt "@label Don't translate the XML tag !" msgid "The file {0} already exists. Are you sure you want to overwrite it?" msgstr "O arquivo {0} já existe. Tem certeza que quer sobrescrevê-lo?" -#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:459 -#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:462 +#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:459 /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:462 msgctxt "@info:status" msgid "Invalid file URL:" msgstr "URL de arquivo inválida:" @@ -165,8 +148,7 @@ msgctxt "@info:No intent profile selected" msgid "Default" msgstr "Default" -#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/MachineManager.py:745 -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:219 +#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/MachineManager.py:745 /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:219 msgctxt "@label" msgid "Nozzle" msgstr "Bico" @@ -192,11 +174,8 @@ msgctxt "@info:status Don't translate the XML tags or !" msgid "Failed to export profile to {0}: {1}" msgstr "Falha ao exportar perfil para {0}: {1}" -#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:156 -#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:166 -#: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:1829 -#: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153 -#: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:173 +#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:156 /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:166 /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:1829 +#: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153 /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:173 msgctxt "@info:title" msgid "Error" msgstr "Erro" @@ -242,8 +221,7 @@ msgctxt "@info:status Don't translate the XML tags !" msgid "Failed to import profile from {0}:" msgstr "Erro ao importar perfil de {0}:" -#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:252 -#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:262 +#: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:252 /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:262 #, python-brace-format msgctxt "@info:status Don't translate the XML tags !" msgid "This profile {0} contains incorrect data, could not import it." @@ -315,8 +293,7 @@ msgctxt "@info:title" msgid "Placing Objects" msgstr "Colocando Objetos" -#: /Users/c.lamboo/ultimaker/Cura/cura/MultiplyObjectsJob.py:99 -#: /Users/c.lamboo/ultimaker/Cura/cura/Arranging/ArrangeObjectsJob.py:42 +#: /Users/c.lamboo/ultimaker/Cura/cura/MultiplyObjectsJob.py:99 /Users/c.lamboo/ultimaker/Cura/cura/Arranging/ArrangeObjectsJob.py:42 msgctxt "@info:status" msgid "Unable to find a location within the build volume for all objects" msgstr "Não foi possível achar um lugar dentro do volume de construção para todos os objetos" @@ -378,9 +355,7 @@ msgctxt "@info:status" msgid "Only one G-code file can be loaded at a time. Skipped importing {0}" msgstr "Somente um arquivo G-Code pode ser carregado por vez. Pulando importação de {0}" -#: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:1817 -#: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationService.py:217 -#: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:189 +#: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:1817 /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationService.py:217 /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:189 msgctxt "@info:title" msgid "Warning" msgstr "Aviso" @@ -451,52 +426,38 @@ msgctxt "@menuitem" msgid "Not overridden" msgstr "Não sobreposto" -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:11 -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:42 -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/QualityManagementModel.py:338 +#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:11 /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:42 /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/QualityManagementModel.py:338 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:61 msgctxt "@label" msgid "Default" msgstr "Default" -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:14 -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:45 -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:65 +#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:14 /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:45 /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:65 msgctxt "@label" msgid "Visual" msgstr "Visual" -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:15 -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:46 -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:66 +#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:15 /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:46 /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:66 msgctxt "@text" msgid "The visual profile is designed to print visual prototypes and models with the intent of high visual and surface quality." msgstr "O perfil visual é projetado para imprimir protótipos e modelos virtuais com o objetivo de alta qualidade visual e de superfície." -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:18 -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:49 -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:70 +#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:18 /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:49 /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:70 msgctxt "@label" msgid "Engineering" msgstr "Engenharia" -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:19 -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:50 -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:71 +#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:19 /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:50 /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:71 msgctxt "@text" msgid "The engineering profile is designed to print functional prototypes and end-use parts with the intent of better accuracy and for closer tolerances." msgstr "O perfil de engenharia é projetado para imprimir protótipos funcionais e partes de uso final com o objetivo de melhor precisão e tolerâncias mais estritas." -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:22 -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:53 -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:75 +#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:22 /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:53 /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:75 msgctxt "@label" msgid "Draft" msgstr "Rascunho" -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:23 -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:54 -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:76 +#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:23 /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:54 /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:76 msgctxt "@text" msgid "The draft profile is designed to print initial prototypes and concept validation with the intent of significant print time reduction." msgstr "O perfil de rascunho é projetado para imprimir protótipos iniciais e validações de conceito com o objetivo de redução significativa de tempo de impressão." @@ -537,8 +498,7 @@ msgctxt "@label" msgid "Available networked printers" msgstr "Impressoras de rede disponíveis" -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/GlobalStacksModel.py:160 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 +#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/GlobalStacksModel.py:160 /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Connected printers" msgstr "Impressoras conectadas" @@ -559,8 +519,7 @@ msgctxt "@label" msgid "Custom Material" msgstr "Material Personalizado" -#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/MaterialManagementModel.py:233 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:340 +#: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/MaterialManagementModel.py:233 /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:340 msgctxt "@label" msgid "Custom" msgstr "Personalizado" @@ -585,9 +544,7 @@ msgctxt "@action:button" msgid "Sync materials" msgstr "Sincronizar materiais" -#: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:82 -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.py:397 -#: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/SolidView.py:80 +#: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:82 /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.py:397 /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/SolidView.py:80 msgctxt "@action:button" msgid "Learn more" msgstr "Saiba mais" @@ -612,8 +569,7 @@ msgctxt "@text:error" msgid "Failed to create archive of materials to sync with printers." msgstr "Falha em criar arquivo de materiais para sincronizar com impressoras." -#: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:111 -#: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:165 +#: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:111 /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:165 msgctxt "@text:error" msgid "Failed to load the archive of materials to sync it with printers." msgstr "Falha em carregar o arquivo de materiais para sincronizar com impressoras." @@ -623,9 +579,7 @@ msgctxt "@text:error" msgid "The response from Digital Factory appears to be corrupted." msgstr "A resposta da Digital Factory parece estar corrompida." -#: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:147 -#: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:151 -#: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:155 +#: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:147 /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:151 /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:155 msgctxt "@text:error" msgid "The response from Digital Factory is missing important information." msgstr "A resposta da Digital Factory veio sem informações importantes." @@ -655,10 +609,7 @@ msgctxt "@info:backup_failed" msgid "Could not create archive from user data directory: {}" msgstr "Não pude criar arquivo do diretório de dados de usuário: {}" -#: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:122 -#: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:159 -#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:118 -#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:126 +#: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:122 /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:159 /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:118 /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:126 msgctxt "@info:title" msgid "Backup" msgstr "Backup" @@ -857,8 +808,7 @@ msgctxt "@item:inlistbox" msgid "X3D File" msgstr "Arquivo X3D" -#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraProfileReader/__init__.py:14 -#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraProfileWriter/__init__.py:14 +#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraProfileReader/__init__.py:14 /Users/c.lamboo/ultimaker/Cura/plugins/CuraProfileWriter/__init__.py:14 msgctxt "@item:inlistbox" msgid "Cura Profile" msgstr "Perfil do Cura" @@ -873,8 +823,7 @@ msgctxt "@item:inmenu" msgid "Modify G-Code" msgstr "Modificar G-Code" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/MeshFormatHandler.py:118 -#: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:66 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/MeshFormatHandler.py:118 /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:66 msgctxt "@info:status" msgid "There are no file formats available to write with!" msgstr "Não há formatos de arquivo disponíveis com os quais escrever!" @@ -955,8 +904,7 @@ msgctxt "@action" msgid "Get started" msgstr "Começar" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:31 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:24 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:31 /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:24 msgctxt "@action" msgid "Learn more" msgstr "Saiba mais" @@ -964,17 +912,17 @@ msgstr "Saiba mais" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:18 msgctxt "@info:status" msgid "You will receive a confirmation via email when the print job is approved" -msgstr "" +msgstr "Você receberá uma confirmação por email quando o trabalho de impressão for aprovado" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:19 msgctxt "@info:title" msgid "The print job was successfully submitted" -msgstr "" +msgstr "O trabalho de impressão foi submetido com sucesso" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:22 msgctxt "@action" msgid "Manage print jobs" -msgstr "" +msgstr "Gerenciar trabalhos de impressão" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:15 msgctxt "@info:status" @@ -1020,8 +968,7 @@ msgid_plural "These printers are not linked to the Digital Factory:" msgstr[0] "Esta impressora não está ligada à Digital Factory:" msgstr[1] "Estas impressoras não estão ligadas à Digital Factory:" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:22 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:422 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:22 /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:422 msgctxt "info:name" msgid "Ultimaker Digital Factory" msgstr "Ultimaker Digital Factory" @@ -1099,20 +1046,17 @@ msgctxt "@action" msgid "Connect via Network" msgstr "Conectar pela rede" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/AbstractCloudOutputDevice.py:80 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:162 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/AbstractCloudOutputDevice.py:80 /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:162 msgctxt "@action:button" msgid "Print via cloud" msgstr "Imprimir pela nuvem" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/AbstractCloudOutputDevice.py:81 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:163 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/AbstractCloudOutputDevice.py:81 /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:163 msgctxt "@properties:tooltip" msgid "Print via cloud" msgstr "Imprimir pela nuvem" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/AbstractCloudOutputDevice.py:82 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:164 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/AbstractCloudOutputDevice.py:82 /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:164 msgctxt "@info:status" msgid "Connected via cloud" msgstr "Conectado pela nuvem" @@ -1206,8 +1150,7 @@ msgctxt "@error" msgid "There is no workspace yet to write. Please add a printer first." msgstr "Não existe espaço de trabalho ainda para a escrita. Por favor adicione uma impressora primeiro." -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:64 -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:97 +#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:64 /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:97 msgctxt "@error:zip" msgid "No permission to write the workspace here." msgstr "Sem permissão para gravar o espaço de trabalho aqui." @@ -1217,8 +1160,7 @@ msgctxt "@error:zip" msgid "The operating system does not allow saving a project file to this location or with this file name." msgstr "O sistema operacional não permite salvar um arquivo de projeto nesta localização ou com este nome de arquivo." -#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/DriveApiService.py:86 -#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26 +#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/DriveApiService.py:86 /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26 msgctxt "@info:backup_status" msgid "There was an error trying to restore your backup." msgstr "Houve um erro ao tentar restaurar seu backup." @@ -1268,18 +1210,13 @@ msgctxt "@text" msgid "Unable to read example data file." msgstr "Não foi possível ler o arquivo de dados de exemplo." -#: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:62 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:78 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:91 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:113 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:168 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:178 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:62 /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:78 /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:91 /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:113 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:168 /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:178 msgctxt "@info:error" msgid "Can't write to UFP file:" msgstr "Não foi possível escrever no arquivo UFP:" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/__init__.py:28 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UFPReader/__init__.py:22 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/__init__.py:28 /Users/c.lamboo/ultimaker/Cura/plugins/UFPReader/__init__.py:22 msgctxt "@item:inlistbox" msgid "Ultimaker Format Package" msgstr "Pacote de Formato da Ultimaker" @@ -1287,11 +1224,9 @@ msgstr "Pacote de Formato da Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py:19 msgctxt "@text Placeholder for the username if it has been deleted" msgid "deleted user" -msgstr "" +msgstr "usuário removido" -#: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeProfileReader/__init__.py:14 -#: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:14 -#: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/__init__.py:16 +#: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeProfileReader/__init__.py:14 /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:14 /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/__init__.py:16 msgctxt "@item:inlistbox" msgid "G-code File" msgstr "Arquivo G-Code" @@ -1301,8 +1236,7 @@ msgctxt "@info:status" msgid "Parsing G-code" msgstr "Interpretando G-Code" -#: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/FlavorParser.py:352 -#: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/FlavorParser.py:506 +#: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/FlavorParser.py:352 /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/FlavorParser.py:506 msgctxt "@info:title" msgid "G-code Details" msgstr "Detalhes do G-Code" @@ -1357,8 +1291,7 @@ msgctxt "@action" msgid "Select upgrades" msgstr "Selecionar Atualizações" -#: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeGzReader/__init__.py:17 -#: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeGzWriter/__init__.py:17 +#: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeGzReader/__init__.py:17 /Users/c.lamboo/ultimaker/Cura/plugins/GCodeGzWriter/__init__.py:17 msgctxt "@item:inlistbox" msgid "Compressed G-code File" msgstr "Arquivo de G-Code Comprimido" @@ -1378,14 +1311,12 @@ msgctxt "@button" msgid "Decline and remove from account" msgstr "Recusar e remover da conta" -#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/LicenseModel.py:12 -#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/LicenseDialog.qml:79 +#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/LicenseModel.py:12 /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/LicenseDialog.qml:79 msgctxt "@button" msgid "Decline" msgstr "Recusar" -#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/LicenseModel.py:13 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:53 +#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/LicenseModel.py:13 /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:53 msgctxt "@button" msgid "Agree" msgstr "Concordar" @@ -1400,8 +1331,7 @@ msgctxt "@info:generic" msgid "Do you want to sync material and software packages with your account?" msgstr "Você quer sincronizar os pacotes de material e software com sua conta?" -#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/CloudPackageChecker.py:145 -#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/DownloadPresenter.py:95 +#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/CloudPackageChecker.py:145 /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/DownloadPresenter.py:95 msgctxt "@info:title" msgid "Changes detected from your Ultimaker account" msgstr "Alterações detectadas de sua conta Ultimaker" @@ -1483,8 +1413,7 @@ msgctxt "@info:title" msgid "Saving" msgstr "Salvando" -#: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:120 -#: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:123 +#: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:120 /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:123 #, python-brace-format msgctxt "@info:status Don't translate the XML tags or !" msgid "Could not save to {0}: {1}" @@ -1496,8 +1425,7 @@ msgctxt "@info:status Don't translate the tag {device}!" msgid "Could not find a file name when trying to write to {device}." msgstr "Não foi possível encontrar nome de arquivo ao tentar escrever em {device}." -#: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:152 -#: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:171 +#: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:152 /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:171 #, python-brace-format msgctxt "@info:status" msgid "Could not save to removable drive {0}: {1}" @@ -1572,12 +1500,8 @@ msgctxt "@info:status" msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration." msgstr "Não foi possível fatiar com o material atual visto que é incompatível com a máquina ou configuração selecionada." -#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:402 -#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:435 -#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:462 -#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:474 -#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:486 -#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:499 +#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:402 /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:435 /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:462 +#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:474 /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:486 /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:499 msgctxt "@info:title" msgid "Unable to slice" msgstr "Não foi possível fatiar" @@ -1618,8 +1542,7 @@ msgstr "" "- Estão associados a um extrusor habilitado\n" "- Não estão todos configurados como malhas de modificação" -#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:52 -#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:260 +#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:52 /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:260 msgctxt "@info:status" msgid "Processing Layers" msgstr "Processando Camadas" @@ -1629,8 +1552,7 @@ msgctxt "@info:title" msgid "Information" msgstr "Informação" -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/__init__.py:27 -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/__init__.py:33 +#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/__init__.py:27 /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/__init__.py:33 msgctxt "@item:inlistbox" msgid "3MF File" msgstr "Arquivo 3MF" @@ -1677,15 +1599,12 @@ msgctxt "@info:error Don't translate the XML tags or !" msgid "Project file {0} is suddenly inaccessible: {1}." msgstr "O arquivo de projeto {0} tornou-se subitamente inacessível: {1}." -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:651 -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:659 -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:678 +#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:651 /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:659 /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:678 msgctxt "@info:title" msgid "Can't Open Project File" msgstr "Não Foi Possível Abrir o Arquivo de Projeto" -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:658 -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:676 +#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:658 /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:676 #, python-brace-format msgctxt "@info:error Don't translate the XML tags or !" msgid "Project file {0} is corrupt: {1}." @@ -1771,8 +1690,7 @@ msgctxt "@error:not supported" msgid "GCodeWriter does not support non-text mode." msgstr "O GCodeWriter não suporta modo binário." -#: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/GCodeWriter.py:81 -#: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/GCodeWriter.py:97 +#: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/GCodeWriter.py:81 /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/GCodeWriter.py:97 msgctxt "@warning:status" msgid "Please prepare G-code before exporting." msgstr "Por favor prepare o G-Code antes de exportar." @@ -1812,8 +1730,7 @@ msgctxt "@info:title" msgid "No layers to show" msgstr "Não há camadas a exibir" -#: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:136 -#: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/SolidView.py:74 +#: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:136 /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/SolidView.py:74 msgctxt "@info:option_text" msgid "Do not show this message again" msgstr "Não mostrar essa mensagem novamente" @@ -1890,18 +1807,10 @@ msgctxt "@label" msgid "X (Width)" msgstr "X (largura)" -#: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:72 -#: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:87 -#: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:102 -#: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:201 -#: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:221 -#: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:241 -#: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:261 -#: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:279 -#: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:78 -#: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:92 -#: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:108 -#: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:123 +#: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:72 /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:87 /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:102 +#: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:201 /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:221 /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:241 +#: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:261 /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:279 /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:78 +#: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:92 /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:108 /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:123 msgctxt "@label" msgid "mm" msgstr "mm" @@ -2136,10 +2045,7 @@ msgctxt "@info:tooltip" msgid "The amount of smoothing to apply to the image." msgstr "A quantidade de suavização para aplicar na imagem." -#: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:329 -#: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:136 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/RenameDialog.qml:80 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/ColorDialog.qml:143 +#: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:329 /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:136 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/RenameDialog.qml:80 /Users/c.lamboo/ultimaker/Cura/resources/qml/ColorDialog.qml:143 msgctxt "@action:button" msgid "OK" msgstr "Ok" @@ -2186,8 +2092,7 @@ msgctxt "@label" msgid "Delete" msgstr "Remover" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:186 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:284 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:186 /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:284 msgctxt "@label" msgid "Resume" msgstr "Continuar" @@ -2202,9 +2107,7 @@ msgctxt "@label" msgid "Resuming..." msgstr "Continuando..." -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:192 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:279 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:288 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:192 /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:279 /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:288 msgctxt "@label" msgid "Pause" msgstr "Pausar" @@ -2244,8 +2147,7 @@ msgctxt "@label %1 is the name of a print job." msgid "Are you sure you want to abort %1?" msgstr "Você tem certeza que quer abortar %1?" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:237 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:326 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:237 /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:326 msgctxt "@window:title" msgid "Abort print" msgstr "Abortar impressão" @@ -2312,8 +2214,7 @@ msgctxt "@label" msgid "Override will use the specified settings with the existing printer configuration. This may result in a failed print." msgstr "Sobrepor irá usar os ajustes especificados com a configuração existente da impressora. Isto pode causar falha da impressão." -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:151 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:181 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:151 /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:181 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:178 msgctxt "@label" msgid "Glass" @@ -2329,9 +2230,7 @@ msgctxt "@label link to Connect and Cloud interfaces" msgid "Manage printer" msgstr "Gerir Impressora" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:253 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:479 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:253 /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:479 /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250 msgctxt "@info" msgid "Please update your printer's firmware to manage the queue remotely." msgstr "Por favor atualize o firmware de sua impressora parar gerir a fila remotamente." @@ -2361,8 +2260,7 @@ msgctxt "@label:status" msgid "Idle" msgstr "Ocioso" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:363 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:76 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:363 /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:76 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:78 msgctxt "@label:status" msgid "Preparing..." @@ -2406,12 +2304,12 @@ msgstr "Primeira disponível" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:117 msgctxt "@info" msgid "Monitor your printers from everywhere using Ultimaker Digital Factory" -msgstr "" +msgstr "Monitora suas impressoras de todo lugar usando a Ultimaker Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:129 msgctxt "@button" msgid "View printers in Digital Factory" -msgstr "" +msgstr "Ver impressoras na Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:44 msgctxt "@title:window" @@ -2433,9 +2331,7 @@ msgctxt "@action:button" msgid "Edit" msgstr "Editar" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:82 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:186 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:148 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:82 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:186 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:148 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:321 msgctxt "@action:button" msgid "Remove" @@ -2451,20 +2347,17 @@ msgctxt "@label" msgid "If your printer is not listed, read the network printing troubleshooting guide" msgstr "Se sua impressora não está listada, leia o guia de resolução de problemas de impressão em rede" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:186 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:247 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:186 /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:247 msgctxt "@label" msgid "Type" msgstr "Tipo" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:202 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:256 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:202 /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:256 msgctxt "@label" msgid "Firmware version" msgstr "Versão do firmware" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:212 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:266 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:212 /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:266 msgctxt "@label" msgid "Address" msgstr "Endereço" @@ -2494,8 +2387,7 @@ msgctxt "@title:window" msgid "Invalid IP address" msgstr "Endereço IP inválido" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:262 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:141 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:262 /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:141 msgctxt "@text" msgid "Please enter a valid IP address." msgstr "Por favor entre um endereço IP válido." @@ -2505,8 +2397,7 @@ msgctxt "@title:window" msgid "Printer Address" msgstr "Endereço da Impressora" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:297 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:97 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:297 /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:97 msgctxt "@label" msgid "Enter the IP address of your printer on the network." msgstr "Entre o endereço IP da sua impressora na rede." @@ -2541,17 +2432,14 @@ msgctxt "@label" msgid "Waiting for" msgstr "Esperando por" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:70 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:82 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:70 /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:82 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84 /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:88 msgctxt "@label:status" msgid "Aborted" msgstr "Abortado" -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:72 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:74 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:72 /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:74 msgctxt "@label:status" msgid "Finished" msgstr "Finalizado" @@ -2561,10 +2449,8 @@ msgctxt "@label:status" msgid "Aborting..." msgstr "Abortando..." -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:90 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:92 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:94 -#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:96 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:90 /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:92 +#: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:94 /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:96 msgctxt "@label:status" msgid "Failed" msgstr "Falhado" @@ -2689,9 +2575,7 @@ msgctxt "@description" msgid "Backup and synchronize your Cura settings." msgstr "Fazer backup e sincronizar os ajustes do Cura." -#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:47 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:180 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:212 +#: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:47 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:180 /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:212 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/GeneralOperations.qml:49 msgctxt "@button" msgid "Sign in" @@ -2767,8 +2651,7 @@ msgctxt "@label Is followed by the name of an author" msgid "By" msgstr "Por" -#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:207 -#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/OnboardBanner.qml:101 +#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:207 /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/OnboardBanner.qml:101 msgctxt "@button:label" msgid "Learn More" msgstr "Saiba mais" @@ -2838,9 +2721,7 @@ msgctxt "@button" msgid "Dismiss" msgstr "Dispensar" -#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:24 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:76 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:175 +#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:24 /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:76 /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:175 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:118 msgctxt "@button" msgid "Next" @@ -2876,8 +2757,7 @@ msgctxt "@button" msgid "Accept" msgstr "Aceitar" -#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Materials.qml:8 -#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/MissingPackages.qml:8 +#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Materials.qml:8 /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/MissingPackages.qml:8 msgctxt "@header" msgid "Install Materials" msgstr "Instalar Materiais" @@ -2922,14 +2802,12 @@ msgctxt "@header" msgid "Compatible with Material Station" msgstr "Compatível com Material Station" -#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:202 -#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:228 +#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:202 /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:228 msgctxt "@info" msgid "Yes" msgstr "Sim" -#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:202 -#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:228 +#: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:202 /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:228 msgctxt "@info" msgid "No" msgstr "Não" @@ -3107,8 +2985,7 @@ msgctxt "@action:ComboBox Save settings in a new profile" msgid "Create new" msgstr "Criar novos" -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:83 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:61 +#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:83 /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:61 msgctxt "@action:title" msgid "Summary - Cura Project" msgstr "Resumo - Projeto do Cura" @@ -3118,20 +2995,17 @@ msgctxt "@info:tooltip" msgid "How should the conflict in the machine be resolved?" msgstr "Como o conflito na máquina deve ser resolvido?" -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:165 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:97 +#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:165 /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:97 msgctxt "@action:label" msgid "Printer settings" msgstr "Ajustes da impressora" -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:176 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:106 +#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:176 /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:106 msgctxt "@action:label" msgid "Type" msgstr "Tipo" -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:193 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:121 +#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:193 /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:121 msgctxt "@action:label" msgid "Printer Group" msgstr "Grupo de Impressora" @@ -3141,34 +3015,28 @@ msgctxt "@info:tooltip" msgid "How should the conflict in the profile be resolved?" msgstr "Como o conflito no perfil deve ser resolvido?" -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:240 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:222 +#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:240 /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:222 msgctxt "@action:label" msgid "Profile settings" msgstr "Ajustes de perfil" -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:251 -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:376 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:121 +#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:251 /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:376 /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:121 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:246 msgctxt "@action:label" msgid "Name" msgstr "Nome" -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:269 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:263 +#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:269 /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:263 msgctxt "@action:label" msgid "Intent" msgstr "Objetivo" -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:287 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:230 +#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:287 /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:230 msgctxt "@action:label" msgid "Not in profile" msgstr "Ausente no perfil" -#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:293 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:235 +#: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:293 /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:235 msgctxt "@action:label" msgid "%1 override" msgid_plural "%1 overrides" @@ -3225,7 +3093,7 @@ msgstr "Carregar um projeto limpará todos os modelos da mesa de impressão." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:490 msgctxt "@label" msgid "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." -msgstr "" +msgstr "O material usado neste projeto não está instalado atualmente no Cura.
    Instale o perfil de material e reabra o projeto." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:515 msgctxt "@action:button" @@ -3287,8 +3155,7 @@ msgctxt "@title:window" msgid "Select Settings to Customize for this model" msgstr "Selecionar Ajustes a Personalizar para este modelo" -#: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:61 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:102 +#: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:61 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:102 msgctxt "@label:textbox" msgid "Filter..." msgstr "Filtrar..." @@ -3373,8 +3240,7 @@ msgctxt "@label" msgid "Firmware update failed due to missing firmware." msgstr "A atualização de firmware falhou devido a firmware não encontrado." -#: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:18 -#: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:47 +#: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:18 /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:47 msgctxt "@label" msgid "Color scheme" msgstr "Esquema de Cores" @@ -3429,8 +3295,7 @@ msgctxt "@label" msgid "Shell" msgstr "Perímetro" -#: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:249 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:74 +#: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:249 /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:74 msgctxt "@label" msgid "Infill" msgstr "Preenchimento" @@ -3552,8 +3417,7 @@ msgctxt "@action:menu" msgid "Keep this setting visible" msgstr "Manter este ajuste visível" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:476 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:467 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:476 /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:467 msgctxt "@action:menu" msgid "Configure setting visibility..." msgstr "Configurar a visibilidade dos ajustes..." @@ -3574,8 +3438,7 @@ msgctxt "@action:button" msgid "Marketplace" msgstr "Mercado" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/MainWindow/ApplicationMenu.qml:63 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:13 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/MainWindow/ApplicationMenu.qml:63 /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:13 msgctxt "@title:menu menubar:toplevel" msgid "&Settings" msgstr "Aju&stes" @@ -3595,8 +3458,7 @@ msgctxt "@title:tab" msgid "Setting Visibility" msgstr "Visibilidade dos Ajustes" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:24 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:134 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:24 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:134 msgctxt "@action:button" msgid "Defaults" msgstr "Defaults" @@ -3641,9 +3503,7 @@ msgctxt "@text" msgid "To automatically sync the material profiles with all your printers connected to Digital Factory you need to be signed in in Cura." msgstr "Para automaticamente sincronizar os perfis de material com todas as suas impressoras conectadas à Digital Factory, você precisa estar logado pelo Cura." -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:174 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:462 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:602 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:174 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:462 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:602 msgctxt "@button" msgid "Sync materials with USB" msgstr "Sincronizar materiais usando USB" @@ -3663,8 +3523,7 @@ msgctxt "@title:header" msgid "Material profiles successfully synced with the following printers:" msgstr "Perfis de material sincronizados com sucesso com as seguintes impressoras:" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:258 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:445 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:258 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:445 msgctxt "@button" msgid "Troubleshooting" msgstr "Resolução de problemas" @@ -3689,14 +3548,12 @@ msgctxt "@button" msgid "Try again" msgstr "Tentar novamente" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:477 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:712 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:477 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:712 msgctxt "@button" msgid "Done" msgstr "Feito" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:479 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:622 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:479 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:622 msgctxt "@button" msgid "Sync" msgstr "Sincronizar" @@ -3756,8 +3613,7 @@ msgctxt "@button" msgid "How to load new material profiles to my printer" msgstr "Como carregar novos perfis de material na minha impressora" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:703 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:299 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:703 /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:299 msgctxt "@button" msgid "Back" msgstr "Voltar" @@ -3867,15 +3723,12 @@ msgctxt "@title" msgid "Information" msgstr "Informação" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:647 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedPrintSetup.qml:82 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:18 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:647 /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedPrintSetup.qml:82 /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:18 msgctxt "@label" msgid "Print settings" msgstr "Ajustes de impressão" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:70 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:468 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:70 /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:468 msgctxt "@title:tab" msgid "Materials" msgstr "Materiais" @@ -3885,14 +3738,12 @@ msgctxt "@label" msgid "Materials compatible with active printer:" msgstr "Materiais compatíveis com a impressora ativa:" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:78 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:94 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:78 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:94 msgctxt "@action:button" msgid "Create new" msgstr "Criar novo" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:90 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:88 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:90 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:88 msgctxt "@action:button" msgid "Import" msgstr "Importar" @@ -3902,39 +3753,32 @@ msgctxt "@action:button" msgid "Sync with Printers" msgstr "Sincronizar com Impressoras" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:160 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:142 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:294 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:160 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:142 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:294 msgctxt "@action:button" msgid "Activate" msgstr "Ativar" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:174 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:311 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:174 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:311 msgctxt "@action:button" msgid "Duplicate" msgstr "Duplicar" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:198 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:342 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:198 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:342 msgctxt "@action:button" msgid "Export" msgstr "Exportar" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:212 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:392 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:212 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:392 msgctxt "@title:window" msgid "Confirm Remove" msgstr "Confirmar Remoção" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:215 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:393 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:215 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:393 msgctxt "@label (%1 is object name)" msgid "Are you sure you wish to remove %1? This cannot be undone!" msgstr "Tem certeza que deseja remover %1? Isto não poderá ser desfeito!" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:228 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:238 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:228 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:238 msgctxt "@title:window" msgid "Import Material" msgstr "Importar Material" @@ -3949,8 +3793,7 @@ msgctxt "@info:status Don't translate the XML tags or !" msgid "Could not import material %1: %2" msgstr "Não foi possível importar material %1: %2" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:256 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:267 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:256 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:267 msgctxt "@title:window" msgid "Export Material" msgstr "Exportar Material" @@ -3977,8 +3820,7 @@ msgid_plural "This setting has been hidden by the values of %1. Change the value msgstr[0] "Este ajuste foi mantido invisível pelo valor de %1. Altere o valor desse ajuste para tornar este ajuste visível." msgstr[1] "Este ajuste foi mantido invisível pelos valores de %1. Altere o valor desses ajustes para tornar este ajuste visível." -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:14 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:461 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:14 /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:461 msgctxt "@title:tab" msgid "General" msgstr "Geral" @@ -4021,7 +3863,7 @@ msgstr "" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:348 msgctxt "@option:check" msgid "Add icon to system tray *" -msgstr "" +msgstr "Adicionar ícone à bandeja do sistema *" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:357 msgctxt "@label" @@ -4261,8 +4103,7 @@ msgctxt "@info:tooltip" msgid "When you have made changes to a profile and switched to a different one, a dialog will be shown asking whether you want to keep your modifications or not, or you can choose a default behaviour and never show that dialog again." msgstr "Quando você faz alterações em um perfil e troca para um diferent, um diálogo aparecerá perguntando se você quer manter ou aplicar suas modificações, ou você pode forçar um comportamento default e não ter o diálogo." -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:801 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedPrintSetup.qml:36 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:801 /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedPrintSetup.qml:36 msgctxt "@label" msgid "Profiles" msgstr "Perfis" @@ -4272,8 +4113,7 @@ msgctxt "@window:text" msgid "Default behavior for changed setting values when switching to a different profile: " msgstr "Comportamento default para valores de configuração alterados ao mudar para um perfil diferente: " -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:820 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:115 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:820 /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:115 msgctxt "@option:discardOrKeep" msgid "Always ask me this" msgstr "Sempre perguntar" @@ -4358,8 +4198,7 @@ msgctxt "@info" msgid "Please provide a new name." msgstr "Por favor, escolha um novo nome." -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:17 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:466 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:17 /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:466 msgctxt "@title:tab" msgid "Printers" msgstr "Impressoras" @@ -4369,14 +4208,12 @@ msgctxt "@action:button" msgid "Add New" msgstr "Adicionar Novo" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:154 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:331 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:154 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:331 msgctxt "@action:button" msgid "Rename" msgstr "Renomear" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:57 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:470 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:57 /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:470 msgctxt "@title:tab" msgid "Profiles" msgstr "Perfis" @@ -4406,8 +4243,7 @@ msgctxt "@action:tooltip" msgid "Update profile with current settings/overrides" msgstr "Atualizar perfil com ajustes/sobreposições atuais" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:148 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:256 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:148 /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:256 msgctxt "@action:button" msgid "Discard current changes" msgstr "Descartar ajustes atuais" @@ -4437,8 +4273,7 @@ msgctxt "@info" msgid "Please provide a name for this profile." msgstr "Por favor dê um nome a este perfil." -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:352 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:368 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:352 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:368 msgctxt "@title:window" msgid "Export Profile" msgstr "Exportar Perfil" @@ -4453,8 +4288,7 @@ msgctxt "@title:window" msgid "Rename Profile" msgstr "Renomear Perfil" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:422 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:429 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:422 /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:429 msgctxt "@title:window" msgid "Import Profile" msgstr "Importar Perfil" @@ -4606,8 +4440,7 @@ msgctxt "@label" msgid "Troubleshooting" msgstr "Resolução de problemas" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:64 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/GeneralOperations.qml:19 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:64 /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/GeneralOperations.qml:19 msgctxt "@label" msgid "Sign in to the Ultimaker platform" msgstr "Entre na plataforma Ultimaker" @@ -4737,8 +4570,7 @@ msgctxt "@label" msgid "Could not connect to device." msgstr "Não foi possível conectar ao dispositivo." -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:196 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:201 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:196 /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:201 msgctxt "@label" msgid "Can't connect to your Ultimaker printer?" msgstr "Não consegue conectar à sua impressora Ultimaker?" @@ -5307,20 +5139,19 @@ msgstr "Gerenciar Visibilidade dos Ajustes..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:17 msgctxt "@title:window" msgid "Select Printer" -msgstr "" +msgstr "Selecione Impressora" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:54 msgctxt "@title:label" msgid "Compatible Printers" -msgstr "" +msgstr "Impressoras Compatíveis" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:94 msgctxt "@description" msgid "No compatible printers, that are currently online, where found." -msgstr "" +msgstr "Não foram encontradas impressoras compatíveis que estivessem online no momento." -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:16 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:635 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:16 /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:635 msgctxt "@title:window" msgid "Open file(s)" msgstr "Abrir arquivo(s)" @@ -5544,8 +5375,7 @@ msgctxt "@label Description for application dependency" msgid "Utility library, including Voronoi generation" msgstr "Biblioteca de utilidade, incluindo geração Voronoi" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:162 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:163 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:162 /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:163 msgctxt "@label Description for application dependency" msgid "Root Certificates for validating SSL trustworthiness" msgstr "Certificados-Raiz para validar confiança SSL" @@ -5588,7 +5418,7 @@ msgstr "Biblioteca de suporte para computação científica" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:171 msgctxt "@Label Description for application dependency" msgid "Python Error tracking library" -msgstr "" +msgstr "Biblioteca de rastreamento de Erros Python" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:172 msgctxt "@label Description for application dependency" @@ -5705,8 +5535,7 @@ msgctxt "@label" msgid "Support" msgstr "Suporte" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedSupportSelector.qml:44 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedSupportSelector.qml:78 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedSupportSelector.qml:44 /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedSupportSelector.qml:78 msgctxt "@label" msgid "Generate structures to support parts of the model which have overhangs. Without these structures, such parts would collapse during printing." msgstr "Gera estrutura que suportarão partes do modelo que têm seções pendentes. Sem estas estruturas, tais partes desabariam durante a impressão." @@ -5714,20 +5543,19 @@ msgstr "Gera estrutura que suportarão partes do modelo que têm seções penden #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:54 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is active and you overwrote some settings." -msgstr "" +msgstr "%1 perfil personalizado está ativo e alguns ajustes foram sobrescritos." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:68 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is overriding some settings." -msgstr "" +msgstr "%1 perfil personalizado está sobrepondo alguns ajustes." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:79 msgctxt "@info" msgid "Some settings were changed." msgstr "Alguns ajustes foram alterados." -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:78 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:254 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:78 /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:254 msgctxt "@label" msgid "Gradual infill will gradually increase the amount of infill towards the top." msgstr "Preenchimento gradual aumentará gradualmente a quantidade de preenchimento em direção ao topo." @@ -5843,14 +5671,12 @@ msgctxt "@tooltip of temperature input" msgid "The temperature to pre-heat the bed to." msgstr "A temperatura em que pré-aquecer a mesa." -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:259 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:271 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:259 /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:271 msgctxt "@button Cancel pre-heating" msgid "Cancel" msgstr "Cancelar" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:263 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:274 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:263 /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:274 msgctxt "@button" msgid "Pre-heat" msgstr "Pré-aquecer" @@ -5950,8 +5776,7 @@ msgctxt "@title:window %1 is the application name" msgid "Closing %1" msgstr "Fechando %1" -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:588 -#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:597 +#: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:588 /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:597 msgctxt "@label %1 is the application name" msgid "Are you sure you want to exit %1?" msgstr "Tem certeza que quer sair de %1?" @@ -6075,17 +5900,17 @@ msgstr "Gerenciar impressoras" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:34 msgctxt "@label" msgid "Hide all connected printers" -msgstr "" +msgstr "Omitir todas as impressoras conectadas" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:47 msgctxt "@label" msgid "Show all connected printers" -msgstr "" +msgstr "Mostrar todas as impressoras conectadas" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Other printers" -msgstr "" +msgstr "Outras impressoras" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:54 msgctxt "@label:PrintjobStatus" @@ -8014,7 +7839,8 @@ msgstr "Estágio de Preparação" #~ "\n" #~ "Select your printer from the list below:" #~ msgstr "" -#~ "Para imprimir diretamente para sua impressora pela rede, por favor se certifique que a impressora esteja conectada na rede usando um cabo de rede ou conectando sua impressora na rede WIFI. Se você não conectar o Cura à sua impressora, você ainda pode usar uma unidade USB para transferir arquivos G-Code para sua impressora.\n" +#~ "Para imprimir diretamente para sua impressora pela rede, por favor se certifique que a impressora esteja conectada na rede usando um cabo de rede ou conectando sua impressora na rede WIFI. Se você não conectar o Cura à sua impressora, você ainda pode usar uma unidade USB para transferir arquivos G-" +#~ "Code para sua impressora.\n" #~ "\n" #~ "Selecione sua impressora da lista abaixo:" diff --git a/resources/i18n/pt_BR/fdmprinter.def.json.po b/resources/i18n/pt_BR/fdmprinter.def.json.po index 7ed8c882e7..e3b7734c0c 100644 --- a/resources/i18n/pt_BR/fdmprinter.def.json.po +++ b/resources/i18n/pt_BR/fdmprinter.def.json.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Cura 5.0\n" "Report-Msgid-Bugs-To: plugins@ultimaker.com\n" "POT-Creation-Date: 2022-09-27 14:50+0000\n" -"PO-Revision-Date: 2022-07-04 03:38+0200\n" +"PO-Revision-Date: 2022-10-10 07:50+0200\n" "Last-Translator: Cláudio Sampaio \n" "Language-Team: Cláudio Sampaio \n" "Language: pt_BR\n" @@ -15,7 +15,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -"X-Generator: Poedit 3.0.1\n" +"X-Generator: Poedit 3.1.1\n" #: /fdmprinter.def.json msgctxt "machine_settings label" @@ -1058,7 +1058,7 @@ msgstr "Ordem de Parede" #: /fdmprinter.def.json msgctxt "inset_direction description" msgid "Determines the order in which walls are printed. Printing outer walls earlier helps with dimensional accuracy, as faults from inner walls cannot propagate to the outside. However printing them later allows them to stack better when overhangs are printed. When there is an uneven amount of total innner walls, the 'center last line' is always printed last." -msgstr "" +msgstr "Determina a ordem na qual paredes são impressas. Imprimir as paredes externas primeiro ajuda na acuracidade dimensional, visto que falhas das paredes internas não poderão propagar externamente. No entanto, imprimi-las no final ajuda a haver melhor empilhamento quando seções pendentes são impressas. Quando há uma quantidade ímpar de paredes internas totais, a 'última linha central' é sempre impressa por último." #: /fdmprinter.def.json msgctxt "inset_direction option inside_out" @@ -1108,7 +1108,7 @@ msgstr "Largura Mínima de Filete de Parede Ímpar" #: /fdmprinter.def.json msgctxt "min_odd_wall_line_width description" msgid "The minimum line width for middle line gap filler polyline walls. This setting determines at which model thickness we switch from printing two wall lines, to printing two outer walls and a single central wall in the middle. A higher Minimum Odd Wall Line Width leads to a higher maximum even wall line width. The maximum odd wall line width is calculated as 2 * Minimum Even Wall Line Width." -msgstr "" +msgstr "A mínima largura de extrusão para paredes multifiletes de preenchimento de vão de filete central. Este ajuste determina em que espessura de modelo nós alternamos de imprimir dois filetes de parede para imprimir duas paredes externas e uma parede central no meio. Uma Largura de Extrusão de Parede Ímpar Mínima mais alta leva a uma largura máxima de extrusão de parede par mais alta. A largura máxima de extrusão de parede ímpar é calculada como 2 * Largura Mínima de Extrusão de Parede Par." #: /fdmprinter.def.json msgctxt "fill_outline_gaps label" @@ -2607,32 +2607,32 @@ msgstr "Compensação de fluxo para a primeira camada; a quantidade de material #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 label" msgid "Initial Layer Inner Wall Flow" -msgstr "" +msgstr "Fluxo de Parede Interna da Camada Inicial" #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 description" msgid "Flow compensation on wall lines for all wall lines except the outermost one, but only for the first layer" -msgstr "" +msgstr "Compensação de fluxo nos filetes de parede para todos os filetes exceto o mais externo, mas só para a primeira camada" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 label" msgid "Initial Layer Outer Wall Flow" -msgstr "" +msgstr "Fluxo de Parede Externa da Camada Inicial" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 description" msgid "Flow compensation on the outermost wall line of the first layer." -msgstr "" +msgstr "Compensação de fluxo no filete de parede mais externo da primeira camada." #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 label" msgid "Initial Layer Bottom Flow" -msgstr "" +msgstr "Fluxo da Base da Camada Inicial" #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 description" msgid "Flow compensation on bottom lines of the first layer" -msgstr "" +msgstr "Compensação de fluxo nos filetes da base da primeira camada" #: /fdmprinter.def.json msgctxt "material_standby_temperature label" @@ -3792,12 +3792,12 @@ msgstr "O diâmetro dos galhos mais finos do suporte em árvore. Galhos mais gro #: /fdmprinter.def.json msgctxt "support_tree_max_diameter label" msgid "Tree Support Trunk Diameter" -msgstr "" +msgstr "Diâmetro de Tronco do Suporte em Árvore" #: /fdmprinter.def.json msgctxt "support_tree_max_diameter description" msgid "The diameter of the widest branches of tree support. A thicker trunk is more sturdy; a thinner trunk takes up less space on the build plate." -msgstr "" +msgstr "O diâmetro dos galhos mais espessos do suporte em árvore. Um tronco mais espesso é mais robusto; um tronco mais fino ocupa menos espaço na plataforma de impressão." #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter_angle label" @@ -6055,7 +6055,7 @@ msgstr "Queda de IA" #: /fdmprinter.def.json msgctxt "wireframe_fall_down description" msgid "Distance with which the material falls down after an upward extrusion. This distance is compensated for. Only applies to Wire Printing." -msgstr "Distância na qual o material desaba após uma extrusão ascendente. Esta distância é compensada. Somente se aplica à Impressão em Arame." +msgstr "Distância na qual o material desaba após uma extrusão ascendente. Esta distância é compensada. Somente se aplica à Impressão em Arame." #: /fdmprinter.def.json msgctxt "wireframe_drag_along label" From 96363c652a743aa8ca3ba4fdb2e40d4152571a53 Mon Sep 17 00:00:00 2001 From: jelle Spijker Date: Wed, 19 Oct 2022 01:45:18 +0200 Subject: [PATCH 020/161] Build mo translation files when creating conan package Added a build step which uses the Conan package gettext as a tool_requires to convert the po files to mo files and store these in the resources folder When on Windows the msys2 recipe is used to ensure that we have a bash environment to run gnu gettext Creating the mo files as part of the conan package will ensures that we no longer need to store them in the cura-binary-data and generate them manually. This should result in less risk of human error during the release cycle --- conanfile.py | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/conanfile.py b/conanfile.py index 2dc934e253..32482ccf2f 100644 --- a/conanfile.py +++ b/conanfile.py @@ -4,7 +4,8 @@ from pathlib import Path from jinja2 import Template from conan import ConanFile -from conan.tools.files import copy, rmdir, save +from conan.tools.files import copy, rmdir, save, mkdir +from conan.tools.microsoft import unix_path from conan.tools.env import VirtualRunEnv, Environment from conan.tools.scm import Version from conan.errors import ConanInvalidConfiguration, ConanException @@ -274,6 +275,11 @@ class CuraConan(ConanFile): for req in self._um_data()["internal_requirements"]: self.requires(req) + def build_requirements(self): + if self.settings_build.os == "Windows" and not self.conf.get("tools.microsoft.bash:path", default=False, check_type=bool): + self.tool_requires("msys2/cci.latest") + self.tool_requires("gettext/0.21") + def layout(self): self.folders.source = "." self.folders.build = "venv" @@ -284,7 +290,15 @@ class CuraConan(ConanFile): self.cpp.package.resdirs = ["resources", "plugins", "packaging", "pip_requirements"] # pip_requirements should be the last item in the list def build(self): - pass + if self.settings.os == "Windows": + self.win_bash = True # We need gettext, which requires the bash environment + + for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): + mo_file = self.build_path.joinpath(po_file.with_suffix('.mo').relative_to(self.source_path)) + mkdir(self, str(unix_path(self, mo_file.parent))) + self.run(f"msgfmt {po_file} -o {mo_file} -f", env="conanbuild") + + self.win_bash = None def generate(self): cura_run_envvars = self._cura_run_env.vars(self, scope = "run") @@ -418,12 +432,13 @@ echo "CURA_VERSION_FULL={{ cura_version_full }}" >> ${{ env_prefix }}GITHUB_ENV entitlements_file = entitlements_file if self.settings.os == "Macos" else "None") def package(self): - self.copy("cura_app.py", src = ".", dst = self.cpp.package.bindirs[0]) - self.copy("*", src = "cura", dst = self.cpp.package.libdirs[0]) - self.copy("*", src = "resources", dst = self.cpp.package.resdirs[0]) - self.copy("*", src = "plugins", dst = self.cpp.package.resdirs[1]) - self.copy("requirement*.txt", src = ".", dst = self.cpp.package.resdirs[-1]) - self.copy("*", src = "packaging", dst = self.cpp.package.resdirs[2]) + copy(self, "cura_app.py", src = self.source_path, dst = self.package_path.joinpath(self.cpp.package.bindirs[0])) + copy(self, "*", src = self.source_path.joinpath("cura"), dst = self.package_path.joinpath(self.cpp.package.libdirs[0])) + copy(self, "*", src = self.source_path.joinpath("resources"), dst = self.package_path.joinpath(self.cpp.package.resdirs[0]), excludes="*.po") + copy(self, "*", src = self.build_path.joinpath("resources"), dst = self.package_path.joinpath(self.cpp.package.resdirs[0])) + copy(self, "*", src = self.source_path.joinpath("plugins"), dst = self.package_path.joinpath(self.cpp.package.resdirs[1])) + copy(self, "requirement*.txt", src = self.source_path, dst = self.package_path.joinpath(self.cpp.package.resdirs[-1])) + copy(self, "*", src = self.source_path.joinpath("packaging"), dst = self.package_path.joinpath(self.cpp.package.resdirs[2])) def package_info(self): self.user_info.pip_requirements = "requirements.txt" From 15a39fc51bc4310d1c3d4bebf8610037b9e894fe Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Wed, 19 Oct 2022 11:33:30 +0200 Subject: [PATCH 021/161] Update italian translations --- resources/i18n/it_IT/cura.po | 2598 +++++++------- resources/i18n/it_IT/fdmextruder.def.json.po | 86 +- resources/i18n/it_IT/fdmprinter.def.json.po | 3246 +++++++++--------- 3 files changed, 2967 insertions(+), 2963 deletions(-) diff --git a/resources/i18n/it_IT/cura.po b/resources/i18n/it_IT/cura.po index ef78e258a2..9a8d4055d3 100644 --- a/resources/i18n/it_IT/cura.po +++ b/resources/i18n/it_IT/cura.po @@ -12,107 +12,107 @@ msgstr "" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" -"Language: fr_FR\n" +"Language: it_IT\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n>1;\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:87 msgctxt "@tooltip" msgid "Outer Wall" -msgstr "Paroi externe" +msgstr "Parete esterna" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:88 msgctxt "@tooltip" msgid "Inner Walls" -msgstr "Parois internes" +msgstr "Pareti interne" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:89 msgctxt "@tooltip" msgid "Skin" -msgstr "Couche extérieure" +msgstr "Rivestimento esterno" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:90 msgctxt "@tooltip" msgid "Infill" -msgstr "Remplissage" +msgstr "Riempimento" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:91 msgctxt "@tooltip" msgid "Support Infill" -msgstr "Remplissage du support" +msgstr "Riempimento del supporto" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:92 msgctxt "@tooltip" msgid "Support Interface" -msgstr "Interface du support" +msgstr "Interfaccia supporto" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:93 msgctxt "@tooltip" msgid "Support" -msgstr "Support" +msgstr "Supporto" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:94 msgctxt "@tooltip" msgid "Skirt" -msgstr "Jupe" +msgstr "Skirt" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:95 msgctxt "@tooltip" msgid "Prime Tower" -msgstr "Tour primaire" +msgstr "Torre di innesco" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:96 msgctxt "@tooltip" msgid "Travel" -msgstr "Déplacement" +msgstr "Spostamenti" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:97 msgctxt "@tooltip" msgid "Retractions" -msgstr "Rétractions" +msgstr "Retrazioni" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:98 msgctxt "@tooltip" msgid "Other" -msgstr "Autre" +msgstr "Altro" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/TextManager.py:37 #: /Users/c.lamboo/ultimaker/Cura/cura/UI/TextManager.py:63 msgctxt "@text:window" msgid "The release notes could not be opened." -msgstr "Les notes de version n'ont pas pu être ouvertes." +msgstr "Impossibile aprire le note sulla versione." #: /Users/c.lamboo/ultimaker/Cura/cura/UI/ObjectsModel.py:69 #, python-brace-format msgctxt "@label" msgid "Group #{group_nr}" -msgstr "Groupe nº {group_nr}" +msgstr "Gruppo #{group_nr}" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:57 #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:277 msgctxt "@action:button" msgid "Next" -msgstr "Suivant" +msgstr "Avanti" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:286 #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WhatsNewPagesModel.py:68 msgctxt "@action:button" msgid "Skip" -msgstr "Passer" +msgstr "Salta" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:290 #: /Users/c.lamboo/ultimaker/Cura/cura/UI/AddPrinterPagesModel.py:26 msgctxt "@action:button" msgid "Finish" -msgstr "Fin" +msgstr "Fine" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/AddPrinterPagesModel.py:17 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:61 msgctxt "@action:button" msgid "Add" -msgstr "Ajouter" +msgstr "Aggiungi" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/AddPrinterPagesModel.py:33 #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:323 @@ -126,7 +126,7 @@ msgstr "Ajouter" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ColorDialog.qml:139 msgctxt "@action:button" msgid "Cancel" -msgstr "Annuler" +msgstr "Annulla" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WhatsNewPagesModel.py:76 #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:444 @@ -135,13 +135,13 @@ msgstr "Annuler" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:188 msgctxt "@action:button" msgid "Close" -msgstr "Fermer" +msgstr "Chiudi" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:207 #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:140 msgctxt "@title:window" msgid "File Already Exists" -msgstr "Le fichier existe déjà" +msgstr "Il file esiste già" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:208 #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:141 @@ -150,18 +150,18 @@ msgctxt "@label Don't translate the XML tag !" msgid "" "The file {0} already exists. Are you sure you want to " "overwrite it?" -msgstr "Le fichier {0} existe déjà. Êtes-vous sûr de vouloir le remplacer ?" +msgstr "Il file {0} esiste già. Sei sicuro di volerlo sovrascrivere?" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:459 #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:462 msgctxt "@info:status" msgid "Invalid file URL:" -msgstr "URL de fichier invalide :" +msgstr "File URL non valido:" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/cura_empty_instance_containers.py:36 msgctxt "@info:not supported profile" msgid "Not supported" -msgstr "Non pris en charge" +msgstr "Non supportato" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/cura_empty_instance_containers.py:55 msgctxt "@info:No intent profile selected" @@ -172,30 +172,30 @@ msgstr "Default" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:219 msgctxt "@label" msgid "Nozzle" -msgstr "Buse" +msgstr "Ugello" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/MachineManager.py:889 msgctxt "@info:message Followed by a list of settings." msgid "" "Settings have been changed to match the current availability of extruders:" -msgstr "Les paramètres ont été modifiés pour correspondre aux extrudeuses actuellement disponibles :" +msgstr "Le impostazioni sono state modificate in base all’attuale disponibilità di estrusori:" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/MachineManager.py:890 msgctxt "@info:title" msgid "Settings updated" -msgstr "Paramètres mis à jour" +msgstr "Impostazioni aggiornate" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/MachineManager.py:1512 msgctxt "@info:title" msgid "Extruder(s) Disabled" -msgstr "Extrudeuse(s) désactivée(s)" +msgstr "Estrusore disabilitato" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:153 #, python-brace-format msgctxt "@info:status Don't translate the XML tags or !" msgid "" "Failed to export profile to {0}: {1}" -msgstr "Échec de l'exportation du profil vers {0} : {1}" +msgstr "Impossibile esportare il profilo su {0}: {1}" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:156 #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:166 @@ -204,7 +204,7 @@ msgstr "Échec de l'exportation du profil vers {0} : !" msgid "" "Failed to export profile to {0}: Writer plugin reported " "failure." -msgstr "Échec de l'exportation du profil vers {0} : le plug-in du générateur a rapporté une erreur." +msgstr "Impossibile esportare il profilo su {0}: Rilevata anomalia durante scrittura plugin." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:171 #, python-brace-format msgctxt "@info:status Don't translate the XML tag !" msgid "Exported profile to {0}" -msgstr "Profil exporté vers {0}" +msgstr "Profilo esportato su {0}" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:173 msgctxt "@info:title" msgid "Export succeeded" -msgstr "L'exportation a réussi" +msgstr "Esportazione riuscita" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:205 #, python-brace-format msgctxt "@info:status Don't translate the XML tags !" msgid "Failed to import profile from {0}: {1}" -msgstr "Impossible d'importer le profil depuis {0} : {1}" +msgstr "Impossibile importare il profilo da {0}: {1}" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:209 #, python-brace-format msgctxt "@info:status Don't translate the XML tags !" msgid "" "Can't import profile from {0} before a printer is added." -msgstr "Impossible d'importer le profil depuis {0} avant l'ajout d'une imprimante." +msgstr "Impossibile importare il profilo da {0} prima di aggiungere una stampante." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:224 #, python-brace-format msgctxt "@info:status Don't translate the XML tags !" msgid "No custom profile to import in file {0}" -msgstr "Aucun profil personnalisé à importer dans le fichier {0}" +msgstr "Nessun profilo personalizzato da importare nel file {0}" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:228 #, python-brace-format msgctxt "@info:status Don't translate the XML tags !" msgid "Failed to import profile from {0}:" -msgstr "Échec de l'importation du profil depuis le fichier {0} :" +msgstr "Impossibile importare il profilo da {0}:" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:252 #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:262 @@ -257,51 +257,51 @@ msgctxt "@info:status Don't translate the XML tags !" msgid "" "This profile {0} contains incorrect data, could not " "import it." -msgstr "Le profil {0} contient des données incorrectes ; échec de l'importation." +msgstr "Questo profilo {0} contiene dati errati, impossibile importarlo." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:355 #, python-brace-format msgctxt "@info:status Don't translate the XML tag !" msgid "Failed to import profile from {0}:" -msgstr "Échec de l'importation du profil depuis le fichier {0} :" +msgstr "Impossibile importare il profilo da {0}:" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:359 #, python-brace-format msgctxt "@info:status" msgid "Successfully imported profile {0}." -msgstr "Importation du profil {0} réussie." +msgstr "Profilo {0} importato correttamente." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:366 #, python-brace-format msgctxt "@info:status" msgid "File {0} does not contain any valid profile." -msgstr "Le fichier {0} ne contient pas de profil valide." +msgstr "Il file {0} non contiene nessun profilo valido." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:369 #, python-brace-format msgctxt "@info:status" msgid "Profile {0} has an unknown file type or is corrupted." -msgstr "Le profil {0} est un type de fichier inconnu ou est corrompu." +msgstr "Il profilo {0} ha un tipo di file sconosciuto o corrotto." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:443 msgctxt "@label" msgid "Custom profile" -msgstr "Personnaliser le profil" +msgstr "Profilo personalizzato" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:459 msgctxt "@info:status" msgid "Profile is missing a quality type." -msgstr "Il manque un type de qualité au profil." +msgstr "Il profilo è privo del tipo di qualità." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:463 msgctxt "@info:status" msgid "There is no active printer yet." -msgstr "Aucune imprimante n'est active pour le moment." +msgstr "Non ci sono ancora stampanti attive." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:469 msgctxt "@info:status" msgid "Unable to add the profile." -msgstr "Impossible d'ajouter le profil." +msgstr "Impossibile aggiungere il profilo." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:483 #, python-brace-format @@ -309,7 +309,7 @@ msgctxt "@info:status" msgid "" "Quality type '{0}' is not compatible with the current active machine " "definition '{1}'." -msgstr "Le type de qualité « {0} » n'est pas compatible avec la définition actuelle de la machine active « {1} »." +msgstr "Il tipo di qualità '{0}' non è compatibile con la definizione di macchina attiva corrente '{1}'." #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:488 #, python-brace-format @@ -318,69 +318,69 @@ msgid "" "Warning: The profile is not visible because its quality type '{0}' is not " "available for the current configuration. Switch to a material/nozzle " "combination that can use this quality type." -msgstr "Avertissement : le profil n'est pas visible car son type de qualité « {0} » n'est pas disponible pour la configuration actuelle. Passez à une combinaison" -" matériau/buse qui peut utiliser ce type de qualité." +msgstr "Avvertenza: il profilo non è visibile in quanto il tipo di qualità '{0}' non è disponibile per la configurazione corrente. Passare alla combinazione materiale/ugello" +" che consente di utilizzare questo tipo di qualità." #: /Users/c.lamboo/ultimaker/Cura/cura/MultiplyObjectsJob.py:30 msgctxt "@info:status" msgid "Multiplying and placing objects" -msgstr "Multiplication et placement d'objets" +msgstr "Moltiplicazione e collocazione degli oggetti" #: /Users/c.lamboo/ultimaker/Cura/cura/MultiplyObjectsJob.py:32 msgctxt "@info:title" msgid "Placing Objects" -msgstr "Placement des objets" +msgstr "Sistemazione oggetti" #: /Users/c.lamboo/ultimaker/Cura/cura/MultiplyObjectsJob.py:99 #: /Users/c.lamboo/ultimaker/Cura/cura/Arranging/ArrangeObjectsJob.py:42 msgctxt "@info:status" msgid "Unable to find a location within the build volume for all objects" -msgstr "Impossible de trouver un emplacement dans le volume d'impression pour tous les objets" +msgstr "Impossibile individuare una posizione nel volume di stampa per tutti gli oggetti" #: /Users/c.lamboo/ultimaker/Cura/cura/MultiplyObjectsJob.py:100 msgctxt "@info:title" msgid "Placing Object" -msgstr "Placement de l'objet" +msgstr "Sistemazione oggetto" #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:540 msgctxt "@info:progress" msgid "Loading machines..." -msgstr "Chargement des machines..." +msgstr "Caricamento macchine in corso..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:547 msgctxt "@info:progress" msgid "Setting up preferences..." -msgstr "Configuration des préférences..." +msgstr "Impostazione delle preferenze..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:692 msgctxt "@info:progress" msgid "Initializing Active Machine..." -msgstr "Initialisation de la machine active..." +msgstr "Inizializzazione Active Machine in corso..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:838 msgctxt "@info:progress" msgid "Initializing machine manager..." -msgstr "Initialisation du gestionnaire de machine..." +msgstr "Inizializzazione gestore macchina in corso..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:852 msgctxt "@info:progress" msgid "Initializing build volume..." -msgstr "Initialisation du volume de fabrication..." +msgstr "Inizializzazione volume di stampa in corso..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:920 msgctxt "@info:progress" msgid "Setting up scene..." -msgstr "Préparation de la scène..." +msgstr "Impostazione scena in corso..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:956 msgctxt "@info:progress" msgid "Loading interface..." -msgstr "Chargement de l'interface..." +msgstr "Caricamento interfaccia in corso..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:961 msgctxt "@info:progress" msgid "Initializing engine..." -msgstr "Initialisation du moteur..." +msgstr "Inizializzazione motore in corso..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:1289 #, python-format @@ -394,82 +394,82 @@ msgstr "%(width).1f x %(depth).1f x %(height).1f mm" #, python-brace-format msgctxt "@info:status" msgid "Only one G-code file can be loaded at a time. Skipped importing {0}" -msgstr "Un seul fichier G-Code peut être chargé à la fois. Importation de {0} sautée" +msgstr "È possibile caricare un solo file codice G per volta. Importazione saltata {0}" #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:1817 #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationService.py:217 #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:189 msgctxt "@info:title" msgid "Warning" -msgstr "Avertissement" +msgstr "Avvertenza" #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:1827 #, python-brace-format msgctxt "@info:status" msgid "Can't open any other file if G-code is loading. Skipped importing {0}" -msgstr "Impossible d'ouvrir un autre fichier si le G-Code est en cours de chargement. Importation de {0} sautée" +msgstr "Impossibile aprire altri file durante il caricamento del codice G. Importazione saltata {0}" #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationHelpers.py:89 msgctxt "@message" msgid "Could not read response." -msgstr "Impossible de lire la réponse." +msgstr "Impossibile leggere la risposta." #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationRequestHandler.py:75 msgctxt "@message" msgid "The provided state is not correct." -msgstr "L'état fourni n'est pas correct." +msgstr "Lo stato fornito non è corretto." #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationRequestHandler.py:80 msgctxt "@message" msgid "Timeout when authenticating with the account server." -msgstr "Délai d'expiration lors de l'authentification avec le serveur de compte." +msgstr "Timeout durante l'autenticazione con il server account." #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationRequestHandler.py:97 msgctxt "@message" msgid "Please give the required permissions when authorizing this application." -msgstr "Veuillez donner les permissions requises lors de l'autorisation de cette application." +msgstr "Fornire i permessi necessari al momento dell'autorizzazione di questa applicazione." #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationRequestHandler.py:104 msgctxt "@message" msgid "Something unexpected happened when trying to log in, please try again." -msgstr "Une erreur s'est produite lors de la connexion, veuillez réessayer." +msgstr "Si è verificato qualcosa di inatteso durante il tentativo di accesso, riprovare." #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationService.py:216 msgctxt "@info" msgid "" "Unable to start a new sign in process. Check if another sign in attempt is " "still active." -msgstr "Impossible de lancer une nouvelle procédure de connexion. Vérifiez si une autre tentative de connexion est toujours active." +msgstr "Impossibile avviare un nuovo processo di accesso. Verificare se è ancora attivo un altro tentativo di accesso." #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationService.py:277 msgctxt "@info" msgid "Unable to reach the Ultimaker account server." -msgstr "Impossible d’atteindre le serveur du compte Ultimaker." +msgstr "Impossibile raggiungere il server account Ultimaker." #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationService.py:278 msgctxt "@info:title" msgid "Log-in failed" -msgstr "Échec de la connexion" +msgstr "Log in non riuscito" #: /Users/c.lamboo/ultimaker/Cura/cura/Arranging/ArrangeObjectsJob.py:25 msgctxt "@info:status" msgid "Finding new location for objects" -msgstr "Recherche d'un nouvel emplacement pour les objets" +msgstr "Ricerca nuova posizione per gli oggetti" #: /Users/c.lamboo/ultimaker/Cura/cura/Arranging/ArrangeObjectsJob.py:29 msgctxt "@info:title" msgid "Finding Location" -msgstr "Recherche d'emplacement" +msgstr "Ricerca posizione" #: /Users/c.lamboo/ultimaker/Cura/cura/Arranging/ArrangeObjectsJob.py:43 msgctxt "@info:title" msgid "Can't Find Location" -msgstr "Impossible de trouver un emplacement" +msgstr "Impossibile individuare posizione" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/ExtrudersModel.py:219 msgctxt "@menuitem" msgid "Not overridden" -msgstr "Pas écrasé" +msgstr "Non sottoposto a override" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:11 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:42 @@ -484,7 +484,7 @@ msgstr "Default" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:65 msgctxt "@label" msgid "Visual" -msgstr "Visuel" +msgstr "Visivo" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:15 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:46 @@ -493,7 +493,7 @@ msgctxt "@text" msgid "" "The visual profile is designed to print visual prototypes and models with " "the intent of high visual and surface quality." -msgstr "Le profil visuel est conçu pour imprimer des prototypes et des modèles visuels dans le but d'obtenir une qualité visuelle et de surface élevée." +msgstr "Il profilo visivo è destinato alla stampa di prototipi e modelli visivi, con l'intento di ottenere una qualità visiva e della superficie elevata." #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:18 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:49 @@ -509,15 +509,15 @@ msgctxt "@text" msgid "" "The engineering profile is designed to print functional prototypes and end-" "use parts with the intent of better accuracy and for closer tolerances." -msgstr "Le profil d'ingénierie est conçu pour imprimer des prototypes fonctionnels et des pièces finales dans le but d'obtenir une meilleure précision et des tolérances" -" plus étroites." +msgstr "Il profilo di progettazione è destinato alla stampa di prototipi funzionali e di componenti d'uso finale, allo scopo di ottenere maggiore precisione e" +" tolleranze strette." #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:22 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:53 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:75 msgctxt "@label" msgid "Draft" -msgstr "Ébauche" +msgstr "Bozza" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:23 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:54 @@ -526,169 +526,170 @@ msgctxt "@text" msgid "" "The draft profile is designed to print initial prototypes and concept " "validation with the intent of significant print time reduction." -msgstr "L'ébauche du profil est conçue pour imprimer les prototypes initiaux et la validation du concept dans le but de réduire considérablement le temps d'impression." +msgstr "Il profilo bozza è destinato alla stampa dei prototipi iniziali e alla convalida dei concept, con l'intento di ridurre in modo significativo il tempo di" +" stampa." #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/QualitySettingsModel.py:182 msgctxt "@info:status" msgid "Calculated" -msgstr "Calculer" +msgstr "Calcolato" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/QualityManagementModel.py:391 msgctxt "@label" msgid "Custom profiles" -msgstr "Personnaliser les profils" +msgstr "Profili personalizzati" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/QualityManagementModel.py:426 #, python-brace-format msgctxt "@item:inlistbox" msgid "All Supported Types ({0})" -msgstr "Tous les types supportés ({0})" +msgstr "Tutti i tipi supportati ({0})" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/QualityManagementModel.py:427 msgctxt "@item:inlistbox" msgid "All Files (*)" -msgstr "Tous les fichiers (*)" +msgstr "Tutti i file (*)" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83 msgctxt "@label" msgid "Unknown" -msgstr "Inconnu" +msgstr "Sconosciuto" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:113 msgctxt "@label" msgid "" "The printer(s) below cannot be connected because they are part of a group" -msgstr "Les imprimantes ci-dessous ne peuvent pas être connectées car elles font partie d'un groupe" +msgstr "Le stampanti riportate di seguito non possono essere collegate perché fanno parte di un gruppo" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:115 msgctxt "@label" msgid "Available networked printers" -msgstr "Imprimantes en réseau disponibles" +msgstr "Stampanti disponibili in rete" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/GlobalStacksModel.py:160 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Connected printers" -msgstr "Imprimantes connectées" +msgstr "Stampanti collegate" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/GlobalStacksModel.py:160 msgctxt "@label" msgid "Preset printers" -msgstr "Imprimantes préréglées" +msgstr "Stampanti preimpostate" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/GlobalStacksModel.py:165 #, python-brace-format msgctxt "@label {0} is the name of a printer that's about to be deleted." msgid "Are you sure you wish to remove {0}? This cannot be undone!" -msgstr "Voulez-vous vraiment supprimer l'objet {0} ? Cette action est irréversible !" +msgstr "Rimuovere {0}? Questa operazione non può essere annullata!" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/MaterialManagementModel.py:232 msgctxt "@label" msgid "Custom Material" -msgstr "Matériau personnalisé" +msgstr "Materiale personalizzato" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/MaterialManagementModel.py:233 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:340 msgctxt "@label" msgid "Custom" -msgstr "Personnalisé" +msgstr "Personalizzata" #: /Users/c.lamboo/ultimaker/Cura/cura/API/Account.py:199 msgctxt "@info:title" msgid "Login failed" -msgstr "La connexion a échoué" +msgstr "Login non riuscito" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:66 msgctxt "@action:button" msgid "" "Please sync the material profiles with your printers before starting to " "print." -msgstr "Veuillez synchroniser les profils de matériaux avec vos imprimantes avant de commencer à imprimer." +msgstr "Sincronizzare i profili del materiale con le stampanti prima di iniziare a stampare." #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:67 msgctxt "@action:button" msgid "New materials installed" -msgstr "Nouveaux matériaux installés" +msgstr "Nuovi materiali installati" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:74 msgctxt "@action:button" msgid "Sync materials" -msgstr "Synchroniser les matériaux" +msgstr "Sincronizza materiali" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:82 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.py:397 #: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/SolidView.py:80 msgctxt "@action:button" msgid "Learn more" -msgstr "En savoir plus" +msgstr "Ulteriori informazioni" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:135 msgctxt "@message:text" msgid "Could not save material archive to {}:" -msgstr "Impossible d'enregistrer l'archive du matériau dans {} :" +msgstr "Impossibile salvare archivio materiali in {}:" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:136 msgctxt "@message:title" msgid "Failed to save material archive" -msgstr "Échec de l'enregistrement de l'archive des matériaux" +msgstr "Impossibile salvare archivio materiali" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:188 msgctxt "@text" msgid "Unknown error." -msgstr "Erreur inconnue." +msgstr "Errore sconosciuto." #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:104 msgctxt "@text:error" msgid "Failed to create archive of materials to sync with printers." -msgstr "Échec de la création de l'archive des matériaux à synchroniser avec les imprimantes." +msgstr "Impossibile creare archivio di materiali da sincronizzare con le stampanti." #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:111 #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:165 msgctxt "@text:error" msgid "Failed to load the archive of materials to sync it with printers." -msgstr "Impossible de charger l'archive des matériaux pour la synchroniser avec les imprimantes." +msgstr "Impossibile caricare l'archivio di materiali da sincronizzare con le stampanti." #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:143 msgctxt "@text:error" msgid "The response from Digital Factory appears to be corrupted." -msgstr "La réponse de Digital Factory semble être corrompue." +msgstr "La risposta da Digital Factory sembra essere danneggiata." #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:147 #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:151 #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:155 msgctxt "@text:error" msgid "The response from Digital Factory is missing important information." -msgstr "Il manque des informations importantes dans la réponse de Digital Factory." +msgstr "Nella risposta da Digital Factory mancano informazioni importanti." #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:218 msgctxt "@text:error" msgid "" "Failed to connect to Digital Factory to sync materials with some of the " "printers." -msgstr "Échec de la connexion à Digital Factory pour synchroniser les matériaux avec certaines imprimantes." +msgstr "Impossibile connettersi a Digital Factory per sincronizzare i materiali con alcune delle stampanti." #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:232 msgctxt "@text:error" msgid "Failed to connect to Digital Factory." -msgstr "Échec de la connexion à Digital Factory." +msgstr "Impossibile connettersi a Digital Factory." #: /Users/c.lamboo/ultimaker/Cura/cura/BuildVolume.py:100 msgctxt "@info:status" msgid "" "The build volume height has been reduced due to the value of the \"Print " "Sequence\" setting to prevent the gantry from colliding with printed models." -msgstr "La hauteur du volume d'impression a été réduite en raison de la valeur du paramètre « Séquence d'impression » afin d'éviter que le portique ne heurte les" -" modèles imprimés." +msgstr "L’altezza del volume di stampa è stata ridotta a causa del valore dell’impostazione \"Sequenza di stampa” per impedire la collisione del gantry con i modelli" +" stampati." #: /Users/c.lamboo/ultimaker/Cura/cura/BuildVolume.py:103 msgctxt "@info:title" msgid "Build Volume" -msgstr "Volume d'impression" +msgstr "Volume di stampa" #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:115 msgctxt "@info:backup_failed" msgid "Could not create archive from user data directory: {}" -msgstr "Impossible de créer une archive à partir du répertoire de données de l'utilisateur : {}" +msgstr "Impossibile creare un archivio dalla directory dei dati utente: {}" #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:122 #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:159 @@ -696,27 +697,27 @@ msgstr "Impossible de créer une archive à partir du répertoire de données de #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:126 msgctxt "@info:title" msgid "Backup" -msgstr "Sauvegarde" +msgstr "Backup" #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:134 msgctxt "@info:backup_failed" msgid "Tried to restore a Cura backup without having proper data or meta data." -msgstr "A essayé de restaurer une sauvegarde Cura sans disposer de données ou de métadonnées appropriées." +msgstr "Tentativo di ripristinare un backup di Cura senza dati o metadati appropriati." #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:145 msgctxt "@info:backup_failed" msgid "Tried to restore a Cura backup that is higher than the current version." -msgstr "A essayé de restaurer une sauvegarde Cura supérieure à la version actuelle." +msgstr "Tentativo di ripristinare un backup di Cura di versione superiore rispetto a quella corrente." #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:158 msgctxt "@info:backup_failed" msgid "The following error occurred while trying to restore a Cura backup:" -msgstr "L'erreur suivante s'est produite lors de la restauration d'une sauvegarde Cura :" +msgstr "Nel tentativo di ripristinare un backup di Cura, si è verificato il seguente errore:" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:107 msgctxt "@title:window" msgid "Cura can't start" -msgstr "Échec du démarrage de Cura" +msgstr "Impossibile avviare Cura" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:113 msgctxt "@label crash message" @@ -731,35 +732,35 @@ msgid "" "

    Please send us this Crash Report to fix the problem.\n" " " -msgstr "

    Oups, un problème est survenu dans Ultimaker Cura.

    \n

    Une erreur irrécupérable est survenue lors du démarrage. Elle" -" peut avoir été causée par des fichiers de configuration incorrects. Nous vous suggérons de sauvegarder et de réinitialiser votre configuration.

    \n " -"

    Les sauvegardes se trouvent dans le dossier de configuration.

    \n

    Veuillez nous envoyer ce rapport d'incident pour que nous" -" puissions résoudre le problème.

    \n " +msgstr "

    Oops, Ultimaker Cura ha rilevato qualcosa che non sembra corretto.

    \n

    Abbiamo riscontrato un errore irrecuperabile durante" +" l’avvio. È stato probabilmente causato da alcuni file di configurazione errati. Suggeriamo di effettuare il backup e ripristinare la configurazione.

    \n" +"

    I backup sono contenuti nella cartella configurazione.

    \n

    Si prega di inviare questo Rapporto su crash" +" per correggere il problema.

    \n " #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:122 msgctxt "@action:button" msgid "Send crash report to Ultimaker" -msgstr "Envoyer le rapport de d'incident à Ultimaker" +msgstr "Inviare il rapporto su crash a Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:125 msgctxt "@action:button" msgid "Show detailed crash report" -msgstr "Afficher le rapport d'incident détaillé" +msgstr "Mostra il rapporto su crash dettagliato" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:129 msgctxt "@action:button" msgid "Show configuration folder" -msgstr "Afficher le dossier de configuration" +msgstr "Mostra cartella di configurazione" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:140 msgctxt "@action:button" msgid "Backup and Reset Configuration" -msgstr "Sauvegarder et réinitialiser la configuration" +msgstr "Backup e reset configurazione" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:171 msgctxt "@title:window" msgid "Crash Report" -msgstr "Rapport d'incident" +msgstr "Rapporto su crash" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:190 msgctxt "@label crash message" @@ -769,48 +770,48 @@ msgid "" "

    Please use the \"Send report\" button to post a bug report " "automatically to our servers

    \n" " " -msgstr "

    Une erreur fatale est survenue dans Cura. Veuillez nous envoyer ce rapport d'incident pour résoudre le problème

    \n

    Veuillez" -" utiliser le bouton « Envoyer rapport » pour publier automatiquement un rapport d'erreur sur nos serveurs

    \n " +msgstr "

    Si è verificato un errore fatale in Cura. Si prega di inviare questo Rapporto su crash per correggere il problema

    \n

    Usare il" +" pulsante “Invia report" per inviare automaticamente una segnalazione errore ai nostri server

    \n " #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:198 msgctxt "@title:groupbox" msgid "System information" -msgstr "Informations système" +msgstr "Informazioni di sistema" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:207 msgctxt "@label unknown version of Cura" msgid "Unknown" -msgstr "Inconnu" +msgstr "Sconosciuto" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:228 msgctxt "@label Cura version number" msgid "Cura version" -msgstr "Version Cura" +msgstr "Versione Cura" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:229 msgctxt "@label" msgid "Cura language" -msgstr "Langue de Cura" +msgstr "Lingua Cura" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:230 msgctxt "@label" msgid "OS language" -msgstr "Langue du SE" +msgstr "Lingua sistema operativo" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:231 msgctxt "@label Type of platform" msgid "Platform" -msgstr "Plate-forme" +msgstr "Piattaforma" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:232 msgctxt "@label" msgid "Qt version" -msgstr "Version Qt" +msgstr "Versione Qt" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:233 msgctxt "@label" msgid "PyQt version" -msgstr "Version PyQt" +msgstr "Versione PyQt" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:234 msgctxt "@label OpenGL version" @@ -826,152 +827,152 @@ msgstr "Non ancora inizializzato" #, python-brace-format msgctxt "@label OpenGL version" msgid "
  • OpenGL Version: {version}
  • " -msgstr "
  • Version OpenGL : {version}
  • " +msgstr "
  • Versione OpenGL: {version}
  • " #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:268 #, python-brace-format msgctxt "@label OpenGL vendor" msgid "
  • OpenGL Vendor: {vendor}
  • " -msgstr "
  • Revendeur OpenGL : {vendor}
  • " +msgstr "
  • Fornitore OpenGL: {vendor}
  • " #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:269 #, python-brace-format msgctxt "@label OpenGL renderer" msgid "
  • OpenGL Renderer: {renderer}
  • " -msgstr "
  • Moteur de rendu OpenGL : {renderer}
  • " +msgstr "
  • Renderer OpenGL: {renderer}
  • " #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:304 msgctxt "@title:groupbox" msgid "Error traceback" -msgstr "Retraçage de l'erreur" +msgstr "Analisi errori" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:390 msgctxt "@title:groupbox" msgid "Logs" -msgstr "Journaux" +msgstr "Registri" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:418 msgctxt "@action:button" msgid "Send report" -msgstr "Envoyer rapport" +msgstr "Invia report" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsAction.py:32 msgctxt "@action" msgid "Machine Settings" -msgstr "Paramètres de la machine" +msgstr "Impostazioni macchina" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/__init__.py:14 msgctxt "@item:inlistbox" msgid "JPG Image" -msgstr "Image JPG" +msgstr "Immagine JPG" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/__init__.py:18 msgctxt "@item:inlistbox" msgid "JPEG Image" -msgstr "Image JPEG" +msgstr "Immagine JPEG" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/__init__.py:22 msgctxt "@item:inlistbox" msgid "PNG Image" -msgstr "Image PNG" +msgstr "Immagine PNG" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/__init__.py:26 msgctxt "@item:inlistbox" msgid "BMP Image" -msgstr "Image BMP" +msgstr "Immagine BMP" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/__init__.py:30 msgctxt "@item:inlistbox" msgid "GIF Image" -msgstr "Image GIF" +msgstr "Immagine GIF" #: /Users/c.lamboo/ultimaker/Cura/plugins/XRayView/__init__.py:12 msgctxt "@item:inlistbox" msgid "X-Ray view" -msgstr "Visualisation par rayons X" +msgstr "Vista ai raggi X" #: /Users/c.lamboo/ultimaker/Cura/plugins/X3DReader/__init__.py:13 msgctxt "@item:inlistbox" msgid "X3D File" -msgstr "Fichier X3D" +msgstr "File X3D" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraProfileReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraProfileWriter/__init__.py:14 msgctxt "@item:inlistbox" msgid "Cura Profile" -msgstr "Profil Cura" +msgstr "Profilo Cura" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:35 msgctxt "@item:inmenu" msgid "Post Processing" -msgstr "Post-traitement" +msgstr "Post-elaborazione" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:36 msgctxt "@item:inmenu" msgid "Modify G-Code" -msgstr "Modifier le G-Code" +msgstr "Modifica codice G" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/MeshFormatHandler.py:118 #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:66 msgctxt "@info:status" msgid "There are no file formats available to write with!" -msgstr "Aucun format de fichier n'est disponible pour écriture !" +msgstr "Non ci sono formati di file disponibili per la scrittura!" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadQueueFullMessage.py:16 msgctxt "@info:status" msgid "Print job queue is full. The printer can't accept a new job." -msgstr "La file d'attente pour les tâches d'impression est pleine. L'imprimante ne peut pas accepter une nouvelle tâche." +msgstr "La coda dei processi di stampa è piena. La stampante non può accettare un nuovo processo." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadQueueFullMessage.py:17 msgctxt "@info:title" msgid "Queue Full" -msgstr "La file d'attente est pleine" +msgstr "Coda piena" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadErrorMessage.py:15 msgctxt "@info:text" msgid "Could not upload the data to the printer." -msgstr "Impossible de transférer les données à l'imprimante." +msgstr "Impossibile caricare i dati sulla stampante." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadErrorMessage.py:16 msgctxt "@info:title" msgid "Network error" -msgstr "Erreur de réseau" +msgstr "Errore di rete" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NewPrinterDetectedMessage.py:13 msgctxt "info:status" msgid "New printer detected from your Ultimaker account" msgid_plural "New printers detected from your Ultimaker account" -msgstr[0] "Nouvelle imprimante détectée à partir de votre compte Ultimaker" -msgstr[1] "Nouvelles imprimantes détectées à partir de votre compte Ultimaker" +msgstr[0] "Nuova stampante rilevata dall'account Ultimaker" +msgstr[1] "Nuove stampanti rilevate dall'account Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NewPrinterDetectedMessage.py:29 #, python-brace-format msgctxt "info:status Filled in with printer name and printer model." msgid "Adding printer {name} ({model}) from your account" -msgstr "Ajout de l'imprimante {name} ({model}) à partir de votre compte" +msgstr "Aggiunta della stampante {name} ({model}) dall'account" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NewPrinterDetectedMessage.py:48 #, python-brace-format msgctxt "info:{0} gets replaced by a number of printers" msgid "... and {0} other" msgid_plural "... and {0} others" -msgstr[0] "... et {0} autre" -msgstr[1] "... et {0} autres" +msgstr[0] "... e {0} altra" +msgstr[1] "... e altre {0}" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NewPrinterDetectedMessage.py:57 msgctxt "info:status" msgid "Printers added from Digital Factory:" -msgstr "Imprimantes ajoutées à partir de Digital Factory :" +msgstr "Stampanti aggiunte da Digital Factory:" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadBlockedMessage.py:15 msgctxt "@info:status" msgid "Please wait until the current job has been sent." -msgstr "Veuillez patienter jusqu'à ce que la tâche en cours ait été envoyée." +msgstr "Attendere che sia stato inviato il processo corrente." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadBlockedMessage.py:16 msgctxt "@info:title" msgid "Print error" -msgstr "Erreur d'impression" +msgstr "Errore di stampa" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:25 #, python-brace-format @@ -980,50 +981,50 @@ msgid "" "Your printer {printer_name} could be connected via cloud.\n" " Manage your print queue and monitor your prints from anywhere connecting " "your printer to Digital Factory" -msgstr "Votre imprimante {printer_name} pourrait être connectée via le cloud.\n Gérez votre file d'attente d'impression et surveillez vos impressions depuis" -" n'importe où en connectant votre imprimante à Digital Factory" +msgstr "Impossibile connettere la stampante {printer_name} tramite cloud.\n Gestisci la coda di stampa e monitora le stampe da qualsiasi posizione collegando" +" la stampante a Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:26 msgctxt "@info:title" msgid "Are you ready for cloud printing?" -msgstr "Êtes-vous prêt pour l'impression dans le cloud ?" +msgstr "Pronto per la stampa tramite cloud?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:30 msgctxt "@action" msgid "Get started" -msgstr "Prise en main" +msgstr "Per iniziare" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:31 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:24 msgctxt "@action" msgid "Learn more" -msgstr "En savoir plus" +msgstr "Ulteriori informazioni" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:18 msgctxt "@info:status" msgid "" "You will receive a confirmation via email when the print job is approved" -msgstr "Vous recevrez une confirmation par e-mail lorsque la tâche d'impression sera approuvée" +msgstr "Dopo l'approvazione del processo di stampa, riceverai una conferma via e-mail" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:19 msgctxt "@info:title" msgid "The print job was successfully submitted" -msgstr "La tâche d'impression a bien été soumise" +msgstr "Il processo di stampa è stato inviato" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:22 msgctxt "@action" msgid "Manage print jobs" -msgstr "Gérer les tâches d'impression" +msgstr "Gestisci processi di stampa" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:15 msgctxt "@info:status" msgid "Sending Print Job" -msgstr "Lancement d'une tâche d'impression" +msgstr "Invio di un processo di stampa" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:16 msgctxt "@info:status" msgid "Uploading print job to printer." -msgstr "Téléchargement de la tâche d'impression sur l'imprimante." +msgstr "Caricamento del processo di stampa sulla stampante." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/MaterialSyncMessage.py:24 #, python-brace-format @@ -1031,12 +1032,12 @@ msgctxt "@info:status" msgid "" "Cura has detected material profiles that were not yet installed on the host " "printer of group {0}." -msgstr "Cura a détecté des profils de matériau qui ne sont pas encore installés sur l'imprimante hôte du groupe {0}." +msgstr "Cura ha rilevato dei profili di materiale non ancora installati sulla stampante host del gruppo {0}." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/MaterialSyncMessage.py:26 msgctxt "@info:title" msgid "Sending materials to printer" -msgstr "Envoi de matériaux à l'imprimante" +msgstr "Invio dei materiali alla stampante" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NotClusterHostMessage.py:27 #, python-brace-format @@ -1044,24 +1045,24 @@ msgctxt "@info:status" msgid "" "You are attempting to connect to {0} but it is not the host of a group. You " "can visit the web page to configure it as a group host." -msgstr "Vous tentez de vous connecter à {0} mais ce n'est pas l'hôte de groupe. Vous pouvez visiter la page Web pour la configurer en tant qu'hôte de groupe." +msgstr "Tentativo di connessione a {0} in corso, che non è l'host di un gruppo. È possibile visitare la pagina web per configurarla come host del gruppo." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NotClusterHostMessage.py:30 msgctxt "@info:title" msgid "Not a group host" -msgstr "Pas un hôte de groupe" +msgstr "Non host del gruppo" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NotClusterHostMessage.py:36 msgctxt "@action" msgid "Configure group" -msgstr "Configurer le groupe" +msgstr "Configurare il gruppo" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:16 msgctxt "info:status" msgid "This printer is not linked to the Digital Factory:" msgid_plural "These printers are not linked to the Digital Factory:" -msgstr[0] "Cette imprimante n'est pas associée à Digital Factory :" -msgstr[1] "Ces imprimantes ne sont pas associées à Digital Factory :" +msgstr[0] "Questa stampante non è collegata a Digital Factory:" +msgstr[1] "Queste stampanti non sono collegate a Digital Factory:" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:22 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:422 @@ -1073,117 +1074,117 @@ msgstr "Ultimaker Digital Factory" #, python-brace-format msgctxt "info:status" msgid "To establish a connection, please visit the {website_link}" -msgstr "Pour établir une connexion, veuillez visiter le site {website_link}" +msgstr "Per stabilire una connessione, visitare {website_link}" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:32 msgctxt "info:status" msgid "A cloud connection is not available for a printer" msgid_plural "A cloud connection is not available for some printers" -msgstr[0] "Une connexion cloud n'est pas disponible pour une imprimante" -msgstr[1] "Une connexion cloud n'est pas disponible pour certaines imprimantes" +msgstr[0] "Non è disponibile una connessione cloud per una stampante" +msgstr[1] "Non è disponibile una connessione cloud per alcune stampanti" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:40 msgctxt "@action:button" msgid "Keep printer configurations" -msgstr "Conserver les configurations d'imprimante" +msgstr "Mantenere le configurazioni delle stampanti" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:45 msgctxt "@action:button" msgid "Remove printers" -msgstr "Supprimer des imprimantes" +msgstr "Rimuovere le stampanti" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/LegacyDeviceNoLongerSupportedMessage.py:18 msgctxt "@info:status" msgid "" "You are attempting to connect to a printer that is not running Ultimaker " "Connect. Please update the printer to the latest firmware." -msgstr "Vous tentez de vous connecter à une imprimante qui n'exécute pas Ultimaker Connect. Veuillez mettre à jour l'imprimante avec le dernier micrologiciel." +msgstr "Si sta tentando di connettersi a una stampante che non esegue Ultimaker Connect. Aggiornare la stampante con il firmware più recente." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/LegacyDeviceNoLongerSupportedMessage.py:21 msgctxt "@info:title" msgid "Update your printer" -msgstr "Mettre à jour votre imprimante" +msgstr "Aggiornare la stampante" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadSuccessMessage.py:15 msgctxt "@info:status" msgid "Print job was successfully sent to the printer." -msgstr "L'envoi de la tâche d'impression à l'imprimante a réussi." +msgstr "Processo di stampa inviato con successo alla stampante." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadSuccessMessage.py:16 msgctxt "@info:title" msgid "Data Sent" -msgstr "Données envoyées" +msgstr "Dati inviati" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Network/LocalClusterOutputDevice.py:62 msgctxt "@action:button Preceded by 'Ready to'." msgid "Print over network" -msgstr "Imprimer sur le réseau" +msgstr "Stampa sulla rete" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Network/LocalClusterOutputDevice.py:63 msgctxt "@properties:tooltip" msgid "Print over network" -msgstr "Imprimer sur le réseau" +msgstr "Stampa sulla rete" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Network/LocalClusterOutputDevice.py:64 msgctxt "@info:status" msgid "Connected over the network" -msgstr "Connecté sur le réseau" +msgstr "Collegato alla rete" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Utils.py:27 msgctxt "@info:status" msgid "tomorrow" -msgstr "demain" +msgstr "domani" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Utils.py:30 msgctxt "@info:status" msgid "today" -msgstr "aujourd'hui" +msgstr "oggi" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/UltimakerNetworkedPrinterAction.py:28 msgctxt "@action" msgid "Connect via Network" -msgstr "Connecter via le réseau" +msgstr "Collega tramite rete" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/AbstractCloudOutputDevice.py:80 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:162 msgctxt "@action:button" msgid "Print via cloud" -msgstr "Imprimer via le cloud" +msgstr "Stampa tramite cloud" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/AbstractCloudOutputDevice.py:81 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:163 msgctxt "@properties:tooltip" msgid "Print via cloud" -msgstr "Imprimer via le cloud" +msgstr "Stampa tramite cloud" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/AbstractCloudOutputDevice.py:82 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:164 msgctxt "@info:status" msgid "Connected via cloud" -msgstr "Connecté via le cloud" +msgstr "Collegato tramite cloud" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:425 #, python-brace-format msgctxt "@message {printer_name} is replaced with the name of the printer" msgid "{printer_name} will be removed until the next account sync." -msgstr "L'imprimante {printer_name} sera supprimée jusqu'à la prochaine synchronisation de compte." +msgstr "{printer_name} sarà rimossa fino alla prossima sincronizzazione account." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:426 #, python-brace-format msgctxt "@message {printer_name} is replaced with the name of the printer" msgid "To remove {printer_name} permanently, visit {digital_factory_link}" -msgstr "Pour supprimer {printer_name} définitivement, visitez le site {digital_factory_link}" +msgstr "Per rimuovere definitivamente {printer_name}, visitare {digital_factory_link}" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:427 #, python-brace-format msgctxt "@message {printer_name} is replaced with the name of the printer" msgid "Are you sure you want to remove {printer_name} temporarily?" -msgstr "Voulez-vous vraiment supprimer {printer_name} temporairement ?" +msgstr "Rimuovere temporaneamente {printer_name}?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:474 msgctxt "@title:window" msgid "Remove printers?" -msgstr "Supprimer des imprimantes ?" +msgstr "Rimuovere le stampanti?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:477 #, python-brace-format @@ -1196,8 +1197,8 @@ msgid_plural "" "You are about to remove {0} printers from Cura. This action cannot be " "undone.\n" "Are you sure you want to continue?" -msgstr[0] "Vous êtes sur le point de supprimer {0} imprimante de Cura. Cette action est irréversible.\nVoulez-vous vraiment continuer ?" -msgstr[1] "Vous êtes sur le point de supprimer {0} imprimantes de Cura. Cette action est irréversible.\nVoulez-vous vraiment continuer ?" +msgstr[0] "Si sta per rimuovere {0} stampante da Cura. Questa azione non può essere annullata.\nContinuare?" +msgstr[1] "Si stanno per rimuovere {0} stampanti da Cura. Questa azione non può essere annullata.\nContinuare?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:484 msgctxt "@label" @@ -1205,112 +1206,112 @@ msgid "" "You are about to remove all printers from Cura. This action cannot be " "undone.\n" "Are you sure you want to continue?" -msgstr "Vous êtes sur le point de supprimer toutes les imprimantes de Cura. Cette action est irréversible.\nVoulez-vous vraiment continuer ?" +msgstr "Si stanno per rimuovere tutte le stampanti da Cura. Questa azione non può essere annullata. \nContinuare?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:276 msgctxt "@action:button" msgid "Monitor print" -msgstr "Surveiller l'impression" +msgstr "Monitora stampa" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:278 msgctxt "@action:tooltip" msgid "Track the print in Ultimaker Digital Factory" -msgstr "Suivre l'impression dans Ultimaker Digital Factory" +msgstr "Traccia la stampa in Ultimaker Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:298 #, python-brace-format msgctxt "@error:send" msgid "Unknown error code when uploading print job: {0}" -msgstr "Code d'erreur inconnu lors du téléchargement d'une tâche d'impression : {0}" +msgstr "Codice di errore sconosciuto durante il caricamento del processo di stampa: {0}" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/__init__.py:28 msgctxt "@item:inlistbox" msgid "3MF file" -msgstr "Fichier 3MF" +msgstr "File 3MF" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/__init__.py:36 msgctxt "@item:inlistbox" msgid "Cura Project 3MF file" -msgstr "Projet Cura fichier 3MF" +msgstr "File 3MF Progetto Cura" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWriter.py:240 msgctxt "@error:zip" msgid "Error writing 3mf file." -msgstr "Erreur d'écriture du fichier 3MF." +msgstr "Errore scrittura file 3MF." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:31 msgctxt "@error:zip" msgid "3MF Writer plug-in is corrupt." -msgstr "Le plug-in 3MF Writer est corrompu." +msgstr "Plug-in Writer 3MF danneggiato." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:37 msgctxt "@error" msgid "There is no workspace yet to write. Please add a printer first." -msgstr "Il n'y a pas encore d'espace de travail à écrire. Veuillez d'abord ajouter une imprimante." +msgstr "Ancora nessuna area di lavoro da scrivere. Aggiungere innanzitutto una stampante." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:64 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:97 msgctxt "@error:zip" msgid "No permission to write the workspace here." -msgstr "Aucune autorisation d'écrire l'espace de travail ici." +msgstr "Nessuna autorizzazione di scrittura dell'area di lavoro qui." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:101 msgctxt "@error:zip" msgid "" "The operating system does not allow saving a project file to this location " "or with this file name." -msgstr "Le système d'exploitation ne permet pas d'enregistrer un fichier de projet à cet emplacement ou avec ce nom de fichier." +msgstr "Il sistema operativo non consente di salvare un file di progetto in questa posizione o con questo nome file." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/DriveApiService.py:86 #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26 msgctxt "@info:backup_status" msgid "There was an error trying to restore your backup." -msgstr "Une erreur s’est produite lors de la tentative de restauration de votre sauvegarde." +msgstr "Si è verificato un errore cercando di ripristinare il backup." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:69 msgctxt "@item:inmenu" msgid "Manage backups" -msgstr "Gérer les sauvegardes" +msgstr "Gestione backup" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:25 msgctxt "@info:title" msgid "Backups" -msgstr "Sauvegardes" +msgstr "Backup" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:26 msgctxt "@info:backup_status" msgid "There was an error while uploading your backup." -msgstr "Une erreur s’est produite lors du téléchargement de votre sauvegarde." +msgstr "Si è verificato un errore durante il caricamento del backup." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:46 msgctxt "@info:backup_status" msgid "Creating your backup..." -msgstr "Création de votre sauvegarde..." +msgstr "Creazione del backup in corso..." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:55 msgctxt "@info:backup_status" msgid "There was an error while creating your backup." -msgstr "Une erreur s'est produite lors de la création de votre sauvegarde." +msgstr "Si è verificato un errore durante la creazione del backup." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:59 msgctxt "@info:backup_status" msgid "Uploading your backup..." -msgstr "Téléchargement de votre sauvegarde..." +msgstr "Caricamento backup in corso..." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:69 msgctxt "@info:backup_status" msgid "Your backup has finished uploading." -msgstr "Le téléchargement de votre sauvegarde est terminé." +msgstr "Caricamento backup completato." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:103 msgctxt "@error:file_size" msgid "The backup exceeds the maximum file size." -msgstr "La sauvegarde dépasse la taille de fichier maximale." +msgstr "Il backup supera la dimensione file massima." #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/SliceInfo.py:95 msgctxt "@text" msgid "Unable to read example data file." -msgstr "Impossible de lire le fichier de données d'exemple." +msgstr "Impossibile leggere il file di dati di esempio." #: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:62 #: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:78 @@ -1320,54 +1321,54 @@ msgstr "Impossible de lire le fichier de données d'exemple." #: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:178 msgctxt "@info:error" msgid "Can't write to UFP file:" -msgstr "Impossible d'écrire dans le fichier UFP :" +msgstr "Impossibile scrivere nel file UFP:" #: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/__init__.py:28 #: /Users/c.lamboo/ultimaker/Cura/plugins/UFPReader/__init__.py:22 msgctxt "@item:inlistbox" msgid "Ultimaker Format Package" -msgstr "Ultimaker Format Package" +msgstr "Pacchetto formato Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py:19 msgctxt "@text Placeholder for the username if it has been deleted" msgid "deleted user" -msgstr "utilisateur supprimé" +msgstr "utente eliminato" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeProfileReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/__init__.py:16 msgctxt "@item:inlistbox" msgid "G-code File" -msgstr "Fichier GCode" +msgstr "File G-Code" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/FlavorParser.py:350 msgctxt "@info:status" msgid "Parsing G-code" -msgstr "Analyse du G-Code" +msgstr "Parsing codice G" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/FlavorParser.py:352 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/FlavorParser.py:506 msgctxt "@info:title" msgid "G-code Details" -msgstr "Détails G-Code" +msgstr "Dettagli codice G" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/FlavorParser.py:504 msgctxt "@info:generic" msgid "" "Make sure the g-code is suitable for your printer and printer configuration " "before sending the file to it. The g-code representation may not be accurate." -msgstr "Assurez-vous que le g-code est adapté à votre imprimante et à la configuration de l'imprimante avant d'y envoyer le fichier. La représentation du g-code" -" peut ne pas être exacte." +msgstr "Verifica che il codice G sia idoneo alla tua stampante e alla sua configurazione prima di trasmettere il file. La rappresentazione del codice G potrebbe" +" non essere accurata." #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:18 msgctxt "@item:inlistbox" msgid "G File" -msgstr "Fichier G" +msgstr "File G" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:15 msgctxt "@item:inlistbox 'Open' is part of the name of this file format." msgid "Open Compressed Triangle Mesh" -msgstr "Ouvrir le maillage triangulaire compressé" +msgstr "Open Compressed Triangle Mesh" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:19 msgctxt "@item:inlistbox" @@ -1377,251 +1378,251 @@ msgstr "COLLADA Digital Asset Exchange" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:23 msgctxt "@item:inlistbox" msgid "glTF Binary" -msgstr "glTF binaire" +msgstr "glTF Binary" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:27 msgctxt "@item:inlistbox" msgid "glTF Embedded JSON" -msgstr "glTF incorporé JSON" +msgstr "glTF Embedded JSON" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:36 msgctxt "@item:inlistbox" msgid "Stanford Triangle Format" -msgstr "Format Triangle de Stanford" +msgstr "Stanford Triangle Format" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:40 msgctxt "@item:inlistbox" msgid "Compressed COLLADA Digital Asset Exchange" -msgstr "COLLADA Digital Asset Exchange compressé" +msgstr "Compressed COLLADA Digital Asset Exchange" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.py:24 msgctxt "@action" msgid "Level build plate" -msgstr "Nivellement du plateau" +msgstr "Livella piano di stampa" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelection.py:21 msgctxt "@action" msgid "Select upgrades" -msgstr "Sélectionner les mises à niveau" +msgstr "Seleziona aggiornamenti" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeGzReader/__init__.py:17 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeGzWriter/__init__.py:17 msgctxt "@item:inlistbox" msgid "Compressed G-code File" -msgstr "Fichier G-Code compressé" +msgstr "File G-Code compresso" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/RemotePackageList.py:117 msgctxt "@info:error" msgid "Could not interpret the server's response." -msgstr "Impossible d'interpréter la réponse du serveur." +msgstr "Impossibile interpretare la risposta del server." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/RemotePackageList.py:148 msgctxt "@info:error" msgid "Could not reach Marketplace." -msgstr "Impossible d'accéder à la Marketplace." +msgstr "Impossibile raggiungere Marketplace." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/LicensePresenter.py:42 msgctxt "@button" msgid "Decline and remove from account" -msgstr "Décliner et supprimer du compte" +msgstr "Rifiuta e rimuovi dall'account" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/LicenseModel.py:12 #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/LicenseDialog.qml:79 msgctxt "@button" msgid "Decline" -msgstr "Refuser" +msgstr "Non accetto" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/LicenseModel.py:13 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:53 msgctxt "@button" msgid "Agree" -msgstr "Accepter" +msgstr "Accetta" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/LicenseModel.py:77 msgctxt "@title:window" msgid "Plugin License Agreement" -msgstr "Plug-in d'accord de licence" +msgstr "Accordo di licenza plugin" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/CloudPackageChecker.py:144 msgctxt "@info:generic" msgid "Do you want to sync material and software packages with your account?" -msgstr "Vous souhaitez synchroniser du matériel et des logiciels avec votre compte ?" +msgstr "Desiderate sincronizzare pacchetti materiale e software con il vostro account?" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/CloudPackageChecker.py:145 #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/DownloadPresenter.py:95 msgctxt "@info:title" msgid "Changes detected from your Ultimaker account" -msgstr "Changements détectés à partir de votre compte Ultimaker" +msgstr "Modifiche rilevate dal tuo account Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/CloudPackageChecker.py:147 msgctxt "@action:button" msgid "Sync" -msgstr "Synchroniser" +msgstr "Sincronizza" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/RestartApplicationPresenter.py:22 msgctxt "@info:generic" msgid "You need to quit and restart {} before changes have effect." -msgstr "Vous devez quitter et redémarrer {} avant que les changements apportés ne prennent effet." +msgstr "Affinché le modifiche diventino effettive, è necessario chiudere e riavviare {}." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/DownloadPresenter.py:91 msgctxt "@info:generic" msgid "Syncing..." -msgstr "Synchronisation..." +msgstr "Sincronizzazione in corso..." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/SyncOrchestrator.py:79 msgctxt "@info:generic" msgid "{} plugins failed to download" -msgstr "Échec de téléchargement des plugins {}" +msgstr "Impossibile scaricare i plugin {}" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/LocalPackageList.py:28 msgctxt "@label" msgid "Installed Plugins" -msgstr "Plug-ins installés" +msgstr "Plugin installati" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/LocalPackageList.py:29 msgctxt "@label" msgid "Installed Materials" -msgstr "Matériaux installés" +msgstr "Materiali installati" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/LocalPackageList.py:33 msgctxt "@label" msgid "Bundled Plugins" -msgstr "Plug-ins groupés" +msgstr "Plugin inseriti nel bundle" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/LocalPackageList.py:34 msgctxt "@label" msgid "Bundled Materials" -msgstr "Matériaux groupés" +msgstr "Materiali inseriti nel bundle" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/PackageModel.py:43 msgctxt "@label:property" msgid "Unknown Package" -msgstr "Dossier inconnu" +msgstr "Pacchetto sconosciuto" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/PackageModel.py:66 msgctxt "@label:property" msgid "Unknown Author" -msgstr "Auteur inconnu" +msgstr "Autore sconosciuto" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/WindowsRemovableDrivePlugin.py:76 msgctxt "@item:intext" msgid "Removable Drive" -msgstr "Lecteur amovible" +msgstr "Unità rimovibile" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:23 msgctxt "@action:button Preceded by 'Ready to'." msgid "Save to Removable Drive" -msgstr "Enregistrer sur un lecteur amovible" +msgstr "Salva su unità rimovibile" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:24 #, python-brace-format msgctxt "@item:inlistbox" msgid "Save to Removable Drive {0}" -msgstr "Enregistrer sur un lecteur amovible {0}" +msgstr "Salva su unità rimovibile {0}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:109 #, python-brace-format msgctxt "@info:progress Don't translate the XML tags !" msgid "Saving to Removable Drive {0}" -msgstr "Enregistrement sur le lecteur amovible {0}" +msgstr "Salvataggio su unità rimovibile {0}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:110 msgctxt "@info:title" msgid "Saving" -msgstr "Enregistrement" +msgstr "Salvataggio in corso" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:120 #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:123 #, python-brace-format msgctxt "@info:status Don't translate the XML tags or !" msgid "Could not save to {0}: {1}" -msgstr "Impossible d'enregistrer {0} : {1}" +msgstr "Impossibile salvare {0}: {1}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139 #, python-brace-format msgctxt "@info:status Don't translate the tag {device}!" msgid "Could not find a file name when trying to write to {device}." -msgstr "Impossible de trouver un nom de fichier lors d'une tentative d'écriture sur {device}." +msgstr "Impossibile trovare un nome file durante il tentativo di scrittura su {device}." #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:152 #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:171 #, python-brace-format msgctxt "@info:status" msgid "Could not save to removable drive {0}: {1}" -msgstr "Impossible d'enregistrer sur le lecteur {0}: {1}" +msgstr "Impossibile salvare su unità rimovibile {0}: {1}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:162 #, python-brace-format msgctxt "@info:status" msgid "Saved to Removable Drive {0} as {1}" -msgstr "Enregistré sur le lecteur amovible {0} sous {1}" +msgstr "Salvato su unità rimovibile {0} come {1}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:163 msgctxt "@info:title" msgid "File Saved" -msgstr "Fichier enregistré" +msgstr "File salvato" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165 msgctxt "@action:button" msgid "Eject" -msgstr "Ejecter" +msgstr "Rimuovi" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165 #, python-brace-format msgctxt "@action" msgid "Eject removable device {0}" -msgstr "Ejecter le lecteur amovible {0}" +msgstr "Rimuovi il dispositivo rimovibile {0}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:184 #, python-brace-format msgctxt "@info:status" msgid "Ejected {0}. You can now safely remove the drive." -msgstr "Lecteur {0} éjecté. Vous pouvez maintenant le retirer en tout sécurité." +msgstr "Espulso {0}. È ora possibile rimuovere in modo sicuro l'unità." #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:185 msgctxt "@info:title" msgid "Safely Remove Hardware" -msgstr "Retirez le lecteur en toute sécurité" +msgstr "Rimozione sicura dell'hardware" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:188 #, python-brace-format msgctxt "@info:status" msgid "Failed to eject {0}. Another program may be using the drive." -msgstr "Impossible d'éjecter {0}. Un autre programme utilise peut-être ce lecteur." +msgstr "Espulsione non riuscita {0}. È possibile che un altro programma stia utilizzando l’unità." #: /Users/c.lamboo/ultimaker/Cura/plugins/MonitorStage/__init__.py:14 msgctxt "@item:inmenu" msgid "Monitor" -msgstr "Surveiller" +msgstr "Controlla" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:162 msgctxt "@message" msgid "" "Slicing failed with an unexpected error. Please consider reporting a bug on " "our issue tracker." -msgstr "Échec de la découpe avec une erreur inattendue. Signalez un bug sur notre outil de suivi des problèmes." +msgstr "Sezionamento non riuscito con un errore imprevisto. Valutare se segnalare un bug nel registro problemi." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:163 msgctxt "@message:title" msgid "Slicing failed" -msgstr "Échec de la découpe" +msgstr "Sezionamento non riuscito" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:168 msgctxt "@message:button" msgid "Report a bug" -msgstr "Notifier un bug" +msgstr "Segnala un errore" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:169 msgctxt "@message:description" msgid "Report a bug on Ultimaker Cura's issue tracker." -msgstr "Notifiez un bug sur l'outil de suivi des problèmes d'Ultimaker Cura." +msgstr "Segnalare un errore nel registro problemi di Ultimaker Cura." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:401 msgctxt "@info:status" msgid "" "Unable to slice with the current material as it is incompatible with the " "selected machine or configuration." -msgstr "Impossible de découper le matériau actuel, car celui-ci est incompatible avec la machine ou la configuration sélectionnée." +msgstr "Impossibile eseguire il sezionamento con il materiale corrente in quanto incompatibile con la macchina o la configurazione selezionata." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:402 #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:435 @@ -1631,7 +1632,7 @@ msgstr "Impossible de découper le matériau actuel, car celui-ci est incompatib #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:499 msgctxt "@info:title" msgid "Unable to slice" -msgstr "Impossible de découper" +msgstr "Sezionamento impossibile" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:434 #, python-brace-format @@ -1639,7 +1640,7 @@ msgctxt "@info:status" msgid "" "Unable to slice with the current settings. The following settings have " "errors: {0}" -msgstr "Impossible de couper avec les paramètres actuels. Les paramètres suivants contiennent des erreurs : {0}" +msgstr "Impossibile eseguire il sezionamento con le impostazioni attuali. Le seguenti impostazioni presentano errori: {0}" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:461 #, python-brace-format @@ -1647,13 +1648,13 @@ msgctxt "@info:status" msgid "" "Unable to slice due to some per-model settings. The following settings have " "errors on one or more models: {error_labels}" -msgstr "Impossible de couper en raison de certains paramètres par modèle. Les paramètres suivants contiennent des erreurs sur un ou plusieurs modèles : {error_labels}" +msgstr "Impossibile eseguire il sezionamento a causa di alcune impostazioni per modello. Le seguenti impostazioni presentano errori su uno o più modelli: {error_labels}" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:473 msgctxt "@info:status" msgid "" "Unable to slice because the prime tower or prime position(s) are invalid." -msgstr "Impossible de couper car la tour primaire ou la (les) position(s) d'amorçage ne sont pas valides." +msgstr "Impossibile eseguire il sezionamento perché la torre di innesco o la posizione di innesco non sono valide." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:485 #, python-format @@ -1661,7 +1662,7 @@ msgctxt "@info:status" msgid "" "Unable to slice because there are objects associated with disabled Extruder " "%s." -msgstr "Impossible de couper car il existe des objets associés à l'extrudeuse désactivée %s." +msgstr "Impossibile effettuare il sezionamento in quanto vi sono oggetti associati a Extruder %s disabilitato." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:495 msgctxt "@info:status" @@ -1670,35 +1671,35 @@ msgid "" "- Fit within the build volume\n" "- Are assigned to an enabled extruder\n" "- Are not all set as modifier meshes" -msgstr "Veuillez vérifier les paramètres et si vos modèles :\n- S'intègrent dans le volume de fabrication\n- Sont affectés à un extrudeur activé\n- N sont pas" -" tous définis comme des mailles de modificateur" +msgstr "Verificare le impostazioni e controllare se i modelli:\n- Rientrano nel volume di stampa\n- Sono assegnati a un estrusore abilitato\n- Non sono tutti impostati" +" come maglie modificatore" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:52 #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:260 msgctxt "@info:status" msgid "Processing Layers" -msgstr "Traitement des couches" +msgstr "Elaborazione dei livelli" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:261 msgctxt "@info:title" msgid "Information" -msgstr "Informations" +msgstr "Informazioni" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/__init__.py:27 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/__init__.py:33 msgctxt "@item:inlistbox" msgid "3MF File" -msgstr "Fichier 3MF" +msgstr "File 3MF" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.py:212 msgctxt "@title:tab" msgid "Recommended" -msgstr "Recommandé" +msgstr "Consigliata" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.py:214 msgctxt "@title:tab" msgid "Custom" -msgstr "Personnalisé" +msgstr "Personalizzata" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.py:390 msgctxt "@info:status" @@ -1726,13 +1727,13 @@ msgid "" "Project file {0} contains an unknown machine type " "{1}. Cannot import the machine. Models will be imported " "instead." -msgstr "Le fichier projet {0} contient un type de machine inconnu {1}. Impossible d'importer la machine. Les modèles seront" -" importés à la place." +msgstr "Il file di progetto {0} contiene un tipo di macchina sconosciuto {1}. Impossibile importare la macchina. Verranno" +" invece importati i modelli." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:548 msgctxt "@info:title" msgid "Open Project File" -msgstr "Ouvrir un fichier de projet" +msgstr "Apri file progetto" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:650 #, python-brace-format @@ -1740,14 +1741,14 @@ msgctxt "@info:error Don't translate the XML tags or !" msgid "" "Project file {0} is suddenly inaccessible: {1}" "." -msgstr "Le fichier de projet {0} est soudainement inaccessible : {1}." +msgstr "Il file di progetto {0} è diventato improvvisamente inaccessibile: {1}." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:651 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:659 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:678 msgctxt "@info:title" msgid "Can't Open Project File" -msgstr "Impossible d'ouvrir le fichier de projet" +msgstr "Impossibile aprire il file di progetto" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:658 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:676 @@ -1755,7 +1756,7 @@ msgstr "Impossible d'ouvrir le fichier de projet" msgctxt "@info:error Don't translate the XML tags or !" msgid "" "Project file {0} is corrupt: {1}." -msgstr "Le fichier de projet {0} est corrompu : {1}." +msgstr "Il file di progetto {0} è danneggiato: {1}." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:723 #, python-brace-format @@ -1763,22 +1764,22 @@ msgctxt "@info:error Don't translate the XML tag !" msgid "" "Project file {0} is made using profiles that are " "unknown to this version of Ultimaker Cura." -msgstr "Le fichier de projet {0} a été réalisé en utilisant des profils inconnus de cette version d'Ultimaker Cura." +msgstr "Il file di progetto {0} è realizzato con profili sconosciuti a questa versione di Ultimaker Cura." #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/__init__.py:14 msgctxt "@label" msgid "Per Model Settings" -msgstr "Paramètres par modèle" +msgstr "Impostazioni per modello" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/__init__.py:15 msgctxt "@info:tooltip" msgid "Configure Per Model Settings" -msgstr "Configurer les paramètres par modèle" +msgstr "Configura impostazioni per modello" #: /Users/c.lamboo/ultimaker/Cura/plugins/ModelChecker/ModelChecker.py:31 msgctxt "@info:title" msgid "3D Model Assistant" -msgstr "Assistant de modèle 3D" +msgstr "Assistente modello 3D" #: /Users/c.lamboo/ultimaker/Cura/plugins/ModelChecker/ModelChecker.py:97 #, python-brace-format @@ -1791,131 +1792,131 @@ msgid "" "p>\n" "

    View print quality " "guide

    " -msgstr "

    Un ou plusieurs modèles 3D peuvent ne pas s'imprimer de manière optimale en raison de la taille du modèle et de la configuration matérielle :

    \n

    {model_names}

    \n

    Découvrez" -" comment optimiser la qualité et la fiabilité de l'impression.

    \n

    Consultez le guide de qualité" -" d'impression

    " +msgstr "

    La stampa di uno o più modelli 3D può non avvenire in modo ottimale a causa della dimensioni modello e della configurazione materiale:

    \n

    {model_names}

    \n

    Scopri" +" come garantire la migliore qualità ed affidabilità di stampa.

    \n

    Visualizza la guida alla qualità" +" di stampa

    " #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:42 msgctxt "@item:inmenu" msgid "USB printing" -msgstr "Impression par USB" +msgstr "Stampa USB" #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:43 msgctxt "@action:button Preceded by 'Ready to'." msgid "Print via USB" -msgstr "Imprimer via USB" +msgstr "Stampa tramite USB" #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:44 msgctxt "@info:tooltip" msgid "Print via USB" -msgstr "Imprimer via USB" +msgstr "Stampa tramite USB" #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:80 msgctxt "@info:status" msgid "Connected via USB" -msgstr "Connecté via USB" +msgstr "Connesso tramite USB" #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:110 msgctxt "@label" msgid "" "A USB print is in progress, closing Cura will stop this print. Are you sure?" -msgstr "Une impression USB est en cours, la fermeture de Cura arrêtera cette impression. Êtes-vous sûr ?" +msgstr "Stampa tramite USB in corso, la chiusura di Cura interrompe la stampa. Confermare?" #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:135 msgctxt "@message" msgid "" "A print is still in progress. Cura cannot start another print via USB until " "the previous print has completed." -msgstr "Une impression est encore en cours. Cura ne peut pas démarrer une autre impression via USB tant que l'impression précédente n'est pas terminée." +msgstr "Stampa ancora in corso. Cura non può avviare un'altra stampa tramite USB finché la precedente non è stata completata." #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:136 msgctxt "@message" msgid "Print in Progress" -msgstr "Impression en cours" +msgstr "Stampa in corso" #: /Users/c.lamboo/ultimaker/Cura/plugins/PreviewStage/__init__.py:13 msgctxt "@item:inmenu" msgid "Preview" -msgstr "Aperçu" +msgstr "Anteprima" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/GCodeWriter.py:75 msgctxt "@error:not supported" msgid "GCodeWriter does not support non-text mode." -msgstr "GCodeWriter ne prend pas en charge le mode non-texte." +msgstr "GCodeWriter non supporta la modalità non di testo." #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/GCodeWriter.py:81 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/GCodeWriter.py:97 msgctxt "@warning:status" msgid "Please prepare G-code before exporting." -msgstr "Veuillez préparer le G-Code avant d'exporter." +msgstr "Preparare il codice G prima dell’esportazione." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.py:27 msgctxt "@action" msgid "Update Firmware" -msgstr "Mettre à jour le firmware" +msgstr "Aggiornamento firmware" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeGzWriter/GCodeGzWriter.py:43 msgctxt "@error:not supported" msgid "GCodeGzWriter does not support text mode." -msgstr "GCodeGzWriter ne prend pas en charge le mode texte." +msgstr "GCodeGzWriter non supporta la modalità di testo." #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/__init__.py:15 msgctxt "@item:inlistbox" msgid "Layer view" -msgstr "Vue en couches" +msgstr "Visualizzazione strato" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:129 msgctxt "@info:status" msgid "Cura does not accurately display layers when Wire Printing is enabled." -msgstr "Cura n'affiche pas les couches avec précision lorsque l'impression filaire est activée." +msgstr "Cura non visualizza in modo accurato i layer se la funzione Wire Printing è abilitata." #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:130 msgctxt "@info:title" msgid "Simulation View" -msgstr "Vue simulation" +msgstr "Vista simulazione" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:133 msgctxt "@info:status" msgid "Nothing is shown because you need to slice first." -msgstr "Rien ne s'affiche car vous devez d'abord découper." +msgstr "Non viene visualizzato nulla poiché è necessario prima effetuare lo slicing." #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:134 msgctxt "@info:title" msgid "No layers to show" -msgstr "Pas de couches à afficher" +msgstr "Nessun layer da visualizzare" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:136 #: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/SolidView.py:74 msgctxt "@info:option_text" msgid "Do not show this message again" -msgstr "Ne plus afficher ce message" +msgstr "Non mostrare nuovamente questo messaggio" #: /Users/c.lamboo/ultimaker/Cura/plugins/LegacyProfileReader/__init__.py:14 msgctxt "@item:inlistbox" msgid "Cura 15.04 profiles" -msgstr "Profils Cura 15.04" +msgstr "Profili Cura 15.04" #: /Users/c.lamboo/ultimaker/Cura/plugins/AMFReader/__init__.py:15 msgctxt "@item:inlistbox" msgid "AMF File" -msgstr "Fichier AMF" +msgstr "File AMF" #: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/SolidView.py:71 msgctxt "@info:status" msgid "" "The highlighted areas indicate either missing or extraneous surfaces. Fix " "your model and open it again into Cura." -msgstr "Les zones surlignées indiquent que des surfaces manquent ou sont étrangères. Réparez votre modèle et ouvrez-le à nouveau dans Cura." +msgstr "Le aree evidenziate indicano superfici mancanti o estranee. Correggi il modello e aprilo nuovamente in Cura." #: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/SolidView.py:73 msgctxt "@info:title" msgid "Model Errors" -msgstr "Erreurs du modèle" +msgstr "Errori modello" #: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/__init__.py:12 msgctxt "@item:inmenu" msgid "Solid view" -msgstr "Vue solide" +msgstr "Visualizzazione compatta" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerMessage.py:17 #, python-brace-format @@ -1926,49 +1927,49 @@ msgid "" "New features or bug-fixes may be available for your {machine_name}! If you " "haven't done so already, it is recommended to update the firmware on your " "printer to version {latest_version}." -msgstr "De nouvelles fonctionnalités ou des correctifs de bugs sont disponibles pour votre {machine_name} ! Si vous ne l'avez pas encore fait, il est recommandé" -" de mettre à jour le micrologiciel de votre imprimante avec la version {latest_version}." +msgstr "Nuove funzionalità o bug fix potrebbero essere disponibili per {machine_name}. Se non è già stato fatto in precedenza, si consiglia di aggiornare il firmware" +" della stampante alla versione {latest_version}." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerMessage.py:22 #, python-format msgctxt "@info:title The %s gets replaced with the printer name." msgid "New %s stable firmware available" -msgstr "Nouveau %s firmware stable disponible" +msgstr "Nuovo firmware %s stabile disponibile" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerMessage.py:28 msgctxt "@action:button" msgid "How to update" -msgstr "Comment effectuer la mise à jour" +msgstr "Modalità di aggiornamento" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:127 msgctxt "@info" msgid "Could not access update information." -msgstr "Impossible d'accéder aux informations de mise à jour." +msgstr "Non è possibile accedere alle informazioni di aggiornamento." #: /Users/c.lamboo/ultimaker/Cura/plugins/SupportEraser/__init__.py:12 msgctxt "@label" msgid "Support Blocker" -msgstr "Blocage des supports" +msgstr "Blocco supporto" #: /Users/c.lamboo/ultimaker/Cura/plugins/SupportEraser/__init__.py:13 msgctxt "@info:tooltip" msgid "Create a volume in which supports are not printed." -msgstr "Créer un volume dans lequel les supports ne sont pas imprimés." +msgstr "Crea un volume in cui i supporti non vengono stampati." #: /Users/c.lamboo/ultimaker/Cura/plugins/PrepareStage/__init__.py:12 msgctxt "@item:inmenu" msgid "Prepare" -msgstr "Préparer" +msgstr "Prepara" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:56 msgctxt "@title:label" msgid "Printer Settings" -msgstr "Paramètres de l'imprimante" +msgstr "Impostazioni della stampante" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:68 msgctxt "@label" msgid "X (Width)" -msgstr "X (Largeur)" +msgstr "X (Larghezza)" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:72 #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:87 @@ -1989,42 +1990,42 @@ msgstr "mm" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:83 msgctxt "@label" msgid "Y (Depth)" -msgstr "Y (Profondeur)" +msgstr "Y (Profondità)" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:98 msgctxt "@label" msgid "Z (Height)" -msgstr "Z (Hauteur)" +msgstr "Z (Altezza)" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:112 msgctxt "@label" msgid "Build plate shape" -msgstr "Forme du plateau" +msgstr "Forma del piano di stampa" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:125 msgctxt "@label" msgid "Origin at center" -msgstr "Origine au centre" +msgstr "Origine al centro" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:137 msgctxt "@label" msgid "Heated bed" -msgstr "Plateau chauffant" +msgstr "Piano riscaldato" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:149 msgctxt "@label" msgid "Heated build volume" -msgstr "Volume de fabrication chauffant" +msgstr "Volume di stampa riscaldato" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:161 msgctxt "@label" msgid "G-code flavor" -msgstr "Parfum G-Code" +msgstr "Versione codice G" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:185 msgctxt "@title:label" msgid "Printhead Settings" -msgstr "Paramètres de la tête d'impression" +msgstr "Impostazioni della testina di stampa" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:197 msgctxt "@label" @@ -2049,87 +2050,87 @@ msgstr "Y max" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:275 msgctxt "@label" msgid "Gantry Height" -msgstr "Hauteur du portique" +msgstr "Altezza gantry" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:289 msgctxt "@label" msgid "Number of Extruders" -msgstr "Nombre d'extrudeuses" +msgstr "Numero di estrusori" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:341 msgctxt "@label" msgid "Apply Extruder offsets to GCode" -msgstr "Appliquer les décalages offset de l'extrudeuse au GCode" +msgstr "Applica offset estrusore a gcode" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:389 msgctxt "@title:label" msgid "Start G-code" -msgstr "G-Code de démarrage" +msgstr "Codice G avvio" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:400 msgctxt "@title:label" msgid "End G-code" -msgstr "G-Code de fin" +msgstr "Codice G fine" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsAction.qml:42 msgctxt "@title:tab" msgid "Printer" -msgstr "Imprimante" +msgstr "Stampante" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:63 msgctxt "@title:label" msgid "Nozzle Settings" -msgstr "Paramètres de la buse" +msgstr "Impostazioni ugello" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:74 msgctxt "@label" msgid "Nozzle size" -msgstr "Taille de la buse" +msgstr "Dimensione ugello" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:88 msgctxt "@label" msgid "Compatible material diameter" -msgstr "Diamètre du matériau compatible" +msgstr "Diametro del materiale compatibile" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:104 msgctxt "@label" msgid "Nozzle offset X" -msgstr "Décalage buse X" +msgstr "Scostamento X ugello" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:119 msgctxt "@label" msgid "Nozzle offset Y" -msgstr "Décalage buse Y" +msgstr "Scostamento Y ugello" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:134 msgctxt "@label" msgid "Cooling Fan Number" -msgstr "Numéro du ventilateur de refroidissement" +msgstr "Numero ventola di raffreddamento" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:162 msgctxt "@title:label" msgid "Extruder Start G-code" -msgstr "Extrudeuse G-Code de démarrage" +msgstr "Codice G avvio estrusore" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:176 msgctxt "@title:label" msgid "Extruder End G-code" -msgstr "Extrudeuse G-Code de fin" +msgstr "Codice G fine estrusore" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:14 msgctxt "@title:window" msgid "Convert Image" -msgstr "Convertir l'image" +msgstr "Converti immagine" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:33 msgctxt "@action:label" msgid "Height (mm)" -msgstr "Hauteur (mm)" +msgstr "Altezza (mm)" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:56 msgctxt "@info:tooltip" msgid "The maximum distance of each pixel from \"Base.\"" -msgstr "La distance maximale de chaque pixel à partir de la « Base »." +msgstr "La distanza massima di ciascun pixel da \"Base.\"" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:66 msgctxt "@action:label" @@ -2139,37 +2140,37 @@ msgstr "Base (mm)" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:90 msgctxt "@info:tooltip" msgid "The base height from the build plate in millimeters." -msgstr "La hauteur de la base à partir du plateau en millimètres." +msgstr "L'altezza della base dal piano di stampa in millimetri." #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:100 msgctxt "@action:label" msgid "Width (mm)" -msgstr "Largeur (mm)" +msgstr "Larghezza (mm)" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:124 msgctxt "@info:tooltip" msgid "The width in millimeters on the build plate" -msgstr "La largeur en millimètres sur le plateau de fabrication" +msgstr "La larghezza in millimetri sul piano di stampa" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:134 msgctxt "@action:label" msgid "Depth (mm)" -msgstr "Profondeur (mm)" +msgstr "Profondità (mm)" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:158 msgctxt "@info:tooltip" msgid "The depth in millimeters on the build plate" -msgstr "La profondeur en millimètres sur le plateau" +msgstr "La profondità in millimetri sul piano di stampa" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:187 msgctxt "@item:inlistbox" msgid "Darker is higher" -msgstr "Le plus foncé est plus haut" +msgstr "Più scuro è più alto" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:188 msgctxt "@item:inlistbox" msgid "Lighter is higher" -msgstr "Le plus clair est plus haut" +msgstr "Più chiaro è più alto" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:195 msgctxt "@info:tooltip" @@ -2178,37 +2179,37 @@ msgid "" "to block more light coming through. For height maps lighter pixels signify " "higher terrain, so lighter pixels should correspond to thicker locations in " "the generated 3D model." -msgstr "Pour les lithophanies, les pixels foncés doivent correspondre à des emplacements plus épais afin d'empêcher la lumière de passer. Pour des cartes de hauteur," -" les pixels clairs signifient un terrain plus élevé, de sorte que les pixels clairs doivent correspondre à des emplacements plus épais dans le modèle 3D" -" généré." +msgstr "Per le litofanie, i pixel scuri devono corrispondere alle posizioni più spesse per bloccare maggiormente il passaggio della luce. Per le mappe con altezze" +" superiori, i pixel più chiari indicano un terreno più elevato, quindi nel modello 3D generato i pixel più chiari devono corrispondere alle posizioni più" +" spesse." #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:205 msgctxt "@action:label" msgid "Color Model" -msgstr "Modèle de couleur" +msgstr "Modello a colori" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:224 msgctxt "@item:inlistbox" msgid "Linear" -msgstr "Linéaire" +msgstr "Lineare" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:225 msgctxt "@item:inlistbox" msgid "Translucency" -msgstr "Translucidité" +msgstr "Traslucenza" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:232 msgctxt "@info:tooltip" msgid "" "For lithophanes a simple logarithmic model for translucency is available. " "For height maps the pixel values correspond to heights linearly." -msgstr "Pour les lithophanes, un modèle logarithmique simple de la translucidité est disponible. Pour les cartes de hauteur, les valeurs des pixels correspondent" -" aux hauteurs de façon linéaire." +msgstr "Per le litofanie, è disponibile un semplice modello logaritmico per la traslucenza. Per le mappe delle altezze, i valori in pixel corrispondono alle altezze" +" in modo lineare." #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:242 msgctxt "@action:label" msgid "1mm Transmittance (%)" -msgstr "Transmission 1 mm (%)" +msgstr "Trasmittanza di 1 mm (%)" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:263 msgctxt "@info:tooltip" @@ -2216,18 +2217,18 @@ msgid "" "The percentage of light penetrating a print with a thickness of 1 " "millimeter. Lowering this value increases the contrast in dark regions and " "decreases the contrast in light regions of the image." -msgstr "Le pourcentage de lumière pénétrant une impression avec une épaisseur de 1 millimètre. La diminution de cette valeur augmente le contraste dans les régions" -" sombres et diminue le contraste dans les régions claires de l'image." +msgstr "Percentuale di luce che penetra una stampa dello spessore di 1 millimetro. Se questo valore si riduce, il contrasto nelle aree scure dell'immagine aumenta," +" mentre il contrasto nelle aree chiare dell'immagine diminuisce." #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:274 msgctxt "@action:label" msgid "Smoothing" -msgstr "Lissage" +msgstr "Smoothing" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:298 msgctxt "@info:tooltip" msgid "The amount of smoothing to apply to the image." -msgstr "La quantité de lissage à appliquer à l'image." +msgstr "La quantità di smoothing (levigatura) da applicare all'immagine." #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:329 #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:136 @@ -2240,284 +2241,284 @@ msgstr "OK" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:17 msgctxt "@title:window" msgid "Post Processing Plugin" -msgstr "Plug-in de post-traitement" +msgstr "Plug-in di post-elaborazione" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:57 msgctxt "@label" msgid "Post Processing Scripts" -msgstr "Scripts de post-traitement" +msgstr "Script di post-elaborazione" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:215 msgctxt "@action" msgid "Add a script" -msgstr "Ajouter un script" +msgstr "Aggiungi uno script" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:251 msgctxt "@label" msgid "Settings" -msgstr "Paramètres" +msgstr "Impostazioni" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:460 msgctxt "@info:tooltip" msgid "Change active post-processing scripts." -msgstr "Modifiez les scripts de post-traitement actifs." +msgstr "Modificare gli script di post-elaborazione attivi." #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:464 msgctxt "@info:tooltip" msgid "The following script is active:" msgid_plural "The following scripts are active:" -msgstr[0] "Le script suivant est actif :" -msgstr[1] "Les scripts suivants sont actifs :" +msgstr[0] "È attivo il seguente script:" +msgstr[1] "Sono attivi i seguenti script:" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:144 msgctxt "@label" msgid "Move to top" -msgstr "Déplacer l'impression en haut" +msgstr "Sposta in alto" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:155 msgctxt "@label" msgid "Delete" -msgstr "Effacer" +msgstr "Cancella" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:186 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:284 msgctxt "@label" msgid "Resume" -msgstr "Reprendre" +msgstr "Riprendi" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:188 msgctxt "@label" msgid "Pausing..." -msgstr "Mise en pause..." +msgstr "Messa in pausa..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:190 msgctxt "@label" msgid "Resuming..." -msgstr "Reprise..." +msgstr "Ripresa in corso..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:192 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:279 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:288 msgctxt "@label" msgid "Pause" -msgstr "Pause" +msgstr "Pausa" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:206 msgctxt "@label" msgid "Aborting..." -msgstr "Abandon..." +msgstr "Interr. in corso..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:206 msgctxt "@label" msgid "Abort" -msgstr "Abandonner" +msgstr "Interrompi" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:218 msgctxt "@label %1 is the name of a print job." msgid "Are you sure you want to move %1 to the top of the queue?" -msgstr "Êtes-vous sûr de vouloir déplacer %1 en haut de la file d'attente ?" +msgstr "Sei sicuro di voler spostare %1 all’inizio della coda?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:219 msgctxt "@window:title" msgid "Move print job to top" -msgstr "Déplacer l'impression en haut de la file d'attente" +msgstr "Sposta il processo di stampa in alto" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:227 msgctxt "@label %1 is the name of a print job." msgid "Are you sure you want to delete %1?" -msgstr "Êtes-vous sûr de vouloir supprimer %1 ?" +msgstr "Sei sicuro di voler cancellare %1?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:228 msgctxt "@window:title" msgid "Delete print job" -msgstr "Supprimer l'impression" +msgstr "Cancella processo di stampa" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:236 msgctxt "@label %1 is the name of a print job." msgid "Are you sure you want to abort %1?" -msgstr "Êtes-vous sûr de vouloir annuler %1 ?" +msgstr "Sei sicuro di voler interrompere %1?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:237 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:326 msgctxt "@window:title" msgid "Abort print" -msgstr "Abandonner l'impression" +msgstr "Interrompi la stampa" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:12 msgctxt "@title:window" msgid "Print over network" -msgstr "Imprimer sur le réseau" +msgstr "Stampa sulla rete" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:53 msgctxt "@action:button" msgid "Print" -msgstr "Imprimer" +msgstr "Stampa" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:81 msgctxt "@label" msgid "Printer selection" -msgstr "Sélection d'imprimantes" +msgstr "Selezione stampante" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:20 msgctxt "@title:window" msgid "Configuration Changes" -msgstr "Modifications de configuration" +msgstr "Modifiche configurazione" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:36 msgctxt "@action:button" msgid "Override" -msgstr "Remplacer" +msgstr "Override" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:83 msgctxt "@label" msgid "The assigned printer, %1, requires the following configuration change:" msgid_plural "" "The assigned printer, %1, requires the following configuration changes:" -msgstr[0] "L'imprimante assignée, %1, nécessite la modification de configuration suivante :" -msgstr[1] "L'imprimante assignée, %1, nécessite les modifications de configuration suivantes :" +msgstr[0] "La stampante assegnata, %1, richiede la seguente modifica di configurazione:" +msgstr[1] "La stampante assegnata, %1, richiede le seguenti modifiche di configurazione:" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:87 msgctxt "@label" msgid "" "The printer %1 is assigned, but the job contains an unknown material " "configuration." -msgstr "L'imprimante %1 est assignée, mais le projet contient une configuration matérielle inconnue." +msgstr "La stampante %1 è assegnata, ma il processo contiene una configurazione materiale sconosciuta." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:97 msgctxt "@label" msgid "Change material %1 from %2 to %3." -msgstr "Changer le matériau %1 de %2 à %3." +msgstr "Cambia materiale %1 da %2 a %3." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:100 msgctxt "@label" msgid "Load %3 as material %1 (This cannot be overridden)." -msgstr "Charger %3 comme matériau %1 (Ceci ne peut pas être remplacé)." +msgstr "Caricare %3 come materiale %1 (Operazione non annullabile)." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:103 msgctxt "@label" msgid "Change print core %1 from %2 to %3." -msgstr "Changer le print core %1 de %2 à %3." +msgstr "Cambia print core %1 da %2 a %3." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:106 msgctxt "@label" msgid "Change build plate to %1 (This cannot be overridden)." -msgstr "Changer le plateau en %1 (Ceci ne peut pas être remplacé)." +msgstr "Cambia piano di stampa a %1 (Operazione non annullabile)." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:113 msgctxt "@label" msgid "" "Override will use the specified settings with the existing printer " "configuration. This may result in a failed print." -msgstr "Si vous sélectionnez « Remplacer », les paramètres de la configuration actuelle de l'imprimante seront utilisés. Cela peut entraîner l'échec de l'impression." +msgstr "L’override utilizza le impostazioni specificate con la configurazione stampante esistente. Ciò può causare una stampa non riuscita." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:151 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:181 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:178 msgctxt "@label" msgid "Glass" -msgstr "Verre" +msgstr "Vetro" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:154 msgctxt "@label" msgid "Aluminum" -msgstr "Aluminium" +msgstr "Alluminio" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:148 msgctxt "@label link to Connect and Cloud interfaces" msgid "Manage printer" -msgstr "Gérer l'imprimante" +msgstr "Gestione stampanti" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:253 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:479 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250 msgctxt "@info" msgid "Please update your printer's firmware to manage the queue remotely." -msgstr "Veuillez mettre à jour le Firmware de votre imprimante pour gérer la file d'attente à distance." +msgstr "Aggiornare il firmware della stampante per gestire la coda da remoto." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:287 msgctxt "@info" msgid "" "Webcam feeds for cloud printers cannot be viewed from Ultimaker Cura. Click " "\"Manage printer\" to visit Ultimaker Digital Factory and view this webcam." -msgstr "Les flux de webcam des imprimantes cloud ne peuvent pas être visualisés depuis Ultimaker Cura. Cliquez sur « Gérer l'imprimante » pour visiter Ultimaker" -" Digital Factory et voir cette webcam." +msgstr "Impossibile visualizzare feed della Webcam per stampanti cloud da Ultimaker Cura. Fare clic su \"Gestione stampanti\" per visitare Ultimaker Digital Factory" +" e visualizzare questa Webcam." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:347 msgctxt "@label:status" msgid "Loading..." -msgstr "Chargement..." +msgstr "Caricamento in corso..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:351 msgctxt "@label:status" msgid "Unavailable" -msgstr "Indisponible" +msgstr "Non disponibile" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:355 msgctxt "@label:status" msgid "Unreachable" -msgstr "Injoignable" +msgstr "Non raggiungibile" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:359 msgctxt "@label:status" msgid "Idle" -msgstr "Inactif" +msgstr "Ferma" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:363 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:76 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:78 msgctxt "@label:status" msgid "Preparing..." -msgstr "Préparation..." +msgstr "Preparazione in corso..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:368 msgctxt "@label:status" msgid "Printing" -msgstr "Impression" +msgstr "Stampa in corso" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:409 msgctxt "@label" msgid "Untitled" -msgstr "Sans titre" +msgstr "Senza titolo" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:424 msgctxt "@label" msgid "Anonymous" -msgstr "Anonyme" +msgstr "Anonimo" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:445 msgctxt "@label:status" msgid "Requires configuration changes" -msgstr "Nécessite des modifications de configuration" +msgstr "Richiede modifiche di configurazione" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:459 msgctxt "@action:button" msgid "Details" -msgstr "Détails" +msgstr "Dettagli" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:126 msgctxt "@label" msgid "Unavailable printer" -msgstr "Imprimante indisponible" +msgstr "Stampante non disponibile" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:128 msgctxt "@label" msgid "First available" -msgstr "Premier disponible" +msgstr "Primo disponibile" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:117 msgctxt "@info" msgid "Monitor your printers from everywhere using Ultimaker Digital Factory" -msgstr "Surveillez vos imprimantes à distance grâce à Ultimaker Digital Factory" +msgstr "Monitora le tue stampanti ovunque con Ultimaker Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:129 msgctxt "@button" msgid "View printers in Digital Factory" -msgstr "Afficher les imprimantes dans Digital Factory" +msgstr "Visualizza le stampanti in Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:44 msgctxt "@title:window" msgid "Connect to Networked Printer" -msgstr "Connecter à l'imprimante en réseau" +msgstr "Collega alla stampante in rete" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:51 msgctxt "@label" @@ -2527,19 +2528,19 @@ msgid "" "your printer to your WIFI network. If you don't connect Cura with your " "printer, you can still use a USB drive to transfer g-code files to your " "printer." -msgstr "Pour imprimer directement sur votre imprimante via le réseau, assurez-vous que votre imprimante est connectée au réseau via un câble Ethernet ou en connectant" -" votre imprimante à votre réseau Wi-Fi. Si vous ne connectez pas Cura avec votre imprimante, vous pouvez utiliser une clé USB pour transférer les fichiers" -" g-code sur votre imprimante." +msgstr "Per stampare direttamente sulla stampante in rete, verificare che la stampante desiderata sia collegata alla rete mediante un cavo di rete o mediante collegamento" +" alla rete WIFI. Se non si esegue il collegamento di Cura alla stampante, è comunque possibile utilizzare una chiavetta USB per trasferire i file codice" +" G alla stampante." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:51 msgctxt "@label" msgid "Select your printer from the list below:" -msgstr "Sélectionnez votre imprimante dans la liste ci-dessous :" +msgstr "Selezionare la stampante dall’elenco seguente:" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:71 msgctxt "@action:button" msgid "Edit" -msgstr "Modifier" +msgstr "Modifica" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:82 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:186 @@ -2547,109 +2548,109 @@ msgstr "Modifier" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:321 msgctxt "@action:button" msgid "Remove" -msgstr "Supprimer" +msgstr "Rimuovi" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:90 msgctxt "@action:button" msgid "Refresh" -msgstr "Rafraîchir" +msgstr "Aggiorna" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:161 msgctxt "@label" msgid "" "If your printer is not listed, read the network printing " "troubleshooting guide" -msgstr "Si votre imprimante n'apparaît pas dans la liste, lisez le guide de dépannage de l'impression en réseau" +msgstr "Se la stampante non è nell’elenco, leggere la guida alla risoluzione dei problemi per la stampa in rete" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:186 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:247 msgctxt "@label" msgid "Type" -msgstr "Type" +msgstr "Tipo" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:202 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:256 msgctxt "@label" msgid "Firmware version" -msgstr "Version du firmware" +msgstr "Versione firmware" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:212 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:266 msgctxt "@label" msgid "Address" -msgstr "Adresse" +msgstr "Indirizzo" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:232 msgctxt "@label" msgid "This printer is not set up to host a group of printers." -msgstr "Cette imprimante n'est pas configurée pour héberger un groupe d'imprimantes." +msgstr "Questa stampante non è predisposta per comandare un gruppo di stampanti." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:236 msgctxt "@label" msgid "This printer is the host for a group of %1 printers." -msgstr "Cette imprimante est l'hôte d'un groupe d'imprimantes %1." +msgstr "Questa stampante comanda un gruppo di %1 stampanti." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:245 msgctxt "@label" msgid "The printer at this address has not yet responded." -msgstr "L'imprimante à cette adresse n'a pas encore répondu." +msgstr "La stampante a questo indirizzo non ha ancora risposto." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:250 msgctxt "@action:button" msgid "Connect" -msgstr "Connecter" +msgstr "Collega" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:261 msgctxt "@title:window" msgid "Invalid IP address" -msgstr "Adresse IP non valide" +msgstr "Indirizzo IP non valido" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:262 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:141 msgctxt "@text" msgid "Please enter a valid IP address." -msgstr "Veuillez saisir une adresse IP valide." +msgstr "Inserire un indirizzo IP valido." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:272 msgctxt "@title:window" msgid "Printer Address" -msgstr "Adresse de l'imprimante" +msgstr "Indirizzo stampante" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:297 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:97 msgctxt "@label" msgid "Enter the IP address of your printer on the network." -msgstr "Saisissez l'adresse IP de votre imprimante sur le réseau." +msgstr "Inserire l'indirizzo IP della stampante in rete." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:29 msgctxt "@label" msgid "Queued" -msgstr "Mis en file d'attente" +msgstr "Coda di stampa" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:64 msgctxt "@label link to connect manager" msgid "Manage in browser" -msgstr "Gérer dans le navigateur" +msgstr "Gestisci nel browser" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:91 msgctxt "@label" msgid "There are no print jobs in the queue. Slice and send a job to add one." -msgstr "Il n'y a pas de travaux d'impression dans la file d'attente. Découpez et envoyez une tache pour en ajouter une." +msgstr "Non sono presenti processi di stampa nella coda. Eseguire lo slicing e inviare un processo per aggiungerne uno." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:99 msgctxt "@label" msgid "Print jobs" -msgstr "Tâches d'impression" +msgstr "Processi di stampa" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:108 msgctxt "@label" msgid "Total print time" -msgstr "Temps total d'impression" +msgstr "Tempo di stampa totale" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:117 msgctxt "@label" msgid "Waiting for" -msgstr "Attente de" +msgstr "In attesa" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:70 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:82 @@ -2658,18 +2659,18 @@ msgstr "Attente de" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:88 msgctxt "@label:status" msgid "Aborted" -msgstr "Abandonné" +msgstr "Interrotto" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:72 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:74 msgctxt "@label:status" msgid "Finished" -msgstr "Terminé" +msgstr "Terminato" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:80 msgctxt "@label:status" msgid "Aborting..." -msgstr "Abandon..." +msgstr "Interr. in corso..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:90 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:92 @@ -2677,133 +2678,133 @@ msgstr "Abandon..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:96 msgctxt "@label:status" msgid "Failed" -msgstr "Échec" +msgstr "Non riuscita" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:98 msgctxt "@label:status" msgid "Pausing..." -msgstr "Mise en pause..." +msgstr "Messa in pausa..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:100 msgctxt "@label:status" msgid "Paused" -msgstr "En pause" +msgstr "In pausa" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:102 msgctxt "@label:status" msgid "Resuming..." -msgstr "Reprise..." +msgstr "Ripresa in corso..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:104 msgctxt "@label:status" msgid "Action required" -msgstr "Action requise" +msgstr "Richiede un'azione" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:106 msgctxt "@label:status" msgid "Finishes %1 at %2" -msgstr "Finit %1 à %2" +msgstr "Finisce %1 a %2" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/main.qml:25 msgctxt "@title:window" msgid "Cura Backups" -msgstr "Sauvegardes Cura" +msgstr "Backup Cura" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml:21 msgctxt "@backuplist:label" msgid "Cura Version" -msgstr "Version Cura" +msgstr "Versione Cura" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml:29 msgctxt "@backuplist:label" msgid "Machines" -msgstr "Machines" +msgstr "Macchine" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml:37 msgctxt "@backuplist:label" msgid "Materials" -msgstr "Matériaux" +msgstr "Materiali" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml:45 msgctxt "@backuplist:label" msgid "Profiles" -msgstr "Profils" +msgstr "Profili" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml:53 msgctxt "@backuplist:label" msgid "Plugins" -msgstr "Plug-ins" +msgstr "Plugin" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListFooter.qml:22 msgctxt "@button" msgid "Want more?" -msgstr "Vous en voulez plus ?" +msgstr "Ulteriori informazioni?" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListFooter.qml:31 msgctxt "@button" msgid "Backup Now" -msgstr "Sauvegarder maintenant" +msgstr "Esegui backup adesso" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListFooter.qml:43 msgctxt "@checkbox:description" msgid "Auto Backup" -msgstr "Sauvegarde automatique" +msgstr "Backup automatico" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListFooter.qml:44 msgctxt "@checkbox:description" msgid "Automatically create a backup each day that Cura is started." -msgstr "Créez automatiquement une sauvegarde chaque jour où Cura est démarré." +msgstr "Crea automaticamente un backup ogni giorno in cui viene avviata Cura." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItem.qml:64 msgctxt "@button" msgid "Restore" -msgstr "Restaurer" +msgstr "Ripristina" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItem.qml:93 msgctxt "@dialog:title" msgid "Delete Backup" -msgstr "Supprimer la sauvegarde" +msgstr "Cancella backup" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItem.qml:94 msgctxt "@dialog:info" msgid "Are you sure you want to delete this backup? This cannot be undone." -msgstr "Êtes-vous sûr de vouloir supprimer cette sauvegarde ? Il est impossible d'annuler cette action." +msgstr "Sei sicuro di voler cancellare questo backup? Questa operazione non può essere annullata." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItem.qml:102 msgctxt "@dialog:title" msgid "Restore Backup" -msgstr "Restaurer la sauvegarde" +msgstr "Ripristina backup" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItem.qml:103 msgctxt "@dialog:info" msgid "" "You will need to restart Cura before your backup is restored. Do you want to " "close Cura now?" -msgstr "Vous devez redémarrer Cura avant que votre sauvegarde ne soit restaurée. Voulez-vous fermer Cura maintenant ?" +msgstr "Riavviare Cura prima di ripristinare il backup. Chiudere Cura adesso?" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/BackupsPage.qml:28 msgctxt "@title" msgid "My Backups" -msgstr "Mes sauvegardes" +msgstr "I miei backup" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/BackupsPage.qml:36 msgctxt "@empty_state" msgid "" "You don't have any backups currently. Use the 'Backup Now' button to create " "one." -msgstr "Vous n'avez actuellement aucune sauvegarde. Utilisez le bouton « Sauvegarder maintenant » pour en créer une." +msgstr "Nessun backup. Usare il pulsante ‘Esegui backup adesso’ per crearne uno." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/BackupsPage.qml:55 msgctxt "@backup_limit_info" msgid "" "During the preview phase, you'll be limited to 5 visible backups. Remove a " "backup to see older ones." -msgstr "Pendant la phase de prévisualisation, vous ne pourrez voir qu'un maximum de 5 sauvegardes. Supprimez une sauvegarde pour voir les plus anciennes." +msgstr "Durante la fase di anteprima, saranno visibili solo 5 backup. Rimuovi un backup per vedere quelli precedenti." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:34 msgctxt "@description" msgid "Backup and synchronize your Cura settings." -msgstr "Sauvegardez et synchronisez vos paramètres Cura." +msgstr "Backup e sincronizzazione delle impostazioni Cura." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:47 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:180 @@ -2811,30 +2812,29 @@ msgstr "Sauvegardez et synchronisez vos paramètres Cura." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/GeneralOperations.qml:49 msgctxt "@button" msgid "Sign in" -msgstr "Se connecter" +msgstr "Accedi" #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:16 msgctxt "@title:window" msgid "More information on anonymous data collection" -msgstr "Plus d'informations sur la collecte de données anonymes" +msgstr "Maggiori informazioni sulla raccolta di dati anonimi" #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:73 msgctxt "@text:window" msgid "" "Ultimaker Cura collects anonymous data in order to improve the print quality " "and user experience. Below is an example of all the data that is shared:" -msgstr "Ultimaker Cura recueille des données anonymes afin d'améliorer la qualité d'impression et l'expérience utilisateur. Voici un exemple de toutes les données" -" partagées :" +msgstr "Ultimaker Cura acquisisce dati anonimi per migliorare la qualità di stampa e l'esperienza dell'utente. Di seguito è riportato un esempio dei dati condivisi:" #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:107 msgctxt "@text:window" msgid "I don't want to send anonymous data" -msgstr "Je ne veux pas envoyer de données anonymes" +msgstr "Non desidero inviare dati anonimi" #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:116 msgctxt "@text:window" msgid "Allow sending anonymous data" -msgstr "Autoriser l'envoi de données anonymes" +msgstr "Consenti l'invio di dati anonimi" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/resources/qml/SaveProjectFilesPage.qml:216 msgctxt "@option" @@ -2849,17 +2849,17 @@ msgstr "Salva progetto Cura" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:30 msgctxt "@label" msgid "Please select any upgrades made to this Ultimaker Original" -msgstr "Sélectionnez les mises à niveau disponibles pour cet Ultimaker Original" +msgstr "Seleziona qualsiasi aggiornamento realizzato per questa Ultimaker Original" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:39 msgctxt "@label" msgid "Heated Build Plate (official kit or self-built)" -msgstr "Plateau chauffant (kit officiel ou fabriqué soi-même)" +msgstr "Piano di stampa riscaldato (kit ufficiale o integrato)" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.qml:30 msgctxt "@title" msgid "Build Plate Leveling" -msgstr "Nivellement du plateau" +msgstr "Livellamento del piano di stampa" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.qml:42 msgctxt "@label" @@ -2867,8 +2867,8 @@ msgid "" "To make sure your prints will come out great, you can now adjust your " "buildplate. When you click 'Move to Next Position' the nozzle will move to " "the different positions that can be adjusted." -msgstr "Pour obtenir des résultats d'impression optimaux, vous pouvez maintenant régler votre plateau. Quand vous cliquez sur 'Aller à la position suivante', la" -" buse se déplacera vers les différentes positions pouvant être réglées." +msgstr "Per assicurarsi stampe di alta qualità, è ora possibile regolare il piano di stampa. Quando si fa clic su 'Spostamento alla posizione successiva' l'ugello" +" si sposterà in diverse posizioni che è possibile regolare." #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.qml:52 msgctxt "@label" @@ -2876,18 +2876,18 @@ msgid "" "For every position; insert a piece of paper under the nozzle and adjust the " "print build plate height. The print build plate height is right when the " "paper is slightly gripped by the tip of the nozzle." -msgstr "Pour chacune des positions ; glissez un bout de papier sous la buse et ajustez la hauteur du plateau. La hauteur du plateau est juste lorsque la pointe" -" de la buse gratte légèrement le papier." +msgstr "Per ciascuna posizione: inserire un pezzo di carta sotto l'ugello e regolare la stampa dell'altezza del piano di stampa. L'altezza del piano di stampa" +" è corretta quando la carta sfiora la punta dell'ugello." #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.qml:67 msgctxt "@action:button" msgid "Start Build Plate Leveling" -msgstr "Démarrer le nivellement du plateau" +msgstr "Avvio livellamento del piano di stampa" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.qml:79 msgctxt "@action:button" msgid "Move to Next Position" -msgstr "Aller à la position suivante" +msgstr "Spostamento alla posizione successiva" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:172 msgctxt "@label Is followed by the name of an author" @@ -2898,74 +2898,74 @@ msgstr "Per mezzo di" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/OnboardBanner.qml:101 msgctxt "@button:label" msgid "Learn More" -msgstr "En Savoir Plus" +msgstr "Ulteriori Informazioni" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:226 msgctxt "@button" msgid "Enable" -msgstr "Activer" +msgstr "Abilita" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:226 msgctxt "@button" msgid "Disable" -msgstr "Désactiver" +msgstr "Disabilita" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:244 msgctxt "@button" msgid "Downgrading..." -msgstr "Téléchargement..." +msgstr "Downgrade in corso..." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:245 msgctxt "@button" msgid "Downgrade" -msgstr "Revenir à une version précédente" +msgstr "Downgrade" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:249 msgctxt "@button" msgid "Installing..." -msgstr "Installation..." +msgstr "Installazione in corso..." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:250 msgctxt "@button" msgid "Install" -msgstr "Installer" +msgstr "Installazione" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:254 msgctxt "@button" msgid "Uninstall" -msgstr "Désinstaller" +msgstr "Disinstalla" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:269 msgctxt "@button" msgid "Updating..." -msgstr "Mise à jour..." +msgstr "Aggiornamento in corso..." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:269 msgctxt "@button" msgid "Update" -msgstr "Mise à jour" +msgstr "Aggiorna" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Plugins.qml:8 msgctxt "@header" msgid "Install Plugins" -msgstr "Installer les plug-ins" +msgstr "Installa plugin" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Plugins.qml:12 msgctxt "@text" msgid "" "Streamline your workflow and customize your Ultimaker Cura experience with " "plugins contributed by our amazing community of users." -msgstr "Simplifiez votre flux de travail et personnalisez votre expérience Ultimaker Cura avec des plug-ins fournis par notre incroyable communauté d'utilisateurs." +msgstr "Semplifica il flusso di lavoro e personalizza l'esperienza Ultimaker Cura experience con plugin forniti dalla nostra eccezionale comunità di utenti." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:15 msgctxt "@title" msgid "Changes from your account" -msgstr "Changements à partir de votre compte" +msgstr "Modifiche dall'account" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:24 msgctxt "@button" msgid "Dismiss" -msgstr "Ignorer" +msgstr "Rimuovi" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:24 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:76 @@ -2973,196 +2973,196 @@ msgstr "Ignorer" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:118 msgctxt "@button" msgid "Next" -msgstr "Suivant" +msgstr "Avanti" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:52 msgctxt "@label" msgid "The following packages will be added:" -msgstr "Les packages suivants seront ajoutés:" +msgstr "Verranno aggiunti i seguenti pacchetti:" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:94 msgctxt "@label" msgid "" "The following packages can not be installed because of an incompatible Cura " "version:" -msgstr "Les packages suivants ne peuvent pas être installés en raison d'une version incompatible de Cura :" +msgstr "Impossibile installare i seguenti pacchetti a causa di una versione di Cura non compatibile:" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/MultipleLicenseDialog.qml:35 msgctxt "@label" msgid "You need to accept the license to install the package" -msgstr "Vous devez accepter la licence pour installer le package" +msgstr "È necessario accettare la licenza per installare il pacchetto" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/LicenseDialog.qml:15 msgctxt "@button" msgid "Plugin license agreement" -msgstr "Contrat de licence du plugin" +msgstr "Accordo di licenza plugin" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/LicenseDialog.qml:47 msgctxt "@text" msgid "Please read and agree with the plugin licence." -msgstr "Veuillez lire et accepter la licence du plug-in." +msgstr "Leggi e accetta la licenza del plugin." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/LicenseDialog.qml:70 msgctxt "@button" msgid "Accept" -msgstr "Accepter" +msgstr "Accetto" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Materials.qml:8 #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/MissingPackages.qml:8 msgctxt "@header" msgid "Install Materials" -msgstr "Installer des matériaux" +msgstr "Installa materiali" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Materials.qml:12 msgctxt "@text" msgid "" "Select and install material profiles optimised for your Ultimaker 3D " "printers." -msgstr "Sélectionnez et installez des profils de matériaux optimisés pour vos imprimantes 3D Ultimaker." +msgstr "Selezionare e installare i profili dei materiali ottimizzati per le stampanti 3D Ultimaker." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/ManagePackagesButton.qml:32 msgctxt "@info:tooltip" msgid "Manage packages" -msgstr "Gérer les packages" +msgstr "Gestisci pacchetti" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:81 msgctxt "@header" msgid "Description" -msgstr "Description" +msgstr "Descrizione" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:110 msgctxt "@header" msgid "Compatible printers" -msgstr "Imprimantes compatibles" +msgstr "Stampanti compatibili" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:134 msgctxt "@info" msgid "No compatibility information" -msgstr "Aucune information sur la compatibilité" +msgstr "Nessuna informazione sulla compatibilità" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:152 msgctxt "@header" msgid "Compatible support materials" -msgstr "Matériaux de support compatibles" +msgstr "Materiali di supporto compatibili" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:176 msgctxt "@info No materials" msgid "None" -msgstr "Aucun" +msgstr "Nessuno" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:193 msgctxt "@header" msgid "Compatible with Material Station" -msgstr "Compatible avec la Material Station" +msgstr "Compatibile con Material Station" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:202 #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:228 msgctxt "@info" msgid "Yes" -msgstr "Oui" +msgstr "Sì" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:202 #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:228 msgctxt "@info" msgid "No" -msgstr "Non" +msgstr "No" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:219 msgctxt "@header" msgid "Optimized for Air Manager" -msgstr "Optimisé pour Air Manager" +msgstr "Ottimizzato per Air Manager" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:243 msgctxt "@button" msgid "Visit plug-in website" -msgstr "Visitez le site Web du plug-in" +msgstr "Visita il sito web del plug-in" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:243 msgctxt "@button" msgid "Website" -msgstr "Site Internet" +msgstr "Sito web" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:252 msgctxt "@button" msgid "Buy spool" -msgstr "Acheter une bobine" +msgstr "Acquista bobina" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:261 msgctxt "@button" msgid "Safety datasheet" -msgstr "Fiche technique sur la sécurité" +msgstr "Scheda tecnica sulla sicurezza" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:270 msgctxt "@button" msgid "Technical datasheet" -msgstr "Fiche technique" +msgstr "Scheda tecnica" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageDetails.qml:15 msgctxt "@header" msgid "Package details" -msgstr "Détails sur le paquet" +msgstr "Dettagli pacchetto" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageDetails.qml:40 msgctxt "@button:tooltip" msgid "Back" -msgstr "Précédent" +msgstr "Indietro" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:151 msgctxt "@button" msgid "Failed to load packages:" -msgstr "Échec du chargement des packages :" +msgstr "Impossibile caricare pacchetti:" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:151 msgctxt "@button" msgid "Retry?" -msgstr "Réessayer ?" +msgstr "Riprovare?" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:167 msgctxt "@button" msgid "Loading" -msgstr "Chargement" +msgstr "Caricamento in corso" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:183 msgctxt "@message" msgid "No more results to load" -msgstr "Plus aucun résultat à charger" +msgstr "Nessun altro risultato da caricare" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:183 msgctxt "@message" msgid "No results found with current filter" -msgstr "Aucun résultat trouvé avec le filtre actuel" +msgstr "Nessun risultato trovato con il filtro corrente" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:226 msgctxt "@button" msgid "Load more" -msgstr "Charger plus" +msgstr "Carica altro" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/VerifiedIcon.qml:21 msgctxt "@info" msgid "Ultimaker Verified Plug-in" -msgstr "Plug-in Ultimaker vérifié" +msgstr "Plug-in verificato Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/VerifiedIcon.qml:22 msgctxt "@info" msgid "Ultimaker Certified Material" -msgstr "Matériau Ultimaker certifié" +msgstr "Materiale certificato Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/VerifiedIcon.qml:23 msgctxt "@info" msgid "Ultimaker Verified Package" -msgstr "Package Ultimaker vérifié" +msgstr "Pacchetto verificato Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/ManagedPackages.qml:11 msgctxt "@header" msgid "Manage packages" -msgstr "Gérer les packages" +msgstr "Gestisci pacchetti" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/ManagedPackages.qml:15 msgctxt "@text" msgid "" "Manage your Ultimaker Cura plugins and material profiles here. Make sure to " "keep your plugins up to date and backup your setup regularly." -msgstr "Gérez vos plug-ins Ultimaker Cura et vos profils matériaux ici. Assurez-vous de maintenir vos plug-ins à jour et de sauvegarder régulièrement votre configuration." +msgstr "Gestisci i plugin Ultimaker Cura e i profili del materiale qui. Accertarsi di mantenere i plugin aggiornati e di eseguire regolarmente il backup dell'impostazione." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/InstallMissingPackagesDialog.qml:15 msgctxt "@title" @@ -3172,32 +3172,32 @@ msgstr "Installa materiali mancanti" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:87 msgctxt "@title" msgid "Loading..." -msgstr "Chargement..." +msgstr "Caricamento in corso..." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:148 msgctxt "@button" msgid "Plugins" -msgstr "Plug-ins" +msgstr "Plugin" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:156 msgctxt "@button" msgid "Materials" -msgstr "Matériaux" +msgstr "Materiali" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:193 msgctxt "@info" msgid "Search in the browser" -msgstr "Rechercher dans le navigateur" +msgstr "Cerca nel browser" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:271 msgctxt "@button" msgid "In order to use the package you will need to restart Cura" -msgstr "Pour pouvoir utiliser le package, vous devrez redémarrer Cura" +msgstr "Per utilizzare il pacchetto è necessario riavviare Cura" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:279 msgctxt "@info:button, %1 is the application name" msgid "Quit %1" -msgstr "Quitter %1" +msgstr "Chiudere %1" #: /Users/c.lamboo/ultimaker/Cura/plugins/MonitorStage/MonitorMain.qml:100 msgctxt "@info" @@ -3206,78 +3206,78 @@ msgid "" "- Check if the printer is turned on.\n" "- Check if the printer is connected to the network.\n" "- Check if you are signed in to discover cloud-connected printers." -msgstr "Assurez-vous que votre imprimante est connectée :\n- Vérifiez si l'imprimante est sous tension.\n- Vérifiez si l'imprimante est connectée au réseau.- Vérifiez" -" si vous êtes connecté pour découvrir les imprimantes connectées au cloud." +msgstr "Accertarsi che la stampante sia collegata:\n- Controllare se la stampante è accesa.\n- Controllare se la stampante è collegata alla rete.\n- Controllare" +" se è stato effettuato l'accesso per rilevare le stampanti collegate al cloud." #: /Users/c.lamboo/ultimaker/Cura/plugins/MonitorStage/MonitorMain.qml:113 msgctxt "@info" msgid "Please connect your printer to the network." -msgstr "Veuillez connecter votre imprimante au réseau." +msgstr "Collegare la stampante alla rete." #: /Users/c.lamboo/ultimaker/Cura/plugins/MonitorStage/MonitorMain.qml:148 msgctxt "@label link to technical assistance" msgid "View user manuals online" -msgstr "Voir les manuels d'utilisation en ligne" +msgstr "Visualizza i manuali utente online" #: /Users/c.lamboo/ultimaker/Cura/plugins/MonitorStage/MonitorMain.qml:164 msgctxt "@info" msgid "In order to monitor your print from Cura, please connect the printer." -msgstr "Pour surveiller votre impression depuis Cura, veuillez connecter l'imprimante." +msgstr "Al fine di monitorare la stampa da Cura, collegare la stampante." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:15 msgctxt "@title:window" msgid "Open Project" -msgstr "Ouvrir un projet" +msgstr "Apri progetto" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:64 msgctxt "@action:ComboBox Update/override existing profile" msgid "Update existing" -msgstr "Mettre à jour l'existant" +msgstr "Aggiorna esistente" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:65 msgctxt "@action:ComboBox Save settings in a new profile" msgid "Create new" -msgstr "Créer" +msgstr "Crea nuovo" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:83 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:61 msgctxt "@action:title" msgid "Summary - Cura Project" -msgstr "Résumé - Projet Cura" +msgstr "Riepilogo - Progetto Cura" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:109 msgctxt "@info:tooltip" msgid "How should the conflict in the machine be resolved?" -msgstr "Comment le conflit de la machine doit-il être résolu ?" +msgstr "Come può essere risolto il conflitto nella macchina?" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:165 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:97 msgctxt "@action:label" msgid "Printer settings" -msgstr "Paramètres de l'imprimante" +msgstr "Impostazioni della stampante" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:176 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:106 msgctxt "@action:label" msgid "Type" -msgstr "Type" +msgstr "Tipo" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:193 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:121 msgctxt "@action:label" msgid "Printer Group" -msgstr "Groupe d'imprimantes" +msgstr "Gruppo stampanti" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:218 msgctxt "@info:tooltip" msgid "How should the conflict in the profile be resolved?" -msgstr "Comment le conflit du profil doit-il être résolu ?" +msgstr "Come può essere risolto il conflitto nel profilo?" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:240 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:222 msgctxt "@action:label" msgid "Profile settings" -msgstr "Paramètres de profil" +msgstr "Impostazioni profilo" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:251 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:376 @@ -3285,7 +3285,7 @@ msgstr "Paramètres de profil" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:246 msgctxt "@action:label" msgid "Name" -msgstr "Nom" +msgstr "Nome" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:269 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:263 @@ -3297,74 +3297,74 @@ msgstr "Intent" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:230 msgctxt "@action:label" msgid "Not in profile" -msgstr "Absent du profil" +msgstr "Non nel profilo" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:293 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:235 msgctxt "@action:label" msgid "%1 override" msgid_plural "%1 overrides" -msgstr[0] "%1 écrasent" -msgstr[1] "%1 écrase" +msgstr[0] "%1 override" +msgstr[1] "%1 override" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:306 msgctxt "@action:label" msgid "Derivative from" -msgstr "Dérivé de" +msgstr "Derivato da" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:312 msgctxt "@action:label" msgid "%1, %2 override" msgid_plural "%1, %2 overrides" -msgstr[0] "%1, %2 écrasent" -msgstr[1] "%1, %2 écrase" +msgstr[0] "%1, %2 override" +msgstr[1] "%1, %2 override" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:334 msgctxt "@info:tooltip" msgid "How should the conflict in the material be resolved?" -msgstr "Comment le conflit du matériau doit-il être résolu ?" +msgstr "Come può essere risolto il conflitto nel materiale?" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:361 msgctxt "@action:label" msgid "Material settings" -msgstr "Paramètres du matériau" +msgstr "Impostazioni materiale" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:397 msgctxt "@action:label" msgid "Setting visibility" -msgstr "Visibilité des paramètres" +msgstr "Impostazione visibilità" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:406 msgctxt "@action:label" msgid "Mode" -msgstr "Mode" +msgstr "Modalità" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:422 msgctxt "@action:label" msgid "Visible settings:" -msgstr "Paramètres visibles :" +msgstr "Impostazioni visibili:" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:427 msgctxt "@action:label" msgid "%1 out of %2" -msgstr "%1 sur %2" +msgstr "%1 su %2" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:448 msgctxt "@action:warning" msgid "Loading a project will clear all models on the build plate." -msgstr "Le chargement d'un projet effacera tous les modèles sur le plateau." +msgstr "Il caricamento di un progetto annulla tutti i modelli sul piano di stampa." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:490 msgctxt "@label" msgid "" "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." -msgstr "Le matériau utilisé dans ce projet n'est actuellement pas installé dans Cura.
    Installez le profil du matériau et rouvrez le projet." +msgstr "Il materiale utilizzato in questo progetto non è attualmente installato in Cura.
    Installa il profilo del materiale e riapri il progetto." #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:515 msgctxt "@action:button" msgid "Open" -msgstr "Ouvrir" +msgstr "Apri" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:521 msgctxt "@action:button" @@ -3379,63 +3379,63 @@ msgstr "Installa materiale mancante" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:41 msgctxt "@label" msgid "Mesh Type" -msgstr "Type de maille" +msgstr "Tipo di maglia" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:81 msgctxt "@label" msgid "Normal model" -msgstr "Modèle normal" +msgstr "Modello normale" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:96 msgctxt "@label" msgid "Print as support" -msgstr "Imprimer comme support" +msgstr "Stampa come supporto" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:111 msgctxt "@label" msgid "Modify settings for overlaps" -msgstr "Modifier les paramètres de chevauchement" +msgstr "Modificare le impostazioni per le sovrapposizioni" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:126 msgctxt "@label" msgid "Don't support overlaps" -msgstr "Ne prend pas en charge le chevauchement" +msgstr "Non supportano le sovrapposizioni" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:159 msgctxt "@item:inlistbox" msgid "Infill mesh only" -msgstr "Maille de remplissage uniquement" +msgstr "Solo maglia di riempimento" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:160 msgctxt "@item:inlistbox" msgid "Cutting mesh" -msgstr "Maille de coupe" +msgstr "Ritaglio mesh" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:385 msgctxt "@action:button" msgid "Select settings" -msgstr "Sélectionner les paramètres" +msgstr "Seleziona impostazioni" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:17 msgctxt "@title:window" msgid "Select Settings to Customize for this model" -msgstr "Sélectionner les paramètres pour personnaliser ce modèle" +msgstr "Seleziona impostazioni di personalizzazione per questo modello" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:61 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:102 msgctxt "@label:textbox" msgid "Filter..." -msgstr "Filtrer..." +msgstr "Filtro..." #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:75 msgctxt "@label:checkbox" msgid "Show all" -msgstr "Afficher tout" +msgstr "Mostra tutto" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:31 msgctxt "@title" msgid "Update Firmware" -msgstr "Mettre à jour le firmware" +msgstr "Aggiornamento firmware" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:37 msgctxt "@label" @@ -3443,166 +3443,165 @@ msgid "" "Firmware is the piece of software running directly on your 3D printer. This " "firmware controls the step motors, regulates the temperature and ultimately " "makes your printer work." -msgstr "Le firmware est le logiciel fonctionnant directement dans votre imprimante 3D. Ce firmware contrôle les moteurs pas à pas, régule la température et surtout," -" fait que votre machine fonctionne." +msgstr "Il firmware è la parte di software eseguita direttamente sulla stampante 3D. Questo firmware controlla i motori passo-passo, regola la temperatura e, in" +" ultima analisi, consente il funzionamento della stampante." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:43 msgctxt "@label" msgid "" "The firmware shipping with new printers works, but new versions tend to have " "more features and improvements." -msgstr "Le firmware fourni avec les nouvelles imprimantes fonctionne, mais les nouvelles versions ont tendance à fournir davantage de fonctionnalités ainsi que" -" des améliorations." +msgstr "Il firmware inviato a corredo delle nuove stampanti funziona, tuttavia le nuove versioni tendono ad avere più funzioni ed ottimizzazioni." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:55 msgctxt "@action:button" msgid "Automatically upgrade Firmware" -msgstr "Mise à niveau automatique du firmware" +msgstr "Aggiorna automaticamente il firmware" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:66 msgctxt "@action:button" msgid "Upload custom Firmware" -msgstr "Charger le firmware personnalisé" +msgstr "Carica il firmware personalizzato" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:79 msgctxt "@label" msgid "" "Firmware can not be updated because there is no connection with the printer." -msgstr "Impossible de se connecter à l'imprimante ; échec de la mise à jour du firmware." +msgstr "Impossibile aggiornare il firmware: nessun collegamento con la stampante." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:86 msgctxt "@label" msgid "" "Firmware can not be updated because the connection with the printer does not " "support upgrading firmware." -msgstr "Échec de la mise à jour du firmware, car cette fonctionnalité n'est pas prise en charge par la connexion avec l'imprimante." +msgstr "Impossibile aggiornare il firmware: il collegamento con la stampante non supporta l’aggiornamento del firmware." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:93 msgctxt "@title:window" msgid "Select custom firmware" -msgstr "Sélectionner le firmware personnalisé" +msgstr "Seleziona il firmware personalizzato" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:113 msgctxt "@title:window" msgid "Firmware Update" -msgstr "Mise à jour du firmware" +msgstr "Aggiornamento del firmware" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:137 msgctxt "@label" msgid "Updating firmware." -msgstr "Mise à jour du firmware en cours." +msgstr "Aggiornamento firmware." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:139 msgctxt "@label" msgid "Firmware update completed." -msgstr "Mise à jour du firmware terminée." +msgstr "Aggiornamento del firmware completato." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:141 msgctxt "@label" msgid "Firmware update failed due to an unknown error." -msgstr "Échec de la mise à jour du firmware en raison d'une erreur inconnue." +msgstr "Aggiornamento firmware non riuscito a causa di un errore sconosciuto." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:143 msgctxt "@label" msgid "Firmware update failed due to an communication error." -msgstr "Échec de la mise à jour du firmware en raison d'une erreur de communication." +msgstr "Aggiornamento firmware non riuscito a causa di un errore di comunicazione." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:145 msgctxt "@label" msgid "Firmware update failed due to an input/output error." -msgstr "Échec de la mise à jour du firmware en raison d'une erreur d'entrée/de sortie." +msgstr "Aggiornamento firmware non riuscito a causa di un errore di input/output." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:147 msgctxt "@label" msgid "Firmware update failed due to missing firmware." -msgstr "Échec de la mise à jour du firmware en raison du firmware manquant." +msgstr "Aggiornamento firmware non riuscito per firmware mancante." #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:18 #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:47 msgctxt "@label" msgid "Color scheme" -msgstr "Modèle de couleurs" +msgstr "Schema colori" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:104 msgctxt "@label:listbox" msgid "Material Color" -msgstr "Couleur du matériau" +msgstr "Colore materiale" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:108 msgctxt "@label:listbox" msgid "Line Type" -msgstr "Type de ligne" +msgstr "Tipo di linea" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:112 msgctxt "@label:listbox" msgid "Speed" -msgstr "Vitesse" +msgstr "Velocità" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:116 msgctxt "@label:listbox" msgid "Layer Thickness" -msgstr "Épaisseur de la couche" +msgstr "Spessore layer" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:120 msgctxt "@label:listbox" msgid "Line Width" -msgstr "Largeur de ligne" +msgstr "Larghezza della linea" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:124 msgctxt "@label:listbox" msgid "Flow" -msgstr "Débit" +msgstr "Flusso" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:164 msgctxt "@label" msgid "Compatibility Mode" -msgstr "Mode de compatibilité" +msgstr "Modalità di compatibilità" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:231 msgctxt "@label" msgid "Travels" -msgstr "Déplacements" +msgstr "Spostamenti" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:237 msgctxt "@label" msgid "Helpers" -msgstr "Aides" +msgstr "Helper" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:243 msgctxt "@label" msgid "Shell" -msgstr "Coque" +msgstr "Guscio" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:249 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:74 msgctxt "@label" msgid "Infill" -msgstr "Remplissage" +msgstr "Riempimento" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:257 msgctxt "@label" msgid "Starts" -msgstr "Démarre" +msgstr "Avvia" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:304 msgctxt "@label" msgid "Only Show Top Layers" -msgstr "Afficher uniquement les couches supérieures" +msgstr "Mostra solo strati superiori" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:313 msgctxt "@label" msgid "Show 5 Detailed Layers On Top" -msgstr "Afficher 5 niveaux détaillés en haut" +msgstr "Mostra 5 strati superiori in dettaglio" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:326 msgctxt "@label" msgid "Top / Bottom" -msgstr "Haut / bas" +msgstr "Superiore / Inferiore" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:330 msgctxt "@label" msgid "Inner Wall" -msgstr "Paroi interne" +msgstr "Parete interna" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:397 msgctxt "@label" @@ -3617,36 +3616,36 @@ msgstr "max" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/SearchBar.qml:17 msgctxt "@placeholder" msgid "Search" -msgstr "Rechercher" +msgstr "Cerca" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:84 msgctxt "@label" msgid "" "This setting is not used because all the settings that it influences are " "overridden." -msgstr "Ce paramètre n'est pas utilisé car tous les paramètres qu'il influence sont remplacés." +msgstr "Questa impostazione non è utilizzata perché tutte le impostazioni che influenza sono sottoposte a override." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:89 msgctxt "@label Header for list of settings." msgid "Affects" -msgstr "Touche" +msgstr "Influisce su" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:94 msgctxt "@label Header for list of settings." msgid "Affected By" -msgstr "Touché par" +msgstr "Influenzato da" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:190 msgctxt "@label" msgid "" "This setting is always shared between all extruders. Changing it here will " "change the value for all extruders." -msgstr "Ce paramètre est toujours partagé par toutes les extrudeuses. Le modifier ici entraînera la modification de la valeur pour toutes les extrudeuses." +msgstr "Questa impostazione è sempre condivisa tra tutti gli estrusori. La sua modifica varierà il valore per tutti gli estrusori." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:194 msgctxt "@label" msgid "This setting is resolved from conflicting extruder-specific values:" -msgstr "Ce paramètre est résolu à partir de valeurs conflictuelles spécifiques à l'extrudeur :" +msgstr "Questa impostazione viene risolta dai valori in conflitto specifici dell'estrusore:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:234 msgctxt "@label" @@ -3654,7 +3653,7 @@ msgid "" "This setting has a value that is different from the profile.\n" "\n" "Click to restore the value of the profile." -msgstr "Ce paramètre possède une valeur qui est différente du profil.\n\nCliquez pour restaurer la valeur du profil." +msgstr "Questa impostazione ha un valore diverso dal profilo.\n\nFare clic per ripristinare il valore del profilo." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:334 msgctxt "@label" @@ -3663,43 +3662,43 @@ msgid "" "set.\n" "\n" "Click to restore the calculated value." -msgstr "Ce paramètre est normalement calculé mais il possède actuellement une valeur absolue définie.\n\nCliquez pour restaurer la valeur calculée." +msgstr "Questa impostazione normalmente viene calcolata, ma attualmente ha impostato un valore assoluto.\n\nFare clic per ripristinare il valore calcolato." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:48 msgctxt "@label:textbox" msgid "Search settings" -msgstr "Paramètres de recherche" +msgstr "Impostazioni ricerca" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:395 msgctxt "@action:menu" msgid "Copy value to all extruders" -msgstr "Copier la valeur vers tous les extrudeurs" +msgstr "Copia valore su tutti gli estrusori" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:404 msgctxt "@action:menu" msgid "Copy all changed values to all extruders" -msgstr "Copier toutes les valeurs modifiées vers toutes les extrudeuses" +msgstr "Copia tutti i valori modificati su tutti gli estrusori" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:440 msgctxt "@action:menu" msgid "Hide this setting" -msgstr "Masquer ce paramètre" +msgstr "Nascondi questa impostazione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:453 msgctxt "@action:menu" msgid "Don't show this setting" -msgstr "Masquer ce paramètre" +msgstr "Nascondi questa impostazione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:457 msgctxt "@action:menu" msgid "Keep this setting visible" -msgstr "Afficher ce paramètre" +msgstr "Mantieni visibile questa impostazione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:476 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:467 msgctxt "@action:menu" msgid "Configure setting visibility..." -msgstr "Configurer la visibilité des paramètres..." +msgstr "Configura visibilità delle impostazioni..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingCategory.qml:115 msgctxt "@label" @@ -3708,156 +3707,156 @@ msgid "" "value.\n" "\n" "Click to make these settings visible." -msgstr "Certains paramètres masqués utilisent des valeurs différentes de leur valeur normalement calculée.\n\nCliquez pour rendre ces paramètres visibles." +msgstr "Alcune impostazioni nascoste utilizzano valori diversi dal proprio valore normale calcolato.\n\nFare clic per rendere visibili queste impostazioni." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MainWindow/MainWindowHeader.qml:135 msgctxt "@action:button" msgid "Marketplace" -msgstr "Marché en ligne" +msgstr "Mercato" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MainWindow/ApplicationMenu.qml:63 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:13 msgctxt "@title:menu menubar:toplevel" msgid "&Settings" -msgstr "&Paramètres" +msgstr "&Impostazioni" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MainWindow/ApplicationMenu.qml:87 msgctxt "@title:window" msgid "New project" -msgstr "Nouveau projet" +msgstr "Nuovo progetto" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MainWindow/ApplicationMenu.qml:88 msgctxt "@info:question" msgid "" "Are you sure you want to start a new project? This will clear the build " "plate and any unsaved settings." -msgstr "Êtes-vous sûr(e) de souhaiter lancer un nouveau projet ? Cela supprimera les objets du plateau ainsi que tous paramètres non enregistrés." +msgstr "Sei sicuro di voler aprire un nuovo progetto? Questo cancellerà il piano di stampa e tutte le impostazioni non salvate." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:13 msgctxt "@title:tab" msgid "Setting Visibility" -msgstr "Visibilité des paramètres" +msgstr "Impostazione visibilità" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:24 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:134 msgctxt "@action:button" msgid "Defaults" -msgstr "Rétablir les paramètres par défaut" +msgstr "Valori predefiniti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:55 msgctxt "@label:textbox" msgid "Check all" -msgstr "Vérifier tout" +msgstr "Controlla tutto" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:18 msgctxt "@title:window" msgid "Sync materials with printers" -msgstr "Synchroniser les matériaux avec les imprimantes" +msgstr "Sincronizza materiali con stampanti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:49 msgctxt "@title:header" msgid "Sync materials with printers" -msgstr "Synchroniser les matériaux avec les imprimantes" +msgstr "Sincronizza materiali con stampanti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:55 msgctxt "@text" msgid "" "Following a few simple steps, you will be able to synchronize all your " "material profiles with your printers." -msgstr "En suivant quelques étapes simples, vous serez en mesure de synchroniser tous vos profils de matériaux avec vos imprimantes." +msgstr "Seguendo alcuni semplici passaggi, sarà possibile sincronizzare tutti i profili del materiale con le stampanti." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:77 msgctxt "@button" msgid "Why do I need to sync material profiles?" -msgstr "Pourquoi dois-je synchroniser les profils de matériaux ?" +msgstr "Cosa occorre per sincronizzare i profili del materiale?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:86 msgctxt "@button" msgid "Start" -msgstr "Démarrer" +msgstr "Avvio" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:144 msgctxt "@title:header" msgid "Sign in" -msgstr "Se connecter" +msgstr "Accedi" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:150 msgctxt "@text" msgid "" "To automatically sync the material profiles with all your printers connected " "to Digital Factory you need to be signed in in Cura." -msgstr "Pour synchroniser automatiquement les profils de matériaux avec toutes vos imprimantes connectées à Digital Factory, vous devez être connecté à Cura." +msgstr "Per sincronizzare automaticamente i profili del materiale con tutte le stampanti collegate a Digital Factory è necessario aver effettuato l'accesso a Cura." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:174 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:462 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:602 msgctxt "@button" msgid "Sync materials with USB" -msgstr "Synchroniser les matériaux avec USB" +msgstr "Sincronizza materiali con USB" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:207 msgctxt "@title:header" msgid "The following printers will receive the new material profiles:" -msgstr "Les imprimantes suivantes recevront les nouveaux profils de matériaux :" +msgstr "Le stampanti seguenti riceveranno i nuovi profili del materiale:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:214 msgctxt "@title:header" msgid "Something went wrong when sending the materials to the printers." -msgstr "Un problème est survenu lors de l'envoi des matériaux aux imprimantes." +msgstr "Si è verificato un errore durante l'invio di materiali alle stampanti." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:221 msgctxt "@title:header" msgid "Material profiles successfully synced with the following printers:" -msgstr "Les profils de matériaux ont été synchronisés avec les imprimantes suivantes :" +msgstr "I profili del materiale sono stati sincronizzati correttamente con le stampanti seguenti:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:258 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:445 msgctxt "@button" msgid "Troubleshooting" -msgstr "Dépannage" +msgstr "Ricerca e riparazione dei guasti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:422 msgctxt "@text Asking the user whether printers are missing in a list." msgid "Printers missing?" -msgstr "Imprimantes manquantes ?" +msgstr "Mancano stampanti?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:424 msgctxt "@text" msgid "" "Make sure all your printers are turned ON and connected to Digital Factory." -msgstr "Assurez-vous que toutes vos imprimantes sont allumées et connectées à Digital Factory." +msgstr "Accertarsi che tutte le stampanti siano accese e collegate a Digital Factory." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:433 msgctxt "@button" msgid "Refresh List" -msgstr "Actualiser la liste" +msgstr "Aggiorna elenco" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:473 msgctxt "@button" msgid "Try again" -msgstr "Réessayer" +msgstr "Riprova" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:477 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:712 msgctxt "@button" msgid "Done" -msgstr "Terminé" +msgstr "Eseguito" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:479 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:622 msgctxt "@button" msgid "Sync" -msgstr "Synchroniser" +msgstr "Sincronizza" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:535 msgctxt "@button" msgid "Syncing" -msgstr "Synchronisation" +msgstr "Sincronizzazione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:553 msgctxt "@title:header" msgid "No printers found" -msgstr "Aucune imprimante trouvée" +msgstr "Nessuna stampante trovata" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:574 msgctxt "@text" @@ -3865,271 +3864,270 @@ msgid "" "It seems like you don't have any compatible printers connected to Digital " "Factory. Make sure your printer is connected and it's running the latest " "firmware." -msgstr "Il semble que vous n'ayez aucune imprimante compatible connectée à Digital Factory. Assurez-vous que votre imprimante est connectée et qu'elle utilise" -" le dernier micrologiciel." +msgstr "Nessuna stampante compatibile collegata a Digital Factory. Accertarsi che la stampante sia collegata e che il firmware più recente sia in esecuzione." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:585 msgctxt "@button" msgid "Learn how to connect your printer to Digital Factory" -msgstr "Découvrez comment connecter votre imprimante à Digital Factory" +msgstr "Scopri come collegare la stampante a Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:613 msgctxt "@button" msgid "Refresh" -msgstr "Rafraîchir" +msgstr "Aggiorna" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:642 msgctxt "@title:header" msgid "Sync material profiles via USB" -msgstr "Synchroniser les profils de matériaux via USB" +msgstr "Sincronizza profili del materiale tramite USB" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:648 msgctxt "" "@text In the UI this is followed by a list of steps the user needs to take." msgid "" "Follow the following steps to load the new material profiles to your printer." -msgstr "Suivez les étapes suivantes pour charger les nouveaux profils de matériaux dans votre imprimante." +msgstr "Eseguire le operazioni descritte di seguito per caricare nuovi profili del materiale nella stampante." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:679 msgctxt "@text" msgid "Click the export material archive button." -msgstr "Cliquez sur le bouton d'exportation des archives de matériaux." +msgstr "Fare clic sul pulsante Esporta archivio materiali." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:680 msgctxt "@text" msgid "Save the .umm file on a USB stick." -msgstr "Enregistrez le fichier .umm sur une clé USB." +msgstr "Salvare il file .umm su una chiavetta USB." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:681 msgctxt "@text" msgid "" "Insert the USB stick into your printer and launch the procedure to load new " "material profiles." -msgstr "Insérez la clé USB dans votre imprimante et lancez la procédure pour charger de nouveaux profils de matériaux." +msgstr "Inserire la chiavetta USB nella stampante e avviare la procedura per caricare nuovi profili del materiale." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:689 msgctxt "@button" msgid "How to load new material profiles to my printer" -msgstr "Comment charger de nouveaux profils de matériaux dans mon imprimante" +msgstr "Come caricare nuovi profili del materiale nella stampante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:703 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:299 msgctxt "@button" msgid "Back" -msgstr "Précédent" +msgstr "Indietro" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:712 msgctxt "@button" msgid "Export material archive" -msgstr "Exporter l'archive des matériaux" +msgstr "Esporta archivio materiali" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:747 msgctxt "@title:window" msgid "Export All Materials" -msgstr "Exporter tous les matériaux" +msgstr "Esporta tutti i materiali" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:121 msgctxt "@title:window" msgid "Confirm Diameter Change" -msgstr "Confirmer le changement de diamètre" +msgstr "Conferma modifica diametro" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:122 msgctxt "@label (%1 is a number)" msgid "" "The new filament diameter is set to %1 mm, which is not compatible with the " "current extruder. Do you wish to continue?" -msgstr "Le nouveau diamètre de filament est réglé sur %1 mm, ce qui n'est pas compatible avec l'extrudeuse actuelle. Souhaitez-vous poursuivre ?" +msgstr "Il nuovo diametro del filamento impostato a %1 mm non è compatibile con l'attuale estrusore. Continuare?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:152 msgctxt "@label" msgid "Display Name" -msgstr "Afficher le nom" +msgstr "Visualizza nome" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:171 msgctxt "@label" msgid "Brand" -msgstr "Marque" +msgstr "Marchio" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:190 msgctxt "@label" msgid "Material Type" -msgstr "Type de matériau" +msgstr "Tipo di materiale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:210 msgctxt "@label" msgid "Color" -msgstr "Couleur" +msgstr "Colore" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:262 msgctxt "@title" msgid "Material color picker" -msgstr "Sélecteur de couleur de matériau" +msgstr "Selettore colore materiale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:275 msgctxt "@label" msgid "Properties" -msgstr "Propriétés" +msgstr "Proprietà" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:286 msgctxt "@label" msgid "Density" -msgstr "Densité" +msgstr "Densità" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:319 msgctxt "@label" msgid "Diameter" -msgstr "Diamètre" +msgstr "Diametro" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:369 msgctxt "@label" msgid "Filament Cost" -msgstr "Coût du filament" +msgstr "Costo del filamento" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:401 msgctxt "@label" msgid "Filament weight" -msgstr "Poids du filament" +msgstr "Peso del filamento" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:433 msgctxt "@label" msgid "Filament length" -msgstr "Longueur du filament" +msgstr "Lunghezza del filamento" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:451 msgctxt "@label" msgid "Cost per Meter" -msgstr "Coût au mètre" +msgstr "Costo al metro" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:465 msgctxt "@label" msgid "This material is linked to %1 and shares some of its properties." -msgstr "Ce matériau est lié à %1 et partage certaines de ses propriétés." +msgstr "Questo materiale è collegato a %1 e condivide alcune delle sue proprietà." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:472 msgctxt "@label" msgid "Unlink Material" -msgstr "Délier le matériau" +msgstr "Scollega materiale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:485 msgctxt "@label" msgid "Description" -msgstr "Description" +msgstr "Descrizione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:503 msgctxt "@label" msgid "Adhesion Information" -msgstr "Informations d'adhérence" +msgstr "Informazioni sull’aderenza" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:642 msgctxt "@title" msgid "Information" -msgstr "Informations" +msgstr "Informazioni" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:647 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedPrintSetup.qml:82 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:18 msgctxt "@label" msgid "Print settings" -msgstr "Paramètres d'impression" +msgstr "Impostazioni di stampa" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:70 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:468 msgctxt "@title:tab" msgid "Materials" -msgstr "Matériaux" +msgstr "Materiali" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:72 msgctxt "@label" msgid "Materials compatible with active printer:" -msgstr "Matériaux compatibles avec l'imprimante active :" +msgstr "Materiali compatibili con la stampante attiva:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:78 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:94 msgctxt "@action:button" msgid "Create new" -msgstr "Créer" +msgstr "Crea nuovo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:90 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:88 msgctxt "@action:button" msgid "Import" -msgstr "Importer" +msgstr "Importa" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:101 msgctxt "@action:button" msgid "Sync with Printers" -msgstr "Synchroniser les imprimantes" +msgstr "Sincronizza con le stampanti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:160 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:142 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:294 msgctxt "@action:button" msgid "Activate" -msgstr "Activer" +msgstr "Attiva" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:174 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:311 msgctxt "@action:button" msgid "Duplicate" -msgstr "Dupliquer" +msgstr "Duplica" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:198 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:342 msgctxt "@action:button" msgid "Export" -msgstr "Exporter" +msgstr "Esporta" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:212 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:392 msgctxt "@title:window" msgid "Confirm Remove" -msgstr "Confirmer la suppression" +msgstr "Conferma rimozione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:215 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:393 msgctxt "@label (%1 is object name)" msgid "Are you sure you wish to remove %1? This cannot be undone!" -msgstr "Êtes-vous sûr de vouloir supprimer l'objet %1 ? Vous ne pourrez pas revenir en arrière !" +msgstr "Sei sicuro di voler rimuovere %1? Questa operazione non può essere annullata!" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:228 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:238 msgctxt "@title:window" msgid "Import Material" -msgstr "Importer un matériau" +msgstr "Importa materiale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:242 msgctxt "@info:status Don't translate the XML tag !" msgid "Successfully imported material %1" -msgstr "Matériau %1 importé avec succès" +msgstr "Materiale importato correttamente %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:245 msgctxt "@info:status Don't translate the XML tags or !" msgid "" "Could not import material %1: %2" -msgstr "Impossible d'importer le matériau %1 : %2" +msgstr "Impossibile importare materiale {1}: %2" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:256 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:267 msgctxt "@title:window" msgid "Export Material" -msgstr "Exporter un matériau" +msgstr "Esporta materiale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:272 msgctxt "@info:status Don't translate the XML tags and !" msgid "" "Failed to export material to %1: %2" -msgstr "Échec de l'exportation de matériau vers %1 : %2" +msgstr "Impossibile esportare il materiale su %1: %2" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:275 msgctxt "@info:status Don't translate the XML tag !" msgid "Successfully exported material to %1" -msgstr "Matériau exporté avec succès vers %1" +msgstr "Materiale esportato correttamente su %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityItem.qml:56 msgctxt "@item:tooltip" msgid "" "This setting has been hidden by the active machine and will not be visible." -msgstr "Ce paramètre a été masqué par la machine active et ne sera pas visible." +msgstr "Questa impostazione è stata nascosta dalla macchina attiva e non sarà visibile." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityItem.qml:73 msgctxt "@item:tooltip %1 is list of setting names" @@ -4139,306 +4137,306 @@ msgid "" msgid_plural "" "This setting has been hidden by the values of %1. Change the values of those " "settings to make this setting visible." -msgstr[0] "Ce paramètre a été masqué par la valeur de %1. Modifiez la valeur de ce paramètre pour le rendre visible." -msgstr[1] "Ce paramètre a été masqué par les valeurs de %1. Modifiez les valeurs de ces paramètres pour les rendre visibles." +msgstr[0] "Questa impostazione è stata nascosta dal valore di %1. Modifica il valore di tale impostazione per rendere visibile l’impostazione." +msgstr[1] "Questa impostazione è stata nascosta dai valori di %1. Modifica i valori di tali impostazioni per rendere visibile questa impostazione." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:14 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:461 msgctxt "@title:tab" msgid "General" -msgstr "Général" +msgstr "Generale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:172 msgctxt "@label" msgid "Interface" -msgstr "Interface" +msgstr "Interfaccia" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:215 msgctxt "@heading" msgid "-- incomplete --" -msgstr "--complet --" +msgstr "-- incompleto --" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:261 msgctxt "@label" msgid "Currency:" -msgstr "Devise :" +msgstr "Valuta:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:277 msgctxt "" "@label: Please keep the asterix, it's to indicate that a restart is needed." msgid "Theme*:" -msgstr "Thème* :" +msgstr "Tema*:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:323 msgctxt "@info:tooltip" msgid "Slice automatically when changing settings." -msgstr "Découper automatiquement si les paramètres sont modifiés." +msgstr "Seziona automaticamente alla modifica delle impostazioni." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:331 msgctxt "@option:check" msgid "Slice automatically" -msgstr "Découper automatiquement" +msgstr "Seziona automaticamente" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:340 msgctxt "@info:tooltip" msgid "Show an icon and notifications in the system notification area." -msgstr "Afficher une icône et des notifications dans la zone de notification du système." +msgstr "Mostra un'icona e le notifiche nell'area di notifica del sistema." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:348 msgctxt "@option:check" msgid "Add icon to system tray *" -msgstr "Ajouter une icône à la barre de notification *" +msgstr "Aggiungi l'icona alla barra delle applicazioni*" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:357 msgctxt "@label" msgid "" "*You will need to restart the application for these changes to have effect." -msgstr "*Vous devez redémarrer l'application pour appliquer ces changements." +msgstr "*Per rendere effettive le modifiche è necessario riavviare l'applicazione." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:373 msgctxt "@label" msgid "Viewport behavior" -msgstr "Comportement Viewport" +msgstr "Comportamento del riquadro di visualizzazione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:381 msgctxt "@info:tooltip" msgid "" "Highlight unsupported areas of the model in red. Without support these areas " "will not print properly." -msgstr "Surligne les parties non supportées du modèle en rouge. Sans ajouter de support, ces zones ne s'imprimeront pas correctement." +msgstr "Evidenzia in rosso le zone non supportate del modello. In assenza di supporto, queste aree non saranno stampate in modo corretto." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:390 msgctxt "@option:check" msgid "Display overhang" -msgstr "Mettre en surbrillance les porte-à-faux" +msgstr "Visualizza sbalzo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:400 msgctxt "@info:tooltip" msgid "" "Highlight missing or extraneous surfaces of the model using warning signs. " "The toolpaths will often be missing parts of the intended geometry." -msgstr "Surlignez les surfaces du modèle manquantes ou étrangères en utilisant les signes d'avertissement. Les Toolpaths seront souvent les parties manquantes" -" de la géométrie prévue." +msgstr "Evidenziare le superfici mancanti o estranee del modello utilizzando i simboli di avvertenza. I percorsi degli utensili spesso ignoreranno parti della" +" geometria prevista." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:409 msgctxt "@option:check" msgid "Display model errors" -msgstr "Afficher les erreurs du modèle" +msgstr "Visualizzare gli errori del modello" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:417 msgctxt "@info:tooltip" msgid "" "Moves the camera so the model is in the center of the view when a model is " "selected" -msgstr "Déplace la caméra afin que le modèle sélectionné se trouve au centre de la vue" +msgstr "Sposta la fotocamera in modo che il modello si trovi al centro della visualizzazione quando è selezionato" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:422 msgctxt "@action:button" msgid "Center camera when item is selected" -msgstr "Centrer la caméra lorsqu'un élément est sélectionné" +msgstr "Centratura fotocamera alla selezione dell'elemento" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:432 msgctxt "@info:tooltip" msgid "Should the default zoom behavior of cura be inverted?" -msgstr "Le comportement de zoom par défaut de Cura doit-il être inversé ?" +msgstr "Il comportamento dello zoom predefinito di Cura dovrebbe essere invertito?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:437 msgctxt "@action:button" msgid "Invert the direction of camera zoom." -msgstr "Inverser la direction du zoom de la caméra." +msgstr "Inverti la direzione dello zoom della fotocamera." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:453 msgctxt "@info:tooltip" msgid "Should zooming move in the direction of the mouse?" -msgstr "Le zoom doit-il se faire dans la direction de la souris ?" +msgstr "Lo zoom si muove nella direzione del mouse?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:453 msgctxt "@info:tooltip" msgid "" "Zooming towards the mouse is not supported in the orthographic perspective." -msgstr "Le zoom vers la souris n'est pas pris en charge dans la perspective orthographique." +msgstr "Nella prospettiva ortogonale lo zoom verso la direzione del mouse non è supportato." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:458 msgctxt "@action:button" msgid "Zoom toward mouse direction" -msgstr "Zoomer vers la direction de la souris" +msgstr "Zoom verso la direzione del mouse" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:484 msgctxt "@info:tooltip" msgid "" "Should models on the platform be moved so that they no longer intersect?" -msgstr "Les modèles dans la zone d'impression doivent-ils être déplacés afin de ne plus se croiser ?" +msgstr "I modelli sull’area di stampa devono essere spostati per evitare intersezioni?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:489 msgctxt "@option:check" msgid "Ensure models are kept apart" -msgstr "Veillez à ce que les modèles restent séparés" +msgstr "Assicurarsi che i modelli siano mantenuti separati" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:498 msgctxt "@info:tooltip" msgid "Should models on the platform be moved down to touch the build plate?" -msgstr "Les modèles dans la zone d'impression doivent-ils être abaissés afin de toucher le plateau ?" +msgstr "I modelli sull’area di stampa devono essere portati a contatto del piano di stampa?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:503 msgctxt "@option:check" msgid "Automatically drop models to the build plate" -msgstr "Abaisser automatiquement les modèles sur le plateau" +msgstr "Rilascia automaticamente i modelli sul piano di stampa" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:515 msgctxt "@info:tooltip" msgid "Show caution message in g-code reader." -msgstr "Afficher le message d'avertissement dans le lecteur G-Code." +msgstr "Visualizza il messaggio di avvertimento sul lettore codice G." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:524 msgctxt "@option:check" msgid "Caution message in g-code reader" -msgstr "Message d'avertissement dans le lecteur G-Code" +msgstr "Messaggio di avvertimento sul lettore codice G" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:532 msgctxt "@info:tooltip" msgid "Should layer be forced into compatibility mode?" -msgstr "La couche doit-elle être forcée en mode de compatibilité ?" +msgstr "Lo strato deve essere forzato in modalità di compatibilità?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:537 msgctxt "@option:check" msgid "Force layer view compatibility mode (restart required)" -msgstr "Forcer l'affichage de la couche en mode de compatibilité (redémarrage requis)" +msgstr "Forzare la modalità di compatibilità visualizzazione strato (riavvio necessario)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:547 msgctxt "@info:tooltip" msgid "Should Cura open at the location it was closed?" -msgstr "Est-ce que Cura devrait ouvrir à l'endroit où il a été fermé ?" +msgstr "Aprire Cura nel punto in cui è stato chiuso?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:552 msgctxt "@option:check" msgid "Restore window position on start" -msgstr "Restaurer la position de la fenêtre au démarrage" +msgstr "Ripristinare la posizione della finestra all'avvio" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:562 msgctxt "@info:tooltip" msgid "What type of camera rendering should be used?" -msgstr "Quel type de rendu de la caméra doit-il être utilisé?" +msgstr "Quale tipo di rendering della fotocamera è necessario utilizzare?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:569 msgctxt "@window:text" msgid "Camera rendering:" -msgstr "Rendu caméra :" +msgstr "Rendering fotocamera:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:576 msgid "Perspective" -msgstr "Perspective" +msgstr "Prospettiva" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:577 msgid "Orthographic" -msgstr "Orthographique" +msgstr "Ortogonale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:617 msgctxt "@label" msgid "Opening and saving files" -msgstr "Ouvrir et enregistrer des fichiers" +msgstr "Apertura e salvataggio file" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:624 msgctxt "@info:tooltip" msgid "" "Should opening files from the desktop or external applications open in the " "same instance of Cura?" -msgstr "L'ouverture de fichiers à partir du bureau ou d'applications externes doit-elle se faire dans la même instance de Cura ?" +msgstr "L'apertura dei file dal desktop o da applicazioni esterne deve essere eseguita nella stessa istanza di Cura?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:629 msgctxt "@option:check" msgid "Use a single instance of Cura" -msgstr "Utiliser une seule instance de Cura" +msgstr "Utilizzare una singola istanza di Cura" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:640 msgctxt "@info:tooltip" msgid "" "Should the build plate be cleared before loading a new model in the single " "instance of Cura?" -msgstr "Les objets doivent-ils être supprimés du plateau de fabrication avant de charger un nouveau modèle dans l'instance unique de Cura ?" +msgstr "È necessario pulire il piano di stampa prima di caricare un nuovo modello nella singola istanza di Cura?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:646 msgctxt "@option:check" msgid "Clear buildplate before loading model into the single instance" -msgstr "Supprimez les objets du plateau de fabrication avant de charger un modèle dans l'instance unique" +msgstr "Pulire il piano di stampa prima di caricare il modello nella singola istanza" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:656 msgctxt "@info:tooltip" msgid "Should models be scaled to the build volume if they are too large?" -msgstr "Les modèles doivent-ils être mis à l'échelle du volume d'impression s'ils sont trop grands ?" +msgstr "I modelli devono essere ridimensionati al volume di stampa, se troppo grandi?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:661 msgctxt "@option:check" msgid "Scale large models" -msgstr "Réduire la taille des modèles trop grands" +msgstr "Ridimensiona i modelli troppo grandi" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:671 msgctxt "@info:tooltip" msgid "" "An model may appear extremely small if its unit is for example in meters " "rather than millimeters. Should these models be scaled up?" -msgstr "Un modèle peut apparaître en tout petit si son unité est par exemple en mètres plutôt qu'en millimètres. Ces modèles doivent-ils être agrandis ?" +msgstr "Un modello può apparire eccessivamente piccolo se la sua unità di misura è espressa in metri anziché in millimetri. Questi modelli devono essere aumentati?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:676 msgctxt "@option:check" msgid "Scale extremely small models" -msgstr "Mettre à l'échelle les modèles extrêmement petits" +msgstr "Ridimensiona i modelli eccessivamente piccoli" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:686 msgctxt "@info:tooltip" msgid "Should models be selected after they are loaded?" -msgstr "Les modèles doivent-ils être sélectionnés après leur chargement ?" +msgstr "I modelli devono essere selezionati dopo essere stati caricati?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:691 msgctxt "@option:check" msgid "Select models when loaded" -msgstr "Sélectionner les modèles lorsqu'ils sont chargés" +msgstr "Selezionare i modelli dopo il caricamento" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:701 msgctxt "@info:tooltip" msgid "" "Should a prefix based on the printer name be added to the print job name " "automatically?" -msgstr "Un préfixe basé sur le nom de l'imprimante doit-il être automatiquement ajouté au nom de la tâche d'impression ?" +msgstr "Al nome del processo di stampa deve essere aggiunto automaticamente un prefisso basato sul nome della stampante?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:706 msgctxt "@option:check" msgid "Add machine prefix to job name" -msgstr "Ajouter le préfixe de la machine au nom de la tâche" +msgstr "Aggiungi al nome del processo un prefisso macchina" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:716 msgctxt "@info:tooltip" msgid "Should a summary be shown when saving a project file?" -msgstr "Un résumé doit-il être affiché lors de l'enregistrement d'un fichier de projet ?" +msgstr "Quando si salva un file di progetto deve essere visualizzato un riepilogo?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:720 msgctxt "@option:check" msgid "Show summary dialog when saving project" -msgstr "Afficher la boîte de dialogue du résumé lors de l'enregistrement du projet" +msgstr "Visualizza una finestra di riepilogo quando si salva un progetto" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:730 msgctxt "@info:tooltip" msgid "Default behavior when opening a project file" -msgstr "Comportement par défaut lors de l'ouverture d'un fichier de projet" +msgstr "Comportamento predefinito all'apertura di un file progetto" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:738 msgctxt "@window:text" msgid "Default behavior when opening a project file: " -msgstr "Comportement par défaut lors de l'ouverture d'un fichier de projet : " +msgstr "Comportamento predefinito all'apertura di un file progetto: " #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:753 msgctxt "@option:openProject" msgid "Always ask me this" -msgstr "Toujours me demander" +msgstr "Chiedi sempre" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:754 msgctxt "@option:openProject" msgid "Always open as a project" -msgstr "Toujours ouvrir comme projet" +msgstr "Apri sempre come progetto" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:755 msgctxt "@option:openProject" msgid "Always import models" -msgstr "Toujours importer les modèles" +msgstr "Importa sempre i modelli" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:792 msgctxt "@info:tooltip" @@ -4446,42 +4444,42 @@ msgid "" "When you have made changes to a profile and switched to a different one, a " "dialog will be shown asking whether you want to keep your modifications or " "not, or you can choose a default behaviour and never show that dialog again." -msgstr "Lorsque vous apportez des modifications à un profil puis passez à un autre profil, une boîte de dialogue apparaît, vous demandant si vous souhaitez conserver" -" les modifications. Vous pouvez aussi choisir une option par défaut, et le dialogue ne s'affichera plus." +msgstr "Dopo aver modificato un profilo ed essere passati a un altro, si apre una finestra di dialogo che chiede se mantenere o eliminare le modifiche oppure se" +" scegliere un comportamento predefinito e non visualizzare più tale finestra di dialogo." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:801 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedPrintSetup.qml:36 msgctxt "@label" msgid "Profiles" -msgstr "Profils" +msgstr "Profili" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:806 msgctxt "@window:text" msgid "" "Default behavior for changed setting values when switching to a different " "profile: " -msgstr "Comportement par défaut pour les valeurs de paramètres modifiées lors du passage à un profil différent : " +msgstr "Comportamento predefinito per i valori di impostazione modificati al passaggio a un profilo diverso: " #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:820 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:115 msgctxt "@option:discardOrKeep" msgid "Always ask me this" -msgstr "Toujours me demander" +msgstr "Chiedi sempre" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:821 msgctxt "@option:discardOrKeep" msgid "Always discard changed settings" -msgstr "Toujours rejeter les paramètres modifiés" +msgstr "Elimina sempre le impostazioni modificate" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:822 msgctxt "@option:discardOrKeep" msgid "Always transfer changed settings to new profile" -msgstr "Toujours transférer les paramètres modifiés dans le nouveau profil" +msgstr "Trasferisci sempre le impostazioni modificate a un nuovo profilo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:856 msgctxt "@label" msgid "Privacy" -msgstr "Confidentialité" +msgstr "Privacy" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:862 msgctxt "@info:tooltip" @@ -4489,1053 +4487,1051 @@ msgid "" "Should anonymous data about your print be sent to Ultimaker? Note, no " "models, IP addresses or other personally identifiable information is sent or " "stored." -msgstr "Les données anonymes de votre impression doivent-elles être envoyées à Ultimaker ? Notez qu'aucun modèle, aucune adresse IP ni aucune autre information" -" permettant de vous identifier personnellement ne seront envoyés ou stockés." +msgstr "I dati anonimi sulla stampa devono essere inviati a Ultimaker? Nota, non sono trasmessi o memorizzati modelli, indirizzi IP o altre informazioni personali." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:867 msgctxt "@option:check" msgid "Send (anonymous) print information" -msgstr "Envoyer des informations (anonymes) sur l'impression" +msgstr "Invia informazioni di stampa (anonime)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:897 msgctxt "@label" msgid "Updates" -msgstr "Mises à jour" +msgstr "Aggiornamenti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:904 msgctxt "@info:tooltip" msgid "Should Cura check for updates when the program is started?" -msgstr "Cura doit-il vérifier les mises à jour au démarrage du programme ?" +msgstr "Cura deve verificare la presenza di eventuali aggiornamenti all’avvio del programma?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:909 msgctxt "@option:check" msgid "Check for updates on start" -msgstr "Vérifier les mises à jour au démarrage" +msgstr "Controlla aggiornamenti all’avvio" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:925 msgctxt "@info:tooltip" msgid "When checking for updates, only check for stable releases." -msgstr "Lorsque vous vérifiez les mises à jour, ne vérifiez que les versions stables." +msgstr "Quando si verifica la presenza di aggiornamenti, cercare solo versioni stabili." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:931 msgctxt "@option:radio" msgid "Stable releases only" -msgstr "Uniquement les versions stables" +msgstr "Solo versioni stabili" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:941 msgctxt "@info:tooltip" msgid "When checking for updates, check for both stable and for beta releases." -msgstr "Lorsque vous recherchez des mises à jour, vérifiez à la fois les versions stables et les versions bêta." +msgstr "Quando si verifica la presenza di aggiornamenti, cercare versioni stabili e beta." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:947 msgctxt "@option:radio" msgid "Stable and Beta releases" -msgstr "Versions stables et bêta" +msgstr "Versioni stabili e beta" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:957 msgctxt "@info:tooltip" msgid "" "Should an automatic check for new plugins be done every time Cura is " "started? It is highly recommended that you do not disable this!" -msgstr "Une vérification automatique des nouveaux plugins doit-elle être effectuée à chaque fois que Cura est lancé ? Il est fortement recommandé de ne pas désactiver" -" cette fonction !" +msgstr "È necessario verificare automaticamente la presenza di nuovi plugin ad ogni avvio di Cura? Si consiglia di non disabilitare questa opzione!" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:962 msgctxt "@option:check" msgid "Get notifications for plugin updates" -msgstr "Recevoir des notifications pour les mises à jour des plugins" +msgstr "Ricevi notifiche di aggiornamenti plugin" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/RenameDialog.qml:22 msgctxt "@title:window" msgid "Rename" -msgstr "Renommer" +msgstr "Rinomina" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/RenameDialog.qml:23 msgctxt "@info" msgid "Please provide a new name." -msgstr "Veuillez indiquer un nouveau nom." +msgstr "Indicare un nuovo nome." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:17 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:466 msgctxt "@title:tab" msgid "Printers" -msgstr "Imprimantes" +msgstr "Stampanti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:50 msgctxt "@action:button" msgid "Add New" -msgstr "Ajouter un nouveau" +msgstr "Aggiungi nuovo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:154 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:331 msgctxt "@action:button" msgid "Rename" -msgstr "Renommer" +msgstr "Rinomina" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:57 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:470 msgctxt "@title:tab" msgid "Profiles" -msgstr "Profils" +msgstr "Profili" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:59 msgctxt "@label" msgid "Profiles compatible with active printer:" -msgstr "Profils compatibles avec l'imprimante active :" +msgstr "Profili compatibili con la stampante attiva:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:98 msgctxt "@action:tooltip" msgid "Create new profile from current settings/overrides" -msgstr "Créer un nouveau profil à partir des paramètres/remplacements actuels" +msgstr "Crea nuovo profilo dalle impostazioni/esclusioni correnti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:125 msgctxt "@action:label" msgid "Some settings from current profile were overwritten." -msgstr "Certains paramètres du profil actuel ont été remplacés." +msgstr "Alcune impostazioni del profilo corrente sono state sovrascritte." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:140 msgctxt "@action:button" msgid "Update profile." -msgstr "Mettre à jour le profil." +msgstr "Aggiornare il profilo." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:143 msgctxt "@action:tooltip" msgid "Update profile with current settings/overrides" -msgstr "Mettre à jour le profil avec les paramètres actuels  / forcer" +msgstr "Aggiorna il profilo con le impostazioni/esclusioni correnti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:148 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:256 msgctxt "@action:button" msgid "Discard current changes" -msgstr "Ignorer les modifications actuelles" +msgstr "Elimina le modifiche correnti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:158 msgctxt "@action:label" msgid "" "This profile uses the defaults specified by the printer, so it has no " "settings/overrides in the list below." -msgstr "Ce profil utilise les paramètres par défaut spécifiés par l'imprimante, de sorte qu'aucun paramètre / forçage n'apparaît dans la liste ci-dessous." +msgstr "Questo profilo utilizza le impostazioni predefinite dalla stampante, perciò non ci sono impostazioni/esclusioni nell’elenco riportato di seguito." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:165 msgctxt "@action:label" msgid "Your current settings match the selected profile." -msgstr "Vos paramètres actuels correspondent au profil sélectionné." +msgstr "Le impostazioni correnti corrispondono al profilo selezionato." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:175 msgctxt "@title:tab" msgid "Global Settings" -msgstr "Paramètres généraux" +msgstr "Impostazioni globali" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:278 msgctxt "@title:window" msgid "Create Profile" -msgstr "Créer un profil" +msgstr "Crea profilo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:280 msgctxt "@info" msgid "Please provide a name for this profile." -msgstr "Veuillez fournir un nom pour ce profil." +msgstr "Indica un nome per questo profilo." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:352 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:368 msgctxt "@title:window" msgid "Export Profile" -msgstr "Exporter un profil" +msgstr "Esporta profilo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:382 msgctxt "@title:window" msgid "Duplicate Profile" -msgstr "Dupliquer un profil" +msgstr "Duplica profilo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:409 msgctxt "@title:window" msgid "Rename Profile" -msgstr "Renommer le profil" +msgstr "Rinomina profilo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:422 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:429 msgctxt "@title:window" msgid "Import Profile" -msgstr "Importer un profil" +msgstr "Importa profilo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewsSelector.qml:50 msgctxt "@label" msgid "View type" -msgstr "Type d'affichage" +msgstr "Visualizza tipo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewOrientationControls.qml:25 msgctxt "@info:tooltip" msgid "3D View" -msgstr "Vue 3D" +msgstr "Visualizzazione 3D" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewOrientationControls.qml:38 msgctxt "@info:tooltip" msgid "Front View" -msgstr "Vue de face" +msgstr "Visualizzazione frontale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewOrientationControls.qml:51 msgctxt "@info:tooltip" msgid "Top View" -msgstr "Vue du dessus" +msgstr "Visualizzazione superiore" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewOrientationControls.qml:64 msgctxt "@info:tooltip" msgid "Left View" -msgstr "Vue gauche" +msgstr "Vista sinistra" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewOrientationControls.qml:77 msgctxt "@info:tooltip" msgid "Right View" -msgstr "Vue droite" +msgstr "Vista destra" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectItemButton.qml:109 msgctxt "@label" msgid "Is printed as support." -msgstr "Est imprimé comme support." +msgstr "Viene stampato come supporto." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectItemButton.qml:112 msgctxt "@label" msgid "Other models overlapping with this model are modified." -msgstr "D'autres modèles qui se chevauchent avec ce modèle ont été modifiés." +msgstr "Gli altri modelli che si sovrappongono a questo modello sono stati modificati." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectItemButton.qml:115 msgctxt "@label" msgid "Infill overlapping with this model is modified." -msgstr "Le chevauchement de remplissage avec ce modèle a été modifié." +msgstr "La sovrapposizione del riempimento con questo modello è stata modificata." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectItemButton.qml:118 msgctxt "@label" msgid "Overlaps with this model are not supported." -msgstr "Les chevauchements avec ce modèle ne sont pas pris en charge." +msgstr "Le sovrapposizioni con questo modello non sono supportate." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectItemButton.qml:125 msgctxt "@label %1 is the number of settings it overrides." msgid "Overrides %1 setting." msgid_plural "Overrides %1 settings." -msgstr[0] "Remplace le paramètre %1." -msgstr[1] "Remplace les paramètres %1." +msgstr[0] "Ignora %1 impostazione." +msgstr[1] "Ignora %1 impostazioni." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintMonitor.qml:156 msgctxt "@label" msgid "Active print" -msgstr "Activer l'impression" +msgstr "Stampa attiva" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintMonitor.qml:164 msgctxt "@label" msgid "Job Name" -msgstr "Nom de la tâche" +msgstr "Nome del processo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintMonitor.qml:172 msgctxt "@label" msgid "Printing Time" -msgstr "Durée d'impression" +msgstr "Tempo di stampa" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintMonitor.qml:180 msgctxt "@label" msgid "Estimated time left" -msgstr "Durée restante estimée" +msgstr "Tempo residuo stimato" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkOrLocalPrinterContent.qml:24 msgctxt "@label" msgid "Add a printer" -msgstr "Ajouter une imprimante" +msgstr "Aggiungi una stampante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkOrLocalPrinterContent.qml:38 msgctxt "@label" msgid "Add a networked printer" -msgstr "Ajouter une imprimante en réseau" +msgstr "Aggiungi una stampante in rete" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkOrLocalPrinterContent.qml:87 msgctxt "@label" msgid "Add a non-networked printer" -msgstr "Ajouter une imprimante hors réseau" +msgstr "Aggiungi una stampante non in rete" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:28 msgctxt "@label" msgid "What's New" -msgstr "Nouveautés" +msgstr "Scopri le novità" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:203 msgctxt "@label" msgid "Manufacturer" -msgstr "Fabricant" +msgstr "Produttore" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:214 msgctxt "@label" msgid "Profile author" -msgstr "Auteur du profil" +msgstr "Autore profilo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:226 msgctxt "@label" msgid "Printer name" -msgstr "Nom de l'imprimante" +msgstr "Nome stampante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:232 msgctxt "@text" msgid "Please name your printer" -msgstr "Veuillez nommer votre imprimante" +msgstr "Dare un nome alla stampante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/ChangelogContent.qml:24 msgctxt "@label" msgid "Release Notes" -msgstr "Notes de version" +msgstr "Note sulla versione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml:43 msgctxt "@label" msgid "There is no printer found over your network." -msgstr "Aucune imprimante n'a été trouvée sur votre réseau." +msgstr "Non è stata trovata alcuna stampante sulla rete." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml:162 msgctxt "@label" msgid "Refresh" -msgstr "Rafraîchir" +msgstr "Aggiorna" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml:173 msgctxt "@label" msgid "Add printer by IP" -msgstr "Ajouter une imprimante par IP" +msgstr "Aggiungi stampante per IP" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml:184 msgctxt "@label" msgid "Add cloud printer" -msgstr "Ajouter une imprimante cloud" +msgstr "Aggiungere una stampante cloud" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml:220 msgctxt "@label" msgid "Troubleshooting" -msgstr "Dépannage" +msgstr "Ricerca e riparazione dei guasti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:64 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/GeneralOperations.qml:19 msgctxt "@label" msgid "Sign in to the Ultimaker platform" -msgstr "Connectez-vous à la plateforme Ultimaker" +msgstr "Accedi alla piattaforma Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:123 msgctxt "@text" msgid "Add material settings and plugins from the Marketplace" -msgstr "Ajoutez des paramètres de matériaux et des plug-ins depuis la Marketplace" +msgstr "Aggiungi impostazioni materiale e plugin dal Marketplace" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:149 msgctxt "@text" msgid "Backup and sync your material settings and plugins" -msgstr "Sauvegardez et synchronisez vos paramètres de matériaux et vos plug-ins" +msgstr "Esegui il backup e la sincronizzazione delle impostazioni materiale e dei plugin" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:175 msgctxt "@text" msgid "Share ideas and get help from 48,000+ users in the Ultimaker Community" -msgstr "Partagez vos idées et obtenez l'aide de plus de 48 000 utilisateurs de la communauté Ultimaker" +msgstr "Condividi idee e ottieni supporto da più di 48.000 utenti nella community di Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:189 msgctxt "@button" msgid "Skip" -msgstr "Ignorer" +msgstr "Salta" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:201 msgctxt "@text" msgid "Create a free Ultimaker Account" -msgstr "Créez gratuitement un compte Ultimaker" +msgstr "Crea un account Ultimaker gratuito" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:24 msgctxt "@label" msgid "Help us to improve Ultimaker Cura" -msgstr "Aidez-nous à améliorer Ultimaker Cura" +msgstr "Aiutaci a migliorare Ultimaker Cura" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:56 msgctxt "@text" msgid "" "Ultimaker Cura collects anonymous data to improve print quality and user " "experience, including:" -msgstr "Ultimaker Cura recueille des données anonymes pour améliorer la qualité d'impression et l'expérience utilisateur, notamment :" +msgstr "Ultimaker Cura acquisisce dati anonimi per migliorare la qualità di stampa e l'esperienza dell'utente, tra cui:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:68 msgctxt "@text" msgid "Machine types" -msgstr "Types de machines" +msgstr "Tipi di macchine" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:74 msgctxt "@text" msgid "Material usage" -msgstr "Utilisation du matériau" +msgstr "Utilizzo dei materiali" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:80 msgctxt "@text" msgid "Number of slices" -msgstr "Nombre de découpes" +msgstr "Numero di sezionamenti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:86 msgctxt "@text" msgid "Print settings" -msgstr "Paramètres d'impression" +msgstr "Impostazioni di stampa" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:99 msgctxt "@text" msgid "" "Data collected by Ultimaker Cura will not contain any personal information." -msgstr "Les données recueillies par Ultimaker Cura ne contiendront aucun renseignement personnel." +msgstr "I dati acquisiti da Ultimaker Cura non conterranno alcuna informazione personale." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:100 msgctxt "@text" msgid "More information" -msgstr "Plus d'informations" +msgstr "Ulteriori informazioni" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DropDownWidget.qml:93 msgctxt "@label" msgid "Empty" -msgstr "Vide" +msgstr "Vuoto" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:47 msgctxt "@label" msgid "Add a Cloud printer" -msgstr "Ajouter une imprimante cloud" +msgstr "Aggiungere una stampante cloud" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:73 msgctxt "@label" msgid "Waiting for Cloud response" -msgstr "En attente d'une réponse cloud" +msgstr "In attesa della risposta del cloud" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:83 msgctxt "@label" msgid "No printers found in your account?" -msgstr "Aucune imprimante trouvée dans votre compte ?" +msgstr "Non sono presenti stampanti nel cloud?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:117 msgctxt "@label" msgid "The following printers in your account have been added in Cura:" -msgstr "Les imprimantes suivantes de votre compte ont été ajoutées à Cura :" +msgstr "Le seguenti stampanti del tuo account sono state aggiunte in Cura:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:186 msgctxt "@button" msgid "Add printer manually" -msgstr "Ajouter l'imprimante manuellement" +msgstr "Aggiungere la stampante manualmente" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:23 msgctxt "@label" msgid "User Agreement" -msgstr "Accord utilisateur" +msgstr "Contratto di licenza" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:67 msgctxt "@button" msgid "Decline and close" -msgstr "Décliner et fermer" +msgstr "Rifiuta e chiudi" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:70 msgctxt "@label" msgid "Add printer by IP address" -msgstr "Ajouter une imprimante par adresse IP" +msgstr "Aggiungi stampante per indirizzo IP" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:128 msgctxt "@text" msgid "Enter your printer's IP address." -msgstr "Saisissez l'adresse IP de votre imprimante." +msgstr "Inserire l'indirizzo IP della stampante." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:150 msgctxt "@button" msgid "Add" -msgstr "Ajouter" +msgstr "Aggiungi" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:195 msgctxt "@label" msgid "Could not connect to device." -msgstr "Impossible de se connecter à l'appareil." +msgstr "Impossibile connettersi al dispositivo." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:196 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:201 msgctxt "@label" msgid "Can't connect to your Ultimaker printer?" -msgstr "Impossible de vous connecter à votre imprimante Ultimaker ?" +msgstr "Non è possibile effettuare la connessione alla stampante Ultimaker?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:200 msgctxt "@label" msgid "The printer at this address has not responded yet." -msgstr "L'imprimante à cette adresse n'a pas encore répondu." +msgstr "La stampante a questo indirizzo non ha ancora risposto." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:231 msgctxt "@label" msgid "" "This printer cannot be added because it's an unknown printer or it's not the " "host of a group." -msgstr "Cette imprimante ne peut pas être ajoutée parce qu'il s'agit d'une imprimante inconnue ou de l'hôte d'un groupe." +msgstr "Questa stampante non può essere aggiunta perché è una stampante sconosciuta o non è l'host di un gruppo." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:312 msgctxt "@button" msgid "Connect" -msgstr "Se connecter" +msgstr "Collega" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/WelcomeContent.qml:56 msgctxt "@label" msgid "Welcome to Ultimaker Cura" -msgstr "Bienvenue dans Ultimaker Cura" +msgstr "Benvenuto in Ultimaker Cura" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/WelcomeContent.qml:67 msgctxt "@text" msgid "" "Please follow these steps to set up Ultimaker Cura. This will only take a " "few moments." -msgstr "Veuillez suivre ces étapes pour configurer\nUltimaker Cura. Cela ne prendra que quelques instants." +msgstr "Segui questa procedura per configurare\nUltimaker Cura. Questa operazione richiederà solo pochi istanti." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/WelcomeContent.qml:82 msgctxt "@button" msgid "Get started" -msgstr "Prise en main" +msgstr "Per iniziare" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectSelector.qml:59 msgctxt "@label" msgid "Object list" -msgstr "Liste d'objets" +msgstr "Elenco oggetti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:81 msgctxt "@action:inmenu" msgid "Show Online Troubleshooting" -msgstr "Afficher le dépannage en ligne" +msgstr "Mostra ricerca e riparazione dei guasti online" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:88 msgctxt "@action:inmenu" msgid "Toggle Full Screen" -msgstr "Passer en Plein écran" +msgstr "Attiva/disattiva schermo intero" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:96 msgctxt "@action:inmenu" msgid "Exit Full Screen" -msgstr "Quitter le mode plein écran" +msgstr "Esci da schermo intero" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:103 msgctxt "@action:inmenu menubar:edit" msgid "&Undo" -msgstr "&Annuler" +msgstr "&Annulla" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:113 msgctxt "@action:inmenu menubar:edit" msgid "&Redo" -msgstr "&Rétablir" +msgstr "Ri&peti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:131 msgctxt "@action:inmenu menubar:file" msgid "&Quit" -msgstr "&Quitter" +msgstr "&Esci" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:139 msgctxt "@action:inmenu menubar:view" msgid "3D View" -msgstr "Vue 3D" +msgstr "Visualizzazione 3D" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:146 msgctxt "@action:inmenu menubar:view" msgid "Front View" -msgstr "Vue de face" +msgstr "Visualizzazione frontale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:153 msgctxt "@action:inmenu menubar:view" msgid "Top View" -msgstr "Vue du dessus" +msgstr "Visualizzazione superiore" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:160 msgctxt "@action:inmenu menubar:view" msgid "Bottom View" -msgstr "Vue de dessous" +msgstr "Vista inferiore" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:167 msgctxt "@action:inmenu menubar:view" msgid "Left Side View" -msgstr "Vue latérale gauche" +msgstr "Visualizzazione lato sinistro" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:174 msgctxt "@action:inmenu menubar:view" msgid "Right Side View" -msgstr "Vue latérale droite" +msgstr "Visualizzazione lato destro" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:188 msgctxt "@action:inmenu" msgid "Configure Cura..." -msgstr "Configurer Cura..." +msgstr "Configura Cura..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:195 msgctxt "@action:inmenu menubar:printer" msgid "&Add Printer..." -msgstr "&Ajouter une imprimante..." +msgstr "&Aggiungi stampante..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:201 msgctxt "@action:inmenu menubar:printer" msgid "Manage Pr&inters..." -msgstr "Gérer les &imprimantes..." +msgstr "Gestione stampanti..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:208 msgctxt "@action:inmenu" msgid "Manage Materials..." -msgstr "Gérer les matériaux..." +msgstr "Gestione materiali..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:216 msgctxt "" "@action:inmenu Marketplace is a brand name of Ultimaker's, so don't " "translate." msgid "Add more materials from Marketplace" -msgstr "Ajouter d'autres matériaux depuis la Marketplace" +msgstr "Aggiungere altri materiali da Marketplace" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:223 msgctxt "@action:inmenu menubar:profile" msgid "&Update profile with current settings/overrides" -msgstr "&Mettre à jour le profil à l'aide des paramètres / forçages actuels" +msgstr "&Aggiorna il profilo con le impostazioni/esclusioni correnti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:231 msgctxt "@action:inmenu menubar:profile" msgid "&Discard current changes" -msgstr "&Ignorer les modifications actuelles" +msgstr "&Elimina le modifiche correnti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:243 msgctxt "@action:inmenu menubar:profile" msgid "&Create profile from current settings/overrides..." -msgstr "&Créer un profil à partir des paramètres / forçages actuels..." +msgstr "&Crea profilo dalle impostazioni/esclusioni correnti..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:249 msgctxt "@action:inmenu menubar:profile" msgid "Manage Profiles..." -msgstr "Gérer les profils..." +msgstr "Gestione profili..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:257 msgctxt "@action:inmenu menubar:help" msgid "Show Online &Documentation" -msgstr "Afficher la &documentation en ligne" +msgstr "Mostra documentazione &online" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:265 msgctxt "@action:inmenu menubar:help" msgid "Report a &Bug" -msgstr "Notifier un &bug" +msgstr "Se&gnala un errore" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:273 msgctxt "@action:inmenu menubar:help" msgid "What's New" -msgstr "Quoi de neuf" +msgstr "Scopri le novità" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:287 msgctxt "@action:inmenu menubar:help" msgid "About..." -msgstr "À propos de..." +msgstr "Informazioni..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:294 msgctxt "@action:inmenu menubar:edit" msgid "Delete Selected" -msgstr "Supprimer la sélection" +msgstr "Cancella selezionati" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:304 msgctxt "@action:inmenu menubar:edit" msgid "Center Selected" -msgstr "Centrer la sélection" +msgstr "Centra selezionati" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:313 msgctxt "@action:inmenu menubar:edit" msgid "Multiply Selected" -msgstr "Multiplier la sélection" +msgstr "Moltiplica selezionati" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:322 msgctxt "@action:inmenu" msgid "Delete Model" -msgstr "Supprimer le modèle" +msgstr "Elimina modello" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:330 msgctxt "@action:inmenu" msgid "Ce&nter Model on Platform" -msgstr "Ce&ntrer le modèle sur le plateau" +msgstr "C&entra modello su piattaforma" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:336 msgctxt "@action:inmenu menubar:edit" msgid "&Group Models" -msgstr "&Grouper les modèles" +msgstr "&Raggruppa modelli" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:356 msgctxt "@action:inmenu menubar:edit" msgid "Ungroup Models" -msgstr "Dégrouper les modèles" +msgstr "Separa modelli" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:366 msgctxt "@action:inmenu menubar:edit" msgid "&Merge Models" -msgstr "&Fusionner les modèles" +msgstr "&Unisci modelli" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:376 msgctxt "@action:inmenu" msgid "&Multiply Model..." -msgstr "&Multiplier le modèle..." +msgstr "Mo<iplica modello..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:383 msgctxt "@action:inmenu menubar:edit" msgid "Select All Models" -msgstr "Sélectionner tous les modèles" +msgstr "Seleziona tutti i modelli" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:393 msgctxt "@action:inmenu menubar:edit" msgid "Clear Build Plate" -msgstr "Supprimer les objets du plateau" +msgstr "Cancellare piano di stampa" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:403 msgctxt "@action:inmenu menubar:file" msgid "Reload All Models" -msgstr "Recharger tous les modèles" +msgstr "Ricarica tutti i modelli" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:412 msgctxt "@action:inmenu menubar:edit" msgid "Arrange All Models" -msgstr "Réorganiser tous les modèles" +msgstr "Sistema tutti i modelli" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:420 msgctxt "@action:inmenu menubar:edit" msgid "Arrange Selection" -msgstr "Réorganiser la sélection" +msgstr "Sistema selezione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:427 msgctxt "@action:inmenu menubar:edit" msgid "Reset All Model Positions" -msgstr "Réinitialiser toutes les positions des modèles" +msgstr "Reimposta tutte le posizioni dei modelli" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:434 msgctxt "@action:inmenu menubar:edit" msgid "Reset All Model Transformations" -msgstr "Réinitialiser tous les modèles et transformations" +msgstr "Reimposta tutte le trasformazioni dei modelli" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:443 msgctxt "@action:inmenu menubar:file" msgid "&Open File(s)..." -msgstr "&Ouvrir le(s) fichier(s)..." +msgstr "&Apri file..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:453 msgctxt "@action:inmenu menubar:file" msgid "&New Project..." -msgstr "&Nouveau projet..." +msgstr "&Nuovo Progetto..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:460 msgctxt "@action:inmenu menubar:help" msgid "Show Configuration Folder" -msgstr "Afficher le dossier de configuration" +msgstr "Mostra cartella di configurazione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ExtruderButton.qml:16 msgctxt "@label %1 is filled in with the name of an extruder" msgid "Print Selected Model with %1" msgid_plural "Print Selected Models with %1" -msgstr[0] "Imprimer le modèle sélectionné avec %1" -msgstr[1] "Imprimer les modèles sélectionnés avec %1" +msgstr[0] "Stampa modello selezionato con %1" +msgstr[1] "Stampa modelli selezionati con %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:115 msgctxt "@label:MonitorStatus" msgid "Not connected to a printer" -msgstr "Non connecté à une imprimante" +msgstr "Non collegato ad una stampante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:119 msgctxt "@label:MonitorStatus" msgid "Printer does not accept commands" -msgstr "L'imprimante n'accepte pas les commandes" +msgstr "La stampante non accetta comandi" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:129 msgctxt "@label:MonitorStatus" msgid "In maintenance. Please check the printer" -msgstr "En maintenance. Vérifiez l'imprimante" +msgstr "In manutenzione. Controllare la stampante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:140 msgctxt "@label:MonitorStatus" msgid "Lost connection with the printer" -msgstr "Connexion avec l'imprimante perdue" +msgstr "Persa connessione con la stampante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:142 msgctxt "@label:MonitorStatus" msgid "Printing..." -msgstr "Impression..." +msgstr "Stampa in corso..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:145 msgctxt "@label:MonitorStatus" msgid "Paused" -msgstr "En pause" +msgstr "In pausa" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:148 msgctxt "@label:MonitorStatus" msgid "Preparing..." -msgstr "Préparation..." +msgstr "Preparazione in corso..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:150 msgctxt "@label:MonitorStatus" msgid "Please remove the print" -msgstr "Supprimez l'imprimante" +msgstr "Rimuovere la stampa" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:318 msgctxt "@label" msgid "Abort Print" -msgstr "Abandonner l'impression" +msgstr "Interrompi la stampa" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:327 msgctxt "@label" msgid "Are you sure you want to abort the print?" -msgstr "Êtes-vous sûr(e) de vouloir abandonner l'impression ?" +msgstr "Sei sicuro di voler interrompere la stampa?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ProfileOverview.qml:36 msgctxt "@title:column" msgid "Setting" -msgstr "Paramètre" +msgstr "Impostazione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ProfileOverview.qml:37 msgctxt "@title:column" msgid "Profile" -msgstr "Profil" +msgstr "Profilo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ProfileOverview.qml:38 msgctxt "@title:column" msgid "Current" -msgstr "Actuel" +msgstr "Corrente" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ProfileOverview.qml:39 msgctxt "@title:column Unit of measurement" msgid "Unit" -msgstr "Unité" +msgstr "Unità" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:34 msgctxt "@title:menu" msgid "&Material" -msgstr "&Matériau" +msgstr "Ma&teriale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:49 msgctxt "@action:inmenu" msgid "Set as Active Extruder" -msgstr "Définir comme extrudeur actif" +msgstr "Imposta come estrusore attivo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:55 msgctxt "@action:inmenu" msgid "Enable Extruder" -msgstr "Activer l'extrudeuse" +msgstr "Abilita estrusore" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:63 msgctxt "@action:inmenu" msgid "Disable Extruder" -msgstr "Désactiver l'extrudeuse" +msgstr "Disabilita estrusore" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/FileMenu.qml:13 msgctxt "@title:menu menubar:toplevel" msgid "&File" -msgstr "&Fichier" +msgstr "&File" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/FileMenu.qml:45 msgctxt "@title:menu menubar:file" msgid "&Save Project..." -msgstr "&Enregistrer le projet..." +msgstr "&Salva progetto..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/FileMenu.qml:78 msgctxt "@title:menu menubar:file" msgid "&Export..." -msgstr "E&xporter..." +msgstr "&Esporta..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/FileMenu.qml:89 msgctxt "@action:inmenu menubar:file" msgid "Export Selection..." -msgstr "Exporter la sélection..." +msgstr "Esporta selezione..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/MaterialMenu.qml:13 msgctxt "@label:category menu label" msgid "Material" -msgstr "Matériau" +msgstr "Materiale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/MaterialMenu.qml:53 msgctxt "@label:category menu label" msgid "Favorites" -msgstr "Favoris" +msgstr "Preferiti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/MaterialMenu.qml:78 msgctxt "@label:category menu label" msgid "Generic" -msgstr "Générique" +msgstr "Generale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/PrinterMenu.qml:13 msgctxt "@title:menu menubar:settings" msgid "&Printer" -msgstr "Im&primante" +msgstr "S&tampante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/PrinterMenu.qml:17 msgctxt "@label:category menu label" msgid "Network enabled printers" -msgstr "Imprimantes réseau" +msgstr "Stampanti abilitate per la rete" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/PrinterMenu.qml:50 msgctxt "@label:category menu label" msgid "Local printers" -msgstr "Imprimantes locales" +msgstr "Stampanti locali" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ExtensionMenu.qml:13 msgctxt "@title:menu menubar:toplevel" msgid "E&xtensions" -msgstr "E&xtensions" +msgstr "Es&tensioni" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/OpenFilesMenu.qml:15 msgctxt "@title:menu menubar:file" msgid "Open File(s)..." -msgstr "Ouvrir le(s) fichier(s)..." +msgstr "Apri file..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/PreferencesMenu.qml:21 msgctxt "@title:menu menubar:toplevel" msgid "P&references" -msgstr "P&références" +msgstr "P&referenze" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/AutoConfiguration.qml:18 msgctxt "@header" msgid "Configurations" -msgstr "Configurations" +msgstr "Configurazioni" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:27 msgctxt "@header" msgid "Custom" -msgstr "Personnalisé" +msgstr "Personalizzata" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:173 msgctxt "@label" msgid "Enabled" -msgstr "Activé" +msgstr "Abilitato" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:222 msgctxt "@label" msgid "Material" -msgstr "Matériau" +msgstr "Materiale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:348 msgctxt "@label" msgid "Use glue for better adhesion with this material combination." -msgstr "Utiliser de la colle pour une meilleure adhérence avec cette combinaison de matériaux." +msgstr "Utilizzare la colla per una migliore adesione con questa combinazione di materiali." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationListView.qml:52 msgctxt "@label" msgid "Loading available configurations from the printer..." -msgstr "Chargement des configurations disponibles à partir de l'imprimante..." +msgstr "Caricamento in corso configurazioni disponibili dalla stampante..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationListView.qml:53 msgctxt "@label" msgid "" "The configurations are not available because the printer is disconnected." -msgstr "Les configurations ne sont pas disponibles car l'imprimante est déconnectée." +msgstr "Le configurazioni non sono disponibili perché la stampante è scollegata." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationItem.qml:137 msgctxt "@label" msgid "" "This configuration is not available because %1 is not recognized. Please " "visit %2 to download the correct material profile." -msgstr "Cette configuration n'est pas disponible car %1 n'est pas reconnu. Veuillez visiter %2 pour télécharger le profil matériel correct." +msgstr "Questa configurazione non è disponibile perché %1 non viene riconosciuto. Visitare %2 per scaricare il profilo materiale corretto." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationItem.qml:138 msgctxt "@label" msgid "Marketplace" -msgstr "Marché en ligne" +msgstr "Mercato" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:106 msgctxt "@tooltip" msgid "" "The configuration of this extruder is not allowed, and prohibits slicing." -msgstr "La configuration de cet extrudeur n'est pas autorisée et interdit la découpe." +msgstr "La configurazione di questo estrusore non è consentita e proibisce il sezionamento." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:110 msgctxt "@tooltip" msgid "There are no profiles matching the configuration of this extruder." -msgstr "Aucun profil ne correspond à la configuration de cet extrudeur." +msgstr "Nessun profilo corrispondente alla configurazione di questo estrusore." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:250 msgctxt "@label" msgid "Select configuration" -msgstr "Sélectionner la configuration" +msgstr "Seleziona configurazione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:358 msgctxt "@label" msgid "Configurations" -msgstr "Configurations" +msgstr "Configurazioni" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/HelpMenu.qml:14 msgctxt "@title:menu menubar:toplevel" msgid "&Help" -msgstr "&Aide" +msgstr "&Help" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SaveProjectMenu.qml:15 msgctxt "@title:menu menubar:file" msgid "Save Project..." -msgstr "Sauvegarder le projet..." +msgstr "Salva progetto..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/RecentFilesMenu.qml:15 msgctxt "@title:menu menubar:file" msgid "Open &Recent" -msgstr "Ouvrir un fichier &récent" +msgstr "Ap&ri recenti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ViewMenu.qml:13 msgctxt "@title:menu menubar:toplevel" msgid "&View" -msgstr "&Visualisation" +msgstr "&Visualizza" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ViewMenu.qml:17 msgctxt "@action:inmenu menubar:view" msgid "&Camera position" -msgstr "Position de la &caméra" +msgstr "&Posizione fotocamera" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ViewMenu.qml:30 msgctxt "@action:inmenu menubar:view" msgid "Camera view" -msgstr "Vue de la caméra" +msgstr "Visualizzazione fotocamera" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ViewMenu.qml:48 msgctxt "@action:inmenu menubar:view" msgid "Perspective" -msgstr "Perspective" +msgstr "Prospettiva" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ViewMenu.qml:59 msgctxt "@action:inmenu menubar:view" msgid "Orthographic" -msgstr "Orthographique" +msgstr "Ortogonale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ContextMenu.qml:29 msgctxt "@label" msgid "Print Selected Model With:" msgid_plural "Print Selected Models With:" -msgstr[0] "Imprimer le modèle sélectionné avec :" -msgstr[1] "Imprimer les modèles sélectionnés avec :" +msgstr[0] "Stampa modello selezionato con:" +msgstr[1] "Stampa modelli selezionati con:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ContextMenu.qml:92 msgctxt "@title:window" msgid "Multiply Selected Model" msgid_plural "Multiply Selected Models" -msgstr[0] "Multiplier le modèle sélectionné" -msgstr[1] "Multiplier les modèles sélectionnés" +msgstr[0] "Moltiplica modello selezionato" +msgstr[1] "Moltiplica modelli selezionati" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ContextMenu.qml:123 msgctxt "@label" msgid "Number of Copies" -msgstr "Nombre de copies" +msgstr "Numero di copie" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/EditMenu.qml:12 msgctxt "@title:menu menubar:toplevel" msgid "&Edit" -msgstr "&Modifier" +msgstr "&Modifica" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:16 msgctxt "@action:inmenu" msgid "Visible Settings" -msgstr "Paramètres visibles" +msgstr "Impostazioni visibili" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:42 msgctxt "@action:inmenu" msgid "Collapse All Categories" -msgstr "Réduire toutes les catégories" +msgstr "Comprimi tutte le categorie" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:51 msgctxt "@action:inmenu" msgid "Manage Setting Visibility..." -msgstr "Gérer la visibilité des paramètres..." +msgstr "Gestisci Impostazione visibilità..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:17 msgctxt "@title:window" msgid "Select Printer" -msgstr "Sélectionner une imprimante" +msgstr "Seleziona stampante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:54 msgctxt "@title:label" msgid "Compatible Printers" -msgstr "Imprimantes compatibles" +msgstr "Stampanti compatibili" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:94 msgctxt "@description" msgid "No compatible printers, that are currently online, where found." -msgstr "Aucune imprimante compatible actuellement en ligne n'a été trouvée." +msgstr "Nessuna stampante compatibile trovata online." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:16 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:635 msgctxt "@title:window" msgid "Open file(s)" -msgstr "Ouvrir le(s) fichier(s)" +msgstr "Apri file" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:47 msgctxt "@text:window" @@ -5543,45 +5539,45 @@ msgid "" "We have found one or more project file(s) within the files you have " "selected. You can open only one project file at a time. We suggest to only " "import models from those files. Would you like to proceed?" -msgstr "Nous avons trouvé au moins un fichier de projet parmi les fichiers que vous avez sélectionnés. Vous ne pouvez ouvrir qu'un seul fichier de projet à la" -" fois. Nous vous conseillons de n'importer que les modèles de ces fichiers. Souhaitez-vous continuer ?" +msgstr "Rilevata la presenza di uno o più file progetto tra i file selezionati. È possibile aprire solo un file progetto alla volta. Si suggerisce di importare" +" i modelli solo da tali file. Vuoi procedere?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:64 msgctxt "@action:button" msgid "Import all as models" -msgstr "Importer tout comme modèles" +msgstr "Importa tutto come modelli" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:17 msgctxt "@title:window" msgid "Open project file" -msgstr "Ouvrir un fichier de projet" +msgstr "Apri file progetto" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:84 msgctxt "@text:window" msgid "" "This is a Cura project file. Would you like to open it as a project or " "import the models from it?" -msgstr "Ceci est un fichier de projet Cura. Souhaitez-vous l'ouvrir comme projet ou en importer les modèles ?" +msgstr "Questo è un file progetto Cura. Vuoi aprirlo come progetto o importarne i modelli?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:91 msgctxt "@text:window" msgid "Remember my choice" -msgstr "Se souvenir de mon choix" +msgstr "Ricorda la scelta" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:105 msgctxt "@action:button" msgid "Open as project" -msgstr "Ouvrir comme projet" +msgstr "Apri come progetto" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:110 msgctxt "@action:button" msgid "Import models" -msgstr "Importer les modèles" +msgstr "Importa i modelli" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:13 msgctxt "@title:window" msgid "Discard or Keep changes" -msgstr "Annuler ou conserver les modifications" +msgstr "Elimina o mantieni modifiche" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:59 msgctxt "@text:window, %1 is a profile name" @@ -5589,341 +5585,341 @@ msgid "" "You have customized some profile settings. Would you like to Keep these " "changed settings after switching profiles? Alternatively, you can discard " "the changes to load the defaults from '%1'." -msgstr "Vous avez personnalisé certains paramètres de profil.\nSouhaitez-vous conserver ces paramètres modifiés après avoir changé de profil ?\nVous pouvez également" -" annuler les modifications pour charger les valeurs par défaut de '%1'." +msgstr "Alcune impostazioni di profilo sono state personalizzate.\nMantenere queste impostazioni modificate dopo il cambio dei profili?\nIn alternativa, è possibile" +" eliminare le modifiche per caricare i valori predefiniti da '%1'." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:85 msgctxt "@title:column" msgid "Profile settings" -msgstr "Paramètres du profil" +msgstr "Impostazioni profilo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:87 msgctxt "@title:column" msgid "Current changes" -msgstr "Modifications actuelles" +msgstr "Modifiche correnti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:116 msgctxt "@option:discardOrKeep" msgid "Discard and never ask again" -msgstr "Annuler et ne plus me demander" +msgstr "Elimina e non chiedere nuovamente" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:117 msgctxt "@option:discardOrKeep" msgid "Keep and never ask again" -msgstr "Conserver et ne plus me demander" +msgstr "Mantieni e non chiedere nuovamente" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:147 msgctxt "@action:button" msgid "Discard changes" -msgstr "Annuler les modifications" +msgstr "Elimina modifiche" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:153 msgctxt "@action:button" msgid "Keep changes" -msgstr "Conserver les modifications" +msgstr "Mantieni modifiche" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:14 msgctxt "@title:window" msgid "Save Project" -msgstr "Enregistrer le projet" +msgstr "Salva progetto" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:177 msgctxt "@action:label" msgid "Extruder %1" -msgstr "Extrudeuse %1" +msgstr "Estrusore %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:193 msgctxt "@action:label" msgid "%1 & material" -msgstr "%1 & matériau" +msgstr "%1 & materiale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:195 msgctxt "@action:label" msgid "Material" -msgstr "Matériau" +msgstr "Materiale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:284 msgctxt "@action:label" msgid "Don't show project summary on save again" -msgstr "Ne pas afficher à nouveau le résumé du projet lors de l'enregistrement" +msgstr "Non mostrare il riepilogo di progetto alla ripetizione di salva" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:298 msgctxt "@action:button" msgid "Save" -msgstr "Enregistrer" +msgstr "Salva" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:15 msgctxt "@title:window The argument is the application name." msgid "About %1" -msgstr "À propos de %1" +msgstr "Informazioni su %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:59 msgctxt "@label" msgid "version: %1" -msgstr "version : %1" +msgstr "versione: %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:74 msgctxt "@label" msgid "End-to-end solution for fused filament 3D printing." -msgstr "Solution complète pour l'impression 3D par dépôt de filament fondu." +msgstr "Soluzione end-to-end per la stampa 3D con filamento fuso." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:87 msgctxt "@info:credit" msgid "" "Cura is developed by Ultimaker B.V. in cooperation with the community.\n" "Cura proudly uses the following open source projects:" -msgstr "Cura a été développé par Ultimaker B.V. en coopération avec la communauté Ultimaker.\nCura est fier d'utiliser les projets open source suivants :" +msgstr "Cura è stato sviluppato da Ultimaker B.V. in cooperazione con la comunità.\nCura è orgogliosa di utilizzare i seguenti progetti open source:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:138 msgctxt "@label Description for application component" msgid "Graphical user interface" -msgstr "Interface utilisateur graphique" +msgstr "Interfaccia grafica utente" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:139 msgctxt "@label Description for application component" msgid "Application framework" -msgstr "Cadre d'application" +msgstr "Struttura applicazione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:140 msgctxt "@label Description for application component" msgid "G-code generator" -msgstr "Générateur G-Code" +msgstr "Generatore codice G" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:141 msgctxt "@label Description for application component" msgid "Interprocess communication library" -msgstr "Bibliothèque de communication interprocess" +msgstr "Libreria di comunicazione intra-processo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:142 msgctxt "@label Description for application component" msgid "Python bindings for libnest2d" -msgstr "Liens en python pour libnest2d" +msgstr "Vincoli Python per libnest2d" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:143 msgctxt "@label Description for application component" msgid "Polygon packing library, developed by Prusa Research" -msgstr "Bibliothèque d'emballage de polygones, développée par Prusa Research" +msgstr "Libreria di impacchettamento dei poligoni sviluppata da Prusa Research" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:144 msgctxt "@label Description for application component" msgid "Support library for handling 3MF files" -msgstr "Prise en charge de la bibliothèque pour le traitement des fichiers 3MF" +msgstr "Libreria di supporto per gestione file 3MF" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:145 msgctxt "@label Description for application component" msgid "Support library for file metadata and streaming" -msgstr "Prise en charge de la bibliothèque pour les métadonnées et le streaming de fichiers" +msgstr "Libreria di supporto per metadati file e streaming" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:148 msgctxt "@label Description for application dependency" msgid "Programming language" -msgstr "Langage de programmation" +msgstr "Lingua di programmazione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:149 msgctxt "@label Description for application dependency" msgid "GUI framework" -msgstr "Cadre IUG" +msgstr "Struttura GUI" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:150 msgctxt "@label Description for application dependency" msgid "GUI framework bindings" -msgstr "Liens cadre IUG" +msgstr "Vincoli struttura GUI" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:151 msgctxt "@label Description for application dependency" msgid "C/C++ Binding library" -msgstr "Bibliothèque C/C++ Binding" +msgstr "Libreria vincoli C/C++" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:152 msgctxt "@label Description for application dependency" msgid "Data interchange format" -msgstr "Format d'échange de données" +msgstr "Formato scambio dati" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:153 msgctxt "@label" msgid "Font" -msgstr "Police" +msgstr "Font" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:156 msgctxt "@label Description for application dependency" msgid "Polygon clipping library" -msgstr "Bibliothèque de découpe polygone" +msgstr "Libreria ritaglio poligono" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:157 msgctxt "@label Description for application dependency" msgid "JSON parser" -msgstr "Analyseur JSON" +msgstr "Analizzatore JSON" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:158 msgctxt "@label Description for application dependency" msgid "Utility functions, including an image loader" -msgstr "Fonctions utilitaires, y compris un chargeur d'images" +msgstr "Funzioni di utilità, tra cui un caricatore di immagini" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:159 msgctxt "@label Description for application dependency" msgid "Utility library, including Voronoi generation" -msgstr "Bibliothèque d'utilitaires, y compris la génération d'un diagramme Voronoï" +msgstr "Libreria utilità, tra cui generazione diagramma Voronoi" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:162 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:163 msgctxt "@label Description for application dependency" msgid "Root Certificates for validating SSL trustworthiness" -msgstr "Certificats racines pour valider la fiabilité SSL" +msgstr "Certificati di origine per la convalida dell'affidabilità SSL" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:164 msgctxt "@label Description for application dependency" msgid "Compatibility between Python 2 and 3" -msgstr "Compatibilité entre Python 2 et Python 3" +msgstr "Compatibilità tra Python 2 e 3" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:165 msgctxt "@label Description for application dependency" msgid "Support library for system keyring access" -msgstr "Bibliothèque de support pour l'accès au trousseau de clés du système" +msgstr "Libreria di supporto per accesso a keyring sistema" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:166 msgctxt "@label Description for application dependency" msgid "Support library for faster math" -msgstr "Prise en charge de la bibliothèque pour des maths plus rapides" +msgstr "Libreria di supporto per calcolo rapido" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:167 msgctxt "@label Description for application dependency" msgid "Support library for handling STL files" -msgstr "Prise en charge de la bibliothèque pour le traitement des fichiers STL" +msgstr "Libreria di supporto per gestione file STL" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:168 msgctxt "@label Description for application dependency" msgid "Python bindings for Clipper" -msgstr "Connexions avec Python pour Clipper" +msgstr "Vincoli Python per Clipper" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:169 msgctxt "@label Description for application dependency" msgid "Serial communication library" -msgstr "Bibliothèque de communication série" +msgstr "Libreria di comunicazione seriale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:170 msgctxt "@label Description for application dependency" msgid "Support library for scientific computing" -msgstr "Prise en charge de la bibliothèque pour le calcul scientifique" +msgstr "Libreria di supporto per calcolo scientifico" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:171 msgctxt "@Label Description for application dependency" msgid "Python Error tracking library" -msgstr "Bibliothèque de suivi des erreurs Python" +msgstr "Libreria per la traccia degli errori Python" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:172 msgctxt "@label Description for application dependency" msgid "Support library for handling triangular meshes" -msgstr "Prise en charge de la bibliothèque pour le traitement des mailles triangulaires" +msgstr "Libreria di supporto per gestione maglie triangolari" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:173 msgctxt "@label Description for application dependency" msgid "ZeroConf discovery library" -msgstr "Bibliothèque de découverte ZeroConf" +msgstr "Libreria scoperta ZeroConf" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:176 msgctxt "@label Description for development tool" msgid "Universal build system configuration" -msgstr "Configuration du système de fabrication universel" +msgstr "Configurazione universale del sistema di build" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:177 msgctxt "@label Description for development tool" msgid "Dependency and package manager" -msgstr "Gestionnaire des dépendances et des packages" +msgstr "Gestore della dipendenza e del pacchetto" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:178 msgctxt "@label Description for development tool" msgid "Packaging Python-applications" -msgstr "Packaging d'applications Python" +msgstr "Pacchetto applicazioni Python" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:179 msgctxt "@label Description for development tool" msgid "Linux cross-distribution application deployment" -msgstr "Déploiement d'applications sur multiples distributions Linux" +msgstr "Apertura applicazione distribuzione incrociata Linux" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:180 msgctxt "@label Description for development tool" msgid "Generating Windows installers" -msgstr "Génération de programmes d'installation Windows" +msgstr "Generazione installatori Windows" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ColorDialog.qml:107 msgctxt "@label" msgid "Hex" -msgstr "Hex" +msgstr "Esagonale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:32 msgctxt "@label:button" msgid "My printers" -msgstr "Mes imprimantes" +msgstr "Le mie stampanti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:34 msgctxt "@tooltip:button" msgid "Monitor printers in Ultimaker Digital Factory." -msgstr "Surveillez les imprimantes dans Ultimaker Digital Factory." +msgstr "Monitora le stampanti in Ultimaker Digital Factory." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:41 msgctxt "@tooltip:button" msgid "Create print projects in Digital Library." -msgstr "Créez des projets d'impression dans Digital Library." +msgstr "Crea progetti di stampa in Digital Library." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:46 msgctxt "@label:button" msgid "Print jobs" -msgstr "Tâches d'impression" +msgstr "Processi di stampa" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:48 msgctxt "@tooltip:button" msgid "Monitor print jobs and reprint from your print history." -msgstr "Surveillez les tâches d'impression et réimprimez à partir de votre historique d'impression." +msgstr "Monitora i processi di stampa dalla cronologia di stampa." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:55 msgctxt "@tooltip:button" msgid "Extend Ultimaker Cura with plugins and material profiles." -msgstr "Étendez Ultimaker Cura avec des plug-ins et des profils de matériaux." +msgstr "Estendi Ultimaker Cura con plugin e profili del materiale." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:62 msgctxt "@tooltip:button" msgid "Become a 3D printing expert with Ultimaker e-learning." -msgstr "Devenez un expert de l'impression 3D avec les cours de formation en ligne Ultimaker." +msgstr "Diventa un esperto di stampa 3D con e-learning Ultimaker." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:67 msgctxt "@label:button" msgid "Ultimaker support" -msgstr "Assistance ultimaker" +msgstr "Supporto Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:69 msgctxt "@tooltip:button" msgid "Learn how to get started with Ultimaker Cura." -msgstr "Découvrez comment utiliser Ultimaker Cura." +msgstr "Scopri come iniziare a utilizzare Ultimaker Cura." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:74 msgctxt "@label:button" msgid "Ask a question" -msgstr "Posez une question" +msgstr "Fai una domanda" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:76 msgctxt "@tooltip:button" msgid "Consult the Ultimaker Community." -msgstr "Consultez la communauté Ultimaker." +msgstr "Consulta la community di Ultimaker." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:81 msgctxt "@label:button" msgid "Report a bug" -msgstr "Notifier un bug" +msgstr "Segnala un errore" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:83 msgctxt "@tooltip:button" msgid "Let developers know that something is going wrong." -msgstr "Informez les développeurs en cas de problème." +msgstr "Informa gli sviluppatori che si è verificato un errore." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:90 msgctxt "@tooltip:button" msgid "Visit the Ultimaker website." -msgstr "Visitez le site web Ultimaker." +msgstr "Visita il sito Web Ultimaker." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedSupportSelector.qml:40 msgctxt "@label" msgid "Support" -msgstr "Support" +msgstr "Supporto" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedSupportSelector.qml:44 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedSupportSelector.qml:78 @@ -5931,17 +5927,17 @@ msgctxt "@label" msgid "" "Generate structures to support parts of the model which have overhangs. " "Without these structures, such parts would collapse during printing." -msgstr "Générer des structures pour soutenir les parties du modèle qui possèdent des porte-à-faux. Sans ces structures, ces parties s'effondreront durant l'impression." +msgstr "Genera strutture per supportare le parti del modello a sbalzo. Senza queste strutture, queste parti collasserebbero durante la stampa." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:54 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is active and you overwrote some settings." -msgstr "Le profil personnalisé %1 est actif et vous avez remplacé certains paramètres." +msgstr "%1 profilo personalizzato è attivo e sono state sovrascritte alcune impostazioni." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:68 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is overriding some settings." -msgstr "Le profil personnalisé %1 remplace certains paramètres." +msgstr "1% profilo personalizzato sta sovrascrivendo alcune impostazioni." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:79 msgctxt "@info" @@ -5953,12 +5949,12 @@ msgstr "Alcune impostazioni sono state modificate." msgctxt "@label" msgid "" "Gradual infill will gradually increase the amount of infill towards the top." -msgstr "Un remplissage graduel augmentera la quantité de remplissage vers le haut." +msgstr "Un riempimento graduale aumenterà gradualmente la quantità di riempimento verso l'alto." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:216 msgctxt "@label" msgid "Gradual infill" -msgstr "Remplissage graduel" +msgstr "Riempimento graduale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/UnsupportedProfileIndication.qml:31 msgctxt "@error" @@ -5980,15 +5976,14 @@ msgstr "Ulteriori informazioni" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedAdhesionSelector.qml:27 msgctxt "@label" msgid "Adhesion" -msgstr "Adhérence" +msgstr "Adesione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedAdhesionSelector.qml:76 msgctxt "@label" msgid "" "Enable printing a brim or raft. This will add a flat area around or under " "your object which is easy to cut off afterwards." -msgstr "Activez l'impression d'une bordure ou plaquette (Brim/Raft). Cela ajoutera une zone plate autour de ou sous votre objet qui est facile à découper par la" -" suite." +msgstr "Abilita stampa di brim o raft. Questa funzione aggiunge un’area piana attorno o sotto l’oggetto, facile da tagliare successivamente." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedResolutionSelector.qml:27 msgctxt "@label" @@ -5998,37 +5993,37 @@ msgstr "Risoluzione" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:20 msgctxt "@label shown when we load a Gcode file" msgid "Print setup disabled. G-code file can not be modified." -msgstr "Configuration d'impression désactivée. Le fichier G-Code ne peut pas être modifié." +msgstr "Impostazione di stampa disabilitata. Il file G-code non può essere modificato." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelectorHeader.qml:13 msgctxt "@label:Should be short" msgid "On" -msgstr "On" +msgstr "Inserita" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelectorHeader.qml:14 msgctxt "@label:Should be short" msgid "Off" -msgstr "Off" +msgstr "Disinserita" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelectorHeader.qml:34 msgctxt "@label" msgid "Experimental" -msgstr "Expérimental" +msgstr "Sperimentale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelectorContents.qml:142 msgctxt "@button" msgid "Recommended" -msgstr "Recommandé" +msgstr "Consigliata" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelectorContents.qml:156 msgctxt "@button" msgid "Custom" -msgstr "Personnalisé" +msgstr "Personalizzata" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Custom/CustomPrintSetup.qml:46 msgctxt "@label" msgid "Profile" -msgstr "Profil" +msgstr "Profilo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Custom/CustomPrintSetup.qml:145 msgctxt "@tooltip" @@ -6037,52 +6032,51 @@ msgid "" "profile.\n" "\n" "Click to open the profile manager." -msgstr "Certaines valeurs de paramètre / forçage sont différentes des valeurs enregistrées dans le profil. \n\nCliquez pour ouvrir le gestionnaire de profils." +msgstr "Alcuni valori di impostazione/esclusione sono diversi dai valori memorizzati nel profilo.\n\nFare clic per aprire la gestione profili." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:158 msgctxt "@label:header" msgid "Custom profiles" -msgstr "Personnaliser les profils" +msgstr "Profili personalizzati" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/OutputDeviceHeader.qml:55 msgctxt "@info:status" msgid "The printer is not connected." -msgstr "L'imprimante n'est pas connectée." +msgstr "La stampante non è collegata." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:25 msgctxt "@label" msgid "Build plate" -msgstr "Plateau" +msgstr "Piano di stampa" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:55 msgctxt "@tooltip" msgid "" "The target temperature of the heated bed. The bed will heat up or cool down " "towards this temperature. If this is 0, the bed heating is turned off." -msgstr "Température cible du plateau chauffant. Le plateau sera chauffé ou refroidi pour tendre vers cette température. Si la valeur est 0, le chauffage du plateau" -" sera éteint." +msgstr "La temperatura target del piano riscaldato. Il piano verrà riscaldato o raffreddato a questa temperatura. Se è 0, il riscaldamento del piano viene disattivato." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:88 msgctxt "@tooltip" msgid "The current temperature of the heated bed." -msgstr "Température actuelle du plateau chauffant." +msgstr "La temperatura corrente del piano riscaldato." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:162 msgctxt "@tooltip of temperature input" msgid "The temperature to pre-heat the bed to." -msgstr "Température jusqu'à laquelle préchauffer le plateau." +msgstr "La temperatura di preriscaldo del piano." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:259 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:271 msgctxt "@button Cancel pre-heating" msgid "Cancel" -msgstr "Annuler" +msgstr "Annulla" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:263 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:274 msgctxt "@button" msgid "Pre-heat" -msgstr "Préchauffer" +msgstr "Pre-riscaldo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:286 msgctxt "@tooltip of pre-heat" @@ -6090,31 +6084,31 @@ msgid "" "Heat the bed in advance before printing. You can continue adjusting your " "print while it is heating, and you won't have to wait for the bed to heat up " "when you're ready to print." -msgstr "Préchauffez le plateau avant l'impression. Vous pouvez continuer à ajuster votre impression pendant qu'il chauffe, et vous n'aurez pas à attendre que le" -" plateau chauffe lorsque vous serez prêt à lancer l'impression." +msgstr "Riscalda il piano prima della stampa. È possibile continuare a regolare la stampa durante il riscaldamento e non è necessario attendere il riscaldamento" +" del piano quando si è pronti per la stampa." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:40 msgctxt "@label" msgid "Extruder" -msgstr "Extrudeuse" +msgstr "Estrusore" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:70 msgctxt "@tooltip" msgid "" "The target temperature of the hotend. The hotend will heat up or cool down " "towards this temperature. If this is 0, the hotend heating is turned off." -msgstr "Température cible de l'extrémité chauffante. L'extrémité chauffante sera chauffée ou refroidie pour tendre vers cette température. Si la valeur est 0," -" le chauffage de l'extrémité chauffante sera coupé." +msgstr "Temperatura target dell'estremità riscaldata. L'estremità riscaldata si riscalderà o raffredderà sino a questo valore di temperatura. Se questo è 0, l'estremità" +" riscaldata verrà spenta." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:105 msgctxt "@tooltip" msgid "The current temperature of this hotend." -msgstr "Température actuelle de cette extrémité chauffante." +msgstr "La temperatura corrente di questa estremità calda." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:182 msgctxt "@tooltip of temperature input" msgid "The temperature to pre-heat the hotend to." -msgstr "Température jusqu'à laquelle préchauffer l'extrémité chauffante." +msgstr "La temperatura di preriscaldo dell’estremità calda." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:297 msgctxt "@tooltip of pre-heat" @@ -6122,33 +6116,33 @@ msgid "" "Heat the hotend in advance before printing. You can continue adjusting your " "print while it is heating, and you won't have to wait for the hotend to heat " "up when you're ready to print." -msgstr "Préchauffez l'extrémité chauffante avant l'impression. Vous pouvez continuer l'ajustement de votre impression pendant qu'elle chauffe, ce qui vous évitera" -" un temps d'attente lorsque vous serez prêt à lancer l'impression." +msgstr "Riscalda l’estremità calda prima della stampa. È possibile continuare a regolare la stampa durante il riscaldamento e non è necessario attendere il riscaldamento" +" dell’estremità calda quando si è pronti per la stampa." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:335 msgctxt "@tooltip" msgid "The colour of the material in this extruder." -msgstr "Couleur du matériau dans cet extrudeur." +msgstr "Il colore del materiale di questo estrusore." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:367 msgctxt "@tooltip" msgid "The material in this extruder." -msgstr "Matériau dans cet extrudeur." +msgstr "Il materiale di questo estrusore." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:400 msgctxt "@tooltip" msgid "The nozzle inserted in this extruder." -msgstr "Buse insérée dans cet extrudeur." +msgstr "L’ugello inserito in questo estrusore." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:51 msgctxt "@label" msgid "Printer control" -msgstr "Contrôle de l'imprimante" +msgstr "Comando stampante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:66 msgctxt "@label" msgid "Jog Position" -msgstr "Position de coupe" +msgstr "Posizione Jog" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:82 msgctxt "@label" @@ -6163,50 +6157,50 @@ msgstr "Z" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:217 msgctxt "@label" msgid "Jog Distance" -msgstr "Distance de coupe" +msgstr "Distanza Jog" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:257 msgctxt "@label" msgid "Send G-code" -msgstr "Envoyer G-Code" +msgstr "Invia codice G" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:319 msgctxt "@tooltip of G-code command input" msgid "" "Send a custom G-code command to the connected printer. Press 'enter' to send " "the command." -msgstr "Envoyer une commande G-Code personnalisée à l'imprimante connectée. Appuyez sur « Entrée » pour envoyer la commande." +msgstr "Invia un comando codice G personalizzato alla stampante connessa. Premere ‘invio’ per inviare il comando." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:250 msgctxt "@label" msgid "This package will be installed after restarting." -msgstr "Ce paquet sera installé après le redémarrage." +msgstr "Questo pacchetto sarà installato dopo il riavvio." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:464 msgctxt "@title:tab" msgid "Settings" -msgstr "Paramètres" +msgstr "Impostazioni" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:587 msgctxt "@title:window %1 is the application name" msgid "Closing %1" -msgstr "Fermeture de %1" +msgstr "Chiusura di %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:588 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:597 msgctxt "@label %1 is the application name" msgid "Are you sure you want to exit %1?" -msgstr "Voulez-vous vraiment quitter %1 ?" +msgstr "Chiudere %1?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:740 msgctxt "@window:title" msgid "Install Package" -msgstr "Installer le paquet" +msgstr "Installa il pacchetto" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:747 msgctxt "@title:window" msgid "Open File(s)" -msgstr "Ouvrir le(s) fichier(s)" +msgstr "Apri file" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:749 msgctxt "@text:window" @@ -6214,18 +6208,18 @@ msgid "" "We have found one or more G-Code files within the files you have selected. " "You can only open one G-Code file at a time. If you want to open a G-Code " "file, please just select only one." -msgstr "Nous avons trouvé au moins un fichier G-Code parmi les fichiers que vous avez sélectionné. Vous ne pouvez ouvrir qu'un seul fichier G-Code à la fois. Si" -" vous souhaitez ouvrir un fichier G-Code, veuillez ne sélectionner qu'un seul fichier de ce type." +msgstr "Rilevata la presenza di uno o più file codice G tra i file selezionati. È possibile aprire solo un file codice G alla volta. Se desideri aprire un file" +" codice G, selezionane uno solo." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:829 msgctxt "@title:window" msgid "Add Printer" -msgstr "Ajouter une imprimante" +msgstr "Aggiungi stampante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:837 msgctxt "@title:window" msgid "What's New" -msgstr "Quoi de neuf" +msgstr "Scopri le novità" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/GeneralOperations.qml:39 msgctxt "@text" @@ -6233,151 +6227,151 @@ msgid "" "- Add material profiles and plug-ins from the Marketplace\n" "- Back-up and sync your material profiles and plug-ins\n" "- Share ideas and get help from 48,000+ users in the Ultimaker community" -msgstr "- Ajoutez des profils de matériaux et des plug-ins à partir de la Marketplace\n- Sauvegardez et synchronisez vos profils de matériaux et vos plug-ins\n-" -" Partagez vos idées et obtenez l'aide de plus de 48 000 utilisateurs de la communauté Ultimaker" +msgstr "- Aggiungi profili materiale e plugin dal Marketplace\n- Esegui il backup e la sincronizzazione dei profili materiale e dei plugin\n- Condividi idee e" +" ottieni supporto da più di 48.000 utenti nella community di Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/GeneralOperations.qml:58 msgctxt "@button" msgid "Create a free Ultimaker account" -msgstr "Créez gratuitement un compte Ultimaker" +msgstr "Crea un account Ultimaker gratuito" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/AccountWidget.qml:24 msgctxt "@action:button" msgid "Sign in" -msgstr "Se connecter" +msgstr "Accedi" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/UserOperations.qml:78 msgctxt "@label The argument is a timestamp" msgid "Last update: %1" -msgstr "Dernière mise à jour : %1" +msgstr "Ultimo aggiornamento: %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/UserOperations.qml:107 msgctxt "@button" msgid "Ultimaker Account" -msgstr "Compte Ultimaker" +msgstr "Account Ultimaker" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/UserOperations.qml:126 msgctxt "@button" msgid "Sign Out" -msgstr "Déconnexion" +msgstr "Esci" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/SyncState.qml:35 msgctxt "@label" msgid "Checking..." -msgstr "Vérification en cours..." +msgstr "Verifica in corso..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/SyncState.qml:42 msgctxt "@label" msgid "Account synced" -msgstr "Compte synchronisé" +msgstr "Account sincronizzato" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/SyncState.qml:49 msgctxt "@label" msgid "Something went wrong..." -msgstr "Un problème s'est produit..." +msgstr "Si è verificato un errore..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/SyncState.qml:102 msgctxt "@button" msgid "Install pending updates" -msgstr "Installer les mises à jour en attente" +msgstr "Installare gli aggiornamenti in attesa" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/SyncState.qml:123 msgctxt "@button" msgid "Check for account updates" -msgstr "Rechercher des mises à jour de compte" +msgstr "Verificare gli aggiornamenti dell'account" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:47 msgctxt "@status" msgid "" "The cloud printer is offline. Please check if the printer is turned on and " "connected to the internet." -msgstr "L'imprimante cloud est hors ligne. Veuillez vérifier si l'imprimante est activée et connectée à Internet." +msgstr "La stampante cloud è offline. Verificare se la stampante è accesa e collegata a Internet." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:51 msgctxt "@status" msgid "" "This printer is not linked to your account. Please visit the Ultimaker " "Digital Factory to establish a connection." -msgstr "Cette imprimante n'est pas associée à votre compte. Veuillez visiter l'Ultimaker Digital Factory pour établir une connexion." +msgstr "Questa stampante non è collegata al tuo account. Visitare Ultimaker Digital Factory per stabilire una connessione." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:56 msgctxt "@status" msgid "" "The cloud connection is currently unavailable. Please sign in to connect to " "the cloud printer." -msgstr "La connexion cloud est actuellement indisponible. Veuillez vous connecter pour connecter l'imprimante cloud." +msgstr "La connessione cloud al momento non è disponibile. Accedere per collegarsi alla stampante cloud." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:60 msgctxt "@status" msgid "" "The cloud connection is currently unavailable. Please check your internet " "connection." -msgstr "La connexion cloud est actuellement indisponible. Veuillez vérifier votre connexion Internet." +msgstr "La connessione cloud al momento non è disponibile. Verificare la connessione a Internet." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:237 msgctxt "@button" msgid "Add printer" -msgstr "Ajouter une imprimante" +msgstr "Aggiungi stampante" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:254 msgctxt "@button" msgid "Manage printers" -msgstr "Gérer les imprimantes" +msgstr "Gestione stampanti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:34 msgctxt "@label" msgid "Hide all connected printers" -msgstr "Masquer toutes les imprimantes connectées" +msgstr "Nascondi tutte le stampanti collegate" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:47 msgctxt "@label" msgid "Show all connected printers" -msgstr "Afficher toutes les imprimantes connectées" +msgstr "Mostra tutte le stampanti collegate" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Other printers" -msgstr "Autres imprimantes" +msgstr "Altre stampanti" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:54 msgctxt "@label:PrintjobStatus" msgid "Slicing..." -msgstr "Découpe en cours..." +msgstr "Sezionamento in corso..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:78 msgctxt "@label:PrintjobStatus" msgid "Unable to slice" -msgstr "Impossible de découper" +msgstr "Sezionamento impossibile" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:114 msgctxt "@button" msgid "Processing" -msgstr "Traitement" +msgstr "Elaborazione in corso" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:114 msgctxt "@button" msgid "Slice" -msgstr "Découper" +msgstr "Sezionamento" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:115 msgctxt "@label" msgid "Start the slicing process" -msgstr "Démarrer le processus de découpe" +msgstr "Avvia il processo di sezionamento" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:132 msgctxt "@button" msgid "Cancel" -msgstr "Annuler" +msgstr "Annulla" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/PrintJobInformation.qml:31 msgctxt "@label" msgid "Time estimation" -msgstr "Estimation de durée" +msgstr "Stima del tempo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/PrintJobInformation.qml:107 msgctxt "@label" msgid "Material estimation" -msgstr "Estimation du matériau" +msgstr "Stima del materiale" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/PrintJobInformation.qml:156 msgctxt "@label m for meter" @@ -6392,146 +6386,146 @@ msgstr "%1g" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/OutputProcessWidget.qml:59 msgctxt "@label" msgid "No time estimation available" -msgstr "Aucune estimation de la durée n'est disponible" +msgstr "Nessuna stima di tempo disponibile" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/OutputProcessWidget.qml:77 msgctxt "@label" msgid "No cost estimation available" -msgstr "Aucune estimation des coûts n'est disponible" +msgstr "Nessuna stima di costo disponibile" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/OutputProcessWidget.qml:127 msgctxt "@button" msgid "Preview" -msgstr "Aperçu" +msgstr "Anteprima" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/JobSpecs.qml:93 msgctxt "@text Print job name" msgid "Untitled" -msgstr "Sans titre" +msgstr "Senza titolo" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Widgets/ComboBox.qml:18 msgctxt "@label" msgid "No items to select from" -msgstr "Aucun élément à sélectionner" +msgstr "Nessun elemento da selezionare da" #: /MachineSettingsAction/plugin.json msgctxt "description" msgid "" "Provides a way to change machine settings (such as build volume, nozzle " "size, etc.)." -msgstr "Permet de modifier les paramètres de la machine (tels que volume d'impression, taille de buse, etc.)" +msgstr "Fornisce un modo per modificare le impostazioni della macchina (come il volume di stampa, la dimensione ugello, ecc.)" #: /MachineSettingsAction/plugin.json msgctxt "name" msgid "Machine Settings Action" -msgstr "Action Paramètres de la machine" +msgstr "Azione Impostazioni macchina" #: /ImageReader/plugin.json msgctxt "description" msgid "Enables ability to generate printable geometry from 2D image files." -msgstr "Permet de générer une géométrie imprimable à partir de fichiers d'image 2D." +msgstr "Abilita la possibilità di generare geometria stampabile da file immagine 2D." #: /ImageReader/plugin.json msgctxt "name" msgid "Image Reader" -msgstr "Lecteur d'images" +msgstr "Lettore di immagine" #: /XRayView/plugin.json msgctxt "description" msgid "Provides the X-Ray view." -msgstr "Permet la vue Rayon-X." +msgstr "Fornisce la vista a raggi X." #: /XRayView/plugin.json msgctxt "name" msgid "X-Ray View" -msgstr "Vue Rayon-X" +msgstr "Vista ai raggi X" #: /X3DReader/plugin.json msgctxt "description" msgid "Provides support for reading X3D files." -msgstr "Fournit la prise en charge de la lecture de fichiers X3D." +msgstr "Fornisce il supporto per la lettura di file X3D." #: /X3DReader/plugin.json msgctxt "name" msgid "X3D Reader" -msgstr "Lecteur X3D" +msgstr "Lettore X3D" #: /CuraProfileReader/plugin.json msgctxt "description" msgid "Provides support for importing Cura profiles." -msgstr "Fournit la prise en charge de l'importation de profils Cura." +msgstr "Fornisce supporto per l'importazione dei profili Cura." #: /CuraProfileReader/plugin.json msgctxt "name" msgid "Cura Profile Reader" -msgstr "Lecteur de profil Cura" +msgstr "Lettore profilo Cura" #: /PostProcessingPlugin/plugin.json msgctxt "description" msgid "Extension that allows for user created scripts for post processing" -msgstr "Extension qui permet le post-traitement des scripts créés par l'utilisateur" +msgstr "Estensione che consente la post-elaborazione degli script creati da utente" #: /PostProcessingPlugin/plugin.json msgctxt "name" msgid "Post Processing" -msgstr "Post-traitement" +msgstr "Post-elaborazione" #: /UM3NetworkPrinting/plugin.json msgctxt "description" msgid "Manages network connections to Ultimaker networked printers." -msgstr "Gère les connexions réseau vers les imprimantes Ultimaker en réseau." +msgstr "Gestisce le connessioni di rete alle stampanti Ultimaker in rete." #: /UM3NetworkPrinting/plugin.json msgctxt "name" msgid "Ultimaker Network Connection" -msgstr "Connexion réseau Ultimaker" +msgstr "Connessione di rete Ultimaker" #: /3MFWriter/plugin.json msgctxt "description" msgid "Provides support for writing 3MF files." -msgstr "Permet l'écriture de fichiers 3MF." +msgstr "Fornisce il supporto per la scrittura di file 3MF." #: /3MFWriter/plugin.json msgctxt "name" msgid "3MF Writer" -msgstr "Générateur 3MF" +msgstr "Writer 3MF" #: /CuraDrive/plugin.json msgctxt "description" msgid "Backup and restore your configuration." -msgstr "Sauvegardez et restaurez votre configuration." +msgstr "Effettua il backup o ripristina la configurazione." #: /CuraDrive/plugin.json msgctxt "name" msgid "Cura Backups" -msgstr "Sauvegardes Cura" +msgstr "Backup Cura" #: /SliceInfoPlugin/plugin.json msgctxt "description" msgid "Submits anonymous slice info. Can be disabled through preferences." -msgstr "Envoie des informations anonymes sur le découpage. Peut être désactivé dans les préférences." +msgstr "Invia informazioni su sezionamento anonime Può essere disabilitato tramite le preferenze." #: /SliceInfoPlugin/plugin.json msgctxt "name" msgid "Slice info" -msgstr "Information sur le découpage" +msgstr "Informazioni su sezionamento" #: /UFPWriter/plugin.json msgctxt "description" msgid "Provides support for writing Ultimaker Format Packages." -msgstr "Permet l'écriture de fichiers Ultimaker Format Package." +msgstr "Fornisce il supporto per la scrittura di pacchetti formato Ultimaker." #: /UFPWriter/plugin.json msgctxt "name" msgid "UFP Writer" -msgstr "Générateur UFP" +msgstr "Writer UFP" #: /DigitalLibrary/plugin.json msgctxt "description" msgid "" "Connects to the Digital Library, allowing Cura to open files from and save " "files to the Digital Library." -msgstr "Se connecte à la Digital Library, permettant à Cura d'ouvrir des fichiers à partir de cette dernière et d'y enregistrer des fichiers." +msgstr "Si collega alla Digital Library, consentendo a Cura di aprire file e salvare file in Digital Library." #: /DigitalLibrary/plugin.json msgctxt "name" @@ -6541,517 +6535,517 @@ msgstr "Ultimaker Digital Library" #: /GCodeProfileReader/plugin.json msgctxt "description" msgid "Provides support for importing profiles from g-code files." -msgstr "Fournit la prise en charge de l'importation de profils à partir de fichiers g-code." +msgstr "Fornisce supporto per l'importazione di profili da file G-Code." #: /GCodeProfileReader/plugin.json msgctxt "name" msgid "G-code Profile Reader" -msgstr "Lecteur de profil G-Code" +msgstr "Lettore profilo codice G" #: /GCodeReader/plugin.json msgctxt "description" msgid "Allows loading and displaying G-code files." -msgstr "Permet le chargement et l'affichage de fichiers G-Code." +msgstr "Consente il caricamento e la visualizzazione dei file codice G." #: /GCodeReader/plugin.json msgctxt "name" msgid "G-code Reader" -msgstr "Lecteur G-Code" +msgstr "Lettore codice G" #: /TrimeshReader/plugin.json msgctxt "description" msgid "Provides support for reading model files." -msgstr "Fournit la prise en charge de la lecture de fichiers modèle 3D." +msgstr "Fornisce supporto per la lettura dei file modello." #: /TrimeshReader/plugin.json msgctxt "name" msgid "Trimesh Reader" -msgstr "Lecteur de Trimesh" +msgstr "Trimesh Reader" #: /UltimakerMachineActions/plugin.json msgctxt "description" msgid "" "Provides machine actions for Ultimaker machines (such as bed leveling " "wizard, selecting upgrades, etc.)." -msgstr "Fournit les actions de la machine pour les machines Ultimaker (telles que l'assistant de calibration du plateau, sélection des mises à niveau, etc.)" +msgstr "Fornisce azioni macchina per le macchine Ultimaker (come la procedura guidata di livellamento del piano di stampa, la selezione degli aggiornamenti, ecc.)" #: /UltimakerMachineActions/plugin.json msgctxt "name" msgid "Ultimaker machine actions" -msgstr "Actions de la machine Ultimaker" +msgstr "Azioni della macchina Ultimaker" #: /GCodeGzReader/plugin.json msgctxt "description" msgid "Reads g-code from a compressed archive." -msgstr "Lit le G-Code à partir d'une archive compressée." +msgstr "Legge il codice G da un archivio compresso." #: /GCodeGzReader/plugin.json msgctxt "name" msgid "Compressed G-code Reader" -msgstr "Lecteur G-Code compressé" +msgstr "Lettore codice G compresso" #: /Marketplace/plugin.json msgctxt "description" msgid "" "Manages extensions to the application and allows browsing extensions from " "the Ultimaker website." -msgstr "Gère les extensions de l'application et permet de parcourir les extensions à partir du site Web Ultimaker." +msgstr "Gestisce le estensioni per l'applicazione e consente di ricercare le estensioni nel sito Web Ultimaker." #: /Marketplace/plugin.json msgctxt "name" msgid "Marketplace" -msgstr "Marketplace" +msgstr "Mercato" #: /RemovableDriveOutputDevice/plugin.json msgctxt "description" msgid "Provides removable drive hotplugging and writing support." -msgstr "Permet le branchement hot-plug et l'écriture sur lecteur amovible." +msgstr "Fornisce il collegamento a caldo dell'unità rimovibile e il supporto per la scrittura." #: /RemovableDriveOutputDevice/plugin.json msgctxt "name" msgid "Removable Drive Output Device Plugin" -msgstr "Plugin de périphérique de sortie sur disque amovible" +msgstr "Plugin dispositivo di output unità rimovibile" #: /MonitorStage/plugin.json msgctxt "description" msgid "Provides a monitor stage in Cura." -msgstr "Fournit une étape de surveillance dans Cura." +msgstr "Fornisce una fase di controllo in Cura." #: /MonitorStage/plugin.json msgctxt "name" msgid "Monitor Stage" -msgstr "Étape de surveillance" +msgstr "Fase di controllo" #: /VersionUpgrade/VersionUpgrade25to26/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 2.5 to Cura 2.6." -msgstr "Configurations des mises à niveau de Cura 2.5 vers Cura 2.6." +msgstr "Aggiorna le configurazioni da Cura 2.5 a Cura 2.6." #: /VersionUpgrade/VersionUpgrade25to26/plugin.json msgctxt "name" msgid "Version Upgrade 2.5 to 2.6" -msgstr "Mise à niveau de 2.5 vers 2.6" +msgstr "Aggiornamento della versione da 2.5 a 2.6" #: /VersionUpgrade/VersionUpgrade26to27/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 2.6 to Cura 2.7." -msgstr "Configurations des mises à niveau de Cura 2.6 vers Cura 2.7." +msgstr "Aggiorna le configurazioni da Cura 2.6 a Cura 2.7." #: /VersionUpgrade/VersionUpgrade26to27/plugin.json msgctxt "name" msgid "Version Upgrade 2.6 to 2.7" -msgstr "Mise à niveau de 2.6 vers 2.7" +msgstr "Aggiornamento della versione da 2.6 a 2.7" #: /VersionUpgrade/VersionUpgrade413to50/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.13 to Cura 5.0." -msgstr "Mises à niveau des configurations de Cura 4.13 vers Cura 5.0." +msgstr "Aggiorna le configurazioni da Cura 4.3 a Cura 5.0." #: /VersionUpgrade/VersionUpgrade413to50/plugin.json msgctxt "name" msgid "Version Upgrade 4.13 to 5.0" -msgstr "Mise à niveau de la version 4.13 vers la version 5.0" +msgstr "Aggiornamento della versione da 4.13 a 5.0" #: /VersionUpgrade/VersionUpgrade48to49/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.8 to Cura 4.9." -msgstr "Mises à niveau des configurations de Cura 4.8 vers Cura 4.9." +msgstr "Aggiorna le configurazioni da Cura 4.8 a Cura 4.9." #: /VersionUpgrade/VersionUpgrade48to49/plugin.json msgctxt "name" msgid "Version Upgrade 4.8 to 4.9" -msgstr "Mise à niveau de 4.8 vers 4.9" +msgstr "Aggiornamento della versione da 4.8 a 4.9" #: /VersionUpgrade/VersionUpgrade34to35/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 3.4 to Cura 3.5." -msgstr "Configurations des mises à niveau de Cura 3.4 vers Cura 3.5." +msgstr "Aggiorna le configurazioni da Cura 3.4 a Cura 3.5." #: /VersionUpgrade/VersionUpgrade34to35/plugin.json msgctxt "name" msgid "Version Upgrade 3.4 to 3.5" -msgstr "Mise à niveau de 3.4 vers 3.5" +msgstr "Aggiornamento della versione da 3.4 a 3.5" #: /VersionUpgrade/VersionUpgrade44to45/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.4 to Cura 4.5." -msgstr "Configurations des mises à niveau de Cura 4.4 vers Cura 4.5." +msgstr "Aggiorna le configurazioni da Cura 4.4 a Cura 4.5." #: /VersionUpgrade/VersionUpgrade44to45/plugin.json msgctxt "name" msgid "Version Upgrade 4.4 to 4.5" -msgstr "Mise à niveau de 4.4 vers 4.5" +msgstr "Aggiornamento della versione da 4.4 a 4.5" #: /VersionUpgrade/VersionUpgrade43to44/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.3 to Cura 4.4." -msgstr "Configurations des mises à niveau de Cura 4.3 vers Cura 4.4." +msgstr "Aggiorna le configurazioni da Cura 4.3 a Cura 4.4." #: /VersionUpgrade/VersionUpgrade43to44/plugin.json msgctxt "name" msgid "Version Upgrade 4.3 to 4.4" -msgstr "Mise à niveau de 4.3 vers 4.4" +msgstr "Aggiornamento della versione da 4.3 a 4.4" #: /VersionUpgrade/VersionUpgrade32to33/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 3.2 to Cura 3.3." -msgstr "Configurations des mises à niveau de Cura 3.2 vers Cura 3.3." +msgstr "Aggiorna le configurazioni da Cura 3.2 a Cura 3.3." #: /VersionUpgrade/VersionUpgrade32to33/plugin.json msgctxt "name" msgid "Version Upgrade 3.2 to 3.3" -msgstr "Mise à niveau de 3.2 vers 3.3" +msgstr "Aggiornamento della versione da 3.2 a 3.3" #: /VersionUpgrade/VersionUpgrade33to34/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 3.3 to Cura 3.4." -msgstr "Configurations des mises à niveau de Cura 3.3 vers Cura 3.4." +msgstr "Aggiorna le configurazioni da Cura 3.3 a Cura 3.4." #: /VersionUpgrade/VersionUpgrade33to34/plugin.json msgctxt "name" msgid "Version Upgrade 3.3 to 3.4" -msgstr "Mise à niveau de 3.3 vers 3.4" +msgstr "Aggiornamento della versione da 3.3 a 3.4" #: /VersionUpgrade/VersionUpgrade41to42/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.1 to Cura 4.2." -msgstr "Configurations des mises à jour de Cura 4.1 vers Cura 4.2." +msgstr "Aggiorna le configurazioni da Cura 4.1 a Cura 4.2." #: /VersionUpgrade/VersionUpgrade41to42/plugin.json msgctxt "name" msgid "Version Upgrade 4.1 to 4.2" -msgstr "Mise à jour de 4.1 vers 4.2" +msgstr "Aggiornamento della versione da 4.1 a 4.2" #: /VersionUpgrade/VersionUpgrade42to43/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.2 to Cura 4.3." -msgstr "Configurations des mises à jour de Cura 4.2 vers Cura 4.3." +msgstr "Aggiorna le configurazioni da Cura 4.2 a Cura 4.3." #: /VersionUpgrade/VersionUpgrade42to43/plugin.json msgctxt "name" msgid "Version Upgrade 4.2 to 4.3" -msgstr "Mise à jour de 4.2 vers 4.3" +msgstr "Aggiornamento della versione da 4.2 a 4.3" #: /VersionUpgrade/VersionUpgrade462to47/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.6.2 to Cura 4.7." -msgstr "Mises à niveau des configurations de Cura 4.6.2 vers Cura 4.7." +msgstr "Aggiorna le configurazioni da Cura 4.6.2 a Cura 4.7." #: /VersionUpgrade/VersionUpgrade462to47/plugin.json msgctxt "name" msgid "Version Upgrade 4.6.2 to 4.7" -msgstr "Mise à niveau de 4.6.2 vers 4.7" +msgstr "Aggiornamento versione da 4.6.2 a 4.7" #: /VersionUpgrade/VersionUpgrade35to40/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 3.5 to Cura 4.0." -msgstr "Configurations des mises à niveau de Cura 3.5 vers Cura 4.0." +msgstr "Aggiorna le configurazioni da Cura 3.5 a Cura 4.0." #: /VersionUpgrade/VersionUpgrade35to40/plugin.json msgctxt "name" msgid "Version Upgrade 3.5 to 4.0" -msgstr "Mise à niveau de 3.5 vers 4.0" +msgstr "Aggiornamento della versione da 3.5 a 4.0" #: /VersionUpgrade/VersionUpgrade22to24/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 2.2 to Cura 2.4." -msgstr "Configurations des mises à niveau de Cura 2.2 vers Cura 2.4." +msgstr "Aggiorna le configurazioni da Cura 2.2 a Cura 2.4." #: /VersionUpgrade/VersionUpgrade22to24/plugin.json msgctxt "name" msgid "Version Upgrade 2.2 to 2.4" -msgstr "Mise à niveau de 2.2 vers 2.4" +msgstr "Aggiornamento della versione da 2.2 a 2.4" #: /VersionUpgrade/VersionUpgrade21to22/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 2.1 to Cura 2.2." -msgstr "Configurations des mises à niveau de Cura 2.1 vers Cura 2.2." +msgstr "Aggiorna le configurazioni da Cura 2.1 a Cura 2.2." #: /VersionUpgrade/VersionUpgrade21to22/plugin.json msgctxt "name" msgid "Version Upgrade 2.1 to 2.2" -msgstr "Mise à niveau vers 2.1 vers 2.2" +msgstr "Aggiornamento della versione da 2.1 a 2.2" #: /VersionUpgrade/VersionUpgrade460to462/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.6.0 to Cura 4.6.2." -msgstr "Mises à niveau des configurations de Cura 4.6.0 vers Cura 4.6.2." +msgstr "Aggiorna le configurazioni da Cura 4.6.0 a Cura 4.6.2." #: /VersionUpgrade/VersionUpgrade460to462/plugin.json msgctxt "name" msgid "Version Upgrade 4.6.0 to 4.6.2" -msgstr "Mise à niveau de 4.6.0 vers 4.6.2" +msgstr "Aggiornamento versione da 4.6.0 a 4.6.2" #: /VersionUpgrade/VersionUpgrade47to48/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.7 to Cura 4.8." -msgstr "Mises à niveau des configurations de Cura 4.7 vers Cura 4.8." +msgstr "Aggiorna le configurazioni da Cura 4.7 a Cura 4.8." #: /VersionUpgrade/VersionUpgrade47to48/plugin.json msgctxt "name" msgid "Version Upgrade 4.7 to 4.8" -msgstr "Mise à niveau de 4.7 vers 4.8" +msgstr "Aggiornamento della versione da 4.7 a 4.8" #: /VersionUpgrade/VersionUpgrade49to410/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.9 to Cura 4.10." -msgstr "Mises à niveau des configurations de Cura 4.9 vers Cura 4.10." +msgstr "Aggiorna le configurazioni da Cura 4.9 a Cura 4.10." #: /VersionUpgrade/VersionUpgrade49to410/plugin.json msgctxt "name" msgid "Version Upgrade 4.9 to 4.10" -msgstr "Mise à niveau de 4.9 vers 4.10" +msgstr "Aggiornamento della versione da 4.9 a 4.10" #: /VersionUpgrade/VersionUpgrade45to46/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.5 to Cura 4.6." -msgstr "Mises à niveau des configurations de Cura 4.5 vers Cura 4.6." +msgstr "Aggiorna le configurazioni da Cura 4.5 a Cura 4.6." #: /VersionUpgrade/VersionUpgrade45to46/plugin.json msgctxt "name" msgid "Version Upgrade 4.5 to 4.6" -msgstr "Mise à niveau de 4.5 vers 4.6" +msgstr "Aggiornamento della versione da 4.5 a 4.6" #: /VersionUpgrade/VersionUpgrade27to30/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 2.7 to Cura 3.0." -msgstr "Met à niveau les configurations, de Cura 2.7 vers Cura 3.0." +msgstr "Aggiorna le configurazioni da Cura 2.7 a Cura 3.0." #: /VersionUpgrade/VersionUpgrade27to30/plugin.json msgctxt "name" msgid "Version Upgrade 2.7 to 3.0" -msgstr "Mise à niveau de version, de 2.7 vers 3.0" +msgstr "Aggiornamento della versione da 2.7 a 3.0" #: /VersionUpgrade/VersionUpgrade30to31/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 3.0 to Cura 3.1." -msgstr "Met à niveau les configurations, de Cura 3.0 vers Cura 3.1." +msgstr "Aggiorna le configurazioni da Cura 3.0 a Cura 3.1." #: /VersionUpgrade/VersionUpgrade30to31/plugin.json msgctxt "name" msgid "Version Upgrade 3.0 to 3.1" -msgstr "Mise à niveau de version, de 3.0 vers 3.1" +msgstr "Aggiornamento della versione da 3.0 a 3.1" #: /VersionUpgrade/VersionUpgrade411to412/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.11 to Cura 4.12." -msgstr "Mises à niveau des configurations de Cura 4.11 vers Cura 4.12." +msgstr "Aggiorna le configurazioni da Cura 4.11 a Cura 4.12." #: /VersionUpgrade/VersionUpgrade411to412/plugin.json msgctxt "name" msgid "Version Upgrade 4.11 to 4.12" -msgstr "Mise à niveau de la version 4.11 vers la version 4.12" +msgstr "Aggiornamento della versione da 4.11 a 4.12" #: /VersionUpgrade/VersionUpgrade40to41/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.0 to Cura 4.1." -msgstr "Configurations des mises à niveau de Cura 4.0 vers Cura 4.1." +msgstr "Aggiorna le configurazioni da Cura 4.0 a Cura 4.1." #: /VersionUpgrade/VersionUpgrade40to41/plugin.json msgctxt "name" msgid "Version Upgrade 4.0 to 4.1" -msgstr "Mise à niveau de 4.0 vers 4.1" +msgstr "Aggiornamento della versione da 4.0 a 4.1" #: /CuraEngineBackend/plugin.json msgctxt "description" msgid "Provides the link to the CuraEngine slicing backend." -msgstr "Fournit le lien vers l'arrière du système de découpage CuraEngine." +msgstr "Fornisce il collegamento al back-end di sezionamento CuraEngine." #: /CuraEngineBackend/plugin.json msgctxt "name" msgid "CuraEngine Backend" -msgstr "Système CuraEngine" +msgstr "Back-end CuraEngine" #: /3MFReader/plugin.json msgctxt "description" msgid "Provides support for reading 3MF files." -msgstr "Fournit la prise en charge de la lecture de fichiers 3MF." +msgstr "Fornisce il supporto per la lettura di file 3MF." #: /3MFReader/plugin.json msgctxt "name" msgid "3MF Reader" -msgstr "Lecteur 3MF" +msgstr "Lettore 3MF" #: /PerObjectSettingsTool/plugin.json msgctxt "description" msgid "Provides the Per Model Settings." -msgstr "Fournit les paramètres par modèle." +msgstr "Fornisce le impostazioni per modello." #: /PerObjectSettingsTool/plugin.json msgctxt "name" msgid "Per Model Settings Tool" -msgstr "Outil de paramètres par modèle" +msgstr "Utilità impostazioni per modello" #: /XmlMaterialProfile/plugin.json msgctxt "description" msgid "Provides capabilities to read and write XML-based material profiles." -msgstr "Offre la possibilité de lire et d'écrire des profils matériels basés sur XML." +msgstr "Offre la possibilità di leggere e scrivere profili di materiali basati su XML." #: /XmlMaterialProfile/plugin.json msgctxt "name" msgid "Material Profiles" -msgstr "Profils matériels" +msgstr "Profili del materiale" #: /CuraProfileWriter/plugin.json msgctxt "description" msgid "Provides support for exporting Cura profiles." -msgstr "Fournit la prise en charge de l'exportation de profils Cura." +msgstr "Fornisce supporto per l'esportazione dei profili Cura." #: /CuraProfileWriter/plugin.json msgctxt "name" msgid "Cura Profile Writer" -msgstr "Générateur de profil Cura" +msgstr "Writer profilo Cura" #: /ModelChecker/plugin.json msgctxt "description" msgid "" "Checks models and print configuration for possible printing issues and give " "suggestions." -msgstr "Vérifie les modèles et la configuration de l'impression pour déceler d'éventuels problèmes d'impression et donne des suggestions." +msgstr "Controlla i modelli e la configurazione di stampa per eventuali problematiche di stampa e suggerimenti." #: /ModelChecker/plugin.json msgctxt "name" msgid "Model Checker" -msgstr "Contrôleur de modèle" +msgstr "Controllo modello" #: /USBPrinting/plugin.json msgctxt "description" msgid "" "Accepts G-Code and sends them to a printer. Plugin can also update firmware." -msgstr "Accepte les G-Code et les envoie à une imprimante. Ce plugin peut aussi mettre à jour le firmware." +msgstr "Accetta i G-Code e li invia ad una stampante. I plugin possono anche aggiornare il firmware." #: /USBPrinting/plugin.json msgctxt "name" msgid "USB printing" -msgstr "Impression par USB" +msgstr "Stampa USB" #: /PreviewStage/plugin.json msgctxt "description" msgid "Provides a preview stage in Cura." -msgstr "Fournit une étape de prévisualisation dans Cura." +msgstr "Fornisce una fase di anteprima in Cura." #: /PreviewStage/plugin.json msgctxt "name" msgid "Preview Stage" -msgstr "Étape de prévisualisation" +msgstr "Fase di anteprima" #: /GCodeWriter/plugin.json msgctxt "description" msgid "Writes g-code to a file." -msgstr "Enregistre le G-Code dans un fichier." +msgstr "Scrive il codice G in un file." #: /GCodeWriter/plugin.json msgctxt "name" msgid "G-code Writer" -msgstr "Générateur de G-Code" +msgstr "Writer codice G" #: /UFPReader/plugin.json msgctxt "description" msgid "Provides support for reading Ultimaker Format Packages." -msgstr "Fournit un support pour la lecture des paquets de format Ultimaker." +msgstr "Fornisce il supporto per la lettura di pacchetti formato Ultimaker." #: /UFPReader/plugin.json msgctxt "name" msgid "UFP Reader" -msgstr "Lecteur UFP" +msgstr "Lettore UFP" #: /FirmwareUpdater/plugin.json msgctxt "description" msgid "Provides a machine actions for updating firmware." -msgstr "Fournit à une machine des actions permettant la mise à jour du firmware." +msgstr "Fornisce azioni macchina per l’aggiornamento del firmware." #: /FirmwareUpdater/plugin.json msgctxt "name" msgid "Firmware Updater" -msgstr "Programme de mise à jour du firmware" +msgstr "Aggiornamento firmware" #: /GCodeGzWriter/plugin.json msgctxt "description" msgid "Writes g-code to a compressed archive." -msgstr "Enregistre le G-Code dans une archive compressée." +msgstr "Scrive il codice G in un archivio compresso." #: /GCodeGzWriter/plugin.json msgctxt "name" msgid "Compressed G-code Writer" -msgstr "Générateur de G-Code compressé" +msgstr "Writer codice G compresso" #: /SimulationView/plugin.json msgctxt "description" msgid "Provides the preview of sliced layerdata." -msgstr "Fournit l'aperçu des données du slice." +msgstr "Fornisce l'anteprima dei dati dei livelli suddivisi in sezioni." #: /SimulationView/plugin.json msgctxt "name" msgid "Simulation View" -msgstr "Vue simulation" +msgstr "Vista simulazione" #: /LegacyProfileReader/plugin.json msgctxt "description" msgid "Provides support for importing profiles from legacy Cura versions." -msgstr "Fournit la prise en charge de l'importation de profils à partir de versions Cura antérieures." +msgstr "Fornisce supporto per l'importazione di profili dalle versioni legacy Cura." #: /LegacyProfileReader/plugin.json msgctxt "name" msgid "Legacy Cura Profile Reader" -msgstr "Lecteur de profil Cura antérieur" +msgstr "Lettore legacy profilo Cura" #: /AMFReader/plugin.json msgctxt "description" msgid "Provides support for reading AMF files." -msgstr "Fournit la prise en charge de la lecture de fichiers AMF." +msgstr "Fornisce il supporto per la lettura di file 3MF." #: /AMFReader/plugin.json msgctxt "name" msgid "AMF Reader" -msgstr "Lecteur AMF" +msgstr "Lettore 3MF" #: /SolidView/plugin.json msgctxt "description" msgid "Provides a normal solid mesh view." -msgstr "Affiche une vue en maille solide normale." +msgstr "Fornisce una normale visualizzazione a griglia compatta." #: /SolidView/plugin.json msgctxt "name" msgid "Solid View" -msgstr "Vue solide" +msgstr "Visualizzazione compatta" #: /FirmwareUpdateChecker/plugin.json msgctxt "description" msgid "Checks for firmware updates." -msgstr "Vérifie les mises à jour du firmware." +msgstr "Controlla disponibilità di aggiornamenti firmware." #: /FirmwareUpdateChecker/plugin.json msgctxt "name" msgid "Firmware Update Checker" -msgstr "Vérificateur des mises à jour du firmware" +msgstr "Controllo aggiornamento firmware" #: /SentryLogger/plugin.json msgctxt "description" msgid "Logs certain events so that they can be used by the crash reporter" -msgstr "Enregistre certains événements afin qu'ils puissent être utilisés par le rapporteur d'incident" +msgstr "Registra determinati eventi in modo che possano essere utilizzati dal segnalatore dei crash" #: /SentryLogger/plugin.json msgctxt "name" msgid "Sentry Logger" -msgstr "Journal d'événements dans Sentry" +msgstr "Logger sentinella" #: /SupportEraser/plugin.json msgctxt "description" msgid "" "Creates an eraser mesh to block the printing of support in certain places" -msgstr "Crée un maillage effaceur pour bloquer l'impression du support en certains endroits" +msgstr "Crea una maglia di cancellazione per bloccare la stampa del supporto in alcune posizioni" #: /SupportEraser/plugin.json msgctxt "name" msgid "Support Eraser" -msgstr "Effaceur de support" +msgstr "Cancellazione supporto" #: /PrepareStage/plugin.json msgctxt "description" msgid "Provides a prepare stage in Cura." -msgstr "Fournit une étape de préparation dans Cura." +msgstr "Fornisce una fase di preparazione in Cura." #: /PrepareStage/plugin.json msgctxt "name" msgid "Prepare Stage" -msgstr "Étape de préparation" +msgstr "Fase di preparazione" diff --git a/resources/i18n/it_IT/fdmextruder.def.json.po b/resources/i18n/it_IT/fdmextruder.def.json.po index 3702c6aac9..b73a362288 100644 --- a/resources/i18n/it_IT/fdmextruder.def.json.po +++ b/resources/i18n/it_IT/fdmextruder.def.json.po @@ -14,165 +14,165 @@ msgstr "" #: /fdmextruder.def.json msgctxt "machine_settings label" msgid "Machine" -msgstr "Machine" +msgstr "Macchina" #: /fdmextruder.def.json msgctxt "machine_settings description" msgid "Machine specific settings" -msgstr "Paramètres spécifiques de la machine" +msgstr "Impostazioni macchina specifiche" #: /fdmextruder.def.json msgctxt "extruder_nr label" msgid "Extruder" -msgstr "Extrudeuse" +msgstr "Estrusore" #: /fdmextruder.def.json msgctxt "extruder_nr description" msgid "The extruder train used for printing. This is used in multi-extrusion." -msgstr "Le train d'extrudeuse utilisé pour l'impression. Cela est utilisé en multi-extrusion." +msgstr "Treno estrusore utilizzato per la stampa. Utilizzato nell’estrusione multipla." #: /fdmextruder.def.json msgctxt "machine_nozzle_id label" msgid "Nozzle ID" -msgstr "ID buse" +msgstr "ID ugello" #: /fdmextruder.def.json msgctxt "machine_nozzle_id description" msgid "The nozzle ID for an extruder train, such as \"AA 0.4\" and \"BB 0.8\"." -msgstr "ID buse pour un train d'extrudeuse, comme « AA 0.4 » et « BB 0.8 »." +msgstr "ID ugello per un treno estrusore, come \"AA 0.4\" e \"BB 0.8\"." #: /fdmextruder.def.json msgctxt "machine_nozzle_size label" msgid "Nozzle Diameter" -msgstr "Diamètre de la buse" +msgstr "Diametro ugello" #: /fdmextruder.def.json msgctxt "machine_nozzle_size description" msgid "" "The inner diameter of the nozzle. Change this setting when using a non-" "standard nozzle size." -msgstr "Le diamètre intérieur de la buse. Modifiez ce paramètre si vous utilisez une taille de buse non standard." +msgstr "Il diametro interno dell’ugello. Modificare questa impostazione quando si utilizza una dimensione ugello non standard." #: /fdmextruder.def.json msgctxt "machine_nozzle_offset_x label" msgid "Nozzle X Offset" -msgstr "Buse Décalage X" +msgstr "Offset X ugello" #: /fdmextruder.def.json msgctxt "machine_nozzle_offset_x description" msgid "The x-coordinate of the offset of the nozzle." -msgstr "Les coordonnées X du décalage de la buse." +msgstr "La coordinata y dell’offset dell’ugello." #: /fdmextruder.def.json msgctxt "machine_nozzle_offset_y label" msgid "Nozzle Y Offset" -msgstr "Buse Décalage Y" +msgstr "Offset Y ugello" #: /fdmextruder.def.json msgctxt "machine_nozzle_offset_y description" msgid "The y-coordinate of the offset of the nozzle." -msgstr "Les coordonnées Y du décalage de la buse." +msgstr "La coordinata y dell’offset dell’ugello." #: /fdmextruder.def.json msgctxt "machine_extruder_start_code label" msgid "Extruder Start G-Code" -msgstr "Extrudeuse G-Code de démarrage" +msgstr "Codice G avvio estrusore" #: /fdmextruder.def.json msgctxt "machine_extruder_start_code description" msgid "Start g-code to execute when switching to this extruder." -msgstr "Démarrer le G-Code à exécuter lors du passage à cette extrudeuse." +msgstr "Inizio codice G da eseguire quando si passa a questo estrusore." #: /fdmextruder.def.json msgctxt "machine_extruder_start_pos_abs label" msgid "Extruder Start Position Absolute" -msgstr "Extrudeuse Position de départ absolue" +msgstr "Assoluto posizione avvio estrusore" #: /fdmextruder.def.json msgctxt "machine_extruder_start_pos_abs description" msgid "" "Make the extruder starting position absolute rather than relative to the " "last-known location of the head." -msgstr "Rendre la position de départ de l'extrudeuse absolue plutôt que relative à la dernière position connue de la tête." +msgstr "Rende la posizione di partenza estrusore assoluta anziché relativa rispetto all’ultima posizione nota della testina." #: /fdmextruder.def.json msgctxt "machine_extruder_start_pos_x label" msgid "Extruder Start Position X" -msgstr "Extrudeuse Position de départ X" +msgstr "X posizione avvio estrusore" #: /fdmextruder.def.json msgctxt "machine_extruder_start_pos_x description" msgid "The x-coordinate of the starting position when turning the extruder on." -msgstr "Les coordonnées X de la position de départ lors de la mise en marche de l'extrudeuse." +msgstr "La coordinata x della posizione di partenza all’accensione dell’estrusore." #: /fdmextruder.def.json msgctxt "machine_extruder_start_pos_y label" msgid "Extruder Start Position Y" -msgstr "Extrudeuse Position de départ Y" +msgstr "Y posizione avvio estrusore" #: /fdmextruder.def.json msgctxt "machine_extruder_start_pos_y description" msgid "The y-coordinate of the starting position when turning the extruder on." -msgstr "Les coordonnées Y de la position de départ lors de la mise en marche de l'extrudeuse." +msgstr "La coordinata y della posizione di partenza all’accensione dell’estrusore." #: /fdmextruder.def.json msgctxt "machine_extruder_end_code label" msgid "Extruder End G-Code" -msgstr "Extrudeuse G-Code de fin" +msgstr "Codice G fine estrusore" #: /fdmextruder.def.json msgctxt "machine_extruder_end_code description" msgid "End g-code to execute when switching away from this extruder." -msgstr "Fin du G-Code à exécuter lors de l'abandon de l'extrudeuse." +msgstr "Fine codice G da eseguire quando si passa a questo estrusore." #: /fdmextruder.def.json msgctxt "machine_extruder_end_pos_abs label" msgid "Extruder End Position Absolute" -msgstr "Extrudeuse Position de fin absolue" +msgstr "Assoluto posizione fine estrusore" #: /fdmextruder.def.json msgctxt "machine_extruder_end_pos_abs description" msgid "" "Make the extruder ending position absolute rather than relative to the last-" "known location of the head." -msgstr "Rendre la position de fin de l'extrudeuse absolue plutôt que relative à la dernière position connue de la tête." +msgstr "Rende la posizione di fine estrusore assoluta anziché relativa rispetto all’ultima posizione nota della testina." #: /fdmextruder.def.json msgctxt "machine_extruder_end_pos_x label" msgid "Extruder End Position X" -msgstr "Extrudeuse Position de fin X" +msgstr "Posizione X fine estrusore" #: /fdmextruder.def.json msgctxt "machine_extruder_end_pos_x description" msgid "The x-coordinate of the ending position when turning the extruder off." -msgstr "Les coordonnées X de la position de fin lors de l'arrêt de l'extrudeuse." +msgstr "La coordinata x della posizione di fine allo spegnimento dell’estrusore." #: /fdmextruder.def.json msgctxt "machine_extruder_end_pos_y label" msgid "Extruder End Position Y" -msgstr "Extrudeuse Position de fin Y" +msgstr "Posizione Y fine estrusore" #: /fdmextruder.def.json msgctxt "machine_extruder_end_pos_y description" msgid "The y-coordinate of the ending position when turning the extruder off." -msgstr "Les coordonnées Y de la position de fin lors de l'arrêt de l'extrudeuse." +msgstr "La coordinata y della posizione di fine allo spegnimento dell’estrusore." #: /fdmextruder.def.json msgctxt "extruder_prime_pos_z label" msgid "Extruder Prime Z Position" -msgstr "Extrudeuse Position d'amorçage Z" +msgstr "Posizione Z innesco estrusore" #: /fdmextruder.def.json msgctxt "extruder_prime_pos_z description" msgid "" "The Z coordinate of the position where the nozzle primes at the start of " "printing." -msgstr "Les coordonnées Z de la position à laquelle la buse s'amorce au début de l'impression." +msgstr "Indica la coordinata Z della posizione in cui l’ugello si innesca all’avvio della stampa." #: /fdmextruder.def.json msgctxt "machine_extruder_cooling_fan_number label" msgid "Extruder Print Cooling Fan" -msgstr "Ventilateur de refroidissement d'impression de l'extrudeuse" +msgstr "Ventola di raffreddamento stampa estrusore" #: /fdmextruder.def.json msgctxt "machine_extruder_cooling_fan_number description" @@ -180,61 +180,61 @@ msgid "" "The number of the print cooling fan associated with this extruder. Only " "change this from the default value of 0 when you have a different print " "cooling fan for each extruder." -msgstr "Numéro du ventilateur de refroidissement d'impression associé à cette extrudeuse. Ne modifiez cette valeur par rapport à la valeur par défaut 0 que si" -" vous utilisez un ventilateur de refroidissement d'impression différent pour chaque extrudeuse." +msgstr "Il numero di ventole di raffreddamento stampa abbinate a questo estrusore. Modificarlo dal valore predefinito 0 solo quando si ha una ventola di raffreddamento" +" diversa per ciascun estrusore." #: /fdmextruder.def.json msgctxt "platform_adhesion label" msgid "Build Plate Adhesion" -msgstr "Adhérence du plateau" +msgstr "Adesione piano di stampa" #: /fdmextruder.def.json msgctxt "platform_adhesion description" msgid "Adhesion" -msgstr "Adhérence" +msgstr "Adesione" #: /fdmextruder.def.json msgctxt "extruder_prime_pos_x label" msgid "Extruder Prime X Position" -msgstr "Extrudeuse Position d'amorçage X" +msgstr "Posizione X innesco estrusore" #: /fdmextruder.def.json msgctxt "extruder_prime_pos_x description" msgid "" "The X coordinate of the position where the nozzle primes at the start of " "printing." -msgstr "Les coordonnées X de la position à laquelle la buse s'amorce au début de l'impression." +msgstr "La coordinata X della posizione in cui l’ugello si innesca all’avvio della stampa." #: /fdmextruder.def.json msgctxt "extruder_prime_pos_y label" msgid "Extruder Prime Y Position" -msgstr "Extrudeuse Position d'amorçage Y" +msgstr "Posizione Y innesco estrusore" #: /fdmextruder.def.json msgctxt "extruder_prime_pos_y description" msgid "" "The Y coordinate of the position where the nozzle primes at the start of " "printing." -msgstr "Les coordonnées Y de la position à laquelle la buse s'amorce au début de l'impression." +msgstr "La coordinata Y della posizione in cui l’ugello si innesca all’avvio della stampa." #: /fdmextruder.def.json msgctxt "material label" msgid "Material" -msgstr "Matériau" +msgstr "Materiale" #: /fdmextruder.def.json msgctxt "material description" msgid "Material" -msgstr "Matériau" +msgstr "Materiale" #: /fdmextruder.def.json msgctxt "material_diameter label" msgid "Diameter" -msgstr "Diamètre" +msgstr "Diametro" #: /fdmextruder.def.json msgctxt "material_diameter description" msgid "" "Adjusts the diameter of the filament used. Match this value with the " "diameter of the used filament." -msgstr "Ajuste le diamètre du filament utilisé. Faites correspondre cette valeur au diamètre du filament utilisé." +msgstr "Regolare il diametro del filamento utilizzato. Abbinare questo valore al diametro del filamento utilizzato." diff --git a/resources/i18n/it_IT/fdmprinter.def.json.po b/resources/i18n/it_IT/fdmprinter.def.json.po index 47c0d23bf0..67beccfe37 100644 --- a/resources/i18n/it_IT/fdmprinter.def.json.po +++ b/resources/i18n/it_IT/fdmprinter.def.json.po @@ -14,107 +14,107 @@ msgstr "" #: /fdmprinter.def.json msgctxt "machine_settings label" msgid "Machine" -msgstr "Machine" +msgstr "Macchina" #: /fdmprinter.def.json msgctxt "machine_settings description" msgid "Machine specific settings" -msgstr "Paramètres spécifiques de la machine" +msgstr "Impostazioni macchina specifiche" #: /fdmprinter.def.json msgctxt "machine_name label" msgid "Machine Type" -msgstr "Type de machine" +msgstr "Tipo di macchina" #: /fdmprinter.def.json msgctxt "machine_name description" msgid "The name of your 3D printer model." -msgstr "Le nom du modèle de votre imprimante 3D." +msgstr "Il nome del modello della stampante 3D in uso." #: /fdmprinter.def.json msgctxt "machine_show_variants label" msgid "Show Machine Variants" -msgstr "Afficher les variantes de la machine" +msgstr "Mostra varianti macchina" #: /fdmprinter.def.json msgctxt "machine_show_variants description" msgid "" "Whether to show the different variants of this machine, which are described " "in separate json files." -msgstr "Afficher ou non les différentes variantes de cette machine qui sont décrites dans des fichiers json séparés." +msgstr "Sceglie se mostrare le diverse varianti di questa macchina, descritte in file json a parte." #: /fdmprinter.def.json msgctxt "machine_start_gcode label" msgid "Start G-code" -msgstr "G-Code de démarrage" +msgstr "Codice G avvio" #: /fdmprinter.def.json msgctxt "machine_start_gcode description" msgid "" "G-code commands to be executed at the very start - separated by \n" "." -msgstr "Commandes G-Code à exécuter au tout début, séparées par \n." +msgstr "I comandi codice G da eseguire all’avvio, separati da \n." #: /fdmprinter.def.json msgctxt "machine_end_gcode label" msgid "End G-code" -msgstr "G-Code de fin" +msgstr "Codice G fine" #: /fdmprinter.def.json msgctxt "machine_end_gcode description" msgid "" "G-code commands to be executed at the very end - separated by \n" "." -msgstr "Commandes G-Code à exécuter tout à la fin, séparées par \n." +msgstr "I comandi codice G da eseguire alla fine, separati da \n." #: /fdmprinter.def.json msgctxt "material_guid label" msgid "Material GUID" -msgstr "GUID matériau" +msgstr "GUID materiale" #: /fdmprinter.def.json msgctxt "material_guid description" msgid "GUID of the material. This is set automatically." -msgstr "GUID du matériau. Cela est configuré automatiquement." +msgstr "Il GUID del materiale. È impostato automaticamente." #: /fdmprinter.def.json msgctxt "material_diameter label" msgid "Diameter" -msgstr "Diamètre" +msgstr "Diametro" #: /fdmprinter.def.json msgctxt "material_diameter description" msgid "" "Adjusts the diameter of the filament used. Match this value with the " "diameter of the used filament." -msgstr "Ajuste le diamètre du filament utilisé. Faites correspondre cette valeur au diamètre du filament utilisé." +msgstr "Regolare il diametro del filamento utilizzato. Abbinare questo valore al diametro del filamento utilizzato." #: /fdmprinter.def.json msgctxt "material_bed_temp_wait label" msgid "Wait for Build Plate Heatup" -msgstr "Attendre le chauffage du plateau" +msgstr "Attendi il riscaldamento del piano di stampa" #: /fdmprinter.def.json msgctxt "material_bed_temp_wait description" msgid "" "Whether to insert a command to wait until the build plate temperature is " "reached at the start." -msgstr "Insérer ou non une commande pour attendre que la température du plateau soit atteinte au démarrage." +msgstr "Sceglie se inserire un comando per attendere finché la temperatura del piano di stampa non viene raggiunta all’avvio." #: /fdmprinter.def.json msgctxt "material_print_temp_wait label" msgid "Wait for Nozzle Heatup" -msgstr "Attendre le chauffage de la buse" +msgstr "Attendi il riscaldamento dell’ugello" #: /fdmprinter.def.json msgctxt "material_print_temp_wait description" msgid "Whether to wait until the nozzle temperature is reached at the start." -msgstr "Attendre ou non que la température de la buse soit atteinte au démarrage." +msgstr "Sceglie se attendere finché la temperatura dell’ugello non viene raggiunta all’avvio." #: /fdmprinter.def.json msgctxt "material_print_temp_prepend label" msgid "Include Material Temperatures" -msgstr "Inclure les températures du matériau" +msgstr "Includi le temperature del materiale" #: /fdmprinter.def.json msgctxt "material_print_temp_prepend description" @@ -122,13 +122,13 @@ msgid "" "Whether to include nozzle temperature commands at the start of the gcode. " "When the start_gcode already contains nozzle temperature commands Cura " "frontend will automatically disable this setting." -msgstr "Inclure ou non les commandes de température de la buse au début du gcode. Si le gcode_démarrage contient déjà les commandes de température de la buse," -" l'interface Cura désactive automatiquement ce paramètre." +msgstr "Sceglie se includere comandi temperatura ugello all’avvio del codice G. Quando start_gcode contiene già comandi temperatura ugello la parte anteriore di" +" Cura disabilita automaticamente questa impostazione." #: /fdmprinter.def.json msgctxt "material_bed_temp_prepend label" msgid "Include Build Plate Temperature" -msgstr "Inclure la température du plateau" +msgstr "Includi temperatura piano di stampa" #: /fdmprinter.def.json msgctxt "material_bed_temp_prepend description" @@ -136,104 +136,104 @@ msgid "" "Whether to include build plate temperature commands at the start of the " "gcode. When the start_gcode already contains build plate temperature " "commands Cura frontend will automatically disable this setting." -msgstr "Inclure ou non les commandes de température du plateau au début du gcode. Si le gcode_démarrage contient déjà les commandes de température du plateau," -" l'interface Cura désactive automatiquement ce paramètre." +msgstr "Sceglie se includere comandi temperatura piano di stampa all’avvio del codice G. Quando start_gcode contiene già comandi temperatura piano di stampa la" +" parte anteriore di Cura disabilita automaticamente questa impostazione." #: /fdmprinter.def.json msgctxt "machine_width label" msgid "Machine Width" -msgstr "Largeur de la machine" +msgstr "Larghezza macchina" #: /fdmprinter.def.json msgctxt "machine_width description" msgid "The width (X-direction) of the printable area." -msgstr "La largeur (sens X) de la zone imprimable." +msgstr "La larghezza (direzione X) dell’area stampabile." #: /fdmprinter.def.json msgctxt "machine_depth label" msgid "Machine Depth" -msgstr "Profondeur de la machine" +msgstr "Profondità macchina" #: /fdmprinter.def.json msgctxt "machine_depth description" msgid "The depth (Y-direction) of the printable area." -msgstr "La profondeur (sens Y) de la zone imprimable." +msgstr "La profondità (direzione Y) dell’area stampabile." #: /fdmprinter.def.json msgctxt "machine_height label" msgid "Machine Height" -msgstr "Hauteur de la machine" +msgstr "Altezza macchina" #: /fdmprinter.def.json msgctxt "machine_height description" msgid "The height (Z-direction) of the printable area." -msgstr "La hauteur (sens Z) de la zone imprimable." +msgstr "L’altezza (direzione Z) dell’area stampabile." #: /fdmprinter.def.json msgctxt "machine_shape label" msgid "Build Plate Shape" -msgstr "Forme du plateau" +msgstr "Forma del piano di stampa" #: /fdmprinter.def.json msgctxt "machine_shape description" msgid "" "The shape of the build plate without taking unprintable areas into account." -msgstr "La forme du plateau sans prendre les zones non imprimables en compte." +msgstr "La forma del piano di stampa senza tenere conto delle aree non stampabili." #: /fdmprinter.def.json msgctxt "machine_shape option rectangular" msgid "Rectangular" -msgstr "Rectangulaire" +msgstr "Rettangolare" #: /fdmprinter.def.json msgctxt "machine_shape option elliptic" msgid "Elliptic" -msgstr "Elliptique" +msgstr "Ellittica" #: /fdmprinter.def.json msgctxt "machine_buildplate_type label" msgid "Build Plate Material" -msgstr "Matériau du plateau" +msgstr "Materiale piano di stampa" #: /fdmprinter.def.json msgctxt "machine_buildplate_type description" msgid "The material of the build plate installed on the printer." -msgstr "Matériau du plateau installé sur l'imprimante." +msgstr "Il materiale del piano di stampa installato sulla stampante." #: /fdmprinter.def.json msgctxt "machine_buildplate_type option glass" msgid "Glass" -msgstr "Verre" +msgstr "Cristallo" #: /fdmprinter.def.json msgctxt "machine_buildplate_type option aluminum" msgid "Aluminum" -msgstr "Aluminium" +msgstr "Alluminio" #: /fdmprinter.def.json msgctxt "machine_heated_bed label" msgid "Has Heated Build Plate" -msgstr "A un plateau chauffé" +msgstr "Piano di stampa riscaldato" #: /fdmprinter.def.json msgctxt "machine_heated_bed description" msgid "Whether the machine has a heated build plate present." -msgstr "Si la machine a un plateau chauffé présent." +msgstr "Indica se la macchina ha un piano di stampa riscaldato." #: /fdmprinter.def.json msgctxt "machine_heated_build_volume label" msgid "Has Build Volume Temperature Stabilization" -msgstr "Est dotée de la stabilisation de la température du volume d'impression" +msgstr "È dotato della stabilizzazione della temperatura del volume di stampa" #: /fdmprinter.def.json msgctxt "machine_heated_build_volume description" msgid "Whether the machine is able to stabilize the build volume temperature." -msgstr "Si la machine est capable de stabiliser la température du volume d'impression." +msgstr "Se la macchina è in grado di stabilizzare la temperatura del volume di stampa." #: /fdmprinter.def.json msgctxt "machine_always_write_active_tool label" msgid "Always Write Active Tool" -msgstr "Toujours écrire l'outil actif" +msgstr "Tenere sempre nota dello strumento attivo" #: /fdmprinter.def.json msgctxt "machine_always_write_active_tool description" @@ -241,130 +241,130 @@ msgid "" "Write active tool after sending temp commands to inactive tool. Required for " "Dual Extruder printing with Smoothie or other firmware with modal tool " "commands." -msgstr "Écrivez l'outil actif après avoir envoyé des commandes temporaires à l'outil inactif. Requis pour l'impression à double extrusion avec Smoothie ou un autre" -" micrologiciel avec des commandes d'outils modaux." +msgstr "Tenere nota dello strumento attivo dopo l'invio di comandi temporanei allo strumento non attivo. Richiesto per la stampa con doppio estrusore con Smoothie" +" o altro firmware con comandi modali dello strumento." #: /fdmprinter.def.json msgctxt "machine_center_is_zero label" msgid "Is Center Origin" -msgstr "Est l'origine du centre" +msgstr "Origine del centro" #: /fdmprinter.def.json msgctxt "machine_center_is_zero description" msgid "" "Whether the X/Y coordinates of the zero position of the printer is at the " "center of the printable area." -msgstr "Si les coordonnées X/Y de la position zéro de l'imprimante se situent au centre de la zone imprimable." +msgstr "Indica se le coordinate X/Y della posizione zero della stampante sono al centro dell’area stampabile." #: /fdmprinter.def.json msgctxt "machine_extruder_count label" msgid "Number of Extruders" -msgstr "Nombre d'extrudeuses" +msgstr "Numero di estrusori" #: /fdmprinter.def.json msgctxt "machine_extruder_count description" msgid "" "Number of extruder trains. An extruder train is the combination of a feeder, " "bowden tube, and nozzle." -msgstr "Nombre de trains d'extrudeuse. Un train d'extrudeuse est la combinaison d'un chargeur, d'un tube bowden et d'une buse." +msgstr "Il numero di treni di estrusori. Un treno di estrusori è la combinazione di un alimentatore, un tubo bowden e un ugello." #: /fdmprinter.def.json msgctxt "extruders_enabled_count label" msgid "Number of Extruders That Are Enabled" -msgstr "Nombre d'extrudeuses activées" +msgstr "Numero di estrusori abilitati" #: /fdmprinter.def.json msgctxt "extruders_enabled_count description" msgid "" "Number of extruder trains that are enabled; automatically set in software" -msgstr "Nombre de trains d'extrusion activés ; automatiquement défini dans le logiciel" +msgstr "Numero di treni di estrusori abilitati; impostato automaticamente nel software" #: /fdmprinter.def.json msgctxt "machine_nozzle_tip_outer_diameter label" msgid "Outer Nozzle Diameter" -msgstr "Diamètre extérieur de la buse" +msgstr "Diametro esterno ugello" #: /fdmprinter.def.json msgctxt "machine_nozzle_tip_outer_diameter description" msgid "The outer diameter of the tip of the nozzle." -msgstr "Le diamètre extérieur de la pointe de la buse." +msgstr "Il diametro esterno della punta dell'ugello." #: /fdmprinter.def.json msgctxt "machine_nozzle_head_distance label" msgid "Nozzle Length" -msgstr "Longueur de la buse" +msgstr "Lunghezza ugello" #: /fdmprinter.def.json msgctxt "machine_nozzle_head_distance description" msgid "" "The height difference between the tip of the nozzle and the lowest part of " "the print head." -msgstr "La différence de hauteur entre la pointe de la buse et la partie la plus basse de la tête d'impression." +msgstr "La differenza di altezza tra la punta dell’ugello e la parte inferiore della testina di stampa." #: /fdmprinter.def.json msgctxt "machine_nozzle_expansion_angle label" msgid "Nozzle Angle" -msgstr "Angle de la buse" +msgstr "Angolo ugello" #: /fdmprinter.def.json msgctxt "machine_nozzle_expansion_angle description" msgid "" "The angle between the horizontal plane and the conical part right above the " "tip of the nozzle." -msgstr "L'angle entre le plan horizontal et la partie conique juste au-dessus de la pointe de la buse." +msgstr "L’angolo tra il piano orizzontale e la parte conica esattamente sopra la punta dell’ugello." #: /fdmprinter.def.json msgctxt "machine_heat_zone_length label" msgid "Heat Zone Length" -msgstr "Longueur de la zone chauffée" +msgstr "Lunghezza della zona di riscaldamento" #: /fdmprinter.def.json msgctxt "machine_heat_zone_length description" msgid "" "The distance from the tip of the nozzle in which heat from the nozzle is " "transferred to the filament." -msgstr "Distance depuis la pointe du bec d'impression sur laquelle la chaleur du bec d'impression est transférée au filament." +msgstr "La distanza dalla punta dell’ugello in cui il calore dall’ugello viene trasferito al filamento." #: /fdmprinter.def.json msgctxt "machine_nozzle_temp_enabled label" msgid "Enable Nozzle Temperature Control" -msgstr "Permettre le contrôle de la température de la buse" +msgstr "Abilita controllo temperatura ugello" #: /fdmprinter.def.json msgctxt "machine_nozzle_temp_enabled description" msgid "" "Whether to control temperature from Cura. Turn this off to control nozzle " "temperature from outside of Cura." -msgstr "Contrôler ou non la température depuis Cura. Désactivez cette option pour contrôler la température de la buse depuis une source autre que Cura." +msgstr "Per controllare la temperatura da Cura. Disattivare per controllare la temperatura ugello dall’esterno di Cura." #: /fdmprinter.def.json msgctxt "machine_nozzle_heat_up_speed label" msgid "Heat Up Speed" -msgstr "Vitesse de chauffage" +msgstr "Velocità di riscaldamento" #: /fdmprinter.def.json msgctxt "machine_nozzle_heat_up_speed description" msgid "" "The speed (°C/s) by which the nozzle heats up averaged over the window of " "normal printing temperatures and the standby temperature." -msgstr "La vitesse (°C/s) à laquelle la buse chauffe, sur une moyenne de la plage de températures d'impression normales et la température en veille." +msgstr "La velocità (°C/s) alla quale l’ugello si riscalda calcolando la media sulla gamma di temperature di stampa normale e la temperatura di attesa." #: /fdmprinter.def.json msgctxt "machine_nozzle_cool_down_speed label" msgid "Cool Down Speed" -msgstr "Vitesse de refroidissement" +msgstr "Velocità di raffreddamento" #: /fdmprinter.def.json msgctxt "machine_nozzle_cool_down_speed description" msgid "" "The speed (°C/s) by which the nozzle cools down averaged over the window of " "normal printing temperatures and the standby temperature." -msgstr "La vitesse (°C/s) à laquelle la buse refroidit, sur une moyenne de la plage de températures d'impression normales et la température en veille." +msgstr "La velocità (°C/s) alla quale l’ugello si raffredda calcolando la media sulla gamma di temperature di stampa normale e la temperatura di attesa." #: /fdmprinter.def.json msgctxt "machine_min_cool_heat_time_window label" msgid "Minimal Time Standby Temperature" -msgstr "Durée minimale température de veille" +msgstr "Tempo minimo temperatura di standby" #: /fdmprinter.def.json msgctxt "machine_min_cool_heat_time_window description" @@ -372,18 +372,18 @@ msgid "" "The minimal time an extruder has to be inactive before the nozzle is cooled. " "Only when an extruder is not used for longer than this time will it be " "allowed to cool down to the standby temperature." -msgstr "La durée minimale pendant laquelle une extrudeuse doit être inactive avant que la buse ait refroidi. Ce n'est que si une extrudeuse n'est pas utilisée" -" pendant une durée supérieure à celle-ci qu'elle pourra refroidir jusqu'à la température de veille." +msgstr "Il tempo minimo in cui un estrusore deve essere inattivo prima che l’ugello si raffreddi. Solo quando un estrusore non è utilizzato per un periodo superiore" +" a questo tempo potrà raffreddarsi alla temperatura di standby." #: /fdmprinter.def.json msgctxt "machine_gcode_flavor label" msgid "G-code Flavor" -msgstr "Parfum G-Code" +msgstr "Versione codice G" #: /fdmprinter.def.json msgctxt "machine_gcode_flavor description" msgid "The type of g-code to be generated." -msgstr "Type de G-Code à générer." +msgstr "Il tipo di codice G da generare." #: /fdmprinter.def.json msgctxt "machine_gcode_flavor option RepRap (Marlin/Sprinter)" @@ -393,7 +393,7 @@ msgstr "Marlin" #: /fdmprinter.def.json msgctxt "machine_gcode_flavor option RepRap (Volumetric)" msgid "Marlin (Volumetric)" -msgstr "Marlin (Volumétrique)" +msgstr "Marlin (volumetrica)" #: /fdmprinter.def.json msgctxt "machine_gcode_flavor option RepRap (RepRap)" @@ -433,31 +433,31 @@ msgstr "Repetier" #: /fdmprinter.def.json msgctxt "machine_firmware_retract label" msgid "Firmware Retraction" -msgstr "Rétraction du firmware" +msgstr "Retrazione firmware" #: /fdmprinter.def.json msgctxt "machine_firmware_retract description" msgid "" "Whether to use firmware retract commands (G10/G11) instead of using the E " "property in G1 commands to retract the material." -msgstr "S'il faut utiliser les commandes de rétraction du firmware (G10 / G11) au lieu d'utiliser la propriété E dans les commandes G1 pour rétracter le matériau." +msgstr "Specifica se usare comandi di retrazione firmware (G10/G11) anziché utilizzare la proprietà E nei comandi G1 per retrarre il materiale." #: /fdmprinter.def.json msgctxt "machine_extruders_share_heater label" msgid "Extruders Share Heater" -msgstr "Les extrudeurs partagent le chauffage" +msgstr "Condivisione del riscaldatore da parte degli estrusori" #: /fdmprinter.def.json msgctxt "machine_extruders_share_heater description" msgid "" "Whether the extruders share a single heater rather than each extruder having " "its own heater." -msgstr "Si les extrudeurs partagent un seul chauffage au lieu que chaque extrudeur ait son propre chauffage." +msgstr "Indica se gli estrusori condividono un singolo riscaldatore piuttosto che avere ognuno il proprio." #: /fdmprinter.def.json msgctxt "machine_extruders_share_nozzle label" msgid "Extruders Share Nozzle" -msgstr "Les extrudeuses partagent la buse" +msgstr "Estrusori condividono ugello" #: /fdmprinter.def.json msgctxt "machine_extruders_share_nozzle description" @@ -469,14 +469,14 @@ msgid "" "retracted); in that case the initial retraction status is described, per " "extruder, by the 'machine_extruders_shared_nozzle_initial_retraction' " "parameter." -msgstr "Lorsque les extrudeuses partagent une seule buse au lieu que chaque extrudeuse ait sa propre buse. Lorsqu'il est défini à true, le script gcode de démarrage" -" de l'imprimante doit configurer correctement toutes les extrudeuses dans un état de rétraction initial connu et mutuellement compatible (zéro ou un filament" -" non rétracté) ; dans ce cas, l'état de rétraction initial est décrit, par extrudeuse, par le paramètre 'machine_extruders_shared_nozzle_initial_retraction'." +msgstr "Indica se gli estrusori condividono un singolo ugello piuttosto che avere ognuno il proprio. Se impostato su true, si prevede che lo script gcode di avvio" +" della stampante imposti tutti gli estrusori su uno stato di retrazione iniziale noto e mutuamente compatibile (nessuno o un solo filamento non retratto);" +" in questo caso lo stato di retrazione iniziale è descritto, per estrusore, dal parametro 'machine_extruders_shared_nozzle_initial_retraction'." #: /fdmprinter.def.json msgctxt "machine_extruders_shared_nozzle_initial_retraction label" msgid "Shared Nozzle Initial Retraction" -msgstr "Rétraction initiale de la buse partagée" +msgstr "Retrazione iniziale ugello condivisa" #: /fdmprinter.def.json msgctxt "machine_extruders_shared_nozzle_initial_retraction description" @@ -485,33 +485,33 @@ msgid "" "from the shared nozzle tip at the completion of the printer-start gcode " "script; the value should be equal to or greater than the length of the " "common part of the nozzle's ducts." -msgstr "La quantité de filament de chaque extrudeuse qui est supposée avoir été rétractée de l'extrémité de la buse partagée à la fin du script gcode de démarrage" -" de l'imprimante ; la valeur doit être égale ou supérieure à la longueur de la partie commune des conduits de la buse." +msgstr "La quantità di filamento di ogni estrusore che si presume sia stata retratta dalla punta dell'ugello condiviso al termine dello script gcode di avvio stampante;" +" il valore deve essere uguale o maggiore della lunghezza della parte comune dei condotti dell'ugello." #: /fdmprinter.def.json msgctxt "machine_disallowed_areas label" msgid "Disallowed Areas" -msgstr "Zones interdites" +msgstr "Aree non consentite" #: /fdmprinter.def.json msgctxt "machine_disallowed_areas description" msgid "A list of polygons with areas the print head is not allowed to enter." -msgstr "Une liste de polygones comportant les zones dans lesquelles la tête d'impression n'a pas le droit de pénétrer." +msgstr "Un elenco di poligoni con aree alle quali la testina di stampa non può accedere." #: /fdmprinter.def.json msgctxt "nozzle_disallowed_areas label" msgid "Nozzle Disallowed Areas" -msgstr "Zones interdites au bec d'impression" +msgstr "Aree ugello non consentite" #: /fdmprinter.def.json msgctxt "nozzle_disallowed_areas description" msgid "A list of polygons with areas the nozzle is not allowed to enter." -msgstr "Une liste de polygones comportant les zones dans lesquelles le bec n'a pas le droit de pénétrer." +msgstr "Un elenco di poligoni con aree alle quali l’ugello non può accedere." #: /fdmprinter.def.json msgctxt "machine_head_with_fans_polygon label" msgid "Machine Head & Fan Polygon" -msgstr "Polygone de la tête de la machine et du ventilateur" +msgstr "Poligono testina macchina e ventola" #: /fdmprinter.def.json msgctxt "machine_head_with_fans_polygon description" @@ -519,353 +519,354 @@ msgid "" "The shape of the print head. These are coordinates relative to the position " "of the print head, which is usually the position of its first extruder. The " "dimensions left and in front of the print head must be negative coordinates." -msgstr "La forme de la tête d'impression. Ce sont des coordonnées par rapport à la position de la tête d'impression, qui est généralement la position de son premier" -" extrudeur. Les dimensions à gauche et devant la tête d'impression doivent être des coordonnées négatives." +msgstr "La forma della testina di stampa. Queste sono le coordinate relative alla posizione della testina di stampa. Questa coincide in genere con la posizione" +" del primo estrusore. Le posizioni a sinistra e davanti alla testina di stampa devono essere coordinate negative." #: /fdmprinter.def.json msgctxt "gantry_height label" msgid "Gantry Height" -msgstr "Hauteur du portique" +msgstr "Altezza gantry" #: /fdmprinter.def.json msgctxt "gantry_height description" msgid "" "The height difference between the tip of the nozzle and the gantry system (X " "and Y axes)." -msgstr "La différence de hauteur entre la pointe de la buse et le système de portique (axes X et Y)." +msgstr "La differenza di altezza tra la punta dell’ugello e il sistema gantry (assy X e Y)." #: /fdmprinter.def.json msgctxt "machine_nozzle_id label" msgid "Nozzle ID" -msgstr "ID buse" +msgstr "ID ugello" #: /fdmprinter.def.json msgctxt "machine_nozzle_id description" msgid "The nozzle ID for an extruder train, such as \"AA 0.4\" and \"BB 0.8\"." -msgstr "ID buse pour un train d'extrudeuse, comme « AA 0.4 » et « BB 0.8 »." +msgstr "ID ugello per un treno estrusore, come \"AA 0.4\" e \"BB 0.8\"." #: /fdmprinter.def.json msgctxt "machine_nozzle_size label" msgid "Nozzle Diameter" -msgstr "Diamètre de la buse" +msgstr "Diametro ugello" #: /fdmprinter.def.json msgctxt "machine_nozzle_size description" msgid "" "The inner diameter of the nozzle. Change this setting when using a non-" "standard nozzle size." -msgstr "Le diamètre intérieur de la buse. Modifiez ce paramètre si vous utilisez une taille de buse non standard." +msgstr "Il diametro interno dell’ugello. Modificare questa impostazione quando si utilizza una dimensione ugello non standard." #: /fdmprinter.def.json msgctxt "machine_use_extruder_offset_to_offset_coords label" msgid "Offset with Extruder" -msgstr "Décalage avec extrudeuse" +msgstr "Offset con estrusore" #: /fdmprinter.def.json msgctxt "machine_use_extruder_offset_to_offset_coords description" msgid "" "Apply the extruder offset to the coordinate system. Affects all extruders." -msgstr "Appliquez le décalage de l'extrudeuse au système de coordonnées. Affecte toutes les extrudeuses." +msgstr "Applica l’offset estrusore al sistema coordinate. Influisce su tutti gli estrusori." #: /fdmprinter.def.json msgctxt "extruder_prime_pos_z label" msgid "Extruder Prime Z Position" -msgstr "Extrudeuse Position d'amorçage Z" +msgstr "Posizione Z innesco estrusore" #: /fdmprinter.def.json msgctxt "extruder_prime_pos_z description" msgid "" "The Z coordinate of the position where the nozzle primes at the start of " "printing." -msgstr "Les coordonnées Z de la position à laquelle la buse s'amorce au début de l'impression." +msgstr "Indica la coordinata Z della posizione in cui l’ugello si innesca all’avvio della stampa." #: /fdmprinter.def.json msgctxt "extruder_prime_pos_abs label" msgid "Absolute Extruder Prime Position" -msgstr "Position d'amorçage absolue de l'extrudeuse" +msgstr "Posizione assoluta di innesco estrusore" #: /fdmprinter.def.json msgctxt "extruder_prime_pos_abs description" msgid "" "Make the extruder prime position absolute rather than relative to the last-" "known location of the head." -msgstr "Rendre la position d'amorçage de l'extrudeuse absolue plutôt que relative à la dernière position connue de la tête." +msgstr "Rende la posizione di innesco estrusore assoluta anziché relativa rispetto all’ultima posizione nota della testina." #: /fdmprinter.def.json msgctxt "machine_max_feedrate_x label" msgid "Maximum Speed X" -msgstr "Vitesse maximale X" +msgstr "Velocità massima X" #: /fdmprinter.def.json msgctxt "machine_max_feedrate_x description" msgid "The maximum speed for the motor of the X-direction." -msgstr "La vitesse maximale pour le moteur du sens X." +msgstr "Indica la velocità massima del motore per la direzione X." #: /fdmprinter.def.json msgctxt "machine_max_feedrate_y label" msgid "Maximum Speed Y" -msgstr "Vitesse maximale Y" +msgstr "Velocità massima Y" #: /fdmprinter.def.json msgctxt "machine_max_feedrate_y description" msgid "The maximum speed for the motor of the Y-direction." -msgstr "La vitesse maximale pour le moteur du sens Y." +msgstr "Indica la velocità massima del motore per la direzione Y." #: /fdmprinter.def.json msgctxt "machine_max_feedrate_z label" msgid "Maximum Speed Z" -msgstr "Vitesse maximale Z" +msgstr "Velocità massima Z" #: /fdmprinter.def.json msgctxt "machine_max_feedrate_z description" msgid "The maximum speed for the motor of the Z-direction." -msgstr "La vitesse maximale pour le moteur du sens Z." +msgstr "Indica la velocità massima del motore per la direzione Z." #: /fdmprinter.def.json msgctxt "machine_max_feedrate_e label" msgid "Maximum Speed E" -msgstr "Vitesse maximale E" +msgstr "Velocità massima E" #: /fdmprinter.def.json msgctxt "machine_max_feedrate_e description" msgid "The maximum speed of the filament." -msgstr "La vitesse maximale du filament." +msgstr "Indica la velocità massima del filamento." #: /fdmprinter.def.json msgctxt "machine_max_acceleration_x label" msgid "Maximum Acceleration X" -msgstr "Accélération maximale X" +msgstr "Accelerazione massima X" #: /fdmprinter.def.json msgctxt "machine_max_acceleration_x description" msgid "Maximum acceleration for the motor of the X-direction" -msgstr "Accélération maximale pour le moteur du sens X" +msgstr "Indica l’accelerazione massima del motore per la direzione X" #: /fdmprinter.def.json msgctxt "machine_max_acceleration_y label" msgid "Maximum Acceleration Y" -msgstr "Accélération maximale Y" +msgstr "Accelerazione massima Y" #: /fdmprinter.def.json msgctxt "machine_max_acceleration_y description" msgid "Maximum acceleration for the motor of the Y-direction." -msgstr "Accélération maximale pour le moteur du sens Y." +msgstr "Indica l’accelerazione massima del motore per la direzione Y." #: /fdmprinter.def.json msgctxt "machine_max_acceleration_z label" msgid "Maximum Acceleration Z" -msgstr "Accélération maximale Z" +msgstr "Accelerazione massima Z" #: /fdmprinter.def.json msgctxt "machine_max_acceleration_z description" msgid "Maximum acceleration for the motor of the Z-direction." -msgstr "Accélération maximale pour le moteur du sens Z." +msgstr "Indica l’accelerazione massima del motore per la direzione Z." #: /fdmprinter.def.json msgctxt "machine_max_acceleration_e label" msgid "Maximum Filament Acceleration" -msgstr "Accélération maximale du filament" +msgstr "Accelerazione massima filamento" #: /fdmprinter.def.json msgctxt "machine_max_acceleration_e description" msgid "Maximum acceleration for the motor of the filament." -msgstr "Accélération maximale pour le moteur du filament." +msgstr "Indica l’accelerazione massima del motore del filamento." #: /fdmprinter.def.json msgctxt "machine_acceleration label" msgid "Default Acceleration" -msgstr "Accélération par défaut" +msgstr "Accelerazione predefinita" #: /fdmprinter.def.json msgctxt "machine_acceleration description" msgid "The default acceleration of print head movement." -msgstr "L'accélération par défaut du mouvement de la tête d'impression." +msgstr "Indica l’accelerazione predefinita del movimento della testina di stampa." #: /fdmprinter.def.json msgctxt "machine_max_jerk_xy label" msgid "Default X-Y Jerk" -msgstr "Saccade X-Y par défaut" +msgstr "Jerk X-Y predefinito" #: /fdmprinter.def.json msgctxt "machine_max_jerk_xy description" msgid "Default jerk for movement in the horizontal plane." -msgstr "Saccade par défaut pour le mouvement sur le plan horizontal." +msgstr "Indica il jerk predefinito per lo spostamento sul piano orizzontale." #: /fdmprinter.def.json msgctxt "machine_max_jerk_z label" msgid "Default Z Jerk" -msgstr "Saccade Z par défaut" +msgstr "Jerk Z predefinito" #: /fdmprinter.def.json msgctxt "machine_max_jerk_z description" msgid "Default jerk for the motor of the Z-direction." -msgstr "Saccade par défaut pour le moteur du sens Z." +msgstr "Indica il jerk predefinito del motore per la direzione Z." #: /fdmprinter.def.json msgctxt "machine_max_jerk_e label" msgid "Default Filament Jerk" -msgstr "Saccade par défaut du filament" +msgstr "Jerk filamento predefinito" #: /fdmprinter.def.json msgctxt "machine_max_jerk_e description" msgid "Default jerk for the motor of the filament." -msgstr "Saccade par défaut pour le moteur du filament." +msgstr "Indica il jerk predefinito del motore del filamento." #: /fdmprinter.def.json msgctxt "machine_steps_per_mm_x label" msgid "Steps per Millimeter (X)" -msgstr "Pas par millimètre (X)" +msgstr "Passi per millimetro (X)" #: /fdmprinter.def.json msgctxt "machine_steps_per_mm_x description" msgid "" "How many steps of the stepper motor will result in one millimeter of " "movement in the X direction." -msgstr "Nombre de pas du moteur pas à pas correspondant à un mouvement d'un millimètre dans la direction X." +msgstr "I passi del motore passo-passo in un millimetro di spostamento nella direzione X." #: /fdmprinter.def.json msgctxt "machine_steps_per_mm_y label" msgid "Steps per Millimeter (Y)" -msgstr "Pas par millimètre (Y)" +msgstr "Passi per millimetro (Y)" #: /fdmprinter.def.json msgctxt "machine_steps_per_mm_y description" msgid "" "How many steps of the stepper motor will result in one millimeter of " "movement in the Y direction." -msgstr "Nombre de pas du moteur pas à pas correspondant à un mouvement d'un millimètre dans la direction Y." +msgstr "I passi del motore passo-passo in un millimetro di spostamento nella direzione Y." #: /fdmprinter.def.json msgctxt "machine_steps_per_mm_z label" msgid "Steps per Millimeter (Z)" -msgstr "Pas par millimètre (Z)" +msgstr "Passi per millimetro (Z)" #: /fdmprinter.def.json msgctxt "machine_steps_per_mm_z description" msgid "" "How many steps of the stepper motor will result in one millimeter of " "movement in the Z direction." -msgstr "Nombre de pas du moteur pas à pas correspondant à un mouvement d'un millimètre dans la direction Z." +msgstr "I passi del motore passo-passo in un millimetro di spostamento nella direzione Z." #: /fdmprinter.def.json msgctxt "machine_steps_per_mm_e label" msgid "Steps per Millimeter (E)" -msgstr "Pas par millimètre (E)" +msgstr "Passi per millimetro (E)" #: /fdmprinter.def.json msgctxt "machine_steps_per_mm_e description" msgid "" "How many steps of the stepper motors will result in moving the feeder wheel " "by one millimeter around its circumference." -msgstr "Nombre de pas des moteurs pas à pas correspondant au déplacement de la roue du chargeur d'un millimètre sur sa circonférence." +msgstr "Quanti passi dei motori passo-passo causano lo spostamento della ruota del tirafilo di un millimetro attorno alla sua circonferenza." #: /fdmprinter.def.json msgctxt "machine_endstop_positive_direction_x label" msgid "X Endstop in Positive Direction" -msgstr "Butée X en sens positif" +msgstr "Endstop X in direzione positiva" #: /fdmprinter.def.json msgctxt "machine_endstop_positive_direction_x description" msgid "" "Whether the endstop of the X axis is in the positive direction (high X " "coordinate) or negative (low X coordinate)." -msgstr "Détermine si la butée de l'axe X est en sens positif (haute coordonnée X) ou négatif (basse coordonnée X)." +msgstr "Se l’endstop dell’asse X è in direzione positiva (coordinata X alta) o negativa (coordinata X bassa)." #: /fdmprinter.def.json msgctxt "machine_endstop_positive_direction_y label" msgid "Y Endstop in Positive Direction" -msgstr "Butée Y en sens positif" +msgstr "Endstop Y in direzione positiva" #: /fdmprinter.def.json msgctxt "machine_endstop_positive_direction_y description" msgid "" "Whether the endstop of the Y axis is in the positive direction (high Y " "coordinate) or negative (low Y coordinate)." -msgstr "Détermine si la butée de l'axe Y est en sens positif (haute coordonnée Y) ou négatif (basse coordonnée Y)." +msgstr "Se l’endstop dell’asse Y è in direzione positiva (coordinata Y alta) o negativa (coordinata Y bassa)." #: /fdmprinter.def.json msgctxt "machine_endstop_positive_direction_z label" msgid "Z Endstop in Positive Direction" -msgstr "Butée Z en sens positif" +msgstr "Endstop Z in direzione positiva" #: /fdmprinter.def.json msgctxt "machine_endstop_positive_direction_z description" msgid "" "Whether the endstop of the Z axis is in the positive direction (high Z " "coordinate) or negative (low Z coordinate)." -msgstr "Détermine si la butée de l'axe Z est en sens positif (haute coordonnée Z) ou négatif (basse coordonnée Z)." +msgstr "Se l’endstop dell’asse Z è in direzione positiva (coordinata Z alta) o negativa (coordinata Z bassa)." #: /fdmprinter.def.json msgctxt "machine_minimum_feedrate label" msgid "Minimum Feedrate" -msgstr "Taux d'alimentation minimal" +msgstr "Velocità di alimentazione minima" #: /fdmprinter.def.json msgctxt "machine_minimum_feedrate description" msgid "The minimal movement speed of the print head." -msgstr "La vitesse minimale de mouvement de la tête d'impression." +msgstr "Indica la velocità di spostamento minima della testina di stampa." #: /fdmprinter.def.json msgctxt "machine_feeder_wheel_diameter label" msgid "Feeder Wheel Diameter" -msgstr "Diamètre de roue du chargeur" +msgstr "Diametro ruota del tirafilo" #: /fdmprinter.def.json msgctxt "machine_feeder_wheel_diameter description" msgid "The diameter of the wheel that drives the material in the feeder." -msgstr "Diamètre de la roue qui entraîne le matériau dans le chargeur." +msgstr "Il diametro della ruota che guida il materiale nel tirafilo." #: /fdmprinter.def.json msgctxt "machine_scale_fan_speed_zero_to_one label" msgid "Scale Fan Speed To 0-1" -msgstr "Mise à l'échelle de la vitesse du ventilateur à 0-1" +msgstr "Scala la velocità della ventola a 0-1" #: /fdmprinter.def.json msgctxt "machine_scale_fan_speed_zero_to_one description" msgid "Scale the fan speed to be between 0 and 1 instead of between 0 and 256." -msgstr "Mettez à l'échelle la vitesse du ventilateur de 0 à 1 au lieu de 0 à 256." +msgstr "Scalare la velocità della ventola in modo che sia compresa tra 0 e 1 anziché tra 0 e 256." #: /fdmprinter.def.json msgctxt "resolution label" msgid "Quality" -msgstr "Qualité" +msgstr "Qualità" #: /fdmprinter.def.json msgctxt "resolution description" msgid "" "All settings that influence the resolution of the print. These settings have " "a large impact on the quality (and print time)" -msgstr "Tous les paramètres qui influent sur la résolution de l'impression. Ces paramètres ont un impact conséquent sur la qualité (et la durée d'impression)." +msgstr "Indica tutte le impostazioni che influiscono sulla risoluzione della stampa. Queste impostazioni hanno un elevato impatto sulla qualità (e il tempo di" +" stampa)" #: /fdmprinter.def.json msgctxt "layer_height label" msgid "Layer Height" -msgstr "Hauteur de la couche" +msgstr "Altezza dello strato" #: /fdmprinter.def.json msgctxt "layer_height description" msgid "" "The height of each layer in mm. Higher values produce faster prints in lower " "resolution, lower values produce slower prints in higher resolution." -msgstr "La hauteur de chaque couche en mm. Des valeurs plus élevées créent des impressions plus rapides dans une résolution moindre, tandis que des valeurs plus" -" basses entraînent des impressions plus lentes dans une résolution plus élevée." +msgstr "Indica l’altezza di ciascuno strato in mm. Valori più elevati generano stampe più rapide con risoluzione inferiore, valori più bassi generano stampe più" +" lente con risoluzione superiore." #: /fdmprinter.def.json msgctxt "layer_height_0 label" msgid "Initial Layer Height" -msgstr "Hauteur de la couche initiale" +msgstr "Altezza dello strato iniziale" #: /fdmprinter.def.json msgctxt "layer_height_0 description" msgid "" "The height of the initial layer in mm. A thicker initial layer makes " "adhesion to the build plate easier." -msgstr "La hauteur de la couche initiale en mm. Une couche initiale plus épaisse adhère plus facilement au plateau." +msgstr "Indica l’altezza dello strato iniziale in mm. Uno strato iniziale più spesso facilita l’adesione al piano di stampa." #: /fdmprinter.def.json msgctxt "line_width label" msgid "Line Width" -msgstr "Largeur de ligne" +msgstr "Larghezza della linea" #: /fdmprinter.def.json msgctxt "line_width description" @@ -873,208 +874,208 @@ msgid "" "Width of a single line. Generally, the width of each line should correspond " "to the width of the nozzle. However, slightly reducing this value could " "produce better prints." -msgstr "Largeur d'une ligne. Généralement, la largeur de chaque ligne doit correspondre à la largeur de la buse. Toutefois, le fait de diminuer légèrement cette" -" valeur peut fournir de meilleures impressions." +msgstr "Indica la larghezza di una linea singola. In generale, la larghezza di ciascuna linea deve corrispondere alla larghezza dell’ugello. Tuttavia, una lieve" +" riduzione di questo valore potrebbe generare stampe migliori." #: /fdmprinter.def.json msgctxt "wall_line_width label" msgid "Wall Line Width" -msgstr "Largeur de ligne de la paroi" +msgstr "Larghezza delle linee perimetrali" #: /fdmprinter.def.json msgctxt "wall_line_width description" msgid "Width of a single wall line." -msgstr "Largeur d'une seule ligne de la paroi." +msgstr "Indica la larghezza di una singola linea perimetrale." #: /fdmprinter.def.json msgctxt "wall_line_width_0 label" msgid "Outer Wall Line Width" -msgstr "Largeur de ligne de la paroi externe" +msgstr "Larghezza delle linee della parete esterna" #: /fdmprinter.def.json msgctxt "wall_line_width_0 description" msgid "" "Width of the outermost wall line. By lowering this value, higher levels of " "detail can be printed." -msgstr "Largeur de la ligne la plus à l'extérieur de la paroi. Le fait de réduire cette valeur permet d'imprimer des niveaux plus élevés de détails." +msgstr "Indica la larghezza della linea della parete esterna. Riducendo questo valore, è possibile stampare livelli di dettaglio più elevati." #: /fdmprinter.def.json msgctxt "wall_line_width_x label" msgid "Inner Wall(s) Line Width" -msgstr "Largeur de ligne de la (des) paroi(s) interne(s)" +msgstr "Larghezza delle linee della parete interna" #: /fdmprinter.def.json msgctxt "wall_line_width_x description" msgid "" "Width of a single wall line for all wall lines except the outermost one." -msgstr "Largeur d'une seule ligne de la paroi pour toutes les lignes de paroi, à l’exception de la ligne la plus externe." +msgstr "Indica la larghezza di una singola linea della parete per tutte le linee della parete tranne quella più esterna." #: /fdmprinter.def.json msgctxt "skin_line_width label" msgid "Top/Bottom Line Width" -msgstr "Largeur de la ligne du dessus/dessous" +msgstr "Larghezza delle linee superiore/inferiore" #: /fdmprinter.def.json msgctxt "skin_line_width description" msgid "Width of a single top/bottom line." -msgstr "Largeur d'une seule ligne du dessus/dessous." +msgstr "Indica la larghezza di una singola linea superiore/inferiore." #: /fdmprinter.def.json msgctxt "infill_line_width label" msgid "Infill Line Width" -msgstr "Largeur de ligne de remplissage" +msgstr "Larghezza delle linee di riempimento" #: /fdmprinter.def.json msgctxt "infill_line_width description" msgid "Width of a single infill line." -msgstr "Largeur d'une seule ligne de remplissage." +msgstr "Indica la larghezza di una singola linea di riempimento." #: /fdmprinter.def.json msgctxt "skirt_brim_line_width label" msgid "Skirt/Brim Line Width" -msgstr "Largeur des lignes de jupe/bordure" +msgstr "Larghezza delle linee dello skirt/brim" #: /fdmprinter.def.json msgctxt "skirt_brim_line_width description" msgid "Width of a single skirt or brim line." -msgstr "Largeur d'une seule ligne de jupe ou de bordure." +msgstr "Indica la larghezza di una singola linea dello skirt o del brim." #: /fdmprinter.def.json msgctxt "support_line_width label" msgid "Support Line Width" -msgstr "Largeur de ligne de support" +msgstr "Larghezza delle linee di supporto" #: /fdmprinter.def.json msgctxt "support_line_width description" msgid "Width of a single support structure line." -msgstr "Largeur d'une seule ligne de support." +msgstr "Indica la larghezza di una singola linea di supporto." #: /fdmprinter.def.json msgctxt "support_interface_line_width label" msgid "Support Interface Line Width" -msgstr "Largeur de ligne d'interface de support" +msgstr "Larghezza della linea dell’interfaccia di supporto" #: /fdmprinter.def.json msgctxt "support_interface_line_width description" msgid "Width of a single line of support roof or floor." -msgstr "Largeur d'une seule ligne de plafond ou de bas de support." +msgstr "Indica la larghezza di una singola linea di supporto superiore o inferiore." #: /fdmprinter.def.json msgctxt "support_roof_line_width label" msgid "Support Roof Line Width" -msgstr "Largeur de ligne de plafond de support" +msgstr "Larghezza delle linee di supporto superiori" #: /fdmprinter.def.json msgctxt "support_roof_line_width description" msgid "Width of a single support roof line." -msgstr "Largeur d'une seule ligne de plafond de support." +msgstr "Indica la larghezza di una singola linea di supporto superiore." #: /fdmprinter.def.json msgctxt "support_bottom_line_width label" msgid "Support Floor Line Width" -msgstr "Largeur de ligne de bas de support" +msgstr "Larghezza della linea di supporto inferiore" #: /fdmprinter.def.json msgctxt "support_bottom_line_width description" msgid "Width of a single support floor line." -msgstr "Largeur d'une seule ligne de bas de support." +msgstr "Indica la larghezza di una singola linea di supporto inferiore." #: /fdmprinter.def.json msgctxt "prime_tower_line_width label" msgid "Prime Tower Line Width" -msgstr "Largeur de ligne de la tour d'amorçage" +msgstr "Larghezza della linea della torre di innesco" #: /fdmprinter.def.json msgctxt "prime_tower_line_width description" msgid "Width of a single prime tower line." -msgstr "Largeur d'une seule ligne de tour d'amorçage." +msgstr "Indica la larghezza di una singola linea della torre di innesco." #: /fdmprinter.def.json msgctxt "initial_layer_line_width_factor label" msgid "Initial Layer Line Width" -msgstr "Largeur de ligne couche initiale" +msgstr "Larghezza linea strato iniziale" #: /fdmprinter.def.json msgctxt "initial_layer_line_width_factor description" msgid "" "Multiplier of the line width on the first layer. Increasing this could " "improve bed adhesion." -msgstr "Multiplicateur de la largeur de la ligne sur la première couche. Augmenter le multiplicateur peut améliorer l'adhésion au plateau." +msgstr "Moltiplicatore della larghezza della linea del primo strato Il suo aumento potrebbe migliorare l'adesione al piano." #: /fdmprinter.def.json msgctxt "shell label" msgid "Walls" -msgstr "Parois" +msgstr "Pareti" #: /fdmprinter.def.json msgctxt "shell description" msgid "Shell" -msgstr "Coque" +msgstr "Guscio" #: /fdmprinter.def.json msgctxt "wall_extruder_nr label" msgid "Wall Extruder" -msgstr "Extrudeuse de paroi" +msgstr "Estrusore pareti" #: /fdmprinter.def.json msgctxt "wall_extruder_nr description" msgid "" "The extruder train used for printing the walls. This is used in multi-" "extrusion." -msgstr "Le train d'extrudeuse utilisé pour l'impression des parois. Cela est utilisé en multi-extrusion." +msgstr "Treno estrusore utilizzato per stampare le pareti. Si utilizza nell'estrusione multipla." #: /fdmprinter.def.json msgctxt "wall_0_extruder_nr label" msgid "Outer Wall Extruder" -msgstr "Extrudeuse de paroi externe" +msgstr "Estrusore parete esterna" #: /fdmprinter.def.json msgctxt "wall_0_extruder_nr description" msgid "" "The extruder train used for printing the outer wall. This is used in multi-" "extrusion." -msgstr "Le train d'extrudeuse utilisé pour l'impression des parois externes. Cela est utilisé en multi-extrusion." +msgstr "Treno estrusore utilizzato per stampare la parete esterna. Si utilizza nell'estrusione multipla." #: /fdmprinter.def.json msgctxt "wall_x_extruder_nr label" msgid "Inner Wall Extruder" -msgstr "Extrudeuse de paroi interne" +msgstr "Estrusore parete interna" #: /fdmprinter.def.json msgctxt "wall_x_extruder_nr description" msgid "" "The extruder train used for printing the inner walls. This is used in multi-" "extrusion." -msgstr "Le train d'extrudeuse utilisé pour l'impression des parois internes. Cela est utilisé en multi-extrusion." +msgstr "Treno estrusore utilizzato per stampare le pareti interne. Si utilizza nell'estrusione multipla." #: /fdmprinter.def.json msgctxt "wall_thickness label" msgid "Wall Thickness" -msgstr "Épaisseur de la paroi" +msgstr "Spessore delle pareti" #: /fdmprinter.def.json msgctxt "wall_thickness description" msgid "" "The thickness of the walls in the horizontal direction. This value divided " "by the wall line width defines the number of walls." -msgstr "Épaisseur des parois en sens horizontal. Cette valeur divisée par la largeur de la ligne de la paroi définit le nombre de parois." +msgstr "Spessore delle pareti in direzione orizzontale. Questo valore diviso per la larghezza della linea della parete definisce il numero di pareti." #: /fdmprinter.def.json msgctxt "wall_line_count label" msgid "Wall Line Count" -msgstr "Nombre de lignes de la paroi" +msgstr "Numero delle linee perimetrali" #: /fdmprinter.def.json msgctxt "wall_line_count description" msgid "" "The number of walls. When calculated by the wall thickness, this value is " "rounded to a whole number." -msgstr "Le nombre de parois. Lorsqu'elle est calculée par l'épaisseur de la paroi, cette valeur est arrondie à un nombre entier." +msgstr "Indica il numero delle pareti. Quando calcolato mediante lo spessore della parete, il valore viene arrotondato a numero intero." #: /fdmprinter.def.json msgctxt "wall_transition_length label" msgid "Wall Transition Length" -msgstr "Longueur de transition de la paroi" +msgstr "Lunghezza transizione parete" #: /fdmprinter.def.json msgctxt "wall_transition_length description" @@ -1082,26 +1083,26 @@ msgid "" "When transitioning between different numbers of walls as the part becomes " "thinner, a certain amount of space is allotted to split or join the wall " "lines." -msgstr "Lorsque l'on passe d'un nombre de parois à un autre, au fur et à mesure que la pièce s'amincit, un certain espace est alloué pour diviser ou joindre les" -" lignes de parois." +msgstr "Quando si esegue la transizione tra numeri di parete diversi poiché la parte diventa più sottile, viene allocata una determinata quantità di spazio per" +" dividere o unire le linee perimetrali." #: /fdmprinter.def.json msgctxt "wall_distribution_count label" msgid "Wall Distribution Count" -msgstr "Nombre de distributions des parois" +msgstr "Conteggio distribuzione parete" #: /fdmprinter.def.json msgctxt "wall_distribution_count description" msgid "" "The number of walls, counted from the center, over which the variation needs " "to be spread. Lower values mean that the outer walls don't change in width." -msgstr "Le nombre de parois, comptées à partir du centre, sur lesquelles la variation doit être répartie. Les valeurs inférieures signifient que les parois extérieures" -" ne changent pas en termes de largeur." +msgstr "Il numero di pareti, conteggiate dal centro, su cui occorre distribuire la variazione. Valori più bassi indicano che la larghezza delle pareti esterne" +" non cambia." #: /fdmprinter.def.json msgctxt "wall_transition_angle label" msgid "Wall Transitioning Threshold Angle" -msgstr "Angle du seuil de transition de la paroi" +msgstr "Angolo di soglia di transizione parete" #: /fdmprinter.def.json msgctxt "wall_transition_angle description" @@ -1111,14 +1112,14 @@ msgid "" "no walls will be printed in the center to fill the remaining space. Reducing " "this setting reduces the number and length of these center walls, but may " "leave gaps or overextrude." -msgstr "Quand créer des transitions entre un nombre uniforme et impair de parois. Une forme de coin dont l'angle est supérieur à ce paramètre n'aura pas de transitions" -" et aucune paroi ne sera imprimée au centre pour remplir l'espace restant. En réduisant ce paramètre, on réduit le nombre et la longueur de ces parois" -" centrales, mais on risque de laisser des trous ou sur-extruder." +msgstr "Quando creare transizioni tra numeri di parete pari e dispari. Una forma a cuneo con un angolo maggiore di questa impostazione non presenta transazioni" +" e nessuna parete verrà stampata al centro per riempire lo spazio rimanente. Riducendo questa impostazione si riduce il numero e la lunghezza di queste" +" pareti centrali, ma potrebbe lasciare spazi vuoti o sovraestrusione." #: /fdmprinter.def.json msgctxt "wall_transition_filter_distance label" msgid "Wall Transitioning Filter Distance" -msgstr "Distance du filtre de transition des parois" +msgstr "Distanza di filtro transizione parete" #: /fdmprinter.def.json msgctxt "wall_transition_filter_distance description" @@ -1126,13 +1127,13 @@ msgid "" "If it would be transitioning back and forth between different numbers of " "walls in quick succession, don't transition at all. Remove transitions if " "they are closer together than this distance." -msgstr "S'il s'agit d'une transition d'avant en arrière entre différents nombres de parois en succession rapide, ne faites pas du tout la transition. Supprimez" -" les transitions si elles sont plus proches les unes des autres que cette distance." +msgstr "Se si pensa di eseguire la transizione avanti e indietro tra numeri di pareti differenti in rapida successione, non eseguire alcuna transizione. Rimuovere" +" le transizioni se sono più vicine di questa distanza." #: /fdmprinter.def.json msgctxt "wall_transition_filter_deviation label" msgid "Wall Transitioning Filter Margin" -msgstr "Marge du filtre de transition des parois" +msgstr "Margine filtro di transizione parete" #: /fdmprinter.def.json msgctxt "wall_transition_filter_deviation description" @@ -1143,27 +1144,27 @@ msgid "" "margin reduces the number of transitions, which reduces the number of " "extrusion starts/stops and travel time. However, large line width variation " "can lead to under- or overextrusion problems." -msgstr "Empêchez la transition d'avant en arrière entre une paroi supplémentaire et une paroi en moins. Cette marge étend la gamme des largeurs de ligne qui suivent" -" à [Largeur minimale de la ligne de paroi - marge, 2 * Largeur minimale de la ligne de paroi + marge]. L'augmentation de cette marge réduit le nombre de" -" transitions, ce qui réduit le nombre de démarrages/arrêts d'extrusion et le temps de trajet. Cependant, une grande variation de la largeur de la ligne" -" peut entraîner des problèmes de sous-extrusion ou de sur-extrusion." +msgstr "Impedisce la transizione avanti e indietro tra una parete aggiuntiva e una di meno. Questo margine estende l'intervallo di larghezze linea che segue a" +" [Larghezza minima della linea perimetrale - Margine, 2 * Larghezza minima della linea perimetrale + Margine]. Incrementando questo margine si riduce il" +" numero di transizioni, che riduce il numero di avvii/interruzioni estrusione e durata dello spostamento. Tuttavia, variazioni ampie della larghezza della" +" linea possono portare a problemi di sottoestrusione o sovraestrusione." #: /fdmprinter.def.json msgctxt "wall_0_wipe_dist label" msgid "Outer Wall Wipe Distance" -msgstr "Distance d'essuyage paroi extérieure" +msgstr "Distanza del riempimento parete esterna" #: /fdmprinter.def.json msgctxt "wall_0_wipe_dist description" msgid "" "Distance of a travel move inserted after the outer wall, to hide the Z seam " "better." -msgstr "Distance d'un déplacement inséré après la paroi extérieure, pour mieux masquer la jointure en Z." +msgstr "Distanza di spostamento inserita dopo la parete esterna per nascondere meglio la giunzione Z." #: /fdmprinter.def.json msgctxt "wall_0_inset label" msgid "Outer Wall Inset" -msgstr "Insert de paroi externe" +msgstr "Inserto parete esterna" #: /fdmprinter.def.json msgctxt "wall_0_inset description" @@ -1172,13 +1173,13 @@ msgid "" "than the nozzle, and printed after the inner walls, use this offset to get " "the hole in the nozzle to overlap with the inner walls instead of the " "outside of the model." -msgstr "Insert appliqué sur le passage de la paroi externe. Si la paroi externe est plus petite que la buse et imprimée après les parois intérieures, utiliser" -" ce décalage pour que le trou dans la buse chevauche les parois internes et non l'extérieur du modèle." +msgstr "Inserto applicato al percorso della parete esterna. Se la parete esterna è di dimensioni inferiori all’ugello e stampata dopo le pareti interne, utilizzare" +" questo offset per fare in modo che il foro dell’ugello si sovrapponga alle pareti interne anziché all’esterno del modello." #: /fdmprinter.def.json msgctxt "optimize_wall_printing_order label" msgid "Optimize Wall Printing Order" -msgstr "Optimiser l'ordre d'impression des parois" +msgstr "Ottimizzazione sequenza di stampa pareti" #: /fdmprinter.def.json msgctxt "optimize_wall_printing_order description" @@ -1188,14 +1189,14 @@ msgid "" "being enabled but some may actually take longer so please compare the print " "time estimates with and without optimization. First layer is not optimized " "when choosing brim as build plate adhesion type." -msgstr "Optimiser l'ordre dans lequel des parois sont imprimées de manière à réduire le nombre de retraits et les distances parcourues. La plupart des pièces bénéficieront" -" de cette possibilité, mais certaines peuvent en fait prendre plus de temps à l'impression ; veuillez dès lors comparer les estimations de durée d'impression" -" avec et sans optimisation. La première couche n'est pas optimisée lorsque le type d'adhérence au plateau est défini sur bordure." +msgstr "Ottimizzare la sequenza di stampa delle pareti in modo da ridurre il numero di retrazioni e la distanza percorsa. L'abilitazione di questa funzione porta" +" vantaggi per la maggior parte dei pezzi; alcuni possono richiedere un maggior tempo di esecuzione; si consiglia di confrontare i tempi di stampa stimati" +" con e senza ottimizzazione. Scegliendo la funzione brim come tipo di adesione del piano di stampa, il primo strato non viene ottimizzato." #: /fdmprinter.def.json msgctxt "inset_direction label" msgid "Wall Ordering" -msgstr "Ordre des parois" +msgstr "Ordinamento parete" #: /fdmprinter.def.json msgctxt "inset_direction description" @@ -1205,36 +1206,36 @@ msgid "" "propagate to the outside. However printing them later allows them to stack " "better when overhangs are printed. When there is an uneven amount of total " "innner walls, the 'center last line' is always printed last." -msgstr "Détermine l'ordre dans lequel les parois sont imprimées. L'impression des parois extérieures plus tôt permet une précision dimensionnelle car les défauts" -" des parois intérieures ne peuvent pas se propager à l'extérieur. Cependant, le fait de les imprimer plus tard leur permet de mieux s'empiler lorsque les" -" saillies sont imprimées. Lorsqu'il y a une quantité totale inégale de parois intérieures, la « dernière ligne centrale » est toujours imprimée en dernier." +msgstr "Determina l'ordine di stampa delle pareti. La stampa anticipata delle pareti esterne migliora la precisione dimensionale poiché i guasti dalle pareti interne" +" non possono propagarsi all'esterno. Se si esegue la stampa in un momento successivo, tuttavia, è possibile impilarle meglio quando vengono stampati gli" +" sbalzi. In presenza di una quantità disomogenea di pareti interne totali, l'\"ultima riga centrale\" viene sempre stampata per ultima." #: /fdmprinter.def.json msgctxt "inset_direction option inside_out" msgid "Inside To Outside" -msgstr "De l'intérieur vers l'extérieur" +msgstr "Dall'interno all'esterno" #: /fdmprinter.def.json msgctxt "inset_direction option outside_in" msgid "Outside To Inside" -msgstr "De l'extérieur vers l'intérieur" +msgstr "Dall'esterno all'interno" #: /fdmprinter.def.json msgctxt "alternate_extra_perimeter label" msgid "Alternate Extra Wall" -msgstr "Alterner les parois supplémentaires" +msgstr "Parete supplementare alternativa" #: /fdmprinter.def.json msgctxt "alternate_extra_perimeter description" msgid "" "Prints an extra wall at every other layer. This way infill gets caught " "between these extra walls, resulting in stronger prints." -msgstr "Imprime une paroi supplémentaire une couche sur deux. Ainsi, le remplissage est pris entre ces parois supplémentaires pour créer des impressions plus solides." +msgstr "Stampa una parete supplementare ogni due strati. In questo modo il riempimento rimane catturato tra queste pareti supplementari, creando stampe più resistenti." #: /fdmprinter.def.json msgctxt "min_wall_line_width label" msgid "Minimum Wall Line Width" -msgstr "Largeur minimale de la ligne de paroi" +msgstr "Larghezza minima della linea perimetrale" #: /fdmprinter.def.json msgctxt "min_wall_line_width description" @@ -1246,15 +1247,15 @@ msgid "" "transition from N to N+1 walls at some geometry thickness where the N walls " "are wide and the N+1 walls are narrow. The widest possible wall line is " "twice the Minimum Wall Line Width." -msgstr "Pour les structures fines dont la taille correspond à une ou deux fois celle de la buse, il faut modifier la largeur des lignes pour respecter l'épaisseur" -" du modèle. Ce paramètre contrôle la largeur de ligne minimale autorisée pour les parois. Les largeurs de lignes minimales déterminent également les largeurs" -" de lignes maximales, puisque nous passons de N à N+1 parois à une certaine épaisseur géométrique où les N parois sont larges et les N+1 parois sont étroites." -" La ligne de paroi la plus large possible est égale à deux fois la largeur minimale de la ligne de paroi." +msgstr "Per strutture sottili, circa una o due volte la dimensione dell'ugello, le larghezze delle linee devono essere modificate per rispettare lo spessore del" +" modello. Questa impostazione controlla la larghezza minima della linea consentita per le pareti. Le larghezze minime delle linee determinano intrinsecamente" +" anche le larghezze massime delle linee, poiché si esegue la transizione da N a N+1 pareti ad uno spessore geometrico in cui le pareti N sono larghe e" +" le pareti N+1 sono strette. La linea perimetrale più larga possible è due volte la larghezza minima della linea perimetrale." #: /fdmprinter.def.json msgctxt "min_even_wall_line_width label" msgid "Minimum Even Wall Line Width" -msgstr "Largeur minimale de la ligne de paroi uniforme" +msgstr "Larghezza minima della linea perimetrale pari" #: /fdmprinter.def.json msgctxt "min_even_wall_line_width description" @@ -1264,15 +1265,15 @@ msgid "" "printing two wall lines. A higher Minimum Even Wall Line Width leads to a " "higher maximum odd wall line width. The maximum even wall line width is " "calculated as Outer Wall Line Width + 0.5 * Minimum Odd Wall Line Width." -msgstr "Largeur de ligne minimale pour les murs polygonaux normaux. Ce paramètre détermine à quelle épaisseur de modèle nous passons de l'impression d'une seule" -" ligne de paroi fine à l'impression de deux lignes de paroi. Une largeur minimale de ligne de paroi paire plus élevée entraîne une largeur maximale de" -" ligne de paroi impaire plus élevée. La largeur maximale de la ligne de paroi paire est calculée comme suit : largeur de la ligne de paroi extérieure +" -" 0,5 * largeur minimale de la ligne de paroi impaire." +msgstr "La larghezza minima della linea per normali pareti poligonali. Questa impostazione determina lo spessore modello in corrispondenza del quale si passa dalla" +" stampa di una singola linea perimetrale sottile alla stampa di due linee perimetrali. Una larghezza minima della linea perimetrale pari più elevata porta" +" a una larghezza massima della linea perimetrale dispari più elevata. La larghezza massima della linea perimetrale pari viene calcolata come Larghezza" +" della linea perimetrale esterna + 0,5 * Larghezza minima della linea perimetrale dispari." #: /fdmprinter.def.json msgctxt "min_odd_wall_line_width label" msgid "Minimum Odd Wall Line Width" -msgstr "Largeur minimale de la ligne de paroi impaire" +msgstr "Larghezza minima della linea perimetrale dispari" #: /fdmprinter.def.json msgctxt "min_odd_wall_line_width description" @@ -1283,27 +1284,27 @@ msgid "" "A higher Minimum Odd Wall Line Width leads to a higher maximum even wall " "line width. The maximum odd wall line width is calculated as 2 * Minimum " "Even Wall Line Width." -msgstr "Largeur de ligne minimale pour les parois de polyligne de remplissage de l'espace de ligne médiane. Ce paramètre détermine à partir de quelle épaisseur" -" de modèle nous passons de l'impression de deux lignes de parois à l'impression de deux parois extérieures et d'une seule paroi centrale au milieu. Une" -" largeur de ligne de paroi impaire minimale plus élevée conduit à une largeur de ligne de paroi uniforme plus élevée. La largeur maximale de la ligne de" -" paroi impaire est calculée comme 2 × largeur minimale de la ligne de paroi paire." +msgstr "La larghezza minima della linea per pareti polilinea di riempimento interstizi linea intermedia. Questa impostazione determina lo spessore modello in corrispondenza" +" del quale si passa dalla stampa di due linee perimetrali alla stampa di due pareti esterne e di una singola parete centrale al centro. Una larghezza minima" +" della linea perimetrale pari più elevata porta a una larghezza massima della linea perimetrale dispari più elevata. La larghezza massima della linea perimetrale" +" dispari viene calcolata come 2 * Larghezza minima della linea perimetrale pari." #: /fdmprinter.def.json msgctxt "fill_outline_gaps label" msgid "Print Thin Walls" -msgstr "Imprimer parois fines" +msgstr "Stampa pareti sottili" #: /fdmprinter.def.json msgctxt "fill_outline_gaps description" msgid "" "Print pieces of the model which are horizontally thinner than the nozzle " "size." -msgstr "Imprimer les parties du modèle qui sont horizontalement plus fines que la taille de la buse." +msgstr "Stampa parti del modello orizzontalmente più sottili delle dimensioni dell'ugello." #: /fdmprinter.def.json msgctxt "min_feature_size label" msgid "Minimum Feature Size" -msgstr "Taille minimale des entités" +msgstr "Dimensioni minime della feature" #: /fdmprinter.def.json msgctxt "min_feature_size description" @@ -1311,13 +1312,13 @@ msgid "" "Minimum thickness of thin features. Model features that are thinner than " "this value will not be printed, while features thicker than the Minimum " "Feature Size will be widened to the Minimum Wall Line Width." -msgstr "Épaisseur minimale des entités fines. Les entités de modèle qui sont plus fines que cette valeur ne seront pas imprimées, tandis que les entités plus épaisses" -" que la taille d'entité minimale seront élargies à la largeur minimale de la ligne de paroi." +msgstr "Spessore minimo di feature sottili. Le feature modello che sono più sottili di questo valore non verranno stampate, mentre le feature più spesse delle" +" dimensioni minime della feature verranno ampliate fino alla larghezza minima della linea perimetrale." #: /fdmprinter.def.json msgctxt "min_bead_width label" msgid "Minimum Thin Wall Line Width" -msgstr "Largeur minimale de la ligne de paroi fine" +msgstr "Larghezza minima della linea perimetrale sottile" #: /fdmprinter.def.json msgctxt "min_bead_width description" @@ -1326,13 +1327,13 @@ msgid "" "Feature Size) of the model. If the Minimum Wall Line Width is thinner than " "the thickness of the feature, the wall will become as thick as the feature " "itself." -msgstr "La largeur de la paroi qui remplacera les entités fines (selon la taille minimale des entités) du modèle. Si la largeur minimale de la ligne de paroi est" -" plus fine que l'épaisseur de l'entité, la paroi deviendra aussi épaisse que l'entité elle-même." +msgstr "Larghezza della parete che sostituirà feature sottili (in base alle dimensioni minime della feature) del modello. Se la larghezza minima della linea perimetrale" +" è più sottile dello spessore della feature, la parete diventerà spessa come la feature stessa." #: /fdmprinter.def.json msgctxt "xy_offset label" msgid "Horizontal Expansion" -msgstr "Expansion horizontale" +msgstr "Espansione orizzontale" #: /fdmprinter.def.json msgctxt "xy_offset description" @@ -1340,13 +1341,13 @@ msgid "" "Amount of offset applied to all polygons in each layer. Positive values can " "compensate for too big holes; negative values can compensate for too small " "holes." -msgstr "Le décalage appliqué à tous les polygones dans chaque couche. Une valeur positive peut compenser les trous trop gros ; une valeur négative peut compenser" -" les trous trop petits." +msgstr "Determina l'entità di offset (o estensione dello strato) applicata a tutti i poligoni su ciascuno strato. I valori positivi possono compensare fori troppo" +" estesi; i valori negativi possono compensare fori troppo piccoli." #: /fdmprinter.def.json msgctxt "xy_offset_layer_0 label" msgid "Initial Layer Horizontal Expansion" -msgstr "Expansion horizontale de la couche initiale" +msgstr "Espansione orizzontale dello strato iniziale" #: /fdmprinter.def.json msgctxt "xy_offset_layer_0 description" @@ -1354,26 +1355,25 @@ msgid "" "Amount of offset applied to all polygons in the first layer. A negative " "value can compensate for squishing of the first layer known as \"elephant's " "foot\"." -msgstr "Le décalage appliqué à tous les polygones dans la première couche. Une valeur négative peut compenser l'écrasement de la première couche, appelé « patte" -" d'éléphant »." +msgstr "È l'entità di offset (estensione dello strato) applicata a tutti i poligoni di supporto in ciascuno strato. Un valore negativo può compensare lo schiacciamento" +" del primo strato noto come \"zampa di elefante\"." #: /fdmprinter.def.json msgctxt "hole_xy_offset label" msgid "Hole Horizontal Expansion" -msgstr "Expansion horizontale des trous" +msgstr "Espansione orizzontale dei fori" #: /fdmprinter.def.json msgctxt "hole_xy_offset description" msgid "" "Amount of offset applied to all holes in each layer. Positive values " "increase the size of the holes, negative values reduce the size of the holes." -msgstr "Le décalage appliqué à tous les trous dans chaque couche. Les valeurs positives augmentent la taille des trous ; les valeurs négatives réduisent la taille" -" des trous." +msgstr "Entità di offset applicato a tutti i fori di ciascuno strato. Valori positivi aumentano le dimensioni dei fori, mentre valori negativi le riducono." #: /fdmprinter.def.json msgctxt "z_seam_type label" msgid "Z Seam Alignment" -msgstr "Alignement de la jointure en Z" +msgstr "Allineamento delle giunzioni a Z" #: /fdmprinter.def.json msgctxt "z_seam_type description" @@ -1383,109 +1383,109 @@ msgid "" "these near a user specified location, the seam is easiest to remove. When " "placed randomly the inaccuracies at the paths' start will be less " "noticeable. When taking the shortest path the print will be quicker." -msgstr "Point de départ de chaque voie dans une couche. Quand les voies dans les couches consécutives démarrent au même endroit, une jointure verticale peut apparaître" -" sur l'impression. En alignant les points de départ près d'un emplacement défini par l'utilisateur, la jointure sera plus facile à faire disparaître. Lorsqu'elles" -" sont disposées de manière aléatoire, les imprécisions de départ des voies seront moins visibles. En choisissant la voie la plus courte, l'impression se" -" fera plus rapidement." +msgstr "Punto di partenza di ogni percorso nell'ambito di uno strato. Quando i percorsi in strati consecutivi iniziano nello stesso punto, sulla stampa può apparire" +" una linea di giunzione verticale. Se si allineano in prossimità di una posizione specificata dall’utente, la linea di giunzione può essere rimossa più" +" facilmente. Se disposti in modo casuale, le imprecisioni in corrispondenza dell'inizio del percorso saranno meno evidenti. Prendendo il percorso più breve" +" la stampa sarà più veloce." #: /fdmprinter.def.json msgctxt "z_seam_type option back" msgid "User Specified" -msgstr "Utilisateur spécifié" +msgstr "Specificato dall’utente" #: /fdmprinter.def.json msgctxt "z_seam_type option shortest" msgid "Shortest" -msgstr "Plus court" +msgstr "Il più breve" #: /fdmprinter.def.json msgctxt "z_seam_type option random" msgid "Random" -msgstr "Aléatoire" +msgstr "Casuale" #: /fdmprinter.def.json msgctxt "z_seam_type option sharpest_corner" msgid "Sharpest Corner" -msgstr "Angle le plus aigu" +msgstr "Angolo più acuto" #: /fdmprinter.def.json msgctxt "z_seam_position label" msgid "Z Seam Position" -msgstr "Position de la jointure en Z" +msgstr "Posizione della cucitura in Z" #: /fdmprinter.def.json msgctxt "z_seam_position description" msgid "The position near where to start printing each part in a layer." -msgstr "La position près de laquelle démarre l'impression de chaque partie dans une couche." +msgstr "La posizione accanto al punto in cui avviare la stampa di ciascuna parte in uno layer." #: /fdmprinter.def.json msgctxt "z_seam_position option backleft" msgid "Back Left" -msgstr "Arrière gauche" +msgstr "Indietro a sinistra" #: /fdmprinter.def.json msgctxt "z_seam_position option back" msgid "Back" -msgstr "Précédent" +msgstr "Indietro" #: /fdmprinter.def.json msgctxt "z_seam_position option backright" msgid "Back Right" -msgstr "Arrière droit" +msgstr "Indietro a destra" #: /fdmprinter.def.json msgctxt "z_seam_position option right" msgid "Right" -msgstr "Droite" +msgstr "Destra" #: /fdmprinter.def.json msgctxt "z_seam_position option frontright" msgid "Front Right" -msgstr "Avant droit" +msgstr "Avanti a destra" #: /fdmprinter.def.json msgctxt "z_seam_position option front" msgid "Front" -msgstr "Avant" +msgstr "Avanti" #: /fdmprinter.def.json msgctxt "z_seam_position option frontleft" msgid "Front Left" -msgstr "Avant gauche" +msgstr "Avanti a sinistra" #: /fdmprinter.def.json msgctxt "z_seam_position option left" msgid "Left" -msgstr "Gauche" +msgstr "Sinistra" #: /fdmprinter.def.json msgctxt "z_seam_x label" msgid "Z Seam X" -msgstr "X Jointure en Z" +msgstr "Giunzione Z X" #: /fdmprinter.def.json msgctxt "z_seam_x description" msgid "" "The X coordinate of the position near where to start printing each part in a " "layer." -msgstr "Coordonnée X de la position près de laquelle démarrer l'impression de chaque partie dans une couche." +msgstr "La coordinata X della posizione in prossimità della quale si innesca all’avvio della stampa di ciascuna parte in uno strato." #: /fdmprinter.def.json msgctxt "z_seam_y label" msgid "Z Seam Y" -msgstr "Y Jointure en Z" +msgstr "Giunzione Z Y" #: /fdmprinter.def.json msgctxt "z_seam_y description" msgid "" "The Y coordinate of the position near where to start printing each part in a " "layer." -msgstr "Coordonnée Y de la position près de laquelle démarrer l'impression de chaque partie dans une couche." +msgstr "La coordinata Y della posizione in prossimità della quale si innesca all’avvio della stampa di ciascuna parte in uno strato." #: /fdmprinter.def.json msgctxt "z_seam_corner label" msgid "Seam Corner Preference" -msgstr "Préférence de jointure d'angle" +msgstr "Preferenze angolo giunzione" #: /fdmprinter.def.json msgctxt "z_seam_corner description" @@ -1497,40 +1497,40 @@ msgid "" "Seam makes the seam more likely to occur at an inside or outside corner. " "Smart Hiding allows both inside and outside corners, but chooses inside " "corners more frequently, if appropriate." -msgstr "Vérifie si les angles du contour du modèle influencent l'emplacement de la jointure. « Aucune » signifie que les angles n'ont aucune influence sur l'emplacement" -" de la jointure. « Masquer la jointure » génère le positionnement de la jointure sur un angle intérieur. « Exposer la jointure » génère le positionnement" -" de la jointure sur un angle extérieur. « Masquer ou exposer la jointure » génère le positionnement de la jointure sur un angle intérieur ou extérieur." -" « Jointure intelligente » autorise les angles intérieurs et extérieurs, mais choisit plus fréquemment les angles intérieurs, le cas échéant." +msgstr "Controlla se gli angoli sul profilo del modello influenzano la posizione della giunzione. Nessuno significa che gli angoli non hanno alcuna influenza sulla" +" posizione della giunzione. Nascondi giunzione favorisce la presenza della giunzione su un angolo interno. Esponi giunzione favorisce la presenza della" +" giunzione su un angolo esterno. Nascondi o esponi giunzione favorisce la presenza della giunzione su un angolo interno o esterno. Smart Hiding consente" +" sia gli angoli interni che quelli esterni ma sceglie con maggiore frequenza gli angoli interni, se opportuno." #: /fdmprinter.def.json msgctxt "z_seam_corner option z_seam_corner_none" msgid "None" -msgstr "Aucun" +msgstr "Nessuno" #: /fdmprinter.def.json msgctxt "z_seam_corner option z_seam_corner_inner" msgid "Hide Seam" -msgstr "Masquer jointure" +msgstr "Nascondi giunzione" #: /fdmprinter.def.json msgctxt "z_seam_corner option z_seam_corner_outer" msgid "Expose Seam" -msgstr "Exposer jointure" +msgstr "Esponi giunzione" #: /fdmprinter.def.json msgctxt "z_seam_corner option z_seam_corner_any" msgid "Hide or Expose Seam" -msgstr "Masquer ou exposer jointure" +msgstr "Nascondi o esponi giunzione" #: /fdmprinter.def.json msgctxt "z_seam_corner option z_seam_corner_weighted" msgid "Smart Hiding" -msgstr "Masquage intelligent" +msgstr "Occultamento intelligente" #: /fdmprinter.def.json msgctxt "z_seam_relative label" msgid "Z Seam Relative" -msgstr "Relatif à la jointure en Z" +msgstr "Riferimento giunzione Z" #: /fdmprinter.def.json msgctxt "z_seam_relative description" @@ -1538,72 +1538,72 @@ msgid "" "When enabled, the z seam coordinates are relative to each part's centre. " "When disabled, the coordinates define an absolute position on the build " "plate." -msgstr "Si cette option est activée, les coordonnées de la jointure z sont relatives au centre de chaque partie. Si elle est désactivée, les coordonnées définissent" -" une position absolue sur le plateau." +msgstr "Se abilitato, le coordinate della giunzione Z sono riferite al centro di ogni parte. Se disabilitato, le coordinate definiscono una posizione assoluta" +" sul piano di stampa." #: /fdmprinter.def.json msgctxt "top_bottom label" msgid "Top/Bottom" -msgstr "Haut / bas" +msgstr "Superiore / Inferiore" #: /fdmprinter.def.json msgctxt "top_bottom description" msgid "Top/Bottom" -msgstr "Haut / bas" +msgstr "Superiore / Inferiore" #: /fdmprinter.def.json msgctxt "roofing_extruder_nr label" msgid "Top Surface Skin Extruder" -msgstr "Extrudeuse de couche extérieure de la surface supérieure" +msgstr "Estrusore rivestimento superficie superiore" #: /fdmprinter.def.json msgctxt "roofing_extruder_nr description" msgid "" "The extruder train used for printing the top most skin. This is used in " "multi-extrusion." -msgstr "Le train d'extrudeuse utilisé pour l'impression de la couche extérieure supérieure. Cela est utilisé en multi-extrusion." +msgstr "Treno estrusore utilizzato per stampare il rivestimento più in alto. Si utilizza nell'estrusione multipla." #: /fdmprinter.def.json msgctxt "roofing_layer_count label" msgid "Top Surface Skin Layers" -msgstr "Couches extérieures de la surface supérieure" +msgstr "Strati di rivestimento superficie superiore" #: /fdmprinter.def.json msgctxt "roofing_layer_count description" msgid "" "The number of top most skin layers. Usually only one top most layer is " "sufficient to generate higher quality top surfaces." -msgstr "Nombre de couches extérieures supérieures. En général, une seule couche supérieure est suffisante pour générer des surfaces supérieures de qualité." +msgstr "Numero degli strati di rivestimento superiori. Solitamente è sufficiente un unico strato di sommità per ottenere superfici superiori di qualità elevata." #: /fdmprinter.def.json msgctxt "roofing_line_width label" msgid "Top Surface Skin Line Width" -msgstr "Largeur de ligne de couche extérieure de la surface supérieure" +msgstr "Larghezza linea rivestimento superficie superiore" #: /fdmprinter.def.json msgctxt "roofing_line_width description" msgid "Width of a single line of the areas at the top of the print." -msgstr "Largeur d'une seule ligne de la zone en haut de l'impression." +msgstr "Larghezza di un singola linea delle aree nella parte superiore della stampa." #: /fdmprinter.def.json msgctxt "roofing_pattern label" msgid "Top Surface Skin Pattern" -msgstr "Motif de couche extérieure de surface supérieure" +msgstr "Configurazione del rivestimento superficie superiore" #: /fdmprinter.def.json msgctxt "roofing_pattern description" msgid "The pattern of the top most layers." -msgstr "Le motif des couches supérieures." +msgstr "Configurazione degli strati superiori." #: /fdmprinter.def.json msgctxt "roofing_pattern option lines" msgid "Lines" -msgstr "Lignes" +msgstr "Linee" #: /fdmprinter.def.json msgctxt "roofing_pattern option concentric" msgid "Concentric" -msgstr "Concentrique" +msgstr "Concentrica" #: /fdmprinter.def.json msgctxt "roofing_pattern option zigzag" @@ -1613,7 +1613,7 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "roofing_monotonic label" msgid "Monotonic Top Surface Order" -msgstr "Ordre monotone de la surface supérieure" +msgstr "Ordine superficie superiore monotonico" #: /fdmprinter.def.json msgctxt "roofing_monotonic description" @@ -1621,13 +1621,13 @@ msgid "" "Print top surface lines in an ordering that causes them to always overlap " "with adjacent lines in a single direction. This takes slightly more time to " "print, but makes flat surfaces look more consistent." -msgstr "Imprimez les lignes de la surface supérieure dans un ordre tel qu'elles se chevauchent toujours avec les lignes adjacentes dans une seule direction. Cela" -" prend un peu plus de temps à imprimer, mais les surfaces planes ont l'air plus cohérentes." +msgstr "Stampa linee superficie superiori in un ordine che ne causa sempre la sovrapposizione con le linee adiacenti in un singola direzione. Questa operazione" +" richiede un tempo di stampa leggermente superiore ma rende l'aspetto delle superfici piane più uniforme." #: /fdmprinter.def.json msgctxt "roofing_angles label" msgid "Top Surface Skin Line Directions" -msgstr "Sens de lignes de couche extérieure de surface supérieure" +msgstr "Direzioni linea rivestimento superficie superiore" #: /fdmprinter.def.json msgctxt "roofing_angles description" @@ -1638,115 +1638,115 @@ msgid "" "it starts at the beginning again. The list items are separated by commas and " "the whole list is contained in square brackets. Default is an empty list " "which means use the traditional default angles (45 and 135 degrees)." -msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser lorsque les couches extérieures de la surface supérieure utilisent le motif en lignes" -" ou en zig zag. Les éléments de la liste sont utilisés de manière séquentielle à mesure de l'avancement des couches. La liste reprend depuis le début lorsque" -" la fin est atteinte. Les éléments de la liste sont séparés par des virgules et la liste entière est encadrée entre crochets. La valeur par défaut est" -" une liste vide, ce qui signifie que les angles traditionnels par défaut seront utilisés (45 et 135 degrés)." +msgstr "Un elenco di direzioni linee intere da usare quando gli strati rivestimento superficie superiore utilizzano le linee o la configurazione zig zag. Gli elementi" +" dall’elenco sono utilizzati in sequenza con il progredire degli strati e, al raggiungimento della fine dell’elenco, la sequenza ricomincia dall’inizio." +" Le voci elencate sono separate da virgole e l’intero elenco è racchiuso tra parentesi quadre. L’elenco predefinito è vuoto, vale a dire che utilizza i" +" valori angolari predefiniti (45 e 135 gradi)." #: /fdmprinter.def.json msgctxt "top_bottom_extruder_nr label" msgid "Top/Bottom Extruder" -msgstr "Extrudeuse du dessus/dessous" +msgstr "Estrusore superiore/inferiore" #: /fdmprinter.def.json msgctxt "top_bottom_extruder_nr description" msgid "" "The extruder train used for printing the top and bottom skin. This is used " "in multi-extrusion." -msgstr "Le train d'extrudeuse utilisé pour l'impression de la couche extérieure du haut et du bas. Cela est utilisé en multi-extrusion." +msgstr "Treno estrusore utilizzato per stampare il rivestimento superiore e quello inferiore. Si utilizza nell'estrusione multipla." #: /fdmprinter.def.json msgctxt "top_bottom_thickness label" msgid "Top/Bottom Thickness" -msgstr "Épaisseur du dessus/dessous" +msgstr "Spessore dello strato superiore/inferiore" #: /fdmprinter.def.json msgctxt "top_bottom_thickness description" msgid "" "The thickness of the top/bottom layers in the print. This value divided by " "the layer height defines the number of top/bottom layers." -msgstr "L’épaisseur des couches du dessus/dessous dans l'impression. Cette valeur divisée par la hauteur de la couche définit le nombre de couches du dessus/dessous." +msgstr "Indica lo spessore degli strati superiore/inferiore nella stampa. Questo valore diviso per la l’altezza dello strato definisce il numero degli strati superiori/inferiori." #: /fdmprinter.def.json msgctxt "top_thickness label" msgid "Top Thickness" -msgstr "Épaisseur du dessus" +msgstr "Spessore dello strato superiore" #: /fdmprinter.def.json msgctxt "top_thickness description" msgid "" "The thickness of the top layers in the print. This value divided by the " "layer height defines the number of top layers." -msgstr "L’épaisseur des couches du dessus dans l'impression. Cette valeur divisée par la hauteur de la couche définit le nombre de couches du dessus." +msgstr "Indica lo spessore degli strati superiori nella stampa. Questo valore diviso per la l’altezza dello strato definisce il numero degli strati superiori." #: /fdmprinter.def.json msgctxt "top_layers label" msgid "Top Layers" -msgstr "Couches supérieures" +msgstr "Strati superiori" #: /fdmprinter.def.json msgctxt "top_layers description" msgid "" "The number of top layers. When calculated by the top thickness, this value " "is rounded to a whole number." -msgstr "Le nombre de couches supérieures. Lorsqu'elle est calculée par l'épaisseur du dessus, cette valeur est arrondie à un nombre entier." +msgstr "Indica il numero degli strati superiori. Quando calcolato mediante lo spessore dello strato superiore, il valore viene arrotondato a numero intero." #: /fdmprinter.def.json msgctxt "bottom_thickness label" msgid "Bottom Thickness" -msgstr "Épaisseur du dessous" +msgstr "Spessore degli strati inferiori" #: /fdmprinter.def.json msgctxt "bottom_thickness description" msgid "" "The thickness of the bottom layers in the print. This value divided by the " "layer height defines the number of bottom layers." -msgstr "L’épaisseur des couches du dessous dans l'impression. Cette valeur divisée par la hauteur de la couche définit le nombre de couches du dessous." +msgstr "Indica lo spessore degli strati inferiori nella stampa. Questo valore diviso per la l’altezza dello strato definisce il numero degli strati inferiori." #: /fdmprinter.def.json msgctxt "bottom_layers label" msgid "Bottom Layers" -msgstr "Couches inférieures" +msgstr "Strati inferiori" #: /fdmprinter.def.json msgctxt "bottom_layers description" msgid "" "The number of bottom layers. When calculated by the bottom thickness, this " "value is rounded to a whole number." -msgstr "Le nombre de couches inférieures. Lorsqu'elle est calculée par l'épaisseur du dessous, cette valeur est arrondie à un nombre entier." +msgstr "Indica il numero degli strati inferiori. Quando calcolato mediante lo spessore dello strato inferiore, il valore viene arrotondato a numero intero." #: /fdmprinter.def.json msgctxt "initial_bottom_layers label" msgid "Initial Bottom Layers" -msgstr "Couches inférieures initiales" +msgstr "Layer inferiori iniziali" #: /fdmprinter.def.json msgctxt "initial_bottom_layers description" msgid "" "The number of initial bottom layers, from the build-plate upwards. When " "calculated by the bottom thickness, this value is rounded to a whole number." -msgstr "Le nombre de couches inférieures initiales à partir du haut du plateau. Lorsqu'elle est calculée par l'épaisseur du dessous, cette valeur est arrondie" -" à un nombre entier." +msgstr "Il numero di layer inferiori iniziali, dal piano di stampa verso l'alto. Quando viene calcolato mediante lo spessore inferiore, questo valore viene arrotondato" +" a un numero intero." #: /fdmprinter.def.json msgctxt "top_bottom_pattern label" msgid "Top/Bottom Pattern" -msgstr "Motif du dessus/dessous" +msgstr "Configurazione dello strato superiore/inferiore" #: /fdmprinter.def.json msgctxt "top_bottom_pattern description" msgid "The pattern of the top/bottom layers." -msgstr "Le motif des couches du dessus/dessous." +msgstr "Indica la configurazione degli strati superiori/inferiori." #: /fdmprinter.def.json msgctxt "top_bottom_pattern option lines" msgid "Lines" -msgstr "Lignes" +msgstr "Linee" #: /fdmprinter.def.json msgctxt "top_bottom_pattern option concentric" msgid "Concentric" -msgstr "Concentrique" +msgstr "Concentriche" #: /fdmprinter.def.json msgctxt "top_bottom_pattern option zigzag" @@ -1756,22 +1756,22 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "top_bottom_pattern_0 label" msgid "Bottom Pattern Initial Layer" -msgstr "Couche initiale du motif du dessous" +msgstr "Strato iniziale configurazione inferiore" #: /fdmprinter.def.json msgctxt "top_bottom_pattern_0 description" msgid "The pattern on the bottom of the print on the first layer." -msgstr "Motif au bas de l'impression sur la première couche." +msgstr "La configurazione al fondo della stampa sul primo strato." #: /fdmprinter.def.json msgctxt "top_bottom_pattern_0 option lines" msgid "Lines" -msgstr "Lignes" +msgstr "Linee" #: /fdmprinter.def.json msgctxt "top_bottom_pattern_0 option concentric" msgid "Concentric" -msgstr "Concentrique" +msgstr "Concentriche" #: /fdmprinter.def.json msgctxt "top_bottom_pattern_0 option zigzag" @@ -1781,7 +1781,7 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "connect_skin_polygons label" msgid "Connect Top/Bottom Polygons" -msgstr "Relier les polygones supérieurs / inférieurs" +msgstr "Collega poligoni superiori/inferiori" #: /fdmprinter.def.json msgctxt "connect_skin_polygons description" @@ -1790,14 +1790,14 @@ msgid "" "concentric pattern enabling this setting greatly reduces the travel time, " "but because the connections can happen midway over infill this feature can " "reduce the top surface quality." -msgstr "Relier les voies de couche extérieure supérieures / inférieures lorsqu'elles sont côte à côte. Pour le motif concentrique, ce paramètre réduit considérablement" -" le temps de parcours, mais comme les liens peuvent se trouver à mi-chemin sur le remplissage, cette fonctionnalité peut réduire la qualité de la surface" -" supérieure." +msgstr "Collega i percorsi del rivestimento esterno superiore/inferiore quando corrono uno accanto all’altro. Per le configurazioni concentriche, l’abilitazione" +" di questa impostazione riduce notevolmente il tempo di spostamento, tuttavia poiché i collegamenti possono aver luogo a metà del riempimento, con questa" +" funzione la qualità della superficie superiore potrebbe risultare inferiore." #: /fdmprinter.def.json msgctxt "skin_monotonic label" msgid "Monotonic Top/Bottom Order" -msgstr "Ordre monotone dessus / dessous" +msgstr "Ordine superiore/inferiore monotonico" #: /fdmprinter.def.json msgctxt "skin_monotonic description" @@ -1805,13 +1805,13 @@ msgid "" "Print top/bottom lines in an ordering that causes them to always overlap " "with adjacent lines in a single direction. This takes slightly more time to " "print, but makes flat surfaces look more consistent." -msgstr "Imprimez les lignes supérieures et inférieures dans un ordre tel qu'elles se chevauchent toujours avec les lignes adjacentes dans une seule direction." -" Cela prend un peu plus de temps à imprimer, mais les surfaces planes ont l'air plus cohérentes." +msgstr "Stampa linee superiori/inferiori in un ordine che ne causa sempre la sovrapposizione con le linee adiacenti in un singola direzione. Questa operazione" +" richiede un tempo di stampa leggermente superiore ma rende l'aspetto delle superfici piane più uniforme." #: /fdmprinter.def.json msgctxt "skin_angles label" msgid "Top/Bottom Line Directions" -msgstr "Sens de la ligne du dessus / dessous" +msgstr "Direzioni delle linee superiori/inferiori" #: /fdmprinter.def.json msgctxt "skin_angles description" @@ -1822,15 +1822,15 @@ msgid "" "the beginning again. The list items are separated by commas and the whole " "list is contained in square brackets. Default is an empty list which means " "use the traditional default angles (45 and 135 degrees)." -msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser lorsque les couches du haut / bas utilisent le motif en lignes ou en zig zag. Les éléments" -" de la liste sont utilisés de manière séquentielle à mesure de l'avancement des couches. La liste reprend depuis le début lorsque la fin est atteinte." -" Les éléments de la liste sont séparés par des virgules et la liste entière est encadrée entre crochets. La valeur par défaut est une liste vide, ce qui" -" signifie que les angles traditionnels par défaut seront utilisés (45 et 135 degrés)." +msgstr "Un elenco di direzioni linee intere da usare quando gli strati superiori/inferiori utilizzano le linee o la configurazione zig zag. Gli elementi dall’elenco" +" sono utilizzati in sequenza con il progredire degli strati e, al raggiungimento della fine dell’elenco, la sequenza ricomincia dall’inizio. Le voci elencate" +" sono separate da virgole e l’intero elenco è racchiuso tra parentesi quadre. L’elenco predefinito è vuoto, vale a dire che utilizza i valori angolari" +" predefiniti (45 e 135 gradi)." #: /fdmprinter.def.json msgctxt "skin_no_small_gaps_heuristic label" msgid "No Skin in Z Gaps" -msgstr "Aucune couche dans les trous en Z" +msgstr "Nessun rivest. est. negli interstizi a Z" #: /fdmprinter.def.json msgctxt "skin_no_small_gaps_heuristic description" @@ -1840,14 +1840,14 @@ msgid "" "setting to not generate skin if the vertical gap is very small. This " "improves printing time and slicing time, but technically leaves infill " "exposed to the air." -msgstr "Lorsque le modèle comporte de petits trous verticaux de quelques couches seulement, il doit normalement y avoir une couche autour de celles-ci dans l'espace" -" étroit. Activez ce paramètre pour ne pas générer de couche si le trou vertical est très petit. Cela améliore le temps d'impression et le temps de découpage," -" mais laisse techniquement le remplissage exposé à l'air." +msgstr "Quando il modello presenta piccoli spazi vuoti verticali composti da un numero ridotto di strati, intorno a questi strati di norma dovrebbe essere presente" +" un rivestimento esterno nell'interstizio. Abilitare questa impostazione per non generare il rivestimento esterno se l'interstizio verticale è molto piccolo." +" Ciò consente di migliorare il tempo di stampa e il tempo di sezionamento, ma dal punto di vista tecnico lascia il riempimento esposto all'aria." #: /fdmprinter.def.json msgctxt "skin_outline_count label" msgid "Extra Skin Wall Count" -msgstr "Nombre supplémentaire de parois extérieures" +msgstr "Numero di pareti di rivestimento esterno supplementari" #: /fdmprinter.def.json msgctxt "skin_outline_count description" @@ -1855,13 +1855,13 @@ msgid "" "Replaces the outermost part of the top/bottom pattern with a number of " "concentric lines. Using one or two lines improves roofs that start on infill " "material." -msgstr "Remplace la partie la plus externe du motif du dessus/dessous par un certain nombre de lignes concentriques. Le fait d'utiliser une ou deux lignes améliore" -" les plafonds qui commencent sur du matériau de remplissage." +msgstr "Sostituisce la parte più esterna della configurazione degli strati superiori/inferiori con una serie di linee concentriche. L’utilizzo di una o due linee" +" migliora le parti superiori (tetti) che iniziano sul materiale di riempimento." #: /fdmprinter.def.json msgctxt "ironing_enabled label" msgid "Enable Ironing" -msgstr "Activer l'étirage" +msgstr "Abilita stiratura" #: /fdmprinter.def.json msgctxt "ironing_enabled description" @@ -1870,35 +1870,37 @@ msgid "" "little material. This is meant to melt the plastic on top further, creating " "a smoother surface. The pressure in the nozzle chamber is kept high so that " "the creases in the surface are filled with material." -msgstr "Allez au-dessus de la surface une fois supplémentaire, mais en extrudant très peu de matériau. Cela signifie de faire fondre le plastique en haut un peu" -" plus, pour créer une surface lisse. La pression dans la chambre de la buse est maintenue élevée afin que les plis de la surface soient remplis de matériau." +msgstr "Andare ancora una volta sulla superficie superiore, questa volta estrudendo una piccolissima quantità di materiale. Lo scopo è quello di sciogliere ulteriormente" +" la plastica sulla parte superiore, creando una superficie più liscia. La pressione nella camera dell'ugello viene mantenuta elevata, in modo che le grinze" +" nella superficie siano riempite con il materiale." #: /fdmprinter.def.json msgctxt "ironing_only_highest_layer label" msgid "Iron Only Highest Layer" -msgstr "N'étirer que la couche supérieure" +msgstr "Stiramento del solo strato più elevato" #: /fdmprinter.def.json msgctxt "ironing_only_highest_layer description" msgid "" "Only perform ironing on the very last layer of the mesh. This saves time if " "the lower layers don't need a smooth surface finish." -msgstr "N'exécute un étirage que sur l'ultime couche du maillage. Ceci économise du temps si les couches inférieures ne nécessitent pas de fini lisse de surface." +msgstr "Effettua lo stiramento solo dell'ultimissimo strato della maglia. È possibile quindi risparmiare tempo se gli strati inferiori non richiedono una finitura" +" con superficie liscia." #: /fdmprinter.def.json msgctxt "ironing_pattern label" msgid "Ironing Pattern" -msgstr "Motif d'étirage" +msgstr "Configurazione di stiratura" #: /fdmprinter.def.json msgctxt "ironing_pattern description" msgid "The pattern to use for ironing top surfaces." -msgstr "Le motif à utiliser pour étirer les surfaces supérieures." +msgstr "Configurazione utilizzata per la stiratura della superficie superiore." #: /fdmprinter.def.json msgctxt "ironing_pattern option concentric" msgid "Concentric" -msgstr "Concentrique" +msgstr "Concentrica" #: /fdmprinter.def.json msgctxt "ironing_pattern option zigzag" @@ -1908,7 +1910,7 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "ironing_monotonic label" msgid "Monotonic Ironing Order" -msgstr "Ordre d'étirage monotone" +msgstr "Ordine di stiratura monotonico" #: /fdmprinter.def.json msgctxt "ironing_monotonic description" @@ -1916,23 +1918,23 @@ msgid "" "Print ironing lines in an ordering that causes them to always overlap with " "adjacent lines in a single direction. This takes slightly more time to " "print, but makes flat surfaces look more consistent." -msgstr "Imprimez les lignes d'étirage dans un ordre tel qu'elles se chevauchent toujours avec les lignes adjacentes dans une seule direction. Cela prend un peu" -" plus de temps à imprimer, mais les surfaces planes ont l'air plus cohérentes." +msgstr "Stampa linee di stiratura in un ordine che ne causa sempre la sovrapposizione con le linee adiacenti in un singola direzione. Questa operazione richiede" +" un tempo di stampa leggermente superiore ma rende l'aspetto delle superfici piane più uniforme." #: /fdmprinter.def.json msgctxt "ironing_line_spacing label" msgid "Ironing Line Spacing" -msgstr "Interligne de l'étirage" +msgstr "Spaziatura delle linee di stiratura" #: /fdmprinter.def.json msgctxt "ironing_line_spacing description" msgid "The distance between the lines of ironing." -msgstr "La distance entre les lignes d'étirage." +msgstr "Distanza tra le linee di stiratura." #: /fdmprinter.def.json msgctxt "ironing_flow label" msgid "Ironing Flow" -msgstr "Flux d'étirage" +msgstr "Flusso di stiratura" #: /fdmprinter.def.json msgctxt "ironing_flow description" @@ -1941,56 +1943,57 @@ msgid "" "ironing. Keeping the nozzle filled helps filling some of the crevices of the " "top surface, but too much results in overextrusion and blips on the side of " "the surface." -msgstr "La quantité de matériau, relative à une ligne de couche extérieure normale, à extruder pendant l'étirage. Le fait de garder la buse pleine aide à remplir" -" certaines des crevasses de la surface supérieure ; mais si la quantité est trop importante, cela entraînera une surextrusion et l'apparition de coupures" -" sur le côté de la surface." +msgstr "Quantità di materiale, relativo ad una normale linea del rivestimento, da estrudere durante la stiratura. Mantenere l'ugello pieno aiuta a riempire alcune" +" delle fessure presenti sulla superficie superiore, ma una quantità eccessiva comporta un'estrusione eccessiva con conseguente puntinatura sui lati della" +" superficie." #: /fdmprinter.def.json msgctxt "ironing_inset label" msgid "Ironing Inset" -msgstr "Insert d'étirage" +msgstr "Inserto di stiratura" #: /fdmprinter.def.json msgctxt "ironing_inset description" msgid "" "A distance to keep from the edges of the model. Ironing all the way to the " "edge of the mesh may result in a jagged edge on your print." -msgstr "Distance à garder à partir des bords du modèle. Étirer jusqu'au bord de la maille peut entraîner l'apparition d'un bord denté sur votre impression." +msgstr "Distanza da mantenere dai bordi del modello. La stiratura fino in fondo sino al bordo del reticolo può causare la formazione di un bordo frastagliato nella" +" stampa." #: /fdmprinter.def.json msgctxt "speed_ironing label" msgid "Ironing Speed" -msgstr "Vitesse d'étirage" +msgstr "Velocità di stiratura" #: /fdmprinter.def.json msgctxt "speed_ironing description" msgid "The speed at which to pass over the top surface." -msgstr "La vitesse à laquelle passer sur la surface supérieure." +msgstr "Velocità alla quale passare sopra la superficie superiore." #: /fdmprinter.def.json msgctxt "acceleration_ironing label" msgid "Ironing Acceleration" -msgstr "Accélération d'étirage" +msgstr "Accelerazione di stiratura" #: /fdmprinter.def.json msgctxt "acceleration_ironing description" msgid "The acceleration with which ironing is performed." -msgstr "L'accélération selon laquelle l'étirage est effectué." +msgstr "L’accelerazione con cui viene effettuata la stiratura." #: /fdmprinter.def.json msgctxt "jerk_ironing label" msgid "Ironing Jerk" -msgstr "Saccade d'étirage" +msgstr "Jerk stiratura" #: /fdmprinter.def.json msgctxt "jerk_ironing description" msgid "The maximum instantaneous velocity change while performing ironing." -msgstr "Le changement instantané maximal de vitesse lors de l'étirage." +msgstr "Indica la variazione della velocità istantanea massima durante la stiratura." #: /fdmprinter.def.json msgctxt "skin_overlap label" msgid "Skin Overlap Percentage" -msgstr "Pourcentage de chevauchement de la couche extérieure" +msgstr "Percentuale di sovrapposizione del rivestimento esterno" #: /fdmprinter.def.json msgctxt "skin_overlap description" @@ -2002,15 +2005,16 @@ msgid "" "over 50% may already cause any skin to go past the wall, because at that " "point the position of the nozzle of the skin-extruder may already reach past " "the middle of the wall." -msgstr "Ajuster le degré de chevauchement entre les parois et les (extrémités des) lignes centrales de la couche extérieure, en pourcentage de la largeur des lignes" -" de la couche extérieure et de la paroi intérieure. Un chevauchement léger permet de relier fermement les parois à la couche extérieure. Notez que, si" -" la largeur de la couche extérieure est égale à celle de la ligne de la paroi, un pourcentage supérieur à 50 % peut déjà faire dépasser la couche extérieure" -" de la paroi, car dans ce cas la position de la buse de l'extrudeuse peut déjà atteindre le milieu de la paroi." +msgstr "Regolare l’entità della sovrapposizione tra le pareti e (i punti finali delle) linee centrali del rivestimento esterno espressa in percentuale delle larghezze" +" delle linee del rivestimento esterno. Una leggera sovrapposizione consente alle pareti di essere saldamente collegate al rivestimento. Si noti che, data" +" una larghezza uguale del rivestimento esterno e della linea perimetrale, qualsiasi percentuale superiore al 50% può già causare il superamento della parete" +" da parte del rivestimento esterno in quanto, in quel punto, la posizione dell’ugello dell’estrusore del rivestimento esterno può già avere superato la" +" parte centrale della parete." #: /fdmprinter.def.json msgctxt "skin_overlap_mm label" msgid "Skin Overlap" -msgstr "Chevauchement de la couche extérieure" +msgstr "Sovrapposizione del rivestimento esterno" #: /fdmprinter.def.json msgctxt "skin_overlap_mm description" @@ -2021,15 +2025,15 @@ msgid "" "half the width of the wall may already cause any skin to go past the wall, " "because at that point the position of the nozzle of the skin-extruder may " "already reach past the middle of the wall." -msgstr "Ajuster le degré de chevauchement entre les parois et les (extrémités des) lignes centrales de la couche extérieure. Un chevauchement léger permet de relier" -" fermement les parois à la couche extérieure. Notez que, si la largeur de la couche extérieure est égale à celle de la ligne de la paroi, une valeur supérieure" -" à la moitié de la largeur de la paroi peut déjà faire dépasser la couche extérieure de la paroi, car dans ce cas la position de la buse de l'extrudeuse" -" peut déjà atteindre le milieu de la paroi." +msgstr "Regolare l’entità della sovrapposizione tra le pareti e (i punti finali delle) linee centrali del rivestimento esterno. Una leggera sovrapposizione consente" +" alle pareti di essere saldamente collegate al rivestimento. Si noti che, data una larghezza uguale del rivestimento esterno e della linea perimetrale," +" qualsiasi percentuale superiore alla metà della parete può già causare il superamento della parete da parte del rivestimento esterno in quanto, in quel" +" punto, la posizione dell’ugello dell’estrusore del rivestimento esterno può già aver superato la parte centrale della parete." #: /fdmprinter.def.json msgctxt "skin_preshrink label" msgid "Skin Removal Width" -msgstr "Largeur de retrait de la couche extérieure" +msgstr "Larghezza rimozione rivestimento" #: /fdmprinter.def.json msgctxt "skin_preshrink description" @@ -2038,14 +2042,13 @@ msgid "" "smaller than this value will disappear. This can help in limiting the amount " "of time and material spent on printing top/bottom skin at slanted surfaces " "in the model." -msgstr "La plus grande largeur des zones de la couche extérieure à faire disparaître. Toute zone de la couche extérieure plus étroite que cette valeur disparaîtra." -" Ceci peut aider à limiter le temps et la quantité de matière utilisés pour imprimer la couche extérieure supérieure/inférieure sur les surfaces obliques" -" du modèle." +msgstr "Larghezza massima delle aree di rivestimento che è possibile rimuovere. Ogni area di rivestimento più piccola di questo valore verrà eliminata. Questo" +" può aiutare a limitare il tempo e il materiale necessari per la stampa del rivestimento superiore/inferiore sulle superfici inclinate del modello." #: /fdmprinter.def.json msgctxt "top_skin_preshrink label" msgid "Top Skin Removal Width" -msgstr "Largeur de retrait de la couche extérieure supérieure" +msgstr "Larghezza rimozione rivestimento superiore" #: /fdmprinter.def.json msgctxt "top_skin_preshrink description" @@ -2054,14 +2057,13 @@ msgid "" "smaller than this value will disappear. This can help in limiting the amount " "of time and material spent on printing top skin at slanted surfaces in the " "model." -msgstr "La plus grande largeur des zones de la couche extérieure supérieure à faire disparaître. Toute zone de la couche extérieure plus étroite que cette valeur" -" disparaîtra. Ceci peut aider à limiter le temps et la quantité de matière utilisés pour imprimer la couche extérieure supérieure sur les surfaces obliques" -" du modèle." +msgstr "Larghezza massima delle aree di rivestimento superiore che è possibile rimuovere. Ogni area di rivestimento più piccola di questo valore verrà eliminata." +" Questo può aiutare a limitare il tempo e il materiale necessari per la stampa del rivestimento superiore sulle superfici inclinate del modello." #: /fdmprinter.def.json msgctxt "bottom_skin_preshrink label" msgid "Bottom Skin Removal Width" -msgstr "Largeur de retrait de la couche extérieure inférieure" +msgstr "Larghezza rimozione rivestimento inferiore" #: /fdmprinter.def.json msgctxt "bottom_skin_preshrink description" @@ -2070,14 +2072,13 @@ msgid "" "area smaller than this value will disappear. This can help in limiting the " "amount of time and material spent on printing bottom skin at slanted " "surfaces in the model." -msgstr "La plus grande largeur des zones de la couche extérieure inférieure à faire disparaître. Toute zone de la couche extérieure plus étroite que cette valeur" -" disparaîtra. Ceci peut aider à limiter le temps et la quantité de matière utilisés pour imprimer la couche extérieure inférieure sur les surfaces obliques" -" du modèle." +msgstr "Larghezza massima delle aree di rivestimento inferiore che è possibile rimuovere. Ogni area di rivestimento più piccola di questo valore verrà eliminata." +" Questo può aiutare a limitare il tempo e il materiale necessari per la stampa del rivestimento inferiore sulle superfici inclinate del modello." #: /fdmprinter.def.json msgctxt "expand_skins_expand_distance label" msgid "Skin Expand Distance" -msgstr "Distance d'expansion de la couche extérieure" +msgstr "Distanza prolunga rivestimento esterno" #: /fdmprinter.def.json msgctxt "expand_skins_expand_distance description" @@ -2085,13 +2086,13 @@ msgid "" "The distance the skins are expanded into the infill. Higher values makes the " "skin attach better to the infill pattern and makes the walls on neighboring " "layers adhere better to the skin. Lower values save amount of material used." -msgstr "La distance à laquelle les couches extérieures s'étendent à l'intérieur du remplissage. Des valeurs élevées lient mieux la couche extérieure au motif de" -" remplissage et font mieux adhérer à cette couche les parois des couches voisines. Des valeurs faibles économisent la quantité de matériau utilisé." +msgstr "Distanza per cui i rivestimenti si estendono nel riempimento. Valori maggiori migliorano l'aderenza del rivestimento al riempimento e consentono una migliore" +" aderenza al rivestimento delle pareti degli strati adiacenti. Valori minori consentono di risparmiare sul materiale utilizzato." #: /fdmprinter.def.json msgctxt "top_skin_expand_distance label" msgid "Top Skin Expand Distance" -msgstr "Distance d'expansion de la couche extérieure supérieure" +msgstr "Distanza prolunga rivestimento superiore" #: /fdmprinter.def.json msgctxt "top_skin_expand_distance description" @@ -2100,14 +2101,13 @@ msgid "" "the skin attach better to the infill pattern and makes the walls on the " "layer above adhere better to the skin. Lower values save amount of material " "used." -msgstr "La distance à laquelle les couches extérieures supérieures s'étendent à l'intérieur du remplissage. Des valeurs élevées lient mieux la couche extérieure" -" au motif de remplissage et font mieux adhérer à cette couche les parois de la couche supérieure. Des valeurs faibles économisent la quantité de matériau" -" utilisé." +msgstr "Distanza per cui i rivestimenti superiori si estendono nel riempimento. Valori maggiori migliorano l'aderenza del rivestimento al riempimento e consentono" +" una migliore aderenza al rivestimento delle pareti dello strato superiore. Valori minori consentono di risparmiare sul materiale utilizzato." #: /fdmprinter.def.json msgctxt "bottom_skin_expand_distance label" msgid "Bottom Skin Expand Distance" -msgstr "Distance d'expansion de la couche extérieure inférieure" +msgstr "Distanza prolunga rivestimento inferiore" #: /fdmprinter.def.json msgctxt "bottom_skin_expand_distance description" @@ -2116,14 +2116,13 @@ msgid "" "makes the skin attach better to the infill pattern and makes the skin adhere " "better to the walls on the layer below. Lower values save amount of material " "used." -msgstr "La distance à laquelle les couches extérieures inférieures s'étendent à l'intérieur du remplissage. Des valeurs élevées lient mieux la couche extérieure" -" au motif de remplissage et font mieux adhérer à cette couche les parois de la couche inférieure. Des valeurs faibles économisent la quantité de matériau" -" utilisé." +msgstr "Distanza per cui i rivestimenti inferiori si estendono nel riempimento. Valori maggiori migliorano l'aderenza del rivestimento al riempimento e consentono" +" una migliore aderenza al rivestimento delle pareti dello strato inferiore. Valori minori consentono di risparmiare sul materiale utilizzato." #: /fdmprinter.def.json msgctxt "max_skin_angle_for_expansion label" msgid "Maximum Skin Angle for Expansion" -msgstr "Angle maximum de la couche extérieure pour l'expansion" +msgstr "Angolo massimo rivestimento esterno per prolunga" #: /fdmprinter.def.json msgctxt "max_skin_angle_for_expansion description" @@ -2134,15 +2133,15 @@ msgid "" "vertical slope. An angle of 0° is horizontal and will cause no skin to be " "expanded, while an angle of 90° is vertical and will cause all skin to be " "expanded." -msgstr "Les couches extérieures supérieures / inférieures des surfaces supérieures et / ou inférieures de votre objet possédant un angle supérieur à ce paramètre" -" ne seront pas étendues. Cela permet d'éviter d'étendre les zones de couche extérieure étroites qui sont créées lorsque la surface du modèle possède une" -" pente proche de la verticale. Un angle de 0° est horizontal et évitera l'extension des couches ; un angle de 90° est vertical et entraînera l'extension" -" de toutes les couches." +msgstr "Nelle superfici superiore e/o inferiore dell'oggetto con un angolo più grande di questa impostazione, il rivestimento esterno non sarà prolungato. Questo" +" evita il prolungamento delle aree del rivestimento esterno strette che vengono create quando la pendenza della superficie del modello è quasi verticale." +" Un angolo di 0° è orizzontale e non causa il prolungamento di alcun rivestimento esterno, mentre un angolo di 90° è verticale e causa il prolungamento" +" di tutto il rivestimento esterno." #: /fdmprinter.def.json msgctxt "min_skin_width_for_expansion label" msgid "Minimum Skin Width for Expansion" -msgstr "Largeur minimum de la couche extérieure pour l'expansion" +msgstr "Larghezza minima rivestimento esterno per prolunga" #: /fdmprinter.def.json msgctxt "min_skin_width_for_expansion description" @@ -2150,56 +2149,57 @@ msgid "" "Skin areas narrower than this are not expanded. This avoids expanding the " "narrow skin areas that are created when the model surface has a slope close " "to the vertical." -msgstr "Les zones de couche extérieure plus étroites que cette valeur ne seront pas étendues. Cela permet d'éviter d'étendre les zones de couche extérieure étroites" -" qui sont créées lorsque la surface du modèle possède une pente proche de la verticale." +msgstr "Le aree del rivestimento esterno inferiori a questa non vengono prolungate. In tal modo si evita di prolungare le aree del rivestimento esterno strette" +" che vengono create quando la superficie del modello presenta un’inclinazione quasi verticale." #: /fdmprinter.def.json msgctxt "infill label" msgid "Infill" -msgstr "Remplissage" +msgstr "Riempimento" #: /fdmprinter.def.json msgctxt "infill description" msgid "Infill" -msgstr "Remplissage" +msgstr "Riempimento" #: /fdmprinter.def.json msgctxt "infill_extruder_nr label" msgid "Infill Extruder" -msgstr "Extrudeuse de remplissage" +msgstr "Estrusore riempimento" #: /fdmprinter.def.json msgctxt "infill_extruder_nr description" msgid "" "The extruder train used for printing infill. This is used in multi-extrusion." -msgstr "Le train d'extrudeuse utilisé pour l'impression du remplissage. Cela est utilisé en multi-extrusion." +msgstr "Treno estrusore utilizzato per stampare il riempimento. Si utilizza nell'estrusione multipla." #: /fdmprinter.def.json msgctxt "infill_sparse_density label" msgid "Infill Density" -msgstr "Densité du remplissage" +msgstr "Densità del riempimento" #: /fdmprinter.def.json msgctxt "infill_sparse_density description" msgid "Adjusts the density of infill of the print." -msgstr "Adapte la densité de remplissage de l'impression." +msgstr "Regola la densità del riempimento della stampa." #: /fdmprinter.def.json msgctxt "infill_line_distance label" msgid "Infill Line Distance" -msgstr "Distance d'écartement de ligne de remplissage" +msgstr "Distanza tra le linee di riempimento" #: /fdmprinter.def.json msgctxt "infill_line_distance description" msgid "" "Distance between the printed infill lines. This setting is calculated by the " "infill density and the infill line width." -msgstr "Distance entre les lignes de remplissage imprimées. Ce paramètre est calculé par la densité du remplissage et la largeur de ligne de remplissage." +msgstr "Indica la distanza tra le linee di riempimento stampate. Questa impostazione viene calcolata mediante la densità del riempimento e la larghezza della linea" +" di riempimento." #: /fdmprinter.def.json msgctxt "infill_pattern label" msgid "Infill Pattern" -msgstr "Motif de remplissage" +msgstr "Configurazione di riempimento" #: /fdmprinter.def.json msgctxt "infill_pattern description" @@ -2211,55 +2211,55 @@ msgid "" "octet infill change with every layer to provide a more equal distribution of " "strength over each direction. Lightning infill tries to minimize the infill, " "by only supporting the ceiling of the object." -msgstr "Le motif du matériau de remplissage de l'impression. La ligne et le remplissage en zigzag changent de sens à chaque alternance de couche, réduisant ainsi" -" les coûts matériels. Les motifs en grille, en triangle, tri-hexagonaux, cubiques, octaédriques, quart cubiques, entrecroisés et concentriques sont entièrement" -" imprimés sur chaque couche. Les remplissages gyroïdes, cubiques, quart cubiques et octaédriques changent à chaque couche afin d'offrir une répartition" -" plus égale de la solidité dans chaque direction. Le remplissage éclair tente de minimiser le remplissage, en ne supportant que le plafond de l'objet." +msgstr "Configurazione del materiale di riempimento della stampa. Il riempimento a linea e a zig zag cambia direzione su strati alternati, riducendo il costo del" +" materiale. Le configurazioni a griglia, a triangolo, tri-esagonali, cubiche, ottagonali, a quarto di cubo, incrociate e concentriche sono stampate completamente" +" su ogni strato. Le configurazioni gyroid, cubiche, a quarto di cubo e ottagonali variano per ciascuno strato per garantire una più uniforme distribuzione" +" della forza in ogni direzione. Il riempimento fulmine cerca di minimizzare il riempimento, supportando solo la parte superiore dell'oggetto." #: /fdmprinter.def.json msgctxt "infill_pattern option grid" msgid "Grid" -msgstr "Grille" +msgstr "Griglia" #: /fdmprinter.def.json msgctxt "infill_pattern option lines" msgid "Lines" -msgstr "Lignes" +msgstr "Linee" #: /fdmprinter.def.json msgctxt "infill_pattern option triangles" msgid "Triangles" -msgstr "Triangles" +msgstr "Triangoli" #: /fdmprinter.def.json msgctxt "infill_pattern option trihexagon" msgid "Tri-Hexagon" -msgstr "Trihexagonal" +msgstr "Tri-esagonale" #: /fdmprinter.def.json msgctxt "infill_pattern option cubic" msgid "Cubic" -msgstr "Cubique" +msgstr "Cubo" #: /fdmprinter.def.json msgctxt "infill_pattern option cubicsubdiv" msgid "Cubic Subdivision" -msgstr "Subdivision cubique" +msgstr "Suddivisione in cubi" #: /fdmprinter.def.json msgctxt "infill_pattern option tetrahedral" msgid "Octet" -msgstr "Octaédrique" +msgstr "Ottagonale" #: /fdmprinter.def.json msgctxt "infill_pattern option quarter_cubic" msgid "Quarter Cubic" -msgstr "Quart cubique" +msgstr "Quarto di cubo" #: /fdmprinter.def.json msgctxt "infill_pattern option concentric" msgid "Concentric" -msgstr "Concentrique" +msgstr "Concentriche" #: /fdmprinter.def.json msgctxt "infill_pattern option zigzag" @@ -2269,27 +2269,27 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "infill_pattern option cross" msgid "Cross" -msgstr "Entrecroisé" +msgstr "Incrociata" #: /fdmprinter.def.json msgctxt "infill_pattern option cross_3d" msgid "Cross 3D" -msgstr "Entrecroisé 3D" +msgstr "Incrociata 3D" #: /fdmprinter.def.json msgctxt "infill_pattern option gyroid" msgid "Gyroid" -msgstr "Gyroïde" +msgstr "Gyroid" #: /fdmprinter.def.json msgctxt "infill_pattern option lightning" msgid "Lightning" -msgstr "Éclair" +msgstr "Fulmine" #: /fdmprinter.def.json msgctxt "zig_zaggify_infill label" msgid "Connect Infill Lines" -msgstr "Relier les lignes de remplissage" +msgstr "Collegamento delle linee di riempimento" #: /fdmprinter.def.json msgctxt "zig_zaggify_infill description" @@ -2299,14 +2299,14 @@ msgid "" "the infill adhere to the walls better and reduce the effects of infill on " "the quality of vertical surfaces. Disabling this setting reduces the amount " "of material used." -msgstr "Relie les extrémités où le motif de remplissage touche la paroi interne, à l'aide d'une ligne épousant la forme de la paroi interne. Activer ce paramètre" -" peut faire mieux coller le remplissage aux parois, et réduit les effets du remplissage sur la qualité des surfaces verticales. Désactiver ce paramètre" -" diminue la quantité de matière utilisée." +msgstr "Collegare le estremità nel punto in cui il riempimento incontra la parete interna utilizzando una linea che segue la forma della parete interna. L'abilitazione" +" di questa impostazione può far meglio aderire il riempimento alle pareti riducendo nel contempo gli effetti del riempimento sulla qualità delle superfici" +" verticali. La disabilitazione di questa impostazione consente di ridurre la quantità di materiale utilizzato." #: /fdmprinter.def.json msgctxt "connect_infill_polygons label" msgid "Connect Infill Polygons" -msgstr "Relier les polygones de remplissage" +msgstr "Collega poligoni di riempimento" #: /fdmprinter.def.json msgctxt "connect_infill_polygons description" @@ -2314,13 +2314,13 @@ msgid "" "Connect infill paths where they run next to each other. For infill patterns " "which consist of several closed polygons, enabling this setting greatly " "reduces the travel time." -msgstr "Relier les voies de remplissage lorsqu'elles sont côte à côte. Pour les motifs de remplissage composés de plusieurs polygones fermés, ce paramètre permet" -" de réduire considérablement le temps de parcours." +msgstr "Collega i percorsi di riempimento quando corrono uno accanto all’altro. Per le configurazioni di riempimento composte da più poligoni chiusi, l’abilitazione" +" di questa impostazione riduce notevolmente il tempo di spostamento." #: /fdmprinter.def.json msgctxt "infill_angles label" msgid "Infill Line Directions" -msgstr "Sens de ligne de remplissage" +msgstr "Direzioni delle linee di riempimento" #: /fdmprinter.def.json msgctxt "infill_angles description" @@ -2331,35 +2331,35 @@ msgid "" "the whole list is contained in square brackets. Default is an empty list " "which means use the traditional default angles (45 and 135 degrees for the " "lines and zig zag patterns and 45 degrees for all other patterns)." -msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser. Les éléments de la liste sont utilisés de manière séquentielle à mesure de l'avancement" -" des couches. La liste reprend depuis le début lorsque la fin est atteinte. Les éléments de la liste sont séparés par des virgules et la liste entière" -" est encadrée entre crochets. La valeur par défaut est une liste vide, ce qui signifie que les angles traditionnels par défaut seront utilisés (45 et 135" -" degrés pour les motifs en lignes et en zig zag et 45 degrés pour tout autre motif)." +msgstr "Un elenco di direzioni linee intere. Gli elementi dall’elenco sono utilizzati in sequenza con il progredire degli strati e, al raggiungimento della fine" +" dell’elenco, la sequenza ricomincia dall’inizio. Le voci elencate sono separate da virgole e l’intero elenco è racchiuso tra parentesi quadre. L’elenco" +" predefinito è vuoto, vale a dire che utilizza i valori angolari predefiniti (45 e 135 gradi per le linee e la configurazione zig zag e 45 gradi per tutte" +" le altre configurazioni)." #: /fdmprinter.def.json msgctxt "infill_offset_x label" msgid "Infill X Offset" -msgstr "Remplissage Décalage X" +msgstr "Offset X riempimento" #: /fdmprinter.def.json msgctxt "infill_offset_x description" msgid "The infill pattern is moved this distance along the X axis." -msgstr "Le motif de remplissage est décalé de cette distance sur l'axe X." +msgstr "Il riempimento si sposta di questa distanza lungo l'asse X." #: /fdmprinter.def.json msgctxt "infill_offset_y label" msgid "Infill Y Offset" -msgstr "Remplissage Décalage Y" +msgstr "Offset Y riempimento" #: /fdmprinter.def.json msgctxt "infill_offset_y description" msgid "The infill pattern is moved this distance along the Y axis." -msgstr "Le motif de remplissage est décalé de cette distance sur l'axe Y." +msgstr "Il riempimento si sposta di questa distanza lungo l'asse Y." #: /fdmprinter.def.json msgctxt "infill_randomize_start_location label" msgid "Randomize Infill Start" -msgstr "Randomiser le démarrage du remplissage" +msgstr "Avvio con riempimento casuale" #: /fdmprinter.def.json msgctxt "infill_randomize_start_location description" @@ -2367,13 +2367,13 @@ msgid "" "Randomize which infill line is printed first. This prevents one segment " "becoming the strongest, but it does so at the cost of an additional travel " "move." -msgstr "Randomisez la ligne de remplissage qui est imprimée en premier. Cela empêche un segment de devenir plus fort, mais cela se fait au prix d'un déplacement" -" supplémentaire." +msgstr "Decidere in modo casuale quale sarà la linea di riempimento ad essere stampata per prima. In tal modo si evita che un segmento diventi il più resistente" +" sebbene si esegua uno spostamento aggiuntivo." #: /fdmprinter.def.json msgctxt "infill_multiplier label" msgid "Infill Line Multiplier" -msgstr "Multiplicateur de ligne de remplissage" +msgstr "Moltiplicatore delle linee di riempimento" #: /fdmprinter.def.json msgctxt "infill_multiplier description" @@ -2381,13 +2381,13 @@ msgid "" "Convert each infill line to this many lines. The extra lines do not cross " "over each other, but avoid each other. This makes the infill stiffer, but " "increases print time and material usage." -msgstr "Convertir chaque ligne de remplissage en ce nombre de lignes. Les lignes supplémentaires ne se croisent pas entre elles, mais s'évitent mutuellement. Cela" -" rend le remplissage plus rigide, mais augmente le temps d'impression et la quantité de matériau utilisé." +msgstr "Converte ogni linea di riempimento in questo numero di linee. Le linee supplementari non si incrociano tra loro, ma si evitano. In tal modo il riempimento" +" risulta più rigido, ma il tempo di stampa e la quantità di materiale aumentano." #: /fdmprinter.def.json msgctxt "infill_wall_line_count label" msgid "Extra Infill Wall Count" -msgstr "Nombre de parois de remplissage supplémentaire" +msgstr "Conteggio pareti di riempimento supplementari" #: /fdmprinter.def.json msgctxt "infill_wall_line_count description" @@ -2398,15 +2398,15 @@ msgid "" "This feature can combine with the Connect Infill Polygons to connect all the " "infill into a single extrusion path without the need for travels or " "retractions if configured right." -msgstr "Ajoutez des parois supplémentaires autour de la zone de remplissage. De telles parois peuvent réduire l'affaissement des lignes de couche extérieure supérieure / inférieure," -" réduisant le nombre de couches extérieures supérieures / inférieures nécessaires pour obtenir la même qualité, au prix d'un peu de matériau supplémentaire.\nConfigurée" -" correctement, cette fonctionnalité peut être combinée avec « Relier les polygones de remplissage » pour relier tous les remplissages en un seul mouvement" -" d'extrusion sans avoir besoin de déplacements ou de rétractions." +msgstr "Aggiunge pareti supplementari intorno alla zona di riempimento. Queste pareti possono ridurre l’abbassamento delle linee del rivestimento esterno superiore/inferiore," +" pertanto saranno necessari meno strati di rivestimento esterno superiore/inferiore per ottenere la stessa qualità al costo del materiale supplementare.\nQuesta" +" funzione può essere abbinata a Collega poligoni riempimento per collegare tutto il riempimento in un unico percorso di estrusione senza necessità di avanzamenti" +" o arretramenti, se configurata correttamente." #: /fdmprinter.def.json msgctxt "sub_div_rad_add label" msgid "Cubic Subdivision Shell" -msgstr "Coque de la subdivision cubique" +msgstr "Guscio suddivisione in cubi" #: /fdmprinter.def.json msgctxt "sub_div_rad_add description" @@ -2415,13 +2415,13 @@ msgid "" "boundary of the model, as to decide whether this cube should be subdivided. " "Larger values lead to a thicker shell of small cubes near the boundary of " "the model." -msgstr "Une addition au rayon à partir du centre de chaque cube pour vérifier la bordure du modèle, afin de décider si ce cube doit être subdivisé. Des valeurs" -" plus importantes entraînent une coque plus épaisse de petits cubes à proximité de la bordure du modèle." +msgstr "Un aggiunta al raggio dal centro di ciascun cubo per controllare il contorno del modello, per decidere se questo cubo deve essere suddiviso. Valori maggiori" +" comportano un guscio più spesso di cubi piccoli vicino al contorno del modello." #: /fdmprinter.def.json msgctxt "infill_overlap label" msgid "Infill Overlap Percentage" -msgstr "Pourcentage de chevauchement du remplissage" +msgstr "Percentuale di sovrapposizione del riempimento" #: /fdmprinter.def.json msgctxt "infill_overlap description" @@ -2429,25 +2429,25 @@ msgid "" "The amount of overlap between the infill and the walls as a percentage of " "the infill line width. A slight overlap allows the walls to connect firmly " "to the infill." -msgstr "Le degré de chevauchement entre le remplissage et les parois exprimé en pourcentage de la largeur de ligne de remplissage. Un chevauchement faible permet" -" aux parois de se connecter fermement au remplissage." +msgstr "Indica la quantità di sovrapposizione tra il riempimento e le pareti come percentuale della larghezza della linea di riempimento. Una leggera sovrapposizione" +" consente il saldo collegamento delle pareti al riempimento." #: /fdmprinter.def.json msgctxt "infill_overlap_mm label" msgid "Infill Overlap" -msgstr "Chevauchement du remplissage" +msgstr "Sovrapposizione del riempimento" #: /fdmprinter.def.json msgctxt "infill_overlap_mm description" msgid "" "The amount of overlap between the infill and the walls. A slight overlap " "allows the walls to connect firmly to the infill." -msgstr "Le degré de chevauchement entre le remplissage et les parois. Un léger chevauchement permet de lier fermement les parois au remplissage." +msgstr "Indica la quantità di sovrapposizione tra il riempimento e le pareti. Una leggera sovrapposizione consente il saldo collegamento delle pareti al riempimento." #: /fdmprinter.def.json msgctxt "infill_wipe_dist label" msgid "Infill Wipe Distance" -msgstr "Distance de remplissage" +msgstr "Distanza del riempimento" #: /fdmprinter.def.json msgctxt "infill_wipe_dist description" @@ -2455,25 +2455,26 @@ msgid "" "Distance of a travel move inserted after every infill line, to make the " "infill stick to the walls better. This option is similar to infill overlap, " "but without extrusion and only on one end of the infill line." -msgstr "Distance de déplacement à insérer après chaque ligne de remplissage, pour s'assurer que le remplissage collera mieux aux parois externes. Cette option" -" est similaire au chevauchement du remplissage, mais sans extrusion et seulement à l'une des deux extrémités de la ligne de remplissage." +msgstr "Indica la distanza di uno spostamento inserito dopo ogni linea di riempimento, per determinare una migliore adesione del riempimento alle pareti. Questa" +" opzione è simile alla sovrapposizione del riempimento, ma senza estrusione e solo su una estremità della linea di riempimento." #: /fdmprinter.def.json msgctxt "infill_sparse_thickness label" msgid "Infill Layer Thickness" -msgstr "Épaisseur de la couche de remplissage" +msgstr "Spessore dello strato di riempimento" #: /fdmprinter.def.json msgctxt "infill_sparse_thickness description" msgid "" "The thickness per layer of infill material. This value should always be a " "multiple of the layer height and is otherwise rounded." -msgstr "L'épaisseur par couche de matériau de remplissage. Cette valeur doit toujours être un multiple de la hauteur de la couche et arrondie." +msgstr "Indica lo spessore per strato di materiale di riempimento. Questo valore deve sempre essere un multiplo dell’altezza dello strato e in caso contrario viene" +" arrotondato." #: /fdmprinter.def.json msgctxt "gradual_infill_steps label" msgid "Gradual Infill Steps" -msgstr "Étapes de remplissage progressif" +msgstr "Fasi di riempimento graduale" #: /fdmprinter.def.json msgctxt "gradual_infill_steps description" @@ -2481,24 +2482,24 @@ msgid "" "Number of times to reduce the infill density by half when getting further " "below top surfaces. Areas which are closer to top surfaces get a higher " "density, up to the Infill Density." -msgstr "Nombre de fois pour réduire la densité de remplissage de moitié en poursuivant sous les surfaces du dessus. Les zones qui sont plus proches des surfaces" -" du dessus possèdent une densité plus élevée, jusqu'à la Densité du remplissage." +msgstr "Indica il numero di volte per dimezzare la densità del riempimento quando si va al di sotto degli strati superiori. Le aree più vicine agli strati superiori" +" avranno una densità maggiore, fino alla densità del riempimento." #: /fdmprinter.def.json msgctxt "gradual_infill_step_height label" msgid "Gradual Infill Step Height" -msgstr "Hauteur de l'étape de remplissage progressif" +msgstr "Altezza fasi di riempimento graduale" #: /fdmprinter.def.json msgctxt "gradual_infill_step_height description" msgid "" "The height of infill of a given density before switching to half the density." -msgstr "La hauteur de remplissage d'une densité donnée avant de passer à la moitié de la densité." +msgstr "Indica l’altezza di riempimento di una data densità prima di passare a metà densità." #: /fdmprinter.def.json msgctxt "infill_before_walls label" msgid "Infill Before Walls" -msgstr "Imprimer le remplissage avant les parois" +msgstr "Riempimento prima delle pareti" #: /fdmprinter.def.json msgctxt "infill_before_walls description" @@ -2507,23 +2508,24 @@ msgid "" "lead to more accurate walls, but overhangs print worse. Printing the infill " "first leads to sturdier walls, but the infill pattern might sometimes show " "through the surface." -msgstr "Imprime le remplissage avant d'imprimer les parois. Imprimer les parois d'abord permet d'obtenir des parois plus précises, mais les porte-à-faux s'impriment" -" plus mal. Imprimer le remplissage d'abord entraîne des parois plus résistantes, mais le motif de remplissage se verra parfois à travers la surface." +msgstr "Stampa il riempimento prima delle pareti. La stampa preliminare delle pareti può avere come risultato pareti più precise, ma sbalzi di stampa peggiori." +" La stampa preliminare del riempimento produce pareti più robuste, anche se a volte la configurazione (o pattern) di riempimento potrebbe risultare visibile" +" attraverso la superficie." #: /fdmprinter.def.json msgctxt "min_infill_area label" msgid "Minimum Infill Area" -msgstr "Zone de remplissage minimum" +msgstr "Area minima riempimento" #: /fdmprinter.def.json msgctxt "min_infill_area description" msgid "Don't generate areas of infill smaller than this (use skin instead)." -msgstr "Ne pas générer de zones de remplissage plus petites que cela (utiliser plutôt une couche extérieure)" +msgstr "Non generare aree di riempimento inferiori a questa (piuttosto usare il rivestimento esterno)." #: /fdmprinter.def.json msgctxt "infill_support_enabled label" msgid "Infill Support" -msgstr "Support de remplissage" +msgstr "Supporto riempimento" #: /fdmprinter.def.json msgctxt "infill_support_enabled description" @@ -2531,13 +2533,13 @@ msgid "" "Print infill structures only where tops of the model should be supported. " "Enabling this reduces print time and material usage, but leads to ununiform " "object strength." -msgstr "Imprimer les structures de remplissage uniquement là où le haut du modèle doit être supporté, ce qui permet de réduire le temps d'impression et l'utilisation" -" de matériau, mais conduit à une résistance uniforme de l'objet." +msgstr "Stampare le strutture di riempimento solo laddove è necessario supportare le sommità del modello. L'abilitazione di questa funzione riduce il tempo di" +" stampa e l'utilizzo del materiale, ma comporta una disuniforme resistenza dell'oggetto." #: /fdmprinter.def.json msgctxt "infill_support_angle label" msgid "Infill Overhang Angle" -msgstr "Angle de porte-à-faux de remplissage" +msgstr "Angolo di sbalzo del riempimento" #: /fdmprinter.def.json msgctxt "infill_support_angle description" @@ -2545,92 +2547,93 @@ msgid "" "The minimum angle of internal overhangs for which infill is added. At a " "value of 0° objects are totally filled with infill, 90° will not provide any " "infill." -msgstr "Angle minimal des porte-à-faux internes pour lesquels le remplissage est ajouté. À une valeur de 0°, les objets sont totalement remplis, 90° ne fournira" -" aucun remplissage." +msgstr "L'angolo minimo degli sbalzi interni per il quale viene aggiunto il riempimento. Per un valore corrispondente a 0°, gli oggetti sono completamente riempiti" +" di materiale, per un valore corrispondente a 90° non è previsto riempimento." #: /fdmprinter.def.json msgctxt "skin_edge_support_thickness label" msgid "Skin Edge Support Thickness" -msgstr "Épaisseur de soutien des bords de la couche" +msgstr "Spessore del supporto del bordo del rivestimento" #: /fdmprinter.def.json msgctxt "skin_edge_support_thickness description" msgid "The thickness of the extra infill that supports skin edges." -msgstr "L'épaisseur du remplissage supplémentaire qui soutient les bords de la couche." +msgstr "Spessore del riempimento supplementare che supporta i bordi del rivestimento." #: /fdmprinter.def.json msgctxt "skin_edge_support_layers label" msgid "Skin Edge Support Layers" -msgstr "Couches de soutien des bords de la couche extérieure" +msgstr "Layer di supporto del bordo del rivestimento" #: /fdmprinter.def.json msgctxt "skin_edge_support_layers description" msgid "The number of infill layers that supports skin edges." -msgstr "Le nombre de couches de remplissage qui soutient les bords de la couche." +msgstr "Numero di layer di riempimento che supportano i bordi del rivestimento." #: /fdmprinter.def.json msgctxt "lightning_infill_support_angle label" msgid "Lightning Infill Support Angle" -msgstr "Angle de support du remplissage éclair" +msgstr "Angolo di supporto riempimento fulmine" #: /fdmprinter.def.json msgctxt "lightning_infill_support_angle description" msgid "" "Determines when a lightning infill layer has to support anything above it. " "Measured in the angle given the thickness of a layer." -msgstr "Détermine quand une couche de remplissage éclair doit soutenir tout ce qui se trouve au-dessus. Mesuré dans l'angle au vu de l'épaisseur d'une couche." +msgstr "Determina quando uno strato di riempimento fulmine deve supportare il materiale sopra di esso. Misurato nell'angolo dato lo stesso di uno strato." #: /fdmprinter.def.json msgctxt "lightning_infill_overhang_angle label" msgid "Lightning Infill Overhang Angle" -msgstr "Angle de saillie du remplissage éclair" +msgstr "Angolo di sbalzo riempimento fulmine" #: /fdmprinter.def.json msgctxt "lightning_infill_overhang_angle description" msgid "" "Determines when a lightning infill layer has to support the model above it. " "Measured in the angle given the thickness." -msgstr "Détermine quand une couche de remplissage éclair doit soutenir le modèle au-dessus. Mesuré dans l'angle au vu de l'épaisseur." +msgstr "Determina quando uno strato di riempimento fulmine deve supportare il modello sopra di esso. Misurato nell'angolo dato lo spessore." #: /fdmprinter.def.json msgctxt "lightning_infill_prune_angle label" msgid "Lightning Infill Prune Angle" -msgstr "Angle d'élagage du remplissage éclair" +msgstr "Angolo eliminazione riempimento fulmine" #: /fdmprinter.def.json msgctxt "lightning_infill_prune_angle description" msgid "" "The endpoints of infill lines are shortened to save on material. This " "setting is the angle of overhang of the endpoints of these lines." -msgstr "Les extrémités des lignes de remplissage sont raccourcies pour économiser du matériau. Ce paramètre est l'angle de saillie des extrémités de ces lignes." +msgstr "I punti finali delle linee di riempimento vengono accorciati per risparmiare sul materiale. Questa impostazione è l'angolo di sbalzo dei punti finali di" +" queste linee." #: /fdmprinter.def.json msgctxt "lightning_infill_straightening_angle label" msgid "Lightning Infill Straightening Angle" -msgstr "Angle de redressement du remplissage éclair" +msgstr "Angolo di raddrizzatura riempimento fulmine" #: /fdmprinter.def.json msgctxt "lightning_infill_straightening_angle description" msgid "" "The infill lines are straightened out to save on printing time. This is the " "maximum angle of overhang allowed across the length of the infill line." -msgstr "Les lignes de remplissage sont redressées pour gagner du temps d'impression. Il s'agit de l'angle maximal de saillie autorisé sur la longueur de la ligne" -" de remplissage." +msgstr "Le linee di riempimento vengono raddrizzate per risparmiare sul tempo di stampa. Questo è l'angolo di sbalzo massimo consentito sulla lunghezza della linea" +" di riempimento." #: /fdmprinter.def.json msgctxt "material label" msgid "Material" -msgstr "Matériau" +msgstr "Materiale" #: /fdmprinter.def.json msgctxt "material description" msgid "Material" -msgstr "Matériau" +msgstr "Materiale" #: /fdmprinter.def.json msgctxt "default_material_print_temperature label" msgid "Default Printing Temperature" -msgstr "Température d’impression par défaut" +msgstr "Temperatura di stampa preimpostata" #: /fdmprinter.def.json msgctxt "default_material_print_temperature description" @@ -2638,84 +2641,84 @@ msgid "" "The default temperature used for printing. This should be the \"base\" " "temperature of a material. All other print temperatures should use offsets " "based on this value" -msgstr "La température par défaut utilisée pour l'impression. Il doit s'agir de la température de « base » d'un matériau. Toutes les autres températures d'impression" -" doivent utiliser des décalages basés sur cette valeur" +msgstr "La temperatura preimpostata utilizzata per la stampa. Deve essere la temperatura “base” di un materiale. Tutte le altre temperature di stampa devono usare" +" scostamenti basati su questo valore" #: /fdmprinter.def.json msgctxt "build_volume_temperature label" msgid "Build Volume Temperature" -msgstr "Température du volume d'impression" +msgstr "Temperatura volume di stampa" #: /fdmprinter.def.json msgctxt "build_volume_temperature description" msgid "" "The temperature of the environment to print in. If this is 0, the build " "volume temperature will not be adjusted." -msgstr "La température de l'environnement d'impression. Si cette valeur est 0, la température du volume d'impression ne sera pas ajustée." +msgstr "La temperatura dell'ambiente in cui stampare. Se il valore è 0, la temperatura del volume di stampa non verrà regolata." #: /fdmprinter.def.json msgctxt "material_print_temperature label" msgid "Printing Temperature" -msgstr "Température d’impression" +msgstr "Temperatura di stampa" #: /fdmprinter.def.json msgctxt "material_print_temperature description" msgid "The temperature used for printing." -msgstr "Température utilisée pour l'impression." +msgstr "Indica la temperatura usata per la stampa." #: /fdmprinter.def.json msgctxt "material_print_temperature_layer_0 label" msgid "Printing Temperature Initial Layer" -msgstr "Température d’impression couche initiale" +msgstr "Temperatura di stampa Strato iniziale" #: /fdmprinter.def.json msgctxt "material_print_temperature_layer_0 description" msgid "" "The temperature used for printing the first layer. Set at 0 to disable " "special handling of the initial layer." -msgstr "Température utilisée pour l'impression de la première couche. Définissez-la sur 0 pour désactiver le traitement spécial de la couche initiale." +msgstr "Indica la temperatura usata per la stampa del primo strato. Impostare a 0 per disabilitare la manipolazione speciale dello strato iniziale." #: /fdmprinter.def.json msgctxt "material_initial_print_temperature label" msgid "Initial Printing Temperature" -msgstr "Température d’impression initiale" +msgstr "Temperatura di stampa iniziale" #: /fdmprinter.def.json msgctxt "material_initial_print_temperature description" msgid "" "The minimal temperature while heating up to the Printing Temperature at " "which printing can already start." -msgstr "La température minimale pendant le chauffage jusqu'à la température d'impression à laquelle l'impression peut démarrer." +msgstr "La temperatura minima durante il riscaldamento fino alla temperatura alla quale può già iniziare la stampa." #: /fdmprinter.def.json msgctxt "material_final_print_temperature label" msgid "Final Printing Temperature" -msgstr "Température d’impression finale" +msgstr "Temperatura di stampa finale" #: /fdmprinter.def.json msgctxt "material_final_print_temperature description" msgid "" "The temperature to which to already start cooling down just before the end " "of printing." -msgstr "La température à laquelle le refroidissement commence juste avant la fin de l'impression." +msgstr "La temperatura alla quale può già iniziare il raffreddamento prima della fine della stampa." #: /fdmprinter.def.json msgctxt "material_extrusion_cool_down_speed label" msgid "Extrusion Cool Down Speed Modifier" -msgstr "Modificateur de vitesse de refroidissement de l'extrusion" +msgstr "Modificatore della velocità di raffreddamento estrusione" #: /fdmprinter.def.json msgctxt "material_extrusion_cool_down_speed description" msgid "" "The extra speed by which the nozzle cools while extruding. The same value is " "used to signify the heat up speed lost when heating up while extruding." -msgstr "La vitesse supplémentaire à laquelle la buse refroidit pendant l'extrusion. La même valeur est utilisée pour indiquer la perte de vitesse de chauffage" -" pendant l'extrusion." +msgstr "Indica l'incremento di velocità di raffreddamento dell'ugello in fase di estrusione. Lo stesso valore viene usato per indicare la perdita di velocità di" +" riscaldamento durante il riscaldamento in fase di estrusione." #: /fdmprinter.def.json msgctxt "default_material_bed_temperature label" msgid "Default Build Plate Temperature" -msgstr "Température du plateau par défaut" +msgstr "Temperatura piano di stampa preimpostata" #: /fdmprinter.def.json msgctxt "default_material_bed_temperature description" @@ -2723,94 +2726,94 @@ msgid "" "The default temperature used for the heated build plate. This should be the " "\"base\" temperature of a build plate. All other print temperatures should " "use offsets based on this value" -msgstr "Température par défaut utilisée pour le plateau chauffant. Il doit s'agir de la température de « base » d'un plateau. Toutes les autres températures d'impression" -" sont définies en fonction de cette valeur" +msgstr "La temperatura preimpostata utilizzata per il piano di stampa. Deve essere la temperatura “base” di un piano di stampa. Tutte le altre temperature di stampa" +" devono usare scostamenti basati su questo valore" #: /fdmprinter.def.json msgctxt "material_bed_temperature label" msgid "Build Plate Temperature" -msgstr "Température du plateau" +msgstr "Temperatura piano di stampa" #: /fdmprinter.def.json msgctxt "material_bed_temperature description" msgid "" "The temperature used for the heated build plate. If this is 0, the build " "plate is left unheated." -msgstr "Température utilisée pour le plateau de fabrication chauffé. Si elle est définie sur 0, le plateau de fabrication ne sera pas chauffé." +msgstr "Indica la temperatura utilizzata per il piano di stampa riscaldato. Se questo valore è 0, il piano di stampa viene lasciato non riscaldato." #: /fdmprinter.def.json msgctxt "material_bed_temperature_layer_0 label" msgid "Build Plate Temperature Initial Layer" -msgstr "Température du plateau couche initiale" +msgstr "Temperatura piano di stampa Strato iniziale" #: /fdmprinter.def.json msgctxt "material_bed_temperature_layer_0 description" msgid "" "The temperature used for the heated build plate at the first layer. If this " "is 0, the build plate is left unheated during the first layer." -msgstr "Température utilisée pour le plateau de fabrication chauffé à la première couche. Si elle est définie sur 0, le plateau de fabrication ne sera pas chauffé" -" lors de la première couche." +msgstr "Indica la temperatura usata per il piano di stampa riscaldato per il primo strato. Se questo valore è 0, il piano di stampa viene lasciato non riscaldato" +" per il primo strato." #: /fdmprinter.def.json msgctxt "material_adhesion_tendency label" msgid "Adhesion Tendency" -msgstr "Tendance à l'adhérence" +msgstr "Tendenza di adesione" #: /fdmprinter.def.json msgctxt "material_adhesion_tendency description" msgid "Surface adhesion tendency." -msgstr "Tendance à l'adhérence de la surface." +msgstr "Tendenza di adesione superficiale." #: /fdmprinter.def.json msgctxt "material_surface_energy label" msgid "Surface Energy" -msgstr "Énergie de la surface" +msgstr "Energia superficiale" #: /fdmprinter.def.json msgctxt "material_surface_energy description" msgid "Surface energy." -msgstr "Énergie de la surface." +msgstr "Energia superficiale." #: /fdmprinter.def.json msgctxt "material_shrinkage_percentage label" msgid "Scaling Factor Shrinkage Compensation" -msgstr "Mise à l'échelle du facteur de compensation de contraction" +msgstr "Fattore di scala per la compensazione della contrazione" #: /fdmprinter.def.json msgctxt "material_shrinkage_percentage description" msgid "" "To compensate for the shrinkage of the material as it cools down, the model " "will be scaled with this factor." -msgstr "Pour compenser la contraction du matériau lors de son refroidissement, le modèle est mis à l'échelle avec ce facteur." +msgstr "Per compensare la contrazione del materiale durante il raffreddamento, il modello sarà scalato con questo fattore." #: /fdmprinter.def.json msgctxt "material_shrinkage_percentage_xy label" msgid "Horizontal Scaling Factor Shrinkage Compensation" -msgstr "Compensation du rétrécissement du facteur d'échelle horizontale" +msgstr "Fattore di scala orizzontale per la compensazione della contrazione" #: /fdmprinter.def.json msgctxt "material_shrinkage_percentage_xy description" msgid "" "To compensate for the shrinkage of the material as it cools down, the model " "will be scaled with this factor in the XY-direction (horizontally)." -msgstr "Pour compenser le rétrécissement du matériau lors du refroidissement, le modèle sera mis à l'échelle avec ce facteur dans la direction XY (horizontalement)." +msgstr "Per compensare la contrazione del materiale durante il raffreddamento, il modello sarà scalato con questo fattore nella direzione XY (orizzontalmente)." #: /fdmprinter.def.json msgctxt "material_shrinkage_percentage_z label" msgid "Vertical Scaling Factor Shrinkage Compensation" -msgstr "Compensation du rétrécissement du facteur d'échelle verticale" +msgstr "Fattore di scala verticale per la compensazione della contrazione" #: /fdmprinter.def.json msgctxt "material_shrinkage_percentage_z description" msgid "" "To compensate for the shrinkage of the material as it cools down, the model " "will be scaled with this factor in the Z-direction (vertically)." -msgstr "Pour compenser le rétrécissement du matériau lors du refroidissement, le modèle sera mis à l'échelle avec ce facteur dans la direction Z (verticalement)." +msgstr "Per compensare la contrazione del materiale durante il raffreddamento, il modello sarà scalato con questo fattore nella direzione Z (verticalmente)." #: /fdmprinter.def.json msgctxt "material_crystallinity label" msgid "Crystalline Material" -msgstr "Matériau cristallin" +msgstr "Materiale cristallino" #: /fdmprinter.def.json msgctxt "material_crystallinity description" @@ -2818,133 +2821,134 @@ msgid "" "Is this material the type that breaks off cleanly when heated (crystalline), " "or is it the type that produces long intertwined polymer chains (non-" "crystalline)?" -msgstr "Ce matériau se casse-t-il proprement lorsqu'il est chauffé (cristallin) ou est-ce le type qui produit de longues chaînes polymères entrelacées (non cristallines) ?" +msgstr "Questo tipo di materiale è quello che si stacca in modo netto quando viene riscaldato (cristallino) oppure è il tipo che produce lunghe catene di polimeri" +" intrecciati (non cristallino)?" #: /fdmprinter.def.json msgctxt "material_anti_ooze_retracted_position label" msgid "Anti-ooze Retracted Position" -msgstr "Position anti-suintage rétractée" +msgstr "Posizione retratta anti fuoriuscita di materiale" #: /fdmprinter.def.json msgctxt "material_anti_ooze_retracted_position description" msgid "How far the material needs to be retracted before it stops oozing." -msgstr "Jusqu'où le matériau doit être rétracté avant qu'il cesse de suinter." +msgstr "La distanza alla quale deve essere retratto il materiale prima che smetta di fuoriuscire." #: /fdmprinter.def.json msgctxt "material_anti_ooze_retraction_speed label" msgid "Anti-ooze Retraction Speed" -msgstr "Vitesse de rétraction de l'anti-suintage" +msgstr "Velocità di retrazione anti fuoriuscita del materiale" #: /fdmprinter.def.json msgctxt "material_anti_ooze_retraction_speed description" msgid "" "How fast the material needs to be retracted during a filament switch to " "prevent oozing." -msgstr "À quelle vitesse le matériau doit-il être rétracté lors d'un changement de filament pour empêcher le suintage." +msgstr "La velocità a cui deve essere retratto il materiale durante un cambio di filamento per evitare la fuoriuscita di materiale." #: /fdmprinter.def.json msgctxt "material_break_preparation_retracted_position label" msgid "Break Preparation Retracted Position" -msgstr "Préparation de rupture Position rétractée" +msgstr "Posizione di retrazione prima della rottura" #: /fdmprinter.def.json msgctxt "material_break_preparation_retracted_position description" msgid "How far the filament can be stretched before it breaks, while heated." -msgstr "Jusqu'où le filament peut être étiré avant qu'il ne se casse, pendant qu'il est chauffé." +msgstr "La lunghezza massima di estensione del filamento prima che si rompa durante il riscaldamento." #: /fdmprinter.def.json msgctxt "material_break_preparation_speed label" msgid "Break Preparation Retraction Speed" -msgstr "Vitesse de rétraction de préparation de rupture" +msgstr "Velocità di retrazione prima della rottura" #: /fdmprinter.def.json msgctxt "material_break_preparation_speed description" msgid "" "How fast the filament needs to be retracted just before breaking it off in a " "retraction." -msgstr "La vitesse à laquelle le filament doit être rétracté juste avant de le briser dans une rétraction." +msgstr "La velocità massima di retrazione del filamento prima che si rompa durante questa operazione." #: /fdmprinter.def.json msgctxt "material_break_preparation_temperature label" msgid "Break Preparation Temperature" -msgstr "Température de préparation de rupture" +msgstr "Temperatura di preparazione alla rottura" #: /fdmprinter.def.json msgctxt "material_break_preparation_temperature description" msgid "" "The temperature used to purge material, should be roughly equal to the " "highest possible printing temperature." -msgstr "La température utilisée pour purger le matériau devrait être à peu près égale à la température d'impression la plus élevée possible." +msgstr "La temperatura utilizzata per scaricare il materiale. deve essere più o meno uguale alla massima temperatura di stampa possibile." #: /fdmprinter.def.json msgctxt "material_break_retracted_position label" msgid "Break Retracted Position" -msgstr "Position rétractée de rupture" +msgstr "Posizione di retrazione per la rottura" #: /fdmprinter.def.json msgctxt "material_break_retracted_position description" msgid "How far to retract the filament in order to break it cleanly." -msgstr "Jusqu'où rétracter le filament afin de le casser proprement." +msgstr "La distanza di retrazione del filamento al fine di consentirne la rottura netta." #: /fdmprinter.def.json msgctxt "material_break_speed label" msgid "Break Retraction Speed" -msgstr "Vitesse de rétraction de rupture" +msgstr "Velocità di retrazione per la rottura" #: /fdmprinter.def.json msgctxt "material_break_speed description" msgid "" "The speed at which to retract the filament in order to break it cleanly." -msgstr "La vitesse à laquelle rétracter le filament afin de le rompre proprement." +msgstr "La velocità alla quale retrarre il filamento al fine di romperlo in modo netto." #: /fdmprinter.def.json msgctxt "material_break_temperature label" msgid "Break Temperature" -msgstr "Température de rupture" +msgstr "Temperatura di rottura" #: /fdmprinter.def.json msgctxt "material_break_temperature description" msgid "The temperature at which the filament is broken for a clean break." -msgstr "La température à laquelle le filament est cassé pour une rupture propre." +msgstr "La temperatura a cui il filamento viene rotto, con una rottura netta." #: /fdmprinter.def.json msgctxt "material_flush_purge_speed label" msgid "Flush Purge Speed" -msgstr "Vitesse de purge d'insertion" +msgstr "Velocità di svuotamento dello scarico" #: /fdmprinter.def.json msgctxt "material_flush_purge_speed description" msgid "How fast to prime the material after switching to a different material." -msgstr "La vitesse d'amorçage du matériau après le passage à un autre matériau." +msgstr "Velocità di adescamento del materiale dopo il passaggio a un materiale diverso." #: /fdmprinter.def.json msgctxt "material_flush_purge_length label" msgid "Flush Purge Length" -msgstr "Longueur de la purge d'insertion" +msgstr "Lunghezza di svuotamento dello scarico" #: /fdmprinter.def.json msgctxt "material_flush_purge_length description" msgid "" "How much material to use to purge the previous material out of the nozzle " "(in length of filament) when switching to a different material." -msgstr "La quantité de matériau à utiliser pour purger le matériau précédent de la buse (en longueur de filament) lors du passage à un autre matériau." +msgstr "Quantità di materiale da utilizzare per svuotare il materiale precedente dall'ugello (in lunghezza del filamento) quando si passa a un materiale diverso." #: /fdmprinter.def.json msgctxt "material_end_of_filament_purge_speed label" msgid "End of Filament Purge Speed" -msgstr "Vitesse de purge de l'extrémité du filament" +msgstr "Velocità di svuotamento di fine filamento" #: /fdmprinter.def.json msgctxt "material_end_of_filament_purge_speed description" msgid "" "How fast to prime the material after replacing an empty spool with a fresh " "spool of the same material." -msgstr "La vitesse d'amorçage du matériau après le remplacement d'une bobine vide par une nouvelle bobine du même matériau." +msgstr "Velocità di adescamento del materiale dopo la sostituzione di una bobina vuota con una nuova dello stesso materiale." #: /fdmprinter.def.json msgctxt "material_end_of_filament_purge_length label" msgid "End of Filament Purge Length" -msgstr "Longueur de purge de l'extrémité du filament" +msgstr "Lunghezza di svuotamento di fine filamento" #: /fdmprinter.def.json msgctxt "material_end_of_filament_purge_length description" @@ -2952,23 +2956,23 @@ msgid "" "How much material to use to purge the previous material out of the nozzle " "(in length of filament) when replacing an empty spool with a fresh spool of " "the same material." -msgstr "La quantité de matériau à utiliser pour purger le matériau précédent de la buse (en longueur de filament) lors du remplacement d'une bobine vide par une" -" nouvelle bobine du même matériau." +msgstr "Quantità di materiale da utilizzare per svuotare il materiale precedente dall'ugello (in lunghezza del filamento) durante la sostituzione di una bobina" +" vuota con una nuova dello stesso materiale." #: /fdmprinter.def.json msgctxt "material_maximum_park_duration label" msgid "Maximum Park Duration" -msgstr "Durée maximum du stationnement" +msgstr "Durata di posizionamento massima" #: /fdmprinter.def.json msgctxt "material_maximum_park_duration description" msgid "How long the material can be kept out of dry storage safely." -msgstr "La durée pendant laquelle le matériau peut être conservé à l'abri de la sécheresse." +msgstr "Tempo per il quale è possibile mantenere il materiale all'esterno di un luogo di conservazione asciutto in sicurezza." #: /fdmprinter.def.json msgctxt "material_no_load_move_factor label" msgid "No Load Move Factor" -msgstr "Facteur de déplacement sans chargement" +msgstr "Fattore di spostamento senza carico" #: /fdmprinter.def.json msgctxt "material_no_load_move_factor description" @@ -2976,243 +2980,242 @@ msgid "" "A factor indicating how much the filament gets compressed between the feeder " "and the nozzle chamber, used to determine how far to move the material for a " "filament switch." -msgstr "Un facteur indiquant la quantité de filament compressée entre le chargeur et la chambre de la buse ; utilisé pour déterminer jusqu'où faire avancer le" -" matériau pour changer de filament." +msgstr "Fattore indicante la quantità di filamento che viene compressa tra l'alimentatore e la camera dell'ugello, usato per stabilire a quale distanza spostare" +" il materiale per un cambio di filamento." #: /fdmprinter.def.json msgctxt "material_flow label" msgid "Flow" -msgstr "Débit" +msgstr "Flusso" #: /fdmprinter.def.json msgctxt "material_flow description" msgid "" "Flow compensation: the amount of material extruded is multiplied by this " "value." -msgstr "Compensation du débit : la quantité de matériau extrudée est multipliée par cette valeur." +msgstr "Determina la compensazione del flusso: la quantità di materiale estruso viene moltiplicata per questo valore." #: /fdmprinter.def.json msgctxt "wall_material_flow label" msgid "Wall Flow" -msgstr "Débit de paroi" +msgstr "Flusso della parete" #: /fdmprinter.def.json msgctxt "wall_material_flow description" msgid "Flow compensation on wall lines." -msgstr "Compensation de débit sur les lignes de la paroi." +msgstr "Compensazione del flusso sulle linee perimetrali." #: /fdmprinter.def.json msgctxt "wall_0_material_flow label" msgid "Outer Wall Flow" -msgstr "Débit de paroi externe" +msgstr "Flusso della parete esterna" #: /fdmprinter.def.json msgctxt "wall_0_material_flow description" msgid "Flow compensation on the outermost wall line." -msgstr "Compensation de débit sur la ligne de la paroi la plus à l'extérieur." +msgstr "Compensazione del flusso sulla linea perimetrale più esterna." #: /fdmprinter.def.json msgctxt "wall_x_material_flow label" msgid "Inner Wall(s) Flow" -msgstr "Débit de paroi(s) interne(s)" +msgstr "Flusso pareti interne" #: /fdmprinter.def.json msgctxt "wall_x_material_flow description" msgid "" "Flow compensation on wall lines for all wall lines except the outermost one." -msgstr "Compensation de débit sur les lignes de la paroi pour toutes les lignes de paroi, à l'exception de la ligne la plus externe." +msgstr "Compensazione del flusso sulle linee perimetrali per tutte le linee perimetrali tranne quella più esterna." #: /fdmprinter.def.json msgctxt "skin_material_flow label" msgid "Top/Bottom Flow" -msgstr "Débit du dessus/dessous" +msgstr "Flusso superiore/inferiore" #: /fdmprinter.def.json msgctxt "skin_material_flow description" msgid "Flow compensation on top/bottom lines." -msgstr "Compensation de débit sur les lignes du dessus/dessous." +msgstr "Compensazione del flusso sulle linee superiore/inferiore." #: /fdmprinter.def.json msgctxt "roofing_material_flow label" msgid "Top Surface Skin Flow" -msgstr "Débit de la surface du dessus" +msgstr "Flusso rivestimento esterno superficie superiore" #: /fdmprinter.def.json msgctxt "roofing_material_flow description" msgid "Flow compensation on lines of the areas at the top of the print." -msgstr "Compensation de débit sur les lignes des zones en haut de l'impression." +msgstr "Compensazione del flusso sulle linee delle aree nella parte superiore della stampa." #: /fdmprinter.def.json msgctxt "infill_material_flow label" msgid "Infill Flow" -msgstr "Débit de remplissage" +msgstr "Flusso di riempimento" #: /fdmprinter.def.json msgctxt "infill_material_flow description" msgid "Flow compensation on infill lines." -msgstr "Compensation de débit sur les lignes de remplissage." +msgstr "Compensazione del flusso sulle linee di riempimento." #: /fdmprinter.def.json msgctxt "skirt_brim_material_flow label" msgid "Skirt/Brim Flow" -msgstr "Débit de la jupe/bordure" +msgstr "Flusso dello skirt/brim" #: /fdmprinter.def.json msgctxt "skirt_brim_material_flow description" msgid "Flow compensation on skirt or brim lines." -msgstr "Compensation de débit sur les lignes de jupe ou bordure." +msgstr "Compensazione del flusso sulle linee dello skirt o del brim." #: /fdmprinter.def.json msgctxt "support_material_flow label" msgid "Support Flow" -msgstr "Débit du support" +msgstr "Flusso del supporto" #: /fdmprinter.def.json msgctxt "support_material_flow description" msgid "Flow compensation on support structure lines." -msgstr "Compensation de débit sur les lignes de support." +msgstr "Compensazione del flusso sulle linee di supporto." #: /fdmprinter.def.json msgctxt "support_interface_material_flow label" msgid "Support Interface Flow" -msgstr "Débit de l'interface de support" +msgstr "Flusso interfaccia di supporto" #: /fdmprinter.def.json msgctxt "support_interface_material_flow description" msgid "Flow compensation on lines of support roof or floor." -msgstr "Compensation de débit sur les lignes de plafond ou de bas de support." +msgstr "Compensazione del flusso sulle linee di supporto superiore o inferiore." #: /fdmprinter.def.json msgctxt "support_roof_material_flow label" msgid "Support Roof Flow" -msgstr "Débit du plafond de support" +msgstr "Flusso supporto superiore" #: /fdmprinter.def.json msgctxt "support_roof_material_flow description" msgid "Flow compensation on support roof lines." -msgstr "Compensation de débit sur les lignes du plafond de support." +msgstr "Compensazione del flusso sulle linee di supporto superiore." #: /fdmprinter.def.json msgctxt "support_bottom_material_flow label" msgid "Support Floor Flow" -msgstr "Débit du bas de support" +msgstr "Flusso supporto inferiore" #: /fdmprinter.def.json msgctxt "support_bottom_material_flow description" msgid "Flow compensation on support floor lines." -msgstr "Compensation de débit sur les lignes de bas de support." +msgstr "Compensazione del flusso sulle linee di supporto inferiore." #: /fdmprinter.def.json msgctxt "prime_tower_flow label" msgid "Prime Tower Flow" -msgstr "Débit de la tour d'amorçage" +msgstr "Flusso torre di innesco" #: /fdmprinter.def.json msgctxt "prime_tower_flow description" msgid "Flow compensation on prime tower lines." -msgstr "Compensation de débit sur les lignes de la tour d'amorçage." +msgstr "Compensazione del flusso sulle linee della torre di innesco." #: /fdmprinter.def.json msgctxt "material_flow_layer_0 label" msgid "Initial Layer Flow" -msgstr "Débit de la couche initiale" +msgstr "Flusso dello strato iniziale" #: /fdmprinter.def.json msgctxt "material_flow_layer_0 description" msgid "" "Flow compensation for the first layer: the amount of material extruded on " "the initial layer is multiplied by this value." -msgstr "Compensation du débit pour la couche initiale : la quantité de matériau extrudée sur la couche initiale est multipliée par cette valeur." +msgstr "Determina la compensazione del flusso per il primo strato: la quantità di materiale estruso sullo strato iniziale viene moltiplicata per questo valore." #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 label" msgid "Initial Layer Inner Wall Flow" -msgstr "Débit de la paroi intérieure de la couche initiale" +msgstr "Flusso della parete interna dello strato iniziale" #: /fdmprinter.def.json msgctxt "wall_x_material_flow_layer_0 description" msgid "" "Flow compensation on wall lines for all wall lines except the outermost one, " "but only for the first layer" -msgstr "Compensation de débit sur les lignes de la paroi pour toutes les lignes de paroi, à l'exception de la ligne la plus externe, mais uniquement pour la première" -" couche." +msgstr "Compensazione del flusso sulle linee perimetrali per tutte le linee perimetrali tranne quella più esterna, ma solo per il primo strato" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 label" msgid "Initial Layer Outer Wall Flow" -msgstr "Débit de la paroi extérieure de la couche initiale" +msgstr "Flusso della parete esterna dello strato iniziale" #: /fdmprinter.def.json msgctxt "wall_0_material_flow_layer_0 description" msgid "Flow compensation on the outermost wall line of the first layer." -msgstr "Compensation de débit sur la ligne de la paroi la plus à l'extérieur de la première couche." +msgstr "Compensazione del flusso sulla linea perimetrale più esterna del primo strato." #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 label" msgid "Initial Layer Bottom Flow" -msgstr "Débit des lignes du dessous de la couche initiale" +msgstr "Flusso inferiore dello strato iniziale" #: /fdmprinter.def.json msgctxt "skin_material_flow_layer_0 description" msgid "Flow compensation on bottom lines of the first layer" -msgstr "Compensation de débit sur les lignes du dessous de la première couche" +msgstr "Compensazione del flusso sulle linee inferiori del primo strato" #: /fdmprinter.def.json msgctxt "material_standby_temperature label" msgid "Standby Temperature" -msgstr "Température de veille" +msgstr "Temperatura di Standby" #: /fdmprinter.def.json msgctxt "material_standby_temperature description" msgid "" "The temperature of the nozzle when another nozzle is currently used for " "printing." -msgstr "La température de la buse lorsqu'une autre buse est actuellement utilisée pour l'impression." +msgstr "Indica la temperatura dell'ugello quando un altro ugello è attualmente in uso per la stampa." #: /fdmprinter.def.json msgctxt "speed label" msgid "Speed" -msgstr "Vitesse" +msgstr "Velocità" #: /fdmprinter.def.json msgctxt "speed description" msgid "Speed" -msgstr "Vitesse" +msgstr "Velocità" #: /fdmprinter.def.json msgctxt "speed_print label" msgid "Print Speed" -msgstr "Vitesse d’impression" +msgstr "Velocità di stampa" #: /fdmprinter.def.json msgctxt "speed_print description" msgid "The speed at which printing happens." -msgstr "La vitesse à laquelle l'impression s'effectue." +msgstr "Indica la velocità alla quale viene effettuata la stampa." #: /fdmprinter.def.json msgctxt "speed_infill label" msgid "Infill Speed" -msgstr "Vitesse de remplissage" +msgstr "Velocità di riempimento" #: /fdmprinter.def.json msgctxt "speed_infill description" msgid "The speed at which infill is printed." -msgstr "La vitesse à laquelle le remplissage est imprimé." +msgstr "Indica la velocità alla quale viene stampato il riempimento." #: /fdmprinter.def.json msgctxt "speed_wall label" msgid "Wall Speed" -msgstr "Vitesse d'impression de la paroi" +msgstr "Velocità di stampa della parete" #: /fdmprinter.def.json msgctxt "speed_wall description" msgid "The speed at which the walls are printed." -msgstr "La vitesse à laquelle les parois sont imprimées." +msgstr "Indica la velocità alla quale vengono stampate le pareti." #: /fdmprinter.def.json msgctxt "speed_wall_0 label" msgid "Outer Wall Speed" -msgstr "Vitesse d'impression de la paroi externe" +msgstr "Velocità di stampa della parete esterna" #: /fdmprinter.def.json msgctxt "speed_wall_0 description" @@ -3221,13 +3224,14 @@ msgid "" "at a lower speed improves the final skin quality. However, having a large " "difference between the inner wall speed and the outer wall speed will affect " "quality in a negative way." -msgstr "La vitesse à laquelle les parois externes sont imprimées. L’impression de la paroi externe à une vitesse inférieure améliore la qualité finale de la coque." -" Néanmoins, si la différence entre la vitesse de la paroi interne et la vitesse de la paroi externe est importante, la qualité finale sera réduite." +msgstr "Indica la velocità alla quale vengono stampate le pareti più esterne. La stampa della parete esterna ad una velocità inferiore migliora la qualità finale" +" del rivestimento. Tuttavia, una grande differenza tra la velocità di stampa della parete interna e quella della parete esterna avrà effetti negativi sulla" +" qualità." #: /fdmprinter.def.json msgctxt "speed_wall_x label" msgid "Inner Wall Speed" -msgstr "Vitesse d'impression de la paroi interne" +msgstr "Velocità di stampa della parete interna" #: /fdmprinter.def.json msgctxt "speed_wall_x description" @@ -3235,33 +3239,34 @@ msgid "" "The speed at which all inner walls are printed. Printing the inner wall " "faster than the outer wall will reduce printing time. It works well to set " "this in between the outer wall speed and the infill speed." -msgstr "La vitesse à laquelle toutes les parois internes seront imprimées. L’impression de la paroi interne à une vitesse supérieure réduira le temps d'impression" -" global. Il est bon de définir cette vitesse entre celle de l'impression de la paroi externe et du remplissage." +msgstr "Indica la velocità alla quale vengono stampate tutte le pareti interne. La stampa della parete interna eseguita più velocemente di quella della parete" +" esterna consentirà di ridurre il tempo di stampa. Si consiglia di impostare questo parametro ad un valore intermedio tra la velocità della parete esterna" +" e quella di riempimento." #: /fdmprinter.def.json msgctxt "speed_roofing label" msgid "Top Surface Skin Speed" -msgstr "Vitesse de la couche extérieure de la surface supérieure" +msgstr "Velocità del rivestimento superficie" #: /fdmprinter.def.json msgctxt "speed_roofing description" msgid "The speed at which top surface skin layers are printed." -msgstr "La vitesse à laquelle les couches extérieures de la surface supérieure sont imprimées." +msgstr "Indica la velocità di stampa degli strati superiori." #: /fdmprinter.def.json msgctxt "speed_topbottom label" msgid "Top/Bottom Speed" -msgstr "Vitesse d'impression du dessus/dessous" +msgstr "Velocità di stampa delle parti superiore/inferiore" #: /fdmprinter.def.json msgctxt "speed_topbottom description" msgid "The speed at which top/bottom layers are printed." -msgstr "La vitesse à laquelle les couches du dessus/dessous sont imprimées." +msgstr "Indica la velocità alla quale vengono stampati gli strati superiore/inferiore." #: /fdmprinter.def.json msgctxt "speed_support label" msgid "Support Speed" -msgstr "Vitesse d'impression des supports" +msgstr "Velocità di stampa del supporto" #: /fdmprinter.def.json msgctxt "speed_support description" @@ -3269,62 +3274,62 @@ msgid "" "The speed at which the support structure is printed. Printing support at " "higher speeds can greatly reduce printing time. The surface quality of the " "support structure is not important since it is removed after printing." -msgstr "La vitesse à laquelle les supports sont imprimés. Imprimer les supports à une vitesse supérieure peut fortement accélérer l’impression. Par ailleurs, la" -" qualité de la structure des supports n’a généralement pas beaucoup d’importance du fait qu'elle est retirée après l'impression." +msgstr "Indica la velocità alla quale viene stampata la struttura di supporto. La stampa della struttura di supporto a velocità elevate può ridurre considerevolmente" +" i tempi di stampa. La qualità superficiale della struttura di supporto di norma non riveste grande importanza in quanto viene rimossa dopo la stampa." #: /fdmprinter.def.json msgctxt "speed_support_infill label" msgid "Support Infill Speed" -msgstr "Vitesse d'impression du remplissage de support" +msgstr "Velocità di riempimento del supporto" #: /fdmprinter.def.json msgctxt "speed_support_infill description" msgid "" "The speed at which the infill of support is printed. Printing the infill at " "lower speeds improves stability." -msgstr "La vitesse à laquelle le remplissage de support est imprimé. L'impression du remplissage à une vitesse plus faible permet de renforcer la stabilité." +msgstr "Indica la velocità alla quale viene stampato il riempimento del supporto. La stampa del riempimento a velocità inferiori migliora la stabilità." #: /fdmprinter.def.json msgctxt "speed_support_interface label" msgid "Support Interface Speed" -msgstr "Vitesse d'impression de l'interface de support" +msgstr "Velocità interfaccia supporto" #: /fdmprinter.def.json msgctxt "speed_support_interface description" msgid "" "The speed at which the roofs and floors of support are printed. Printing " "them at lower speeds can improve overhang quality." -msgstr "La vitesse à laquelle les plafonds et bas de support sont imprimés. Les imprimer à de plus faibles vitesses améliore la qualité des porte-à-faux." +msgstr "Velocità alla quale vengono stampate le parti superiori e inferiori del supporto. La loro stampa a velocità inferiori può migliorare la qualità dello sbalzo." #: /fdmprinter.def.json msgctxt "speed_support_roof label" msgid "Support Roof Speed" -msgstr "Vitesse d'impression des plafonds de support" +msgstr "Velocità di stampa della parte superiore (tetto) del supporto" #: /fdmprinter.def.json msgctxt "speed_support_roof description" msgid "" "The speed at which the roofs of support are printed. Printing them at lower " "speeds can improve overhang quality." -msgstr "La vitesse à laquelle les plafonds de support sont imprimés. Les imprimer à de plus faibles vitesses améliore la qualité des porte-à-faux." +msgstr "Velocità alla quale vengono stampate le parti superiori del supporto. La loro stampa a velocità inferiori può migliorare la qualità dello sbalzo." #: /fdmprinter.def.json msgctxt "speed_support_bottom label" msgid "Support Floor Speed" -msgstr "Vitesse d'impression des bas de support" +msgstr "Velocità di stampa della parte inferiore del supporto" #: /fdmprinter.def.json msgctxt "speed_support_bottom description" msgid "" "The speed at which the floor of support is printed. Printing it at lower " "speed can improve adhesion of support on top of your model." -msgstr "La vitesse à laquelle le bas de support est imprimé. L'impression à une vitesse plus faible permet de renforcer l'adhésion du support au-dessus de votre" -" modèle." +msgstr "Velocità alla quale viene stampata la parte inferiore del supporto. La stampa ad una velocità inferiore può migliorare l'adesione del supporto nella parte" +" superiore del modello." #: /fdmprinter.def.json msgctxt "speed_prime_tower label" msgid "Prime Tower Speed" -msgstr "Vitesse de la tour d'amorçage" +msgstr "Velocità della torre di innesco" #: /fdmprinter.def.json msgctxt "speed_prime_tower description" @@ -3332,23 +3337,23 @@ msgid "" "The speed at which the prime tower is printed. Printing the prime tower " "slower can make it more stable when the adhesion between the different " "filaments is suboptimal." -msgstr "La vitesse à laquelle la tour d'amorçage est imprimée. L'impression plus lente de la tour d'amorçage peut la rendre plus stable lorsque l'adhérence entre" -" les différents filaments est sous-optimale." +msgstr "Indica la velocità alla quale è stampata la torre di innesco. La stampa della torre di innesco a una velocità inferiore può renderla maggiormente stabile" +" quando l’adesione tra i diversi filamenti non è ottimale." #: /fdmprinter.def.json msgctxt "speed_travel label" msgid "Travel Speed" -msgstr "Vitesse de déplacement" +msgstr "Velocità degli spostamenti" #: /fdmprinter.def.json msgctxt "speed_travel description" msgid "The speed at which travel moves are made." -msgstr "La vitesse à laquelle les déplacements s'effectuent." +msgstr "Indica la velocità alla quale vengono effettuati gli spostamenti." #: /fdmprinter.def.json msgctxt "speed_layer_0 label" msgid "Initial Layer Speed" -msgstr "Vitesse de la couche initiale" +msgstr "Velocità di stampa dello strato iniziale" #: /fdmprinter.def.json msgctxt "speed_layer_0 description" @@ -3356,25 +3361,25 @@ msgid "" "The speed for the initial layer. A lower value is advised to improve " "adhesion to the build plate. Does not affect the build plate adhesion " "structures themselves, like brim and raft." -msgstr "La vitesse de la couche initiale. Une valeur plus faible est recommandée pour améliorer l'adhérence au plateau de fabrication. N'affecte pas les structures" -" d'adhérence au plateau, comme la bordure et le radeau." +msgstr "La velocità dello strato iniziale. È consigliabile un valore inferiore per migliorare l'adesione al piano di stampa. Non influisce sulle strutture di adesione" +" del piano di stampa stesse, come brim e raft." #: /fdmprinter.def.json msgctxt "speed_print_layer_0 label" msgid "Initial Layer Print Speed" -msgstr "Vitesse d’impression de la couche initiale" +msgstr "Velocità di stampa strato iniziale" #: /fdmprinter.def.json msgctxt "speed_print_layer_0 description" msgid "" "The speed of printing for the initial layer. A lower value is advised to " "improve adhesion to the build plate." -msgstr "La vitesse d'impression de la couche initiale. Une valeur plus faible est recommandée pour améliorer l'adhérence au plateau." +msgstr "Indica la velocità di stampa per lo strato iniziale. Un valore inferiore è consigliabile per migliorare l’adesione al piano di stampa." #: /fdmprinter.def.json msgctxt "speed_travel_layer_0 label" msgid "Initial Layer Travel Speed" -msgstr "Vitesse de déplacement de la couche initiale" +msgstr "Velocità di spostamento dello strato iniziale" #: /fdmprinter.def.json msgctxt "speed_travel_layer_0 description" @@ -3383,13 +3388,14 @@ msgid "" "prevent pulling previously printed parts away from the build plate. The " "value of this setting can automatically be calculated from the ratio between " "the Travel Speed and the Print Speed." -msgstr "Vitesse des mouvements de déplacement dans la couche initiale. Une valeur plus faible est recommandée pour éviter que les pièces déjà imprimées ne s'écartent" -" du plateau. La valeur de ce paramètre peut être calculée automatiquement à partir du ratio entre la vitesse des mouvements et la vitesse d'impression." +msgstr "Indica la velocità di spostamento per lo strato iniziale. Un valore inferiore è consigliabile per evitare di rimuovere le parti precedentemente stampate" +" dal piano di stampa. Il valore di questa impostazione può essere calcolato automaticamente dal rapporto tra la velocità di spostamento e la velocità di" +" stampa." #: /fdmprinter.def.json msgctxt "skirt_brim_speed label" msgid "Skirt/Brim Speed" -msgstr "Vitesse d'impression de la jupe/bordure" +msgstr "Velocità dello skirt/brim" #: /fdmprinter.def.json msgctxt "skirt_brim_speed description" @@ -3397,13 +3403,13 @@ msgid "" "The speed at which the skirt and brim are printed. Normally this is done at " "the initial layer speed, but sometimes you might want to print the skirt or " "brim at a different speed." -msgstr "La vitesse à laquelle la jupe et la bordure sont imprimées. Normalement, cette vitesse est celle de la couche initiale, mais il est parfois nécessaire" -" d’imprimer la jupe ou la bordure à une vitesse différente." +msgstr "Indica la velocità a cui sono stampati lo skirt ed il brim. Normalmente questa operazione viene svolta alla velocità di stampa dello strato iniziale, ma" +" a volte è possibile che si desideri stampare lo skirt o il brim ad una velocità diversa." #: /fdmprinter.def.json msgctxt "speed_z_hop label" msgid "Z Hop Speed" -msgstr "Vitesse du décalage en Z" +msgstr "Velocità di sollevamento Z" #: /fdmprinter.def.json msgctxt "speed_z_hop description" @@ -3411,13 +3417,13 @@ msgid "" "The speed at which the vertical Z movement is made for Z Hops. This is " "typically lower than the print speed since the build plate or machine's " "gantry is harder to move." -msgstr "La vitesse à laquelle le mouvement vertical en Z est effectué pour des décalages en Z. Cette vitesse est généralement inférieure à la vitesse d'impression" -" car le plateau ou le portique de la machine est plus difficile à déplacer." +msgstr "Velocità alla quale viene eseguito il movimento Z verticale per i sollevamenti in Z. In genere è inferiore alla velocità di stampa, dal momento che il" +" piano o il corpo di stampa della macchina sono più difficili da spostare." #: /fdmprinter.def.json msgctxt "speed_slowdown_layers label" msgid "Number of Slower Layers" -msgstr "Nombre de couches plus lentes" +msgstr "Numero di strati stampati a velocità inferiore" #: /fdmprinter.def.json msgctxt "speed_slowdown_layers description" @@ -3425,13 +3431,13 @@ msgid "" "The first few layers are printed slower than the rest of the model, to get " "better adhesion to the build plate and improve the overall success rate of " "prints. The speed is gradually increased over these layers." -msgstr "Les premières couches sont imprimées plus lentement que le reste du modèle afin d’obtenir une meilleure adhérence au plateau et d’améliorer le taux de" -" réussite global des impressions. La vitesse augmente graduellement à chacune de ces couches." +msgstr "I primi strati vengono stampati più lentamente rispetto al resto del modello, per ottenere una migliore adesione al piano di stampa ed ottimizzare nel" +" complesso la percentuale di successo delle stampe. La velocità aumenta gradualmente nel corso di esecuzione degli strati successivi." #: /fdmprinter.def.json msgctxt "speed_equalize_flow_width_factor label" msgid "Flow Equalization Ratio" -msgstr "Rapport d'égalisation des débits" +msgstr "Rapporto di equalizzazione del flusso" #: /fdmprinter.def.json msgctxt "speed_equalize_flow_width_factor description" @@ -3442,218 +3448,220 @@ msgid "" "normal Line Width are printed twice as fast and lines twice as wide are " "printed half as fast. A value larger than 100% can help to compensate for " "the higher pressure required to extrude wide lines." -msgstr "Facteur de correction de la largeur d'extrusion en fonction de la vitesse. À 0 %, la vitesse de mouvement reste constante à la vitesse d'impression. À" -" 100 %, la vitesse de mouvement est ajustée de sorte que le débit (en mm³/s) reste constant, c'est-à-dire que les lignes à la moitié de la largeur de ligne" -" normale sont imprimées deux fois plus vite et que les lignes à la moitié de la largeur sont imprimées aussi vite. Une valeur supérieure à 100 % peut aider" -" à compenser la pression plus élevée requise pour extruder les lignes larges." +msgstr "Fattore di correzione della velocità basato sulla larghezza di estrusione. A 0% la velocità di movimento viene mantenuta costante alla velocità di stampa." +" Al 100% la velocità di movimento viene regolata in modo da mantenere costante il flusso (in mm³/s), ovvero le linee la cui larghezza è metà di quella" +" normale vengono stampate due volte più velocemente e le linee larghe il doppio vengono stampate a metà della velocità. Un valore maggiore di 100% può aiutare" +" a compensare la pressione più alta richiesta per estrudere linee larghe." #: /fdmprinter.def.json msgctxt "acceleration_enabled label" msgid "Enable Acceleration Control" -msgstr "Activer le contrôle d'accélération" +msgstr "Abilita controllo accelerazione" #: /fdmprinter.def.json msgctxt "acceleration_enabled description" msgid "" "Enables adjusting the print head acceleration. Increasing the accelerations " "can reduce printing time at the cost of print quality." -msgstr "Active le réglage de l'accélération de la tête d'impression. Augmenter les accélérations peut réduire la durée d'impression au détriment de la qualité" -" d'impression." +msgstr "Abilita la regolazione dell’accelerazione della testina di stampa. Aumentando le accelerazioni il tempo di stampa si riduce a discapito della qualità di" +" stampa." #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled label" msgid "Enable Travel Acceleration" -msgstr "Activer l'accélération de déplacement" +msgstr "Abilita Accelerazione spostamenti" #: /fdmprinter.def.json msgctxt "acceleration_travel_enabled description" msgid "" "Use a separate acceleration rate for travel moves. If disabled, travel moves " "will use the acceleration value of the printed line at their destination." -msgstr "Utilisez un taux d'accélération différent pour les déplacements. Si cette option est désactivée, les déplacements utiliseront la même accélération que" -" celle de la ligne imprimée à l'emplacement cible." +msgstr "Utilizza un tasso di accelerazione separato per i movimenti di spostamento. Se disabilitata, i movimenti di spostamento utilizzeranno il valore di accelerazione" +" della linea stampata alla destinazione." #: /fdmprinter.def.json msgctxt "acceleration_print label" msgid "Print Acceleration" -msgstr "Accélération de l'impression" +msgstr "Accelerazione di stampa" #: /fdmprinter.def.json msgctxt "acceleration_print description" msgid "The acceleration with which printing happens." -msgstr "L'accélération selon laquelle l'impression s'effectue." +msgstr "L’accelerazione con cui avviene la stampa." #: /fdmprinter.def.json msgctxt "acceleration_infill label" msgid "Infill Acceleration" -msgstr "Accélération de remplissage" +msgstr "Accelerazione riempimento" #: /fdmprinter.def.json msgctxt "acceleration_infill description" msgid "The acceleration with which infill is printed." -msgstr "L'accélération selon laquelle le remplissage est imprimé." +msgstr "L’accelerazione con cui viene stampato il riempimento." #: /fdmprinter.def.json msgctxt "acceleration_wall label" msgid "Wall Acceleration" -msgstr "Accélération de la paroi" +msgstr "Accelerazione parete" #: /fdmprinter.def.json msgctxt "acceleration_wall description" msgid "The acceleration with which the walls are printed." -msgstr "L'accélération selon laquelle les parois sont imprimées." +msgstr "Indica l’accelerazione alla quale vengono stampate le pareti." #: /fdmprinter.def.json msgctxt "acceleration_wall_0 label" msgid "Outer Wall Acceleration" -msgstr "Accélération de la paroi externe" +msgstr "Accelerazione parete esterna" #: /fdmprinter.def.json msgctxt "acceleration_wall_0 description" msgid "The acceleration with which the outermost walls are printed." -msgstr "L'accélération selon laquelle les parois externes sont imprimées." +msgstr "Indica l’accelerazione alla quale vengono stampate le pareti più esterne." #: /fdmprinter.def.json msgctxt "acceleration_wall_x label" msgid "Inner Wall Acceleration" -msgstr "Accélération de la paroi intérieure" +msgstr "Accelerazione parete interna" #: /fdmprinter.def.json msgctxt "acceleration_wall_x description" msgid "The acceleration with which all inner walls are printed." -msgstr "L'accélération selon laquelle toutes les parois intérieures sont imprimées." +msgstr "Indica l’accelerazione alla quale vengono stampate tutte le pareti interne." #: /fdmprinter.def.json msgctxt "acceleration_roofing label" msgid "Top Surface Skin Acceleration" -msgstr "Accélération de couche extérieure de surface supérieure" +msgstr "Accelerazione del rivestimento superficie superiore" #: /fdmprinter.def.json msgctxt "acceleration_roofing description" msgid "The acceleration with which top surface skin layers are printed." -msgstr "La vitesse à laquelle les couches extérieures de surface supérieure sont imprimées." +msgstr "Indica l'accelerazione alla quale vengono stampati gli strati rivestimento superficie superiore." #: /fdmprinter.def.json msgctxt "acceleration_topbottom label" msgid "Top/Bottom Acceleration" -msgstr "Accélération du dessus/dessous" +msgstr "Accelerazione strato superiore/inferiore" #: /fdmprinter.def.json msgctxt "acceleration_topbottom description" msgid "The acceleration with which top/bottom layers are printed." -msgstr "L'accélération selon laquelle les couches du dessus/dessous sont imprimées." +msgstr "Indica l’accelerazione alla quale vengono stampati gli strati superiore/inferiore." #: /fdmprinter.def.json msgctxt "acceleration_support label" msgid "Support Acceleration" -msgstr "Accélération du support" +msgstr "Accelerazione supporto" #: /fdmprinter.def.json msgctxt "acceleration_support description" msgid "The acceleration with which the support structure is printed." -msgstr "L'accélération selon laquelle la structure de support est imprimée." +msgstr "Indica l’accelerazione con cui viene stampata la struttura di supporto." #: /fdmprinter.def.json msgctxt "acceleration_support_infill label" msgid "Support Infill Acceleration" -msgstr "Accélération de remplissage du support" +msgstr "Accelerazione riempimento supporto" #: /fdmprinter.def.json msgctxt "acceleration_support_infill description" msgid "The acceleration with which the infill of support is printed." -msgstr "L'accélération selon laquelle le remplissage de support est imprimé." +msgstr "Indica l’accelerazione con cui viene stampato il riempimento del supporto." #: /fdmprinter.def.json msgctxt "acceleration_support_interface label" msgid "Support Interface Acceleration" -msgstr "Accélération de l'interface du support" +msgstr "Accelerazione interfaccia supporto" #: /fdmprinter.def.json msgctxt "acceleration_support_interface description" msgid "" "The acceleration with which the roofs and floors of support are printed. " "Printing them at lower acceleration can improve overhang quality." -msgstr "L'accélération selon laquelle les plafonds et bas de support sont imprimés. Les imprimer avec une accélération plus faible améliore la qualité des porte-à-faux." +msgstr "Accelerazione alla quale vengono stampate le parti superiori e inferiori del supporto. La loro stampa ad un'accelerazione inferiore può migliorare la qualità" +" dello sbalzo." #: /fdmprinter.def.json msgctxt "acceleration_support_roof label" msgid "Support Roof Acceleration" -msgstr "Accélération des plafonds de support" +msgstr "Accelerazione parte superiore del supporto" #: /fdmprinter.def.json msgctxt "acceleration_support_roof description" msgid "" "The acceleration with which the roofs of support are printed. Printing them " "at lower acceleration can improve overhang quality." -msgstr "L'accélération selon laquelle les plafonds de support sont imprimés. Les imprimer avec une accélération plus faible améliore la qualité des porte-à-faux." +msgstr "Accelerazione alla quale vengono stampate le parti superiori del supporto. La loro stampa ad un'accelerazione inferiore può migliorare la qualità dello" +" sbalzo." #: /fdmprinter.def.json msgctxt "acceleration_support_bottom label" msgid "Support Floor Acceleration" -msgstr "Accélération des bas de support" +msgstr "Accelerazione parte inferiore del supporto" #: /fdmprinter.def.json msgctxt "acceleration_support_bottom description" msgid "" "The acceleration with which the floors of support are printed. Printing them " "at lower acceleration can improve adhesion of support on top of your model." -msgstr "L'accélération selon laquelle les bas de support sont imprimés. Les imprimer avec une accélération plus faible renforce l'adhésion du support au-dessus" -" du modèle." +msgstr "Accelerazione alla quale vengono stampate le parti inferiori del supporto. La stampa ad una accelerazione inferiore può migliorare l'adesione del supporto" +" nella parte superiore del modello." #: /fdmprinter.def.json msgctxt "acceleration_prime_tower label" msgid "Prime Tower Acceleration" -msgstr "Accélération de la tour d'amorçage" +msgstr "Accelerazione della torre di innesco" #: /fdmprinter.def.json msgctxt "acceleration_prime_tower description" msgid "The acceleration with which the prime tower is printed." -msgstr "L'accélération selon laquelle la tour d'amorçage est imprimée." +msgstr "Indica l’accelerazione con cui viene stampata la torre di innesco." #: /fdmprinter.def.json msgctxt "acceleration_travel label" msgid "Travel Acceleration" -msgstr "Accélération de déplacement" +msgstr "Accelerazione spostamenti" #: /fdmprinter.def.json msgctxt "acceleration_travel description" msgid "The acceleration with which travel moves are made." -msgstr "L'accélération selon laquelle les déplacements s'effectuent." +msgstr "Indica l’accelerazione alla quale vengono effettuati gli spostamenti." #: /fdmprinter.def.json msgctxt "acceleration_layer_0 label" msgid "Initial Layer Acceleration" -msgstr "Accélération de la couche initiale" +msgstr "Accelerazione dello strato iniziale" #: /fdmprinter.def.json msgctxt "acceleration_layer_0 description" msgid "The acceleration for the initial layer." -msgstr "L'accélération pour la couche initiale." +msgstr "Indica l’accelerazione dello strato iniziale." #: /fdmprinter.def.json msgctxt "acceleration_print_layer_0 label" msgid "Initial Layer Print Acceleration" -msgstr "Accélération de l'impression de la couche initiale" +msgstr "Accelerazione di stampa strato iniziale" #: /fdmprinter.def.json msgctxt "acceleration_print_layer_0 description" msgid "The acceleration during the printing of the initial layer." -msgstr "L'accélération durant l'impression de la couche initiale." +msgstr "Indica l’accelerazione durante la stampa dello strato iniziale." #: /fdmprinter.def.json msgctxt "acceleration_travel_layer_0 label" msgid "Initial Layer Travel Acceleration" -msgstr "Accélération de déplacement de la couche initiale" +msgstr "Accelerazione spostamenti dello strato iniziale" #: /fdmprinter.def.json msgctxt "acceleration_travel_layer_0 description" msgid "The acceleration for travel moves in the initial layer." -msgstr "L'accélération pour les déplacements dans la couche initiale." +msgstr "Indica l’accelerazione degli spostamenti dello strato iniziale." #: /fdmprinter.def.json msgctxt "acceleration_skirt_brim label" msgid "Skirt/Brim Acceleration" -msgstr "Accélération de la jupe/bordure" +msgstr "Accelerazione skirt/brim" #: /fdmprinter.def.json msgctxt "acceleration_skirt_brim description" @@ -3661,13 +3669,13 @@ msgid "" "The acceleration with which the skirt and brim are printed. Normally this is " "done with the initial layer acceleration, but sometimes you might want to " "print the skirt or brim at a different acceleration." -msgstr "L'accélération selon laquelle la jupe et la bordure sont imprimées. Normalement, cette accélération est celle de la couche initiale, mais il est parfois" -" nécessaire d’imprimer la jupe ou la bordure à une accélération différente." +msgstr "Indica l’accelerazione alla quale sono stampati lo skirt ed il brim. Normalmente questa operazione viene svolta all’accelerazione dello strato iniziale," +" ma a volte è possibile che si desideri stampare lo skirt o il brim ad un’accelerazione diversa." #: /fdmprinter.def.json msgctxt "jerk_enabled label" msgid "Enable Jerk Control" -msgstr "Activer le contrôle de saccade" +msgstr "Abilita controllo jerk" #: /fdmprinter.def.json msgctxt "jerk_enabled description" @@ -3675,329 +3683,328 @@ msgid "" "Enables adjusting the jerk of print head when the velocity in the X or Y " "axis changes. Increasing the jerk can reduce printing time at the cost of " "print quality." -msgstr "Active le réglage de la saccade de la tête d'impression lorsque la vitesse sur l'axe X ou Y change. Augmenter les saccades peut réduire la durée d'impression" -" au détriment de la qualité d'impression." +msgstr "Abilita la regolazione del jerk della testina di stampa quando la velocità nell’asse X o Y cambia. Aumentando il jerk il tempo di stampa si riduce a discapito" +" della qualità di stampa." #: /fdmprinter.def.json msgctxt "jerk_travel_enabled label" msgid "Enable Travel Jerk" -msgstr "Activer la saccade de déplacement" +msgstr "Abilita jerk spostamenti" #: /fdmprinter.def.json msgctxt "jerk_travel_enabled description" msgid "" "Use a separate jerk rate for travel moves. If disabled, travel moves will " "use the jerk value of the printed line at their destination." -msgstr "Utilisez un taux de saccades différent pour les déplacements. Si cette option est désactivée, les déplacements utiliseront les mêmes saccades que celle" -" de la ligne imprimée à l'emplacement cible." +msgstr "Utilizza un tasso di jerk distinto per i movimenti di spostamento. Se disabilitato, i movimenti di spostamento utilizzeranno il valore di jerk della linea" +" stampata alla destinazione." #: /fdmprinter.def.json msgctxt "jerk_print label" msgid "Print Jerk" -msgstr "Imprimer en saccade" +msgstr "Jerk stampa" #: /fdmprinter.def.json msgctxt "jerk_print description" msgid "The maximum instantaneous velocity change of the print head." -msgstr "Le changement instantané maximal de vitesse de la tête d'impression." +msgstr "Indica il cambio della velocità istantanea massima della testina di stampa." #: /fdmprinter.def.json msgctxt "jerk_infill label" msgid "Infill Jerk" -msgstr "Saccade de remplissage" +msgstr "Jerk riempimento" #: /fdmprinter.def.json msgctxt "jerk_infill description" msgid "The maximum instantaneous velocity change with which infill is printed." -msgstr "Le changement instantané maximal de vitesse selon lequel le remplissage est imprimé." +msgstr "Indica il cambio della velocità istantanea massima con cui viene stampato il riempimento." #: /fdmprinter.def.json msgctxt "jerk_wall label" msgid "Wall Jerk" -msgstr "Saccade de paroi" +msgstr "Jerk parete" #: /fdmprinter.def.json msgctxt "jerk_wall description" msgid "" "The maximum instantaneous velocity change with which the walls are printed." -msgstr "Le changement instantané maximal de vitesse selon lequel les parois sont imprimées." +msgstr "Indica il cambio della velocità istantanea massima con cui vengono stampate le pareti." #: /fdmprinter.def.json msgctxt "jerk_wall_0 label" msgid "Outer Wall Jerk" -msgstr "Saccade de paroi externe" +msgstr "Jerk parete esterna" #: /fdmprinter.def.json msgctxt "jerk_wall_0 description" msgid "" "The maximum instantaneous velocity change with which the outermost walls are " "printed." -msgstr "Le changement instantané maximal de vitesse selon lequel les parois externes sont imprimées." +msgstr "Indica il cambio della velocità istantanea massima con cui vengono stampate le pareti più esterne." #: /fdmprinter.def.json msgctxt "jerk_wall_x label" msgid "Inner Wall Jerk" -msgstr "Saccade de paroi intérieure" +msgstr "Jerk parete interna" #: /fdmprinter.def.json msgctxt "jerk_wall_x description" msgid "" "The maximum instantaneous velocity change with which all inner walls are " "printed." -msgstr "Le changement instantané maximal de vitesse selon lequel les parois intérieures sont imprimées." +msgstr "Indica il cambio della velocità istantanea massima con cui vengono stampate tutte le pareti interne." #: /fdmprinter.def.json msgctxt "jerk_roofing label" msgid "Top Surface Skin Jerk" -msgstr "Saccade de couches extérieures de la surface supérieure" +msgstr "Jerk del rivestimento superficie superiore" #: /fdmprinter.def.json msgctxt "jerk_roofing description" msgid "" "The maximum instantaneous velocity change with which top surface skin layers " "are printed." -msgstr "Le changement instantané maximal de vitesse selon lequel les couches extérieures de surface supérieure sont imprimées." +msgstr "Indica la variazione di velocità istantanea massima con cui vengono stampati gli strati rivestimento superficie superiore." #: /fdmprinter.def.json msgctxt "jerk_topbottom label" msgid "Top/Bottom Jerk" -msgstr "Saccade du dessus/dessous" +msgstr "Jerk strato superiore/inferiore" #: /fdmprinter.def.json msgctxt "jerk_topbottom description" msgid "" "The maximum instantaneous velocity change with which top/bottom layers are " "printed." -msgstr "Le changement instantané maximal de vitesse selon lequel les couches du dessus/dessous sont imprimées." +msgstr "Indica il cambio della velocità istantanea massima con cui vengono stampati gli strati superiore/inferiore." #: /fdmprinter.def.json msgctxt "jerk_support label" msgid "Support Jerk" -msgstr "Saccade des supports" +msgstr "Jerk supporto" #: /fdmprinter.def.json msgctxt "jerk_support description" msgid "" "The maximum instantaneous velocity change with which the support structure " "is printed." -msgstr "Le changement instantané maximal de vitesse selon lequel la structure de support est imprimée." +msgstr "Indica il cambio della velocità istantanea massima con cui viene stampata la struttura del supporto." #: /fdmprinter.def.json msgctxt "jerk_support_infill label" msgid "Support Infill Jerk" -msgstr "Saccade de remplissage du support" +msgstr "Jerk riempimento supporto" #: /fdmprinter.def.json msgctxt "jerk_support_infill description" msgid "" "The maximum instantaneous velocity change with which the infill of support " "is printed." -msgstr "Le changement instantané maximal de vitesse selon lequel le remplissage de support est imprimé." +msgstr "Indica il cambio della velocità istantanea massima con cui viene stampato il riempimento del supporto." #: /fdmprinter.def.json msgctxt "jerk_support_interface label" msgid "Support Interface Jerk" -msgstr "Saccade de l'interface de support" +msgstr "Jerk interfaccia supporto" #: /fdmprinter.def.json msgctxt "jerk_support_interface description" msgid "" "The maximum instantaneous velocity change with which the roofs and floors of " "support are printed." -msgstr "Le changement instantané maximal de vitesse selon lequel les plafonds et bas sont imprimés." +msgstr "Indica la variazione della velocità istantanea massima con cui vengono stampate le parti superiori e inferiori." #: /fdmprinter.def.json msgctxt "jerk_support_roof label" msgid "Support Roof Jerk" -msgstr "Saccade des plafonds de support" +msgstr "Jerk parte superiore del supporto" #: /fdmprinter.def.json msgctxt "jerk_support_roof description" msgid "" "The maximum instantaneous velocity change with which the roofs of support " "are printed." -msgstr "Le changement instantané maximal de vitesse selon lequel les plafonds de support sont imprimés." +msgstr "Indica la variazione della velocità istantanea massima con cui vengono stampate le parti superiori." #: /fdmprinter.def.json msgctxt "jerk_support_bottom label" msgid "Support Floor Jerk" -msgstr "Saccade des bas de support" +msgstr "Jerk parte inferiore del supporto" #: /fdmprinter.def.json msgctxt "jerk_support_bottom description" msgid "" "The maximum instantaneous velocity change with which the floors of support " "are printed." -msgstr "Le changement instantané maximal de vitesse selon lequel les bas de support sont imprimés." +msgstr "Indica la variazione della velocità istantanea massima con cui vengono stampate le parti inferiori." #: /fdmprinter.def.json msgctxt "jerk_prime_tower label" msgid "Prime Tower Jerk" -msgstr "Saccade de la tour d'amorçage" +msgstr "Jerk della torre di innesco" #: /fdmprinter.def.json msgctxt "jerk_prime_tower description" msgid "" "The maximum instantaneous velocity change with which the prime tower is " "printed." -msgstr "Le changement instantané maximal de vitesse selon lequel la tour d'amorçage est imprimée." +msgstr "Indica il cambio della velocità istantanea massima con cui viene stampata la torre di innesco del supporto." #: /fdmprinter.def.json msgctxt "jerk_travel label" msgid "Travel Jerk" -msgstr "Saccade de déplacement" +msgstr "Jerk spostamenti" #: /fdmprinter.def.json msgctxt "jerk_travel description" msgid "" "The maximum instantaneous velocity change with which travel moves are made." -msgstr "Le changement instantané maximal de vitesse selon lequel les déplacements s'effectuent." +msgstr "Indica il cambio della velocità istantanea massima con cui vengono effettuati gli spostamenti." #: /fdmprinter.def.json msgctxt "jerk_layer_0 label" msgid "Initial Layer Jerk" -msgstr "Saccade de la couche initiale" +msgstr "Jerk dello strato iniziale" #: /fdmprinter.def.json msgctxt "jerk_layer_0 description" msgid "The print maximum instantaneous velocity change for the initial layer." -msgstr "Le changement instantané maximal de vitesse pour la couche initiale." +msgstr "Indica il cambio della velocità istantanea massima dello strato iniziale." #: /fdmprinter.def.json msgctxt "jerk_print_layer_0 label" msgid "Initial Layer Print Jerk" -msgstr "Saccade d’impression de la couche initiale" +msgstr "Jerk di stampa strato iniziale" #: /fdmprinter.def.json msgctxt "jerk_print_layer_0 description" msgid "" "The maximum instantaneous velocity change during the printing of the initial " "layer." -msgstr "Le changement instantané maximal de vitesse durant l'impression de la couche initiale." +msgstr "Indica il cambio della velocità istantanea massima durante la stampa dello strato iniziale." #: /fdmprinter.def.json msgctxt "jerk_travel_layer_0 label" msgid "Initial Layer Travel Jerk" -msgstr "Saccade de déplacement de la couche initiale" +msgstr "Jerk spostamenti dello strato iniziale" #: /fdmprinter.def.json msgctxt "jerk_travel_layer_0 description" msgid "The acceleration for travel moves in the initial layer." -msgstr "L'accélération pour les déplacements dans la couche initiale." +msgstr "Indica l’accelerazione degli spostamenti dello strato iniziale." #: /fdmprinter.def.json msgctxt "jerk_skirt_brim label" msgid "Skirt/Brim Jerk" -msgstr "Saccade de la jupe/bordure" +msgstr "Jerk dello skirt/brim" #: /fdmprinter.def.json msgctxt "jerk_skirt_brim description" msgid "" "The maximum instantaneous velocity change with which the skirt and brim are " "printed." -msgstr "Le changement instantané maximal de vitesse selon lequel la jupe et la bordure sont imprimées." +msgstr "Indica il cambio della velocità istantanea massima con cui vengono stampati lo skirt e il brim." #: /fdmprinter.def.json msgctxt "travel label" msgid "Travel" -msgstr "Déplacement" +msgstr "Spostamenti" #: /fdmprinter.def.json msgctxt "travel description" msgid "travel" -msgstr "déplacement" +msgstr "spostamenti" #: /fdmprinter.def.json msgctxt "retraction_enable label" msgid "Enable Retraction" -msgstr "Activer la rétraction" +msgstr "Abilitazione della retrazione" #: /fdmprinter.def.json msgctxt "retraction_enable description" msgid "Retract the filament when the nozzle is moving over a non-printed area." -msgstr "Rétracte le filament quand la buse se déplace vers une zone non imprimée." +msgstr "Ritrae il filamento quando l'ugello si sta muovendo su un'area non stampata." #: /fdmprinter.def.json msgctxt "retract_at_layer_change label" msgid "Retract at Layer Change" -msgstr "Rétracter au changement de couche" +msgstr "Retrazione al cambio strato" #: /fdmprinter.def.json msgctxt "retract_at_layer_change description" msgid "Retract the filament when the nozzle is moving to the next layer." -msgstr "Rétracter le filament quand le bec se déplace vers la prochaine couche." +msgstr "Ritrae il filamento quando l'ugello si sta muovendo allo strato successivo." #: /fdmprinter.def.json msgctxt "retraction_amount label" msgid "Retraction Distance" -msgstr "Distance de rétraction" +msgstr "Distanza di retrazione" #: /fdmprinter.def.json msgctxt "retraction_amount description" msgid "The length of material retracted during a retraction move." -msgstr "La longueur de matériau rétracté pendant une rétraction." +msgstr "La lunghezza del materiale retratto durante il movimento di retrazione." #: /fdmprinter.def.json msgctxt "retraction_speed label" msgid "Retraction Speed" -msgstr "Vitesse de rétraction" +msgstr "Velocità di retrazione" #: /fdmprinter.def.json msgctxt "retraction_speed description" msgid "" "The speed at which the filament is retracted and primed during a retraction " "move." -msgstr "La vitesse à laquelle le filament est rétracté et préparé pendant une rétraction." +msgstr "Indica la velocità alla quale il filamento viene retratto e preparato durante un movimento di retrazione." #: /fdmprinter.def.json msgctxt "retraction_retract_speed label" msgid "Retraction Retract Speed" -msgstr "Vitesse de rétraction" +msgstr "Velocità di retrazione" #: /fdmprinter.def.json msgctxt "retraction_retract_speed description" msgid "The speed at which the filament is retracted during a retraction move." -msgstr "La vitesse à laquelle le filament est rétracté pendant une rétraction." +msgstr "Indica la velocità alla quale il filamento viene retratto durante un movimento di retrazione." #: /fdmprinter.def.json msgctxt "retraction_prime_speed label" msgid "Retraction Prime Speed" -msgstr "Vitesse de rétraction d'amorçage" +msgstr "Velocità di innesco dopo la retrazione" #: /fdmprinter.def.json msgctxt "retraction_prime_speed description" msgid "The speed at which the filament is primed during a retraction move." -msgstr "La vitesse à laquelle le filament est préparé pendant une rétraction." +msgstr "Indica la velocità alla quale il filamento viene preparato durante un movimento di retrazione." #: /fdmprinter.def.json msgctxt "retraction_extra_prime_amount label" msgid "Retraction Extra Prime Amount" -msgstr "Volume supplémentaire à l'amorçage" +msgstr "Entità di innesco supplementare dopo la retrazione" #: /fdmprinter.def.json msgctxt "retraction_extra_prime_amount description" msgid "" "Some material can ooze away during a travel move, which can be compensated " "for here." -msgstr "Du matériau peut suinter pendant un déplacement, ce qui peut être compensé ici." +msgstr "Qui è possibile compensare l’eventuale trafilamento di materiale che può verificarsi durante uno spostamento." #: /fdmprinter.def.json msgctxt "retraction_min_travel label" msgid "Retraction Minimum Travel" -msgstr "Déplacement minimal de rétraction" +msgstr "Distanza minima di retrazione" #: /fdmprinter.def.json msgctxt "retraction_min_travel description" msgid "" "The minimum distance of travel needed for a retraction to happen at all. " "This helps to get fewer retractions in a small area." -msgstr "La distance minimale de déplacement nécessaire pour qu’une rétraction ait lieu. Cela permet d’éviter qu’un grand nombre de rétractions ne se produisent" -" sur une petite portion." +msgstr "Determina la distanza minima necessaria affinché avvenga una retrazione. Questo consente di avere un minor numero di retrazioni in piccole aree." #: /fdmprinter.def.json msgctxt "retraction_count_max label" msgid "Maximum Retraction Count" -msgstr "Nombre maximal de rétractions" +msgstr "Numero massimo di retrazioni" #: /fdmprinter.def.json msgctxt "retraction_count_max description" @@ -4006,13 +4013,14 @@ msgid "" "extrusion distance window. Further retractions within this window will be " "ignored. This avoids retracting repeatedly on the same piece of filament, as " "that can flatten the filament and cause grinding issues." -msgstr "Ce paramètre limite le nombre de rétractions dans l'intervalle de distance minimal d'extrusion. Les rétractions qui dépassent cette valeur seront ignorées." -" Cela évite les rétractions répétitives sur le même morceau de filament, car cela risque de l’aplatir et de générer des problèmes d’écrasement." +msgstr "Questa impostazione limita il numero di retrazioni previste all'interno della finestra di minima distanza di estrusione. Ulteriori retrazioni nell'ambito" +" di questa finestra saranno ignorate. Questo evita di eseguire ripetute retrazioni sullo stesso pezzo di filamento, onde evitarne l'appiattimento e conseguenti" +" problemi di deformazione." #: /fdmprinter.def.json msgctxt "retraction_extrusion_window label" msgid "Minimum Extrusion Distance Window" -msgstr "Intervalle de distance minimale d'extrusion" +msgstr "Finestra di minima distanza di estrusione" #: /fdmprinter.def.json msgctxt "retraction_extrusion_window description" @@ -4021,13 +4029,13 @@ msgid "" "should be approximately the same as the retraction distance, so that " "effectively the number of times a retraction passes the same patch of " "material is limited." -msgstr "L'intervalle dans lequel le nombre maximal de rétractions est incrémenté. Cette valeur doit être du même ordre de grandeur que la distance de rétraction," -" limitant ainsi le nombre de mouvements de rétraction sur une même portion de matériau." +msgstr "La finestra in cui è impostato il massimo numero di retrazioni. Questo valore deve corrispondere all'incirca alla distanza di retrazione, in modo da limitare" +" effettivamente il numero di volte che una retrazione interessa lo stesso spezzone di materiale." #: /fdmprinter.def.json msgctxt "limit_support_retractions label" msgid "Limit Support Retractions" -msgstr "Limiter les rétractations du support" +msgstr "Limitazione delle retrazioni del supporto" #: /fdmprinter.def.json msgctxt "limit_support_retractions description" @@ -4035,13 +4043,13 @@ msgid "" "Omit retraction when moving from support to support in a straight line. " "Enabling this setting saves print time, but can lead to excessive stringing " "within the support structure." -msgstr "Omettre la rétraction lors du passage entre supports en ligne droite. L'activation de ce paramètre permet de gagner du temps lors de l'impression, mais" -" peut conduire à un stringing excessif à l'intérieur de la structure de support." +msgstr "Omettere la retrazione negli spostamenti da un supporto ad un altro in linea retta. L'abilitazione di questa impostazione riduce il tempo di stampa, ma" +" può comportare un'eccessiva produzione di filamenti all'interno della struttura del supporto." #: /fdmprinter.def.json msgctxt "retraction_combing label" msgid "Combing Mode" -msgstr "Mode de détours" +msgstr "Modalità Combing" #: /fdmprinter.def.json msgctxt "retraction_combing description" @@ -4051,39 +4059,40 @@ msgid "" "retractions. If combing is off, the material will retract and the nozzle " "moves in a straight line to the next point. It is also possible to avoid " "combing over top/bottom skin areas or to only comb within the infill." -msgstr "Les détours maintiennent la buse dans les zones déjà imprimées lors des déplacements. Cela résulte en des déplacements légèrement plus longs mais réduit" -" le recours aux rétractions. Si les détours sont désactivés, le matériau se rétractera et la buse se déplacera en ligne droite jusqu'au point suivant." -" Il est également possible d'éviter les détours sur les zones de la couche du dessus / dessous ou d'effectuer les détours uniquement dans le remplissage." +msgstr "La funzione Combing tiene l’ugello all’interno delle aree già stampate durante lo spostamento. In tal modo le corse di spostamento sono leggermente più" +" lunghe ma si riduce l’esigenza di effettuare retrazioni. Se questa funzione viene disabilitata, il materiale viene retratto e l’ugello si sposta in linea" +" retta al punto successivo. È anche possibile evitare il combing sopra le aree del rivestimento esterno superiore/inferiore o effettuare il combing solo" +" nel riempimento." #: /fdmprinter.def.json msgctxt "retraction_combing option off" msgid "Off" -msgstr "Désactivé" +msgstr "Disinserita" #: /fdmprinter.def.json msgctxt "retraction_combing option all" msgid "All" -msgstr "Tout" +msgstr "Tutto" #: /fdmprinter.def.json msgctxt "retraction_combing option no_outer_surfaces" msgid "Not on Outer Surface" -msgstr "Pas sur la surface extérieure" +msgstr "Non su superficie esterna" #: /fdmprinter.def.json msgctxt "retraction_combing option noskin" msgid "Not in Skin" -msgstr "Pas dans la couche extérieure" +msgstr "Non nel rivestimento" #: /fdmprinter.def.json msgctxt "retraction_combing option infill" msgid "Within Infill" -msgstr "À l'intérieur du remplissage" +msgstr "Nel riempimento" #: /fdmprinter.def.json msgctxt "retraction_combing_max_distance label" msgid "Max Comb Distance With No Retract" -msgstr "Distance de détour max. sans rétraction" +msgstr "Massima distanza di combing senza retrazione" #: /fdmprinter.def.json msgctxt "retraction_combing_max_distance description" @@ -4091,83 +4100,83 @@ msgid "" "When greater than zero, combing travel moves that are longer than this " "distance will use retraction. If set to zero, there is no maximum and " "combing moves will not use retraction." -msgstr "Lorsque cette distance est supérieure à zéro, les déplacements de détour qui sont plus longs que cette distance utiliseront la rétraction. Si elle est" -" définie sur zéro, il n'y a pas de maximum et les mouvements de détour n'utiliseront pas la rétraction." +msgstr "Per un valore superiore a zero, le corse di spostamento in modalità combing superiori a tale distanza utilizzeranno la retrazione. Se il valore impostato" +" è zero, non è presente un valore massimo e le corse in modalità combing non utilizzeranno la retrazione." #: /fdmprinter.def.json msgctxt "travel_retract_before_outer_wall label" msgid "Retract Before Outer Wall" -msgstr "Rétracter avant la paroi externe" +msgstr "Retrazione prima della parete esterna" #: /fdmprinter.def.json msgctxt "travel_retract_before_outer_wall description" msgid "Always retract when moving to start an outer wall." -msgstr "Toujours rétracter lors du déplacement pour commencer une paroi externe." +msgstr "Arretra sempre quando si sposta per iniziare una parete esterna." #: /fdmprinter.def.json msgctxt "travel_avoid_other_parts label" msgid "Avoid Printed Parts When Traveling" -msgstr "Éviter les pièces imprimées lors du déplacement" +msgstr "Aggiramento delle parti stampate durante gli spostamenti" #: /fdmprinter.def.json msgctxt "travel_avoid_other_parts description" msgid "" "The nozzle avoids already printed parts when traveling. This option is only " "available when combing is enabled." -msgstr "La buse contourne les pièces déjà imprimées lorsqu'elle se déplace. Cette option est disponible uniquement lorsque les détours sont activés." +msgstr "Durante lo spostamento l’ugello evita le parti già stampate. Questa opzione è disponibile solo quando è abilitata la funzione Combing." #: /fdmprinter.def.json msgctxt "travel_avoid_supports label" msgid "Avoid Supports When Traveling" -msgstr "Éviter les supports lors du déplacement" +msgstr "Aggiramento dei supporti durante gli spostamenti" #: /fdmprinter.def.json msgctxt "travel_avoid_supports description" msgid "" "The nozzle avoids already printed supports when traveling. This option is " "only available when combing is enabled." -msgstr "La buse contourne les supports déjà imprimés lorsqu'elle se déplace. Cette option est disponible uniquement lorsque les détours sont activés." +msgstr "Durante lo spostamento l'ugello evita i supporti già stampati. Questa opzione è disponibile solo quando è abilitata la funzione combing." #: /fdmprinter.def.json msgctxt "travel_avoid_distance label" msgid "Travel Avoid Distance" -msgstr "Distance d'évitement du déplacement" +msgstr "Distanza di aggiramento durante gli spostamenti" #: /fdmprinter.def.json msgctxt "travel_avoid_distance description" msgid "" "The distance between the nozzle and already printed parts when avoiding " "during travel moves." -msgstr "La distance entre la buse et les pièces déjà imprimées lors du contournement pendant les déplacements." +msgstr "La distanza tra l’ugello e le parti già stampate quando si effettua lo spostamento con aggiramento." #: /fdmprinter.def.json msgctxt "layer_start_x label" msgid "Layer Start X" -msgstr "X début couche" +msgstr "Avvio strato X" #: /fdmprinter.def.json msgctxt "layer_start_x description" msgid "" "The X coordinate of the position near where to find the part to start " "printing each layer." -msgstr "Coordonnée X de la position près de laquelle trouver la partie pour démarrer l'impression de chaque couche." +msgstr "La coordinata X della posizione in prossimità della quale si trova la parte per avviare la stampa di ciascuno strato." #: /fdmprinter.def.json msgctxt "layer_start_y label" msgid "Layer Start Y" -msgstr "Y début couche" +msgstr "Avvio strato Y" #: /fdmprinter.def.json msgctxt "layer_start_y description" msgid "" "The Y coordinate of the position near where to find the part to start " "printing each layer." -msgstr "Coordonnée Y de la position près de laquelle trouver la partie pour démarrer l'impression de chaque couche." +msgstr "La coordinata Y della posizione in prossimità della quale si trova la parte per avviare la stampa di ciascuno strato." #: /fdmprinter.def.json msgctxt "retraction_hop_enabled label" msgid "Z Hop When Retracted" -msgstr "Décalage en Z lors d’une rétraction" +msgstr "Z Hop durante la retrazione" #: /fdmprinter.def.json msgctxt "retraction_hop_enabled description" @@ -4176,36 +4185,36 @@ msgid "" "clearance between the nozzle and the print. It prevents the nozzle from " "hitting the print during travel moves, reducing the chance to knock the " "print from the build plate." -msgstr "À chaque rétraction, le plateau est abaissé pour créer un espace entre la buse et l'impression. Cela évite que la buse ne touche l'impression pendant les" -" déplacements, réduisant ainsi le risque de heurter l'impression à partir du plateau." +msgstr "Ogniqualvolta avviene una retrazione, il piano di stampa viene abbassato per creare uno spazio tra l’ugello e la stampa. Previene l’urto dell’ugello sulla" +" stampa durante gli spostamenti riducendo la possibilità di far cadere la stampa dal piano." #: /fdmprinter.def.json msgctxt "retraction_hop_only_when_collides label" msgid "Z Hop Only Over Printed Parts" -msgstr "Décalage en Z uniquement sur les pièces imprimées" +msgstr "Z Hop solo su parti stampate" #: /fdmprinter.def.json msgctxt "retraction_hop_only_when_collides description" msgid "" "Only perform a Z Hop when moving over printed parts which cannot be avoided " "by horizontal motion by Avoid Printed Parts when Traveling." -msgstr "Appliquer un décalage en Z uniquement lors du mouvement au-dessus de pièces imprimées qui ne peuvent être évitées par le mouvement horizontal, via Éviter" -" les pièces imprimées lors du déplacement." +msgstr "Esegue solo uno Z Hop quando si sposta sopra le parti stampate che non possono essere evitate mediante uno spostamento orizzontale con Aggiramento delle" +" parti stampate durante lo spostamento." #: /fdmprinter.def.json msgctxt "retraction_hop label" msgid "Z Hop Height" -msgstr "Hauteur du décalage en Z" +msgstr "Altezza Z Hop" #: /fdmprinter.def.json msgctxt "retraction_hop description" msgid "The height difference when performing a Z Hop." -msgstr "La différence de hauteur lors de la réalisation d'un décalage en Z." +msgstr "La differenza di altezza durante l’esecuzione di uno Z Hop." #: /fdmprinter.def.json msgctxt "retraction_hop_after_extruder_switch label" msgid "Z Hop After Extruder Switch" -msgstr "Décalage en Z après changement d'extrudeuse" +msgstr "Z Hop dopo cambio estrusore" #: /fdmprinter.def.json msgctxt "retraction_hop_after_extruder_switch description" @@ -4213,56 +4222,55 @@ msgid "" "After the machine switched from one extruder to the other, the build plate " "is lowered to create clearance between the nozzle and the print. This " "prevents the nozzle from leaving oozed material on the outside of a print." -msgstr "Une fois que la machine est passée d'une extrudeuse à l'autre, le plateau s'abaisse pour créer un dégagement entre la buse et l'impression. Cela évite" -" que la buse ne ressorte avec du matériau suintant sur l'extérieur d'une impression." +msgstr "Dopo il passaggio della macchina da un estrusore all’altro, il piano di stampa viene abbassato per creare uno spazio tra l’ugello e la stampa. In tal modo" +" si previene il rilascio di materiale fuoriuscito dall’ugello sull’esterno di una stampa." #: /fdmprinter.def.json msgctxt "retraction_hop_after_extruder_switch_height label" msgid "Z Hop After Extruder Switch Height" -msgstr "Décalage en Z après changement de hauteur d'extrudeuse" +msgstr "Z Hop dopo cambio altezza estrusore" #: /fdmprinter.def.json msgctxt "retraction_hop_after_extruder_switch_height description" msgid "The height difference when performing a Z Hop after extruder switch." -msgstr "La différence de hauteur lors de la réalisation d'un décalage en Z après changement d'extrudeuse." +msgstr "La differenza di altezza durante l'esecuzione di uno Z Hop dopo il cambio dell'estrusore." #: /fdmprinter.def.json msgctxt "cooling label" msgid "Cooling" -msgstr "Refroidissement" +msgstr "Raffreddamento" #: /fdmprinter.def.json msgctxt "cooling description" msgid "Cooling" -msgstr "Refroidissement" +msgstr "Raffreddamento" #: /fdmprinter.def.json msgctxt "cool_fan_enabled label" msgid "Enable Print Cooling" -msgstr "Activer le refroidissement de l'impression" +msgstr "Abilitazione raffreddamento stampa" #: /fdmprinter.def.json msgctxt "cool_fan_enabled description" msgid "" "Enables the print cooling fans while printing. The fans improve print " "quality on layers with short layer times and bridging / overhangs." -msgstr "Active les ventilateurs de refroidissement de l'impression pendant l'impression. Les ventilateurs améliorent la qualité de l'impression sur les couches" -" présentant des durées de couche courtes et des ponts / porte-à-faux." +msgstr "Abilita le ventole di raffreddamento durante la stampa. Le ventole migliorano la qualità di stampa sugli strati con tempi per strato più brevi e ponti/sbalzi." #: /fdmprinter.def.json msgctxt "cool_fan_speed label" msgid "Fan Speed" -msgstr "Vitesse du ventilateur" +msgstr "Velocità della ventola" #: /fdmprinter.def.json msgctxt "cool_fan_speed description" msgid "The speed at which the print cooling fans spin." -msgstr "La vitesse à laquelle les ventilateurs de refroidissement de l'impression tournent." +msgstr "Indica la velocità di rotazione delle ventole di raffreddamento stampa." #: /fdmprinter.def.json msgctxt "cool_fan_speed_min label" msgid "Regular Fan Speed" -msgstr "Vitesse régulière du ventilateur" +msgstr "Velocità regolare della ventola" #: /fdmprinter.def.json msgctxt "cool_fan_speed_min description" @@ -4270,13 +4278,13 @@ msgid "" "The speed at which the fans spin before hitting the threshold. When a layer " "prints faster than the threshold, the fan speed gradually inclines towards " "the maximum fan speed." -msgstr "La vitesse à laquelle les ventilateurs tournent avant d'atteindre la limite. Lorsqu'une couche s'imprime plus rapidement que la limite, la vitesse du ventilateur" -" augmente progressivement jusqu'à atteindre la vitesse maximale." +msgstr "Indica la velocità alla quale ruotano le ventole prima di raggiungere la soglia. Quando uno strato viene stampato a una velocità superiore alla soglia," +" la velocità della ventola tende gradualmente verso la velocità massima della ventola." #: /fdmprinter.def.json msgctxt "cool_fan_speed_max label" msgid "Maximum Fan Speed" -msgstr "Vitesse maximale du ventilateur" +msgstr "Velocità massima della ventola" #: /fdmprinter.def.json msgctxt "cool_fan_speed_max description" @@ -4284,13 +4292,13 @@ msgid "" "The speed at which the fans spin on the minimum layer time. The fan speed " "gradually increases between the regular fan speed and maximum fan speed when " "the threshold is hit." -msgstr "La vitesse à laquelle les ventilateurs tournent sur la durée minimale d'une couche. La vitesse du ventilateur augmente progressivement entre la vitesse" -" régulière du ventilateur et la vitesse maximale lorsque la limite est atteinte." +msgstr "Indica la velocità di rotazione della ventola al tempo minimo per strato. La velocità della ventola aumenta gradualmente tra la velocità regolare della" +" ventola e la velocità massima della ventola quando viene raggiunta la soglia." #: /fdmprinter.def.json msgctxt "cool_min_layer_time_fan_speed_max label" msgid "Regular/Maximum Fan Speed Threshold" -msgstr "Limite de vitesse régulière/maximale du ventilateur" +msgstr "Soglia velocità regolare/massima della ventola" #: /fdmprinter.def.json msgctxt "cool_min_layer_time_fan_speed_max description" @@ -4299,14 +4307,14 @@ msgid "" "maximum fan speed. Layers that print slower than this time use regular fan " "speed. For faster layers the fan speed gradually increases towards the " "maximum fan speed." -msgstr "La durée de couche qui définit la limite entre la vitesse régulière et la vitesse maximale du ventilateur. Les couches qui s'impriment moins vite que cette" -" durée utilisent la vitesse régulière du ventilateur. Pour les couches plus rapides, la vitesse du ventilateur augmente progressivement jusqu'à atteindre" -" la vitesse maximale." +msgstr "Indica il tempo per strato che definisce la soglia tra la velocità regolare e quella massima della ventola. Gli strati che vengono stampati a una velocità" +" inferiore a questo valore utilizzano una velocità regolare della ventola. Per gli strati stampati più velocemente la velocità della ventola aumenta gradualmente" +" verso la velocità massima della ventola." #: /fdmprinter.def.json msgctxt "cool_fan_speed_0 label" msgid "Initial Fan Speed" -msgstr "Vitesse des ventilateurs initiale" +msgstr "Velocità iniziale della ventola" #: /fdmprinter.def.json msgctxt "cool_fan_speed_0 description" @@ -4314,13 +4322,13 @@ msgid "" "The speed at which the fans spin at the start of the print. In subsequent " "layers the fan speed is gradually increased up to the layer corresponding to " "Regular Fan Speed at Height." -msgstr "Vitesse à laquelle les ventilateurs tournent au début de l'impression. Pour les couches suivantes, la vitesse des ventilateurs augmente progressivement" -" jusqu'à la couche qui correspond à la vitesse régulière des ventilateurs en hauteur." +msgstr "La velocità di rotazione della ventola all’inizio della stampa. Negli strati successivi la velocità della ventola aumenta gradualmente da zero fino allo" +" strato corrispondente alla velocità regolare in altezza." #: /fdmprinter.def.json msgctxt "cool_fan_full_at_height label" msgid "Regular Fan Speed at Height" -msgstr "Vitesse régulière du ventilateur à la hauteur" +msgstr "Velocità regolare della ventola in altezza" #: /fdmprinter.def.json msgctxt "cool_fan_full_at_height description" @@ -4328,26 +4336,26 @@ msgid "" "The height at which the fans spin on regular fan speed. At the layers below " "the fan speed gradually increases from Initial Fan Speed to Regular Fan " "Speed." -msgstr "Hauteur à laquelle les ventilateurs tournent à la vitesse régulière. Pour les couches situées en-dessous, la vitesse des ventilateurs augmente progressivement" -" de la vitesse des ventilateurs initiale jusqu'à la vitesse régulière." +msgstr "Indica l’altezza alla quale la ventola ruota alla velocità regolare. Agli strati stampati a velocità inferiore la velocità della ventola aumenta gradualmente" +" dalla velocità iniziale a quella regolare." #: /fdmprinter.def.json msgctxt "cool_fan_full_layer label" msgid "Regular Fan Speed at Layer" -msgstr "Vitesse régulière du ventilateur à la couche" +msgstr "Velocità regolare della ventola in corrispondenza dello strato" #: /fdmprinter.def.json msgctxt "cool_fan_full_layer description" msgid "" "The layer at which the fans spin on regular fan speed. If regular fan speed " "at height is set, this value is calculated and rounded to a whole number." -msgstr "La couche à laquelle les ventilateurs tournent à la vitesse régulière. Si la vitesse régulière du ventilateur à la hauteur est définie, cette valeur est" -" calculée et arrondie à un nombre entier." +msgstr "Indica lo strato in corrispondenza del quale la ventola ruota alla velocità regolare. Se è impostata la velocità regolare in altezza, questo valore viene" +" calcolato e arrotondato a un numero intero." #: /fdmprinter.def.json msgctxt "cool_min_layer_time label" msgid "Minimum Layer Time" -msgstr "Durée minimale d’une couche" +msgstr "Tempo minimo per strato" #: /fdmprinter.def.json msgctxt "cool_min_layer_time description" @@ -4357,14 +4365,14 @@ msgid "" "material to cool down properly before printing the next layer. Layers may " "still take shorter than the minimal layer time if Lift Head is disabled and " "if the Minimum Speed would otherwise be violated." -msgstr "Temps minimum passé sur une couche. Cela force l'imprimante à ralentir afin de passer au minimum la durée définie ici sur une couche. Cela permet au matériau" -" imprimé de refroidir correctement avant l'impression de la couche suivante. Les couches peuvent néanmoins prendre moins de temps que le temps de couche" -" minimum si « Lift Head  » (Relever Tête) est désactivé et si la vitesse minimum serait autrement non respectée." +msgstr "Indica il tempo minimo dedicato a uno strato. Questo forza la stampante a rallentare, per impiegare almeno il tempo impostato qui per uno strato. Questo" +" consente il corretto raffreddamento del materiale stampato prima di procedere alla stampa dello strato successivo. La stampa degli strati potrebbe richiedere" +" un tempo inferiore al minimo se la funzione Sollevamento della testina è disabilitata e se la velocità minima non viene rispettata." #: /fdmprinter.def.json msgctxt "cool_min_speed label" msgid "Minimum Speed" -msgstr "Vitesse minimale" +msgstr "Velocità minima" #: /fdmprinter.def.json msgctxt "cool_min_speed description" @@ -4372,13 +4380,13 @@ msgid "" "The minimum print speed, despite slowing down due to the minimum layer time. " "When the printer would slow down too much, the pressure in the nozzle would " "be too low and result in bad print quality." -msgstr "La vitesse minimale d'impression, malgré le ralentissement dû à la durée minimale d'une couche. Si l'imprimante devait trop ralentir, la pression au niveau" -" de la buse serait trop faible, ce qui résulterait en une mauvaise qualité d'impression." +msgstr "Indica la velocità minima di stampa, a prescindere dal rallentamento per il tempo minimo per strato. Quando la stampante rallenta eccessivamente, la pressione" +" nell’ugello risulta insufficiente con conseguente scarsa qualità di stampa." #: /fdmprinter.def.json msgctxt "cool_lift_head label" msgid "Lift Head" -msgstr "Relever la tête" +msgstr "Sollevamento della testina" #: /fdmprinter.def.json msgctxt "cool_lift_head description" @@ -4386,107 +4394,107 @@ msgid "" "When the minimum speed is hit because of minimum layer time, lift the head " "away from the print and wait the extra time until the minimum layer time is " "reached." -msgstr "Lorsque la vitesse minimale est atteinte à cause de la durée minimale d'une couche, relève la tête de l'impression et attend que la durée supplémentaire" -" jusqu'à la durée minimale d'une couche soit atteinte." +msgstr "Quando viene raggiunta la velocità minima per il tempo minimo per strato, sollevare la testina dalla stampa e attendere il tempo supplementare fino al" +" raggiungimento del valore per tempo minimo per strato." #: /fdmprinter.def.json msgctxt "support label" msgid "Support" -msgstr "Supports" +msgstr "Supporto" #: /fdmprinter.def.json msgctxt "support description" msgid "Support" -msgstr "Supports" +msgstr "Supporto" #: /fdmprinter.def.json msgctxt "support_enable label" msgid "Generate Support" -msgstr "Générer les supports" +msgstr "Generazione supporto" #: /fdmprinter.def.json msgctxt "support_enable description" msgid "" "Generate structures to support parts of the model which have overhangs. " "Without these structures, such parts would collapse during printing." -msgstr "Générer des structures pour soutenir les parties du modèle qui possèdent des porte-à-faux. Sans ces structures, ces parties s'effondreront durant l'impression." +msgstr "Genera strutture per supportare le parti del modello a sbalzo. Senza queste strutture, queste parti collasserebbero durante la stampa." #: /fdmprinter.def.json msgctxt "support_extruder_nr label" msgid "Support Extruder" -msgstr "Extrudeuse de support" +msgstr "Estrusore del supporto" #: /fdmprinter.def.json msgctxt "support_extruder_nr description" msgid "" "The extruder train to use for printing the support. This is used in multi-" "extrusion." -msgstr "Le train d'extrudeuse à utiliser pour l'impression du support. Cela est utilisé en multi-extrusion." +msgstr "Il treno estrusore utilizzato per la stampa del supporto. Utilizzato nell’estrusione multipla." #: /fdmprinter.def.json msgctxt "support_infill_extruder_nr label" msgid "Support Infill Extruder" -msgstr "Extrudeuse de remplissage du support" +msgstr "Estrusore riempimento del supporto" #: /fdmprinter.def.json msgctxt "support_infill_extruder_nr description" msgid "" "The extruder train to use for printing the infill of the support. This is " "used in multi-extrusion." -msgstr "Le train d'extrudeuse à utiliser pour l'impression du remplissage du support. Cela est utilisé en multi-extrusion." +msgstr "Il treno estrusore utilizzato per la stampa del riempimento del supporto. Utilizzato nell’estrusione multipla." #: /fdmprinter.def.json msgctxt "support_extruder_nr_layer_0 label" msgid "First Layer Support Extruder" -msgstr "Extrudeuse de support de la première couche" +msgstr "Estrusore del supporto primo strato" #: /fdmprinter.def.json msgctxt "support_extruder_nr_layer_0 description" msgid "" "The extruder train to use for printing the first layer of support infill. " "This is used in multi-extrusion." -msgstr "Le train d'extrudeuse à utiliser pour l'impression de la première couche de remplissage du support. Cela est utilisé en multi-extrusion." +msgstr "Il treno estrusore utilizzato per la stampa del primo strato del riempimento del supporto. Utilizzato nell’estrusione multipla." #: /fdmprinter.def.json msgctxt "support_interface_extruder_nr label" msgid "Support Interface Extruder" -msgstr "Extrudeuse de l'interface du support" +msgstr "Estrusore interfaccia del supporto" #: /fdmprinter.def.json msgctxt "support_interface_extruder_nr description" msgid "" "The extruder train to use for printing the roofs and floors of the support. " "This is used in multi-extrusion." -msgstr "Le train d'extrudeuse à utiliser pour l'impression des plafonds et bas du support. Cela est utilisé en multi-extrusion." +msgstr "Treno estrusore utilizzato per la stampa delle parti superiori e inferiori del supporto. Utilizzato nell’estrusione multipla." #: /fdmprinter.def.json msgctxt "support_roof_extruder_nr label" msgid "Support Roof Extruder" -msgstr "Extrudeuse des plafonds de support" +msgstr "Estrusore parte superiore del supporto" #: /fdmprinter.def.json msgctxt "support_roof_extruder_nr description" msgid "" "The extruder train to use for printing the roofs of the support. This is " "used in multi-extrusion." -msgstr "Le train d'extrudeuse à utiliser pour l'impression des plafonds du support. Cela est utilisé en multi-extrusion." +msgstr "Treno estrusore utilizzato per la stampa delle parti superiori del supporto. Utilizzato nell’estrusione multipla." #: /fdmprinter.def.json msgctxt "support_bottom_extruder_nr label" msgid "Support Floor Extruder" -msgstr "Extrudeuse des bas de support" +msgstr "Estrusore parte inferiore del supporto" #: /fdmprinter.def.json msgctxt "support_bottom_extruder_nr description" msgid "" "The extruder train to use for printing the floors of the support. This is " "used in multi-extrusion." -msgstr "Le train d'extrudeuse à utiliser pour l'impression des bas du support. Cela est utilisé en multi-extrusion." +msgstr "Treno estrusore utilizzato per la stampa delle parti inferiori del supporto. Utilizzato nell’estrusione multipla." #: /fdmprinter.def.json msgctxt "support_structure label" msgid "Support Structure" -msgstr "Structure du support" +msgstr "Struttura di supporto" #: /fdmprinter.def.json msgctxt "support_structure description" @@ -4497,36 +4505,36 @@ msgid "" "the overhanging areas that support the model on the tips of those branches, " "and allows the branches to crawl around the model to support it from the " "build plate as much as possible." -msgstr "Choisit entre les techniques disponibles pour générer un support. Le support « Normal » créer une structure de support directement sous les pièces en porte-à-faux" -" et fait descendre ces zones directement vers le bas. Le support « Arborescent » crée des branches vers les zones en porte-à-faux qui supportent le modèle" -" à l'extrémité de ces branches et permet aux branches de ramper autour du modèle afin de les supporter le plus possible sur le plateau de fabrication." +msgstr "Scegliere tra le tecniche disponibili per generare il supporto. Il supporto \"normale\" crea una struttura di supporto direttamente sotto le parti di sbalzo" +" e rilascia tali aree direttamente al di sotto. La struttura \"ad albero\" crea delle ramificazioni verso le aree di sbalzo che supportano il modello sulle" +" punte di tali ramificazioni consentendo a queste ultime di avanzare intorno al modello per supportarlo il più possibile dal piano di stampa." #: /fdmprinter.def.json msgctxt "support_structure option normal" msgid "Normal" -msgstr "Normal" +msgstr "Normale" #: /fdmprinter.def.json msgctxt "support_structure option tree" msgid "Tree" -msgstr "Arborescence" +msgstr "Albero" #: /fdmprinter.def.json msgctxt "support_tree_angle label" msgid "Tree Support Branch Angle" -msgstr "Angle des branches de support arborescent" +msgstr "Angolo ramo supporto ad albero" #: /fdmprinter.def.json msgctxt "support_tree_angle description" msgid "" "The angle of the branches. Use a lower angle to make them more vertical and " "more stable. Use a higher angle to be able to have more reach." -msgstr "Angle des branches. Utilisez un angle plus faible pour les rendre plus verticales et plus stables ; utilisez un angle plus élevé pour avoir plus de portée." +msgstr "L’angolo dei rami. Utilizzare un angolo minore per renderli più verticali e più stabili. Utilizzare un angolo maggiore per avere una portata maggiore." #: /fdmprinter.def.json msgctxt "support_tree_branch_distance label" msgid "Tree Support Branch Distance" -msgstr "Distance des branches de support arborescent" +msgstr "Distanza ramo supporto ad albero" #: /fdmprinter.def.json msgctxt "support_tree_branch_distance description" @@ -4534,39 +4542,38 @@ msgid "" "How far apart the branches need to be when they touch the model. Making this " "distance small will cause the tree support to touch the model at more " "points, causing better overhang but making support harder to remove." -msgstr "Distance à laquelle doivent se trouver les branches lorsqu'elles touchent le modèle. Si vous réduisez cette distance, le support arborescent touchera le" -" modèle à plus d'endroits, ce qui causera un meilleur porte-à-faux mais rendra le support plus difficile à enlever." +msgstr "La distanza tra i rami necessaria quando toccano il modello. Una distanza ridotta causa il contatto del supporto ad albero con il modello in più punti," +" generando migliore sovrapposizione ma rendendo più difficoltosa la rimozione del supporto." #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter label" msgid "Tree Support Branch Diameter" -msgstr "Diamètre des branches de support arborescent" +msgstr "Diametro ramo supporto ad albero" #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter description" msgid "" "The diameter of the thinnest branches of tree support. Thicker branches are " "more sturdy. Branches towards the base will be thicker than this." -msgstr "Diamètre des branches les plus minces du support arborescent. Plus les branches sont épaisses, plus elles sont robustes ; les branches proches de la base" -" seront plus épaisses que cette valeur." +msgstr "Il diametro dei rami più sottili del supporto. I rami più spessi sono più resistenti. I rami verso la base avranno spessore maggiore." #: /fdmprinter.def.json msgctxt "support_tree_max_diameter label" msgid "Tree Support Trunk Diameter" -msgstr "Diamètre du tronc du support arborescent" +msgstr "Diametro del tronco di supporto ad albero" #: /fdmprinter.def.json msgctxt "support_tree_max_diameter description" msgid "" "The diameter of the widest branches of tree support. A thicker trunk is more " "sturdy; a thinner trunk takes up less space on the build plate." -msgstr "Diamètre des branches les plus larges du support arborescent. Un tronc plus épais est plus robuste ; un tronc plus fin prend moins de place sur le plateau" -" de fabrication." +msgstr "Il diametro dei rami più spessi del supporto ad albero. Un tronco più spesso è più resistente, mentre uno più sottile occuperà meno spazio sul piano di" +" stampa." #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter_angle label" msgid "Tree Support Branch Diameter Angle" -msgstr "Angle de diamètre des branches de support arborescent" +msgstr "Angolo diametro ramo supporto ad albero" #: /fdmprinter.def.json msgctxt "support_tree_branch_diameter_angle description" @@ -4575,13 +4582,13 @@ msgid "" "the bottom. An angle of 0 will cause the branches to have uniform thickness " "over their length. A bit of an angle can increase stability of the tree " "support." -msgstr "Angle du diamètre des branches au fur et à mesure qu'elles s'épaississent lorsqu'elles sont proches du fond. Avec un angle de 0°, les branches auront une" -" épaisseur uniforme sur toute leur longueur. Donner un peu d'angle permet d'augmenter la stabilité du support arborescent." +msgstr "L’angolo del diametro dei rami con il graduale ispessimento verso il fondo. Un angolo pari a 0 genera rami con spessore uniforme sull’intera lunghezza." +" Un angolo minimo può aumentare la stabilità del supporto ad albero." #: /fdmprinter.def.json msgctxt "support_tree_collision_resolution label" msgid "Tree Support Collision Resolution" -msgstr "Résolution de collision du support arborescent" +msgstr "Risoluzione collisione supporto ad albero" #: /fdmprinter.def.json msgctxt "support_tree_collision_resolution description" @@ -4589,13 +4596,13 @@ msgid "" "Resolution to compute collisions with to avoid hitting the model. Setting " "this lower will produce more accurate trees that fail less often, but " "increases slicing time dramatically." -msgstr "Résolution servant à calculer les collisions afin d'éviter de heurter le modèle. Plus ce paramètre est faible, plus les arborescences seront précises et" -" stables, mais cela augmente considérablement le temps de découpage." +msgstr "Risoluzione per calcolare le collisioni per evitare di colpire il modello. L’impostazione a un valore basso genera alberi più accurati che si rompono meno" +" sovente, ma aumenta notevolmente il tempo di sezionamento." #: /fdmprinter.def.json msgctxt "support_type label" msgid "Support Placement" -msgstr "Positionnement des supports" +msgstr "Posizionamento supporto" #: /fdmprinter.def.json msgctxt "support_type description" @@ -4603,63 +4610,63 @@ msgid "" "Adjusts the placement of the support structures. The placement can be set to " "touching build plate or everywhere. When set to everywhere the support " "structures will also be printed on the model." -msgstr "Ajuste le positionnement des supports. Le positionnement peut être défini pour toucher le plateau ou n'importe où. Lorsqu'il est défini sur n'importe où," -" les supports seront également imprimés sur le modèle." +msgstr "Regola il posizionamento delle strutture di supporto. Il posizionamento può essere impostato su contatto con il piano di stampa o in tutti i possibili" +" punti. Quando impostato su tutti i possibili punti, le strutture di supporto verranno anche stampate sul modello." #: /fdmprinter.def.json msgctxt "support_type option buildplate" msgid "Touching Buildplate" -msgstr "En contact avec le plateau" +msgstr "Contatto con il Piano di Stampa" #: /fdmprinter.def.json msgctxt "support_type option everywhere" msgid "Everywhere" -msgstr "Partout" +msgstr "In Tutti i Possibili Punti" #: /fdmprinter.def.json msgctxt "support_angle label" msgid "Support Overhang Angle" -msgstr "Angle de porte-à-faux de support" +msgstr "Angolo di sbalzo del supporto" #: /fdmprinter.def.json msgctxt "support_angle description" msgid "" "The minimum angle of overhangs for which support is added. At a value of 0° " "all overhangs are supported, 90° will not provide any support." -msgstr "L'angle minimal des porte-à-faux pour lesquels un support est ajouté. À une valeur de 0 °, tous les porte-à-faux sont soutenus, tandis qu'à 90 °, aucun" -" support ne sera créé." +msgstr "Indica l’angolo minimo degli sbalzi per i quali viene aggiunto il supporto. A un valore di 0 ° tutti gli sbalzi vengono supportati, con un valore di 90 °" +" non sarà fornito alcun supporto." #: /fdmprinter.def.json msgctxt "support_pattern label" msgid "Support Pattern" -msgstr "Motif du support" +msgstr "Configurazione del supporto" #: /fdmprinter.def.json msgctxt "support_pattern description" msgid "" "The pattern of the support structures of the print. The different options " "available result in sturdy or easy to remove support." -msgstr "Le motif des supports de l'impression. Les différentes options disponibles résultent en des supports difficiles ou faciles à retirer." +msgstr "Indica la configurazione delle strutture di supporto della stampa. Le diverse opzioni disponibili generano un supporto robusto o facile da rimuovere." #: /fdmprinter.def.json msgctxt "support_pattern option lines" msgid "Lines" -msgstr "Lignes" +msgstr "Linee" #: /fdmprinter.def.json msgctxt "support_pattern option grid" msgid "Grid" -msgstr "Grille" +msgstr "Griglia" #: /fdmprinter.def.json msgctxt "support_pattern option triangles" msgid "Triangles" -msgstr "Triangles" +msgstr "Triangoli" #: /fdmprinter.def.json msgctxt "support_pattern option concentric" msgid "Concentric" -msgstr "Concentrique" +msgstr "Concentriche" #: /fdmprinter.def.json msgctxt "support_pattern option zigzag" @@ -4669,17 +4676,17 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "support_pattern option cross" msgid "Cross" -msgstr "Entrecroisé" +msgstr "Incrociata" #: /fdmprinter.def.json msgctxt "support_pattern option gyroid" msgid "Gyroid" -msgstr "Gyroïde" +msgstr "Gyroid" #: /fdmprinter.def.json msgctxt "support_wall_count label" msgid "Support Wall Line Count" -msgstr "Nombre de lignes de la paroi du support" +msgstr "Numero delle linee perimetrali supporto" #: /fdmprinter.def.json msgctxt "support_wall_count description" @@ -4687,13 +4694,13 @@ msgid "" "The number of walls with which to surround support infill. Adding a wall can " "make support print more reliably and can support overhangs better, but " "increases print time and material used." -msgstr "Nombre de parois qui entourent le remplissage de support. L'ajout d'une paroi peut rendre l'impression de support plus fiable et mieux supporter les porte-à-faux," -" mais augmente le temps d'impression et la quantité de matériau nécessaire." +msgstr "Il numero di pareti circostanti il riempimento di supporto. L'aggiunta di una parete può rendere la stampa del supporto più affidabile ed in grado di supportare" +" meglio gli sbalzi, ma aumenta il tempo di stampa ed il materiale utilizzato." #: /fdmprinter.def.json msgctxt "zig_zaggify_support label" msgid "Connect Support Lines" -msgstr "Relier les lignes de support" +msgstr "Collegamento linee supporto" #: /fdmprinter.def.json msgctxt "zig_zaggify_support description" @@ -4701,61 +4708,62 @@ msgid "" "Connect the ends of the support lines together. Enabling this setting can " "make your support more sturdy and reduce underextrusion, but it will cost " "more material." -msgstr "Relie les extrémités des lignes de support. L'activation de ce paramètre peut rendre votre support plus robuste et réduire la sous-extrusion, mais cela" -" demandera d'utiliser plus de matériau." +msgstr "Collega le estremità delle linee del supporto. L’abilitazione di questa impostazione consente di ottenere un supporto più robusto e ridurre la sottoestrusione," +" ma si utilizza più materiale." #: /fdmprinter.def.json msgctxt "support_connect_zigzags label" msgid "Connect Support ZigZags" -msgstr "Relier les zigzags de support" +msgstr "Collegamento Zig Zag supporto" #: /fdmprinter.def.json msgctxt "support_connect_zigzags description" msgid "" "Connect the ZigZags. This will increase the strength of the zig zag support " "structure." -msgstr "Relie les zigzags. Cela augmente la solidité des supports en zigzag." +msgstr "Collega i ZigZag. Questo aumenta la forza della struttura di supporto a zig zag." #: /fdmprinter.def.json msgctxt "support_infill_rate label" msgid "Support Density" -msgstr "Densité du support" +msgstr "Densità del supporto" #: /fdmprinter.def.json msgctxt "support_infill_rate description" msgid "" "Adjusts the density of the support structure. A higher value results in " "better overhangs, but the supports are harder to remove." -msgstr "Ajuste la densité du support. Une valeur plus élevée résulte en de meilleurs porte-à-faux, mais les supports sont plus difficiles à enlever." +msgstr "Regola la densità della struttura di supporto. Un valore superiore genera sbalzi migliori, ma i supporti sono più difficili da rimuovere." #: /fdmprinter.def.json msgctxt "support_line_distance label" msgid "Support Line Distance" -msgstr "Distance d'écartement de ligne du support" +msgstr "Distanza tra le linee del supporto" #: /fdmprinter.def.json msgctxt "support_line_distance description" msgid "" "Distance between the printed support structure lines. This setting is " "calculated by the support density." -msgstr "Distance entre les lignes de support imprimées. Ce paramètre est calculé par la densité du support." +msgstr "Indica la distanza tra le linee della struttura di supporto stampata. Questa impostazione viene calcolata mediante la densità del supporto." #: /fdmprinter.def.json msgctxt "support_initial_layer_line_distance label" msgid "Initial Layer Support Line Distance" -msgstr "Distance d'écartement de ligne du support de la couche initiale" +msgstr "Distanza tra le linee del supporto dello strato iniziale" #: /fdmprinter.def.json msgctxt "support_initial_layer_line_distance description" msgid "" "Distance between the printed initial layer support structure lines. This " "setting is calculated by the support density." -msgstr "Distance entre les lignes de la structure de support de la couche initiale imprimée. Ce paramètre est calculé en fonction de la densité du support." +msgstr "Indica la distanza tra le linee della struttura di supporto dello strato iniziale stampato. Questa impostazione viene calcolata mediante la densità del" +" supporto." #: /fdmprinter.def.json msgctxt "support_infill_angles label" msgid "Support Infill Line Directions" -msgstr "Direction de ligne de remplissage du support" +msgstr "Direzione delle linee di riempimento supporto" #: /fdmprinter.def.json msgctxt "support_infill_angles description" @@ -4765,14 +4773,14 @@ msgid "" "it starts at the beginning again. The list items are separated by commas and " "the whole list is contained in square brackets. Default is an empty list " "which means use the default angle 0 degrees." -msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser. Les éléments de la liste sont utilisés de manière séquentielle à mesure de l'avancement" -" des couches. La liste reprend depuis le début lorsque la fin est atteinte. Les éléments de la liste sont séparés par des virgules et la liste entière" -" est encadrée entre crochets. La valeur par défaut est une liste vide, ce qui signifie que l'angle par défaut est utilisé (0 degré)." +msgstr "Elenco di direzioni linee intere da utilizzare. Gli elementi dall'elenco sono utilizzati in sequenza con il progredire dei layers e, al raggiungimento" +" della fine dell'elenco, la sequenza ricomincia dall’inizio. Le voci elencate sono separate da virgole e l'intero elenco è racchiuso tra parentesi quadre." +" L’elenco predefinito è vuoto, vale a dire che utilizza l'angolo predefinito di 0 gradi." #: /fdmprinter.def.json msgctxt "support_brim_enable label" msgid "Enable Support Brim" -msgstr "Activer la bordure du support" +msgstr "Abilitazione brim del supporto" #: /fdmprinter.def.json msgctxt "support_brim_enable description" @@ -4780,38 +4788,39 @@ msgid "" "Generate a brim within the support infill regions of the first layer. This " "brim is printed underneath the support, not around it. Enabling this setting " "increases the adhesion of support to the build plate." -msgstr "Générer un bord à l'intérieur des zones de remplissage du support de la première couche. Cette bordure est imprimée sous le support et non autour de celui-ci," -" ce qui augmente l'adhérence du support au plateau." +msgstr "Genera un brim entro le zone di riempimento del supporto del primo strato. Questo brim viene stampato al di sotto del supporto, non intorno ad esso. L’abilitazione" +" di questa impostazione aumenta l’adesione del supporto al piano di stampa." #: /fdmprinter.def.json msgctxt "support_brim_width label" msgid "Support Brim Width" -msgstr "Largeur de la bordure du support" +msgstr "Larghezza del brim del supporto" #: /fdmprinter.def.json msgctxt "support_brim_width description" msgid "" "The width of the brim to print underneath the support. A larger brim " "enhances adhesion to the build plate, at the cost of some extra material." -msgstr "Largeur de la bordure à imprimer sous le support. Une plus grande bordure améliore l'adhérence au plateau, mais demande un peu de matériau supplémentaire." +msgstr "Corrisponde alla larghezza del brim da stampare al di sotto del supporto. Un brim più largo migliora l’adesione al piano di stampa, ma utilizza una maggiore" +" quantità di materiale." #: /fdmprinter.def.json msgctxt "support_brim_line_count label" msgid "Support Brim Line Count" -msgstr "Nombre de lignes de la bordure du support" +msgstr "Numero di linee del brim del supporto" #: /fdmprinter.def.json msgctxt "support_brim_line_count description" msgid "" "The number of lines used for the support brim. More brim lines enhance " "adhesion to the build plate, at the cost of some extra material." -msgstr "Nombre de lignes utilisées pour la bordure du support. L'augmentation du nombre de lignes de bordure améliore l'adhérence au plateau, mais demande un peu" -" de matériau supplémentaire." +msgstr "Corrisponde al numero di linee utilizzate per il brim del supporto. Più linee brim migliorano l’adesione al piano di stampa, ma utilizzano una maggiore" +" quantità di materiale." #: /fdmprinter.def.json msgctxt "support_z_distance label" msgid "Support Z Distance" -msgstr "Distance Z des supports" +msgstr "Distanza Z supporto" #: /fdmprinter.def.json msgctxt "support_z_distance description" @@ -4819,43 +4828,43 @@ msgid "" "Distance from the top/bottom of the support structure to the print. This gap " "provides clearance to remove the supports after the model is printed. This " "value is rounded up to a multiple of the layer height." -msgstr "Distance entre le dessus/dessous du support et l'impression. Cet écart offre un espace permettant de retirer les supports une fois l'impression du modèle" -" terminée. Cette valeur est arrondie au chiffre supérieur jusqu'à atteindre un multiple de la hauteur de la couche." +msgstr "È la distanza dalla parte superiore/inferiore della struttura di supporto alla stampa. Questa distanza fornisce lo spazio per rimuovere i supporti dopo" +" aver stampato il modello. Questo valore viene arrotondato per eccesso a un multiplo dell’altezza strato." #: /fdmprinter.def.json msgctxt "support_top_distance label" msgid "Support Top Distance" -msgstr "Distance supérieure des supports" +msgstr "Distanza superiore supporto" #: /fdmprinter.def.json msgctxt "support_top_distance description" msgid "Distance from the top of the support to the print." -msgstr "Distance entre l’impression et le haut des supports." +msgstr "È la distanza tra la parte superiore del supporto e la stampa." #: /fdmprinter.def.json msgctxt "support_bottom_distance label" msgid "Support Bottom Distance" -msgstr "Distance inférieure des supports" +msgstr "Distanza inferiore supporto" #: /fdmprinter.def.json msgctxt "support_bottom_distance description" msgid "Distance from the print to the bottom of the support." -msgstr "Distance entre l’impression et le bas des supports." +msgstr "È la distanza tra la stampa e la parte inferiore del supporto." #: /fdmprinter.def.json msgctxt "support_xy_distance label" msgid "Support X/Y Distance" -msgstr "Distance X/Y des supports" +msgstr "Distanza X/Y supporto" #: /fdmprinter.def.json msgctxt "support_xy_distance description" msgid "Distance of the support structure from the print in the X/Y directions." -msgstr "Distance entre le support et l'impression dans les directions X/Y." +msgstr "Indica la distanza della struttura di supporto dalla stampa, nelle direzioni X/Y." #: /fdmprinter.def.json msgctxt "support_xy_overrides_z label" msgid "Support Distance Priority" -msgstr "Priorité de distance des supports" +msgstr "Priorità distanza supporto" #: /fdmprinter.def.json msgctxt "support_xy_overrides_z description" @@ -4864,34 +4873,34 @@ msgid "" "versa. When X/Y overrides Z the X/Y distance can push away the support from " "the model, influencing the actual Z distance to the overhang. We can disable " "this by not applying the X/Y distance around overhangs." -msgstr "Si la Distance X/Y des supports annule la Distance Z des supports ou inversement. Lorsque X/Y annule Z, la distance X/Y peut écarter le support du modèle," -" influençant ainsi la distance Z réelle par rapport au porte-à-faux. Nous pouvons désactiver cela en n'appliquant pas la distance X/Y autour des porte-à-faux." +msgstr "Indica se la distanza X/Y del supporto esclude la distanza Z del supporto o viceversa. Quando X/Y esclude Z, la distanza X/Y può allontanare il supporto" +" dal modello, influenzando l’effettiva distanza Z allo sbalzo. È possibile disabilitare questa funzione non applicando la distanza X/Y intorno agli sbalzi." #: /fdmprinter.def.json msgctxt "support_xy_overrides_z option xy_overrides_z" msgid "X/Y overrides Z" -msgstr "X/Y annule Z" +msgstr "X/Y esclude Z" #: /fdmprinter.def.json msgctxt "support_xy_overrides_z option z_overrides_xy" msgid "Z overrides X/Y" -msgstr "Z annule X/Y" +msgstr "Z esclude X/Y" #: /fdmprinter.def.json msgctxt "support_xy_distance_overhang label" msgid "Minimum Support X/Y Distance" -msgstr "Distance X/Y minimale des supports" +msgstr "Distanza X/Y supporto minima" #: /fdmprinter.def.json msgctxt "support_xy_distance_overhang description" msgid "" "Distance of the support structure from the overhang in the X/Y directions." -msgstr "Distance entre la structure de support et le porte-à-faux dans les directions X/Y." +msgstr "Indica la distanza della struttura di supporto dallo sbalzo, nelle direzioni X/Y." #: /fdmprinter.def.json msgctxt "support_bottom_stair_step_height label" msgid "Support Stair Step Height" -msgstr "Hauteur de la marche de support" +msgstr "Altezza gradini supporto" #: /fdmprinter.def.json msgctxt "support_bottom_stair_step_height description" @@ -4900,13 +4909,13 @@ msgid "" "model. A low value makes the support harder to remove, but too high values " "can lead to unstable support structures. Set to zero to turn off the stair-" "like behaviour." -msgstr "La hauteur de la marche du support en forme d'escalier reposant sur le modèle. Une valeur faible rend le support plus difficile à enlever, mais des valeurs" -" trop élevées peuvent entraîner des supports instables. Définir la valeur sur zéro pour désactiver le comportement en forme d'escalier." +msgstr "Altezza dei gradini della parte inferiore del supporto a scala che appoggia sul modello. Un valore inferiore rende il supporto più difficile da rimuovere," +" ma valori troppo elevati possono rendere instabili le strutture di supporto. Impostare a zero per disabilitare il profilo a scala." #: /fdmprinter.def.json msgctxt "support_bottom_stair_step_width label" msgid "Support Stair Step Maximum Width" -msgstr "Largeur maximale de la marche de support" +msgstr "Larghezza massima gradino supporto" #: /fdmprinter.def.json msgctxt "support_bottom_stair_step_width description" @@ -4914,13 +4923,13 @@ msgid "" "The maximum width of the steps of the stair-like bottom of support resting " "on the model. A low value makes the support harder to remove, but too high " "values can lead to unstable support structures." -msgstr "La largeur maximale de la marche du support en forme d'escalier reposant sur le modèle. Une valeur faible rend le support plus difficile à enlever, mais" -" des valeurs trop élevées peuvent entraîner des supports instables." +msgstr "Larghezza massima dei gradini della parte inferiore del supporto a scala che appoggia sul modello. Un valore inferiore rende il supporto più difficile" +" da rimuovere, ma valori troppo elevati possono rendere instabili le strutture di supporto." #: /fdmprinter.def.json msgctxt "support_bottom_stair_step_min_slope label" msgid "Support Stair Step Minimum Slope Angle" -msgstr "Angle de pente minimum de la marche de support" +msgstr "Angolo di pendenza minimo gradini supporto" #: /fdmprinter.def.json msgctxt "support_bottom_stair_step_min_slope description" @@ -4929,13 +4938,13 @@ msgid "" "should make support easier to remove on shallower slopes, but really low " "values may result in some very counter-intuitive results on other parts of " "the model." -msgstr "La pente minimum de la zone pour un effet de marche de support. Des valeurs basses devraient faciliter l'enlèvement du support sur les pentes peu superficielles ;" -" des valeurs très basses peuvent donner des résultats vraiment contre-intuitifs sur d'autres pièces du modèle." +msgstr "La pendenza minima dell'area alla quale ha effetto la creazione dei gradini. Valori bassi dovrebbero semplificare la rimozione del supporto sulle pendenze" +" meno profonde, ma in realtà dei valori bassi possono generare risultati molto irrazionali sulle altre parti del modello." #: /fdmprinter.def.json msgctxt "support_join_distance label" msgid "Support Join Distance" -msgstr "Distance de jointement des supports" +msgstr "Distanza giunzione supporto" #: /fdmprinter.def.json msgctxt "support_join_distance description" @@ -4943,36 +4952,39 @@ msgid "" "The maximum distance between support structures in the X/Y directions. When " "separate structures are closer together than this value, the structures " "merge into one." -msgstr "La distance maximale entre les supports dans les directions X/Y. Lorsque des modèle séparés sont plus rapprochés que cette valeur, ils fusionnent." +msgstr "La distanza massima tra le strutture di supporto nelle direzioni X/Y. Quando la distanza tra le strutture è inferiore al valore indicato, le strutture" +" convergono in una unica." #: /fdmprinter.def.json msgctxt "support_offset label" msgid "Support Horizontal Expansion" -msgstr "Expansion horizontale des supports" +msgstr "Espansione orizzontale supporto" #: /fdmprinter.def.json msgctxt "support_offset description" msgid "" "Amount of offset applied to all support polygons in each layer. Positive " "values can smooth out the support areas and result in more sturdy support." -msgstr "Le décalage appliqué à tous les polygones pour chaque couche. Une valeur positive peut lisser les zones de support et rendre le support plus solide." +msgstr "È l'entità di offset (estensione dello strato) applicato a tutti i poligoni di supporto in ciascuno strato. I valori positivi possono appianare le aree" +" di supporto, accrescendone la robustezza." #: /fdmprinter.def.json msgctxt "support_infill_sparse_thickness label" msgid "Support Infill Layer Thickness" -msgstr "Épaisseur de la couche de remplissage de support" +msgstr "Spessore dello strato di riempimento di supporto" #: /fdmprinter.def.json msgctxt "support_infill_sparse_thickness description" msgid "" "The thickness per layer of support infill material. This value should always " "be a multiple of the layer height and is otherwise rounded." -msgstr "L'épaisseur par couche de matériau de remplissage de support. Cette valeur doit toujours être un multiple de la hauteur de la couche et arrondie." +msgstr "Indica lo spessore per strato del materiale di riempimento del supporto. Questo valore deve sempre essere un multiplo dell’altezza dello strato e in caso" +" contrario viene arrotondato." #: /fdmprinter.def.json msgctxt "gradual_support_infill_steps label" msgid "Gradual Support Infill Steps" -msgstr "Étapes de remplissage graduel du support" +msgstr "Fasi di riempimento graduale del supporto" #: /fdmprinter.def.json msgctxt "gradual_support_infill_steps description" @@ -4980,37 +4992,37 @@ msgid "" "Number of times to reduce the support infill density by half when getting " "further below top surfaces. Areas which are closer to top surfaces get a " "higher density, up to the Support Infill Density." -msgstr "Nombre de fois pour réduire la densité de remplissage du support de moitié en poursuivant sous les surfaces du dessus. Les zones qui sont plus proches" -" des surfaces du dessus possèdent une densité plus élevée, jusqu'à la Densité de remplissage du support." +msgstr "Indica il numero di volte per dimezzare la densità del riempimento quando si va al di sotto delle superfici superiori. Le aree più vicine alle superfici" +" superiori avranno una densità maggiore, fino alla densità del riempimento." #: /fdmprinter.def.json msgctxt "gradual_support_infill_step_height label" msgid "Gradual Support Infill Step Height" -msgstr "Hauteur d'étape de remplissage graduel du support" +msgstr "Altezza fasi di riempimento graduale del supporto" #: /fdmprinter.def.json msgctxt "gradual_support_infill_step_height description" msgid "" "The height of support infill of a given density before switching to half the " "density." -msgstr "La hauteur de remplissage de support d'une densité donnée avant de passer à la moitié de la densité." +msgstr "Indica l’altezza di riempimento del supporto di una data densità prima di passare a metà densità." #: /fdmprinter.def.json msgctxt "minimum_support_area label" msgid "Minimum Support Area" -msgstr "Surface minimale de support" +msgstr "Area minima supporto" #: /fdmprinter.def.json msgctxt "minimum_support_area description" msgid "" "Minimum area size for support polygons. Polygons which have an area smaller " "than this value will not be generated." -msgstr "Taille minimale de la surface des polygones de support : les polygones dont la surface est inférieure à cette valeur ne seront pas générés." +msgstr "Dimensioni minime area per i poligoni del supporto. I poligoni con un’area inferiore a questo valore non verranno generati." #: /fdmprinter.def.json msgctxt "support_interface_enable label" msgid "Enable Support Interface" -msgstr "Activer l'interface de support" +msgstr "Abilitazione interfaccia supporto" #: /fdmprinter.def.json msgctxt "support_interface_enable description" @@ -5018,73 +5030,74 @@ msgid "" "Generate a dense interface between the model and the support. This will " "create a skin at the top of the support on which the model is printed and at " "the bottom of the support, where it rests on the model." -msgstr "Générer une interface dense entre le modèle et le support. Cela créera une couche sur le dessus du support sur lequel le modèle est imprimé et sur le dessous" -" du support sur lequel le modèle repose." +msgstr "Genera un’interfaccia densa tra il modello e il supporto. Questo crea un rivestimento esterno sulla sommità del supporto su cui viene stampato il modello" +" e al fondo del supporto, dove appoggia sul modello." #: /fdmprinter.def.json msgctxt "support_roof_enable label" msgid "Enable Support Roof" -msgstr "Activer les plafonds de support" +msgstr "Abilitazione irrobustimento parte superiore (tetto) del supporto" #: /fdmprinter.def.json msgctxt "support_roof_enable description" msgid "" "Generate a dense slab of material between the top of support and the model. " "This will create a skin between the model and support." -msgstr "Générer une plaque dense de matériau entre le plafond du support et le modèle. Cela créera une couche extérieure entre le modèle et le support." +msgstr "Genera una spessa lastra di materiale tra la parte superiore del supporto e il modello. Questo crea un rivestimento tra modello e supporto." #: /fdmprinter.def.json msgctxt "support_bottom_enable label" msgid "Enable Support Floor" -msgstr "Activer les bas de support" +msgstr "Abilitazione parte inferiore supporto" #: /fdmprinter.def.json msgctxt "support_bottom_enable description" msgid "" "Generate a dense slab of material between the bottom of the support and the " "model. This will create a skin between the model and support." -msgstr "Générer une plaque dense de matériau entre le bas du support et le modèle. Cela créera une couche extérieure entre le modèle et le support." +msgstr "Genera una spessa lastra di materiale tra la parte inferiore del supporto e il modello. Questo crea un rivestimento tra modello e supporto." #: /fdmprinter.def.json msgctxt "support_interface_height label" msgid "Support Interface Thickness" -msgstr "Épaisseur de l'interface de support" +msgstr "Spessore interfaccia supporto" #: /fdmprinter.def.json msgctxt "support_interface_height description" msgid "" "The thickness of the interface of the support where it touches with the " "model on the bottom or the top." -msgstr "L'épaisseur de l'interface du support à l'endroit auquel il touche le modèle, sur le dessous ou le dessus." +msgstr "Indica lo spessore dell’interfaccia del supporto dove tocca il modello nella parte inferiore o in quella superiore." #: /fdmprinter.def.json msgctxt "support_roof_height label" msgid "Support Roof Thickness" -msgstr "Épaisseur du plafond de support" +msgstr "Spessore parte superiore (tetto) del supporto" #: /fdmprinter.def.json msgctxt "support_roof_height description" msgid "" "The thickness of the support roofs. This controls the amount of dense layers " "at the top of the support on which the model rests." -msgstr "L'épaisseur des plafonds de support. Cela contrôle la quantité de couches denses sur le dessus du support sur lequel le modèle repose." +msgstr "Lo spessore delle parti superiori del supporto. Questo controlla la quantità di strati fitti alla sommità del supporto su cui appoggia il modello." #: /fdmprinter.def.json msgctxt "support_bottom_height label" msgid "Support Floor Thickness" -msgstr "Épaisseur du bas de support" +msgstr "Spessore parte inferiore del supporto" #: /fdmprinter.def.json msgctxt "support_bottom_height description" msgid "" "The thickness of the support floors. This controls the number of dense " "layers that are printed on top of places of a model on which support rests." -msgstr "L'épaisseur des bas de support. Cela contrôle le nombre de couches denses imprimées sur le dessus des endroits d'un modèle sur lequel le support repose." +msgstr "Indica lo spessore delle parti inferiori del supporto. Questo controlla il numero di strati fitti stampati sulla sommità dei punti di un modello su cui" +" appoggia un supporto." #: /fdmprinter.def.json msgctxt "support_interface_skip_height label" msgid "Support Interface Resolution" -msgstr "Résolution de l'interface du support" +msgstr "Risoluzione interfaccia supporto" #: /fdmprinter.def.json msgctxt "support_interface_skip_height description" @@ -5093,14 +5106,14 @@ msgid "" "the given height. Lower values will slice slower, while higher values may " "cause normal support to be printed in some places where there should have " "been support interface." -msgstr "Lors de la vérification de l'emplacement d'un modèle au-dessus et en-dessous du support, effectuer des étapes de la hauteur définie. Des valeurs plus faibles" -" découperont plus lentement, tandis que des valeurs plus élevées peuvent causer l'impression d'un support normal à des endroits où il devrait y avoir une" -" interface de support." +msgstr "Quando si controlla dove si trova il modello sopra e sotto il supporto, procedere ad intervalli di altezza prestabilita. Valori inferiori causeranno un" +" sezionamento più lento, mentre valori più alti potrebbero causare la stampa del supporto normale in alcuni punti in cui dovrebbe esserci un'interfaccia" +" di supporto." #: /fdmprinter.def.json msgctxt "support_interface_density label" msgid "Support Interface Density" -msgstr "Densité de l'interface de support" +msgstr "Densità interfaccia supporto" #: /fdmprinter.def.json msgctxt "support_interface_density description" @@ -5108,90 +5121,90 @@ msgid "" "Adjusts the density of the roofs and floors of the support structure. A " "higher value results in better overhangs, but the supports are harder to " "remove." -msgstr "Ajuste la densité des plafonds et bas de la structure de support. Une valeur plus élevée résulte en de meilleurs porte-à-faux, mais les supports sont plus" -" difficiles à enlever." +msgstr "Regola la densità delle parti superiori e inferiori della struttura di supporto. Un valore superiore genera sbalzi migliori, ma i supporti sono più difficili" +" da rimuovere." #: /fdmprinter.def.json msgctxt "support_roof_density label" msgid "Support Roof Density" -msgstr "Densité du plafond de support" +msgstr "Densità parte superiore (tetto) del supporto" #: /fdmprinter.def.json msgctxt "support_roof_density description" msgid "" "The density of the roofs of the support structure. A higher value results in " "better overhangs, but the supports are harder to remove." -msgstr "La densité des plafonds de la structure de support. Une valeur plus élevée résulte en de meilleurs porte-à-faux, mais les supports sont plus difficiles" -" à enlever." +msgstr "Densità delle parti superiori della struttura di supporto. Un valore superiore genera sbalzi migliori, ma i supporti sono più difficili da rimuovere." #: /fdmprinter.def.json msgctxt "support_roof_line_distance label" msgid "Support Roof Line Distance" -msgstr "Distance d'écartement de ligne du plafond de support" +msgstr "Distanza tra le linee della parte superiore (tetto) del supporto" #: /fdmprinter.def.json msgctxt "support_roof_line_distance description" msgid "" "Distance between the printed support roof lines. This setting is calculated " "by the Support Roof Density, but can be adjusted separately." -msgstr "Distance entre les lignes du plafond de support imprimées. Ce paramètre est calculé par la densité du plafond de support mais peut également être défini" -" séparément." +msgstr "Distanza tra le linee della parte superiore del supporto stampate. Questa impostazione viene calcolata dalla densità della parte superiore del supporto," +" ma può essere regolata separatamente." #: /fdmprinter.def.json msgctxt "support_bottom_density label" msgid "Support Floor Density" -msgstr "Densité du bas de support" +msgstr "Densità parte inferiore del supporto" #: /fdmprinter.def.json msgctxt "support_bottom_density description" msgid "" "The density of the floors of the support structure. A higher value results " "in better adhesion of the support on top of the model." -msgstr "La densité des bas de la structure de support. Une valeur plus élevée résulte en une meilleure adhésion du support au-dessus du modèle." +msgstr "Densità delle parti inferiori della struttura di supporto. Un valore più alto comporta una migliore adesione del supporto alla parte superiore del modello." #: /fdmprinter.def.json msgctxt "support_bottom_line_distance label" msgid "Support Floor Line Distance" -msgstr "Distance d'écartement de ligne de bas de support" +msgstr "Distanza della linea di supporto inferiore" #: /fdmprinter.def.json msgctxt "support_bottom_line_distance description" msgid "" "Distance between the printed support floor lines. This setting is calculated " "by the Support Floor Density, but can be adjusted separately." -msgstr "Distance entre les lignes du bas de support imprimées. Ce paramètre est calculé par la densité du bas de support mais peut également être défini séparément." +msgstr "Distanza tra le linee della parte inferiore del supporto stampate. Questa impostazione viene calcolata dalla densità della parte inferiore del supporto," +" ma può essere regolata separatamente." #: /fdmprinter.def.json msgctxt "support_interface_pattern label" msgid "Support Interface Pattern" -msgstr "Motif de l'interface de support" +msgstr "Configurazione interfaccia supporto" #: /fdmprinter.def.json msgctxt "support_interface_pattern description" msgid "" "The pattern with which the interface of the support with the model is " "printed." -msgstr "Le motif selon lequel l'interface du support avec le modèle est imprimée." +msgstr "È la configurazione (o pattern) con cui viene stampata l’interfaccia del supporto con il modello." #: /fdmprinter.def.json msgctxt "support_interface_pattern option lines" msgid "Lines" -msgstr "Lignes" +msgstr "Linee" #: /fdmprinter.def.json msgctxt "support_interface_pattern option grid" msgid "Grid" -msgstr "Grille" +msgstr "Griglia" #: /fdmprinter.def.json msgctxt "support_interface_pattern option triangles" msgid "Triangles" -msgstr "Triangles" +msgstr "Triangoli" #: /fdmprinter.def.json msgctxt "support_interface_pattern option concentric" msgid "Concentric" -msgstr "Concentrique" +msgstr "Concentriche" #: /fdmprinter.def.json msgctxt "support_interface_pattern option zigzag" @@ -5201,32 +5214,32 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "support_roof_pattern label" msgid "Support Roof Pattern" -msgstr "Motif du plafond de support" +msgstr "Configurazione della parte superiore (tetto) del supporto" #: /fdmprinter.def.json msgctxt "support_roof_pattern description" msgid "The pattern with which the roofs of the support are printed." -msgstr "Le motif d'impression pour les plafonds de support." +msgstr "È la configurazione (o pattern) con cui vengono stampate le parti superiori del supporto." #: /fdmprinter.def.json msgctxt "support_roof_pattern option lines" msgid "Lines" -msgstr "Lignes" +msgstr "Linee" #: /fdmprinter.def.json msgctxt "support_roof_pattern option grid" msgid "Grid" -msgstr "Grille" +msgstr "Griglia" #: /fdmprinter.def.json msgctxt "support_roof_pattern option triangles" msgid "Triangles" -msgstr "Triangles" +msgstr "Triangoli" #: /fdmprinter.def.json msgctxt "support_roof_pattern option concentric" msgid "Concentric" -msgstr "Concentrique" +msgstr "Concentriche" #: /fdmprinter.def.json msgctxt "support_roof_pattern option zigzag" @@ -5236,32 +5249,32 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "support_bottom_pattern label" msgid "Support Floor Pattern" -msgstr "Motif du bas de support" +msgstr "Configurazione della parte inferiore del supporto" #: /fdmprinter.def.json msgctxt "support_bottom_pattern description" msgid "The pattern with which the floors of the support are printed." -msgstr "Le motif d'impression pour les bas de support." +msgstr "È la configurazione (o pattern) con cui vengono stampate le parti inferiori del supporto." #: /fdmprinter.def.json msgctxt "support_bottom_pattern option lines" msgid "Lines" -msgstr "Lignes" +msgstr "Linee" #: /fdmprinter.def.json msgctxt "support_bottom_pattern option grid" msgid "Grid" -msgstr "Grille" +msgstr "Griglia" #: /fdmprinter.def.json msgctxt "support_bottom_pattern option triangles" msgid "Triangles" -msgstr "Triangles" +msgstr "Triangoli" #: /fdmprinter.def.json msgctxt "support_bottom_pattern option concentric" msgid "Concentric" -msgstr "Concentrique" +msgstr "Concentriche" #: /fdmprinter.def.json msgctxt "support_bottom_pattern option zigzag" @@ -5271,75 +5284,76 @@ msgstr "Zig Zag" #: /fdmprinter.def.json msgctxt "minimum_interface_area label" msgid "Minimum Support Interface Area" -msgstr "Surface minimale de l'interface de support" +msgstr "Area minima interfaccia supporto" #: /fdmprinter.def.json msgctxt "minimum_interface_area description" msgid "" "Minimum area size for support interface polygons. Polygons which have an " "area smaller than this value will be printed as normal support." -msgstr "Taille minimale de la surface des polygones d'interface de support. Les polygones dont la surface est inférieure à cette valeur ne seront pas imprimés" -" comme support normal." +msgstr "Dimensione minima dell'area per i poligoni dell'interfaccia di supporto. I poligoni con un'area più piccola rispetto a questo valore saranno stampati come" +" supporto normale." #: /fdmprinter.def.json msgctxt "minimum_roof_area label" msgid "Minimum Support Roof Area" -msgstr "Surface minimale du plafond de support" +msgstr "Area minima parti superiori supporto" #: /fdmprinter.def.json msgctxt "minimum_roof_area description" msgid "" "Minimum area size for the roofs of the support. Polygons which have an area " "smaller than this value will be printed as normal support." -msgstr "Taille minimale de la surface des plafonds du support. Les polygones dont la surface est inférieure à cette valeur ne seront pas imprimés comme support" -" normal." +msgstr "Dimensione minima dell'area per le parti superiori del supporto. I poligoni con un'area più piccola rispetto a questo valore saranno stampati come supporto" +" normale." #: /fdmprinter.def.json msgctxt "minimum_bottom_area label" msgid "Minimum Support Floor Area" -msgstr "Surface minimale du bas de support" +msgstr "Area minima parti inferiori supporto" #: /fdmprinter.def.json msgctxt "minimum_bottom_area description" msgid "" "Minimum area size for the floors of the support. Polygons which have an area " "smaller than this value will be printed as normal support." -msgstr "Taille minimale de la surface des bas du support. Les polygones dont la surface est inférieure à cette valeur ne seront pas imprimés comme support normal." +msgstr "Dimensione minima dell'area per le parti inferiori del supporto. I poligoni con un'area più piccola rispetto a questo valore saranno stampati come supporto" +" normale." #: /fdmprinter.def.json msgctxt "support_interface_offset label" msgid "Support Interface Horizontal Expansion" -msgstr "Expansion horizontale de l'interface de support" +msgstr "Espansione orizzontale interfaccia supporto" #: /fdmprinter.def.json msgctxt "support_interface_offset description" msgid "Amount of offset applied to the support interface polygons." -msgstr "Quantité de décalage appliquée aux polygones de l'interface de support." +msgstr "Entità di offset applicato ai poligoni di interfaccia del supporto." #: /fdmprinter.def.json msgctxt "support_roof_offset label" msgid "Support Roof Horizontal Expansion" -msgstr "Expansion horizontale du plafond de support" +msgstr "Espansione orizzontale parti superiori supporto" #: /fdmprinter.def.json msgctxt "support_roof_offset description" msgid "Amount of offset applied to the roofs of the support." -msgstr "Quantité de décalage appliqué aux plafonds du support." +msgstr "Entità di offset applicato alle parti superiori del supporto." #: /fdmprinter.def.json msgctxt "support_bottom_offset label" msgid "Support Floor Horizontal Expansion" -msgstr "Expansion horizontale du bas de support" +msgstr "Espansione orizzontale parti inferiori supporto" #: /fdmprinter.def.json msgctxt "support_bottom_offset description" msgid "Amount of offset applied to the floors of the support." -msgstr "Quantité de décalage appliqué aux bas du support." +msgstr "Entità di offset applicato alle parti inferiori del supporto." #: /fdmprinter.def.json msgctxt "support_interface_angles label" msgid "Support Interface Line Directions" -msgstr "Direction de ligne d'interface du support" +msgstr "Direzioni della linea dell'interfaccia di supporto" #: /fdmprinter.def.json msgctxt "support_interface_angles description" @@ -5350,15 +5364,15 @@ msgid "" "the whole list is contained in square brackets. Default is an empty list " "which means use the default angles (alternates between 45 and 135 degrees if " "interfaces are quite thick or 90 degrees)." -msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser. Les éléments de la liste sont utilisés de manière séquentielle à mesure de l'avancement" -" des couches. La liste reprend depuis le début lorsque la fin est atteinte. Les éléments de la liste sont séparés par des virgules et la liste entière" -" est encadrée entre crochets. La valeur par défaut est une liste vide, ce qui signifie que les angles par défaut sont utilisés (alternative entre 45 et" -" 135 degrés si les interfaces sont assez épaisses ou 90 degrés)." +msgstr "Elenco di direzioni linee intere da utilizzare. Gli elementi dall'elenco sono utilizzati in sequenza con il progredire dei layers e, al raggiungimento" +" della fine dell'elenco, la sequenza ricomincia dall’inizio. Le voci elencate sono separate da virgole e l'intero elenco è racchiuso tra parentesi quadre." +" L'elenco predefinito è vuoto, vale a dire che utilizza gli angoli predefiniti (alterna tra 45 e 135 gradi se le interfacce sono abbastanza spesse oppure" +" 90 gradi)." #: /fdmprinter.def.json msgctxt "support_roof_angles label" msgid "Support Roof Line Directions" -msgstr "Direction de la ligne de plafond de support" +msgstr "Direzioni delle linee di supporto superiori" #: /fdmprinter.def.json msgctxt "support_roof_angles description" @@ -5369,15 +5383,15 @@ msgid "" "the whole list is contained in square brackets. Default is an empty list " "which means use the default angles (alternates between 45 and 135 degrees if " "interfaces are quite thick or 90 degrees)." -msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser. Les éléments de la liste sont utilisés de manière séquentielle à mesure de l'avancement" -" des couches. La liste reprend depuis le début lorsque la fin est atteinte. Les éléments de la liste sont séparés par des virgules et la liste entière" -" est encadrée entre crochets. La valeur par défaut est une liste vide, ce qui signifie que les angles par défaut sont utilisés (alternative entre 45 et" -" 135 degrés si les interfaces sont assez épaisses ou 90 degrés)." +msgstr "Elenco di direzioni linee intere da utilizzare. Gli elementi dall'elenco sono utilizzati in sequenza con il progredire dei layers e, al raggiungimento" +" della fine dell'elenco, la sequenza ricomincia dall’inizio. Le voci elencate sono separate da virgole e l'intero elenco è racchiuso tra parentesi quadre." +" L'elenco predefinito è vuoto, vale a dire che utilizza gli angoli predefiniti (alterna tra 45 e 135 gradi se le interfacce sono abbastanza spesse oppure" +" 90 gradi)." #: /fdmprinter.def.json msgctxt "support_bottom_angles label" msgid "Support Floor Line Directions" -msgstr "Direction de la ligne de bas de support" +msgstr "Direzioni della larghezza della linea di supporto inferiore" #: /fdmprinter.def.json msgctxt "support_bottom_angles description" @@ -5388,41 +5402,40 @@ msgid "" "the whole list is contained in square brackets. Default is an empty list " "which means use the default angles (alternates between 45 and 135 degrees if " "interfaces are quite thick or 90 degrees)." -msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser. Les éléments de la liste sont utilisés de manière séquentielle à mesure de l'avancement" -" des couches. La liste reprend depuis le début lorsque la fin est atteinte. Les éléments de la liste sont séparés par des virgules et la liste entière" -" est encadrée entre crochets. La valeur par défaut est une liste vide, ce qui signifie que les angles par défaut sont utilisés (alternative entre 45 et" -" 135 degrés si les interfaces sont assez épaisses ou 90 degrés)." +msgstr "Elenco di direzioni linee intere da utilizzare. Gli elementi dall'elenco sono utilizzati in sequenza con il progredire dei layers e, al raggiungimento" +" della fine dell'elenco, la sequenza ricomincia dall’inizio. Le voci elencate sono separate da virgole e l'intero elenco è racchiuso tra parentesi quadre." +" L'elenco predefinito è vuoto, vale a dire che utilizza gli angoli predefiniti (alterna tra 45 e 135 gradi se le interfacce sono abbastanza spesse oppure" +" 90 gradi)." #: /fdmprinter.def.json msgctxt "support_fan_enable label" msgid "Fan Speed Override" -msgstr "Annulation de la vitesse du ventilateur" +msgstr "Override velocità della ventola" #: /fdmprinter.def.json msgctxt "support_fan_enable description" msgid "" "When enabled, the print cooling fan speed is altered for the skin regions " "immediately above the support." -msgstr "Lorsque cette fonction est activée, la vitesse du ventilateur de refroidissement de l'impression est modifiée pour les régions de la couche extérieure" -" situées immédiatement au-dessus du support." +msgstr "Quando abilitata, la velocità della ventola di raffreddamento stampa viene modificata per le zone del rivestimento esterno subito sopra il supporto." #: /fdmprinter.def.json msgctxt "support_supported_skin_fan_speed label" msgid "Supported Skin Fan Speed" -msgstr "Vitesse du ventilateur de couche extérieure supportée" +msgstr "Velocità della ventola del rivestimento esterno supportato" #: /fdmprinter.def.json msgctxt "support_supported_skin_fan_speed description" msgid "" "Percentage fan speed to use when printing the skin regions immediately above " "the support. Using a high fan speed can make the support easier to remove." -msgstr "Pourcentage de la vitesse du ventilateur à utiliser lors de l'impression des zones de couche extérieure situées immédiatement au-dessus du support. Une" -" vitesse de ventilateur élevée facilite le retrait du support." +msgstr "Percentuale della velocità della ventola da usare quando si stampano le zone del rivestimento esterno subito sopra il supporto. L’uso di una velocità ventola" +" elevata può facilitare la rimozione del supporto." #: /fdmprinter.def.json msgctxt "support_use_towers label" msgid "Use Towers" -msgstr "Utilisation de tours" +msgstr "Utilizzo delle torri" #: /fdmprinter.def.json msgctxt "support_use_towers description" @@ -5430,81 +5443,81 @@ msgid "" "Use specialized towers to support tiny overhang areas. These towers have a " "larger diameter than the region they support. Near the overhang the towers' " "diameter decreases, forming a roof." -msgstr "Utilise des tours spéciales pour soutenir de petites zones en porte-à-faux. Le diamètre de ces tours est plus large que la zone qu’elles soutiennent. Près" -" du porte-à-faux, le diamètre des tours diminue pour former un toit." +msgstr "Utilizza speciali torri per il supporto di piccolissime aree di sbalzo. Queste torri hanno un diametro maggiore rispetto a quello dell'area che supportano." +" In prossimità dello sbalzo il diametro delle torri diminuisce, formando un 'tetto'." #: /fdmprinter.def.json msgctxt "support_tower_diameter label" msgid "Tower Diameter" -msgstr "Diamètre de la tour" +msgstr "Diametro della torre" #: /fdmprinter.def.json msgctxt "support_tower_diameter description" msgid "The diameter of a special tower." -msgstr "Le diamètre d’une tour spéciale." +msgstr "Corrisponde al diametro di una torre speciale." #: /fdmprinter.def.json msgctxt "support_tower_maximum_supported_diameter label" msgid "Maximum Tower-Supported Diameter" -msgstr "Diamètre maximal supporté par la tour" +msgstr "Diametro supportato dalla torre" #: /fdmprinter.def.json msgctxt "support_tower_maximum_supported_diameter description" msgid "" "Maximum diameter in the X/Y directions of a small area which is to be " "supported by a specialized support tower." -msgstr "Le diamètre maximal sur les axes X/Y d’une petite zone qui doit être soutenue par une tour de soutien spéciale." +msgstr "È il diametro massimo nelle direzioni X/Y di una piccola area, che deve essere sostenuta da una torre speciale." #: /fdmprinter.def.json msgctxt "support_tower_roof_angle label" msgid "Tower Roof Angle" -msgstr "Angle du toit de la tour" +msgstr "Angolazione della parte superiore (tetto) della torre" #: /fdmprinter.def.json msgctxt "support_tower_roof_angle description" msgid "" "The angle of a rooftop of a tower. A higher value results in pointed tower " "roofs, a lower value results in flattened tower roofs." -msgstr "L'angle du toit d'une tour. Une valeur plus élevée entraîne des toits de tour pointus, tandis qu'une valeur plus basse résulte en des toits plats." +msgstr "L’angolo della parte superiore di una torre. Un valore superiore genera parti superiori appuntite, un valore inferiore, parti superiori piatte." #: /fdmprinter.def.json msgctxt "support_mesh_drop_down label" msgid "Drop Down Support Mesh" -msgstr "Maillage de support descendant" +msgstr "Maglia supporto di discesa" #: /fdmprinter.def.json msgctxt "support_mesh_drop_down description" msgid "" "Make support everywhere below the support mesh, so that there's no overhang " "in the support mesh." -msgstr "Inclure du support à tout emplacement sous le maillage de support, de sorte à ce qu'il n'y ait pas de porte-à-faux dans le maillage de support." +msgstr "Rappresenta il supporto ovunque sotto la maglia di supporto, in modo che in questa non vi siano punti a sbalzo." #: /fdmprinter.def.json msgctxt "support_meshes_present label" msgid "Scene Has Support Meshes" -msgstr "La scène comporte un maillage de support" +msgstr "La scena è dotata di maglie di supporto" #: /fdmprinter.def.json msgctxt "support_meshes_present description" msgid "" "There are support meshes present in the scene. This setting is controlled by " "Cura." -msgstr "Un maillage de support est présent sur la scène. Ce paramètre est contrôlé par Cura." +msgstr "Nella scena sono presenti maglie di supporto. Questa impostazione è controllata da Cura." #: /fdmprinter.def.json msgctxt "platform_adhesion label" msgid "Build Plate Adhesion" -msgstr "Adhérence du plateau" +msgstr "Adesione piano di stampa" #: /fdmprinter.def.json msgctxt "platform_adhesion description" msgid "Adhesion" -msgstr "Adhérence" +msgstr "Adesione" #: /fdmprinter.def.json msgctxt "prime_blob_enable label" msgid "Enable Prime Blob" -msgstr "Activer la goutte de préparation" +msgstr "Abilitazione blob di innesco" #: /fdmprinter.def.json msgctxt "prime_blob_enable description" @@ -5513,38 +5526,38 @@ msgid "" "setting on will ensure that the extruder will have material ready at the " "nozzle before printing. Printing Brim or Skirt can act like priming too, in " "which case turning this setting off saves some time." -msgstr "Préparer les filaments avec une goutte avant l'impression. Ce paramètre permet d'assurer que l'extrudeuse disposera de matériau prêt au niveau de la buse" -" avant l'impression. La jupe/bordure d'impression peut également servir de préparation, auquel cas le fait de laisser ce paramètre désactivé permet de" -" gagner un peu de temps." +msgstr "Eventuale innesco del filamento con un blob prima della stampa. L'attivazione di questa impostazione garantisce che l'estrusore avrà il materiale pronto" +" all'ugello prima della stampa. Anche la stampa Brim o Skirt può funzionare da innesco, nel qual caso la disabilitazione di questa impostazione consente" +" di risparmiare tempo." #: /fdmprinter.def.json msgctxt "extruder_prime_pos_x label" msgid "Extruder Prime X Position" -msgstr "Extrudeuse Position d'amorçage X" +msgstr "Posizione X innesco estrusore" #: /fdmprinter.def.json msgctxt "extruder_prime_pos_x description" msgid "" "The X coordinate of the position where the nozzle primes at the start of " "printing." -msgstr "Les coordonnées X de la position à laquelle la buse s'amorce au début de l'impression." +msgstr "La coordinata X della posizione in cui l’ugello si innesca all’avvio della stampa." #: /fdmprinter.def.json msgctxt "extruder_prime_pos_y label" msgid "Extruder Prime Y Position" -msgstr "Extrudeuse Position d'amorçage Y" +msgstr "Posizione Y innesco estrusore" #: /fdmprinter.def.json msgctxt "extruder_prime_pos_y description" msgid "" "The Y coordinate of the position where the nozzle primes at the start of " "printing." -msgstr "Les coordonnées Y de la position à laquelle la buse s'amorce au début de l'impression." +msgstr "La coordinata Y della posizione in cui l’ugello si innesca all’avvio della stampa." #: /fdmprinter.def.json msgctxt "adhesion_type label" msgid "Build Plate Adhesion Type" -msgstr "Type d'adhérence du plateau" +msgstr "Tipo di adesione piano di stampa" #: /fdmprinter.def.json msgctxt "adhesion_type description" @@ -5554,106 +5567,107 @@ msgid "" "base of your model to prevent warping. Raft adds a thick grid with a roof " "below the model. Skirt is a line printed around the model, but not connected " "to the model." -msgstr "Différentes options qui permettent d'améliorer la préparation de votre extrusion et l'adhérence au plateau. La bordure ajoute une zone plate d'une seule" -" couche autour de la base de votre modèle, afin de l'empêcher de se redresser. Le radeau ajoute une grille épaisse avec un toit sous le modèle. La jupe" -" est une ligne imprimée autour du modèle mais qui n'est pas rattachée au modèle." +msgstr "Sono previste diverse opzioni che consentono di migliorare l'applicazione dello strato iniziale dell’estrusione e migliorano l’adesione. Il brim aggiunge" +" un'area piana a singolo strato attorno alla base del modello, per evitare deformazioni. Il raft aggiunge un fitto reticolato con un tetto al di sotto" +" del modello. Lo skirt è una linea stampata attorno al modello, ma non collegata al modello." #: /fdmprinter.def.json msgctxt "adhesion_type option skirt" msgid "Skirt" -msgstr "Jupe" +msgstr "Skirt" #: /fdmprinter.def.json msgctxt "adhesion_type option brim" msgid "Brim" -msgstr "Bordure" +msgstr "Brim" #: /fdmprinter.def.json msgctxt "adhesion_type option raft" msgid "Raft" -msgstr "Radeau" +msgstr "Raft" #: /fdmprinter.def.json msgctxt "adhesion_type option none" msgid "None" -msgstr "Aucun" +msgstr "Nessuno" #: /fdmprinter.def.json msgctxt "adhesion_extruder_nr label" msgid "Build Plate Adhesion Extruder" -msgstr "Extrudeuse d'adhérence du plateau" +msgstr "Estrusore adesione piano di stampa" #: /fdmprinter.def.json msgctxt "adhesion_extruder_nr description" msgid "" "The extruder train to use for printing the skirt/brim/raft. This is used in " "multi-extrusion." -msgstr "Le train d'extrudeuse à utiliser pour l'impression de la jupe/la bordure/du radeau. Cela est utilisé en multi-extrusion." +msgstr "Il treno estrusore utilizzato per la stampa dello skirt/brim/raft. Utilizzato nell’estrusione multipla." #: /fdmprinter.def.json msgctxt "skirt_brim_extruder_nr label" msgid "Skirt/Brim Extruder" -msgstr "Extrudeur de la jupe/bordure" +msgstr "Estrusore skirt/brim" #: /fdmprinter.def.json msgctxt "skirt_brim_extruder_nr description" msgid "" "The extruder train to use for printing the skirt or brim. This is used in " "multi-extrusion." -msgstr "Le train d'extrudeur à utiliser pour l'impression de la jupe ou de la bordure. Cela est utilisé en multi-extrusion." +msgstr "Il treno estrusore utilizzato per la stampa dello skirt o del brim. Utilizzato nell’estrusione multipla." #: /fdmprinter.def.json msgctxt "raft_base_extruder_nr label" msgid "Raft Base Extruder" -msgstr "Extrudeur de la base du raft" +msgstr "Estrusore della base del raft" #: /fdmprinter.def.json msgctxt "raft_base_extruder_nr description" msgid "" "The extruder train to use for printing the first layer of the raft. This is " "used in multi-extrusion." -msgstr "Le train d'extrudeur à utiliser pour l'impression de la première couche du radeau. Cela est utilisé en multi-extrusion." +msgstr "Il treno estrusore utilizzato per la stampa del primo strato del raft. Utilizzato nell’estrusione multipla." #: /fdmprinter.def.json msgctxt "raft_interface_extruder_nr label" msgid "Raft Middle Extruder" -msgstr "Extrudeur du milieu du radeau" +msgstr "Estrusore intermedio del raft" #: /fdmprinter.def.json msgctxt "raft_interface_extruder_nr description" msgid "" "The extruder train to use for printing the middle layer of the raft. This is " "used in multi-extrusion." -msgstr "Le train d'extrudeur à utiliser pour imprimer la couche intermédiaire du radeau. Cela est utilisé en multi-extrusion." +msgstr "Il treno estrusore utilizzato per la stampa dello strato intermedio del raft. Utilizzato nell’estrusione multipla." #: /fdmprinter.def.json msgctxt "raft_surface_extruder_nr label" msgid "Raft Top Extruder" -msgstr "Extrudeur du haut du radeau" +msgstr "Estrusore superiore del raft" #: /fdmprinter.def.json msgctxt "raft_surface_extruder_nr description" msgid "" "The extruder train to use for printing the top layer(s) of the raft. This is " "used in multi-extrusion." -msgstr "Le train d'extrudeur à utiliser pour imprimer la ou les couches du haut du radeau. Cela est utilisé en multi-extrusion." +msgstr "Il treno estrusore utilizzato per la stampa degli strati superiori del raft. Utilizzato nell’estrusione multipla." #: /fdmprinter.def.json msgctxt "skirt_line_count label" msgid "Skirt Line Count" -msgstr "Nombre de lignes de la jupe" +msgstr "Numero di linee dello skirt" #: /fdmprinter.def.json msgctxt "skirt_line_count description" msgid "" "Multiple skirt lines help to prime your extrusion better for small models. " "Setting this to 0 will disable the skirt." -msgstr "Une jupe à plusieurs lignes vous aide à mieux préparer votre extrusion pour les petits modèles. Définissez celle valeur sur 0 pour désactiver la jupe." +msgstr "Più linee di skirt contribuiscono a migliorare l'avvio dell'estrusione per modelli di piccole dimensioni. L'impostazione di questo valore a 0 disattiverà" +" la funzione skirt." #: /fdmprinter.def.json msgctxt "skirt_gap label" msgid "Skirt Distance" -msgstr "Distance de la jupe" +msgstr "Distanza dello skirt" #: /fdmprinter.def.json msgctxt "skirt_gap description" @@ -5661,13 +5675,12 @@ msgid "" "The horizontal distance between the skirt and the first layer of the print.\n" "This is the minimum distance. Multiple skirt lines will extend outwards from " "this distance." -msgstr "La distance horizontale entre la jupe et la première couche de l’impression.\nIl s’agit de la distance minimale séparant la jupe de l’objet. Si la jupe" -" a d’autres lignes, celles-ci s’étendront vers l’extérieur." +msgstr "Indica la distanza orizzontale tra lo skirt ed il primo strato della stampa.\nQuesta è la distanza minima. Più linee di skirt aumenteranno tale distanza." #: /fdmprinter.def.json msgctxt "skirt_brim_minimal_length label" msgid "Skirt/Brim Minimum Length" -msgstr "Longueur minimale de la jupe/bordure" +msgstr "Lunghezza minima dello skirt/brim" #: /fdmprinter.def.json msgctxt "skirt_brim_minimal_length description" @@ -5676,14 +5689,13 @@ msgid "" "all skirt or brim lines together, more skirt or brim lines will be added " "until the minimum length is reached. Note: If the line count is set to 0 " "this is ignored." -msgstr "La longueur minimale de la jupe ou bordure. Si cette longueur n’est pas atteinte par toutes les lignes de jupe ou de bordure ensemble, d’autres lignes" -" de jupe ou de bordure seront ajoutées afin d’atteindre la longueur minimale. Veuillez noter que si le nombre de lignes est défini sur 0, cette option est" -" ignorée." +msgstr "Indica la lunghezza minima dello skirt o del brim. Se tale lunghezza minima non viene raggiunta da tutte le linee skirt o brim insieme, saranno aggiunte" +" più linee di skirt o brim fino a raggiungere la lunghezza minima. Nota: se il valore è impostato a 0, questa funzione viene ignorata." #: /fdmprinter.def.json msgctxt "brim_width label" msgid "Brim Width" -msgstr "Largeur de la bordure" +msgstr "Larghezza del brim" #: /fdmprinter.def.json msgctxt "brim_width description" @@ -5691,26 +5703,25 @@ msgid "" "The distance from the model to the outermost brim line. A larger brim " "enhances adhesion to the build plate, but also reduces the effective print " "area." -msgstr "La distance entre le modèle et la ligne de bordure la plus à l'extérieur. Une bordure plus large renforce l'adhérence au plateau mais réduit également" -" la zone d'impression réelle." +msgstr "Indica la distanza tra il modello e la linea di estremità del brim. Un brim di maggiore dimensione aderirà meglio al piano di stampa, ma con riduzione" +" dell'area di stampa." #: /fdmprinter.def.json msgctxt "brim_line_count label" msgid "Brim Line Count" -msgstr "Nombre de lignes de la bordure" +msgstr "Numero di linee del brim" #: /fdmprinter.def.json msgctxt "brim_line_count description" msgid "" "The number of lines used for a brim. More brim lines enhance adhesion to the " "build plate, but also reduces the effective print area." -msgstr "Le nombre de lignes utilisées pour une bordure. Un plus grand nombre de lignes de bordure renforce l'adhérence au plateau mais réduit également la zone" -" d'impression réelle." +msgstr "Corrisponde al numero di linee utilizzate per un brim. Più linee brim migliorano l’adesione al piano di stampa, ma con riduzione dell'area di stampa." #: /fdmprinter.def.json msgctxt "brim_gap label" msgid "Brim Distance" -msgstr "Distance de la bordure" +msgstr "Distanza del Brim" #: /fdmprinter.def.json msgctxt "brim_gap description" @@ -5718,13 +5729,13 @@ msgid "" "The horizontal distance between the first brim line and the outline of the " "first layer of the print. A small gap can make the brim easier to remove " "while still providing the thermal benefits." -msgstr "La distance horizontale entre la première ligne de bordure et le contour de la première couche de l'impression. Un petit trou peut faciliter l'enlèvement" -" de la bordure tout en offrant des avantages thermiques." +msgstr "Distanza orizzontale tra la linea del primo brim e il profilo del primo layer della stampa. Un piccolo interstizio può semplificare la rimozione del brim" +" e allo stesso tempo fornire dei vantaggi termici." #: /fdmprinter.def.json msgctxt "brim_replaces_support label" msgid "Brim Replaces Support" -msgstr "La bordure remplace le support" +msgstr "Brim in sostituzione del supporto" #: /fdmprinter.def.json msgctxt "brim_replaces_support description" @@ -5732,13 +5743,13 @@ msgid "" "Enforce brim to be printed around the model even if that space would " "otherwise be occupied by support. This replaces some regions of the first " "layer of support by brim regions." -msgstr "Appliquer la bordure à imprimer autour du modèle même si cet espace aurait autrement dû être occupé par le support, en remplaçant certaines régions de" -" la première couche de support par des régions de la bordure." +msgstr "Abilita la stampa del brim intorno al modello anche se quello spazio dovrebbe essere occupato dal supporto. Sostituisce alcune zone del primo strato del" +" supporto con zone del brim." #: /fdmprinter.def.json msgctxt "brim_outside_only label" msgid "Brim Only on Outside" -msgstr "Bordure uniquement sur l'extérieur" +msgstr "Brim solo sull’esterno" #: /fdmprinter.def.json msgctxt "brim_outside_only description" @@ -5746,13 +5757,13 @@ msgid "" "Only print the brim on the outside of the model. This reduces the amount of " "brim you need to remove afterwards, while it doesn't reduce the bed adhesion " "that much." -msgstr "Imprimer uniquement la bordure sur l'extérieur du modèle. Cela réduit la quantité de bordure que vous devez retirer par la suite, sans toutefois véritablement" -" réduire l'adhérence au plateau." +msgstr "Stampa il brim solo sull’esterno del modello. Questo riduce la quantità del brim che si deve rimuovere in seguito, mentre non riduce particolarmente l’adesione" +" al piano." #: /fdmprinter.def.json msgctxt "raft_margin label" msgid "Raft Extra Margin" -msgstr "Marge supplémentaire du radeau" +msgstr "Margine extra del raft" #: /fdmprinter.def.json msgctxt "raft_margin description" @@ -5760,13 +5771,13 @@ msgid "" "If the raft is enabled, this is the extra raft area around the model which " "is also given a raft. Increasing this margin will create a stronger raft " "while using more material and leaving less area for your print." -msgstr "Si vous avez appliqué un radeau, alors il s’agit de l’espace de radeau supplémentaire autour du modèle qui dispose déjà d’un radeau. L’augmentation de" -" cette marge va créer un radeau plus solide, mais requiert davantage de matériau et laisse moins de place pour votre impression." +msgstr "Se è abilitata la funzione raft, questo valore indica di quanto il raft fuoriesce rispetto al perimetro esterno del modello. Aumentando questo margine" +" si creerà un raft più robusto, utilizzando però più materiale e lasciando meno spazio per la stampa." #: /fdmprinter.def.json msgctxt "raft_smoothing label" msgid "Raft Smoothing" -msgstr "Lissage de radeau" +msgstr "Smoothing raft" #: /fdmprinter.def.json msgctxt "raft_smoothing description" @@ -5775,13 +5786,13 @@ msgid "" "rounded. Inward corners are rounded to a semi circle with a radius equal to " "the value given here. This setting also removes holes in the raft outline " "which are smaller than such a circle." -msgstr "Ce paramètre définit combien d'angles intérieurs sont arrondis dans le contour de radeau. Les angles internes sont arrondis en un demi-cercle avec un rayon" -" égal à la valeur indiquée ici. Ce paramètre élimine également les cavités dans le contour de radeau qui sont d'une taille inférieure à ce cercle." +msgstr "Questa impostazione controlla l'entità dell'arrotondamento degli angoli interni sul profilo raft. Gli angoli interni vengono arrotondati a semicerchio" +" con un raggio pari al valore indicato. Questa impostazione elimina inoltre i fori sul profilo raft più piccoli di tale cerchio." #: /fdmprinter.def.json msgctxt "raft_airgap label" msgid "Raft Air Gap" -msgstr "Lame d'air du radeau" +msgstr "Traferro del raft" #: /fdmprinter.def.json msgctxt "raft_airgap description" @@ -5789,13 +5800,13 @@ msgid "" "The gap between the final raft layer and the first layer of the model. Only " "the first layer is raised by this amount to lower the bonding between the " "raft layer and the model. Makes it easier to peel off the raft." -msgstr "L’espace entre la dernière couche du radeau et la première couche du modèle. Seule la première couche est surélevée de cette quantité d’espace pour réduire" -" l’adhérence entre la couche du radeau et le modèle. Cela facilite le décollage du radeau." +msgstr "È l'interstizio tra lo strato di raft finale ed il primo strato del modello. Solo il primo strato viene sollevato di questo valore per ridurre l'adesione" +" fra lo strato di raft e il modello. Ciò rende più facile rimuovere il raft." #: /fdmprinter.def.json msgctxt "layer_0_z_overlap label" msgid "Initial Layer Z Overlap" -msgstr "Chevauchement Z de la couche initiale" +msgstr "Z Sovrapposizione Primo Strato" #: /fdmprinter.def.json msgctxt "layer_0_z_overlap description" @@ -5803,13 +5814,13 @@ msgid "" "Make the first and second layer of the model overlap in the Z direction to " "compensate for the filament lost in the airgap. All models above the first " "model layer will be shifted down by this amount." -msgstr "La première et la deuxième couche du modèle se chevauchent dans la direction Z pour compenser le filament perdu dans l'entrefer. Toutes les couches au-dessus" -" de la première couche du modèle seront décalées de ce montant." +msgstr "Effettua il primo e secondo strato di sovrapposizione modello nella direzione Z per compensare il filamento perso nel traferro. Tutti i modelli sopra il" +" primo strato del modello saranno spostati verso il basso di questa quantità." #: /fdmprinter.def.json msgctxt "raft_surface_layers label" msgid "Raft Top Layers" -msgstr "Couches supérieures du radeau" +msgstr "Strati superiori del raft" #: /fdmprinter.def.json msgctxt "raft_surface_layers description" @@ -5817,48 +5828,48 @@ msgid "" "The number of top layers on top of the 2nd raft layer. These are fully " "filled layers that the model sits on. 2 layers result in a smoother top " "surface than 1." -msgstr "Nombre de couches de surface au-dessus de la deuxième couche du radeau. Il s’agit des couches entièrement remplies sur lesquelles le modèle est posé. En" -" général, deux couches offrent une surface plus lisse qu'une seule." +msgstr "Numero di strati sulla parte superiore del secondo strato del raft. Si tratta di strati completamente riempiti su cui poggia il modello. 2 strati danno" +" come risultato una superficie superiore più levigata rispetto ad 1 solo strato." #: /fdmprinter.def.json msgctxt "raft_surface_thickness label" msgid "Raft Top Layer Thickness" -msgstr "Épaisseur de la couche supérieure du radeau" +msgstr "Spessore dello strato superiore del raft" #: /fdmprinter.def.json msgctxt "raft_surface_thickness description" msgid "Layer thickness of the top raft layers." -msgstr "Épaisseur des couches supérieures du radeau." +msgstr "È lo spessore degli strati superiori del raft." #: /fdmprinter.def.json msgctxt "raft_surface_line_width label" msgid "Raft Top Line Width" -msgstr "Largeur de la ligne supérieure du radeau" +msgstr "Larghezza delle linee superiori del raft" #: /fdmprinter.def.json msgctxt "raft_surface_line_width description" msgid "" "Width of the lines in the top surface of the raft. These can be thin lines " "so that the top of the raft becomes smooth." -msgstr "Largeur des lignes de la surface supérieure du radeau. Elles doivent être fines pour rendre le dessus du radeau lisse." +msgstr "Indica la larghezza delle linee della superficie superiore del raft. Queste possono essere linee sottili atte a levigare la parte superiore del raft." #: /fdmprinter.def.json msgctxt "raft_surface_line_spacing label" msgid "Raft Top Spacing" -msgstr "Interligne supérieur du radeau" +msgstr "Spaziatura superiore del raft" #: /fdmprinter.def.json msgctxt "raft_surface_line_spacing description" msgid "" "The distance between the raft lines for the top raft layers. The spacing " "should be equal to the line width, so that the surface is solid." -msgstr "La distance entre les lignes du radeau pour les couches supérieures de celui-ci. Cet espace doit être égal à la largeur de ligne afin de créer une surface" -" solide." +msgstr "Indica la distanza tra le linee che costituiscono la maglia superiore del raft. La distanza deve essere uguale alla larghezza delle linee, in modo tale" +" da ottenere una superficie solida." #: /fdmprinter.def.json msgctxt "raft_interface_layers label" msgid "Raft Middle Layers" -msgstr "Couches du milieu du radeau" +msgstr "Strati intermedi del raft" #: /fdmprinter.def.json msgctxt "raft_interface_layers description" @@ -5866,35 +5877,36 @@ msgid "" "The number of layers between the base and the surface of the raft. These " "comprise the main thickness of the raft. Increasing this creates a thicker, " "sturdier raft." -msgstr "Nombre de couches entre la base et la surface du radeau. Elles comprennent l'épaisseur principale du radeau. En l'augmentant, on obtient un radeau plus" -" épais et plus solide." +msgstr "Il numero di strati tra la base e la superficie del raft. Questi costituiscono lo spessore principale del raft. L'incremento di questo numero crea un raft" +" più spesso e robusto." #: /fdmprinter.def.json msgctxt "raft_interface_thickness label" msgid "Raft Middle Thickness" -msgstr "Épaisseur intermédiaire du radeau" +msgstr "Spessore dello strato intermedio del raft" #: /fdmprinter.def.json msgctxt "raft_interface_thickness description" msgid "Layer thickness of the middle raft layer." -msgstr "Épaisseur de la couche intermédiaire du radeau." +msgstr "È lo spessore dello strato intermedio del raft." #: /fdmprinter.def.json msgctxt "raft_interface_line_width label" msgid "Raft Middle Line Width" -msgstr "Largeur de la ligne intermédiaire du radeau" +msgstr "Larghezza delle linee dello strato intermedio del raft" #: /fdmprinter.def.json msgctxt "raft_interface_line_width description" msgid "" "Width of the lines in the middle raft layer. Making the second layer extrude " "more causes the lines to stick to the build plate." -msgstr "Largeur des lignes de la couche intermédiaire du radeau. Une plus grande extrusion de la deuxième couche renforce l'adhérence des lignes au plateau." +msgstr "Indica la larghezza delle linee dello strato intermedio del raft. Una maggiore estrusione del secondo strato provoca l'incollamento delle linee al piano" +" di stampa." #: /fdmprinter.def.json msgctxt "raft_interface_line_spacing label" msgid "Raft Middle Spacing" -msgstr "Interligne intermédiaire du radeau" +msgstr "Spaziatura dello strato intermedio del raft" #: /fdmprinter.def.json msgctxt "raft_interface_line_spacing description" @@ -5902,59 +5914,59 @@ msgid "" "The distance between the raft lines for the middle raft layer. The spacing " "of the middle should be quite wide, while being dense enough to support the " "top raft layers." -msgstr "La distance entre les lignes du radeau pour la couche intermédiaire de celui-ci. L'espace intermédiaire doit être assez large et suffisamment dense pour" -" supporter les couches supérieures du radeau." +msgstr "Indica la distanza fra le linee dello strato intermedio del raft. La spaziatura dello strato intermedio deve essere abbastanza ampia, ma al tempo stesso" +" sufficientemente fitta da sostenere gli strati superiori del raft." #: /fdmprinter.def.json msgctxt "raft_base_thickness label" msgid "Raft Base Thickness" -msgstr "Épaisseur de la base du radeau" +msgstr "Spessore della base del raft" #: /fdmprinter.def.json msgctxt "raft_base_thickness description" msgid "" "Layer thickness of the base raft layer. This should be a thick layer which " "sticks firmly to the printer build plate." -msgstr "Épaisseur de la couche de base du radeau. Cette couche doit être épaisse et adhérer fermement au plateau." +msgstr "Indica lo spessore dello strato di base del raft. Questo strato deve essere spesso per aderire saldamente al piano di stampa." #: /fdmprinter.def.json msgctxt "raft_base_line_width label" msgid "Raft Base Line Width" -msgstr "Largeur de la ligne de base du radeau" +msgstr "Larghezza delle linee dello strato di base del raft" #: /fdmprinter.def.json msgctxt "raft_base_line_width description" msgid "" "Width of the lines in the base raft layer. These should be thick lines to " "assist in build plate adhesion." -msgstr "Largeur des lignes de la couche de base du radeau. Elles doivent être épaisses pour permettre l’adhérence au plateau." +msgstr "Indica la larghezza delle linee dello strato di base del raft. Le linee di questo strato devono essere spesse per favorire l'adesione al piano di stampa." #: /fdmprinter.def.json msgctxt "raft_base_line_spacing label" msgid "Raft Base Line Spacing" -msgstr "Espacement des lignes de base du radeau" +msgstr "Spaziatura delle linee dello strato di base del raft" #: /fdmprinter.def.json msgctxt "raft_base_line_spacing description" msgid "" "The distance between the raft lines for the base raft layer. Wide spacing " "makes for easy removal of the raft from the build plate." -msgstr "La distance entre les lignes du radeau pour la couche de base de celui-ci. Un interligne large facilite le retrait du radeau du plateau." +msgstr "Indica la distanza tra le linee che costituiscono lo strato di base del raft. Un'ampia spaziatura favorisce la rimozione del raft dal piano di stampa." #: /fdmprinter.def.json msgctxt "raft_speed label" msgid "Raft Print Speed" -msgstr "Vitesse d’impression du radeau" +msgstr "Velocità di stampa del raft" #: /fdmprinter.def.json msgctxt "raft_speed description" msgid "The speed at which the raft is printed." -msgstr "La vitesse à laquelle le radeau est imprimé." +msgstr "Indica la velocità alla quale il raft è stampato." #: /fdmprinter.def.json msgctxt "raft_surface_speed label" msgid "Raft Top Print Speed" -msgstr "Vitesse d’impression du dessus du radeau" +msgstr "Velocità di stampa parte superiore del raft" #: /fdmprinter.def.json msgctxt "raft_surface_speed description" @@ -5962,13 +5974,13 @@ msgid "" "The speed at which the top raft layers are printed. These should be printed " "a bit slower, so that the nozzle can slowly smooth out adjacent surface " "lines." -msgstr "Vitesse à laquelle les couches du dessus du radeau sont imprimées. Elles doivent être imprimées légèrement plus lentement afin que la buse puisse lentement" -" lisser les lignes de surface adjacentes." +msgstr "Indica la velocità alla quale sono stampati gli strati superiori del raft. La stampa di questi strati deve avvenire un po' più lentamente, in modo da consentire" +" all'ugello di levigare lentamente le linee superficiali adiacenti." #: /fdmprinter.def.json msgctxt "raft_interface_speed label" msgid "Raft Middle Print Speed" -msgstr "Vitesse d’impression du milieu du radeau" +msgstr "Velocità di stampa raft intermedio" #: /fdmprinter.def.json msgctxt "raft_interface_speed description" @@ -5976,13 +5988,13 @@ msgid "" "The speed at which the middle raft layer is printed. This should be printed " "quite slowly, as the volume of material coming out of the nozzle is quite " "high." -msgstr "La vitesse à laquelle la couche du milieu du radeau est imprimée. Cette couche doit être imprimée suffisamment lentement du fait que la quantité de matériau" -" sortant de la buse est assez importante." +msgstr "Indica la velocità alla quale viene stampato lo strato intermedio del raft. La sua stampa deve avvenire molto lentamente, considerato che il volume di" +" materiale che fuoriesce dall'ugello è piuttosto elevato." #: /fdmprinter.def.json msgctxt "raft_base_speed label" msgid "Raft Base Print Speed" -msgstr "Vitesse d’impression de la base du radeau" +msgstr "Velocità di stampa della base del raft" #: /fdmprinter.def.json msgctxt "raft_base_speed description" @@ -5990,222 +6002,222 @@ msgid "" "The speed at which the base raft layer is printed. This should be printed " "quite slowly, as the volume of material coming out of the nozzle is quite " "high." -msgstr "La vitesse à laquelle la couche de base du radeau est imprimée. Cette couche doit être imprimée suffisamment lentement du fait que la quantité de matériau" -" sortant de la buse est assez importante." +msgstr "Indica la velocità alla quale viene stampata la base del raft. La sua stampa deve avvenire molto lentamente, considerato che il volume di materiale che" +" fuoriesce dall'ugello è piuttosto elevato." #: /fdmprinter.def.json msgctxt "raft_acceleration label" msgid "Raft Print Acceleration" -msgstr "Accélération de l'impression du radeau" +msgstr "Accelerazione di stampa del raft" #: /fdmprinter.def.json msgctxt "raft_acceleration description" msgid "The acceleration with which the raft is printed." -msgstr "L'accélération selon laquelle le radeau est imprimé." +msgstr "Indica l’accelerazione con cui viene stampato il raft." #: /fdmprinter.def.json msgctxt "raft_surface_acceleration label" msgid "Raft Top Print Acceleration" -msgstr "Accélération de l'impression du dessus du radeau" +msgstr "Accelerazione di stampa parte superiore del raft" #: /fdmprinter.def.json msgctxt "raft_surface_acceleration description" msgid "The acceleration with which the top raft layers are printed." -msgstr "L'accélération selon laquelle les couches du dessus du radeau sont imprimées." +msgstr "Indica l’accelerazione alla quale vengono stampati gli strati superiori del raft." #: /fdmprinter.def.json msgctxt "raft_interface_acceleration label" msgid "Raft Middle Print Acceleration" -msgstr "Accélération de l'impression du milieu du radeau" +msgstr "Accelerazione di stampa raft intermedio" #: /fdmprinter.def.json msgctxt "raft_interface_acceleration description" msgid "The acceleration with which the middle raft layer is printed." -msgstr "L'accélération selon laquelle la couche du milieu du radeau est imprimée." +msgstr "Indica l’accelerazione con cui viene stampato lo strato intermedio del raft." #: /fdmprinter.def.json msgctxt "raft_base_acceleration label" msgid "Raft Base Print Acceleration" -msgstr "Accélération de l'impression de la base du radeau" +msgstr "Accelerazione di stampa della base del raft" #: /fdmprinter.def.json msgctxt "raft_base_acceleration description" msgid "The acceleration with which the base raft layer is printed." -msgstr "L'accélération selon laquelle la couche de base du radeau est imprimée." +msgstr "Indica l’accelerazione con cui viene stampato lo strato di base del raft." #: /fdmprinter.def.json msgctxt "raft_jerk label" msgid "Raft Print Jerk" -msgstr "Saccade d’impression du radeau" +msgstr "Jerk stampa del raft" #: /fdmprinter.def.json msgctxt "raft_jerk description" msgid "The jerk with which the raft is printed." -msgstr "La saccade selon laquelle le radeau est imprimé." +msgstr "Indica il jerk con cui viene stampato il raft." #: /fdmprinter.def.json msgctxt "raft_surface_jerk label" msgid "Raft Top Print Jerk" -msgstr "Saccade d’impression du dessus du radeau" +msgstr "Jerk di stampa parte superiore del raft" #: /fdmprinter.def.json msgctxt "raft_surface_jerk description" msgid "The jerk with which the top raft layers are printed." -msgstr "La saccade selon laquelle les couches du dessus du radeau sont imprimées." +msgstr "Indica il jerk al quale vengono stampati gli strati superiori del raft." #: /fdmprinter.def.json msgctxt "raft_interface_jerk label" msgid "Raft Middle Print Jerk" -msgstr "Saccade d’impression du milieu du radeau" +msgstr "Jerk di stampa raft intermedio" #: /fdmprinter.def.json msgctxt "raft_interface_jerk description" msgid "The jerk with which the middle raft layer is printed." -msgstr "La saccade selon laquelle la couche du milieu du radeau est imprimée." +msgstr "Indica il jerk con cui viene stampato lo strato intermedio del raft." #: /fdmprinter.def.json msgctxt "raft_base_jerk label" msgid "Raft Base Print Jerk" -msgstr "Saccade d’impression de la base du radeau" +msgstr "Jerk di stampa della base del raft" #: /fdmprinter.def.json msgctxt "raft_base_jerk description" msgid "The jerk with which the base raft layer is printed." -msgstr "La saccade selon laquelle la couche de base du radeau est imprimée." +msgstr "Indica il jerk con cui viene stampato lo strato di base del raft." #: /fdmprinter.def.json msgctxt "raft_fan_speed label" msgid "Raft Fan Speed" -msgstr "Vitesse du ventilateur pendant le radeau" +msgstr "Velocità della ventola per il raft" #: /fdmprinter.def.json msgctxt "raft_fan_speed description" msgid "The fan speed for the raft." -msgstr "La vitesse du ventilateur pour le radeau." +msgstr "Indica la velocità di rotazione della ventola per il raft." #: /fdmprinter.def.json msgctxt "raft_surface_fan_speed label" msgid "Raft Top Fan Speed" -msgstr "Vitesse du ventilateur pour le dessus du radeau" +msgstr "Velocità della ventola per la parte superiore del raft" #: /fdmprinter.def.json msgctxt "raft_surface_fan_speed description" msgid "The fan speed for the top raft layers." -msgstr "La vitesse du ventilateur pour les couches du dessus du radeau." +msgstr "Indica la velocità di rotazione della ventola per gli strati superiori del raft." #: /fdmprinter.def.json msgctxt "raft_interface_fan_speed label" msgid "Raft Middle Fan Speed" -msgstr "Vitesse du ventilateur pour le milieu du radeau" +msgstr "Velocità della ventola per il raft intermedio" #: /fdmprinter.def.json msgctxt "raft_interface_fan_speed description" msgid "The fan speed for the middle raft layer." -msgstr "La vitesse du ventilateur pour la couche du milieu du radeau." +msgstr "Indica la velocità di rotazione della ventola per gli strati intermedi del raft." #: /fdmprinter.def.json msgctxt "raft_base_fan_speed label" msgid "Raft Base Fan Speed" -msgstr "Vitesse du ventilateur pour la base du radeau" +msgstr "Velocità della ventola per la base del raft" #: /fdmprinter.def.json msgctxt "raft_base_fan_speed description" msgid "The fan speed for the base raft layer." -msgstr "La vitesse du ventilateur pour la couche de base du radeau." +msgstr "Indica la velocità di rotazione della ventola per lo strato di base del raft." #: /fdmprinter.def.json msgctxt "dual label" msgid "Dual Extrusion" -msgstr "Double extrusion" +msgstr "Doppia estrusione" #: /fdmprinter.def.json msgctxt "dual description" msgid "Settings used for printing with multiple extruders." -msgstr "Paramètres utilisés pour imprimer avec plusieurs extrudeuses." +msgstr "Indica le impostazioni utilizzate per la stampa con estrusori multipli." #: /fdmprinter.def.json msgctxt "prime_tower_enable label" msgid "Enable Prime Tower" -msgstr "Activer la tour d'amorçage" +msgstr "Abilitazione torre di innesco" #: /fdmprinter.def.json msgctxt "prime_tower_enable description" msgid "" "Print a tower next to the print which serves to prime the material after " "each nozzle switch." -msgstr "Imprimer une tour à côté de l'impression qui sert à amorcer le matériau après chaque changement de buse." +msgstr "Stampa una torre accanto alla stampa che serve per innescare il materiale dopo ogni cambio ugello." #: /fdmprinter.def.json msgctxt "prime_tower_size label" msgid "Prime Tower Size" -msgstr "Taille de la tour d'amorçage" +msgstr "Dimensioni torre di innesco" #: /fdmprinter.def.json msgctxt "prime_tower_size description" msgid "The width of the prime tower." -msgstr "La largeur de la tour d'amorçage." +msgstr "Indica la larghezza della torre di innesco." #: /fdmprinter.def.json msgctxt "prime_tower_min_volume label" msgid "Prime Tower Minimum Volume" -msgstr "Volume minimum de la tour d'amorçage" +msgstr "Volume minimo torre di innesco" #: /fdmprinter.def.json msgctxt "prime_tower_min_volume description" msgid "" "The minimum volume for each layer of the prime tower in order to purge " "enough material." -msgstr "Le volume minimum pour chaque touche de la tour d'amorçage afin de purger suffisamment de matériau." +msgstr "Il volume minimo per ciascuno strato della torre di innesco per scaricare materiale a sufficienza." #: /fdmprinter.def.json msgctxt "prime_tower_position_x label" msgid "Prime Tower X Position" -msgstr "Position X de la tour d'amorçage" +msgstr "Posizione X torre di innesco" #: /fdmprinter.def.json msgctxt "prime_tower_position_x description" msgid "The x coordinate of the position of the prime tower." -msgstr "Les coordonnées X de la position de la tour d'amorçage." +msgstr "Indica la coordinata X della posizione della torre di innesco." #: /fdmprinter.def.json msgctxt "prime_tower_position_y label" msgid "Prime Tower Y Position" -msgstr "Position Y de la tour d'amorçage" +msgstr "Posizione Y torre di innesco" #: /fdmprinter.def.json msgctxt "prime_tower_position_y description" msgid "The y coordinate of the position of the prime tower." -msgstr "Les coordonnées Y de la position de la tour d'amorçage." +msgstr "Indica la coordinata Y della posizione della torre di innesco." #: /fdmprinter.def.json msgctxt "prime_tower_wipe_enabled label" msgid "Wipe Inactive Nozzle on Prime Tower" -msgstr "Essuyer le bec d'impression inactif sur la tour d'amorçage" +msgstr "Ugello pulitura inattiva sulla torre di innesco" #: /fdmprinter.def.json msgctxt "prime_tower_wipe_enabled description" msgid "" "After printing the prime tower with one nozzle, wipe the oozed material from " "the other nozzle off on the prime tower." -msgstr "Après l'impression de la tour d'amorçage à l'aide d'une buse, nettoyer le matériau qui suinte de l'autre buse sur la tour d'amorçage." +msgstr "Dopo la stampa della torre di innesco con un ugello, pulisce il materiale fuoriuscito dall’altro ugello sulla torre di innesco." #: /fdmprinter.def.json msgctxt "prime_tower_brim_enable label" msgid "Prime Tower Brim" -msgstr "Bordure de la tour d'amorçage" +msgstr "Brim torre di innesco" #: /fdmprinter.def.json msgctxt "prime_tower_brim_enable description" msgid "" "Prime-towers might need the extra adhesion afforded by a brim even if the " "model doesn't. Presently can't be used with the 'Raft' adhesion-type." -msgstr "Les tours d'amorçage peuvent avoir besoin de l'adhérence supplémentaire d'une bordure, même si le modèle n'en a pas besoin. Ne peut actuellement pas être" -" utilisé avec le type d'adhérence « Raft » (radeau)." +msgstr "Le torri di innesco potrebbero richiedere un'adesione supplementare fornita da un bordo (brim), anche se il modello non lo prevede. Attualmente non può" +" essere utilizzato con il tipo di adesione 'Raft'." #: /fdmprinter.def.json msgctxt "ooze_shield_enabled label" msgid "Enable Ooze Shield" -msgstr "Activer le bouclier de suintage" +msgstr "Abilitazione del riparo materiale fuoriuscito" #: /fdmprinter.def.json msgctxt "ooze_shield_enabled description" @@ -6213,13 +6225,13 @@ msgid "" "Enable exterior ooze shield. This will create a shell around the model which " "is likely to wipe a second nozzle if it's at the same height as the first " "nozzle." -msgstr "Activer le bouclier de suintage extérieur. Cela créera une coque autour du modèle qui est susceptible d'essuyer une deuxième buse si celle-ci est à la" -" même hauteur que la première buse." +msgstr "Abilita il riparo esterno del materiale fuoriuscito. Questo crea un guscio intorno al modello per pulitura con un secondo ugello, se è alla stessa altezza" +" del primo ugello." #: /fdmprinter.def.json msgctxt "ooze_shield_angle label" msgid "Ooze Shield Angle" -msgstr "Angle du bouclier de suintage" +msgstr "Angolo del riparo materiale fuoriuscito" #: /fdmprinter.def.json msgctxt "ooze_shield_angle description" @@ -6227,23 +6239,23 @@ msgid "" "The maximum angle a part in the ooze shield will have. With 0 degrees being " "vertical, and 90 degrees being horizontal. A smaller angle leads to less " "failed ooze shields, but more material." -msgstr "L'angle maximal qu'une partie du bouclier de suintage peut adopter. Zéro degré est vertical et 90 degrés est horizontal. Un angle plus petit entraîne moins" -" d'échecs au niveau des boucliers de suintage, mais utilise plus de matériaux." +msgstr "È l'angolazione massima ammessa delle parti nel riparo. Con 0 gradi verticale e 90 gradi orizzontale. Un angolo più piccolo comporta minori ripari non" +" riusciti, ma maggiore materiale." #: /fdmprinter.def.json msgctxt "ooze_shield_dist label" msgid "Ooze Shield Distance" -msgstr "Distance du bouclier de suintage" +msgstr "Distanza del riparo materiale fuoriuscito" #: /fdmprinter.def.json msgctxt "ooze_shield_dist description" msgid "Distance of the ooze shield from the print, in the X/Y directions." -msgstr "Distance entre le bouclier de suintage et l'impression dans les directions X/Y." +msgstr "Indica la distanza del riparo materiale fuoriuscito dalla stampa, nelle direzioni X/Y." #: /fdmprinter.def.json msgctxt "switch_extruder_retraction_amount label" msgid "Nozzle Switch Retraction Distance" -msgstr "Distance de rétraction de changement de buse" +msgstr "Distanza di retrazione cambio ugello" #: /fdmprinter.def.json msgctxt "switch_extruder_retraction_amount description" @@ -6251,69 +6263,69 @@ msgid "" "The amount of retraction when switching extruders. Set to 0 for no " "retraction at all. This should generally be the same as the length of the " "heat zone." -msgstr "Degré de rétraction lors de la commutation d'extrudeuses. Une valeur de 0 signifie qu'il n'y aura aucune rétraction. En général, cette valeur doit être" -" équivalente à la longueur de la zone de chauffe." +msgstr "Indica il valore di retrazione alla commutazione degli estrusori. Impostato a 0 per nessuna retrazione. Questo valore generalmente dovrebbe essere lo stesso" +" della lunghezza della zona di riscaldamento." #: /fdmprinter.def.json msgctxt "switch_extruder_retraction_speeds label" msgid "Nozzle Switch Retraction Speed" -msgstr "Vitesse de rétraction de changement de buse" +msgstr "Velocità di retrazione cambio ugello" #: /fdmprinter.def.json msgctxt "switch_extruder_retraction_speeds description" msgid "" "The speed at which the filament is retracted. A higher retraction speed " "works better, but a very high retraction speed can lead to filament grinding." -msgstr "La vitesse à laquelle le filament est rétracté. Une vitesse de rétraction plus élevée fonctionne mieux, mais une vitesse de rétraction très élevée peut" -" causer l'écrasement du filament." +msgstr "Indica la velocità di retrazione del filamento. Una maggiore velocità di retrazione funziona bene, ma una velocità di retrazione eccessiva può portare" +" alla deformazione del filamento." #: /fdmprinter.def.json msgctxt "switch_extruder_retraction_speed label" msgid "Nozzle Switch Retract Speed" -msgstr "Vitesse de rétraction de changement de buse" +msgstr "Velocità di retrazione cambio ugello" #: /fdmprinter.def.json msgctxt "switch_extruder_retraction_speed description" msgid "" "The speed at which the filament is retracted during a nozzle switch retract." -msgstr "La vitesse à laquelle le filament est rétracté pendant une rétraction de changement de buse." +msgstr "Indica la velocità alla quale il filamento viene retratto durante una retrazione per cambio ugello." #: /fdmprinter.def.json msgctxt "switch_extruder_prime_speed label" msgid "Nozzle Switch Prime Speed" -msgstr "Vitesse d'amorçage de changement de buse" +msgstr "Velocità innesco cambio ugello" #: /fdmprinter.def.json msgctxt "switch_extruder_prime_speed description" msgid "" "The speed at which the filament is pushed back after a nozzle switch " "retraction." -msgstr "La vitesse à laquelle le filament est poussé vers l'arrière après une rétraction de changement de buse." +msgstr "Indica la velocità alla quale il filamento viene sospinto indietro dopo la retrazione per cambio ugello." #: /fdmprinter.def.json msgctxt "switch_extruder_extra_prime_amount label" msgid "Nozzle Switch Extra Prime Amount" -msgstr "Montant de l'amorce supplémentaire lors d'un changement de buse" +msgstr "Quantità di materiale extra della Prime Tower, al cambio ugello" #: /fdmprinter.def.json msgctxt "switch_extruder_extra_prime_amount description" msgid "Extra material to prime after nozzle switching." -msgstr "Matériel supplémentaire à amorcer après le changement de buse." +msgstr "Materiale extra per l'innesco dopo il cambio dell'ugello." #: /fdmprinter.def.json msgctxt "meshfix label" msgid "Mesh Fixes" -msgstr "Corrections" +msgstr "Correzioni delle maglie" #: /fdmprinter.def.json msgctxt "meshfix description" msgid "Make the meshes more suited for 3D printing." -msgstr "Rendez les mailles plus adaptées à l'impression 3D." +msgstr "Rendere le maglie più indicate alla stampa 3D." #: /fdmprinter.def.json msgctxt "meshfix_union_all label" msgid "Union Overlapping Volumes" -msgstr "Joindre les volumes se chevauchant" +msgstr "Unione dei volumi in sovrapposizione" #: /fdmprinter.def.json msgctxt "meshfix_union_all description" @@ -6321,13 +6333,13 @@ msgid "" "Ignore the internal geometry arising from overlapping volumes within a mesh " "and print the volumes as one. This may cause unintended internal cavities to " "disappear." -msgstr "Ignorer la géométrie interne pouvant découler de volumes se chevauchant à l'intérieur d'un maillage et imprimer les volumes comme un seul. Cela peut entraîner" -" la disparition des cavités internes accidentelles." +msgstr "Questa funzione ignora la geometria interna derivante da volumi in sovrapposizione all’interno di una maglia, stampandoli come un unico volume. Questo" +" può comportare la scomparsa di cavità interne." #: /fdmprinter.def.json msgctxt "meshfix_union_all_remove_holes label" msgid "Remove All Holes" -msgstr "Supprimer tous les trous" +msgstr "Rimozione di tutti i fori" #: /fdmprinter.def.json msgctxt "meshfix_union_all_remove_holes description" @@ -6335,13 +6347,13 @@ msgid "" "Remove the holes in each layer and keep only the outside shape. This will " "ignore any invisible internal geometry. However, it also ignores layer holes " "which can be viewed from above or below." -msgstr "Supprime les trous dans chacune des couches et conserve uniquement la forme extérieure. Tous les détails internes invisibles seront ignorés. Il en va de" -" même pour les trous qui pourraient être visibles depuis le dessus ou le dessous de la pièce." +msgstr "Rimuove i fori presenti su ciascuno strato e mantiene soltanto la forma esterna. Questa funzione ignora qualsiasi invisibile geometria interna. Tuttavia," +" essa ignora allo stesso modo i fori degli strati visibili da sopra o da sotto." #: /fdmprinter.def.json msgctxt "meshfix_extensive_stitching label" msgid "Extensive Stitching" -msgstr "Raccommodage" +msgstr "Ricucitura completa dei fori" #: /fdmprinter.def.json msgctxt "meshfix_extensive_stitching description" @@ -6349,13 +6361,13 @@ msgid "" "Extensive stitching tries to stitch up open holes in the mesh by closing the " "hole with touching polygons. This option can introduce a lot of processing " "time." -msgstr "Le raccommodage consiste en la suppression des trous dans le maillage en tentant de fermer le trou avec des intersections entre polygones existants. Cette" -" option peut induire beaucoup de temps de calcul." +msgstr "Questa funzione tenta di 'ricucire' i fori aperti nella maglia chiudendo il foro con poligoni a contatto. Questa opzione può richiedere lunghi tempi di" +" elaborazione." #: /fdmprinter.def.json msgctxt "meshfix_keep_open_polygons label" msgid "Keep Disconnected Faces" -msgstr "Conserver les faces disjointes" +msgstr "Mantenimento delle superfici scollegate" #: /fdmprinter.def.json msgctxt "meshfix_keep_open_polygons description" @@ -6364,38 +6376,38 @@ msgid "" "a layer with big holes. Enabling this option keeps those parts which cannot " "be stitched. This option should be used as a last resort option when " "everything else fails to produce proper g-code." -msgstr "Normalement, Cura essaye de raccommoder les petits trous dans le maillage et supprime les parties des couches contenant de gros trous. Activer cette option" -" pousse Cura à garder les parties qui ne peuvent être raccommodées. Cette option doit être utilisée en dernier recours quand tout le reste échoue à produire" -" un G-Code correct." +msgstr "Di norma Cura cerca di \"ricucire\" piccoli fori nella maglia e di rimuovere le parti di uno strato che presentano grossi fori. Abilitando questa opzione," +" Cura mantiene quelle parti che non possono essere 'ricucite'. Questa opzione deve essere utilizzata come ultima risorsa quando non sia stato possibile" +" produrre un corretto codice G in nessun altro modo." #: /fdmprinter.def.json msgctxt "multiple_mesh_overlap label" msgid "Merged Meshes Overlap" -msgstr "Chevauchement des mailles fusionnées" +msgstr "Sovrapposizione maglie" #: /fdmprinter.def.json msgctxt "multiple_mesh_overlap description" msgid "" "Make meshes which are touching each other overlap a bit. This makes them " "bond together better." -msgstr "Faire de sorte que les maillages qui se touchent se chevauchent légèrement. Cela permet aux maillages de mieux adhérer les uns aux autres." +msgstr "Fa sovrapporre leggermente le maglie a contatto tra loro. In tal modo ne migliora l’adesione." #: /fdmprinter.def.json msgctxt "carve_multiple_volumes label" msgid "Remove Mesh Intersection" -msgstr "Supprimer l'intersection des mailles" +msgstr "Rimuovi intersezione maglie" #: /fdmprinter.def.json msgctxt "carve_multiple_volumes description" msgid "" "Remove areas where multiple meshes are overlapping with each other. This may " "be used if merged dual material objects overlap with each other." -msgstr "Supprime les zones sur lesquelles plusieurs mailles se chevauchent. Cette option peut être utilisée si des objets à matériau double fusionné se chevauchent." +msgstr "Rimuove le aree in cui maglie multiple si sovrappongono tra loro. Questo può essere usato se oggetti di due materiali uniti si sovrappongono tra loro." #: /fdmprinter.def.json msgctxt "alternate_carve_order label" msgid "Alternate Mesh Removal" -msgstr "Alterner le retrait des maillages" +msgstr "Rimozione maglie alternate" #: /fdmprinter.def.json msgctxt "alternate_carve_order description" @@ -6404,13 +6416,13 @@ msgid "" "that the overlapping meshes become interwoven. Turning this setting off will " "cause one of the meshes to obtain all of the volume in the overlap, while it " "is removed from the other meshes." -msgstr "Passe aux volumes d'intersection de maille qui appartiennent à chaque couche, de manière à ce que les mailles qui se chevauchent soient entrelacées. Si" -" vous désactivez ce paramètre, l'une des mailles obtiendra tout le volume dans le chevauchement tandis qu'il est retiré des autres mailles." +msgstr "Selezionare quali volumi di intersezione maglie appartengono a ciascuno strato, in modo che le maglie sovrapposte diventino interconnesse. Disattivando" +" questa funzione una delle maglie ottiene tutto il volume della sovrapposizione, che viene rimosso dalle altre maglie." #: /fdmprinter.def.json msgctxt "remove_empty_first_layers label" msgid "Remove Empty First Layers" -msgstr "Supprimer les premières couches vides" +msgstr "Rimuovere i primi strati vuoti" #: /fdmprinter.def.json msgctxt "remove_empty_first_layers description" @@ -6418,13 +6430,13 @@ msgid "" "Remove empty layers beneath the first printed layer if they are present. " "Disabling this setting can cause empty first layers if the Slicing Tolerance " "setting is set to Exclusive or Middle." -msgstr "Supprimer les couches vides sous la première couche imprimée si elles sont présentes. Le fait de désactiver ce paramètre peut entraîner l'apparition de" -" premières couches vides si le paramètre Tolérance à la découpe est défini sur Exclusif ou Milieu." +msgstr "Rimuovere gli strati vuoti sotto il primo strato stampato, se presenti. La disabilitazione di questa impostazione può provocare la presenza di primi strati" +" vuoti, se l'impostazione di Tolleranza di sezionamento è impostata su Esclusiva o Intermedia." #: /fdmprinter.def.json msgctxt "meshfix_maximum_resolution label" msgid "Maximum Resolution" -msgstr "Résolution maximum" +msgstr "Risoluzione massima" #: /fdmprinter.def.json msgctxt "meshfix_maximum_resolution description" @@ -6433,14 +6445,14 @@ msgid "" "mesh will have a lower resolution. This may allow the printer to keep up " "with the speed it has to process g-code and will increase slice speed by " "removing details of the mesh that it can't process anyway." -msgstr "Taille minimum d'un segment de ligne après découpage. Si vous augmentez cette valeur, la maille aura une résolution plus faible. Cela peut permettre à" -" l'imprimante de suivre la vitesse à laquelle elle doit traiter le G-Code et augmentera la vitesse de découpe en enlevant des détails de la maille que l'imprimante" -" ne peut pas traiter de toute manière." +msgstr "La dimensione minima di un segmento di linea dopo il sezionamento. Se tale dimensione aumenta, la maglia avrà una risoluzione inferiore. Questo può consentire" +" alla stampante di mantenere la velocità per processare il g-code ed aumenterà la velocità di sezionamento eliminando i dettagli della maglia che non è" +" comunque in grado di processare." #: /fdmprinter.def.json msgctxt "meshfix_maximum_travel_resolution label" msgid "Maximum Travel Resolution" -msgstr "Résolution de déplacement maximum" +msgstr "Risoluzione massima di spostamento" #: /fdmprinter.def.json msgctxt "meshfix_maximum_travel_resolution description" @@ -6449,14 +6461,14 @@ msgid "" "this, the travel moves will have less smooth corners. This may allow the " "printer to keep up with the speed it has to process g-code, but it may cause " "model avoidance to become less accurate." -msgstr "Taille minimale d'un segment de ligne de déplacement après la découpe. Si vous augmentez cette valeur, les mouvements de déplacement auront des coins moins" -" lisses. Cela peut permettre à l'imprimante de suivre la vitesse à laquelle elle doit traiter le G-Code, mais cela peut réduire la précision de l'évitement" -" du modèle." +msgstr "La dimensione minima di un segmento lineare di spostamento dopo il sezionamento. Aumentando tale dimensione, le corse di spostamento avranno meno angoli" +" arrotondati. La stampante può così mantenere la velocità per processare il g-code, ma si può verificare una riduzione della precisione di aggiramento" +" del modello." #: /fdmprinter.def.json msgctxt "meshfix_maximum_deviation label" msgid "Maximum Deviation" -msgstr "Écart maximum" +msgstr "Deviazione massima" #: /fdmprinter.def.json msgctxt "meshfix_maximum_deviation description" @@ -6466,14 +6478,14 @@ msgid "" "but the g-code will be smaller. Maximum Deviation is a limit for Maximum " "Resolution, so if the two conflict the Maximum Deviation will always be held " "true." -msgstr "L'écart maximum autorisé lors de la réduction de la résolution pour le paramètre Résolution maximum. Si vous augmentez cette valeur, l'impression sera" -" moins précise, mais le G-Code sera plus petit. L'écart maximum est une limite pour la résolution maximum. Donc si les deux entrent en conflit, l'Écart" -" maximum restera valable." +msgstr "La deviazione massima consentita quando si riduce la risoluzione per l'impostazione Risoluzione massima. Se si aumenta questo parametro, la stampa sarà" +" meno precisa, ma il g-code sarà più piccolo. Deviazione massima rappresenta il limite per Risoluzione massima; pertanto se le due impostazioni sono in" +" conflitto, verrà considerata vera l'impostazione Deviazione massima." #: /fdmprinter.def.json msgctxt "meshfix_maximum_extrusion_area_deviation label" msgid "Maximum Extrusion Area Deviation" -msgstr "Écart maximal de la surface d'extrusion" +msgstr "Deviazione massima dell'area di estrusione" #: /fdmprinter.def.json msgctxt "meshfix_maximum_extrusion_area_deviation description" @@ -6486,26 +6498,25 @@ msgid "" "over-) extrusion in between straight parallel walls, as more intermediate " "width-changing points will be allowed to be removed. Your print will be less " "accurate, but the g-code will be smaller." -msgstr "L'écart maximal de la surface d'extrusion autorisé lors de la suppression des points intermédiaires d'une ligne droite. Un point intermédiaire peut servir" -" de point de changement de largeur dans une longue ligne droite. Par conséquent, s'il est supprimé, la ligne aura une largeur uniforme et, par conséquent," -" cela engendrera la perte (ou le gain) d'un peu de surface d'extrusion. Si vous augmentez cette valeur, vous pourrez constater une légère sous-extrusion" -" (ou sur-extrusion) entre les parois parallèles droites car davantage de points intermédiaires de changement de largeur pourront être supprimés. Votre" -" impression sera moins précise, mais le G-code sera plus petit." +msgstr "La deviazione massima dell'area di estrusione consentita durante la rimozione di punti intermedi da una linea retta. Un punto intermedio può fungere da" +" punto di modifica larghezza in una lunga linea retta. Pertanto, se viene rimosso, la linea avrà una larghezza uniforme e, come risultato, perderà (o guadagnerà)" +" area di estrusione. In caso di incremento si può notare una leggera sotto (o sovra) estrusione tra pareti parallele rette, poiché sarà possibile rimuovere" +" più punti di variazione della larghezza intermedi. La stampa sarà meno precisa, ma il G-Code sarà più piccolo." #: /fdmprinter.def.json msgctxt "blackmagic label" msgid "Special Modes" -msgstr "Modes spéciaux" +msgstr "Modalità speciali" #: /fdmprinter.def.json msgctxt "blackmagic description" msgid "Non-traditional ways to print your models." -msgstr "Des moyens non traditionnels d'imprimer vos modèles." +msgstr "Modi non tradizionali di stampare i modelli." #: /fdmprinter.def.json msgctxt "print_sequence label" msgid "Print Sequence" -msgstr "Séquence d'impression" +msgstr "Sequenza di stampa" #: /fdmprinter.def.json msgctxt "print_sequence description" @@ -6515,24 +6526,24 @@ msgid "" "only one extruder is enabled and b) all models are separated in such a way " "that the whole print head can move in between and all models are lower than " "the distance between the nozzle and the X/Y axes." -msgstr "Imprime tous les modèles en même temps, couche par couche, ou attend la fin d'un modèle pour en commencer un autre. Le mode « Un modèle à la fois » est" -" disponible seulement si a) un seul extrudeur est activé et si b) tous les modèles sont suffisamment éloignés pour que la tête puisse passer entre eux" -" et qu'ils sont tous inférieurs à la distance entre la buse et les axes X/Y." +msgstr "Indica se stampare tutti i modelli un layer alla volta o se attendere di terminare un modello prima di passare al successivo. La modalità \"uno per volta\"" +" è possibile solo se a) è abilitato solo un estrusore b) tutti i modelli sono separati in modo tale che l'intera testina di stampa possa muoversi tra di" +" essi e che tutti i modelli siano più bassi della distanza tra l'ugello e gli assi X/Y." #: /fdmprinter.def.json msgctxt "print_sequence option all_at_once" msgid "All at Once" -msgstr "Tout en même temps" +msgstr "Tutti contemporaneamente" #: /fdmprinter.def.json msgctxt "print_sequence option one_at_a_time" msgid "One at a Time" -msgstr "Un à la fois" +msgstr "Uno alla volta" #: /fdmprinter.def.json msgctxt "infill_mesh label" msgid "Infill Mesh" -msgstr "Maille de remplissage" +msgstr "Maglia di riempimento" #: /fdmprinter.def.json msgctxt "infill_mesh description" @@ -6540,13 +6551,13 @@ msgid "" "Use this mesh to modify the infill of other meshes with which it overlaps. " "Replaces infill regions of other meshes with regions for this mesh. It's " "suggested to only print one Wall and no Top/Bottom Skin for this mesh." -msgstr "Utiliser cette maille pour modifier le remplissage d'autres mailles qu'elle chevauche. Remplace les régions de remplissage d'autres mailles par des régions" -" de cette maille. Il est conseillé d'imprimer uniquement une Paroi et pas de Couche du dessus/dessous pour cette maille." +msgstr "Utilizzare questa maglia per modificare il riempimento di altre maglie a cui è sovrapposta. Sostituisce le regioni di riempimento di altre maglie con le" +" regioni di questa maglia. Si consiglia di stampare solo una parete e non il rivestimento esterno superiore/inferiore per questa maglia." #: /fdmprinter.def.json msgctxt "infill_mesh_order label" msgid "Mesh Processing Rank" -msgstr "Rang de traitement du maillage" +msgstr "Classificazione dell'elaborazione delle maglie" #: /fdmprinter.def.json msgctxt "infill_mesh_order description" @@ -6556,14 +6567,14 @@ msgid "" "settings of the mesh with the highest rank. An infill mesh with a higher " "rank will modify the infill of infill meshes with lower rank and normal " "meshes." -msgstr "Détermine la priorité de cette maille lorsque plusieurs chevauchements de mailles de remplissage sont pris en considération. Les zones comportant plusieurs" -" chevauchements de mailles de remplissage prendront en compte les paramètres du maillage ayant l'ordre le plus élevé. Une maille de remplissage possédant" -" un ordre plus élevé modifiera le remplissage des mailles de remplissage ayant un ordre plus bas et des mailles normales." +msgstr "Determina la priorità di questa mesh quando si considera la sovrapposizione multipla delle mesh di riempimento. Per le aree con la sovrapposizione di più" +" mesh di riempimento verranno utilizzate le impostazioni della mesh con la classificazione più alta. Una mesh di riempimento con una classificazione più" +" alta modificherà il riempimento delle mesh di riempimento con una classificazione inferiore e delle mesh normali." #: /fdmprinter.def.json msgctxt "cutting_mesh label" msgid "Cutting Mesh" -msgstr "Maille de coupe" +msgstr "Ritaglio maglia" #: /fdmprinter.def.json msgctxt "cutting_mesh description" @@ -6571,47 +6582,47 @@ msgid "" "Limit the volume of this mesh to within other meshes. You can use this to " "make certain areas of one mesh print with different settings and with a " "whole different extruder." -msgstr "Limiter le volume de ce maillage à celui des autres maillages. Cette option permet de faire en sorte que certaines zones d'un maillage s'impriment avec" -" des paramètres différents et avec une extrudeuse entièrement différente." +msgstr "Limita il volume di questa maglia all'interno di altre maglie. Questo può essere utilizzato per stampare talune aree di una maglia con impostazioni diverse" +" e con un diverso estrusore." #: /fdmprinter.def.json msgctxt "mold_enabled label" msgid "Mold" -msgstr "Moule" +msgstr "Stampo" #: /fdmprinter.def.json msgctxt "mold_enabled description" msgid "" "Print models as a mold, which can be cast in order to get a model which " "resembles the models on the build plate." -msgstr "Imprimer les modèles comme moule, qui peut être coulé afin d'obtenir un modèle ressemblant à ceux présents sur le plateau." +msgstr "Stampa i modelli come uno stampo, che può essere fuso per ottenere un modello che assomigli ai modelli sul piano di stampa." #: /fdmprinter.def.json msgctxt "mold_width label" msgid "Minimal Mold Width" -msgstr "Largeur minimale de moule" +msgstr "Larghezza minimo dello stampo" #: /fdmprinter.def.json msgctxt "mold_width description" msgid "" "The minimal distance between the outside of the mold and the outside of the " "model." -msgstr "La distance minimale entre l'extérieur du moule et l'extérieur du modèle." +msgstr "Distanza minima tra l'esterno dello stampo e l'esterno del modello." #: /fdmprinter.def.json msgctxt "mold_roof_height label" msgid "Mold Roof Height" -msgstr "Hauteur du plafond de moule" +msgstr "Altezza parte superiore dello stampo" #: /fdmprinter.def.json msgctxt "mold_roof_height description" msgid "The height above horizontal parts in your model which to print mold." -msgstr "La hauteur au-dessus des parties horizontales dans votre modèle pour laquelle imprimer le moule." +msgstr "Altezza sopra le parti orizzontali del modello che stampano lo stampo." #: /fdmprinter.def.json msgctxt "mold_angle label" msgid "Mold Angle" -msgstr "Angle du moule" +msgstr "Angolo stampo" #: /fdmprinter.def.json msgctxt "mold_angle description" @@ -6619,38 +6630,38 @@ msgid "" "The angle of overhang of the outer walls created for the mold. 0° will make " "the outer shell of the mold vertical, while 90° will make the outside of the " "model follow the contour of the model." -msgstr "L'angle de porte-à-faux des parois externes créées pour le moule. La valeur 0° rendra la coque externe du moule verticale, alors que 90° fera que l'extérieur" -" du modèle suive les contours du modèle." +msgstr "Angolo dello sbalzo delle pareti esterne creato per il modello. 0° rende il guscio esterno dello stampo verticale, mentre 90° fa in modo che il guscio" +" esterno dello stampo segua il profilo del modello." #: /fdmprinter.def.json msgctxt "support_mesh label" msgid "Support Mesh" -msgstr "Maillage de support" +msgstr "Supporto maglia" #: /fdmprinter.def.json msgctxt "support_mesh description" msgid "" "Use this mesh to specify support areas. This can be used to generate support " "structure." -msgstr "Utiliser ce maillage pour spécifier des zones de support. Cela peut être utilisé pour générer une structure de support." +msgstr "Utilizzare questa maglia per specificare le aree di supporto. Può essere usata per generare una struttura di supporto." #: /fdmprinter.def.json msgctxt "anti_overhang_mesh label" msgid "Anti Overhang Mesh" -msgstr "Maillage anti-surplomb" +msgstr "Maglia anti-sovrapposizione" #: /fdmprinter.def.json msgctxt "anti_overhang_mesh description" msgid "" "Use this mesh to specify where no part of the model should be detected as " "overhang. This can be used to remove unwanted support structure." -msgstr "Utiliser cette maille pour préciser à quel endroit aucune partie du modèle doit être détectée comme porte-à-faux. Cette option peut être utilisée pour" -" supprimer la structure de support non souhaitée." +msgstr "Utilizzare questa maglia per specificare dove nessuna parte del modello deve essere rilevata come in sovrapposizione. Può essere usato per rimuovere struttura" +" di supporto indesiderata." #: /fdmprinter.def.json msgctxt "magic_mesh_surface_mode label" msgid "Surface Mode" -msgstr "Mode de surface" +msgstr "Modalità superficie" #: /fdmprinter.def.json msgctxt "magic_mesh_surface_mode description" @@ -6660,29 +6671,29 @@ msgid "" "single wall tracing the mesh surface with no infill and no top/bottom skin. " "\"Both\" prints enclosed volumes like normal and any remaining polygons as " "surfaces." -msgstr "Traite le modèle comme surface seule, un volume ou des volumes avec des surfaces seules. Le mode d'impression normal imprime uniquement des volumes fermés." -" « Surface » imprime une paroi seule autour de la surface de la maille, sans remplissage ni couche du dessus/dessous. « Les deux » imprime des volumes" -" fermés comme en mode normal et les polygones restants comme surfaces." +msgstr "Trattare il modello solo come una superficie, un volume o volumi con superfici libere. Il modo di stampa normale stampa solo volumi delimitati. “Superficie”" +" stampa una parete singola tracciando la superficie della maglia senza riempimento e senza rivestimento esterno superiore/inferiore. “Entrambi” stampa" +" i volumi delimitati come normali ed eventuali poligoni rimanenti come superfici." #: /fdmprinter.def.json msgctxt "magic_mesh_surface_mode option normal" msgid "Normal" -msgstr "Normal" +msgstr "Normale" #: /fdmprinter.def.json msgctxt "magic_mesh_surface_mode option surface" msgid "Surface" -msgstr "Surface" +msgstr "Superficie" #: /fdmprinter.def.json msgctxt "magic_mesh_surface_mode option both" msgid "Both" -msgstr "Les deux" +msgstr "Entrambi" #: /fdmprinter.def.json msgctxt "magic_spiralize label" msgid "Spiralize Outer Contour" -msgstr "Spiraliser le contour extérieur" +msgstr "Stampa del contorno esterno con movimento spiraliforme" #: /fdmprinter.def.json msgctxt "magic_spiralize description" @@ -6691,14 +6702,14 @@ msgid "" "steady Z increase over the whole print. This feature turns a solid model " "into a single walled print with a solid bottom. This feature should only be " "enabled when each layer only contains a single part." -msgstr "Cette fonction ajuste le déplacement en Z sur le bord extérieur. Cela va créer une augmentation stable de Z sur toute l’impression. Cette fonction transforme" -" un modèle solide en une impression à paroi unique avec une base solide. Cette fonctionnalité doit être activée seulement lorsque chaque couche contient" -" uniquement une seule partie." +msgstr "Appiattisce il contorno esterno attorno all'asse Z con movimento spiraliforme. Questo crea un aumento costante lungo l'asse Z durante tutto il processo" +" di stampa. Questa caratteristica consente di ottenere un modello pieno in una singola stampata con fondo solido. Questa caratteristica deve essere abilitata" +" solo quando ciascuno strato contiene solo una singola parte." #: /fdmprinter.def.json msgctxt "smooth_spiralized_contours label" msgid "Smooth Spiralized Contours" -msgstr "Lisser les contours spiralisés" +msgstr "Levigazione dei profili con movimento spiraliforme" #: /fdmprinter.def.json msgctxt "smooth_spiralized_contours description" @@ -6706,13 +6717,13 @@ msgid "" "Smooth the spiralized contours to reduce the visibility of the Z seam (the Z " "seam should be barely visible on the print but will still be visible in the " "layer view). Note that smoothing will tend to blur fine surface details." -msgstr "Lisser les contours spiralisés pour réduire la visibilité de la jointure en Z (la jointure en Z doit être à peine visible sur l'impression mais sera toujours" -" visible dans la vue en couches). Veuillez remarquer que le lissage aura tendance à estomper les détails très fins de la surface." +msgstr "Leviga i profili con movimento spiraliforme per ridurre la visibilità della giunzione Z (la giunzione Z dovrebbe essere appena visibile sulla stampa, ma" +" rimane visibile nella visualizzazione a strati). Notare che la levigatura tende a rimuovere le bavature fini della superficie." #: /fdmprinter.def.json msgctxt "relative_extrusion label" msgid "Relative Extrusion" -msgstr "Extrusion relative" +msgstr "Estrusione relativa" #: /fdmprinter.def.json msgctxt "relative_extrusion description" @@ -6723,25 +6734,24 @@ msgid "" "amount of deposited material compared to absolute E-steps. Irrespective of " "this setting, the extrusion mode will always be set to absolute before any g-" "code script is output." -msgstr "Utiliser l'extrusion relative au lieu de l'extrusion absolue. L'utilisation de pas E relatifs facilite le post-traitement du G-Code. Toutefois, cela n'est" -" pas pris en charge par toutes les imprimantes et peut occasionner de très légers écarts dans la quantité de matériau déposé, par rapport à l'utilisation" -" des pas E absolus. Indépendamment de ce paramètre, le mode d'extrusion sera défini par défaut comme absolu avant qu'un quelconque script de G-Code soit" -" produit." +msgstr "Utilizza l'estrusione relativa invece di quella assoluta. L'utilizzo di fasi E relative facilita la post-elaborazione del codice G. Tuttavia, questa impostazione" +" non è supportata da tutte le stampanti e può causare deviazioni molto piccole nella quantità di materiale depositato rispetto alle fasi E assolute. Indipendentemente" +" da questa impostazione, la modalità estrusione sarà sempre impostata su assoluta prima che venga generato uno script in codice G." #: /fdmprinter.def.json msgctxt "experimental label" msgid "Experimental" -msgstr "Expérimental" +msgstr "Sperimentale" #: /fdmprinter.def.json msgctxt "experimental description" msgid "Features that haven't completely been fleshed out yet." -msgstr "Des fonctionnalités qui n'ont pas encore été complètement développées." +msgstr "Funzionalità che non sono state ancora precisate completamente." #: /fdmprinter.def.json msgctxt "slicing_tolerance label" msgid "Slicing Tolerance" -msgstr "Tolérance à la découpe" +msgstr "Tolleranza di sezionamento" #: /fdmprinter.def.json msgctxt "slicing_tolerance description" @@ -6753,30 +6763,30 @@ msgid "" "(Exclusive) or a layer has the areas which fall inside anywhere within the " "layer (Inclusive). Inclusive retains the most details, Exclusive makes for " "the best fit and Middle stays closest to the original surface." -msgstr "Tolérance verticale dans les couches découpées. Les contours d'une couche sont normalement générés en faisant passer les sections entrecroisées au milieu" -" de chaque épaisseur de couche (Milieu). Alternativement, chaque couche peut posséder des zones situées à l'intérieur du volume à travers toute l'épaisseur" -" de la couche (Exclusif) ou une couche peut avoir des zones situées à l'intérieur à tout endroit dans la couche (Inclusif). L'option Inclusif permet de" -" conserver le plus de détails ; l'option Exclusif permet d'obtenir une adaptation optimale ; l'option Milieu permet de rester proche de la surface d'origine." +msgstr "Tolleranza verticale negli strati sezionati. Di norma i contorni di uno strato vengono generati prendendo le sezioni incrociate fino al centro dello spessore" +" di ciascun livello (intermedie). In alternativa, ogni strato può avere le aree che cadono all'interno del volume per tutto lo spessore dello strato (esclusive)" +" oppure uno strato presenta le aree che rientrano all'interno di qualsiasi punto dello strato (inclusive). Le aree inclusive conservano la maggior parte" +" dei dettagli; le esclusive generano la soluzione migliore, mentre le intermedie restano più vicine alla superficie originale." #: /fdmprinter.def.json msgctxt "slicing_tolerance option middle" msgid "Middle" -msgstr "Milieu" +msgstr "Intermedia" #: /fdmprinter.def.json msgctxt "slicing_tolerance option exclusive" msgid "Exclusive" -msgstr "Exclusif" +msgstr "Esclusiva" #: /fdmprinter.def.json msgctxt "slicing_tolerance option inclusive" msgid "Inclusive" -msgstr "Inclusif" +msgstr "Inclusiva" #: /fdmprinter.def.json msgctxt "infill_enable_travel_optimization label" msgid "Infill Travel Optimization" -msgstr "Optimisation du déplacement de remplissage" +msgstr "Ottimizzazione spostamenti riempimento" #: /fdmprinter.def.json msgctxt "infill_enable_travel_optimization description" @@ -6786,38 +6796,38 @@ msgid "" "much depends on the model being sliced, infill pattern, density, etc. Note " "that, for some models that have many small areas of infill, the time to " "slice the model may be greatly increased." -msgstr "Lorsque cette option est activée, l'ordre dans lequel les lignes de remplissage sont imprimées est optimisé pour réduire la distance parcourue. La réduction" -" du temps de parcours dépend en grande partie du modèle à découper, du type de remplissage, de la densité, etc. Remarque : pour certains modèles possédant" -" beaucoup de petites zones de remplissage, le temps de découpe du modèle peut en être considérablement augmenté." +msgstr "Quando abilitato, l’ordine di stampa delle linee di riempimento viene ottimizzato per ridurre la distanza percorsa. La riduzione del tempo di spostamento" +" ottenuta dipende in particolare dal modello sezionato, dalla configurazione di riempimento, dalla densità, ecc. Si noti che, per alcuni modelli che hanno" +" piccole aree di riempimento, il tempo di sezionamento del modello può aumentare notevolmente." #: /fdmprinter.def.json msgctxt "material_flow_dependent_temperature label" msgid "Auto Temperature" -msgstr "Température auto" +msgstr "Temperatura automatica" #: /fdmprinter.def.json msgctxt "material_flow_dependent_temperature description" msgid "" "Change the temperature for each layer automatically with the average flow " "speed of that layer." -msgstr "Modifie automatiquement la température pour chaque couche en fonction de la vitesse de flux moyenne pour cette couche." +msgstr "Modifica automaticamente la temperatura per ciascuno strato con la velocità media del flusso per tale strato." #: /fdmprinter.def.json msgctxt "material_flow_temp_graph label" msgid "Flow Temperature Graph" -msgstr "Graphique de la température du flux" +msgstr "Grafico della temperatura del flusso" #: /fdmprinter.def.json msgctxt "material_flow_temp_graph description" msgid "" "Data linking material flow (in mm3 per second) to temperature (degrees " "Celsius)." -msgstr "Données reliant le flux de matériau (en mm3 par seconde) à la température (degrés Celsius)." +msgstr "Collegamento dei dati di flusso del materiale (in mm3 al secondo) alla temperatura (in °C)." #: /fdmprinter.def.json msgctxt "minimum_polygon_circumference label" msgid "Minimum Polygon Circumference" -msgstr "Circonférence minimale du polygone" +msgstr "Circonferenza minima dei poligoni" #: /fdmprinter.def.json msgctxt "minimum_polygon_circumference description" @@ -6826,108 +6836,108 @@ msgid "" "will be filtered out. Lower values lead to higher resolution mesh at the " "cost of slicing time. It is meant mostly for high resolution SLA printers " "and very tiny 3D models with a lot of details." -msgstr "Les polygones en couches tranchées dont la circonférence est inférieure à cette valeur seront filtrés. Des valeurs élevées permettent d'obtenir un maillage" -" de meilleure résolution mais augmentent le temps de découpe. Cette option est principalement destinée aux imprimantes SLA haute résolution et aux modèles" -" 3D de très petite taille avec beaucoup de détails." +msgstr "I poligoni in strati sezionati con una circonferenza inferiore a questo valore verranno scartati. I valori inferiori generano una maglia con risoluzione" +" superiore al costo del tempo di sezionamento. È dedicata in particolare alle stampanti SLA ad alta risoluzione e a modelli 3D molto piccoli, ricchi di" +" dettagli." #: /fdmprinter.def.json msgctxt "support_skip_some_zags label" msgid "Break Up Support In Chunks" -msgstr "Démantèlement du support en morceaux" +msgstr "Rottura del supporto in pezzi di grandi dimensioni" #: /fdmprinter.def.json msgctxt "support_skip_some_zags description" msgid "" "Skip some support line connections to make the support structure easier to " "break away. This setting is applicable to the Zig Zag support infill pattern." -msgstr "Ignorer certaines connexions de ligne du support pour rendre la structure de support plus facile à casser. Ce paramètre s'applique au motif de remplissage" -" du support en zigzag." +msgstr "Salto di alcuni collegamenti per rendere la struttura del supporto più facile da rompere. Questa impostazione è applicabile alla configurazione a zig-zag" +" del riempimento del supporto." #: /fdmprinter.def.json msgctxt "support_skip_zag_per_mm label" msgid "Support Chunk Size" -msgstr "Taille de morceaux du support" +msgstr "Dimensioni frammento supporto" #: /fdmprinter.def.json msgctxt "support_skip_zag_per_mm description" msgid "" "Leave out a connection between support lines once every N millimeter to make " "the support structure easier to break away." -msgstr "Ignorer une connexion entre lignes du support tous les N millimètres, pour rendre la structure de support plus facile à casser." +msgstr "Lasciare un collegamento tra le linee del supporto ogni N millimetri per facilitare la rottura del supporto stesso." #: /fdmprinter.def.json msgctxt "support_zag_skip_count label" msgid "Support Chunk Line Count" -msgstr "Comptage des lignes de morceaux du support" +msgstr "Conteggio linee di rottura supporto" #: /fdmprinter.def.json msgctxt "support_zag_skip_count description" msgid "" "Skip one in every N connection lines to make the support structure easier to " "break away." -msgstr "Ignorer une ligne de connexion sur N pour rendre la structure de support plus facile à casser." +msgstr "Salto di una ogni N linee di collegamento per rendere la struttura del supporto più facile da rompere." #: /fdmprinter.def.json msgctxt "draft_shield_enabled label" msgid "Enable Draft Shield" -msgstr "Activer le bouclier" +msgstr "Abilitazione del riparo paravento" #: /fdmprinter.def.json msgctxt "draft_shield_enabled description" msgid "" "This will create a wall around the model, which traps (hot) air and shields " "against exterior airflow. Especially useful for materials which warp easily." -msgstr "Cela créera une paroi autour du modèle qui retient l'air (chaud) et protège contre les courants d'air. Particulièrement utile pour les matériaux qui se" -" soulèvent facilement." +msgstr "In tal modo si creerà una protezione attorno al modello che intrappola l'aria (calda) e lo protegge da flussi d’aria esterna. Particolarmente utile per" +" i materiali soggetti a deformazione." #: /fdmprinter.def.json msgctxt "draft_shield_dist label" msgid "Draft Shield X/Y Distance" -msgstr "Distance X/Y du bouclier" +msgstr "Distanza X/Y del riparo paravento" #: /fdmprinter.def.json msgctxt "draft_shield_dist description" msgid "Distance of the draft shield from the print, in the X/Y directions." -msgstr "Distance entre la pièce et le bouclier dans les directions X et Y." +msgstr "Indica la distanza del riparo paravento dalla stampa, nelle direzioni X/Y." #: /fdmprinter.def.json msgctxt "draft_shield_height_limitation label" msgid "Draft Shield Limitation" -msgstr "Limite du bouclier" +msgstr "Limitazione del riparo paravento" #: /fdmprinter.def.json msgctxt "draft_shield_height_limitation description" msgid "" "Set the height of the draft shield. Choose to print the draft shield at the " "full height of the model or at a limited height." -msgstr "Définit la hauteur du bouclier. Choisissez d'imprimer le bouclier à la pleine hauteur du modèle ou à une hauteur limitée." +msgstr "Imposta l’altezza del riparo paravento. Scegliere di stampare il riparo paravento all’altezza totale del modello o a un’altezza limitata." #: /fdmprinter.def.json msgctxt "draft_shield_height_limitation option full" msgid "Full" -msgstr "Pleine hauteur" +msgstr "Piena altezza" #: /fdmprinter.def.json msgctxt "draft_shield_height_limitation option limited" msgid "Limited" -msgstr "Limitée" +msgstr "Limitazione in altezza" #: /fdmprinter.def.json msgctxt "draft_shield_height label" msgid "Draft Shield Height" -msgstr "Hauteur du bouclier" +msgstr "Altezza del riparo paravento" #: /fdmprinter.def.json msgctxt "draft_shield_height description" msgid "" "Height limitation of the draft shield. Above this height no draft shield " "will be printed." -msgstr "Hauteur limite du bouclier. Au-delà de cette hauteur, aucun bouclier ne sera imprimé." +msgstr "Indica la limitazione in altezza del riparo paravento. Al di sopra di tale altezza non sarà stampato alcun riparo." #: /fdmprinter.def.json msgctxt "conical_overhang_enabled label" msgid "Make Overhang Printable" -msgstr "Rendre le porte-à-faux imprimable" +msgstr "Rendi stampabile lo sbalzo" #: /fdmprinter.def.json msgctxt "conical_overhang_enabled description" @@ -6935,13 +6945,13 @@ msgid "" "Change the geometry of the printed model such that minimal support is " "required. Steep overhangs will become shallow overhangs. Overhanging areas " "will drop down to become more vertical." -msgstr "Change la géométrie du modèle imprimé de manière à nécessiter un support minimal. Les porte-à-faux abrupts deviendront des porte-à-faux minces. Les zones" -" en porte-à-faux descendront pour devenir plus verticales." +msgstr "Cambia la geometria del modello stampato in modo da richiedere un supporto minimo. Sbalzi molto inclinati diventeranno sbalzi poco profondi. Le aree di" +" sbalzo scendono per diventare più verticali." #: /fdmprinter.def.json msgctxt "conical_overhang_angle label" msgid "Maximum Model Angle" -msgstr "Angle maximal du modèle" +msgstr "Massimo angolo modello" #: /fdmprinter.def.json msgctxt "conical_overhang_angle description" @@ -6949,13 +6959,13 @@ msgid "" "The maximum angle of overhangs after the they have been made printable. At a " "value of 0° all overhangs are replaced by a piece of model connected to the " "build plate, 90° will not change the model in any way." -msgstr "L'angle maximal des porte-à-faux après qu'ils aient été rendus imprimables. À une valeur de 0°, tous les porte-à-faux sont remplacés par une pièce de modèle" -" rattachée au plateau, tandis que 90° ne changera en rien le modèle." +msgstr "L’angolo massimo degli sbalzi dopo essere stati resi stampabili. A un valore di 0° tutti gli sbalzi sono sostituiti da un pezzo del modello collegato al" +" piano di stampa, 90° non cambia il modello in alcun modo." #: /fdmprinter.def.json msgctxt "conical_overhang_hole_size label" msgid "Maximum Overhang Hole Area" -msgstr "Surface maximale du trou en porte-à-faux" +msgstr "Area foro di sbalzo massima" #: /fdmprinter.def.json msgctxt "conical_overhang_hole_size description" @@ -6963,13 +6973,13 @@ msgid "" "The maximum area of a hole in the base of the model before it's removed by " "Make Overhang Printable. Holes smaller than this will be retained. A value " "of 0 mm² will fill all holes in the models base." -msgstr "Zone maximale d'un trou dans la base du modèle avant d'être retirée par l'outil Rendre le porte-à-faux imprimable. Les trous plus petits seront conservés." -" Une valeur de 0 mm² remplira tous les trous dans la base des modèles." +msgstr "L'area massima di un foro nella base del modello prima che venga rimossa da Rendi stampabile lo sbalzo. I fori più piccoli di questo verranno mantenuti." +" Un valore di 0 mm² riempirà i fori nella base del modello." #: /fdmprinter.def.json msgctxt "coasting_enable label" msgid "Enable Coasting" -msgstr "Activer la roue libre" +msgstr "Abilitazione della funzione di Coasting" #: /fdmprinter.def.json msgctxt "coasting_enable description" @@ -6977,25 +6987,25 @@ msgid "" "Coasting replaces the last part of an extrusion path with a travel path. The " "oozed material is used to print the last piece of the extrusion path in " "order to reduce stringing." -msgstr "L'option « roue libre » remplace la dernière partie d'un mouvement d'extrusion par un mouvement de déplacement. Le matériau qui suinte de la buse est alors" -" utilisé pour imprimer la dernière partie du tracé du mouvement d'extrusion, ce qui réduit le stringing." +msgstr "Il Coasting sostituisce l'ultima parte di un percorso di estrusione con un percorso di spostamento. Il materiale fuoriuscito viene utilizzato per stampare" +" l'ultimo tratto del percorso di estrusione al fine di ridurre i filamenti." #: /fdmprinter.def.json msgctxt "coasting_volume label" msgid "Coasting Volume" -msgstr "Volume en roue libre" +msgstr "Volume di Coasting" #: /fdmprinter.def.json msgctxt "coasting_volume description" msgid "" "The volume otherwise oozed. This value should generally be close to the " "nozzle diameter cubed." -msgstr "Volume de matière qui devrait suinter de la buse. Cette valeur doit généralement rester proche du diamètre de la buse au cube." +msgstr "È il volume di materiale fuoriuscito. Questo valore deve di norma essere prossimo al diametro dell'ugello al cubo." #: /fdmprinter.def.json msgctxt "coasting_min_volume label" msgid "Minimum Volume Before Coasting" -msgstr "Volume minimal avant roue libre" +msgstr "Volume minimo prima del Coasting" #: /fdmprinter.def.json msgctxt "coasting_min_volume description" @@ -7004,14 +7014,13 @@ msgid "" "For smaller extrusion paths, less pressure has been built up in the bowden " "tube and so the coasted volume is scaled linearly. This value should always " "be larger than the Coasting Volume." -msgstr "Le plus petit volume qu'un mouvement d'extrusion doit entraîner avant d'autoriser la roue libre. Pour les petits mouvements d'extrusion, une pression moindre" -" s'est formée dans le tube bowden, de sorte que le volume déposable en roue libre est alors réduit linéairement. Cette valeur doit toujours être supérieure" -" au volume en roue libre." +msgstr "È il volume minimo di un percorso di estrusione prima di consentire il coasting. Per percorsi di estrusione inferiori, nel tubo Bowden si è accumulata" +" una pressione inferiore, quindi il volume rilasciato si riduce in modo lineare. Questo valore dovrebbe essere sempre maggiore del volume di Coasting." #: /fdmprinter.def.json msgctxt "coasting_speed label" msgid "Coasting Speed" -msgstr "Vitesse de roue libre" +msgstr "Velocità di Coasting" #: /fdmprinter.def.json msgctxt "coasting_speed description" @@ -7019,60 +7028,59 @@ msgid "" "The speed by which to move during coasting, relative to the speed of the " "extrusion path. A value slightly under 100% is advised, since during the " "coasting move the pressure in the bowden tube drops." -msgstr "Vitesse de déplacement pendant une roue libre, par rapport à la vitesse de déplacement pendant l'extrusion. Une valeur légèrement inférieure à 100 % est" -" conseillée car, lors du mouvement en roue libre, la pression dans le tube bowden chute." +msgstr "È la velocità a cui eseguire lo spostamento durante il Coasting, rispetto alla velocità del percorso di estrusione. Si consiglia di impostare un valore" +" leggermente al di sotto del 100%, poiché durante il Coasting la pressione nel tubo Bowden scende." #: /fdmprinter.def.json msgctxt "cross_infill_pocket_size label" msgid "Cross 3D Pocket Size" -msgstr "Taille de poches entrecroisées 3D" +msgstr "Dimensioni cavità 3D incrociata" #: /fdmprinter.def.json msgctxt "cross_infill_pocket_size description" msgid "" "The size of pockets at four-way crossings in the cross 3D pattern at heights " "where the pattern is touching itself." -msgstr "La taille de poches aux croisements à quatre branches dans le motif entrecroisé 3D, à des hauteurs où le motif se touche lui-même." +msgstr "Dimensioni delle cavità negli incroci a quattro vie nella configurazione 3D incrociata alle altezze a cui la configurazione tocca se stessa." #: /fdmprinter.def.json msgctxt "cross_infill_density_image label" msgid "Cross Infill Density Image" -msgstr "Image de densité du remplissage croisé" +msgstr "Immagine di densità del riempimento incrociato" #: /fdmprinter.def.json msgctxt "cross_infill_density_image description" msgid "" "The file location of an image of which the brightness values determine the " "minimal density at the corresponding location in the infill of the print." -msgstr "Emplacement du fichier d'une image dont les valeurs de luminosité déterminent la densité minimale à l'emplacement correspondant dans le remplissage de" -" l'impression." +msgstr "La posizione del file di un'immagine i cui i valori di luminosità determinano la densità minima nella posizione corrispondente nel riempimento della stampa." #: /fdmprinter.def.json msgctxt "cross_support_density_image label" msgid "Cross Fill Density Image for Support" -msgstr "Image de densité du remplissage croisé pour le support" +msgstr "Immagine di densità del riempimento incrociato per il supporto" #: /fdmprinter.def.json msgctxt "cross_support_density_image description" msgid "" "The file location of an image of which the brightness values determine the " "minimal density at the corresponding location in the support." -msgstr "Emplacement du fichier d'une image dont les valeurs de luminosité déterminent la densité minimale à l'emplacement correspondant dans le support." +msgstr "La posizione del file di un'immagine i cui i valori di luminosità determinano la densità minima nella posizione corrispondente nel supporto." #: /fdmprinter.def.json msgctxt "support_conical_enabled label" msgid "Enable Conical Support" -msgstr "Activer les supports coniques" +msgstr "Abilitazione del supporto conico" #: /fdmprinter.def.json msgctxt "support_conical_enabled description" msgid "Make support areas smaller at the bottom than at the overhang." -msgstr "Rendre les aires de support plus petites en bas qu'au niveau du porte-à-faux à supporter." +msgstr "Realizza aree di supporto più piccole nella parte inferiore che in corrispondenza dello sbalzo." #: /fdmprinter.def.json msgctxt "support_conical_angle label" msgid "Conical Support Angle" -msgstr "Angle des supports coniques" +msgstr "Angolo del supporto conico" #: /fdmprinter.def.json msgctxt "support_conical_angle description" @@ -7081,60 +7089,60 @@ msgid "" "90 degrees being horizontal. Smaller angles cause the support to be more " "sturdy, but consist of more material. Negative angles cause the base of the " "support to be wider than the top." -msgstr "Angle d'inclinaison des supports coniques. Un angle de 0 degré est vertical tandis qu'un angle de 90 degrés est horizontal. Les petits angles rendent le" -" support plus solide mais utilisent plus de matière. Les angles négatifs rendent la base du support plus large que le sommet." +msgstr "È l'angolo di inclinazione del supporto conico. Con 0 gradi verticale e 90 gradi orizzontale. Angoli inferiori rendono il supporto più robusto, ma richiedono" +" una maggiore quantità di materiale. Angoli negativi rendono la base del supporto più larga rispetto alla parte superiore." #: /fdmprinter.def.json msgctxt "support_conical_min_width label" msgid "Conical Support Minimum Width" -msgstr "Largeur minimale des supports coniques" +msgstr "Larghezza minima del supporto conico" #: /fdmprinter.def.json msgctxt "support_conical_min_width description" msgid "" "Minimum width to which the base of the conical support area is reduced. " "Small widths can lead to unstable support structures." -msgstr "Largeur minimale à laquelle la base du support conique est réduite. Des largeurs étroites peuvent entraîner des supports instables." +msgstr "Indica la larghezza minima alla quale viene ridotta la base dell’area del supporto conico. Larghezze minori possono comportare strutture di supporto instabili." #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_enabled label" msgid "Fuzzy Skin" -msgstr "Surfaces floues" +msgstr "Rivestimento esterno incoerente (fuzzy)" #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_enabled description" msgid "" "Randomly jitter while printing the outer wall, so that the surface has a " "rough and fuzzy look." -msgstr "Produit une agitation aléatoire lors de l'impression de la paroi extérieure, ce qui lui donne une apparence rugueuse et floue." +msgstr "Distorsione (jitter) casuale durante la stampa della parete esterna, così che la superficie assume un aspetto ruvido ed incoerente (fuzzy)." #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_outside_only label" msgid "Fuzzy Skin Outside Only" -msgstr "Couche floue à l'extérieur uniquement" +msgstr "Fuzzy Skin solo all'esterno" #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_outside_only description" msgid "Jitter only the parts' outlines and not the parts' holes." -msgstr "N'agitez que les contours des pièces et non les trous des pièces." +msgstr "Distorce solo i profili delle parti, non i fori di queste." #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_thickness label" msgid "Fuzzy Skin Thickness" -msgstr "Épaisseur de la couche floue" +msgstr "Spessore del rivestimento esterno incoerente (fuzzy)" #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_thickness description" msgid "" "The width within which to jitter. It's advised to keep this below the outer " "wall width, since the inner walls are unaltered." -msgstr "Largeur autorisée pour l'agitation aléatoire. Il est conseillé de garder cette valeur inférieure à l'épaisseur de la paroi extérieure, ainsi, les parois" -" intérieures ne seront pas altérées." +msgstr "Indica la larghezza entro cui è ammessa la distorsione (jitter). Si consiglia di impostare questo valore ad un livello inferiore rispetto alla larghezza" +" della parete esterna, poiché le pareti interne rimangono inalterate." #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_point_density label" msgid "Fuzzy Skin Density" -msgstr "Densité de la couche floue" +msgstr "Densità del rivestimento esterno incoerente (fuzzy)" #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_point_density description" @@ -7142,13 +7150,13 @@ msgid "" "The average density of points introduced on each polygon in a layer. Note " "that the original points of the polygon are discarded, so a low density " "results in a reduction of the resolution." -msgstr "Densité moyenne de points ajoutée à chaque polygone sur une couche. Notez que les points originaux du polygone ne seront plus pris en compte, une faible" -" densité résultant alors en une diminution de la résolution." +msgstr "Indica la densità media dei punti introdotti su ciascun poligono in uno strato. Si noti che i punti originali del poligono vengono scartati, perciò una" +" bassa densità si traduce in una riduzione della risoluzione." #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_point_dist label" msgid "Fuzzy Skin Point Distance" -msgstr "Distance entre les points de la couche floue" +msgstr "Distanza dei punti del rivestimento incoerente (fuzzy)" #: /fdmprinter.def.json msgctxt "magic_fuzzy_skin_point_dist description" @@ -7157,25 +7165,26 @@ msgid "" "segment. Note that the original points of the polygon are discarded, so a " "high smoothness results in a reduction of the resolution. This value must be " "higher than half the Fuzzy Skin Thickness." -msgstr "Distance moyenne entre les points ajoutés aléatoirement sur chaque segment de ligne. Il faut noter que les points originaux du polygone ne sont plus pris" -" en compte donc un fort lissage conduira à une diminution de la résolution. Cette valeur doit être supérieure à la moitié de l'épaisseur de la couche floue." +msgstr "Indica la distanza media tra i punti casuali introdotti su ciascun segmento di linea. Si noti che i punti originali del poligono vengono scartati, perciò" +" un elevato livello di regolarità si traduce in una riduzione della risoluzione. Questo valore deve essere superiore alla metà dello spessore del rivestimento" +" incoerente (fuzzy)." #: /fdmprinter.def.json msgctxt "flow_rate_max_extrusion_offset label" msgid "Flow Rate Compensation Max Extrusion Offset" -msgstr "Décalage d'extrusion max. pour compensation du débit" +msgstr "Offset massimo dell'estrusione di compensazione del flusso" #: /fdmprinter.def.json msgctxt "flow_rate_max_extrusion_offset description" msgid "" "The maximum distance in mm to move the filament to compensate for changes in " "flow rate." -msgstr "La distance maximale en mm pour déplacer le filament afin de compenser les variations du débit." +msgstr "Distanza massima in mm di spostamento del filamento per compensare le modifiche nella velocità di flusso." #: /fdmprinter.def.json msgctxt "flow_rate_extrusion_offset_factor label" msgid "Flow Rate Compensation Factor" -msgstr "Facteur de compensation du débit" +msgstr "Fattore di compensazione del flusso" #: /fdmprinter.def.json msgctxt "flow_rate_extrusion_offset_factor description" @@ -7183,13 +7192,13 @@ msgid "" "How far to move the filament in order to compensate for changes in flow " "rate, as a percentage of how far the filament would move in one second of " "extrusion." -msgstr "La distance de déplacement du filament pour compenser les variations du débit, en pourcentage de la distance de déplacement du filament en une seconde" -" d'extrusion." +msgstr "Distanza di spostamento del filamento al fine di compensare le modifiche nella velocità di flusso, come percentuale della distanza di spostamento del filamento" +" in un secondo di estrusione." #: /fdmprinter.def.json msgctxt "wireframe_enabled label" msgid "Wire Printing" -msgstr "Impression filaire" +msgstr "Funzione Wire Printing (WP)" #: /fdmprinter.def.json msgctxt "wireframe_enabled description" @@ -7198,13 +7207,14 @@ msgid "" "thin air'. This is realized by horizontally printing the contours of the " "model at given Z intervals which are connected via upward and diagonally " "downward lines." -msgstr "Imprime uniquement la surface extérieure avec une structure grillagée et clairsemée. Cette impression est « dans les airs » et est réalisée en imprimant" -" horizontalement les contours du modèle aux intervalles donnés de l’axe Z et en les connectant au moyen de lignes ascendantes et diagonalement descendantes." +msgstr "Consente di stampare solo la superficie esterna come una struttura di linee, realizzando una stampa \"sospesa nell'aria\". Questa funzione si realizza" +" mediante la stampa orizzontale dei contorni del modello con determinati intervalli Z che sono collegati tramite linee che si estendono verticalmente verso" +" l'alto e diagonalmente verso il basso." #: /fdmprinter.def.json msgctxt "wireframe_height label" msgid "WP Connection Height" -msgstr "Hauteur de connexion pour l'impression filaire" +msgstr "Altezza di connessione WP" #: /fdmprinter.def.json msgctxt "wireframe_height description" @@ -7212,139 +7222,140 @@ msgid "" "The height of the upward and diagonally downward lines between two " "horizontal parts. This determines the overall density of the net structure. " "Only applies to Wire Printing." -msgstr "La hauteur des lignes ascendantes et diagonalement descendantes entre deux pièces horizontales. Elle détermine la densité globale de la structure du filet." -" Uniquement applicable à l'impression filaire." +msgstr "Indica l'altezza delle linee che si estendono verticalmente verso l'alto e diagonalmente verso il basso tra due parti orizzontali. Questo determina la" +" densità complessiva della struttura del reticolo. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_roof_inset label" msgid "WP Roof Inset Distance" -msgstr "Distance d’insert de toit pour les impressions filaires" +msgstr "Distanza dalla superficie superiore WP" #: /fdmprinter.def.json msgctxt "wireframe_roof_inset description" msgid "" "The distance covered when making a connection from a roof outline inward. " "Only applies to Wire Printing." -msgstr "La distance couverte lors de l'impression d'une connexion d'un contour de toit vers l’intérieur. Uniquement applicable à l'impression filaire." +msgstr "Indica la distanza percorsa durante la realizzazione di una connessione da un profilo della superficie superiore (tetto) verso l'interno. Applicabile solo" +" alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_printspeed label" msgid "WP Speed" -msgstr "Vitesse d’impression filaire" +msgstr "Velocità WP" #: /fdmprinter.def.json msgctxt "wireframe_printspeed description" msgid "" "Speed at which the nozzle moves when extruding material. Only applies to " "Wire Printing." -msgstr "Vitesse à laquelle la buse se déplace lorsqu’elle extrude du matériau. Uniquement applicable à l'impression filaire." +msgstr "Indica la velocità a cui l'ugello si muove durante l'estrusione del materiale. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_printspeed_bottom label" msgid "WP Bottom Printing Speed" -msgstr "Vitesse d’impression filaire du bas" +msgstr "Velocità di stampa della parte inferiore WP" #: /fdmprinter.def.json msgctxt "wireframe_printspeed_bottom description" msgid "" "Speed of printing the first layer, which is the only layer touching the " "build platform. Only applies to Wire Printing." -msgstr "Vitesse d’impression de la première couche qui constitue la seule couche en contact avec le plateau d'impression. Uniquement applicable à l'impression" -" filaire." +msgstr "Indica la velocità di stampa del primo strato, che è il solo strato a contatto con il piano di stampa. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_printspeed_up label" msgid "WP Upward Printing Speed" -msgstr "Vitesse d’impression filaire ascendante" +msgstr "Velocità di stampa verticale WP" #: /fdmprinter.def.json msgctxt "wireframe_printspeed_up description" msgid "" "Speed of printing a line upward 'in thin air'. Only applies to Wire Printing." -msgstr "Vitesse d’impression d’une ligne ascendante « dans les airs ». Uniquement applicable à l'impression filaire." +msgstr "Indica la velocità di stampa di una linea verticale verso l'alto della struttura \"sospesa nell'aria\". Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_printspeed_down label" msgid "WP Downward Printing Speed" -msgstr "Vitesse d’impression filaire descendante" +msgstr "Velocità di stampa diagonale WP" #: /fdmprinter.def.json msgctxt "wireframe_printspeed_down description" msgid "" "Speed of printing a line diagonally downward. Only applies to Wire Printing." -msgstr "Vitesse d’impression d’une ligne diagonalement descendante. Uniquement applicable à l'impression filaire." +msgstr "Indica la velocità di stampa di una linea diagonale verso il basso. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_printspeed_flat label" msgid "WP Horizontal Printing Speed" -msgstr "Vitesse d’impression filaire horizontale" +msgstr "Velocità di stampa orizzontale WP" #: /fdmprinter.def.json msgctxt "wireframe_printspeed_flat description" msgid "" "Speed of printing the horizontal contours of the model. Only applies to Wire " "Printing." -msgstr "Vitesse d'impression du contour horizontal du modèle. Uniquement applicable à l'impression filaire." +msgstr "Indica la velocità di stampa dei contorni orizzontali del modello. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_flow label" msgid "WP Flow" -msgstr "Débit de l'impression filaire" +msgstr "Flusso WP" #: /fdmprinter.def.json msgctxt "wireframe_flow description" msgid "" "Flow compensation: the amount of material extruded is multiplied by this " "value. Only applies to Wire Printing." -msgstr "Compensation du débit : la quantité de matériau extrudée est multipliée par cette valeur. Uniquement applicable à l'impression filaire." +msgstr "Determina la compensazione del flusso: la quantità di materiale estruso viene moltiplicata per questo valore. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_flow_connection label" msgid "WP Connection Flow" -msgstr "Débit de connexion de l'impression filaire" +msgstr "Flusso di connessione WP" #: /fdmprinter.def.json msgctxt "wireframe_flow_connection description" msgid "Flow compensation when going up or down. Only applies to Wire Printing." -msgstr "Compensation du débit lorsqu’il monte ou descend. Uniquement applicable à l'impression filaire." +msgstr "Determina la compensazione di flusso nei percorsi verso l'alto o verso il basso. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_flow_flat label" msgid "WP Flat Flow" -msgstr "Débit des fils plats" +msgstr "Flusso linee piatte WP" #: /fdmprinter.def.json msgctxt "wireframe_flow_flat description" msgid "" "Flow compensation when printing flat lines. Only applies to Wire Printing." -msgstr "Compensation du débit lors de l’impression de lignes planes. Uniquement applicable à l'impression filaire." +msgstr "Determina la compensazione di flusso durante la stampa di linee piatte. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_top_delay label" msgid "WP Top Delay" -msgstr "Attente pour le haut de l'impression filaire" +msgstr "Ritardo dopo spostamento verso l'alto WP" #: /fdmprinter.def.json msgctxt "wireframe_top_delay description" msgid "" "Delay time after an upward move, so that the upward line can harden. Only " "applies to Wire Printing." -msgstr "Temps d’attente après un déplacement vers le haut, afin que la ligne ascendante puisse durcir. Uniquement applicable à l'impression filaire." +msgstr "Indica il tempo di ritardo dopo uno spostamento verso l'alto, in modo da consentire l'indurimento della linea verticale indirizzata verso l'alto. Applicabile" +" solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_bottom_delay label" msgid "WP Bottom Delay" -msgstr "Attente pour le bas de l'impression filaire" +msgstr "Ritardo dopo spostamento verso il basso WP" #: /fdmprinter.def.json msgctxt "wireframe_bottom_delay description" msgid "Delay time after a downward move. Only applies to Wire Printing." -msgstr "Temps d’attente après un déplacement vers le bas. Uniquement applicable à l'impression filaire." +msgstr "Indica il tempo di ritardo dopo uno spostamento verso il basso. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_flat_delay label" msgid "WP Flat Delay" -msgstr "Attente horizontale de l'impression filaire" +msgstr "Ritardo tra due segmenti orizzontali WP" #: /fdmprinter.def.json msgctxt "wireframe_flat_delay description" @@ -7352,13 +7363,13 @@ msgid "" "Delay time between two horizontal segments. Introducing such a delay can " "cause better adhesion to previous layers at the connection points, while too " "long delays cause sagging. Only applies to Wire Printing." -msgstr "Attente entre deux segments horizontaux. L’introduction d’un tel temps d’attente peut permettre une meilleure adhérence aux couches précédentes au niveau" -" des points de connexion, tandis que des temps d’attente trop longs peuvent provoquer un affaissement. Uniquement applicable à l'impression filaire." +msgstr "Indica il tempo di ritardo tra due segmenti orizzontali. Introducendo un tale ritardo si può ottenere una migliore adesione agli strati precedenti in corrispondenza" +" dei punti di collegamento, mentre ritardi troppo prolungati provocano cedimenti. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_up_half_speed label" msgid "WP Ease Upward" -msgstr "Écart ascendant de l'impression filaire" +msgstr "Spostamento verso l'alto a velocità ridotta WP" #: /fdmprinter.def.json msgctxt "wireframe_up_half_speed description" @@ -7366,13 +7377,13 @@ msgid "" "Distance of an upward move which is extruded with half speed.\n" "This can cause better adhesion to previous layers, while not heating the " "material in those layers too much. Only applies to Wire Printing." -msgstr "Distance d’un déplacement ascendant qui est extrudé à mi-vitesse.\nCela peut permettre une meilleure adhérence aux couches précédentes sans surchauffer" -" le matériau dans ces couches. Uniquement applicable à l'impression filaire." +msgstr "Indica la distanza di uno spostamento verso l'alto con estrusione a velocità dimezzata.\nCiò può garantire una migliore adesione agli strati precedenti," +" senza eccessivo riscaldamento del materiale su questi strati. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_top_jump label" msgid "WP Knot Size" -msgstr "Taille de nœud de l'impression filaire" +msgstr "Dimensione dei nodi WP" #: /fdmprinter.def.json msgctxt "wireframe_top_jump description" @@ -7380,25 +7391,25 @@ msgid "" "Creates a small knot at the top of an upward line, so that the consecutive " "horizontal layer has a better chance to connect to it. Only applies to Wire " "Printing." -msgstr "Crée un petit nœud en haut d’une ligne ascendante pour que la couche horizontale suivante s’y accroche davantage. Uniquement applicable à l'impression" -" filaire." +msgstr "Crea un piccolo nodo alla sommità di una linea verticale verso l'alto, in modo che lo strato orizzontale consecutivo abbia una migliore possibilità di" +" collegarsi ad essa. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_fall_down label" msgid "WP Fall Down" -msgstr "Descente de l'impression filaire" +msgstr "Caduta del materiale WP" #: /fdmprinter.def.json msgctxt "wireframe_fall_down description" msgid "" "Distance with which the material falls down after an upward extrusion. This " "distance is compensated for. Only applies to Wire Printing." -msgstr "La distance de laquelle le matériau chute après avoir extrudé vers le haut. Cette distance est compensée. Uniquement applicable à l'impression filaire." +msgstr "Indica la distanza di caduta del materiale dopo un estrusione verso l'alto. Tale distanza viene compensata. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_drag_along label" msgid "WP Drag Along" -msgstr "Entraînement de l'impression filaire" +msgstr "Trascinamento WP" #: /fdmprinter.def.json msgctxt "wireframe_drag_along description" @@ -7406,13 +7417,13 @@ msgid "" "Distance with which the material of an upward extrusion is dragged along " "with the diagonally downward extrusion. This distance is compensated for. " "Only applies to Wire Printing." -msgstr "Distance sur laquelle le matériau d’une extrusion ascendante est entraîné par l’extrusion diagonalement descendante. La distance est compensée. Uniquement" -" applicable à l'impression filaire." +msgstr "Indica la distanza di trascinamento del materiale di una estrusione verso l'alto nell'estrusione diagonale verso il basso. Tale distanza viene compensata." +" Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_strategy label" msgid "WP Strategy" -msgstr "Stratégie de l'impression filaire" +msgstr "Strategia WP" #: /fdmprinter.def.json msgctxt "wireframe_strategy description" @@ -7424,30 +7435,30 @@ msgid "" "however, it may require slow printing speeds. Another strategy is to " "compensate for the sagging of the top of an upward line; however, the lines " "won't always fall down as predicted." -msgstr "Stratégie garantissant que deux couches consécutives se touchent à chaque point de connexion. La rétraction permet aux lignes ascendantes de durcir dans" -" la bonne position, mais cela peut provoquer l’écrasement des filaments. Un nœud peut être fait à la fin d’une ligne ascendante pour augmenter les chances" -" de raccorder cette ligne et la laisser refroidir. Toutefois, cela peut nécessiter de ralentir la vitesse d’impression. Une autre stratégie consiste à" -" compenser l’affaissement du dessus d’une ligne ascendante, mais les lignes ne tombent pas toujours comme prévu." +msgstr "Strategia per garantire il collegamento di due strati consecutivi ad ogni punto di connessione. La retrazione consente l'indurimento delle linee verticali" +" verso l'alto nella giusta posizione, ma può causare la deformazione del filamento. È possibile realizzare un nodo all'estremità di una linea verticale" +" verso l'alto per accrescere la possibilità di collegamento e lasciarla raffreddare; tuttavia ciò può richiedere velocità di stampa ridotte. Un'altra strategia" +" consiste nel compensare il cedimento della parte superiore di una linea verticale verso l'alto; tuttavia le linee non sempre ricadono come previsto." #: /fdmprinter.def.json msgctxt "wireframe_strategy option compensate" msgid "Compensate" -msgstr "Compenser" +msgstr "Compensazione" #: /fdmprinter.def.json msgctxt "wireframe_strategy option knot" msgid "Knot" -msgstr "Nœud" +msgstr "Nodo" #: /fdmprinter.def.json msgctxt "wireframe_strategy option retract" msgid "Retract" -msgstr "Rétraction" +msgstr "Retrazione" #: /fdmprinter.def.json msgctxt "wireframe_straight_before_down label" msgid "WP Straighten Downward Lines" -msgstr "Redresser les lignes descendantes de l'impression filaire" +msgstr "Correzione delle linee diagonali WP" #: /fdmprinter.def.json msgctxt "wireframe_straight_before_down description" @@ -7455,13 +7466,13 @@ msgid "" "Percentage of a diagonally downward line which is covered by a horizontal " "line piece. This can prevent sagging of the top most point of upward lines. " "Only applies to Wire Printing." -msgstr "Pourcentage d’une ligne diagonalement descendante couvert par une pièce à lignes horizontales. Cela peut empêcher le fléchissement du point le plus haut" -" des lignes ascendantes. Uniquement applicable à l'impression filaire." +msgstr "Indica la percentuale di copertura di una linea diagonale verso il basso da un tratto di linea orizzontale. Questa opzione può impedire il cedimento della" +" sommità delle linee verticali verso l'alto. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_roof_fall_down label" msgid "WP Roof Fall Down" -msgstr "Affaissement du dessus de l'impression filaire" +msgstr "Caduta delle linee della superficie superiore (tetto) WP" #: /fdmprinter.def.json msgctxt "wireframe_roof_fall_down description" @@ -7469,13 +7480,13 @@ msgid "" "The distance which horizontal roof lines printed 'in thin air' fall down " "when being printed. This distance is compensated for. Only applies to Wire " "Printing." -msgstr "La distance d’affaissement lors de l’impression des lignes horizontales du dessus d’une pièce qui sont imprimées « dans les airs ». Cet affaissement est" -" compensé. Uniquement applicable à l'impression filaire." +msgstr "Indica la distanza di caduta delle linee della superficie superiore (tetto) della struttura \"sospesa nell'aria\" durante la stampa. Questa distanza viene" +" compensata. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_roof_drag_along label" msgid "WP Roof Drag Along" -msgstr "Entraînement du dessus de l'impression filaire" +msgstr "Trascinamento superficie superiore (tetto) WP" #: /fdmprinter.def.json msgctxt "wireframe_roof_drag_along description" @@ -7483,26 +7494,26 @@ msgid "" "The distance of the end piece of an inward line which gets dragged along " "when going back to the outer outline of the roof. This distance is " "compensated for. Only applies to Wire Printing." -msgstr "La distance parcourue par la pièce finale d’une ligne intérieure qui est entraînée lorsqu’elle retourne sur le contour extérieur du dessus. Cette distance" -" est compensée. Uniquement applicable à l'impression filaire." +msgstr "Indica la distanza di trascinamento dell'estremità di una linea interna durante lo spostamento di ritorno verso il contorno esterno della superficie superiore" +" (tetto). Questa distanza viene compensata. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_roof_outer_delay label" msgid "WP Roof Outer Delay" -msgstr "Délai d'impression filaire de l'extérieur du dessus" +msgstr "Ritardo su perimetro esterno foro superficie superiore (tetto) WP" #: /fdmprinter.def.json msgctxt "wireframe_roof_outer_delay description" msgid "" "Time spent at the outer perimeters of hole which is to become a roof. Longer " "times can ensure a better connection. Only applies to Wire Printing." -msgstr "Temps passé sur le périmètre extérieur de l’orifice qui deviendra le dessus. Un temps plus long peut garantir une meilleure connexion. Uniquement applicable" -" pour l'impression filaire." +msgstr "Indica il tempo trascorso sul perimetro esterno del foro di una superficie superiore (tetto). Tempi più lunghi possono garantire un migliore collegamento." +" Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "wireframe_nozzle_clearance label" msgid "WP Nozzle Clearance" -msgstr "Ecartement de la buse de l'impression filaire" +msgstr "Gioco ugello WP" #: /fdmprinter.def.json msgctxt "wireframe_nozzle_clearance description" @@ -7511,47 +7522,47 @@ msgid "" "clearance results in diagonally downward lines with a less steep angle, " "which in turn results in less upward connections with the next layer. Only " "applies to Wire Printing." -msgstr "Distance entre la buse et les lignes descendantes horizontalement. Un espacement plus important génère des lignes diagonalement descendantes avec un angle" -" moins abrupt, qui génère alors des connexions moins ascendantes avec la couche suivante. Uniquement applicable à l'impression filaire." +msgstr "Indica la distanza tra l'ugello e le linee diagonali verso il basso. Un maggior gioco risulta in linee diagonali verso il basso con un minor angolo di" +" inclinazione, cosa che a sua volta si traduce in meno collegamenti verso l'alto con lo strato successivo. Applicabile solo alla funzione Wire Printing." #: /fdmprinter.def.json msgctxt "adaptive_layer_height_enabled label" msgid "Use Adaptive Layers" -msgstr "Utiliser des couches adaptatives" +msgstr "Uso di strati adattivi" #: /fdmprinter.def.json msgctxt "adaptive_layer_height_enabled description" msgid "" "Adaptive layers computes the layer heights depending on the shape of the " "model." -msgstr "Cette option calcule la hauteur des couches en fonction de la forme du modèle." +msgstr "Gli strati adattivi calcolano l’altezza degli strati in base alla forma del modello." #: /fdmprinter.def.json msgctxt "adaptive_layer_height_variation label" msgid "Adaptive Layers Maximum Variation" -msgstr "Variation maximale des couches adaptatives" +msgstr "Variazione massima strati adattivi" #: /fdmprinter.def.json msgctxt "adaptive_layer_height_variation description" msgid "The maximum allowed height different from the base layer height." -msgstr "Hauteur maximale autorisée par rapport à la couche de base." +msgstr "La differenza di altezza massima rispetto all’altezza dello strato di base." #: /fdmprinter.def.json msgctxt "adaptive_layer_height_variation_step label" msgid "Adaptive Layers Variation Step Size" -msgstr "Taille des étapes de variation des couches adaptatives" +msgstr "Dimensione variazione strati adattivi" #: /fdmprinter.def.json msgctxt "adaptive_layer_height_variation_step description" msgid "" "The difference in height of the next layer height compared to the previous " "one." -msgstr "Différence de hauteur de la couche suivante par rapport à la précédente." +msgstr "La differenza in altezza dello strato successivo rispetto al precedente." #: /fdmprinter.def.json msgctxt "adaptive_layer_height_threshold label" msgid "Adaptive Layers Topography Size" -msgstr "Taille de la topographie des couches adaptatives" +msgstr "Dimensione della topografia dei layer adattivi" #: /fdmprinter.def.json msgctxt "adaptive_layer_height_threshold description" @@ -7559,13 +7570,13 @@ msgid "" "Target horizontal distance between two adjacent layers. Reducing this " "setting causes thinner layers to be used to bring the edges of the layers " "closer together." -msgstr "Distance horizontale cible entre deux couches adjacentes. La réduction de ce paramètre entraîne l'utilisation de couches plus fines pour rapprocher les" -" bords des couches." +msgstr "Distanza orizzontale target tra due layer adiacenti. Riducendo questa impostazione, i layer più sottili verranno utilizzati per avvicinare i margini dei" +" layer." #: /fdmprinter.def.json msgctxt "wall_overhang_angle label" msgid "Overhanging Wall Angle" -msgstr "Angle de parois en porte-à-faux" +msgstr "Angolo parete di sbalzo" #: /fdmprinter.def.json msgctxt "wall_overhang_angle description" @@ -7574,37 +7585,37 @@ msgid "" "wall settings. When the value is 90, no walls will be treated as " "overhanging. Overhang that gets supported by support will not be treated as " "overhang either." -msgstr "Les parois ayant un angle supérieur à cette valeur seront imprimées en utilisant les paramètres de parois en porte-à-faux. Si la valeur est 90, aucune" -" paroi ne sera considérée comme étant en porte-à-faux. La saillie soutenue par le support ne sera pas non plus considérée comme étant en porte-à-faux." +msgstr "Le pareti con uno sbalzo superiore a quest'angolo saranno stampate con le impostazioni per le pareti a sbalzo. Se il valore è 90, nessuna parete sarà trattata" +" come parete a sbalzo. Nemmeno lo sbalzo supportato dal supporto sarà trattato come tale." #: /fdmprinter.def.json msgctxt "wall_overhang_speed_factor label" msgid "Overhanging Wall Speed" -msgstr "Vitesse de paroi en porte-à-faux" +msgstr "Velocità parete di sbalzo" #: /fdmprinter.def.json msgctxt "wall_overhang_speed_factor description" msgid "" "Overhanging walls will be printed at this percentage of their normal print " "speed." -msgstr "Les parois en porte-à-faux seront imprimées à ce pourcentage de leur vitesse d'impression normale." +msgstr "Le pareti di sbalzo verranno stampate a questa percentuale della loro normale velocità di stampa." #: /fdmprinter.def.json msgctxt "bridge_settings_enabled label" msgid "Enable Bridge Settings" -msgstr "Activer les paramètres du pont" +msgstr "Abilita impostazioni ponte" #: /fdmprinter.def.json msgctxt "bridge_settings_enabled description" msgid "" "Detect bridges and modify print speed, flow and fan settings while bridges " "are printed." -msgstr "Détecter les ponts et modifier la vitesse d'impression, le débit et les paramètres du ventilateur pendant l'impression des ponts." +msgstr "Rileva i ponti e modifica la velocità di stampa, il flusso e le impostazioni ventola durante la stampa dei ponti." #: /fdmprinter.def.json msgctxt "bridge_wall_min_length label" msgid "Minimum Bridge Wall Length" -msgstr "Longueur minimale de la paroi du pont" +msgstr "Lunghezza minima parete ponte" #: /fdmprinter.def.json msgctxt "bridge_wall_min_length description" @@ -7612,13 +7623,13 @@ msgid "" "Unsupported walls shorter than this will be printed using the normal wall " "settings. Longer unsupported walls will be printed using the bridge wall " "settings." -msgstr "Les parois non supportées dont la longueur est inférieure à cette valeur seront imprimées selon les paramètres de parois normaux, tandis que celles dont" -" la longueur est supérieure à cette valeur seront imprimées selon les paramètres de parois du pont." +msgstr "Le pareti non supportate di lunghezza inferiore a questo valore verranno stampate utilizzando le normali impostazioni parete. Le pareti non supportate" +" di lunghezza superiore verranno stampate utilizzando le impostazioni parete ponte." #: /fdmprinter.def.json msgctxt "bridge_skin_support_threshold label" msgid "Bridge Skin Support Threshold" -msgstr "Limite de support de la couche extérieure du pont" +msgstr "Soglia di supporto rivestimento esterno ponte" #: /fdmprinter.def.json msgctxt "bridge_skin_support_threshold description" @@ -7626,26 +7637,26 @@ msgid "" "If a skin region is supported for less than this percentage of its area, " "print it using the bridge settings. Otherwise it is printed using the normal " "skin settings." -msgstr "Si une région de couche extérieure est supportée pour une valeur inférieure à ce pourcentage de sa surface, elle sera imprimée selon les paramètres du" -" pont. Sinon, elle sera imprimée selon les paramètres normaux de la couche extérieure." +msgstr "Se una zona di rivestimento esterno è supportata per meno di questa percentuale della sua area, effettuare la stampa utilizzando le impostazioni ponte." +" In caso contrario viene stampata utilizzando le normali impostazioni rivestimento esterno." #: /fdmprinter.def.json msgctxt "bridge_sparse_infill_max_density label" msgid "Bridge Sparse Infill Max Density" -msgstr "Densité maximale du remplissage mince du pont" +msgstr "Densità massima del riempimento rado del Bridge" #: /fdmprinter.def.json msgctxt "bridge_sparse_infill_max_density description" msgid "" "Maximum density of infill considered to be sparse. Skin over sparse infill " "is considered to be unsupported and so may be treated as a bridge skin." -msgstr "Densité maximale du remplissage considéré comme étant mince. La couche sur le remplissage mince est considérée comme non soutenue et peut donc être traitée" -" comme une couche du pont." +msgstr "Densità massima del riempimento considerato rado. Il rivestimento esterno sul riempimento rado è considerato non supportato; pertanto potrebbe essere trattato" +" come rivestimento esterno ponte." #: /fdmprinter.def.json msgctxt "bridge_wall_coast label" msgid "Bridge Wall Coasting" -msgstr "Roue libre pour paroi du pont" +msgstr "Coasting parete ponte" #: /fdmprinter.def.json msgctxt "bridge_wall_coast description" @@ -7653,79 +7664,79 @@ msgid "" "This controls the distance the extruder should coast immediately before a " "bridge wall begins. Coasting before the bridge starts can reduce the " "pressure in the nozzle and may produce a flatter bridge." -msgstr "Ce paramètre contrôle la distance que l'extrudeuse doit parcourir en roue libre immédiatement avant le début d'une paroi de pont. L'utilisation de la roue" -" libre avant le début du pont permet de réduire la pression à l'intérieur de la buse et d'obtenir un pont plus plat." +msgstr "Questo comanda la distanza che l’estrusore deve percorrere in coasting immediatamente dopo l’inizio di una parete ponte. Il coasting prima dell’inizio" +" del ponte può ridurre la pressione nell’ugello e generare un ponte più piatto." #: /fdmprinter.def.json msgctxt "bridge_wall_speed label" msgid "Bridge Wall Speed" -msgstr "Vitesse de paroi du pont" +msgstr "Velocità di stampa della parete ponte" #: /fdmprinter.def.json msgctxt "bridge_wall_speed description" msgid "The speed at which the bridge walls are printed." -msgstr "Vitesse à laquelle les parois de pont sont imprimées." +msgstr "Indica la velocità alla quale vengono stampate le pareti ponte." #: /fdmprinter.def.json msgctxt "bridge_wall_material_flow label" msgid "Bridge Wall Flow" -msgstr "Débit de paroi du pont" +msgstr "Flusso della parete ponte" #: /fdmprinter.def.json msgctxt "bridge_wall_material_flow description" msgid "" "When printing bridge walls, the amount of material extruded is multiplied by " "this value." -msgstr "Lors de l'impression des parois de pont, la quantité de matériau extrudé est multipliée par cette valeur." +msgstr "Quando si stampano le pareti ponte, la quantità di materiale estruso viene moltiplicata per questo valore." #: /fdmprinter.def.json msgctxt "bridge_skin_speed label" msgid "Bridge Skin Speed" -msgstr "Vitesse de la couche extérieure du pont" +msgstr "Velocità di stampa del rivestimento esterno ponte" #: /fdmprinter.def.json msgctxt "bridge_skin_speed description" msgid "The speed at which bridge skin regions are printed." -msgstr "Vitesse à laquelle les régions de la couche extérieure du pont sont imprimées." +msgstr "Indica la velocità alla quale vengono stampate le zone di rivestimento esterno del ponte." #: /fdmprinter.def.json msgctxt "bridge_skin_material_flow label" msgid "Bridge Skin Flow" -msgstr "Débit de la couche extérieure du pont" +msgstr "Flusso del rivestimento esterno ponte" #: /fdmprinter.def.json msgctxt "bridge_skin_material_flow description" msgid "" "When printing bridge skin regions, the amount of material extruded is " "multiplied by this value." -msgstr "Lors de l'impression des régions de la couche extérieure du pont, la quantité de matériau extrudé est multipliée par cette valeur." +msgstr "Quando si stampano le zone di rivestimento esterno ponte, la quantità di materiale estruso viene moltiplicata per questo valore." #: /fdmprinter.def.json msgctxt "bridge_skin_density label" msgid "Bridge Skin Density" -msgstr "Densité de la couche extérieure du pont" +msgstr "Densità del rivestimento esterno ponte" #: /fdmprinter.def.json msgctxt "bridge_skin_density description" msgid "" "The density of the bridge skin layer. Values less than 100 will increase the " "gaps between the skin lines." -msgstr "Densité de la couche extérieure du pont. Des valeurs inférieures à 100 augmenteront les écarts entre les lignes de la couche extérieure." +msgstr "La densità dello strato del rivestimento esterno ponte. I valori inferiori a 100 aumentano la distanza tra le linee del rivestimento esterno." #: /fdmprinter.def.json msgctxt "bridge_fan_speed label" msgid "Bridge Fan Speed" -msgstr "Vitesse du ventilateur du pont" +msgstr "Velocità della ventola ponte" #: /fdmprinter.def.json msgctxt "bridge_fan_speed description" msgid "Percentage fan speed to use when printing bridge walls and skin." -msgstr "Vitesse du ventilateur en pourcentage à utiliser pour l'impression des parois et de la couche extérieure du pont." +msgstr "La velocità della ventola in percentuale da usare durante la stampa delle pareti e del rivestimento esterno ponte." #: /fdmprinter.def.json msgctxt "bridge_enable_more_layers label" msgid "Bridge Has Multiple Layers" -msgstr "Le pont possède plusieurs couches" +msgstr "Ponte a strati multipli" #: /fdmprinter.def.json msgctxt "bridge_enable_more_layers description" @@ -7733,101 +7744,101 @@ msgid "" "If enabled, the second and third layers above the air are printed using the " "following settings. Otherwise, those layers are printed using the normal " "settings." -msgstr "Si cette option est activée, les deuxième et troisième couches au-dessus de la zone d'air seront imprimées selon les paramètres suivants. Sinon, ces couches" -" seront imprimées selon les paramètres normaux." +msgstr "Se abilitata, il secondo e il terzo strato sopra l’aria vengono stampati utilizzando le seguenti impostazioni. In caso contrario, questi strati vengono" +" stampati utilizzando le impostazioni normali." #: /fdmprinter.def.json msgctxt "bridge_skin_speed_2 label" msgid "Bridge Second Skin Speed" -msgstr "Vitesse de la deuxième couche extérieure du pont" +msgstr "Velocità di stampa del secondo rivestimento esterno ponte" #: /fdmprinter.def.json msgctxt "bridge_skin_speed_2 description" msgid "Print speed to use when printing the second bridge skin layer." -msgstr "Vitesse d'impression à utiliser lors de l'impression de la deuxième couche extérieure du pont." +msgstr "La velocità di stampa da usare per stampare il secondo strato del rivestimento esterno ponte." #: /fdmprinter.def.json msgctxt "bridge_skin_material_flow_2 label" msgid "Bridge Second Skin Flow" -msgstr "Débit de la deuxième couche extérieure du pont" +msgstr "Flusso del secondo rivestimento esterno ponte" #: /fdmprinter.def.json msgctxt "bridge_skin_material_flow_2 description" msgid "" "When printing the second bridge skin layer, the amount of material extruded " "is multiplied by this value." -msgstr "Lors de l'impression de la deuxième couche extérieure du pont, la quantité de matériau extrudé est multipliée par cette valeur." +msgstr "Quando si stampa il secondo strato del rivestimento esterno ponte, la quantità di materiale estruso viene moltiplicata per questo valore." #: /fdmprinter.def.json msgctxt "bridge_skin_density_2 label" msgid "Bridge Second Skin Density" -msgstr "Densité de la deuxième couche extérieure du pont" +msgstr "Densità del secondo rivestimento esterno ponte" #: /fdmprinter.def.json msgctxt "bridge_skin_density_2 description" msgid "" "The density of the second bridge skin layer. Values less than 100 will " "increase the gaps between the skin lines." -msgstr "Densité de la deuxième couche extérieure du pont. Des valeurs inférieures à 100 augmenteront les écarts entre les lignes de la couche extérieure." +msgstr "La densità del secondo strato del rivestimento esterno ponte. I valori inferiori a 100 aumentano la distanza tra le linee del rivestimento esterno." #: /fdmprinter.def.json msgctxt "bridge_fan_speed_2 label" msgid "Bridge Second Skin Fan Speed" -msgstr "Vitesse du ventilateur de la deuxième couche extérieure du pont" +msgstr "Velocità della ventola per il secondo rivestimento esterno ponte" #: /fdmprinter.def.json msgctxt "bridge_fan_speed_2 description" msgid "Percentage fan speed to use when printing the second bridge skin layer." -msgstr "Vitesse du ventilateur en pourcentage à utiliser pour l'impression de la deuxième couche extérieure du pont." +msgstr "La velocità delle ventola in percentuale da usare per stampare il secondo strato del rivestimento esterno ponte." #: /fdmprinter.def.json msgctxt "bridge_skin_speed_3 label" msgid "Bridge Third Skin Speed" -msgstr "Vitesse de la troisième couche extérieure du pont" +msgstr "Velocità di stampa del terzo rivestimento esterno ponte" #: /fdmprinter.def.json msgctxt "bridge_skin_speed_3 description" msgid "Print speed to use when printing the third bridge skin layer." -msgstr "Vitesse d'impression à utiliser lors de l'impression de la troisième couche extérieure du pont." +msgstr "La velocità di stampa da usare per stampare il terzo strato del rivestimento esterno ponte." #: /fdmprinter.def.json msgctxt "bridge_skin_material_flow_3 label" msgid "Bridge Third Skin Flow" -msgstr "Débit de la troisième couche extérieure du pont" +msgstr "Flusso del terzo rivestimento esterno ponte" #: /fdmprinter.def.json msgctxt "bridge_skin_material_flow_3 description" msgid "" "When printing the third bridge skin layer, the amount of material extruded " "is multiplied by this value." -msgstr "Lors de l'impression de la troisième couche extérieure du pont, la quantité de matériau extrudé est multipliée par cette valeur." +msgstr "Quando si stampa il terzo strato del rivestimento esterno ponte, la quantità di materiale estruso viene moltiplicata per questo valore." #: /fdmprinter.def.json msgctxt "bridge_skin_density_3 label" msgid "Bridge Third Skin Density" -msgstr "Densité de la troisième couche extérieure du pont" +msgstr "Densità del terzo rivestimento esterno ponte" #: /fdmprinter.def.json msgctxt "bridge_skin_density_3 description" msgid "" "The density of the third bridge skin layer. Values less than 100 will " "increase the gaps between the skin lines." -msgstr "Densité de la troisième couche extérieure du pont. Des valeurs inférieures à 100 augmenteront les écarts entre les lignes de la couche extérieure." +msgstr "La densità del terzo strato del rivestimento esterno ponte. I valori inferiori a 100 aumentano la distanza tra le linee del rivestimento esterno." #: /fdmprinter.def.json msgctxt "bridge_fan_speed_3 label" msgid "Bridge Third Skin Fan Speed" -msgstr "Vitesse du ventilateur de la troisième couche extérieure du pont" +msgstr "Velocità della ventola del terzo rivestimento esterno ponte" #: /fdmprinter.def.json msgctxt "bridge_fan_speed_3 description" msgid "Percentage fan speed to use when printing the third bridge skin layer." -msgstr "Vitesse du ventilateur en pourcentage à utiliser pour l'impression de la troisième couche extérieure du pont." +msgstr "La velocità della ventola in percentuale da usare per stampare il terzo strato del rivestimento esterno ponte." #: /fdmprinter.def.json msgctxt "clean_between_layers label" msgid "Wipe Nozzle Between Layers" -msgstr "Essuyer la buse entre les couches" +msgstr "Pulitura ugello tra gli strati" #: /fdmprinter.def.json msgctxt "clean_between_layers description" @@ -7836,14 +7847,14 @@ msgid "" "Enabling this setting could influence behavior of retract at layer change. " "Please use Wipe Retraction settings to control retraction at layers where " "the wipe script will be working." -msgstr "Inclure ou non le G-Code d'essuyage de la buse entre les couches (maximum 1 par couche). L'activation de ce paramètre peut influencer le comportement de" -" la rétraction lors du changement de couche. Veuillez utiliser les paramètres de rétraction d'essuyage pour contrôler la rétraction aux couches où le script" -" d'essuyage sera exécuté." +msgstr "Indica se includere nel G-Code la pulitura ugello tra i layer (massimo 1 per layer). L'attivazione di questa impostazione potrebbe influenzare il comportamento" +" della retrazione al cambio layer. Utilizzare le impostazioni di retrazione per pulitura per controllare la retrazione in corrispondenza dei layer in cui" +" sarà in funzione lo script di pulitura." #: /fdmprinter.def.json msgctxt "max_extrusion_before_wipe label" msgid "Material Volume Between Wipes" -msgstr "Volume de matériau entre les essuyages" +msgstr "Volume di materiale tra le operazioni di pulitura" #: /fdmprinter.def.json msgctxt "max_extrusion_before_wipe description" @@ -7852,90 +7863,90 @@ msgid "" "initiated. If this value is less than the volume of material required in a " "layer, the setting has no effect in this layer, i.e. it is limited to one " "wipe per layer." -msgstr "Le volume maximum de matériau qui peut être extrudé avant qu'un autre essuyage de buse ne soit lancé. Si cette valeur est inférieure au volume de matériau" -" nécessaire dans une couche, le paramètre n'a aucun effet dans cette couche, c'est-à-dire qu'il est limité à un essuyage par couche." +msgstr "Il massimo volume di materiale che può essere estruso prima di iniziare un'altra operazione di pulitura ugello. Se questo valore è inferiore al volume" +" del materiale richiesto in un layer, l'impostazione non ha effetto in questo layer, vale a dire che si limita a una pulitura per layer." #: /fdmprinter.def.json msgctxt "wipe_retraction_enable label" msgid "Wipe Retraction Enable" -msgstr "Activation de la rétraction d'essuyage" +msgstr "Retrazione per pulitura abilitata" #: /fdmprinter.def.json msgctxt "wipe_retraction_enable description" msgid "Retract the filament when the nozzle is moving over a non-printed area." -msgstr "Rétracte le filament quand la buse se déplace vers une zone non imprimée." +msgstr "Ritrae il filamento quando l'ugello si sta muovendo su un'area non stampata." #: /fdmprinter.def.json msgctxt "wipe_retraction_amount label" msgid "Wipe Retraction Distance" -msgstr "Distance de rétraction d'essuyage" +msgstr "Distanza di retrazione per pulitura" #: /fdmprinter.def.json msgctxt "wipe_retraction_amount description" msgid "" "Amount to retract the filament so it does not ooze during the wipe sequence." -msgstr "La distance de rétraction du filament afin qu'il ne suinte pas pendant la séquence d'essuyage." +msgstr "L'entità di retrazione del filamento in modo che non fuoriesca durante la sequenza di pulitura." #: /fdmprinter.def.json msgctxt "wipe_retraction_extra_prime_amount label" msgid "Wipe Retraction Extra Prime Amount" -msgstr "Degré supplémentaire de rétraction d'essuyage d'amorçage" +msgstr "Entità di innesco supplementare dopo retrazione per pulitura" #: /fdmprinter.def.json msgctxt "wipe_retraction_extra_prime_amount description" msgid "" "Some material can ooze away during a wipe travel moves, which can be " "compensated for here." -msgstr "Du matériau peut suinter pendant un déplacement d'essuyage, ce qui peut être compensé ici." +msgstr "Qui è possibile compensare l’eventuale trafilamento di materiale che può verificarsi nel corso della pulitura durante il movimento." #: /fdmprinter.def.json msgctxt "wipe_retraction_speed label" msgid "Wipe Retraction Speed" -msgstr "Vitesse de rétraction d'essuyage" +msgstr "Velocità di retrazione per pulitura" #: /fdmprinter.def.json msgctxt "wipe_retraction_speed description" msgid "" "The speed at which the filament is retracted and primed during a wipe " "retraction move." -msgstr "La vitesse à laquelle le filament est rétracté et préparé pendant un déplacement de rétraction d'essuyage." +msgstr "Indica la velocità alla quale il filamento viene retratto e preparato durante un movimento di retrazione per pulitura." #: /fdmprinter.def.json msgctxt "wipe_retraction_retract_speed label" msgid "Wipe Retraction Retract Speed" -msgstr "Vitesse de rétraction d'essuyage" +msgstr "Velocità di retrazione per pulitura" #: /fdmprinter.def.json msgctxt "wipe_retraction_retract_speed description" msgid "" "The speed at which the filament is retracted during a wipe retraction move." -msgstr "La vitesse à laquelle le filament est rétracté pendant un déplacement de rétraction d'essuyage." +msgstr "Indica la velocità alla quale il filamento viene retratto durante un movimento di retrazione per pulitura." #: /fdmprinter.def.json msgctxt "wipe_retraction_prime_speed label" msgid "Wipe Retraction Prime Speed" -msgstr "Vitesse primaire de rétraction d'essuyage" +msgstr "Velocità di pulitura retrazione" #: /fdmprinter.def.json msgctxt "wipe_retraction_prime_speed description" msgid "" "The speed at which the filament is primed during a wipe retraction move." -msgstr "La vitesse à laquelle le filament est préparé pendant un déplacement de rétraction d'essuyage." +msgstr "Indica la velocità alla quale il filamento viene preparato durante un movimento di retrazione per pulitura." #: /fdmprinter.def.json msgctxt "wipe_pause label" msgid "Wipe Pause" -msgstr "Pause d'essuyage" +msgstr "Pausa pulitura" #: /fdmprinter.def.json msgctxt "wipe_pause description" msgid "Pause after the unretract." -msgstr "Pause après l'irrétraction." +msgstr "Pausa dopo ripristino." #: /fdmprinter.def.json msgctxt "wipe_hop_enable label" msgid "Wipe Z Hop" -msgstr "Décalage en Z de l'essuyage" +msgstr "Pulitura Z Hop" #: /fdmprinter.def.json msgctxt "wipe_hop_enable description" @@ -7943,100 +7954,100 @@ msgid "" "When wiping, the build plate is lowered to create clearance between the " "nozzle and the print. It prevents the nozzle from hitting the print during " "travel moves, reducing the chance to knock the print from the build plate." -msgstr "Lors de l'essuyage, le plateau de fabrication est abaissé pour créer un espace entre la buse et l'impression. Cela évite que la buse ne touche l'impression" -" pendant les déplacements, réduisant ainsi le risque de heurter l'impression à partir du plateau de fabrication." +msgstr "Durante la pulizia, il piano di stampa viene abbassato per creare uno spazio tra l'ugello e la stampa. Questo impedisce l'urto dell'ugello sulla stampa" +" durante gli spostamenti, riducendo la possibilità di far cadere la stampa dal piano." #: /fdmprinter.def.json msgctxt "wipe_hop_amount label" msgid "Wipe Z Hop Height" -msgstr "Hauteur du décalage en Z d'essuyage" +msgstr "Altezza Z Hop pulitura" #: /fdmprinter.def.json msgctxt "wipe_hop_amount description" msgid "The height difference when performing a Z Hop." -msgstr "La différence de hauteur lors de la réalisation d'un décalage en Z." +msgstr "La differenza di altezza durante l’esecuzione di uno Z Hop." #: /fdmprinter.def.json msgctxt "wipe_hop_speed label" msgid "Wipe Hop Speed" -msgstr "Vitesse du décalage d'essuyage" +msgstr "Velocità di sollevamento (Hop) per pulitura" #: /fdmprinter.def.json msgctxt "wipe_hop_speed description" msgid "Speed to move the z-axis during the hop." -msgstr "Vitesse de déplacement de l'axe Z pendant le décalage." +msgstr "Velocità di spostamento dell'asse z durante il sollevamento (Hop)." #: /fdmprinter.def.json msgctxt "wipe_brush_pos_x label" msgid "Wipe Brush X Position" -msgstr "Position X de la brosse d'essuyage" +msgstr "Posizione X spazzolino di pulitura" #: /fdmprinter.def.json msgctxt "wipe_brush_pos_x description" msgid "X location where wipe script will start." -msgstr "Emplacement X où le script d'essuyage démarrera." +msgstr "Posizione X in cui verrà avviato lo script di pulitura." #: /fdmprinter.def.json msgctxt "wipe_repeat_count label" msgid "Wipe Repeat Count" -msgstr "Nombre de répétitions d'essuyage" +msgstr "Conteggio ripetizioni operazioni di pulitura" #: /fdmprinter.def.json msgctxt "wipe_repeat_count description" msgid "Number of times to move the nozzle across the brush." -msgstr "Le nombre de déplacements de la buse à travers la brosse." +msgstr "Numero di passaggi dell'ugello attraverso lo spazzolino." #: /fdmprinter.def.json msgctxt "wipe_move_distance label" msgid "Wipe Move Distance" -msgstr "Distance de déplacement d'essuyage" +msgstr "Distanza spostamento longitudinale di pulitura" #: /fdmprinter.def.json msgctxt "wipe_move_distance description" msgid "The distance to move the head back and forth across the brush." -msgstr "La distance de déplacement de la tête d'avant en arrière à travers la brosse." +msgstr "La distanza dello spostamento longitudinale eseguito dalla testina attraverso lo spazzolino." #: /fdmprinter.def.json msgctxt "small_hole_max_size label" msgid "Small Hole Max Size" -msgstr "Taille maximale des petits trous" +msgstr "Dimensione massima foro piccolo" #: /fdmprinter.def.json msgctxt "small_hole_max_size description" msgid "" "Holes and part outlines with a diameter smaller than this will be printed " "using Small Feature Speed." -msgstr "Les trous et les contours des pièces dont le diamètre est inférieur à celui-ci seront imprimés en utilisant l'option Vitesse de petite structure." +msgstr "I fori e i profili delle parti con un diametro inferiore a quello indicato verranno stampati utilizzando Velocità Dettagli di piccole dimensioni." #: /fdmprinter.def.json msgctxt "small_feature_max_length label" msgid "Small Feature Max Length" -msgstr "Longueur max de petite structure" +msgstr "Lunghezza massima dettagli di piccole dimensioni" #: /fdmprinter.def.json msgctxt "small_feature_max_length description" msgid "" "Feature outlines that are shorter than this length will be printed using " "Small Feature Speed." -msgstr "Les contours des structures dont le diamètre est inférieur à cette longueur seront imprimés en utilisant l'option Vitesse de petite structure." +msgstr "Profili di dettagli inferiori a questa lunghezza saranno stampati utilizzando Velocità Dettagli di piccole dimensioni." #: /fdmprinter.def.json msgctxt "small_feature_speed_factor label" msgid "Small Feature Speed" -msgstr "Vitesse de petite structure" +msgstr "Velocità dettagli piccole dimensioni" #: /fdmprinter.def.json msgctxt "small_feature_speed_factor description" msgid "" "Small features will be printed at this percentage of their normal print " "speed. Slower printing can help with adhesion and accuracy." -msgstr "Les petites structures seront imprimées à ce pourcentage de la vitesse d'impression normale. Une impression plus lente peut aider à l'adhésion et à la" -" précision." +msgstr "I dettagli di piccole dimensioni verranno stampati a questa percentuale della velocità di stampa normale. Una stampa più lenta può aiutare in termini di" +" adesione e precisione." #: /fdmprinter.def.json msgctxt "small_feature_speed_factor_0 label" msgid "Small Feature Initial Layer Speed" -msgstr "Vitesse de la couche initiale de petite structure" +msgstr "Velocità layer iniziale per dettagli di piccole dimensioni" #: /fdmprinter.def.json msgctxt "small_feature_speed_factor_0 description" @@ -8044,107 +8055,106 @@ msgid "" "Small features on the first layer will be printed at this percentage of " "their normal print speed. Slower printing can help with adhesion and " "accuracy." -msgstr "Les petites structures sur la première couche seront imprimées à ce pourcentage de la vitesse d'impression normale. Une impression plus lente peut aider" -" à l'adhésion et à la précision." +msgstr "I dettagli di piccole dimensioni sul primo layer saranno stampati a questa percentuale della velocità di stampa normale. Una stampa più lenta può aiutare" +" in termini di adesione e precisione." #: /fdmprinter.def.json msgctxt "material_alternate_walls label" msgid "Alternate Wall Directions" -msgstr "Alterner les directions des parois" +msgstr "Alterna direzioni parete" #: /fdmprinter.def.json msgctxt "material_alternate_walls description" msgid "" "Alternate wall directions every other layer and inset. Useful for materials " "that can build up stress, like for metal printing." -msgstr "Alternez les directions des parois, une couche et un insert sur deux. Utile pour les matériaux qui peuvent accumuler des contraintes, comme pour l'impression" -" de métal." +msgstr "Consente di alternare direzioni parete ogni altro strato o inserto. Utile per materiali che possono accumulare stress, come per la stampa su metallo." #: /fdmprinter.def.json msgctxt "raft_remove_inside_corners label" msgid "Remove Raft Inside Corners" -msgstr "Supprimer les coins intérieurs du radeau" +msgstr "Rimuovi angoli interni raft" #: /fdmprinter.def.json msgctxt "raft_remove_inside_corners description" msgid "Remove inside corners from the raft, causing the raft to become convex." -msgstr "Supprimez les coins intérieurs du radeau afin de le rendre convexe." +msgstr "Consente di rimuovere angoli interni dal raft, facendolo diventare convesso." #: /fdmprinter.def.json msgctxt "raft_base_wall_count label" msgid "Raft Base Wall Count" -msgstr "Nombre de parois à la base du radeau" +msgstr "Conteggio parete base del raft" #: /fdmprinter.def.json msgctxt "raft_base_wall_count description" msgid "" "The number of contours to print around the linear pattern in the base layer " "of the raft." -msgstr "Le nombre de contours à imprimer autour du motif linéaire dans la couche de base du radeau." +msgstr "Il numero di contorni da stampare intorno alla configurazione lineare nello strato di base del raft." #: /fdmprinter.def.json msgctxt "command_line_settings label" msgid "Command Line Settings" -msgstr "Paramètres de ligne de commande" +msgstr "Impostazioni riga di comando" #: /fdmprinter.def.json msgctxt "command_line_settings description" msgid "" "Settings which are only used if CuraEngine isn't called from the Cura " "frontend." -msgstr "Paramètres qui sont utilisés uniquement si CuraEngine n'est pas invoqué depuis l'interface Cura." +msgstr "Impostazioni utilizzate solo se CuraEngine non è chiamato dalla parte anteriore di Cura." #: /fdmprinter.def.json msgctxt "center_object label" msgid "Center Object" -msgstr "Centrer l'objet" +msgstr "Centra oggetto" #: /fdmprinter.def.json msgctxt "center_object description" msgid "" "Whether to center the object on the middle of the build platform (0,0), " "instead of using the coordinate system in which the object was saved." -msgstr "S'il faut centrer l'objet au milieu du plateau d'impression (0,0) au lieu d'utiliser le système de coordonnées dans lequel l'objet a été enregistré." +msgstr "Per centrare l’oggetto al centro del piano di stampa (0,0) anziché utilizzare il sistema di coordinate in cui l’oggetto è stato salvato." #: /fdmprinter.def.json msgctxt "mesh_position_x label" msgid "Mesh Position X" -msgstr "Position X de la maille" +msgstr "Posizione maglia X" #: /fdmprinter.def.json msgctxt "mesh_position_x description" msgid "Offset applied to the object in the x direction." -msgstr "Offset appliqué à l'objet dans la direction X." +msgstr "Offset applicato all’oggetto per la direzione X." #: /fdmprinter.def.json msgctxt "mesh_position_y label" msgid "Mesh Position Y" -msgstr "Position Y de la maille" +msgstr "Posizione maglia Y" #: /fdmprinter.def.json msgctxt "mesh_position_y description" msgid "Offset applied to the object in the y direction." -msgstr "Offset appliqué à l'objet dans la direction Y." +msgstr "Offset applicato all’oggetto per la direzione Y." #: /fdmprinter.def.json msgctxt "mesh_position_z label" msgid "Mesh Position Z" -msgstr "Position Z de la maille" +msgstr "Posizione maglia Z" #: /fdmprinter.def.json msgctxt "mesh_position_z description" msgid "" "Offset applied to the object in the z direction. With this you can perform " "what was used to be called 'Object Sink'." -msgstr "Décalage appliqué à l'objet dans le sens z. Cela vous permet d'exécuter ce que l'on appelait « Affaissement de l'objet »." +msgstr "Offset applicato all’oggetto in direzione z. Con questo potrai effettuare quello che veniva denominato 'Object Sink’." #: /fdmprinter.def.json msgctxt "mesh_rotation_matrix label" msgid "Mesh Rotation Matrix" -msgstr "Matrice de rotation de la maille" +msgstr "Matrice rotazione maglia" #: /fdmprinter.def.json msgctxt "mesh_rotation_matrix description" msgid "" "Transformation matrix to be applied to the model when loading it from file." -msgstr "Matrice de transformation à appliquer au modèle lors de son chargement depuis le fichier." +msgstr "Matrice di rotazione da applicare al modello quando caricato dal file." From 8dbf69d2cc40bed1e2fd4fd481dc962c908dfd6d Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Wed, 19 Oct 2022 11:44:24 +0200 Subject: [PATCH 022/161] Revert incorrect update of translations Accidentally overwrote the cn with cz translations --- resources/i18n/zh_CN/cura.po | 6641 +++++++++++++++++++++++++--------- 1 file changed, 4954 insertions(+), 1687 deletions(-) diff --git a/resources/i18n/zh_CN/cura.po b/resources/i18n/zh_CN/cura.po index 6c63a0b8fc..0eea2c361a 100644 --- a/resources/i18n/zh_CN/cura.po +++ b/resources/i18n/zh_CN/cura.po @@ -1,118 +1,117 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. +# Cura +# Copyright (C) 2022 Ultimaker B.V. +# This file is distributed under the same license as the Cura package. # -#, fuzzy msgid "" msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" +"Project-Id-Version: Cura 5.1\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-09-27 14:50+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" +"PO-Revision-Date: 2022-07-15 11:06+0200\n" +"Last-Translator: \n" +"Language-Team: \n" "Language: zh_CN\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Poedit 3.1.1\n" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:87 msgctxt "@tooltip" msgid "Outer Wall" -msgstr "Vnější stěna" +msgstr "外壁" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:88 msgctxt "@tooltip" msgid "Inner Walls" -msgstr "Vnitřní stěna" +msgstr "内壁" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:89 msgctxt "@tooltip" msgid "Skin" -msgstr "Skin" +msgstr "表层" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:90 msgctxt "@tooltip" msgid "Infill" -msgstr "Výplň" +msgstr "填充" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:91 msgctxt "@tooltip" msgid "Support Infill" -msgstr "Výplň podpor" +msgstr "支撑填充" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:92 msgctxt "@tooltip" msgid "Support Interface" -msgstr "Rozhraní podpor" +msgstr "支撑接触面" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:93 msgctxt "@tooltip" msgid "Support" -msgstr "Podpora" +msgstr "支撑" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:94 msgctxt "@tooltip" msgid "Skirt" -msgstr "Límec" +msgstr "Skirt" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:95 msgctxt "@tooltip" msgid "Prime Tower" -msgstr "Hlavní věž" +msgstr "装填塔" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:96 msgctxt "@tooltip" msgid "Travel" -msgstr "Pohyb" +msgstr "移动" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:97 msgctxt "@tooltip" msgid "Retractions" -msgstr "Retrakce" +msgstr "回抽" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/PrintInformation.py:98 msgctxt "@tooltip" msgid "Other" -msgstr "Jiné" +msgstr "其它" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/TextManager.py:37 #: /Users/c.lamboo/ultimaker/Cura/cura/UI/TextManager.py:63 msgctxt "@text:window" msgid "The release notes could not be opened." -msgstr "Poznámky k vydání nelze otevřít." +msgstr "无法打开版本说明。" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/ObjectsModel.py:69 #, python-brace-format msgctxt "@label" msgid "Group #{group_nr}" -msgstr "Skupina #{group_nr}" +msgstr "组 #{group_nr}" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:57 #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:277 msgctxt "@action:button" msgid "Next" -msgstr "Další" +msgstr "下一步" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:286 #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WhatsNewPagesModel.py:68 msgctxt "@action:button" msgid "Skip" -msgstr "Přeskočit" +msgstr "跳过" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WelcomePagesModel.py:290 #: /Users/c.lamboo/ultimaker/Cura/cura/UI/AddPrinterPagesModel.py:26 msgctxt "@action:button" msgid "Finish" -msgstr "Dokončit" +msgstr "完成" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/AddPrinterPagesModel.py:17 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:61 msgctxt "@action:button" msgid "Add" -msgstr "Přidat" +msgstr "添加" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/AddPrinterPagesModel.py:33 #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:323 @@ -126,7 +125,7 @@ msgstr "Přidat" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ColorDialog.qml:139 msgctxt "@action:button" msgid "Cancel" -msgstr "Zrušit" +msgstr "取消" #: /Users/c.lamboo/ultimaker/Cura/cura/UI/WhatsNewPagesModel.py:76 #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:444 @@ -135,67 +134,63 @@ msgstr "Zrušit" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:188 msgctxt "@action:button" msgid "Close" -msgstr "Zavřít" +msgstr "关闭" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:207 #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:140 msgctxt "@title:window" msgid "File Already Exists" -msgstr "Soubor již existuje" +msgstr "文件已存在" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:208 #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:141 #, python-brace-format msgctxt "@label Don't translate the XML tag !" -msgid "" -"The file {0} already exists. Are you sure you want to " -"overwrite it?" -msgstr "Soubor {0} již existuje. Opravdu jej chcete přepsat?" +msgid "The file {0} already exists. Are you sure you want to overwrite it?" +msgstr "文件 {0} 已存在。您确定要覆盖它吗?" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:459 #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/ContainerManager.py:462 msgctxt "@info:status" msgid "Invalid file URL:" -msgstr "Špatná cesta k souboru:" +msgstr "文件 URL 无效:" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/cura_empty_instance_containers.py:36 msgctxt "@info:not supported profile" msgid "Not supported" -msgstr "Nepodporovaný" +msgstr "不支持" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/cura_empty_instance_containers.py:55 msgctxt "@info:No intent profile selected" msgid "Default" -msgstr "Výchozí" +msgstr "Default" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/MachineManager.py:745 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:219 msgctxt "@label" msgid "Nozzle" -msgstr "Tryska" +msgstr "喷嘴" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/MachineManager.py:889 msgctxt "@info:message Followed by a list of settings." -msgid "" -"Settings have been changed to match the current availability of extruders:" -msgstr "Nastavení byla změněna, aby odpovídala aktuální dostupnosti extruderů:" +msgid "Settings have been changed to match the current availability of extruders:" +msgstr "已根据挤出机的当前可用性更改设置:" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/MachineManager.py:890 msgctxt "@info:title" msgid "Settings updated" -msgstr "Nastavení aktualizováno" +msgstr "设置已更新" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/MachineManager.py:1512 msgctxt "@info:title" msgid "Extruder(s) Disabled" -msgstr "Extruder(y) zakázány" +msgstr "挤出机已禁用" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:153 #, python-brace-format msgctxt "@info:status Don't translate the XML tags or !" -msgid "" -"Failed to export profile to {0}: {1}" -msgstr "Nepodařilo se exportovat profil do {0}: {1}" +msgid "Failed to export profile to {0}: {1}" +msgstr "无法将配置文件导出至 {0} {1}" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:156 #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:166 @@ -204,189 +199,176 @@ msgstr "Nepodařilo se exportovat profil do {0}: { #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:173 msgctxt "@info:title" msgid "Error" -msgstr "Chyba" +msgstr "错误" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:163 #, python-brace-format msgctxt "@info:status Don't translate the XML tag !" -msgid "" -"Failed to export profile to {0}: Writer plugin reported " -"failure." -msgstr "Export profilu do {0} se nezdařil: Zapisovací zásuvný modul ohlásil chybu." +msgid "Failed to export profile to {0}: Writer plugin reported failure." +msgstr "无法将配置文件导出至 {0} : 写入器插件报告故障。" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:171 #, python-brace-format msgctxt "@info:status Don't translate the XML tag !" msgid "Exported profile to {0}" -msgstr "Exportován profil do {0}" +msgstr "配置文件已导出至: {0} " #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:173 msgctxt "@info:title" msgid "Export succeeded" -msgstr "Export úspěšný" +msgstr "导出成功" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:205 #, python-brace-format msgctxt "@info:status Don't translate the XML tags !" msgid "Failed to import profile from {0}: {1}" -msgstr "Nepodařilo se importovat profil z {0}: {1}" +msgstr "无法从 {0} 导入配置文件:{1}" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:209 #, python-brace-format msgctxt "@info:status Don't translate the XML tags !" -msgid "" -"Can't import profile from {0} before a printer is added." -msgstr "Nemohu přidat profil z {0} před tím, než je přidána tiskárna." +msgid "Can't import profile from {0} before a printer is added." +msgstr "无法在添加打印机前从 {0} 导入配置文件。" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:224 #, python-brace-format msgctxt "@info:status Don't translate the XML tags !" msgid "No custom profile to import in file {0}" -msgstr "V souboru {0} není k dispozici žádný vlastní profil" +msgstr "没有可导入文件 {0} 的自定义配置文件" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:228 #, python-brace-format msgctxt "@info:status Don't translate the XML tags !" msgid "Failed to import profile from {0}:" -msgstr "Import profilu z {0} se nezdařil:" +msgstr "无法从 {0} 导入配置文件:" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:252 #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:262 #, python-brace-format msgctxt "@info:status Don't translate the XML tags !" -msgid "" -"This profile {0} contains incorrect data, could not " -"import it." -msgstr "Tento profil {0} obsahuje nesprávná data, nemohl je importovat." +msgid "This profile {0} contains incorrect data, could not import it." +msgstr "此配置文件 {0} 包含错误数据,无法导入。" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:355 #, python-brace-format msgctxt "@info:status Don't translate the XML tag !" msgid "Failed to import profile from {0}:" -msgstr "Import profilu z {0} se nezdařil:" +msgstr "无法从 {0} 导入配置文件:" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:359 #, python-brace-format msgctxt "@info:status" msgid "Successfully imported profile {0}." -msgstr "Úspěšně importován profil {0}." +msgstr "已成功导入配置文件 {0}。" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:366 #, python-brace-format msgctxt "@info:status" msgid "File {0} does not contain any valid profile." -msgstr "Soubor {0} neobsahuje žádný platný profil." +msgstr "文件 {0} 不包含任何有效的配置文件。" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:369 #, python-brace-format msgctxt "@info:status" msgid "Profile {0} has an unknown file type or is corrupted." -msgstr "Profil {0} má neznámý typ souboru nebo je poškozen." +msgstr "配置 {0} 文件类型未知或已损坏。" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:443 msgctxt "@label" msgid "Custom profile" -msgstr "Vlastní profil" +msgstr "自定义配置文件" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:459 msgctxt "@info:status" msgid "Profile is missing a quality type." -msgstr "V profilu chybí typ kvality." +msgstr "配置文件缺少打印质量类型定义。" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:463 msgctxt "@info:status" msgid "There is no active printer yet." -msgstr "Zatím neexistuje aktivní tiskárna." +msgstr "尚无处于活动状态的打印机。" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:469 msgctxt "@info:status" msgid "Unable to add the profile." -msgstr "Nepovedlo se přidat profil." +msgstr "无法添加配置文件。" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:483 #, python-brace-format msgctxt "@info:status" -msgid "" -"Quality type '{0}' is not compatible with the current active machine " -"definition '{1}'." -msgstr "Typ kvality '{0}' není kompatibilní s definicí '{1}' aktivního zařízení." +msgid "Quality type '{0}' is not compatible with the current active machine definition '{1}'." +msgstr "质量类型“{0}”与当前有效的机器定义“{1}”不兼容。" #: /Users/c.lamboo/ultimaker/Cura/cura/Settings/CuraContainerRegistry.py:488 #, python-brace-format msgctxt "@info:status" -msgid "" -"Warning: The profile is not visible because its quality type '{0}' is not " -"available for the current configuration. Switch to a material/nozzle " -"combination that can use this quality type." -msgstr "Varování: Profil není viditelný, protože typ kvality '{0}' není dostupný pro aktuální konfiguraci. Přepněte na kombinaci materiálu a trysky, která může" -" být použita s tímto typem kvality." +msgid "Warning: The profile is not visible because its quality type '{0}' is not available for the current configuration. Switch to a material/nozzle combination that can use this quality type." +msgstr "警告:配置文件不可见,因为其质量类型“{0}”对当前配置不可用。请切换到可使用此质量类型的材料/喷嘴组合。" #: /Users/c.lamboo/ultimaker/Cura/cura/MultiplyObjectsJob.py:30 msgctxt "@info:status" msgid "Multiplying and placing objects" -msgstr "Násobím a rozmisťuji objekty" +msgstr "复制并放置模型" #: /Users/c.lamboo/ultimaker/Cura/cura/MultiplyObjectsJob.py:32 msgctxt "@info:title" msgid "Placing Objects" -msgstr "Umisťuji objekty" +msgstr "放置模型" #: /Users/c.lamboo/ultimaker/Cura/cura/MultiplyObjectsJob.py:99 #: /Users/c.lamboo/ultimaker/Cura/cura/Arranging/ArrangeObjectsJob.py:42 msgctxt "@info:status" msgid "Unable to find a location within the build volume for all objects" -msgstr "Nemohu najít lokaci na podložce pro všechny objekty" +msgstr "无法在成形空间体积内放下全部模型" #: /Users/c.lamboo/ultimaker/Cura/cura/MultiplyObjectsJob.py:100 msgctxt "@info:title" msgid "Placing Object" -msgstr "Umisťuji objekt" +msgstr "放置模型" #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:540 msgctxt "@info:progress" msgid "Loading machines..." -msgstr "Načítám zařízení..." +msgstr "正在载入打印机..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:547 msgctxt "@info:progress" msgid "Setting up preferences..." -msgstr "Nastavuji preference..." +msgstr "正在设置偏好设置..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:692 msgctxt "@info:progress" msgid "Initializing Active Machine..." -msgstr "Inicializuji aktivní zařízení..." +msgstr "正在初始化当前机器..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:838 msgctxt "@info:progress" msgid "Initializing machine manager..." -msgstr "Inicializuji správce zařízení..." +msgstr "正在初始化机器管理器..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:852 msgctxt "@info:progress" msgid "Initializing build volume..." -msgstr "Inicializuji prostor podložky..." +msgstr "正在初始化成形空间体积..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:920 msgctxt "@info:progress" msgid "Setting up scene..." -msgstr "Připravuji scénu..." +msgstr "正在设置场景..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:956 msgctxt "@info:progress" msgid "Loading interface..." -msgstr "Načítám rozhraní..." +msgstr "正在载入界面..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:961 msgctxt "@info:progress" msgid "Initializing engine..." -msgstr "Inicializuji engine..." +msgstr "正在初始化引擎..." #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:1289 #, python-format -msgctxt "" -"@info 'width', 'depth' and 'height' are variable names that must NOT be " -"translated; just translate the format of ##x##x## mm." +msgctxt "@info 'width', 'depth' and 'height' are variable names that must NOT be translated; just translate the format of ##x##x## mm." msgid "%(width).1f x %(depth).1f x %(height).1f mm" msgstr "%(width).1f x %(depth).1f x %(height).1f mm" @@ -394,82 +376,80 @@ msgstr "%(width).1f x %(depth).1f x %(height).1f mm" #, python-brace-format msgctxt "@info:status" msgid "Only one G-code file can be loaded at a time. Skipped importing {0}" -msgstr "Současně lze načíst pouze jeden soubor G-kódu. Přeskočen import {0}" +msgstr "一次只能加载一个 G-code 文件。{0} 已跳过导入" #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:1817 #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationService.py:217 #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:189 msgctxt "@info:title" msgid "Warning" -msgstr "Varování" +msgstr "警告" #: /Users/c.lamboo/ultimaker/Cura/cura/CuraApplication.py:1827 #, python-brace-format msgctxt "@info:status" msgid "Can't open any other file if G-code is loading. Skipped importing {0}" -msgstr "Nelze otevřít žádný jiný soubor, když se načítá G kód. Přeskočen import {0}" +msgstr "如果加载 G-code,则无法打开其他任何文件。{0} 已跳过导入" #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationHelpers.py:89 msgctxt "@message" msgid "Could not read response." -msgstr "Nelze přečíst odpověď." +msgstr "无法读取响应。" #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationRequestHandler.py:75 msgctxt "@message" msgid "The provided state is not correct." -msgstr "Poskytnutý stav není správný." +msgstr "所提供的状态不正确。" #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationRequestHandler.py:80 msgctxt "@message" msgid "Timeout when authenticating with the account server." -msgstr "Vypršel časový limit při autentizaci se serverem s účty." +msgstr "使用帐户服务器进行身份验证超时。" #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationRequestHandler.py:97 msgctxt "@message" msgid "Please give the required permissions when authorizing this application." -msgstr "Při autorizaci této aplikace zadejte požadovaná oprávnění." +msgstr "在授权此应用程序时,须提供所需权限。" #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationRequestHandler.py:104 msgctxt "@message" msgid "Something unexpected happened when trying to log in, please try again." -msgstr "Při pokusu o přihlášení se stalo něco neočekávaného, zkuste to znovu." +msgstr "尝试登录时出现意外情况,请重试。" #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationService.py:216 msgctxt "@info" -msgid "" -"Unable to start a new sign in process. Check if another sign in attempt is " -"still active." -msgstr "Nepodařilo se mi spustit nový proces přihlášení. Zkontrolujte, zda nějaký jiný již neběží." +msgid "Unable to start a new sign in process. Check if another sign in attempt is still active." +msgstr "无法开始新的登录过程。请检查是否仍在尝试进行另一登录。" #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationService.py:277 msgctxt "@info" msgid "Unable to reach the Ultimaker account server." -msgstr "Nelze se dostat na server účtu Ultimaker." +msgstr "无法连接 Ultimaker 帐户服务器。" #: /Users/c.lamboo/ultimaker/Cura/cura/OAuth2/AuthorizationService.py:278 msgctxt "@info:title" msgid "Log-in failed" -msgstr "Přihlášení selhalo" +msgstr "登录失败" #: /Users/c.lamboo/ultimaker/Cura/cura/Arranging/ArrangeObjectsJob.py:25 msgctxt "@info:status" msgid "Finding new location for objects" -msgstr "Hledám nové umístění pro objekt" +msgstr "正在为模型寻找新位置" #: /Users/c.lamboo/ultimaker/Cura/cura/Arranging/ArrangeObjectsJob.py:29 msgctxt "@info:title" msgid "Finding Location" -msgstr "Hledám umístění" +msgstr "正在寻找位置" #: /Users/c.lamboo/ultimaker/Cura/cura/Arranging/ArrangeObjectsJob.py:43 msgctxt "@info:title" msgid "Can't Find Location" -msgstr "Nemohu najít umístění" +msgstr "找不到位置" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/ExtrudersModel.py:219 msgctxt "@menuitem" msgid "Not overridden" -msgstr "Nepřepsáno" +msgstr "未覆盖" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:11 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:42 @@ -477,216 +457,203 @@ msgstr "Nepřepsáno" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:61 msgctxt "@label" msgid "Default" -msgstr "Výchozí" +msgstr "Default" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:14 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:45 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:65 msgctxt "@label" msgid "Visual" -msgstr "Vizuální" +msgstr "视觉" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:15 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:46 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:66 msgctxt "@text" -msgid "" -"The visual profile is designed to print visual prototypes and models with " -"the intent of high visual and surface quality." -msgstr "Vizuální profil je navržen pro tisk vizuálních prototypů a modelů s cílem vysoké vizuální a povrchové kvality." +msgid "The visual profile is designed to print visual prototypes and models with the intent of high visual and surface quality." +msgstr "视觉配置文件用于打印视觉原型和模型,可实现出色的视觉效果和表面质量。" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:18 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:49 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:70 msgctxt "@label" msgid "Engineering" -msgstr "Technika" +msgstr "Engineering" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:19 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:50 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:71 msgctxt "@text" -msgid "" -"The engineering profile is designed to print functional prototypes and end-" -"use parts with the intent of better accuracy and for closer tolerances." -msgstr "Inženýrský profil je navržen pro tisk funkčních prototypů a koncových částí s cílem lepší přesnosti a bližších tolerancí." +msgid "The engineering profile is designed to print functional prototypes and end-use parts with the intent of better accuracy and for closer tolerances." +msgstr "工程配置文件用于打印功能性原型和最终用途部件,可提高准确性和减小公差。" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:22 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:53 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:75 msgctxt "@label" msgid "Draft" -msgstr "Návrh" +msgstr "草稿" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentTranslations.py:23 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentCategoryModel.py:54 #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/IntentSelectionModel.py:76 msgctxt "@text" -msgid "" -"The draft profile is designed to print initial prototypes and concept " -"validation with the intent of significant print time reduction." -msgstr "Návrhový profil je navržen pro tisk počátečních prototypů a ověření koncepce s cílem podstatného zkrácení doby tisku." +msgid "The draft profile is designed to print initial prototypes and concept validation with the intent of significant print time reduction." +msgstr "草稿配置文件用于打印初始原型和概念验证,可大大缩短打印时间。" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/QualitySettingsModel.py:182 msgctxt "@info:status" msgid "Calculated" -msgstr "Vypočítáno" +msgstr "已计算" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/QualityManagementModel.py:391 msgctxt "@label" msgid "Custom profiles" -msgstr "Vlastní profily" +msgstr "自定义配置文件" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/QualityManagementModel.py:426 #, python-brace-format msgctxt "@item:inlistbox" msgid "All Supported Types ({0})" -msgstr "Všechny podporované typy ({0})" +msgstr "所有支持的文件类型 ({0})" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/QualityManagementModel.py:427 msgctxt "@item:inlistbox" msgid "All Files (*)" -msgstr "Všechny soubory (*)" +msgstr "所有文件 (*)" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83 msgctxt "@label" msgid "Unknown" -msgstr "Neznámý" +msgstr "未知" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:113 msgctxt "@label" -msgid "" -"The printer(s) below cannot be connected because they are part of a group" -msgstr "Níže uvedené tiskárny nelze připojit, protože jsou součástí skupiny" +msgid "The printer(s) below cannot be connected because they are part of a group" +msgstr "无法连接到下列打印机,因为这些打印机已在组中" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:115 msgctxt "@label" msgid "Available networked printers" -msgstr "Dostupné síťové tiskárny" +msgstr "可用的网络打印机" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/GlobalStacksModel.py:160 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Connected printers" -msgstr "Připojené tiskárny" +msgstr "已连接的打印机" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/GlobalStacksModel.py:160 msgctxt "@label" msgid "Preset printers" -msgstr "Přednastavené tiskárny" +msgstr "预设打印机" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/GlobalStacksModel.py:165 #, python-brace-format msgctxt "@label {0} is the name of a printer that's about to be deleted." msgid "Are you sure you wish to remove {0}? This cannot be undone!" -msgstr "Doopravdy chcete odstranit {0}? Toto nelze vrátit zpět!" +msgstr "是否确实要删除 {0}?此操作无法撤消!" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/MaterialManagementModel.py:232 msgctxt "@label" msgid "Custom Material" -msgstr "Vlastní materiál" +msgstr "自定义材料" #: /Users/c.lamboo/ultimaker/Cura/cura/Machines/Models/MaterialManagementModel.py:233 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:340 msgctxt "@label" msgid "Custom" -msgstr "Vlastní" +msgstr "自定义" #: /Users/c.lamboo/ultimaker/Cura/cura/API/Account.py:199 msgctxt "@info:title" msgid "Login failed" -msgstr "Přihlášení selhalo" +msgstr "登录失败" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:66 msgctxt "@action:button" -msgid "" -"Please sync the material profiles with your printers before starting to " -"print." -msgstr "Prosím synchronizujte před začátkem tisku materiálové profily s vašimi tiskárnami." +msgid "Please sync the material profiles with your printers before starting to print." +msgstr "请在开始打印之前将材料配置文件与您的打印机同步。" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:67 msgctxt "@action:button" msgid "New materials installed" -msgstr "Byly nainstalovány nové materiály" +msgstr "新材料已装载" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:74 msgctxt "@action:button" msgid "Sync materials" -msgstr "Synchronizovat materiály" +msgstr "同步材料" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:82 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.py:397 #: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/SolidView.py:80 msgctxt "@action:button" msgid "Learn more" -msgstr "Zjistit více" +msgstr "详细了解" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:135 msgctxt "@message:text" msgid "Could not save material archive to {}:" -msgstr "Nelze uložit archiv s materiálem do {}:" +msgstr "未能将材料存档保存到 {}:" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:136 msgctxt "@message:title" msgid "Failed to save material archive" -msgstr "Nepodařilo se uložit archiv s materiálem" +msgstr "未能保存材料存档" #: /Users/c.lamboo/ultimaker/Cura/cura/UltimakerCloud/CloudMaterialSync.py:188 msgctxt "@text" msgid "Unknown error." -msgstr "Neznámá chyba." +msgstr "未知错误。" #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:104 msgctxt "@text:error" msgid "Failed to create archive of materials to sync with printers." -msgstr "Nepodařilo se vytvořit archiv s materiály pro synchronizaci s tiskárnami." +msgstr "无法创建材料存档以与打印机同步。" #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:111 #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:165 msgctxt "@text:error" msgid "Failed to load the archive of materials to sync it with printers." -msgstr "Nepodařilo se načíst archiv s materiály pro synchronizaci s tiskárnami." +msgstr "无法加载材料存档以与打印机同步。" #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:143 msgctxt "@text:error" msgid "The response from Digital Factory appears to be corrupted." -msgstr "Odpověď z Digital Factory se zdá být poškozená." +msgstr "来自 Digital Factory 的响应似乎已损坏。" #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:147 #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:151 #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:155 msgctxt "@text:error" msgid "The response from Digital Factory is missing important information." -msgstr "Odpověď z Digital Factory postrádá důležité informace." +msgstr "来自 Digital Factory 的响应缺少重要信息。" #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:218 msgctxt "@text:error" -msgid "" -"Failed to connect to Digital Factory to sync materials with some of the " -"printers." -msgstr "Nepodařilo se připojit k Digital Factory pro synchronizaci materiálů s některými z tiskáren." +msgid "Failed to connect to Digital Factory to sync materials with some of the printers." +msgstr "Failed to connect to Digital Factory to sync materials with some of the printers." #: /Users/c.lamboo/ultimaker/Cura/cura/PrinterOutput/UploadMaterialsJob.py:232 msgctxt "@text:error" msgid "Failed to connect to Digital Factory." -msgstr "Nepodařilo se připojit k Digital Factory." +msgstr "无法连接至 Digital Factory。" #: /Users/c.lamboo/ultimaker/Cura/cura/BuildVolume.py:100 msgctxt "@info:status" -msgid "" -"The build volume height has been reduced due to the value of the \"Print " -"Sequence\" setting to prevent the gantry from colliding with printed models." -msgstr "Výška podložky byla snížena kvůli hodnotě nastavení „Sekvence tisku“, aby se zabránilo kolizi rámu s tištěnými modely." +msgid "The build volume height has been reduced due to the value of the \"Print Sequence\" setting to prevent the gantry from colliding with printed models." +msgstr "由于“打印序列”设置的值,成形空间体积高度已被减少,以防止十字轴与打印模型相冲突。" #: /Users/c.lamboo/ultimaker/Cura/cura/BuildVolume.py:103 msgctxt "@info:title" msgid "Build Volume" -msgstr "Podložka" +msgstr "成形空间体积" #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:115 msgctxt "@info:backup_failed" msgid "Could not create archive from user data directory: {}" -msgstr "Nelze vytvořit archiv ze složky s uživatelskými daty: {}" +msgstr "不能从用户数据目录创建存档: {}" #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:122 #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:159 @@ -694,120 +661,118 @@ msgstr "Nelze vytvořit archiv ze složky s uživatelskými daty: {}" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:126 msgctxt "@info:title" msgid "Backup" -msgstr "Záloha" +msgstr "备份" #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:134 msgctxt "@info:backup_failed" msgid "Tried to restore a Cura backup without having proper data or meta data." -msgstr "Pokusil se obnovit zálohu Cura bez nutnosti správných dat nebo metadat." +msgstr "试图在没有适当数据或元数据的情况下恢复Cura备份。" #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:145 msgctxt "@info:backup_failed" msgid "Tried to restore a Cura backup that is higher than the current version." -msgstr "Pokusil se obnovit zálohu Cura, která je vyšší než aktuální verze." +msgstr "尝试恢复的 Cura 备份版本高于当前版本。" #: /Users/c.lamboo/ultimaker/Cura/cura/Backups/Backup.py:158 msgctxt "@info:backup_failed" msgid "The following error occurred while trying to restore a Cura backup:" -msgstr "Během obnovení zálohy Cura se vyskytly následující chyby:" +msgstr "尝试恢复 Cura 备份时出现以下错误:" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:107 msgctxt "@title:window" msgid "Cura can't start" -msgstr "Cura nelze spustit" +msgstr "Cura 无法启动" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:113 msgctxt "@label crash message" msgid "" -"

    Oops, Ultimaker Cura has encountered something that doesn't seem right." -"

    \n" -"

    We encountered an unrecoverable error during start " -"up. It was possibly caused by some incorrect configuration files. We suggest " -"to backup and reset your configuration.

    \n" -"

    Backups can be found in the configuration folder.\n" -"

    Please send us this Crash Report to fix the problem.\n" +"

    Oops, Ultimaker Cura has encountered something that doesn't seem right.

    \n" +"

    We encountered an unrecoverable error during start up. It was possibly caused by some incorrect configuration files. We suggest to backup and reset your configuration.

    \n" +"

    Backups can be found in the configuration folder.

    \n" +"

    Please send us this Crash Report to fix the problem.

    \n" +" " +msgstr "" +"

    糟糕,Ultimaker Cura 似乎遇到了问题。

    \n" +"

    在启动时发生了不可修复的错误。这可能是因某些配置文件出错导致的。建议您备份并重置配置。

    \n" +"

    您可在配置文件夹中找到备份。

    \n" +"

    请向我们发送此错误报告,以便解决问题。

    \n" " " -msgstr "

    Jejda, Ultimaker Cura narazil na něco, co se nezdá být v pořádku.

    \n                    

    Během spouštění jsme zaznamenali neodstranitelnou" -" chybu. Bylo to pravděpodobně způsobeno některými nesprávnými konfiguračními soubory. Doporučujeme zálohovat a resetovat vaši konfiguraci.

    \n                    " -"

    Zálohy najdete v konfigurační složce.

    \n                    

    Za účelem vyřešení problému nám prosím pošlete tento záznam pádu.

    \n " #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:122 msgctxt "@action:button" msgid "Send crash report to Ultimaker" -msgstr "Poslat záznam o pádu do Ultimakeru" +msgstr "向 Ultimaker 发送错误报告" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:125 msgctxt "@action:button" msgid "Show detailed crash report" -msgstr "Zobrazit podrobný záznam pádu" +msgstr "显示详细的错误报告" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:129 msgctxt "@action:button" msgid "Show configuration folder" -msgstr "Zobrazit složku s konfigurací" +msgstr "显示配置文件夹" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:140 msgctxt "@action:button" msgid "Backup and Reset Configuration" -msgstr "Zálohovat a resetovat konfiguraci" +msgstr "备份并重置配置" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:171 msgctxt "@title:window" msgid "Crash Report" -msgstr "Záznam pádu" +msgstr "错误报告" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:190 msgctxt "@label crash message" msgid "" -"

    A fatal error has occurred in Cura. Please send us this Crash Report " -"to fix the problem

    \n" -"

    Please use the \"Send report\" button to post a bug report " -"automatically to our servers

    \n" +"

    A fatal error has occurred in Cura. Please send us this Crash Report to fix the problem

    \n" +"

    Please use the \"Send report\" button to post a bug report automatically to our servers

    \n" +" " +msgstr "" +"

    Cura 发生了严重错误。请将这份错误报告发送给我们以便修复问题

    \n" +"

    请使用“发送报告”按钮将错误报告自动发布到我们的服务器

    \n" " " -msgstr "

    V Cuře došlo k závažné chybě. Zašlete nám prosím tento záznam pádu k vyřešení problému

    \n            

    Použijte tlačítko „Odeslat zprávu“" -" k automatickému odeslání hlášení o chybě na naše servery

    \n " #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:198 msgctxt "@title:groupbox" msgid "System information" -msgstr "Systémové informace" +msgstr "系统信息" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:207 msgctxt "@label unknown version of Cura" msgid "Unknown" -msgstr "Neznámý" +msgstr "未知" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:228 msgctxt "@label Cura version number" msgid "Cura version" -msgstr "Verze Cura" +msgstr "Cura 版本" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:229 msgctxt "@label" msgid "Cura language" -msgstr "Jazyk Cura" +msgstr "Cura 语言" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:230 msgctxt "@label" msgid "OS language" -msgstr "Jazyk operačního systému" +msgstr "操作系统语言" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:231 msgctxt "@label Type of platform" msgid "Platform" -msgstr "Platforma" +msgstr "平台" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:232 msgctxt "@label" msgid "Qt version" -msgstr "Verze Qt" +msgstr "Qt 版本" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:233 msgctxt "@label" msgid "PyQt version" -msgstr "Verze PyQt" +msgstr "PyQt 版本" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:234 msgctxt "@label OpenGL version" @@ -817,245 +782,240 @@ msgstr "OpenGL" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:264 msgctxt "@label" msgid "Not yet initialized" -msgstr "Neinicializováno" +msgstr "尚未初始化" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:267 #, python-brace-format msgctxt "@label OpenGL version" msgid "
  • OpenGL Version: {version}
  • " -msgstr "
  • Verze OpenGL: {version}
  • " +msgstr "
  • OpenGL 版本: {version}
  • " #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:268 #, python-brace-format msgctxt "@label OpenGL vendor" msgid "
  • OpenGL Vendor: {vendor}
  • " -msgstr "
  • OpenGL Vendor: {vendor}
  • " +msgstr "
  • OpenGL 供应商: {vendor}
  • " #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:269 #, python-brace-format msgctxt "@label OpenGL renderer" msgid "
  • OpenGL Renderer: {renderer}
  • " -msgstr "
  • OpenGL Renderer: {renderer}
  • " +msgstr "
  • OpenGL 渲染器: {renderer}
  • " #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:304 msgctxt "@title:groupbox" msgid "Error traceback" -msgstr "Stopování chyby" +msgstr "错误追溯" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:390 msgctxt "@title:groupbox" msgid "Logs" -msgstr "Protokoly" +msgstr "日志" #: /Users/c.lamboo/ultimaker/Cura/cura/CrashHandler.py:418 msgctxt "@action:button" msgid "Send report" -msgstr "Odeslat záznam" +msgstr "发送报告" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsAction.py:32 msgctxt "@action" msgid "Machine Settings" -msgstr "Nastavení zařízení" +msgstr "打印机设置" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/__init__.py:14 msgctxt "@item:inlistbox" msgid "JPG Image" -msgstr "Obrázek JPG" +msgstr "JPG 图像" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/__init__.py:18 msgctxt "@item:inlistbox" msgid "JPEG Image" -msgstr "Obrázek JPEG" +msgstr "JPEG 图像" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/__init__.py:22 msgctxt "@item:inlistbox" msgid "PNG Image" -msgstr "Obrázek PNG" +msgstr "PNG 图像" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/__init__.py:26 msgctxt "@item:inlistbox" msgid "BMP Image" -msgstr "Obrázek BMP" +msgstr "BMP 图像" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/__init__.py:30 msgctxt "@item:inlistbox" msgid "GIF Image" -msgstr "Obrázek GIF" +msgstr "GIF 图像" #: /Users/c.lamboo/ultimaker/Cura/plugins/XRayView/__init__.py:12 msgctxt "@item:inlistbox" msgid "X-Ray view" -msgstr "Rentgenový pohled" +msgstr "透视视图" #: /Users/c.lamboo/ultimaker/Cura/plugins/X3DReader/__init__.py:13 msgctxt "@item:inlistbox" msgid "X3D File" -msgstr "Soubor X3D" +msgstr "X3D 文件" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraProfileReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraProfileWriter/__init__.py:14 msgctxt "@item:inlistbox" msgid "Cura Profile" -msgstr "Cura profil" +msgstr "Cura 配置文件" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:35 msgctxt "@item:inmenu" msgid "Post Processing" -msgstr "Post Processing" +msgstr "后期处理" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:36 msgctxt "@item:inmenu" msgid "Modify G-Code" -msgstr "Modifikovat G kód" +msgstr "修改 G-Code" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/MeshFormatHandler.py:118 #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:66 msgctxt "@info:status" msgid "There are no file formats available to write with!" -msgstr "Nejsou k dispozici žádné formáty souborů pro zápis!" +msgstr "没有可进行写入的文件格式!" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadQueueFullMessage.py:16 msgctxt "@info:status" msgid "Print job queue is full. The printer can't accept a new job." -msgstr "Fronta tiskových úloh je plná. Tiskárna nemůže přijmout další úlohu." +msgstr "打印作业队列已满。打印机无法接受新作业。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadQueueFullMessage.py:17 msgctxt "@info:title" msgid "Queue Full" -msgstr "Fronta je plná" +msgstr "队列已满" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadErrorMessage.py:15 msgctxt "@info:text" msgid "Could not upload the data to the printer." -msgstr "Nemohu nahrát data do tiskárny." +msgstr "无法将数据上传到打印机。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadErrorMessage.py:16 msgctxt "@info:title" msgid "Network error" -msgstr "Chyba sítě" +msgstr "网络错误" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NewPrinterDetectedMessage.py:13 msgctxt "info:status" msgid "New printer detected from your Ultimaker account" msgid_plural "New printers detected from your Ultimaker account" -msgstr[0] "Z vašeho Ultimaker účtu byla detekována nová tiskárna" +msgstr[0] "从您的 Ultimaker 帐户中检测到新的打印机" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NewPrinterDetectedMessage.py:29 #, python-brace-format msgctxt "info:status Filled in with printer name and printer model." msgid "Adding printer {name} ({model}) from your account" -msgstr "Přidávám tiskárnu {name} ({model}) z vašeho účtu" +msgstr "正在从您的帐户添加打印机 {name} ({model})" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NewPrinterDetectedMessage.py:48 #, python-brace-format msgctxt "info:{0} gets replaced by a number of printers" msgid "... and {0} other" msgid_plural "... and {0} others" -msgstr[0] "... a {0} další" +msgstr[0] "... 和另外 {0} 台" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NewPrinterDetectedMessage.py:57 msgctxt "info:status" msgid "Printers added from Digital Factory:" -msgstr "Tiskárny přidané z Digital Factory:" +msgstr "从 Digital Factory 添加的打印机:" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadBlockedMessage.py:15 msgctxt "@info:status" msgid "Please wait until the current job has been sent." -msgstr "Počkejte, až bude odeslána aktuální úloha." +msgstr "请等待当前作业完成发送。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadBlockedMessage.py:16 msgctxt "@info:title" msgid "Print error" -msgstr "Chyba tisku" +msgstr "打印错误" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:25 #, python-brace-format msgctxt "@info:status" msgid "" "Your printer {printer_name} could be connected via cloud.\n" -" Manage your print queue and monitor your prints from anywhere connecting " -"your printer to Digital Factory" -msgstr "Vaše tiskárna {printer_name} může být připojena přes cloud.\n Spravujte vaši tiskovou frontu a sledujte tisk odkudkoliv připojením vaší tiskárny" -" k Digital Factory" +" Manage your print queue and monitor your prints from anywhere connecting your printer to Digital Factory" +msgstr "" +"未能通过云连接您的打印机 {printer_name}。\n" +"只需将您的打印机连接到 Digital Factory,即可随时随地管理您的打印作业队列并监控您的打印结果" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:26 msgctxt "@info:title" msgid "Are you ready for cloud printing?" -msgstr "Jste připraveni na tisk přes cloud?" +msgstr "是否进行云打印?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:30 msgctxt "@action" msgid "Get started" -msgstr "Začínáme" +msgstr "开始" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:31 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:24 msgctxt "@action" msgid "Learn more" -msgstr "Zjistit více" +msgstr "了解详情" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:18 msgctxt "@info:status" -msgid "" -"You will receive a confirmation via email when the print job is approved" -msgstr "打印作业获得批准后,您将收到确认电子邮件" +msgid "You will receive a confirmation via email when the print job is approved" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:19 msgctxt "@info:title" msgid "The print job was successfully submitted" -msgstr "打印作业已成功提交" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:22 msgctxt "@action" msgid "Manage print jobs" -msgstr "管理打印作业" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:15 msgctxt "@info:status" msgid "Sending Print Job" -msgstr "Odesílám tiskovou úlohu" +msgstr "发送打印作业" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:16 msgctxt "@info:status" msgid "Uploading print job to printer." -msgstr "Nahrávám tiskovou úlohu do tiskárny." +msgstr "正在将打印作业上传至打印机。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/MaterialSyncMessage.py:24 #, python-brace-format msgctxt "@info:status" -msgid "" -"Cura has detected material profiles that were not yet installed on the host " -"printer of group {0}." -msgstr "Cura zjistil materiálové profily, které ještě nebyly nainstalovány na hostitelské tiskárně skupiny {0}." +msgid "Cura has detected material profiles that were not yet installed on the host printer of group {0}." +msgstr "Cura 已检测到材料配置文件尚未安装到组 {0} 中的主机打印机上。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/MaterialSyncMessage.py:26 msgctxt "@info:title" msgid "Sending materials to printer" -msgstr "Odesílání materiálů do tiskárny" +msgstr "正在将材料发送到打印机" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NotClusterHostMessage.py:27 #, python-brace-format msgctxt "@info:status" -msgid "" -"You are attempting to connect to {0} but it is not the host of a group. You " -"can visit the web page to configure it as a group host." -msgstr "Pokoušíte se připojit k {0}, ale není hostitelem skupiny. Webovou stránku můžete navštívit a nakonfigurovat ji jako skupinového hostitele." +msgid "You are attempting to connect to {0} but it is not the host of a group. You can visit the web page to configure it as a group host." +msgstr "您正在尝试连接到 {0},但它不是组中的主机。您可以访问网页,将其配置为组主机。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NotClusterHostMessage.py:30 msgctxt "@info:title" msgid "Not a group host" -msgstr "Není hostem skupiny" +msgstr "非组中的主机" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/NotClusterHostMessage.py:36 msgctxt "@action" msgid "Configure group" -msgstr "Konfigurovat skupinu" +msgstr "配置组" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:16 msgctxt "info:status" msgid "This printer is not linked to the Digital Factory:" msgid_plural "These printers are not linked to the Digital Factory:" -msgstr[0] "Tato tiskárna není napojena na Digital Factory:" +msgstr[0] "这些打印机未链接到 Digital Factory:" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:22 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:422 @@ -1067,242 +1027,239 @@ msgstr "Ultimaker Digital Factory" #, python-brace-format msgctxt "info:status" msgid "To establish a connection, please visit the {website_link}" -msgstr "Chcete-li navázat spojení, navštivte {website_link}" +msgstr "要建立连接,请访问 {website_link}" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:32 msgctxt "info:status" msgid "A cloud connection is not available for a printer" msgid_plural "A cloud connection is not available for some printers" -msgstr[0] "Pro tuto tiskárnu není připojení přes cloud dostupné" +msgstr[0] "某些打印机无云连接可用" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:40 msgctxt "@action:button" msgid "Keep printer configurations" -msgstr "Zachovat konfiguraci tiskárny" +msgstr "保留打印机配置" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/RemovedPrintersMessage.py:45 msgctxt "@action:button" msgid "Remove printers" -msgstr "Odstranit tiskárnu" +msgstr "删除打印机" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/LegacyDeviceNoLongerSupportedMessage.py:18 msgctxt "@info:status" -msgid "" -"You are attempting to connect to a printer that is not running Ultimaker " -"Connect. Please update the printer to the latest firmware." -msgstr "Pokoušíte se připojit k tiskárně, na které není spuštěna aplikace Ultimaker Connect. Aktualizujte tiskárnu na nejnovější firmware." +msgid "You are attempting to connect to a printer that is not running Ultimaker Connect. Please update the printer to the latest firmware." +msgstr "您正在尝试连接未运行 Ultimaker Connect 的打印机。请将打印机更新至最新固件。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/LegacyDeviceNoLongerSupportedMessage.py:21 msgctxt "@info:title" msgid "Update your printer" -msgstr "Aktualizujte vaší tiskárnu" +msgstr "请更新升级打印机" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadSuccessMessage.py:15 msgctxt "@info:status" msgid "Print job was successfully sent to the printer." -msgstr "Tisková úloha byla úspěšně odeslána do tiskárny." +msgstr "打印作业已成功发送到打印机。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadSuccessMessage.py:16 msgctxt "@info:title" msgid "Data Sent" -msgstr "Data poslána" +msgstr "数据已发送" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Network/LocalClusterOutputDevice.py:62 msgctxt "@action:button Preceded by 'Ready to'." msgid "Print over network" -msgstr "Tisk přes síť" +msgstr "通过网络打印" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Network/LocalClusterOutputDevice.py:63 msgctxt "@properties:tooltip" msgid "Print over network" -msgstr "Tisk přes síť" +msgstr "通过网络打印" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Network/LocalClusterOutputDevice.py:64 msgctxt "@info:status" msgid "Connected over the network" -msgstr "Připojeno přes síť" +msgstr "已通过网络连接" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Utils.py:27 msgctxt "@info:status" msgid "tomorrow" -msgstr "zítra" +msgstr "明天" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Utils.py:30 msgctxt "@info:status" msgid "today" -msgstr "dnes" +msgstr "今天" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/UltimakerNetworkedPrinterAction.py:28 msgctxt "@action" msgid "Connect via Network" -msgstr "Připojit přes síť" +msgstr "通过网络连接" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/AbstractCloudOutputDevice.py:80 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:162 msgctxt "@action:button" msgid "Print via cloud" -msgstr "Tisknout přes cloud" +msgstr "通过云打印" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/AbstractCloudOutputDevice.py:81 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:163 msgctxt "@properties:tooltip" msgid "Print via cloud" -msgstr "Tisknout přes cloud" +msgstr "通过云打印" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/AbstractCloudOutputDevice.py:82 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:164 msgctxt "@info:status" msgid "Connected via cloud" -msgstr "Připojen přes cloud" +msgstr "通过云连接" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:425 #, python-brace-format msgctxt "@message {printer_name} is replaced with the name of the printer" msgid "{printer_name} will be removed until the next account sync." -msgstr "Tiskárna {printer_name} bude odebrána až do další synchronizace účtu." +msgstr "将删除 {printer_name},直到下次帐户同步为止。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:426 #, python-brace-format msgctxt "@message {printer_name} is replaced with the name of the printer" msgid "To remove {printer_name} permanently, visit {digital_factory_link}" -msgstr "Chcete-li tiskárnu {printer_name} trvale odebrat, navštivte {digital_factory_link}" +msgstr "要永久删除 {printer_name},请访问 {digital_factory_link}" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:427 #, python-brace-format msgctxt "@message {printer_name} is replaced with the name of the printer" msgid "Are you sure you want to remove {printer_name} temporarily?" -msgstr "Opravdu chcete tiskárnu {printer_name} dočasně odebrat?" +msgstr "是否确实要暂时删除 {printer_name}?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:474 msgctxt "@title:window" msgid "Remove printers?" -msgstr "Odstranit tiskárny?" +msgstr "是否删除打印机?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:477 #, python-brace-format msgctxt "@label" msgid "" -"You are about to remove {0} printer from Cura. This action cannot be " -"undone.\n" +"You are about to remove {0} printer from Cura. This action cannot be undone.\n" "Are you sure you want to continue?" msgid_plural "" -"You are about to remove {0} printers from Cura. This action cannot be " -"undone.\n" +"You are about to remove {0} printers from Cura. This action cannot be undone.\n" "Are you sure you want to continue?" -msgstr[0] "您即将从 Cura 中删除 {0} 台打印机。此操作无法撤消。\n是否确实要继续?" +msgstr[0] "" +"您即将从 Cura 中删除 {0} 台打印机。此操作无法撤消。\n" +"是否确实要继续?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:484 msgctxt "@label" msgid "" -"You are about to remove all printers from Cura. This action cannot be " -"undone.\n" +"You are about to remove all printers from Cura. This action cannot be undone.\n" "Are you sure you want to continue?" -msgstr "Chystáte se odebrat všechny tiskárny z Cury. Tuto akci nelze vrátit zpět.\nDoopravdy chcete pokračovat?" +msgstr "" +"您即将从 Cura 中删除所有打印机。此操作无法撤消。\n" +"是否确定继续?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:276 msgctxt "@action:button" msgid "Monitor print" -msgstr "Sledovat tisk" +msgstr "监控打印" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:278 msgctxt "@action:tooltip" msgid "Track the print in Ultimaker Digital Factory" -msgstr "Sledujte tisk v Ultimaker Digital Factory" +msgstr "在 Ultimaker Digital Factory 中跟踪打印" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:298 #, python-brace-format msgctxt "@error:send" msgid "Unknown error code when uploading print job: {0}" -msgstr "Při nahrávání tiskové úlohy došlo k chybě s neznámým kódem: {0}" +msgstr "上传打印作业时出现未知错误代码:{0}" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/__init__.py:28 msgctxt "@item:inlistbox" msgid "3MF file" -msgstr "Soubor 3MF" +msgstr "3MF 文件" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/__init__.py:36 msgctxt "@item:inlistbox" msgid "Cura Project 3MF file" -msgstr "Soubor Cura Project 3MF" +msgstr "Cura 项目 3MF 文件" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWriter.py:240 msgctxt "@error:zip" msgid "Error writing 3mf file." -msgstr "Chyba při zápisu 3mf file." +msgstr "写入 3mf 文件时出错。" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:31 msgctxt "@error:zip" msgid "3MF Writer plug-in is corrupt." -msgstr "Plugin 3MF Writer je poškozen." +msgstr "3MF 编写器插件已损坏。" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:37 msgctxt "@error" msgid "There is no workspace yet to write. Please add a printer first." -msgstr "Zatím neexistuje žádný pracovní prostor. Nejprve prosím přidejte tiskárnu." +msgstr "没有可写入的工作区。请先添加打印机。" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:64 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:97 msgctxt "@error:zip" msgid "No permission to write the workspace here." -msgstr "Nemáte oprávnění zapisovat do tohoto pracovního prostoru." +msgstr "没有在此处写入工作区的权限。" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:101 msgctxt "@error:zip" -msgid "" -"The operating system does not allow saving a project file to this location " -"or with this file name." -msgstr "Operační systém nepovoluje uložit soubor s projektem do tohoto umístění nebo pod tímto názvem." +msgid "The operating system does not allow saving a project file to this location or with this file name." +msgstr "操作系统不允许向此位置或用此文件名保存项目文件。" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/DriveApiService.py:86 #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26 msgctxt "@info:backup_status" msgid "There was an error trying to restore your backup." -msgstr "Nastala chyba při pokusu obnovit vaši zálohu." +msgstr "尝试恢复您的备份时出错。" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:69 msgctxt "@item:inmenu" msgid "Manage backups" -msgstr "Spravovat zálohy" +msgstr "管理备份" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:25 msgctxt "@info:title" msgid "Backups" -msgstr "Zálohy" +msgstr "备份" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:26 msgctxt "@info:backup_status" msgid "There was an error while uploading your backup." -msgstr "Nastala chyba při nahrávání vaší zálohy." +msgstr "上传您的备份时出错。" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:46 msgctxt "@info:backup_status" msgid "Creating your backup..." -msgstr "Vytvářím zálohu..." +msgstr "正在创建您的备份..." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:55 msgctxt "@info:backup_status" msgid "There was an error while creating your backup." -msgstr "Nastala chyba při vytváření zálohy." +msgstr "创建您的备份时出错。" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:59 msgctxt "@info:backup_status" msgid "Uploading your backup..." -msgstr "Nahrávám vaši zálohu..." +msgstr "正在上传您的备份..." #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:69 msgctxt "@info:backup_status" msgid "Your backup has finished uploading." -msgstr "Vaše záloha byla úspěšně nahrána." +msgstr "您的备份已完成上传。" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/CreateBackupJob.py:103 msgctxt "@error:file_size" msgid "The backup exceeds the maximum file size." -msgstr "Záloha překračuje maximální povolenou velikost soubor." +msgstr "备份超过了最大文件大小。" #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/SliceInfo.py:95 msgctxt "@text" msgid "Unable to read example data file." -msgstr "Nelze načíst ukázkový datový soubor." +msgstr "无法读取示例数据文件。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:62 #: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:78 @@ -1312,307 +1269,301 @@ msgstr "Nelze načíst ukázkový datový soubor." #: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/UFPWriter.py:178 msgctxt "@info:error" msgid "Can't write to UFP file:" -msgstr "Nemohu zapsat do UFP souboru:" +msgstr "无法写入到 UFP 文件:" #: /Users/c.lamboo/ultimaker/Cura/plugins/UFPWriter/__init__.py:28 #: /Users/c.lamboo/ultimaker/Cura/plugins/UFPReader/__init__.py:22 msgctxt "@item:inlistbox" msgid "Ultimaker Format Package" -msgstr "Balíček ve formátu Ultimaker" +msgstr "Ultimaker 格式包" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py:19 msgctxt "@text Placeholder for the username if it has been deleted" msgid "deleted user" -msgstr "已删除的用户" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeProfileReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/__init__.py:16 msgctxt "@item:inlistbox" msgid "G-code File" -msgstr "Soubor G-kódu" +msgstr "GCode 文件" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/FlavorParser.py:350 msgctxt "@info:status" msgid "Parsing G-code" -msgstr "Zpracovávám G kód" +msgstr "解析 G-code" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/FlavorParser.py:352 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/FlavorParser.py:506 msgctxt "@info:title" msgid "G-code Details" -msgstr "Podrobnosti G kódu" +msgstr "G-code 详细信息" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/FlavorParser.py:504 msgctxt "@info:generic" -msgid "" -"Make sure the g-code is suitable for your printer and printer configuration " -"before sending the file to it. The g-code representation may not be accurate." -msgstr "Před odesláním souboru se ujistěte, že je g-kód vhodný pro vaši tiskárnu a konfiguraci tiskárny. Reprezentace g-kódu nemusí být přesná." +msgid "Make sure the g-code is suitable for your printer and printer configuration before sending the file to it. The g-code representation may not be accurate." +msgstr "发送文件之前,请确保 G-code 适用于当前打印机和打印机配置。当前 G-code 文件可能不准确。" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:18 msgctxt "@item:inlistbox" msgid "G File" -msgstr "G soubor" +msgstr "G 文件" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:15 msgctxt "@item:inlistbox 'Open' is part of the name of this file format." msgid "Open Compressed Triangle Mesh" -msgstr "Open Compressed Triangle Mesh" +msgstr "打开压缩三角网格" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:19 msgctxt "@item:inlistbox" msgid "COLLADA Digital Asset Exchange" -msgstr "COLLADA Digital Asset Exchange" +msgstr "COLLADA 数据资源交换" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:23 msgctxt "@item:inlistbox" msgid "glTF Binary" -msgstr "gITF binární soubor" +msgstr "glTF 二进制" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:27 msgctxt "@item:inlistbox" msgid "glTF Embedded JSON" -msgstr "glTF Embedded JSON" +msgstr "glTF 嵌入式 JSON" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:36 msgctxt "@item:inlistbox" msgid "Stanford Triangle Format" -msgstr "Stanford Triangle Format" +msgstr "斯坦福三角格式" #: /Users/c.lamboo/ultimaker/Cura/plugins/TrimeshReader/__init__.py:40 msgctxt "@item:inlistbox" msgid "Compressed COLLADA Digital Asset Exchange" -msgstr "Kompresovaný COLLADA Digital Asset Exchenge" +msgstr "压缩 COLLADA 数据资源交换" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.py:24 msgctxt "@action" msgid "Level build plate" -msgstr "Vyrovnat podložku" +msgstr "调平打印平台" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelection.py:21 msgctxt "@action" msgid "Select upgrades" -msgstr "Vybrat vylepšení" +msgstr "选择升级" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeGzReader/__init__.py:17 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeGzWriter/__init__.py:17 msgctxt "@item:inlistbox" msgid "Compressed G-code File" -msgstr "Kompresovaný soubor G kódu" +msgstr "压缩 G-code 文件" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/RemotePackageList.py:117 msgctxt "@info:error" msgid "Could not interpret the server's response." -msgstr "Nelze přečíst odpověď serveru." +msgstr "无法解释服务器的响应。" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/RemotePackageList.py:148 msgctxt "@info:error" msgid "Could not reach Marketplace." -msgstr "Nelze se připojit k Obchodu." +msgstr "无法连接到市场。" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/LicensePresenter.py:42 msgctxt "@button" msgid "Decline and remove from account" -msgstr "Odmítnout a odstranit z účtu" +msgstr "拒绝并从帐户中删除" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/LicenseModel.py:12 #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/LicenseDialog.qml:79 msgctxt "@button" msgid "Decline" -msgstr "Odmítnout" +msgstr "拒绝" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/LicenseModel.py:13 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:53 msgctxt "@button" msgid "Agree" -msgstr "Přijmout" +msgstr "同意" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/LicenseModel.py:77 msgctxt "@title:window" msgid "Plugin License Agreement" -msgstr "Licenční ujednání zásuvného modulu" +msgstr "插件许可协议" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/CloudPackageChecker.py:144 msgctxt "@info:generic" msgid "Do you want to sync material and software packages with your account?" -msgstr "Chcete synchronizovat materiálové a softwarové balíčky s vaším účtem?" +msgstr "是否要与您的帐户同步材料和软件包?" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/CloudPackageChecker.py:145 #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/DownloadPresenter.py:95 msgctxt "@info:title" msgid "Changes detected from your Ultimaker account" -msgstr "Zjištěny změny z vašeho účtu Ultimaker" +msgstr "检测到您的 Ultimaker 帐户有更改" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/CloudPackageChecker.py:147 msgctxt "@action:button" msgid "Sync" -msgstr "Synchronizovat" +msgstr "同步" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/RestartApplicationPresenter.py:22 msgctxt "@info:generic" msgid "You need to quit and restart {} before changes have effect." -msgstr "Než se změny projeví, musíte ukončit a restartovat {}." +msgstr "需要退出并重新启动 {},然后更改才能生效。" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/DownloadPresenter.py:91 msgctxt "@info:generic" msgid "Syncing..." -msgstr "Synchronizuji..." +msgstr "正在同步..." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/CloudSync/SyncOrchestrator.py:79 msgctxt "@info:generic" msgid "{} plugins failed to download" -msgstr "Nepovedlo se stáhnout {} zásuvných modulů" +msgstr "{} 个插件下载失败" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/LocalPackageList.py:28 msgctxt "@label" msgid "Installed Plugins" -msgstr "Nainstalované moduly" +msgstr "已安装的插件" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/LocalPackageList.py:29 msgctxt "@label" msgid "Installed Materials" -msgstr "Nainstalované materiály" +msgstr "已安装的材料" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/LocalPackageList.py:33 msgctxt "@label" msgid "Bundled Plugins" -msgstr "Přibalené moduly" +msgstr "已捆绑的插件" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/LocalPackageList.py:34 msgctxt "@label" msgid "Bundled Materials" -msgstr "Přibalené materiály" +msgstr "已捆绑的材料" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/PackageModel.py:43 msgctxt "@label:property" msgid "Unknown Package" -msgstr "Neznámý balíček" +msgstr "未知包" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/PackageModel.py:66 msgctxt "@label:property" msgid "Unknown Author" -msgstr "Neznámý autor" +msgstr "未知作者" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/WindowsRemovableDrivePlugin.py:76 msgctxt "@item:intext" msgid "Removable Drive" -msgstr "Vyměnitelná jednotka" +msgstr "可移动磁盘" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:23 msgctxt "@action:button Preceded by 'Ready to'." msgid "Save to Removable Drive" -msgstr "Uložit na vyměnitelný disk" +msgstr "保存至可移动磁盘" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:24 #, python-brace-format msgctxt "@item:inlistbox" msgid "Save to Removable Drive {0}" -msgstr "Uložit na vyměnitelný disk {0}" +msgstr "保存到可移动磁盘 {0}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:109 #, python-brace-format msgctxt "@info:progress Don't translate the XML tags !" msgid "Saving to Removable Drive {0}" -msgstr "Ukládám na vyměnitelný disk {0}" +msgstr "保存到可移动磁盘 {0} " #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:110 msgctxt "@info:title" msgid "Saving" -msgstr "Ukládám" +msgstr "正在保存" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:120 #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:123 #, python-brace-format msgctxt "@info:status Don't translate the XML tags or !" msgid "Could not save to {0}: {1}" -msgstr "Nemohu uložit na {0}: {1}" +msgstr "无法保存到 {0}{1}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139 #, python-brace-format msgctxt "@info:status Don't translate the tag {device}!" msgid "Could not find a file name when trying to write to {device}." -msgstr "Při pokusu o zápis do zařízení {device} nebyl nalezen název souboru." +msgstr "尝试写入到 {device} 时找不到文件名。" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:152 #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:171 #, python-brace-format msgctxt "@info:status" msgid "Could not save to removable drive {0}: {1}" -msgstr "Nelze uložit na vyměnitelnou jednotku {0}: {1}" +msgstr "无法保存到可移动磁盘 {0}:{1}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:162 #, python-brace-format msgctxt "@info:status" msgid "Saved to Removable Drive {0} as {1}" -msgstr "Ukládám na vyměnitelnou jednotku {0} jako {1}" +msgstr "保存到可移动磁盘 {0} :{1}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:163 msgctxt "@info:title" msgid "File Saved" -msgstr "Soubor uložen" +msgstr "文件已保存" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165 msgctxt "@action:button" msgid "Eject" -msgstr "Vysunout" +msgstr "弹出" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165 #, python-brace-format msgctxt "@action" msgid "Eject removable device {0}" -msgstr "Vysunout vyměnitelnou jednotku {0}" +msgstr "弹出可移动设备 {0}" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:184 #, python-brace-format msgctxt "@info:status" msgid "Ejected {0}. You can now safely remove the drive." -msgstr "Vysunuto {0}. Nyní můžete bezpečně vyjmout jednotku." +msgstr "已弹出 {0}。现在,您可以安全地拔出磁盘。" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:185 msgctxt "@info:title" msgid "Safely Remove Hardware" -msgstr "Bezpečně vysunout hardware" +msgstr "安全移除硬件" #: /Users/c.lamboo/ultimaker/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:188 #, python-brace-format msgctxt "@info:status" msgid "Failed to eject {0}. Another program may be using the drive." -msgstr "Nepodařilo se vysunout {0}. Jednotku může používat jiný program." +msgstr "无法弹出 {0},另一个程序可能正在使用磁盘。" #: /Users/c.lamboo/ultimaker/Cura/plugins/MonitorStage/__init__.py:14 msgctxt "@item:inmenu" msgid "Monitor" -msgstr "Monitorování" +msgstr "监控" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:162 msgctxt "@message" -msgid "" -"Slicing failed with an unexpected error. Please consider reporting a bug on " -"our issue tracker." -msgstr "Slicování selhalo na neočekávané chybě. Zvažte, prosím, nahlášení chyby v našem issue trackeru." +msgid "Slicing failed with an unexpected error. Please consider reporting a bug on our issue tracker." +msgstr "发生意外错误,切片失败。请于问题跟踪器上报告错误。" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:163 msgctxt "@message:title" msgid "Slicing failed" -msgstr "Slicování selhalo" +msgstr "切片失败" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:168 msgctxt "@message:button" msgid "Report a bug" -msgstr "Nahlásit chybu" +msgstr "报告错误" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:169 msgctxt "@message:description" msgid "Report a bug on Ultimaker Cura's issue tracker." -msgstr "Nahlásit chybu v Ultimaker Cura issue trackeru." +msgstr "在 Ultimaker Cura 问题跟踪器上报告错误。" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:401 msgctxt "@info:status" -msgid "" -"Unable to slice with the current material as it is incompatible with the " -"selected machine or configuration." -msgstr "Nelze slicovat s aktuálním materiálem, protože je nekompatibilní s vybraným strojem nebo konfigurací." +msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration." +msgstr "无法使用当前材料进行切片,因为该材料与所选机器或配置不兼容。" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:402 #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:435 @@ -1622,37 +1573,30 @@ msgstr "Nelze slicovat s aktuálním materiálem, protože je nekompatibilní s #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:499 msgctxt "@info:title" msgid "Unable to slice" -msgstr "Nelze slicovat" +msgstr "无法切片" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:434 #, python-brace-format msgctxt "@info:status" -msgid "" -"Unable to slice with the current settings. The following settings have " -"errors: {0}" -msgstr "S aktuálním nastavením nelze slicovat. Následující nastavení obsahuje chyby: {0}" +msgid "Unable to slice with the current settings. The following settings have errors: {0}" +msgstr "无法使用当前设置进行切片。以下设置存在错误:{0}" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:461 #, python-brace-format msgctxt "@info:status" -msgid "" -"Unable to slice due to some per-model settings. The following settings have " -"errors on one or more models: {error_labels}" -msgstr "Nelze slicovat kvůli některým nastavení jednotlivých modelů. Následující nastavení obsahuje chyby na jednom nebo více modelech: {error_labels}" +msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}" +msgstr "因部分特定模型设置而无法切片。 以下设置在一个或多个模型上存在错误: {error_labels}" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:473 msgctxt "@info:status" -msgid "" -"Unable to slice because the prime tower or prime position(s) are invalid." -msgstr "Nelze slicovat, protože hlavní věž nebo primární pozice jsou neplatné." +msgid "Unable to slice because the prime tower or prime position(s) are invalid." +msgstr "无法切片(原因:主塔或主位置无效)。" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:485 #, python-format msgctxt "@info:status" -msgid "" -"Unable to slice because there are objects associated with disabled Extruder " -"%s." -msgstr "Nelze slicovat, protože jsou zde objekty asociované k zakázanému extruder %s." +msgid "Unable to slice because there are objects associated with disabled Extruder %s." +msgstr "无法切片,因为存在与已禁用挤出机 %s 相关联的对象。" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:495 msgctxt "@info:status" @@ -1661,305 +1605,283 @@ msgid "" "- Fit within the build volume\n" "- Are assigned to an enabled extruder\n" "- Are not all set as modifier meshes" -msgstr "Zkontrolujte nastavení a zda vaše modely:\n- Vejdou se na pracovní prostor\n- Jsou přiřazeny k povolenému extruderu\n- Nejsou nastavené jako modifikační" -" sítě" +msgstr "" +"请检查设置并检查您的模型是否:\n" +"- 适合构建体积\n" +"- 分配给了已启用的挤出器\n" +"- 尚未全部设置为修改器网格" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:52 #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:260 msgctxt "@info:status" msgid "Processing Layers" -msgstr "Zpracovávám vrstvy" +msgstr "正在处理层" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:261 msgctxt "@info:title" msgid "Information" -msgstr "Informace" +msgstr "信息" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/__init__.py:27 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/__init__.py:33 msgctxt "@item:inlistbox" msgid "3MF File" -msgstr "Soubor 3MF" +msgstr "3MF 文件" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.py:212 msgctxt "@title:tab" msgid "Recommended" -msgstr "Doporučeno" +msgstr "推荐" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.py:214 msgctxt "@title:tab" msgid "Custom" -msgstr "Vlastní" +msgstr "自定义" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.py:390 msgctxt "@info:status" -msgid "" -"The material used in this project relies on some material definitions not " -"available in Cura, this might produce undesirable print results. We highly " -"recommend installing the full material package from the Marketplace." -msgstr "Materiál použitý v tomto projektu závisí na jiných definicích materiálů, které nejsou dostupné v Cuře. To může způsobit nečekané problémy při tisku. Důrazně" -" doporučujeme nainstalovat kompletní balíček materiálů z Obchodu." +msgid "The material used in this project relies on some material definitions not available in Cura, this might produce undesirable print results. We highly recommend installing the full material package from the Marketplace." +msgstr "此项目使用的材料依赖于一些 Cura 中不存在的材料定义,这可能会造成打印效果不如预期。强烈建议安装从 Marketplace 获得的完整材料包。" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.py:392 msgctxt "@info:title" msgid "Material profiles not installed" -msgstr "Materiálové profily nejsou nainstalovány" +msgstr "材料配置文件未安装" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.py:405 msgctxt "@action:button" msgid "Install Materials" -msgstr "Instalovat materiály" +msgstr "安装材料" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:545 #, python-brace-format msgctxt "@info:status Don't translate the XML tags or !" -msgid "" -"Project file {0} contains an unknown machine type " -"{1}. Cannot import the machine. Models will be imported " -"instead." -msgstr "Projektový soubor {0} obsahuje neznámý typ zařízení {1}. Nelze importovat zařízení. Místo toho budou importovány" -" modely." +msgid "Project file {0} contains an unknown machine type {1}. Cannot import the machine. Models will be imported instead." +msgstr "项目文件 {0} 包含未知机器类型 {1}。无法导入机器。将改为导入模型。" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:548 msgctxt "@info:title" msgid "Open Project File" -msgstr "Otevřít soubor s projektem" +msgstr "打开项目文件" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:650 #, python-brace-format msgctxt "@info:error Don't translate the XML tags or !" -msgid "" -"Project file {0} is suddenly inaccessible: {1}" -"." -msgstr "Soubor projektu {0} je neočekávaně nedostupný: {1}." +msgid "Project file {0} is suddenly inaccessible: {1}." +msgstr "突然无法访问项目文件 {0}{1}。" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:651 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:659 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:678 msgctxt "@info:title" msgid "Can't Open Project File" -msgstr "Nepovedlo se otevřít soubor projektu" +msgstr "无法打开项目文件" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:658 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:676 #, python-brace-format msgctxt "@info:error Don't translate the XML tags or !" -msgid "" -"Project file {0} is corrupt: {1}." -msgstr "Soubor projektu {0} je poškozený: {1}." +msgid "Project file {0} is corrupt: {1}." +msgstr "项目文件 {0} 损坏: {1}。" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:723 #, python-brace-format msgctxt "@info:error Don't translate the XML tag !" -msgid "" -"Project file {0} is made using profiles that are " -"unknown to this version of Ultimaker Cura." -msgstr "Soubor projektu {0} je vytvořený profily, které jsou této verzi Ultimaker Cura neznámé." +msgid "Project file {0} is made using profiles that are unknown to this version of Ultimaker Cura." +msgstr "项目文件 {0} 是用此 Ultimaker Cura 版本未识别的配置文件制作的。" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/__init__.py:14 msgctxt "@label" msgid "Per Model Settings" -msgstr "Nastavení pro každý model" +msgstr "单一模型设置" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/__init__.py:15 msgctxt "@info:tooltip" msgid "Configure Per Model Settings" -msgstr "Konfigurovat nastavení pro každý model" +msgstr "设置对每个模型的单独设定" #: /Users/c.lamboo/ultimaker/Cura/plugins/ModelChecker/ModelChecker.py:31 msgctxt "@info:title" msgid "3D Model Assistant" -msgstr "Asistent 3D modelu" +msgstr "三维模型的助理" #: /Users/c.lamboo/ultimaker/Cura/plugins/ModelChecker/ModelChecker.py:97 #, python-brace-format msgctxt "@info:status" msgid "" -"

    One or more 3D models may not print optimally due to the model size and " -"material configuration:

    \n" +"

    One or more 3D models may not print optimally due to the model size and material configuration:

    \n" "

    {model_names}

    \n" -"

    Find out how to ensure the best possible print quality and reliability.\n" -"

    View print quality " -"guide

    " -msgstr "

    Jeden nebo více 3D modelů se nemusí tisknout optimálně kvůli velikosti modelu a konfiguraci materiálu:

    \n

    {model_names}

    \n

    Zjistěte," -" jak zajistit nejlepší možnou kvalitu a spolehlivost tisku.

    \n

    Zobrazit průvodce kvalitou tisku" -"

    " +"

    Find out how to ensure the best possible print quality and reliability.

    \n" +"

    View print quality guide

    " +msgstr "" +"

    由于模型的大小和材质的配置,一个或多个3D模型可能无法最优地打印:

    \n" +"

    {model_names}

    \n" +"

    找出如何确保最好的打印质量和可靠性.

    \n" +"

    查看打印质量指南

    " #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:42 msgctxt "@item:inmenu" msgid "USB printing" -msgstr "USB tisk" +msgstr "USB 联机打印" #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:43 msgctxt "@action:button Preceded by 'Ready to'." msgid "Print via USB" -msgstr "Tisk přes USB" +msgstr "通过 USB 联机打印" #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:44 msgctxt "@info:tooltip" msgid "Print via USB" -msgstr "Tisk přes USB" +msgstr "通过 USB 联机打印" #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:80 msgctxt "@info:status" msgid "Connected via USB" -msgstr "Připojeno přes USB" +msgstr "通过 USB 连接" #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:110 msgctxt "@label" -msgid "" -"A USB print is in progress, closing Cura will stop this print. Are you sure?" -msgstr "Probíhá tisk přes USB, uzavření Cura tento tisk zastaví. Jsi si jistá?" +msgid "A USB print is in progress, closing Cura will stop this print. Are you sure?" +msgstr "正在进行 USB 打印,关闭 Cura 将停止此打印。您确定吗?" #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:135 msgctxt "@message" -msgid "" -"A print is still in progress. Cura cannot start another print via USB until " -"the previous print has completed." -msgstr "Tisk stále probíhá. Cura nemůže spustit další tisk přes USB, dokud není předchozí tisk dokončen." +msgid "A print is still in progress. Cura cannot start another print via USB until the previous print has completed." +msgstr "正在进行打印在上一次打印完成之前,Cura 无法通过 USB 启动另一次打印。" #: /Users/c.lamboo/ultimaker/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:136 msgctxt "@message" msgid "Print in Progress" -msgstr "Probíhá tisk" +msgstr "正在进行打印" #: /Users/c.lamboo/ultimaker/Cura/plugins/PreviewStage/__init__.py:13 msgctxt "@item:inmenu" msgid "Preview" -msgstr "Náhled" +msgstr "预览" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/GCodeWriter.py:75 msgctxt "@error:not supported" msgid "GCodeWriter does not support non-text mode." -msgstr "GCodeWriter nepodporuje netextový mód." +msgstr "GCodeWriter 不支持非文本模式。" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/GCodeWriter.py:81 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeWriter/GCodeWriter.py:97 msgctxt "@warning:status" msgid "Please prepare G-code before exporting." -msgstr "Před exportem prosím připravte G-kód." +msgstr "导出前请先准备 G-code。" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.py:27 msgctxt "@action" msgid "Update Firmware" -msgstr "Aktualizovat firmware" +msgstr "更新固件" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeGzWriter/GCodeGzWriter.py:43 msgctxt "@error:not supported" msgid "GCodeGzWriter does not support text mode." -msgstr "GCodeGzWriter nepodporuje textový mód." +msgstr "GCodeGzWriter 不支持文本模式。" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/__init__.py:15 msgctxt "@item:inlistbox" msgid "Layer view" -msgstr "Pohled vrstev" +msgstr "分层视图" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:129 msgctxt "@info:status" msgid "Cura does not accurately display layers when Wire Printing is enabled." -msgstr "Když je aktivován síťový tisk, Cura přesně nezobrazuje vrstvy." +msgstr "启用“单线打印”后,Cura 将无法准确地显示打印层。" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:130 msgctxt "@info:title" msgid "Simulation View" -msgstr "Pohled simulace" +msgstr "仿真视图" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:133 msgctxt "@info:status" msgid "Nothing is shown because you need to slice first." -msgstr "Nic není zobrazeno, nejdříve musíte slicovat." +msgstr "由于需要先切片,因此未显示任何内容。" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:134 msgctxt "@info:title" msgid "No layers to show" -msgstr "Žádné vrstvy k zobrazení" +msgstr "无层可显示" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationView.py:136 #: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/SolidView.py:74 msgctxt "@info:option_text" msgid "Do not show this message again" -msgstr "Znovu nezobrazovat tuto zprávu" +msgstr "不再显示此消息" #: /Users/c.lamboo/ultimaker/Cura/plugins/LegacyProfileReader/__init__.py:14 msgctxt "@item:inlistbox" msgid "Cura 15.04 profiles" -msgstr "Profily Cura 15.04" +msgstr "Cura 15.04 配置文件" #: /Users/c.lamboo/ultimaker/Cura/plugins/AMFReader/__init__.py:15 msgctxt "@item:inlistbox" msgid "AMF File" -msgstr "Soubor AMF" +msgstr "AMF 文件" #: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/SolidView.py:71 msgctxt "@info:status" -msgid "" -"The highlighted areas indicate either missing or extraneous surfaces. Fix " -"your model and open it again into Cura." -msgstr "Zvýrazněné oblasti označují chybějící nebo vedlejší povrchy. Opravte váš model a otevřete jej znovu." +msgid "The highlighted areas indicate either missing or extraneous surfaces. Fix your model and open it again into Cura." +msgstr "突出显示的区域指示缺少或多余的表面。修复模型,并再次在 Cura 中打开。" #: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/SolidView.py:73 msgctxt "@info:title" msgid "Model Errors" -msgstr "Chyby modelu" +msgstr "模型错误" #: /Users/c.lamboo/ultimaker/Cura/plugins/SolidView/__init__.py:12 msgctxt "@item:inmenu" msgid "Solid view" -msgstr "Pevný pohled" +msgstr "实体视图" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerMessage.py:17 #, python-brace-format -msgctxt "" -"@info Don't translate {machine_name}, since it gets replaced by a printer " -"name!" -msgid "" -"New features or bug-fixes may be available for your {machine_name}! If you " -"haven't done so already, it is recommended to update the firmware on your " -"printer to version {latest_version}." -msgstr "K dispozici mohou být nové funkce nebo opravy chyb pro zařízení {machine_name}! Pokud jste tak už neučinili, je doporučeno zaktualizovat firmware vaší" -" tiskárny na verzi {latest_version}." +msgctxt "@info Don't translate {machine_name}, since it gets replaced by a printer name!" +msgid "New features or bug-fixes may be available for your {machine_name}! If you haven't done so already, it is recommended to update the firmware on your printer to version {latest_version}." +msgstr "您的 {machine_name} 可能有新功能或错误修复可用!如果打印机上的固件还不是最新版本,建议将其更新为 {latest_version} 版。" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerMessage.py:22 #, python-format msgctxt "@info:title The %s gets replaced with the printer name." msgid "New %s stable firmware available" -msgstr "Nový stabilní firmware je k dispozici pro %s" +msgstr "新 %s 稳定固件可用" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerMessage.py:28 msgctxt "@action:button" msgid "How to update" -msgstr "Jak aktualizovat" +msgstr "如何更新" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:127 msgctxt "@info" msgid "Could not access update information." -msgstr "Nemohu načíst informace o aktualizaci." +msgstr "无法获取更新信息。" #: /Users/c.lamboo/ultimaker/Cura/plugins/SupportEraser/__init__.py:12 msgctxt "@label" msgid "Support Blocker" -msgstr "Blokovač podpor" +msgstr "支撑拦截器" #: /Users/c.lamboo/ultimaker/Cura/plugins/SupportEraser/__init__.py:13 msgctxt "@info:tooltip" msgid "Create a volume in which supports are not printed." -msgstr "Vytvořit prostor ve kterém nejsou tištěny podpory." +msgstr "创建一个不打印支撑的体积。" #: /Users/c.lamboo/ultimaker/Cura/plugins/PrepareStage/__init__.py:12 msgctxt "@item:inmenu" msgid "Prepare" -msgstr "Příprava" +msgstr "准备" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:56 msgctxt "@title:label" msgid "Printer Settings" -msgstr "Nastavení tiskárny" +msgstr "打印机设置" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:68 msgctxt "@label" msgid "X (Width)" -msgstr "X (Šířka)" +msgstr "X (宽度)" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:72 #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:87 @@ -1980,243 +1902,232 @@ msgstr "mm" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:83 msgctxt "@label" msgid "Y (Depth)" -msgstr "Y (Hloubka)" +msgstr "Y (深度)" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:98 msgctxt "@label" msgid "Z (Height)" -msgstr "Z (Výška)" +msgstr "Z (高度)" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:112 msgctxt "@label" msgid "Build plate shape" -msgstr "Tvar tiskové podložky" +msgstr "打印平台形状" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:125 msgctxt "@label" msgid "Origin at center" -msgstr "Počátek ve středu" +msgstr "置中" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:137 msgctxt "@label" msgid "Heated bed" -msgstr "Topná podložka" +msgstr "加热床" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:149 msgctxt "@label" msgid "Heated build volume" -msgstr "Vyhřívaný objem sestavení" +msgstr "加热的构建体积" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:161 msgctxt "@label" msgid "G-code flavor" -msgstr "Varianta G kódu" +msgstr "G-code 风格" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:185 msgctxt "@title:label" msgid "Printhead Settings" -msgstr "Nastavení tiskové hlavy" +msgstr "打印头设置" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:197 msgctxt "@label" msgid "X min" -msgstr "X min" +msgstr "X 最小值" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:217 msgctxt "@label" msgid "Y min" -msgstr "Y min" +msgstr "Y 最小值" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:237 msgctxt "@label" msgid "X max" -msgstr "X max" +msgstr "X 最大值" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:257 msgctxt "@label" msgid "Y max" -msgstr "Y max" +msgstr "Y 最大值" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:275 msgctxt "@label" msgid "Gantry Height" -msgstr "Výška rámu tiskárny" +msgstr "十字轴高度" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:289 msgctxt "@label" msgid "Number of Extruders" -msgstr "Počet extrůderů" +msgstr "挤出机数目" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:341 msgctxt "@label" msgid "Apply Extruder offsets to GCode" -msgstr "Aplikovat offsety extruderu do G kódu" +msgstr "将挤出器偏移量应用于 GCode" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:389 msgctxt "@title:label" msgid "Start G-code" -msgstr "Počáteční G kód" +msgstr "开始 G-code" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:400 msgctxt "@title:label" msgid "End G-code" -msgstr "Ukončující G kód" +msgstr "结束 G-code" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsAction.qml:42 msgctxt "@title:tab" msgid "Printer" -msgstr "Tiskárna" +msgstr "打印机" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:63 msgctxt "@title:label" msgid "Nozzle Settings" -msgstr "Nastavení trysky" +msgstr "喷嘴设置" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:74 msgctxt "@label" msgid "Nozzle size" -msgstr "Velikost trysky" +msgstr "喷嘴孔径" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:88 msgctxt "@label" msgid "Compatible material diameter" -msgstr "Kompatibilní průměr materiálu" +msgstr "兼容的材料直径" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:104 msgctxt "@label" msgid "Nozzle offset X" -msgstr "X offset trysky" +msgstr "喷嘴偏移 X" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:119 msgctxt "@label" msgid "Nozzle offset Y" -msgstr "Y offset trysky" +msgstr "喷嘴偏移 Y" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:134 msgctxt "@label" msgid "Cooling Fan Number" -msgstr "Číslo chladícího větráku" +msgstr "冷却风扇数量" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:162 msgctxt "@title:label" msgid "Extruder Start G-code" -msgstr "Počáteční G-kód extuderu" +msgstr "挤出机的开始 G-code" #: /Users/c.lamboo/ultimaker/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:176 msgctxt "@title:label" msgid "Extruder End G-code" -msgstr "Ukončující G-kód extuderu" +msgstr "挤出机的结束 G-code" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:14 msgctxt "@title:window" msgid "Convert Image" -msgstr "Konvertovat obrázek" +msgstr "转换图像" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:33 msgctxt "@action:label" msgid "Height (mm)" -msgstr "Výška (mm)" +msgstr "高度 (mm)" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:56 msgctxt "@info:tooltip" msgid "The maximum distance of each pixel from \"Base.\"" -msgstr "Maximální vzdálenost každého pixelu od „základny“." +msgstr "每个像素与底板的最大距离" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:66 msgctxt "@action:label" msgid "Base (mm)" -msgstr "Základna (mm)" +msgstr "底板 (mm)" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:90 msgctxt "@info:tooltip" msgid "The base height from the build plate in millimeters." -msgstr "Výška základny od podložky v milimetrech." +msgstr "距离打印平台的底板高度,以毫米为单位。" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:100 msgctxt "@action:label" msgid "Width (mm)" -msgstr "Šířka (mm)" +msgstr "宽度 (mm)" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:124 msgctxt "@info:tooltip" msgid "The width in millimeters on the build plate" -msgstr "Šířka na podložce v milimetrech" +msgstr "构建板宽度,以毫米为单位" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:134 msgctxt "@action:label" msgid "Depth (mm)" -msgstr "Hloubka (mm)" +msgstr "深度 (mm)" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:158 msgctxt "@info:tooltip" msgid "The depth in millimeters on the build plate" -msgstr "Hloubka podložky v milimetrech" +msgstr "打印平台深度,以毫米为单位" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:187 msgctxt "@item:inlistbox" msgid "Darker is higher" -msgstr "Tmavější je vyšší" +msgstr "颜色越深厚度越大" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:188 msgctxt "@item:inlistbox" msgid "Lighter is higher" -msgstr "Světlejší je vyšší" +msgstr "颜色越浅厚度越大" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:195 msgctxt "@info:tooltip" -msgid "" -"For lithophanes dark pixels should correspond to thicker locations in order " -"to block more light coming through. For height maps lighter pixels signify " -"higher terrain, so lighter pixels should correspond to thicker locations in " -"the generated 3D model." -msgstr "U litofanů by tmavé pixely měly odpovídat silnějším místům, aby blokovaly více světla procházejícího. Pro výškové mapy znamenají světlejší pixely vyšší" -" terén, takže světlejší pixely by měly odpovídat silnějším umístěním v generovaném 3D modelu." +msgid "For lithophanes dark pixels should correspond to thicker locations in order to block more light coming through. For height maps lighter pixels signify higher terrain, so lighter pixels should correspond to thicker locations in the generated 3D model." +msgstr "在影像浮雕中,为了阻挡更多光源通过,深色像素应对应于较厚的位置。在高度图中,浅色像素代表着更高的地形,因此浅色像素对应于生成的 3D 模型中较厚的位置。" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:205 msgctxt "@action:label" msgid "Color Model" -msgstr "Barevný model" +msgstr "颜色模型" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:224 msgctxt "@item:inlistbox" msgid "Linear" -msgstr "Lineární" +msgstr "线性" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:225 msgctxt "@item:inlistbox" msgid "Translucency" -msgstr "Průsvitnost" +msgstr "半透明" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:232 msgctxt "@info:tooltip" -msgid "" -"For lithophanes a simple logarithmic model for translucency is available. " -"For height maps the pixel values correspond to heights linearly." -msgstr "Pro litofany je k dispozici jednoduchý logaritmický model pro průsvitnost. U výškových map odpovídají hodnoty pixelů lineárně výškám." +msgid "For lithophanes a simple logarithmic model for translucency is available. For height maps the pixel values correspond to heights linearly." +msgstr "对于隐雕,提供一个用于半透明的简单对数模型。对于高度图,像素值与高度线性对应。" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:242 msgctxt "@action:label" msgid "1mm Transmittance (%)" -msgstr "1mm propustnost (%)" +msgstr "1 毫米透射率 (%)" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:263 msgctxt "@info:tooltip" -msgid "" -"The percentage of light penetrating a print with a thickness of 1 " -"millimeter. Lowering this value increases the contrast in dark regions and " -"decreases the contrast in light regions of the image." -msgstr "Procento světla pronikajícího do tisku o tloušťce 1 milimetr. Snížení této hodnoty zvyšuje kontrast v tmavých oblastech a snižuje kontrast ve světlých" -" oblastech obrazu." +msgid "The percentage of light penetrating a print with a thickness of 1 millimeter. Lowering this value increases the contrast in dark regions and decreases the contrast in light regions of the image." +msgstr "穿透 1 毫米厚的打印件的光线百分比。降低此值将增大图像暗区中的对比度并减小图像亮区中的对比度。" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:274 msgctxt "@action:label" msgid "Smoothing" -msgstr "Vyhlazování" +msgstr "平滑" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:298 msgctxt "@info:tooltip" msgid "The amount of smoothing to apply to the image." -msgstr "Množství vyhlazení, které se použije na obrázek." +msgstr "要应用到图像的平滑量。" #: /Users/c.lamboo/ultimaker/Cura/plugins/ImageReader/ConfigUI.qml:329 #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:136 @@ -2224,308 +2135,294 @@ msgstr "Množství vyhlazení, které se použije na obrázek." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ColorDialog.qml:143 msgctxt "@action:button" msgid "OK" -msgstr "OK" +msgstr "确定" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:17 msgctxt "@title:window" msgid "Post Processing Plugin" -msgstr "Zásuvný balíček Post Processing" +msgstr "后期处理插件" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:57 msgctxt "@label" msgid "Post Processing Scripts" -msgstr "Skripty Post Processingu" +msgstr "后期处理脚本" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:215 msgctxt "@action" msgid "Add a script" -msgstr "Přidat skript" +msgstr "添加一个脚本" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:251 msgctxt "@label" msgid "Settings" -msgstr "Nastavení" +msgstr "设置" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:460 msgctxt "@info:tooltip" msgid "Change active post-processing scripts." -msgstr "Změnít aktivní post-processing skripty." +msgstr "更改处于活动状态的后期处理脚本。" #: /Users/c.lamboo/ultimaker/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:464 msgctxt "@info:tooltip" msgid "The following script is active:" msgid_plural "The following scripts are active:" -msgstr[0] "Následují skript je aktivní:" +msgstr[0] "以下脚本处于活动状态:" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:144 msgctxt "@label" msgid "Move to top" -msgstr "Přesunout nahoru" +msgstr "移至顶部" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:155 msgctxt "@label" msgid "Delete" -msgstr "Odstranit" +msgstr "删除" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:186 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:284 msgctxt "@label" msgid "Resume" -msgstr "Obnovit" +msgstr "恢复" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:188 msgctxt "@label" msgid "Pausing..." -msgstr "Pozastavuji..." +msgstr "正在暂停..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:190 msgctxt "@label" msgid "Resuming..." -msgstr "Obnovuji..." +msgstr "正在恢复..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:192 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:279 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:288 msgctxt "@label" msgid "Pause" -msgstr "Pozastavit" +msgstr "暂停" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:206 msgctxt "@label" msgid "Aborting..." -msgstr "Ruším..." +msgstr "正在中止..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:206 msgctxt "@label" msgid "Abort" -msgstr "Zrušit" +msgstr "中止" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:218 msgctxt "@label %1 is the name of a print job." msgid "Are you sure you want to move %1 to the top of the queue?" -msgstr "Doopravdy chcete posunout %1 na začátek fronty?" +msgstr "您确定要将 %1 移至队列顶部吗?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:219 msgctxt "@window:title" msgid "Move print job to top" -msgstr "Přesunout tiskovou úlohu nahoru" +msgstr "将打印作业移至顶部" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:227 msgctxt "@label %1 is the name of a print job." msgid "Are you sure you want to delete %1?" -msgstr "Doopravdy chcete odstranit %1?" +msgstr "您确定要删除 %1 吗?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:228 msgctxt "@window:title" msgid "Delete print job" -msgstr "Odstranit tiskovou úlohu" +msgstr "删除打印作业" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:236 msgctxt "@label %1 is the name of a print job." msgid "Are you sure you want to abort %1?" -msgstr "Doopravdy chcete zrušit %1?" +msgstr "您确定要中止 %1 吗?" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:237 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:326 msgctxt "@window:title" msgid "Abort print" -msgstr "Zrušit tisk" +msgstr "中止打印" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:12 msgctxt "@title:window" msgid "Print over network" -msgstr "Tisk přes síť" +msgstr "通过网络打印" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:53 msgctxt "@action:button" msgid "Print" -msgstr "Tisk" +msgstr "打印" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:81 msgctxt "@label" msgid "Printer selection" -msgstr "Výběr tiskárny" +msgstr "打印机选择" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:20 msgctxt "@title:window" msgid "Configuration Changes" -msgstr "Změny konfigurace" +msgstr "配置更改" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:36 msgctxt "@action:button" msgid "Override" -msgstr "Override" +msgstr "覆盖" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:83 msgctxt "@label" msgid "The assigned printer, %1, requires the following configuration change:" -msgid_plural "" -"The assigned printer, %1, requires the following configuration changes:" -msgstr[0] "Přiřazená tiskárna %1 vyžaduje následující změnu konfigurace:" +msgid_plural "The assigned printer, %1, requires the following configuration changes:" +msgstr[0] "分配的打印机 %1 需要以下配置更改:" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:87 msgctxt "@label" -msgid "" -"The printer %1 is assigned, but the job contains an unknown material " -"configuration." -msgstr "Tiskárna %1 je přiřazena, ale úloha obsahuje neznámou konfiguraci materiálu." +msgid "The printer %1 is assigned, but the job contains an unknown material configuration." +msgstr "已向打印机 %1 分配作业,但作业包含未知的材料配置。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:97 msgctxt "@label" msgid "Change material %1 from %2 to %3." -msgstr "Změnit materiál %1 z %2 na %3." +msgstr "将材料 %1 从 %2 更改为 %3。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:100 msgctxt "@label" msgid "Load %3 as material %1 (This cannot be overridden)." -msgstr "Načíst %3 jako materiál %1 (Toho nemůže být přepsáno)." +msgstr "将 %3 作为材料 %1 进行加载(此操作无法覆盖)。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:103 msgctxt "@label" msgid "Change print core %1 from %2 to %3." -msgstr "Změnit jádro tisku %1 z %2 na %3." +msgstr "将 Print Core %1 从 %2 更改为 %3。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:106 msgctxt "@label" msgid "Change build plate to %1 (This cannot be overridden)." -msgstr "Změnit podložku na %1 (Toto nemůže být přepsáno)." +msgstr "将打印平台更改为 %1(此操作无法覆盖)。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:113 msgctxt "@label" -msgid "" -"Override will use the specified settings with the existing printer " -"configuration. This may result in a failed print." -msgstr "Přepsání použije zadaná nastavení s existující konfigurací tiskárny. To může vést k selhání tisku." +msgid "Override will use the specified settings with the existing printer configuration. This may result in a failed print." +msgstr "覆盖将使用包含现有打印机配置的指定设置。这可能会导致打印失败。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:151 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:181 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:178 msgctxt "@label" msgid "Glass" -msgstr "Sklo" +msgstr "玻璃" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:154 msgctxt "@label" msgid "Aluminum" -msgstr "Hliník" +msgstr "铝" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:148 msgctxt "@label link to Connect and Cloud interfaces" msgid "Manage printer" -msgstr "Spravovat tiskárnu" +msgstr "管理打印机" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:253 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:479 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250 msgctxt "@info" msgid "Please update your printer's firmware to manage the queue remotely." -msgstr "Aktualizujte firmware tiskárny a spravujte frontu vzdáleně." +msgstr "请及时更新打印机固件以远程管理打印队列。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:287 msgctxt "@info" -msgid "" -"Webcam feeds for cloud printers cannot be viewed from Ultimaker Cura. Click " -"\"Manage printer\" to visit Ultimaker Digital Factory and view this webcam." -msgstr "Vstup z webové kamery nemůže být pro cloudové tiskárny zobrazen v Ultimaker Cura. Klikněte na \"Spravovat tiskárnu\", abyste navštívili Ultimaker Digital" -" Factory a zobrazili tuto webkameru." +msgid "Webcam feeds for cloud printers cannot be viewed from Ultimaker Cura. Click \"Manage printer\" to visit Ultimaker Digital Factory and view this webcam." +msgstr "无法从 Ultimaker Cura 中查看云打印机的网络摄像头馈送。请单击“管理打印机”以访问 Ultimaker Digital Factory 并查看此网络摄像头。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:347 msgctxt "@label:status" msgid "Loading..." -msgstr "Načítám..." +msgstr "正在加载..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:351 msgctxt "@label:status" msgid "Unavailable" -msgstr "Nedostupný" +msgstr "不可用" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:355 msgctxt "@label:status" msgid "Unreachable" -msgstr "Nedostupný" +msgstr "无法连接" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:359 msgctxt "@label:status" msgid "Idle" -msgstr "Čekám" +msgstr "空闲" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:363 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:76 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:78 msgctxt "@label:status" msgid "Preparing..." -msgstr "Připravuji..." +msgstr "正在准备..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:368 msgctxt "@label:status" msgid "Printing" -msgstr "Tisknu" +msgstr "打印" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:409 msgctxt "@label" msgid "Untitled" -msgstr "Bez názvu" +msgstr "未命名" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:424 msgctxt "@label" msgid "Anonymous" -msgstr "Anonymní" +msgstr "匿名" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:445 msgctxt "@label:status" msgid "Requires configuration changes" -msgstr "Jsou nutné změny v nastavení" +msgstr "需要更改配置" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:459 msgctxt "@action:button" msgid "Details" -msgstr "Podrobnosti" +msgstr "详细信息" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:126 msgctxt "@label" msgid "Unavailable printer" -msgstr "Nedostupná tiskárna" +msgstr "不可用的打印机" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:128 msgctxt "@label" msgid "First available" -msgstr "První dostupný" +msgstr "第一个可用" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:117 msgctxt "@info" msgid "Monitor your printers from everywhere using Ultimaker Digital Factory" -msgstr "使用 Ultimaker Digital Factory 从任意位置监控打印机" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:129 msgctxt "@button" msgid "View printers in Digital Factory" -msgstr "查看 Digital Factory 中的打印机" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:44 msgctxt "@title:window" msgid "Connect to Networked Printer" -msgstr "Připojte se k síťové tiskárně" +msgstr "连接到网络打印机" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:51 msgctxt "@label" -msgid "" -"To print directly to your printer over the network, please make sure your " -"printer is connected to the network using a network cable or by connecting " -"your printer to your WIFI network. If you don't connect Cura with your " -"printer, you can still use a USB drive to transfer g-code files to your " -"printer." -msgstr "Chcete-li tisknout přímo na tiskárně prostřednictvím sítě, zkontrolujte, zda je tiskárna připojena k síti pomocí síťového kabelu nebo připojením tiskárny" -" k síti WIFI. Pokud nepřipojíte Curu k tiskárně, můžete stále používat jednotku USB k přenosu souborů g-kódu do vaší tiskárny." +msgid "To print directly to your printer over the network, please make sure your printer is connected to the network using a network cable or by connecting your printer to your WIFI network. If you don't connect Cura with your printer, you can still use a USB drive to transfer g-code files to your printer." +msgstr "欲通过网络向打印机发送打印请求,请确保您的打印机已通过网线或 WIFI 连接至网络。若不能连接 Cura 与打印机,亦可通过使用 USB 设备将 G-code 文件传输到打印机。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:51 msgctxt "@label" msgid "Select your printer from the list below:" -msgstr "Vyberte svou tiskárnu z nabídky níže:" +msgstr "请从以下列表中选择您的打印机:" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:71 msgctxt "@action:button" msgid "Edit" -msgstr "Upravit" +msgstr "编辑" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:82 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:186 @@ -2533,109 +2430,107 @@ msgstr "Upravit" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:321 msgctxt "@action:button" msgid "Remove" -msgstr "Odstranit" +msgstr "删除" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:90 msgctxt "@action:button" msgid "Refresh" -msgstr "Aktualizovat" +msgstr "刷新" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:161 msgctxt "@label" -msgid "" -"If your printer is not listed, read the network printing " -"troubleshooting guide" -msgstr "Pokud vaše tiskárna není uvedena, přečtěte si průvodce řešením problémů se síťovým tiskem " +msgid "If your printer is not listed, read the network printing troubleshooting guide" +msgstr "如果您的打印机未列出,请阅读网络打印故障排除指南" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:186 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:247 msgctxt "@label" msgid "Type" -msgstr "Typ" +msgstr "类型" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:202 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:256 msgctxt "@label" msgid "Firmware version" -msgstr "Verze firmwaru" +msgstr "固件版本" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:212 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:266 msgctxt "@label" msgid "Address" -msgstr "Adresa" +msgstr "地址" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:232 msgctxt "@label" msgid "This printer is not set up to host a group of printers." -msgstr "Tato tiskárna není nastavena tak, aby hostovala skupinu tiskáren." +msgstr "这台打印机未设置为运行一组打印机。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:236 msgctxt "@label" msgid "This printer is the host for a group of %1 printers." -msgstr "Tato tiskárna je hostitelem skupiny tiskáren %1." +msgstr "这台打印机是一组共 %1 台打印机的主机。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:245 msgctxt "@label" msgid "The printer at this address has not yet responded." -msgstr "Tiskárna na této adrese dosud neodpověděla." +msgstr "该网络地址的打印机尚未响应。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:250 msgctxt "@action:button" msgid "Connect" -msgstr "Připojit" +msgstr "连接" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:261 msgctxt "@title:window" msgid "Invalid IP address" -msgstr "Špatná IP adresa" +msgstr "IP 地址无效" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:262 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:141 msgctxt "@text" msgid "Please enter a valid IP address." -msgstr "Prosím zadejte validní IP adresu." +msgstr "请输入有效的 IP 地址。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:272 msgctxt "@title:window" msgid "Printer Address" -msgstr "Adresa tiskárny" +msgstr "打印机网络地址" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:297 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:97 msgctxt "@label" msgid "Enter the IP address of your printer on the network." -msgstr "Vložte IP adresu vaší tiskárny na síti." +msgstr "请输入打印机在网络上的 IP 地址。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:29 msgctxt "@label" msgid "Queued" -msgstr "Zařazeno do fronty" +msgstr "已排队" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:64 msgctxt "@label link to connect manager" msgid "Manage in browser" -msgstr "Spravovat v prohlížeči" +msgstr "请于浏览器中进行管理" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:91 msgctxt "@label" msgid "There are no print jobs in the queue. Slice and send a job to add one." -msgstr "Ve frontě nejsou žádné tiskové úlohy. Slicujte a odesláním úlohy jednu přidejte." +msgstr "队列中无打印任务。可通过切片和发送添加任务。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:99 msgctxt "@label" msgid "Print jobs" -msgstr "Tiskové úlohy" +msgstr "打印作业" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:108 msgctxt "@label" msgid "Total print time" -msgstr "Celkový čas tisknutí" +msgstr "总打印时间" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorQueue.qml:117 msgctxt "@label" msgid "Waiting for" -msgstr "Čekám na" +msgstr "等待" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:70 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:82 @@ -2644,18 +2539,18 @@ msgstr "Čekám na" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:88 msgctxt "@label:status" msgid "Aborted" -msgstr "Zrušeno" +msgstr "已中止" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:72 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:74 msgctxt "@label:status" msgid "Finished" -msgstr "Dokončeno" +msgstr "已完成" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:80 msgctxt "@label:status" msgid "Aborting..." -msgstr "Ruším..." +msgstr "正在中止..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:90 #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:92 @@ -2663,133 +2558,127 @@ msgstr "Ruším..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:96 msgctxt "@label:status" msgid "Failed" -msgstr "Selhání" +msgstr "失败" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:98 msgctxt "@label:status" msgid "Pausing..." -msgstr "Pozastavuji..." +msgstr "正在暂停..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:100 msgctxt "@label:status" msgid "Paused" -msgstr "Pozastaveno" +msgstr "已暂停" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:102 msgctxt "@label:status" msgid "Resuming..." -msgstr "Obnovuji..." +msgstr "正在恢复..." #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:104 msgctxt "@label:status" msgid "Action required" -msgstr "Akce vyžadována" +msgstr "需要采取行动" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:106 msgctxt "@label:status" msgid "Finishes %1 at %2" -msgstr "Dokončuji %1 z %2" +msgstr "完成 %1 于 %2" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/main.qml:25 msgctxt "@title:window" msgid "Cura Backups" -msgstr "Cura zálohy" +msgstr "Cura 备份" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml:21 msgctxt "@backuplist:label" msgid "Cura Version" -msgstr "Cura verze" +msgstr "Cura 版本" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml:29 msgctxt "@backuplist:label" msgid "Machines" -msgstr "Zařízení" +msgstr "机器" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml:37 msgctxt "@backuplist:label" msgid "Materials" -msgstr "Materiály" +msgstr "材料" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml:45 msgctxt "@backuplist:label" msgid "Profiles" -msgstr "Profily" +msgstr "配置文件" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml:53 msgctxt "@backuplist:label" msgid "Plugins" -msgstr "Zásuvné moduly" +msgstr "插件" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListFooter.qml:22 msgctxt "@button" msgid "Want more?" -msgstr "Chcete více?" +msgstr "想要更多?" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListFooter.qml:31 msgctxt "@button" msgid "Backup Now" -msgstr "Zálohovat nyní" +msgstr "立即备份" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListFooter.qml:43 msgctxt "@checkbox:description" msgid "Auto Backup" -msgstr "Automatické zálohy" +msgstr "自动备份" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListFooter.qml:44 msgctxt "@checkbox:description" msgid "Automatically create a backup each day that Cura is started." -msgstr "Automaticky vytvořte zálohu každý den, kdy je spuštěna Cura." +msgstr "在 Cura 每天启动时自动创建备份。" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItem.qml:64 msgctxt "@button" msgid "Restore" -msgstr "Obnovit" +msgstr "恢复" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItem.qml:93 msgctxt "@dialog:title" msgid "Delete Backup" -msgstr "Odstranit zálohu" +msgstr "删除备份" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItem.qml:94 msgctxt "@dialog:info" msgid "Are you sure you want to delete this backup? This cannot be undone." -msgstr "Opravdu chcete tuto zálohu smazat? To nelze vrátit zpět." +msgstr "您确定要删除此备份吗?此操作无法撤销。" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItem.qml:102 msgctxt "@dialog:title" msgid "Restore Backup" -msgstr "Obnovit zálohu" +msgstr "恢复备份" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/components/BackupListItem.qml:103 msgctxt "@dialog:info" -msgid "" -"You will need to restart Cura before your backup is restored. Do you want to " -"close Cura now?" -msgstr "Před obnovením zálohy budete muset restartovat Curu. Chcete nyní Curu zavřít?" +msgid "You will need to restart Cura before your backup is restored. Do you want to close Cura now?" +msgstr "您需要重新启动 Cura 才能恢复备份。您要立即关闭 Cura 吗?" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/BackupsPage.qml:28 msgctxt "@title" msgid "My Backups" -msgstr "Moje zálohy" +msgstr "我的备份" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/BackupsPage.qml:36 msgctxt "@empty_state" -msgid "" -"You don't have any backups currently. Use the 'Backup Now' button to create " -"one." -msgstr "Momentálně nemáte žádné zálohy. Pomocí tlačítka 'Zálohovat nyní' vytvořte." +msgid "You don't have any backups currently. Use the 'Backup Now' button to create one." +msgstr "您目前没有任何备份。使用“立即备份”按钮创建一个备份。" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/BackupsPage.qml:55 msgctxt "@backup_limit_info" -msgid "" -"During the preview phase, you'll be limited to 5 visible backups. Remove a " -"backup to see older ones." -msgstr "Během fáze náhledu budete omezeni na 5 viditelných záloh. Chcete-li zobrazit starší, odstraňte zálohu." +msgid "During the preview phase, you'll be limited to 5 visible backups. Remove a backup to see older ones." +msgstr "在预览阶段,将限制为 5 个可见备份。移除一个备份以查看更早的备份。" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:34 msgctxt "@description" msgid "Backup and synchronize your Cura settings." -msgstr "Zálohovat a synchronizovat vaše nastavení Cura." +msgstr "备份并同步您的 Cura 设置。" #: /Users/c.lamboo/ultimaker/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:47 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:180 @@ -2797,160 +2686,148 @@ msgstr "Zálohovat a synchronizovat vaše nastavení Cura." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/GeneralOperations.qml:49 msgctxt "@button" msgid "Sign in" -msgstr "Přihlásit se" +msgstr "登录" #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:16 msgctxt "@title:window" msgid "More information on anonymous data collection" -msgstr "Další informace o anonymním shromažďování údajů" +msgstr "更多关于匿名数据收集的信息" #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:73 msgctxt "@text:window" -msgid "" -"Ultimaker Cura collects anonymous data in order to improve the print quality " -"and user experience. Below is an example of all the data that is shared:" -msgstr "Ultimaker Cura shromažďuje anonymní data za účelem zlepšení kvality tisku a uživatelského komfortu. Níže uvádíme příklad všech sdílených dat:" +msgid "Ultimaker Cura collects anonymous data in order to improve the print quality and user experience. Below is an example of all the data that is shared:" +msgstr "为了改善打印质量和用户体验,Ultimaker Cura 会收集匿名数据。以下是所有数据分享的示例:" #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:107 msgctxt "@text:window" msgid "I don't want to send anonymous data" -msgstr "Nechci posílat anonymní data" +msgstr "我不想发送匿名数据" #: /Users/c.lamboo/ultimaker/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:116 msgctxt "@text:window" msgid "Allow sending anonymous data" -msgstr "Povolit zasílání anonymních dat" +msgstr "允许发送匿名数据" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/resources/qml/SaveProjectFilesPage.qml:216 msgctxt "@option" msgid "Save Cura project and print file" -msgstr "Uložit projekt Cura a tiskový soubor UFP" +msgstr "保存 Cura 项目并打印文件" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/resources/qml/SaveProjectFilesPage.qml:217 msgctxt "@option" msgid "Save Cura project" -msgstr "Uložit projekt Cura" +msgstr "保存 Cura 项目" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:30 msgctxt "@label" msgid "Please select any upgrades made to this Ultimaker Original" -msgstr "Vyberte prosím všechny upgrady provedené v tomto originálu Ultimaker" +msgstr "请选择适用于 Ultimaker Original 的升级文件" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:39 msgctxt "@label" msgid "Heated Build Plate (official kit or self-built)" -msgstr "Vyhřívaná podložka (Oficiální kit, nebo vytvořená)" +msgstr "热床(官方版本或自制)" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.qml:30 msgctxt "@title" msgid "Build Plate Leveling" -msgstr "Vyrovnávání podložky" +msgstr "打印平台调平" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.qml:42 msgctxt "@label" -msgid "" -"To make sure your prints will come out great, you can now adjust your " -"buildplate. When you click 'Move to Next Position' the nozzle will move to " -"the different positions that can be adjusted." -msgstr "Chcete-li se ujistit, že vaše výtisky vyjdou skvěle, můžete nyní sestavení své podložku. Když kliknete na „Přesunout na další pozici“, tryska se přesune" -" do různých poloh, které lze upravit." +msgid "To make sure your prints will come out great, you can now adjust your buildplate. When you click 'Move to Next Position' the nozzle will move to the different positions that can be adjusted." +msgstr "为了确保打印质量出色,您现在可以开始调整您的打印平台。当您点击「移动到下一个位置」时,喷嘴将移动到可以调节的不同位置。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.qml:52 msgctxt "@label" -msgid "" -"For every position; insert a piece of paper under the nozzle and adjust the " -"print build plate height. The print build plate height is right when the " -"paper is slightly gripped by the tip of the nozzle." -msgstr "Pro každou pozici; vložte kousek papíru pod trysku a upravte výšku tiskové desky. Výška desky pro sestavení tisku je správná, když je papír lehce uchopen" -" špičkou trysky." +msgid "For every position; insert a piece of paper under the nozzle and adjust the print build plate height. The print build plate height is right when the paper is slightly gripped by the tip of the nozzle." +msgstr "在打印头停止的每一个位置下方插入一张纸,并调整平台高度。当纸张恰好被喷嘴的尖端轻微压住时,此时打印平台的高度已被正确校准。" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.qml:67 msgctxt "@action:button" msgid "Start Build Plate Leveling" -msgstr "Spustit vyrovnání položky" +msgstr "开始进行打印平台调平" #: /Users/c.lamboo/ultimaker/Cura/plugins/UltimakerMachineActions/BedLevelMachineAction.qml:79 msgctxt "@action:button" msgid "Move to Next Position" -msgstr "Přesunout na další pozici" +msgstr "移动到下一个位置" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:172 msgctxt "@label Is followed by the name of an author" msgid "By" -msgstr "Od" +msgstr "由" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:207 #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/OnboardBanner.qml:101 msgctxt "@button:label" msgid "Learn More" -msgstr "Zjistit Více" +msgstr "详细了解" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:226 msgctxt "@button" msgid "Enable" -msgstr "Zapnout" +msgstr "启用" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:226 msgctxt "@button" msgid "Disable" -msgstr "Vypnout" +msgstr "禁用" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:244 msgctxt "@button" msgid "Downgrading..." -msgstr "Snižuji verzi..." +msgstr "正在降级..." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:245 msgctxt "@button" msgid "Downgrade" -msgstr "Snížit verzi" +msgstr "降级" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:249 msgctxt "@button" msgid "Installing..." -msgstr "Instaluji..." +msgstr "正在安装..." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:250 msgctxt "@button" msgid "Install" -msgstr "Instalovat" +msgstr "安装" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:254 msgctxt "@button" msgid "Uninstall" -msgstr "Odinstalovat" +msgstr "卸载" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:269 msgctxt "@button" msgid "Updating..." -msgstr "Aktualizuji..." +msgstr "正在更新..." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageCardHeader.qml:269 msgctxt "@button" msgid "Update" -msgstr "Aktualizovat" +msgstr "更新" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Plugins.qml:8 msgctxt "@header" msgid "Install Plugins" -msgstr "Nainstalovat moduly" +msgstr "安装插件" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Plugins.qml:12 msgctxt "@text" -msgid "" -"Streamline your workflow and customize your Ultimaker Cura experience with " -"plugins contributed by our amazing community of users." -msgstr "Urychlete váš postup práce a přizpůsobte si zážitek s Ultimaker Cura pomocí modulů, kterými přispěla naše úžasná komunita uživatelů." +msgid "Streamline your workflow and customize your Ultimaker Cura experience with plugins contributed by our amazing community of users." +msgstr "使用由我们卓越的用户社区提供的插件,简化您的工作流程并自定义 Ultimaker Cura 体验。" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:15 msgctxt "@title" msgid "Changes from your account" -msgstr "Změny z vašeho účtu" +msgstr "您的帐户有更改" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:24 msgctxt "@button" msgid "Dismiss" -msgstr "Schovat" +msgstr "解除" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:24 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:76 @@ -2958,231 +2835,225 @@ msgstr "Schovat" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:118 msgctxt "@button" msgid "Next" -msgstr "Další" +msgstr "下一步" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:52 msgctxt "@label" msgid "The following packages will be added:" -msgstr "Následující balíčky byly přidány:" +msgstr "将添加以下程序包:" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/CompatibilityDialog.qml:94 msgctxt "@label" -msgid "" -"The following packages can not be installed because of an incompatible Cura " -"version:" -msgstr "Následující balíčky nelze nainstalovat z důvodu nekompatibilní verze Cura:" +msgid "The following packages can not be installed because of an incompatible Cura version:" +msgstr "由于 Cura 版本不兼容,无法安装以下程序包:" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/MultipleLicenseDialog.qml:35 msgctxt "@label" msgid "You need to accept the license to install the package" -msgstr "Pro instalaci balíčku musíte přijmout licenční ujednání" +msgstr "需要接受许可证才能安装该程序包" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/LicenseDialog.qml:15 msgctxt "@button" msgid "Plugin license agreement" -msgstr "Licenční smlouva modulu" +msgstr "插件许可协议" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/LicenseDialog.qml:47 msgctxt "@text" msgid "Please read and agree with the plugin licence." -msgstr "Prosím přečtěte si a přijměte licenci modulu." +msgstr "请阅读并同意插件许可。" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/LicenseDialog.qml:70 msgctxt "@button" msgid "Accept" -msgstr "Příjmout" +msgstr "接受" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Materials.qml:8 #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/MissingPackages.qml:8 msgctxt "@header" msgid "Install Materials" -msgstr "Instalovat materiály" +msgstr "安装材料" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Materials.qml:12 msgctxt "@text" -msgid "" -"Select and install material profiles optimised for your Ultimaker 3D " -"printers." -msgstr "Vyberte a nainstalujte materiálové profily optimalizované pro vaše 3D tiskárny Ultimaker." +msgid "Select and install material profiles optimised for your Ultimaker 3D printers." +msgstr "选择并安装针对您的 Ultimaker 3D 打印机经过优化的材料配置文件。" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/ManagePackagesButton.qml:32 msgctxt "@info:tooltip" msgid "Manage packages" -msgstr "Spravovat balíčky" +msgstr "管理包" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:81 msgctxt "@header" msgid "Description" -msgstr "Popis" +msgstr "描述" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:110 msgctxt "@header" msgid "Compatible printers" -msgstr "Kompatibilní tiskárny" +msgstr "兼容的打印机" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:134 msgctxt "@info" msgid "No compatibility information" -msgstr "Žádné informace o kompatibilitě" +msgstr "无兼容性信息" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:152 msgctxt "@header" msgid "Compatible support materials" -msgstr "Kompatibilní materiály podpor" +msgstr "兼容的支撑材料" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:176 msgctxt "@info No materials" msgid "None" -msgstr "Žádné" +msgstr "无" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:193 msgctxt "@header" msgid "Compatible with Material Station" -msgstr "Kompatibilní s Material Station" +msgstr "与 Material Station 兼容" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:202 #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:228 msgctxt "@info" msgid "Yes" -msgstr "Ano" +msgstr "是" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:202 #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:228 msgctxt "@info" msgid "No" -msgstr "Ne" +msgstr "否" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:219 msgctxt "@header" msgid "Optimized for Air Manager" -msgstr "Optimalizováno pro Air Manager" +msgstr "已针对 Air Manager 优化" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:243 msgctxt "@button" msgid "Visit plug-in website" -msgstr "Navštívit webovou stránku modulu" +msgstr "访问插件网站" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:243 msgctxt "@button" msgid "Website" -msgstr "Webová stránka" +msgstr "网站" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:252 msgctxt "@button" msgid "Buy spool" -msgstr "Koupit cívku" +msgstr "购买线轴" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:261 msgctxt "@button" msgid "Safety datasheet" -msgstr "Bezpečnostní list" +msgstr "安全数据表" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackagePage.qml:270 msgctxt "@button" msgid "Technical datasheet" -msgstr "Technický list" +msgstr "技术数据表" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageDetails.qml:15 msgctxt "@header" msgid "Package details" -msgstr "Detaily balíčku" +msgstr "包详情" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/PackageDetails.qml:40 msgctxt "@button:tooltip" msgid "Back" -msgstr "Zpět" +msgstr "返回" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:151 msgctxt "@button" msgid "Failed to load packages:" -msgstr "Nepodařilo se načíst balíčky:" +msgstr "无法加载包:" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:151 msgctxt "@button" msgid "Retry?" -msgstr "Opakovat?" +msgstr "是否重试?" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:167 msgctxt "@button" msgid "Loading" -msgstr "Načítám" +msgstr "加载" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:183 msgctxt "@message" msgid "No more results to load" -msgstr "Žádné další výsledky k načtení" +msgstr "没有更多的结果要加载" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:183 msgctxt "@message" msgid "No results found with current filter" -msgstr "S aktuálním filtrem nebyly nalezeny žádné výsledky" +msgstr "当前筛选没有任何结果" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Packages.qml:226 msgctxt "@button" msgid "Load more" -msgstr "Načíst více" +msgstr "加载更多" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/VerifiedIcon.qml:21 msgctxt "@info" msgid "Ultimaker Verified Plug-in" -msgstr "Modul ověřený společností Ultimaker" +msgstr "Ultimaker 验证插件" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/VerifiedIcon.qml:22 msgctxt "@info" msgid "Ultimaker Certified Material" -msgstr "Materiál certifikovaný společností Ultimaker" +msgstr "Ultimaker 认证材料" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/VerifiedIcon.qml:23 msgctxt "@info" msgid "Ultimaker Verified Package" -msgstr "Balíček ověřený společností Ultimaker" +msgstr "Ultimaker 验证包" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/ManagedPackages.qml:11 msgctxt "@header" msgid "Manage packages" -msgstr "Spravovat balíčky" +msgstr "管理包" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/ManagedPackages.qml:15 msgctxt "@text" -msgid "" -"Manage your Ultimaker Cura plugins and material profiles here. Make sure to " -"keep your plugins up to date and backup your setup regularly." -msgstr "Zde můžete spravovat své Ultimaker Cura moduly a materiály. Udržujte své moduly aktuální a pravidelně zálohujte své nastavení." +msgid "Manage your Ultimaker Cura plugins and material profiles here. Make sure to keep your plugins up to date and backup your setup regularly." +msgstr "在此处管理您的 Ultimaker Cura 插件和材料配置文件。请确保将插件保持为最新,并定期备份设置。" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/InstallMissingPackagesDialog.qml:15 msgctxt "@title" msgid "Install missing Materials" -msgstr "Nainstalovat chybějící materiály" +msgstr "安装缺少的材料" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:87 msgctxt "@title" msgid "Loading..." -msgstr "Načítám..." +msgstr "正在加载..." #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:148 msgctxt "@button" msgid "Plugins" -msgstr "Zásuvné moduly" +msgstr "插件" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:156 msgctxt "@button" msgid "Materials" -msgstr "Materiály" +msgstr "材料" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:193 msgctxt "@info" msgid "Search in the browser" -msgstr "Hledat v prohlížeči" +msgstr "在浏览器中搜索" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:271 msgctxt "@button" msgid "In order to use the package you will need to restart Cura" -msgstr "Abyste mohli balíček použít, musíte restartovat Curu" +msgstr "要使用该包,您需要重新启动 Cura" #: /Users/c.lamboo/ultimaker/Cura/plugins/Marketplace/resources/qml/Marketplace.qml:279 msgctxt "@info:button, %1 is the application name" msgid "Quit %1" -msgstr "Ukončit %1" +msgstr "退出 %1" #: /Users/c.lamboo/ultimaker/Cura/plugins/MonitorStage/MonitorMain.qml:100 msgctxt "@info" @@ -3191,78 +3062,81 @@ msgid "" "- Check if the printer is turned on.\n" "- Check if the printer is connected to the network.\n" "- Check if you are signed in to discover cloud-connected printers." -msgstr "Zkontrolujte, zda má tiskárna připojení:\n- Zkontrolujte, zda je tiskárna zapnutá.\n- Zkontrolujte, zda je tiskárna připojena k síti.\n- Zkontrolujte," -" zda jste přihlášeni k objevování tiskáren připojených k cloudu." +msgstr "" +"请确保您的打印机已连接:\n" +"- 检查打印机是否已启动。\n" +"- 检查打印机是否连接至网络。\n" +"- 检查您是否已登录查找云连接的打印机。" #: /Users/c.lamboo/ultimaker/Cura/plugins/MonitorStage/MonitorMain.qml:113 msgctxt "@info" msgid "Please connect your printer to the network." -msgstr "Připojte tiskárnu k síti." +msgstr "请将打印机连接到网络。" #: /Users/c.lamboo/ultimaker/Cura/plugins/MonitorStage/MonitorMain.qml:148 msgctxt "@label link to technical assistance" msgid "View user manuals online" -msgstr "Zobrazit online manuály" +msgstr "查看联机用户手册" #: /Users/c.lamboo/ultimaker/Cura/plugins/MonitorStage/MonitorMain.qml:164 msgctxt "@info" msgid "In order to monitor your print from Cura, please connect the printer." -msgstr "Abyste mohli monitorovat tisk z Cury, připojte prosím tiskárnu." +msgstr "为了从 Cura 监控您的打印,请连接打印机。" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:15 msgctxt "@title:window" msgid "Open Project" -msgstr "Otevřit projekt" +msgstr "打开项目" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:64 msgctxt "@action:ComboBox Update/override existing profile" msgid "Update existing" -msgstr "Aktualizovat existující" +msgstr "更新已有配置" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:65 msgctxt "@action:ComboBox Save settings in a new profile" msgid "Create new" -msgstr "Vytvořit nový" +msgstr "新建" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:83 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:61 msgctxt "@action:title" msgid "Summary - Cura Project" -msgstr "Souhrn - Projekt Cura" +msgstr "摘要 - Cura 项目" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:109 msgctxt "@info:tooltip" msgid "How should the conflict in the machine be resolved?" -msgstr "Jak by měl být problém v zařízení vyřešen?" +msgstr "机器的设置冲突应如何解决?" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:165 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:97 msgctxt "@action:label" msgid "Printer settings" -msgstr "Nastavení tiskárny" +msgstr "打印机设置" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:176 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:106 msgctxt "@action:label" msgid "Type" -msgstr "Typ" +msgstr "类型" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:193 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:121 msgctxt "@action:label" msgid "Printer Group" -msgstr "Skupina tiskárny" +msgstr "打印机组" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:218 msgctxt "@info:tooltip" msgid "How should the conflict in the profile be resolved?" -msgstr "Jak by měl být problém v profilu vyřešen?" +msgstr "配置文件中的冲突如何解决?" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:240 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:222 msgctxt "@action:label" msgid "Profile settings" -msgstr "Nastavení profilu" +msgstr "配置文件设置" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:251 #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:376 @@ -3270,365 +3144,350 @@ msgstr "Nastavení profilu" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:246 msgctxt "@action:label" msgid "Name" -msgstr "Název" +msgstr "名字" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:269 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:263 msgctxt "@action:label" msgid "Intent" -msgstr "Záměr" +msgstr "Intent" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:287 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:230 msgctxt "@action:label" msgid "Not in profile" -msgstr "Není v profilu" +msgstr "不在配置文件中" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:293 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:235 msgctxt "@action:label" msgid "%1 override" msgid_plural "%1 overrides" -msgstr[0] "%1 přepsání" +msgstr[0] "%1 重写" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:306 msgctxt "@action:label" msgid "Derivative from" -msgstr "Derivát z" +msgstr "衍生自" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:312 msgctxt "@action:label" msgid "%1, %2 override" msgid_plural "%1, %2 overrides" -msgstr[0] "%1, %2 override" +msgstr[0] "%1, %2 重写" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:334 msgctxt "@info:tooltip" msgid "How should the conflict in the material be resolved?" -msgstr "Jak by měl být problém v materiálu vyřešen?" +msgstr "材料的设置冲突应如何解决?" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:361 msgctxt "@action:label" msgid "Material settings" -msgstr "Nastavení materiálu" +msgstr "材料设置" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:397 msgctxt "@action:label" msgid "Setting visibility" -msgstr "Nastavení zobrazení" +msgstr "设置可见性" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:406 msgctxt "@action:label" msgid "Mode" -msgstr "Mód" +msgstr "模式" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:422 msgctxt "@action:label" msgid "Visible settings:" -msgstr "Viditelná zařízení:" +msgstr "可见设置:" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:427 msgctxt "@action:label" msgid "%1 out of %2" -msgstr "%1 z %2" +msgstr "%1 / %2" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:448 msgctxt "@action:warning" msgid "Loading a project will clear all models on the build plate." -msgstr "Nahrání projektu vymaže všechny modely na podložce." +msgstr "加载项目将清除打印平台上的所有模型。" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:490 msgctxt "@label" -msgid "" -"The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." -msgstr "此项目中使用的材料当前未安装在 Cura 中。
    安装材料配置文件并重新打开项目。" +msgid "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:515 msgctxt "@action:button" msgid "Open" -msgstr "Otevřít" +msgstr "打开" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:521 msgctxt "@action:button" msgid "Open project anyway" -msgstr "Přesto otevřít projekt" +msgstr "仍要打开项目" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:530 msgctxt "@action:button" msgid "Install missing material" -msgstr "Nainstalovat chybějící materiál" +msgstr "安装缺少的材料" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:41 msgctxt "@label" msgid "Mesh Type" -msgstr "Typ síťového modelu" +msgstr "网格类型" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:81 msgctxt "@label" msgid "Normal model" -msgstr "Normální model" +msgstr "正常模式" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:96 msgctxt "@label" msgid "Print as support" -msgstr "Tisknout jako podporu" +msgstr "打印为支撑" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:111 msgctxt "@label" msgid "Modify settings for overlaps" -msgstr "Upravte nastavení překrývání" +msgstr "修改重叠设置" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:126 msgctxt "@label" msgid "Don't support overlaps" -msgstr "Nepodporovat překrývání" +msgstr "不支持重叠" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:159 msgctxt "@item:inlistbox" msgid "Infill mesh only" -msgstr "Pouze síť výplně" +msgstr "仅填充网格" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:160 msgctxt "@item:inlistbox" msgid "Cutting mesh" -msgstr "Síť řezu" +msgstr "切割网格" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:385 msgctxt "@action:button" msgid "Select settings" -msgstr "Vybrat nastavení" +msgstr "选择设置" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:17 msgctxt "@title:window" msgid "Select Settings to Customize for this model" -msgstr "Vybrat nastavení k přizpůsobení pro tento model" +msgstr "选择对此模型的自定义设置" #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:61 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:102 msgctxt "@label:textbox" msgid "Filter..." -msgstr "Filtrovat..." +msgstr "筛选..." #: /Users/c.lamboo/ultimaker/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:75 msgctxt "@label:checkbox" msgid "Show all" -msgstr "Zobrazit vše" +msgstr "显示全部" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:31 msgctxt "@title" msgid "Update Firmware" -msgstr "Aktualizovat firmware" +msgstr "更新固件" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:37 msgctxt "@label" -msgid "" -"Firmware is the piece of software running directly on your 3D printer. This " -"firmware controls the step motors, regulates the temperature and ultimately " -"makes your printer work." -msgstr "Firmware je software běžící přímo na vaší 3D tiskárně. Tento firmware řídí krokové motory, reguluje teplotu a v konečném důsledku zajišťuje vaši práci" -" tiskárny." +msgid "Firmware is the piece of software running directly on your 3D printer. This firmware controls the step motors, regulates the temperature and ultimately makes your printer work." +msgstr "固件是直接在 3D 打印机上运行的一个软件。此固件控制步进电机,调节温度并最终使打印机正常工作。" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:43 msgctxt "@label" -msgid "" -"The firmware shipping with new printers works, but new versions tend to have " -"more features and improvements." -msgstr "Dodávání firmwaru s novými tiskárnami funguje, ale nové verze mají obvykle více funkcí a vylepšení." +msgid "The firmware shipping with new printers works, but new versions tend to have more features and improvements." +msgstr "新打印机出厂配备的固件完全可以正常使用,但新版本往往具有更多的新功能和改进。" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:55 msgctxt "@action:button" msgid "Automatically upgrade Firmware" -msgstr "Automaticky aktualizovat firmware" +msgstr "自动升级固件" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:66 msgctxt "@action:button" msgid "Upload custom Firmware" -msgstr "Nahrát vlastní firmware" +msgstr "上传自定义固件" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:79 msgctxt "@label" -msgid "" -"Firmware can not be updated because there is no connection with the printer." -msgstr "Firmware nelze aktualizovat, protože není spojeno s tiskárnou." +msgid "Firmware can not be updated because there is no connection with the printer." +msgstr "未连接打印机,无法更新固件。" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:86 msgctxt "@label" -msgid "" -"Firmware can not be updated because the connection with the printer does not " -"support upgrading firmware." -msgstr "Firmware nelze aktualizovat, protože připojení k tiskárně nepodporuje aktualizaci firmwaru." +msgid "Firmware can not be updated because the connection with the printer does not support upgrading firmware." +msgstr "与打印机间的连接不支持固件更新,因此无法更新固件。" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:93 msgctxt "@title:window" msgid "Select custom firmware" -msgstr "Vybrat vlastní firmware" +msgstr "选择自定义固件" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:113 msgctxt "@title:window" msgid "Firmware Update" -msgstr "Aktualizace firmwaru" +msgstr "固件升级" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:137 msgctxt "@label" msgid "Updating firmware." -msgstr "Aktualizuji firmware." +msgstr "更新固件中..." #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:139 msgctxt "@label" msgid "Firmware update completed." -msgstr "Aktualizace firmwaru kompletní." +msgstr "固件更新已完成。" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:141 msgctxt "@label" msgid "Firmware update failed due to an unknown error." -msgstr "Aktualizace firmwaru selhala kvůli neznámému problému." +msgstr "由于未知错误,固件更新失败。" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:143 msgctxt "@label" msgid "Firmware update failed due to an communication error." -msgstr "Aktualizace firmwaru selhala kvůli chybě v komunikaci." +msgstr "由于通信错误,导致固件升级失败。" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:145 msgctxt "@label" msgid "Firmware update failed due to an input/output error." -msgstr "Aktualizace firmwaru selhala kvůli chybě vstupu / výstupu." +msgstr "由于输入/输出错误,导致固件升级失败。" #: /Users/c.lamboo/ultimaker/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:147 msgctxt "@label" msgid "Firmware update failed due to missing firmware." -msgstr "Aktualizace firmwaru selhala kvůli chybějícímu firmwaru." +msgstr "由于固件丢失,导致固件升级失败。" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:18 #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:47 msgctxt "@label" msgid "Color scheme" -msgstr "Barevné schéma" +msgstr "颜色方案" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:104 msgctxt "@label:listbox" msgid "Material Color" -msgstr "Barva materiálu" +msgstr "材料颜色" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:108 msgctxt "@label:listbox" msgid "Line Type" -msgstr "Typ úsečky" +msgstr "走线类型" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:112 msgctxt "@label:listbox" msgid "Speed" -msgstr "Rychlost" +msgstr "速度" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:116 msgctxt "@label:listbox" msgid "Layer Thickness" -msgstr "Tloušťka vrstvy" +msgstr "层厚度" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:120 msgctxt "@label:listbox" msgid "Line Width" -msgstr "Šířka čáry" +msgstr "走线宽度" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:124 msgctxt "@label:listbox" msgid "Flow" -msgstr "Průtok" +msgstr "流量" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:164 msgctxt "@label" msgid "Compatibility Mode" -msgstr "Mód kompatibility" +msgstr "兼容模式" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:231 msgctxt "@label" msgid "Travels" -msgstr "Cesty" +msgstr "空驶" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:237 msgctxt "@label" msgid "Helpers" -msgstr "Pomocníci" +msgstr "打印辅助结构" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:243 msgctxt "@label" msgid "Shell" -msgstr "Shell" +msgstr "外壳" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:249 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:74 msgctxt "@label" msgid "Infill" -msgstr "Výplň" +msgstr "填充" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:257 msgctxt "@label" msgid "Starts" -msgstr "Začátky" +msgstr "开始" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:304 msgctxt "@label" msgid "Only Show Top Layers" -msgstr "Zobrazit jen vrchní vrstvy" +msgstr "只显示顶层" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:313 msgctxt "@label" msgid "Show 5 Detailed Layers On Top" -msgstr "Zobrazit 5 podrobných vrstev nahoře" +msgstr "在顶部显示 5 层打印细节" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:326 msgctxt "@label" msgid "Top / Bottom" -msgstr "Nahoře / Dole" +msgstr "顶 / 底层" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:330 msgctxt "@label" msgid "Inner Wall" -msgstr "Vnitřní stěna" +msgstr "内壁" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:397 msgctxt "@label" msgid "min" -msgstr "min" +msgstr "最小" #: /Users/c.lamboo/ultimaker/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:462 msgctxt "@label" msgid "max" -msgstr "max" +msgstr "最大" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/SearchBar.qml:17 msgctxt "@placeholder" msgid "Search" -msgstr "Hledat" +msgstr "搜索" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:84 msgctxt "@label" -msgid "" -"This setting is not used because all the settings that it influences are " -"overridden." -msgstr "Toto nastavení se nepoužívá, protože všechna nastavení, která ovlivňuje, jsou přepsána." +msgid "This setting is not used because all the settings that it influences are overridden." +msgstr "未使用此设置,因为受其影响的所有设置均已覆盖。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:89 msgctxt "@label Header for list of settings." msgid "Affects" -msgstr "Ovlivňuje" +msgstr "影响" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:94 msgctxt "@label Header for list of settings." msgid "Affected By" -msgstr "Ovlivněno" +msgstr "受影响项目" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:190 msgctxt "@label" -msgid "" -"This setting is always shared between all extruders. Changing it here will " -"change the value for all extruders." -msgstr "Toto nastavení je vždy sdíleno všemi extrudéry. Jeho změnou se změní hodnota všech extruderů." +msgid "This setting is always shared between all extruders. Changing it here will change the value for all extruders." +msgstr "此设置始终在所有挤出机之间共享。在此处更改它将改变所有挤出机的值。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:194 msgctxt "@label" msgid "This setting is resolved from conflicting extruder-specific values:" -msgstr "Toto nastavení je vyřešeno z konfliktních hodnot specifického extruder:" +msgstr "此设置与挤出器特定值不同:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:234 msgctxt "@label" @@ -3636,2017 +3495,1953 @@ msgid "" "This setting has a value that is different from the profile.\n" "\n" "Click to restore the value of the profile." -msgstr "Toto nastavení má jinou hodnotu než profil.\n\nKlepnutím obnovíte hodnotu profilu." +msgstr "" +"此设置的值与配置文件不同。\n" +"\n" +"单击以恢复配置文件的值。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingItem.qml:334 msgctxt "@label" msgid "" -"This setting is normally calculated, but it currently has an absolute value " -"set.\n" +"This setting is normally calculated, but it currently has an absolute value set.\n" "\n" "Click to restore the calculated value." -msgstr "Toto nastavení se obvykle počítá, ale v současné době je nastavena absolutní hodnota.\n\nKlepnutím obnovíte vypočítanou hodnotu." +msgstr "" +"此设置通常可被自动计算,但其当前已被绝对定义。\n" +"\n" +"单击以恢复自动计算的值。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:48 msgctxt "@label:textbox" msgid "Search settings" -msgstr "Prohledat nastavení" +msgstr "搜索设置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:395 msgctxt "@action:menu" msgid "Copy value to all extruders" -msgstr "Kopírovat hodnotu na všechny extrudery" +msgstr "将值复制到所有挤出机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:404 msgctxt "@action:menu" msgid "Copy all changed values to all extruders" -msgstr "Kopírovat všechny změněné hodnoty na všechny extrudery" +msgstr "将所有修改值复制到所有挤出机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:440 msgctxt "@action:menu" msgid "Hide this setting" -msgstr "Schovat toto nastavení" +msgstr "隐藏此设置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:453 msgctxt "@action:menu" msgid "Don't show this setting" -msgstr "Neukazovat toto nastavení" +msgstr "不再显示此设置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:457 msgctxt "@action:menu" msgid "Keep this setting visible" -msgstr "Nechat toto nastavení viditelné" +msgstr "保持此设置可见" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingView.qml:476 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:467 msgctxt "@action:menu" msgid "Configure setting visibility..." -msgstr "Konfigurovat viditelnost nastavení..." +msgstr "配置设定可见性..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Settings/SettingCategory.qml:115 msgctxt "@label" msgid "" -"Some hidden settings use values different from their normal calculated " -"value.\n" +"Some hidden settings use values different from their normal calculated value.\n" "\n" "Click to make these settings visible." -msgstr "Některá skrytá nastavení používají hodnoty odlišné od jejich normální vypočtené hodnoty.\n\nKlepnutím toto nastavení zviditelníte." +msgstr "" +"一些隐藏设置正在使用有别于一般设置的计算值。\n" +"\n" +"单击以使这些设置可见。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MainWindow/MainWindowHeader.qml:135 msgctxt "@action:button" msgid "Marketplace" -msgstr "Obchod" +msgstr "市场" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MainWindow/ApplicationMenu.qml:63 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:13 msgctxt "@title:menu menubar:toplevel" msgid "&Settings" -msgstr "Nasta&vení" +msgstr "设置(&S)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MainWindow/ApplicationMenu.qml:87 msgctxt "@title:window" msgid "New project" -msgstr "Nový projekt" +msgstr "新建项目" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MainWindow/ApplicationMenu.qml:88 msgctxt "@info:question" -msgid "" -"Are you sure you want to start a new project? This will clear the build " -"plate and any unsaved settings." -msgstr "Are you sure you want to start a new project? This will clear the build plate and any unsaved settings." +msgid "Are you sure you want to start a new project? This will clear the build plate and any unsaved settings." +msgstr "你确定要开始一个新项目吗?这将清除打印平台及任何未保存的设置。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:13 msgctxt "@title:tab" msgid "Setting Visibility" -msgstr "Nastavení zobrazení" +msgstr "设置可见性" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:24 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:134 msgctxt "@action:button" msgid "Defaults" -msgstr "Výchozí" +msgstr "默认" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:55 msgctxt "@label:textbox" msgid "Check all" -msgstr "Zkontrolovat vše" +msgstr "全部勾选" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:18 msgctxt "@title:window" msgid "Sync materials with printers" -msgstr "Synchronizovat materiály s tiskárnami" +msgstr "匹配材料和打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:49 msgctxt "@title:header" msgid "Sync materials with printers" -msgstr "Synchronizovat materiály s tiskárnami" +msgstr "匹配材料和打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:55 msgctxt "@text" -msgid "" -"Following a few simple steps, you will be able to synchronize all your " -"material profiles with your printers." -msgstr "Následováním několika jednoduchých kroků budete moci synchronizovat všechny vaše materiálové profily s vašimi tiskárnami." +msgid "Following a few simple steps, you will be able to synchronize all your material profiles with your printers." +msgstr "只需遵循几个简单步骤,您就可以将所有材料配置文件与打印机同步。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:77 msgctxt "@button" msgid "Why do I need to sync material profiles?" -msgstr "K čemu je dobrá synchronizace materiálových profilů?" +msgstr "为什么需要同步材料配置文件?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:86 msgctxt "@button" msgid "Start" -msgstr "Začít" +msgstr "开始" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:144 msgctxt "@title:header" msgid "Sign in" -msgstr "Přihlásit se" +msgstr "登录" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:150 msgctxt "@text" -msgid "" -"To automatically sync the material profiles with all your printers connected " -"to Digital Factory you need to be signed in in Cura." -msgstr "Pro automatickou synchronizaci materiálových profilů se všemi vašimi tiskárnami připojenými k Digital Factory musíte být přihlášení v Cuře." +msgid "To automatically sync the material profiles with all your printers connected to Digital Factory you need to be signed in in Cura." +msgstr "要自动将材料配置文件与连接到 Digital Factory 的所有打印机同步,您需要登录 Cura。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:174 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:462 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:602 msgctxt "@button" msgid "Sync materials with USB" -msgstr "Synchronizovat materiály pomocí USB" +msgstr "使用 USB 同步材料" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:207 msgctxt "@title:header" msgid "The following printers will receive the new material profiles:" -msgstr "Následující tiskárny získají nové materiálové profily:" +msgstr "以下打印机将收到新的材料配置文件:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:214 msgctxt "@title:header" msgid "Something went wrong when sending the materials to the printers." -msgstr "Při odesílání materiálů do tiskáren se něco nepodařilo." +msgstr "向打印机发送材料时出错。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:221 msgctxt "@title:header" msgid "Material profiles successfully synced with the following printers:" -msgstr "Materiálové profily byly úspěšně synchronizovány s následujícími tiskárnami:" +msgstr "材料配置文件与以下打印机成功同步:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:258 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:445 msgctxt "@button" msgid "Troubleshooting" -msgstr "Podpora při problémech" +msgstr "故障排除" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:422 msgctxt "@text Asking the user whether printers are missing in a list." msgid "Printers missing?" -msgstr "Chybí tiskárny?" +msgstr "缺少打印机?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:424 msgctxt "@text" -msgid "" -"Make sure all your printers are turned ON and connected to Digital Factory." -msgstr "Ujistěte se, že jsou všechny vaše tiskárny zapnuté a připojené k Digital Factory." +msgid "Make sure all your printers are turned ON and connected to Digital Factory." +msgstr "请确保所有打印机都已打开并连接到 Digital Factory。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:433 msgctxt "@button" msgid "Refresh List" -msgstr "Obnovit seznam" +msgstr "刷新列表" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:473 msgctxt "@button" msgid "Try again" -msgstr "Zkusit znovu" +msgstr "再试一次" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:477 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:712 msgctxt "@button" msgid "Done" -msgstr "Hotovo" +msgstr "完成" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:479 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:622 msgctxt "@button" msgid "Sync" -msgstr "Synchronizovat" +msgstr "同步" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:535 msgctxt "@button" msgid "Syncing" -msgstr "Synchronizuji" +msgstr "正在同步" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:553 msgctxt "@title:header" msgid "No printers found" -msgstr "Nenalezeny žádné tiskárny" +msgstr "未找到打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:574 msgctxt "@text" -msgid "" -"It seems like you don't have any compatible printers connected to Digital " -"Factory. Make sure your printer is connected and it's running the latest " -"firmware." -msgstr "Zdá se, že nemáte žádné kompatibilní tiskárny připojené k Digital Factory. Ujistěte se, že je vaše tiskárna připojena a používá nejnovější firmware." +msgid "It seems like you don't have any compatible printers connected to Digital Factory. Make sure your printer is connected and it's running the latest firmware." +msgstr "您似乎没有任何兼容打印机连接到 Digital Factory。请确保打印机已连接并运行最新固件。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:585 msgctxt "@button" msgid "Learn how to connect your printer to Digital Factory" -msgstr "Zjistěte, jak připojit vaši tiskárnu k Digital Factory" +msgstr "了解如何将打印机连接到 Digital Factory" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:613 msgctxt "@button" msgid "Refresh" -msgstr "Obnovit" +msgstr "刷新" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:642 msgctxt "@title:header" msgid "Sync material profiles via USB" -msgstr "Synchronizovat materiálové profily přes USB" +msgstr "通过 USB 同步材料配置文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:648 -msgctxt "" -"@text In the UI this is followed by a list of steps the user needs to take." -msgid "" -"Follow the following steps to load the new material profiles to your printer." -msgstr "Následujte tyto kroky, abyste nahráli nové materiálové profily do vaší tiskárny." +msgctxt "@text In the UI this is followed by a list of steps the user needs to take." +msgid "Follow the following steps to load the new material profiles to your printer." +msgstr "请遵循以下步骤将新材料配置文件加载到打印机。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:679 msgctxt "@text" msgid "Click the export material archive button." -msgstr "Klikněte na tlačítko \"Exportovat archiv s materiálem\"." +msgstr "单击导出材料存档按钮。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:680 msgctxt "@text" msgid "Save the .umm file on a USB stick." -msgstr "Uložte soubor .umm na USB úložiště." +msgstr "将 .umm文件保存到 U 盘。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:681 msgctxt "@text" -msgid "" -"Insert the USB stick into your printer and launch the procedure to load new " -"material profiles." -msgstr "Připojte USB úložiště k vaší tiskárně a spusťte proceduru pro nahrání nových materiálových profilů." +msgid "Insert the USB stick into your printer and launch the procedure to load new material profiles." +msgstr "将 U 盘插入打印机,并启动程序以加载新材料配置文件。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:689 msgctxt "@button" msgid "How to load new material profiles to my printer" -msgstr "Jak nahrát nové materiálové profily do mé tiskárny" +msgstr "如何将新材料配置文件加载到打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:703 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:299 msgctxt "@button" msgid "Back" -msgstr "Zpět" +msgstr "返回" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:712 msgctxt "@button" msgid "Export material archive" -msgstr "Exportovat archiv s materiálem" +msgstr "导出材料存档" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml:747 msgctxt "@title:window" msgid "Export All Materials" -msgstr "Exportovat všechny materiály" +msgstr "导出所有材料" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:121 msgctxt "@title:window" msgid "Confirm Diameter Change" -msgstr "Potvrdit změnu průměru" +msgstr "确认直径更改" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:122 msgctxt "@label (%1 is a number)" -msgid "" -"The new filament diameter is set to %1 mm, which is not compatible with the " -"current extruder. Do you wish to continue?" -msgstr "Nový průměr vlákna je nastaven na %1 mm, což není kompatibilní s aktuálním extrudérem. Přejete si pokračovat?" +msgid "The new filament diameter is set to %1 mm, which is not compatible with the current extruder. Do you wish to continue?" +msgstr "新的灯丝直径被设置为%1毫米,这与当前的挤出机不兼容。你想继续吗?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:152 msgctxt "@label" msgid "Display Name" -msgstr "Jméno" +msgstr "显示名称" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:171 msgctxt "@label" msgid "Brand" -msgstr "Značka" +msgstr "品牌" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:190 msgctxt "@label" msgid "Material Type" -msgstr "Typ materiálu" +msgstr "材料类型" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:210 msgctxt "@label" msgid "Color" -msgstr "Barva" +msgstr "颜色" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:262 msgctxt "@title" msgid "Material color picker" -msgstr "Volba barvy materiálu" +msgstr "材料颜色选取器" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:275 msgctxt "@label" msgid "Properties" -msgstr "Vlastnosti" +msgstr "属性" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:286 msgctxt "@label" msgid "Density" -msgstr "Husttoa" +msgstr "密度" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:319 msgctxt "@label" msgid "Diameter" -msgstr "Průměr" +msgstr "直径" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:369 msgctxt "@label" msgid "Filament Cost" -msgstr "Cena filamentu" +msgstr "耗材成本" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:401 msgctxt "@label" msgid "Filament weight" -msgstr "Váha filamentu" +msgstr "耗材重量" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:433 msgctxt "@label" msgid "Filament length" -msgstr "Délka filamentu" +msgstr "耗材长度" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:451 msgctxt "@label" msgid "Cost per Meter" -msgstr "Cena za metr" +msgstr "每米成本" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:465 msgctxt "@label" msgid "This material is linked to %1 and shares some of its properties." -msgstr "Tento materiál je propojen s %1 a sdílí některé jeho vlastnosti." +msgstr "此材料与 %1 相关联,并共享其某些属性。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:472 msgctxt "@label" msgid "Unlink Material" -msgstr "Zrušit propojení s materiálem" +msgstr "解绑材料" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:485 msgctxt "@label" msgid "Description" -msgstr "Popis" +msgstr "描述" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:503 msgctxt "@label" msgid "Adhesion Information" -msgstr "Informace o adhezi" +msgstr "粘附信息" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:642 msgctxt "@title" msgid "Information" -msgstr "Informace" +msgstr "信息" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:647 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedPrintSetup.qml:82 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:18 msgctxt "@label" msgid "Print settings" -msgstr "Nastavení tisku" +msgstr "打印设置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:70 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:468 msgctxt "@title:tab" msgid "Materials" -msgstr "Materiály" +msgstr "材料" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:72 msgctxt "@label" msgid "Materials compatible with active printer:" -msgstr "Materiály kompatibilní s aktivní tiskárnou:" +msgstr "与处于活动状态的打印机兼容的材料:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:78 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:94 msgctxt "@action:button" msgid "Create new" -msgstr "Vytvořit nový" +msgstr "新建" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:90 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:88 msgctxt "@action:button" msgid "Import" -msgstr "Import" +msgstr "导入" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:101 msgctxt "@action:button" msgid "Sync with Printers" -msgstr "Synchronizovat s tiskárnami" +msgstr "与打印机同步" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:160 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:142 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:294 msgctxt "@action:button" msgid "Activate" -msgstr "Aktivovat" +msgstr "激活" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:174 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:311 msgctxt "@action:button" msgid "Duplicate" -msgstr "Duplikovat" +msgstr "复制" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:198 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:342 msgctxt "@action:button" msgid "Export" -msgstr "Export" +msgstr "导出" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:212 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:392 msgctxt "@title:window" msgid "Confirm Remove" -msgstr "Potvrdit odstranění" +msgstr "确认删除" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:215 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:393 msgctxt "@label (%1 is object name)" msgid "Are you sure you wish to remove %1? This cannot be undone!" -msgstr "Doopravdy chcete odstranit %1? Toto nelze vrátit zpět!" +msgstr "您确认要删除 %1?该操作无法恢复!" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:228 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:238 msgctxt "@title:window" msgid "Import Material" -msgstr "Importovat materiál" +msgstr "导入配置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:242 msgctxt "@info:status Don't translate the XML tag !" msgid "Successfully imported material %1" -msgstr "Úspěšně importován materiál %1" +msgstr "成功导入材料 %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:245 msgctxt "@info:status Don't translate the XML tags or !" -msgid "" -"Could not import material %1: %2" -msgstr "Nelze importovat materiál %1: %2" +msgid "Could not import material %1: %2" +msgstr "无法导入材料 %1%2" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:256 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:267 msgctxt "@title:window" msgid "Export Material" -msgstr "Exportovat materiál" +msgstr "导出材料" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:272 msgctxt "@info:status Don't translate the XML tags and !" -msgid "" -"Failed to export material to %1: %2" -msgstr "Neúspěch při exportu materiálu do %1: %2" +msgid "Failed to export material to %1: %2" +msgstr "无法导出材料至 %1%2" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:275 msgctxt "@info:status Don't translate the XML tag !" msgid "Successfully exported material to %1" -msgstr "Úspěšné exportování materiálu do %1" +msgstr "成功导出材料至: %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityItem.qml:56 msgctxt "@item:tooltip" -msgid "" -"This setting has been hidden by the active machine and will not be visible." -msgstr "Toto nastavení bylo skryto aktivním zařízením a nebude viditelné." +msgid "This setting has been hidden by the active machine and will not be visible." +msgstr "该设置已被当前机器所隐藏并不可见。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/SettingVisibilityItem.qml:73 msgctxt "@item:tooltip %1 is list of setting names" -msgid "" -"This setting has been hidden by the value of %1. Change the value of that " -"setting to make this setting visible." -msgid_plural "" -"This setting has been hidden by the values of %1. Change the values of those " -"settings to make this setting visible." -msgstr[0] "Toto nastavení bylo skryto hodnotou nastavení %1. Změňte hodnotu toho nastavení, aby bylo toto znovu viditelné." +msgid "This setting has been hidden by the value of %1. Change the value of that setting to make this setting visible." +msgid_plural "This setting has been hidden by the values of %1. Change the values of those settings to make this setting visible." +msgstr[0] "该设置已被 %1 的值所隐藏,若需显示,更改此值可使设置项重新可见。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:14 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:461 msgctxt "@title:tab" msgid "General" -msgstr "Obecné" +msgstr "基本" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:172 msgctxt "@label" msgid "Interface" -msgstr "Rozhranní" +msgstr "接口" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:215 msgctxt "@heading" msgid "-- incomplete --" -msgstr "-- nekompletní --" +msgstr "-- 不完整 --" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:261 msgctxt "@label" msgid "Currency:" -msgstr "Měna:" +msgstr "币种:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:277 -msgctxt "" -"@label: Please keep the asterix, it's to indicate that a restart is needed." +msgctxt "@label: Please keep the asterix, it's to indicate that a restart is needed." msgid "Theme*:" -msgstr "Styl*:" +msgstr "主题*:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:323 msgctxt "@info:tooltip" msgid "Slice automatically when changing settings." -msgstr "Slicovat automaticky při změně nastavení." +msgstr "当设置被更改时自动进行切片。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:331 msgctxt "@option:check" msgid "Slice automatically" -msgstr "Slicovat automaticky" +msgstr "自动切片" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:340 msgctxt "@info:tooltip" msgid "Show an icon and notifications in the system notification area." -msgstr "在系统通知区域中显示图标和通知。" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:348 msgctxt "@option:check" msgid "Add icon to system tray *" -msgstr "在系统托盘中添加图标 *" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:357 msgctxt "@label" -msgid "" -"*You will need to restart the application for these changes to have effect." -msgstr "*Aby se tyto změny projevily, budete muset aplikaci restartovat." +msgid "*You will need to restart the application for these changes to have effect." +msgstr "*需重新启动该应用程序,这些更改才能生效。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:373 msgctxt "@label" msgid "Viewport behavior" -msgstr "Chování výřezu" +msgstr "视区行为" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:381 msgctxt "@info:tooltip" -msgid "" -"Highlight unsupported areas of the model in red. Without support these areas " -"will not print properly." -msgstr "Zvýraznit červeně místa modelu bez podpor. Bez podpor tyto místa nebudou správně vytisknuta." +msgid "Highlight unsupported areas of the model in red. Without support these areas will not print properly." +msgstr "以红色突出显示模型需要增加支撑结构的区域。没有支撑,这些区域将无法正确打印。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:390 msgctxt "@option:check" msgid "Display overhang" -msgstr "Zobrazit převis" +msgstr "显示悬垂(Overhang)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:400 msgctxt "@info:tooltip" -msgid "" -"Highlight missing or extraneous surfaces of the model using warning signs. " -"The toolpaths will often be missing parts of the intended geometry." -msgstr "Zvýraznit chybějící nebo vedlejší povrchy modelu pomocí varovných značek. Dráhám nástrojů budou často chybět části zamýšlené geometrie." +msgid "Highlight missing or extraneous surfaces of the model using warning signs. The toolpaths will often be missing parts of the intended geometry." +msgstr "使用警告标志突出显示模型缺少或多余的表面。刀具路径常常是要打印的几何结构缺少的部分。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:409 msgctxt "@option:check" msgid "Display model errors" -msgstr "Zobrazovat chyby modelu" +msgstr "显示模型错误" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:417 msgctxt "@info:tooltip" -msgid "" -"Moves the camera so the model is in the center of the view when a model is " -"selected" -msgstr "Při výběru modelu pohybuje kamerou tak, aby byl model ve středu pohledu" +msgid "Moves the camera so the model is in the center of the view when a model is selected" +msgstr "当模型被选中时,视角将自动调整到最合适的观察位置(模型处于正中央)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:422 msgctxt "@action:button" msgid "Center camera when item is selected" -msgstr "Vycentrovat kameru pokud je vybrána položka" +msgstr "当项目被选中时,自动对中视角" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:432 msgctxt "@info:tooltip" msgid "Should the default zoom behavior of cura be inverted?" -msgstr "Mělo by být výchozí chování přiblížení u cury invertováno?" +msgstr "需要令 Cura 的默认缩放操作反转吗?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:437 msgctxt "@action:button" msgid "Invert the direction of camera zoom." -msgstr "Obrátit směr přibližování kamery." +msgstr "反转视角变焦方向。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:453 msgctxt "@info:tooltip" msgid "Should zooming move in the direction of the mouse?" -msgstr "Mělo by se přibližování pohybovat ve směru myši?" +msgstr "是否跟随鼠标方向进行缩放?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:453 msgctxt "@info:tooltip" -msgid "" -"Zooming towards the mouse is not supported in the orthographic perspective." -msgstr "V pravoúhlé perspektivě není podporováno přiblížení směrem k myši." +msgid "Zooming towards the mouse is not supported in the orthographic perspective." +msgstr "正交透视不支持通过鼠标进行缩放。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:458 msgctxt "@action:button" msgid "Zoom toward mouse direction" -msgstr "Přiblížit směrem k směru myši" +msgstr "跟随鼠标方向缩放" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:484 msgctxt "@info:tooltip" -msgid "" -"Should models on the platform be moved so that they no longer intersect?" -msgstr "Měly by se modely na platformě pohybovat tak, aby se již neprotínaly?" +msgid "Should models on the platform be moved so that they no longer intersect?" +msgstr "需要移动平台上的模型,使它们不再相交吗?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:489 msgctxt "@option:check" msgid "Ensure models are kept apart" -msgstr "Zajistěte, aby modely byly odděleny" +msgstr "确保每个模型都保持分离" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:498 msgctxt "@info:tooltip" msgid "Should models on the platform be moved down to touch the build plate?" -msgstr "Měly by být modely na platformě posunuty dolů tak, aby se dotýkaly podložky?" +msgstr "需要转动模型,使它们接触打印平台吗?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:503 msgctxt "@option:check" msgid "Automatically drop models to the build plate" -msgstr "Automaticky přetáhnout modely na podložku" +msgstr "自动下降模型到打印平台" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:515 msgctxt "@info:tooltip" msgid "Show caution message in g-code reader." -msgstr "Zobrazte v čtečce g-kódu varovnou zprávu." +msgstr "在 G-code 读取器中显示警告信息。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:524 msgctxt "@option:check" msgid "Caution message in g-code reader" -msgstr "Upozornění ve čtečce G-kódu" +msgstr "G-code 读取器中的警告信息" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:532 msgctxt "@info:tooltip" msgid "Should layer be forced into compatibility mode?" -msgstr "Měla by být vrstva vynucena do režimu kompatibility?" +msgstr "层视图要强制进入兼容模式吗?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:537 msgctxt "@option:check" msgid "Force layer view compatibility mode (restart required)" -msgstr "Vynutit režim kompatibility zobrazení vrstev (vyžaduje restart)" +msgstr "强制层视图兼容模式(需要重新启动)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:547 msgctxt "@info:tooltip" msgid "Should Cura open at the location it was closed?" -msgstr "Měla by se Cura otevřít v místě, kde byla uzavřena?" +msgstr "Cura 是否应该在关闭的位置打开?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:552 msgctxt "@option:check" msgid "Restore window position on start" -msgstr "Při zapnutí obnovit pozici okna" +msgstr "恢复初始窗口位置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:562 msgctxt "@info:tooltip" msgid "What type of camera rendering should be used?" -msgstr "Jaký typ kamery by se měl použít?" +msgstr "应使用哪种类型的摄像头进行渲染?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:569 msgctxt "@window:text" msgid "Camera rendering:" -msgstr "Vykreslování kamery:" +msgstr "摄像头渲染:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:576 msgid "Perspective" -msgstr "Perspektiva" +msgstr "透视" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:577 msgid "Orthographic" -msgstr "Ortografický" +msgstr "正交" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:617 msgctxt "@label" msgid "Opening and saving files" -msgstr "Otevírám a ukládám soubory" +msgstr "打开并保存文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:624 msgctxt "@info:tooltip" -msgid "" -"Should opening files from the desktop or external applications open in the " -"same instance of Cura?" -msgstr "Měli by se soubory z plochy, nebo externích aplikací otevírat ve stejné instanci Cury?" +msgid "Should opening files from the desktop or external applications open in the same instance of Cura?" +msgstr "应从桌面打开文件还是在同一 Cura 实例中打开外部应用程序?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:629 msgctxt "@option:check" msgid "Use a single instance of Cura" -msgstr "Používat pouze jednu instanci programu Cura" +msgstr "使用单个 Cura 实例" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:640 msgctxt "@info:tooltip" -msgid "" -"Should the build plate be cleared before loading a new model in the single " -"instance of Cura?" -msgstr "Má být podložka vyčištěna před načtením nového modelu v jediné instanci Cury?" +msgid "Should the build plate be cleared before loading a new model in the single instance of Cura?" +msgstr "是否应在清理构建板后再将新模型加载到单个 Cura 实例中?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:646 msgctxt "@option:check" msgid "Clear buildplate before loading model into the single instance" -msgstr "Vyčistit podložku před načtením modelu do jediné instance" +msgstr "在清理构建板后再将模型加载到单个实例中" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:656 msgctxt "@info:tooltip" msgid "Should models be scaled to the build volume if they are too large?" -msgstr "Měly by být modely upraveny na velikost podložky, pokud jsou příliš velké?" +msgstr "当模型的尺寸过大时,是否将模型自动缩小至成形空间体积?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:661 msgctxt "@option:check" msgid "Scale large models" -msgstr "Škálovat velké modely" +msgstr "缩小过大模型" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:671 msgctxt "@info:tooltip" -msgid "" -"An model may appear extremely small if its unit is for example in meters " -"rather than millimeters. Should these models be scaled up?" -msgstr "Model se může jevit velmi malý, pokud je jeho jednotka například v metrech, nikoli v milimetrech. Měly by být tyto modely škálovány?" +msgid "An model may appear extremely small if its unit is for example in meters rather than millimeters. Should these models be scaled up?" +msgstr "当模型以米而不是毫米为单位时,模型可能会在打印平台中显得非常小。在此情况下是否进行放大?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:676 msgctxt "@option:check" msgid "Scale extremely small models" -msgstr "Škálovat extrémně malé modely" +msgstr "放大过小模型" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:686 msgctxt "@info:tooltip" msgid "Should models be selected after they are loaded?" -msgstr "Měly by být modely vybrány po načtení?" +msgstr "模型是否应该在加载后被选中?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:691 msgctxt "@option:check" msgid "Select models when loaded" -msgstr "Vybrat modely po načtení" +msgstr "选择模型时加载" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:701 msgctxt "@info:tooltip" -msgid "" -"Should a prefix based on the printer name be added to the print job name " -"automatically?" -msgstr "Je třeba k názvu tiskové úlohy přidat předponu založenou na názvu tiskárny automaticky?" +msgid "Should a prefix based on the printer name be added to the print job name automatically?" +msgstr "打印机名是否自动作为打印作业名称的前缀?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:706 msgctxt "@option:check" msgid "Add machine prefix to job name" -msgstr "Přidat předponu zařízení před název úlohy" +msgstr "将机器前缀添加到作业名称中" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:716 msgctxt "@info:tooltip" msgid "Should a summary be shown when saving a project file?" -msgstr "Mělo by se při ukládání souboru projektu zobrazit souhrn?" +msgstr "保存项目文件时是否显示摘要?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:720 msgctxt "@option:check" msgid "Show summary dialog when saving project" -msgstr "Zobrazit souhrnný dialog při ukládání projektu" +msgstr "保存项目时显示摘要对话框" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:730 msgctxt "@info:tooltip" msgid "Default behavior when opening a project file" -msgstr "Výchozí chování při otevírání souboru" +msgstr "打开项目文件时的默认行为" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:738 msgctxt "@window:text" msgid "Default behavior when opening a project file: " -msgstr "Výchozí chování při otevření souboru s projektem: " +msgstr "打开项目文件时的默认行为: " #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:753 msgctxt "@option:openProject" msgid "Always ask me this" -msgstr "Vždy se zeptat" +msgstr "总是询问" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:754 msgctxt "@option:openProject" msgid "Always open as a project" -msgstr "Vždy otevírat jako projekt" +msgstr "始终作为一个项目打开" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:755 msgctxt "@option:openProject" msgid "Always import models" -msgstr "Vždy importovat modely" +msgstr "始终导入模型" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:792 msgctxt "@info:tooltip" -msgid "" -"When you have made changes to a profile and switched to a different one, a " -"dialog will be shown asking whether you want to keep your modifications or " -"not, or you can choose a default behaviour and never show that dialog again." -msgstr "Pokud jste provedli změny v profilu a přepnuli na jiný, zobrazí se dialogové okno s dotazem, zda si přejete zachovat své modifikace nebo ne, nebo si můžete" -" zvolit výchozí chování a už nikdy toto dialogové okno nezobrazovat." +msgid "When you have made changes to a profile and switched to a different one, a dialog will be shown asking whether you want to keep your modifications or not, or you can choose a default behaviour and never show that dialog again." +msgstr "当您对配置文件进行更改并切换到其他配置文件时将显示一个对话框,询问您是否要保留修改。您也可以选择一个默认行为并令其不再显示该对话框。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:801 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedPrintSetup.qml:36 msgctxt "@label" msgid "Profiles" -msgstr "Profily" +msgstr "配置文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:806 msgctxt "@window:text" -msgid "" -"Default behavior for changed setting values when switching to a different " -"profile: " -msgstr "Výchozí chování pro změněné hodnoty nastavení při přepnutí na jiný profil: " +msgid "Default behavior for changed setting values when switching to a different profile: " +msgstr "切换到不同配置文件时对设置值更改的默认操作: " #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:820 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:115 msgctxt "@option:discardOrKeep" msgid "Always ask me this" -msgstr "Vždy se zeptat" +msgstr "总是询问" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:821 msgctxt "@option:discardOrKeep" msgid "Always discard changed settings" -msgstr "Vždy smazat změněné nastavení" +msgstr "总是舍失更改的设置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:822 msgctxt "@option:discardOrKeep" msgid "Always transfer changed settings to new profile" -msgstr "Vždy přesunout nastavení do nového profilu" +msgstr "总是将更改的设置传输至新配置文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:856 msgctxt "@label" msgid "Privacy" -msgstr "Soukromí" +msgstr "隐私" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:862 msgctxt "@info:tooltip" -msgid "" -"Should anonymous data about your print be sent to Ultimaker? Note, no " -"models, IP addresses or other personally identifiable information is sent or " -"stored." -msgstr "Měla by být anonymní data o vašem tisku zaslána společnosti Ultimaker? Upozorňujeme, že nejsou odesílány ani ukládány žádné modely, adresy IP ani jiné" -" osobní údaje." +msgid "Should anonymous data about your print be sent to Ultimaker? Note, no models, IP addresses or other personally identifiable information is sent or stored." +msgstr "您愿意将关于您的打印数据以匿名形式发送到 Ultimaker 吗?注意:我们不会记录/发送任何模型、IP 地址或其他私人数据。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:867 msgctxt "@option:check" msgid "Send (anonymous) print information" -msgstr "Posílat (anonymní) informace o tisku" +msgstr "(匿名)发送打印信息" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:897 msgctxt "@label" msgid "Updates" -msgstr "Aktualizace" +msgstr "更新" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:904 msgctxt "@info:tooltip" msgid "Should Cura check for updates when the program is started?" -msgstr "Měla by Cura zkontrolovat aktualizace při spuštění programu?" +msgstr "当 Cura 启动时,是否自动检查更新?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:909 msgctxt "@option:check" msgid "Check for updates on start" -msgstr "Zkontrolovat aktualizace při zapnutí" +msgstr "启动时检查更新" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:925 msgctxt "@info:tooltip" msgid "When checking for updates, only check for stable releases." -msgstr "Při kontrole aktualizací kontrolovat pouze stabilní vydání." +msgstr "在检查更新时,只检查稳定版。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:931 msgctxt "@option:radio" msgid "Stable releases only" -msgstr "Pouze stabilní vydání" +msgstr "仅限稳定版" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:941 msgctxt "@info:tooltip" msgid "When checking for updates, check for both stable and for beta releases." -msgstr "Při kontrole aktualizací kontrolovat stabilní i beta vydání." +msgstr "在检查更新时,同时检查稳定版和测试版。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:947 msgctxt "@option:radio" msgid "Stable and Beta releases" -msgstr "Stabilní a beta vydání" +msgstr "稳定版和测试版" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:957 msgctxt "@info:tooltip" -msgid "" -"Should an automatic check for new plugins be done every time Cura is " -"started? It is highly recommended that you do not disable this!" -msgstr "Mají být při každém startu Cury automaticky kontrolovány nové moduly? Důrazně doporučujeme tuto možnost nevypínat!" +msgid "Should an automatic check for new plugins be done every time Cura is started? It is highly recommended that you do not disable this!" +msgstr "是否应在每次启动 Cura 时自动检查新插件?强烈建议您不要禁用此功能!" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:962 msgctxt "@option:check" msgid "Get notifications for plugin updates" -msgstr "Získávat oznámení o aktualizacích modulů" +msgstr "获取插件更新通知" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/RenameDialog.qml:22 msgctxt "@title:window" msgid "Rename" -msgstr "Přejmenovat" +msgstr "重命名" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/RenameDialog.qml:23 msgctxt "@info" msgid "Please provide a new name." -msgstr "Prosím uveďte nové jméno." +msgstr "请提供新名称。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:17 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:466 msgctxt "@title:tab" msgid "Printers" -msgstr "Tiskárny" +msgstr "打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:50 msgctxt "@action:button" msgid "Add New" -msgstr "Přidat" +msgstr "新增" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/MachinesPage.qml:154 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:331 msgctxt "@action:button" msgid "Rename" -msgstr "Přejmenovat" +msgstr "重命名" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:57 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:470 msgctxt "@title:tab" msgid "Profiles" -msgstr "Profily" +msgstr "配置文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:59 msgctxt "@label" msgid "Profiles compatible with active printer:" -msgstr "Profily kompatibilní s aktivní tiskárnou:" +msgstr "与处于活动状态的打印机兼容的配置文件:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:98 msgctxt "@action:tooltip" msgid "Create new profile from current settings/overrides" -msgstr "Vytvořit nový profil z aktuálních nastavení/přepsání" +msgstr "使用当前设置/重写值创建新的配置文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:125 msgctxt "@action:label" msgid "Some settings from current profile were overwritten." -msgstr "Některá nastavení z aktuálního profilu byla přepsána." +msgstr "当前配置文件的一些设置已经重写。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:140 msgctxt "@action:button" msgid "Update profile." -msgstr "Aktualizovat profil." +msgstr "更新配置文件。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:143 msgctxt "@action:tooltip" msgid "Update profile with current settings/overrides" -msgstr "Aktualizovat profil s aktuálními nastaveními/přepsáními" +msgstr "使用当前设置 / 重写值更新配置文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:148 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:256 msgctxt "@action:button" msgid "Discard current changes" -msgstr "Zrušit aktuální změny" +msgstr "舍弃当前更改" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:158 msgctxt "@action:label" -msgid "" -"This profile uses the defaults specified by the printer, so it has no " -"settings/overrides in the list below." -msgstr "Tento profil používá výchozí nastavení zadaná tiskárnou, takže nemá žádná nastavení / přepíše v níže uvedeném seznamu." +msgid "This profile uses the defaults specified by the printer, so it has no settings/overrides in the list below." +msgstr "此配置文件使用打印机指定的默认值,因此在下面的列表中没有此设置项。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:165 msgctxt "@action:label" msgid "Your current settings match the selected profile." -msgstr "Vaše aktuální nastavení odpovídá vybranému profilu." +msgstr "您当前的设置与选定的配置文件相匹配。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:175 msgctxt "@title:tab" msgid "Global Settings" -msgstr "Globální nastavení" +msgstr "全局设置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:278 msgctxt "@title:window" msgid "Create Profile" -msgstr "Vytvořit profil" +msgstr "创建配置文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:280 msgctxt "@info" msgid "Please provide a name for this profile." -msgstr "Prosím uveďte jméno pro tento profil." +msgstr "请为此配置文件提供名称。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:352 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:368 msgctxt "@title:window" msgid "Export Profile" -msgstr "Exportovat profil" +msgstr "导出配置文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:382 msgctxt "@title:window" msgid "Duplicate Profile" -msgstr "Duplikovat profil" +msgstr "复制配置文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:409 msgctxt "@title:window" msgid "Rename Profile" -msgstr "Přejmenovat profil" +msgstr "重命名配置文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:422 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/ProfilesPage.qml:429 msgctxt "@title:window" msgid "Import Profile" -msgstr "Importovat profil" +msgstr "导入配置文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewsSelector.qml:50 msgctxt "@label" msgid "View type" -msgstr "Typ pohledu" +msgstr "查看类型" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewOrientationControls.qml:25 msgctxt "@info:tooltip" msgid "3D View" -msgstr "3D Pohled" +msgstr "3D 视图" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewOrientationControls.qml:38 msgctxt "@info:tooltip" msgid "Front View" -msgstr "Přední pohled" +msgstr "正视图" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewOrientationControls.qml:51 msgctxt "@info:tooltip" msgid "Top View" -msgstr "Pohled seshora" +msgstr "顶视图" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewOrientationControls.qml:64 msgctxt "@info:tooltip" msgid "Left View" -msgstr "Pohled zleva" +msgstr "左视图" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ViewOrientationControls.qml:77 msgctxt "@info:tooltip" msgid "Right View" -msgstr "Pohled zprava" +msgstr "右视图" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectItemButton.qml:109 msgctxt "@label" msgid "Is printed as support." -msgstr "Je tisknuto jako podpora." +msgstr "打印为支撑。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectItemButton.qml:112 msgctxt "@label" msgid "Other models overlapping with this model are modified." -msgstr "Ostatní modely překrývající se s tímto modelem jsou upraveny." +msgstr "修改了与此模型重叠的其他模型。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectItemButton.qml:115 msgctxt "@label" msgid "Infill overlapping with this model is modified." -msgstr "Výplň překrývající se s tímto modelem byla modifikována." +msgstr "修改了与该模型重叠的填充。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectItemButton.qml:118 msgctxt "@label" msgid "Overlaps with this model are not supported." -msgstr "Přesahy na tomto modelu nejsou podporovány." +msgstr "不支持与此模型重叠。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectItemButton.qml:125 msgctxt "@label %1 is the number of settings it overrides." msgid "Overrides %1 setting." msgid_plural "Overrides %1 settings." -msgstr[0] "Přepíše %1 nastavení." +msgstr[0] "覆盖 %1 设置。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintMonitor.qml:156 msgctxt "@label" msgid "Active print" -msgstr "Aktivní tisk" +msgstr "正在打印" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintMonitor.qml:164 msgctxt "@label" msgid "Job Name" -msgstr "Název úlohy" +msgstr "作业名" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintMonitor.qml:172 msgctxt "@label" msgid "Printing Time" -msgstr "Čas tisku" +msgstr "打印时间" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintMonitor.qml:180 msgctxt "@label" msgid "Estimated time left" -msgstr "Předpokládaný zbývající čas" +msgstr "预计剩余时间" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkOrLocalPrinterContent.qml:24 msgctxt "@label" msgid "Add a printer" -msgstr "Přidat tiskárnu" +msgstr "添加打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkOrLocalPrinterContent.qml:38 msgctxt "@label" msgid "Add a networked printer" -msgstr "Přidat síťovou tiskárnu" +msgstr "添加已联网打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkOrLocalPrinterContent.qml:87 msgctxt "@label" msgid "Add a non-networked printer" -msgstr "Přidat ne-síťovou tiskárnu" +msgstr "添加未联网打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:28 msgctxt "@label" msgid "What's New" -msgstr "Co je nového" +msgstr "新增功能" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:203 msgctxt "@label" msgid "Manufacturer" -msgstr "Výrobce" +msgstr "制造商" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:214 msgctxt "@label" msgid "Profile author" -msgstr "Autor profilu" +msgstr "配置文件作者" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:226 msgctxt "@label" msgid "Printer name" -msgstr "Název tiskárny" +msgstr "打印机名称" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:232 msgctxt "@text" msgid "Please name your printer" -msgstr "Pojmenujte prosím svou tiskárnu" +msgstr "请为您的打印机命名" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/ChangelogContent.qml:24 msgctxt "@label" msgid "Release Notes" -msgstr "Poznámky k vydání" +msgstr "版本说明" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml:43 msgctxt "@label" msgid "There is no printer found over your network." -msgstr "Přes síť nebyla nalezena žádná tiskárna." +msgstr "未找到网络内打印机。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml:162 msgctxt "@label" msgid "Refresh" -msgstr "Obnovit" +msgstr "刷新" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml:173 msgctxt "@label" msgid "Add printer by IP" -msgstr "Přidat tiskárnu podle IP" +msgstr "按 IP 添加打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml:184 msgctxt "@label" msgid "Add cloud printer" -msgstr "Přidat cloudovou tiskárnu" +msgstr "添加云打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml:220 msgctxt "@label" msgid "Troubleshooting" -msgstr "Podpora při problémech" +msgstr "故障排除" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:64 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/GeneralOperations.qml:19 msgctxt "@label" msgid "Sign in to the Ultimaker platform" -msgstr "Přihlásit se do platformy Ultimaker" +msgstr "登录 Ultimaker 平台" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:123 msgctxt "@text" msgid "Add material settings and plugins from the Marketplace" -msgstr "Přidat nastavení materiálů a moduly z Obchodu" +msgstr "从 Marketplace 添加材料设置和插件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:149 msgctxt "@text" msgid "Backup and sync your material settings and plugins" -msgstr "Zálohovat a synchronizovat nastavení materiálů a moduly" +msgstr "备份和同步材料设置和插件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:175 msgctxt "@text" msgid "Share ideas and get help from 48,000+ users in the Ultimaker Community" -msgstr "Sdílejte nápady a získejte pomoc od více než 48 0000 uživatelů v Ultimaker komunitě" +msgstr "在 Ultimaker 社区分享观点并获取 48,000 多名用户的帮助" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:189 msgctxt "@button" msgid "Skip" -msgstr "Přeskočit" +msgstr "跳过" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/CloudContent.qml:201 msgctxt "@text" msgid "Create a free Ultimaker Account" -msgstr "Vytvořit účet Ultimaker zdarma" +msgstr "创建免费的 Ultimaker 帐户" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:24 msgctxt "@label" msgid "Help us to improve Ultimaker Cura" -msgstr "Pomožte nám zlepšovat Ultimaker Cura" +msgstr "帮助我们改进 Ultimaker Cura" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:56 msgctxt "@text" -msgid "" -"Ultimaker Cura collects anonymous data to improve print quality and user " -"experience, including:" -msgstr "Ultimaker Cura shromažďuje anonymní data za účelem zlepšení kvality tisku a uživatelského komfortu, včetně:" +msgid "Ultimaker Cura collects anonymous data to improve print quality and user experience, including:" +msgstr "为了改善打印质量和用户体验,Ultimaker Cura 会收集匿名数据,这些数据包括:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:68 msgctxt "@text" msgid "Machine types" -msgstr "Typy zařízení" +msgstr "机器类型" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:74 msgctxt "@text" msgid "Material usage" -msgstr "Použití materiálu" +msgstr "材料使用" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:80 msgctxt "@text" msgid "Number of slices" -msgstr "Počet sliců" +msgstr "切片数量" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:86 msgctxt "@text" msgid "Print settings" -msgstr "Nastavení tisku" +msgstr "打印设置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:99 msgctxt "@text" -msgid "" -"Data collected by Ultimaker Cura will not contain any personal information." -msgstr "Data shromážděná společností Ultimaker Cura nebudou obsahovat žádné osobní údaje." +msgid "Data collected by Ultimaker Cura will not contain any personal information." +msgstr "Ultimaker Cura 收集的数据不会包含任何个人信息。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:100 msgctxt "@text" msgid "More information" -msgstr "Více informací" +msgstr "更多信息" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/DropDownWidget.qml:93 msgctxt "@label" msgid "Empty" -msgstr "Prázdné" +msgstr "空" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:47 msgctxt "@label" msgid "Add a Cloud printer" -msgstr "Přidat Cloudovou tiskárnu" +msgstr "添加云打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:73 msgctxt "@label" msgid "Waiting for Cloud response" -msgstr "Čekám na odpověď od Cloudu" +msgstr "等待云响应" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:83 msgctxt "@label" msgid "No printers found in your account?" -msgstr "Žádné tiskárny nenalezeny ve vašem účtě?" +msgstr "在您的帐户中未找到任何打印机?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:117 msgctxt "@label" msgid "The following printers in your account have been added in Cura:" -msgstr "Následující tiskárny ve vašem účtě byla přidány do Cury:" +msgstr "您帐户中的以下打印机已添加到 Cura 中:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:186 msgctxt "@button" msgid "Add printer manually" -msgstr "Přidat tiskárnu manuálně" +msgstr "手动添加打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:23 msgctxt "@label" msgid "User Agreement" -msgstr "Uživatelská dohoda" +msgstr "用户协议" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:67 msgctxt "@button" msgid "Decline and close" -msgstr "Odmítnout a zavřít" +msgstr "拒绝并关闭" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:70 msgctxt "@label" msgid "Add printer by IP address" -msgstr "Přidat tiskárnu podle IP adresy" +msgstr "按 IP 地址添加打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:128 msgctxt "@text" msgid "Enter your printer's IP address." -msgstr "Zadejte IP adresu vaší tiskárny." +msgstr "输入您打印机的 IP 地址。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:150 msgctxt "@button" msgid "Add" -msgstr "Přidat" +msgstr "添加" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:195 msgctxt "@label" msgid "Could not connect to device." -msgstr "Nelze se připojit k zařízení." +msgstr "无法连接到设备。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:196 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:201 msgctxt "@label" msgid "Can't connect to your Ultimaker printer?" -msgstr "Nemůžete se připojit k Vaší tiskárně Ultimaker?" +msgstr "无法连接到 Ultimaker 打印机?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:200 msgctxt "@label" msgid "The printer at this address has not responded yet." -msgstr "Tiskárna na této adrese dosud neodpověděla." +msgstr "该网络地址的打印机尚未响应。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:231 msgctxt "@label" -msgid "" -"This printer cannot be added because it's an unknown printer or it's not the " -"host of a group." -msgstr "Tuto tiskárnu nelze přidat, protože se jedná o neznámou tiskárnu nebo není hostitelem skupiny." +msgid "This printer cannot be added because it's an unknown printer or it's not the host of a group." +msgstr "由于是未知打印机或不是组内主机,无法添加该打印机。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:312 msgctxt "@button" msgid "Connect" -msgstr "Připojit" +msgstr "连接" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/WelcomeContent.qml:56 msgctxt "@label" msgid "Welcome to Ultimaker Cura" -msgstr "Vítejte v Ultimaker Cura" +msgstr "欢迎使用 Ultimaker Cura" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/WelcomeContent.qml:67 msgctxt "@text" -msgid "" -"Please follow these steps to set up Ultimaker Cura. This will only take a " -"few moments." -msgstr "Při nastavování postupujte podle těchto pokynů Ultimaker Cura. Bude to trvat jen několik okamžiků." +msgid "Please follow these steps to set up Ultimaker Cura. This will only take a few moments." +msgstr "" +"请按照以下步骤设置\n" +"Ultimaker Cura。此操作只需要几分钟时间。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/WelcomePages/WelcomeContent.qml:82 msgctxt "@button" msgid "Get started" -msgstr "Začínáme" +msgstr "开始" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ObjectSelector.qml:59 msgctxt "@label" msgid "Object list" -msgstr "Seznam objektů" +msgstr "对象列表" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:81 msgctxt "@action:inmenu" msgid "Show Online Troubleshooting" -msgstr "Zobrazit online řešení problémů" +msgstr "显示联机故障排除" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:88 msgctxt "@action:inmenu" msgid "Toggle Full Screen" -msgstr "Přepnout zobrazení na celou obrazovku" +msgstr "切换全屏" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:96 msgctxt "@action:inmenu" msgid "Exit Full Screen" -msgstr "Ukončit zobrazení na celou obrazovku" +msgstr "退出全屏" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:103 msgctxt "@action:inmenu menubar:edit" msgid "&Undo" -msgstr "&Vrátit" +msgstr "撤销(&U)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:113 msgctxt "@action:inmenu menubar:edit" msgid "&Redo" -msgstr "&Znovu" +msgstr "重做(&R)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:131 msgctxt "@action:inmenu menubar:file" msgid "&Quit" -msgstr "&Ukončit" +msgstr "退出(&Q)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:139 msgctxt "@action:inmenu menubar:view" msgid "3D View" -msgstr "3D Pohled" +msgstr "3D 视图" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:146 msgctxt "@action:inmenu menubar:view" msgid "Front View" -msgstr "Přední pohled" +msgstr "正视图" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:153 msgctxt "@action:inmenu menubar:view" msgid "Top View" -msgstr "Pohled seshora" +msgstr "顶视图" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:160 msgctxt "@action:inmenu menubar:view" msgid "Bottom View" -msgstr "Pohled zezdola" +msgstr "仰视图" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:167 msgctxt "@action:inmenu menubar:view" msgid "Left Side View" -msgstr "Pohled z pravé strany" +msgstr "左视图" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:174 msgctxt "@action:inmenu menubar:view" msgid "Right Side View" -msgstr "Pohled z pravé strany" +msgstr "右视图" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:188 msgctxt "@action:inmenu" msgid "Configure Cura..." -msgstr "Konfigurovat Cura..." +msgstr "配置 Cura..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:195 msgctxt "@action:inmenu menubar:printer" msgid "&Add Printer..." -msgstr "Přidat t&iskárnu..." +msgstr "新增打印机(&A)..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:201 msgctxt "@action:inmenu menubar:printer" msgid "Manage Pr&inters..." -msgstr "Spravovat &tiskárny..." +msgstr "管理打印机(&I)..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:208 msgctxt "@action:inmenu" msgid "Manage Materials..." -msgstr "Spravovat materiály..." +msgstr "管理材料..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:216 -msgctxt "" -"@action:inmenu Marketplace is a brand name of Ultimaker's, so don't " -"translate." +msgctxt "@action:inmenu Marketplace is a brand name of Ultimaker's, so don't translate." msgid "Add more materials from Marketplace" -msgstr "Přidat více materiálů z Obchodu" +msgstr "从市场添加更多材料" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:223 msgctxt "@action:inmenu menubar:profile" msgid "&Update profile with current settings/overrides" -msgstr "&Aktualizovat profil s aktuálními nastaveními/přepsáními" +msgstr "使用当前设置 / 重写值更新配置文件(&U)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:231 msgctxt "@action:inmenu menubar:profile" msgid "&Discard current changes" -msgstr "Smazat aktuální &změny" +msgstr "舍弃当前更改(&D)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:243 msgctxt "@action:inmenu menubar:profile" msgid "&Create profile from current settings/overrides..." -msgstr "&Vytvořit profil z aktuálního nastavení/přepsání." +msgstr "从当前设置 / 重写值创建配置文件(&C)..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:249 msgctxt "@action:inmenu menubar:profile" msgid "Manage Profiles..." -msgstr "Spravovat profily..." +msgstr "管理配置文件.." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:257 msgctxt "@action:inmenu menubar:help" msgid "Show Online &Documentation" -msgstr "Zobrazit online &dokumentaci" +msgstr "显示在线文档(&D)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:265 msgctxt "@action:inmenu menubar:help" msgid "Report a &Bug" -msgstr "Nahlásit &chybu" +msgstr "BUG 反馈(&B)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:273 msgctxt "@action:inmenu menubar:help" msgid "What's New" -msgstr "Co je nového" +msgstr "新增功能" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:287 msgctxt "@action:inmenu menubar:help" msgid "About..." -msgstr "Více..." +msgstr "关于..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:294 msgctxt "@action:inmenu menubar:edit" msgid "Delete Selected" -msgstr "Smazat vybrané" +msgstr "删除所选项" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:304 msgctxt "@action:inmenu menubar:edit" msgid "Center Selected" -msgstr "Centrovat vybrané" +msgstr "居中所选项" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:313 msgctxt "@action:inmenu menubar:edit" msgid "Multiply Selected" -msgstr "Násobit vybrané" +msgstr "复制所选项" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:322 msgctxt "@action:inmenu" msgid "Delete Model" -msgstr "Odstranit model" +msgstr "删除模型" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:330 msgctxt "@action:inmenu" msgid "Ce&nter Model on Platform" -msgstr "&Centerovat model na podložce" +msgstr "使模型居于平台中央(&N)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:336 msgctxt "@action:inmenu menubar:edit" msgid "&Group Models" -msgstr "Sesk&upit modely" +msgstr "绑定模型(&G)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:356 msgctxt "@action:inmenu menubar:edit" msgid "Ungroup Models" -msgstr "Rozdělit modely" +msgstr "拆分模型" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:366 msgctxt "@action:inmenu menubar:edit" msgid "&Merge Models" -msgstr "Spo&jit modely" +msgstr "合并模型(&M)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:376 msgctxt "@action:inmenu" msgid "&Multiply Model..." -msgstr "Náso&bení modelu..." +msgstr "复制模型(&M)…" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:383 msgctxt "@action:inmenu menubar:edit" msgid "Select All Models" -msgstr "Vybrat všechny modely" +msgstr "选择所有模型" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:393 msgctxt "@action:inmenu menubar:edit" msgid "Clear Build Plate" -msgstr "Vyčistit podložku" +msgstr "清空打印平台" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:403 msgctxt "@action:inmenu menubar:file" msgid "Reload All Models" -msgstr "Znovu načíst všechny modely" +msgstr "重新载入所有模型" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:412 msgctxt "@action:inmenu menubar:edit" msgid "Arrange All Models" -msgstr "Uspořádat všechny modely" +msgstr "编位所有的模型" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:420 msgctxt "@action:inmenu menubar:edit" msgid "Arrange Selection" -msgstr "Uspořádat selekci" +msgstr "为所选模型编位" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:427 msgctxt "@action:inmenu menubar:edit" msgid "Reset All Model Positions" -msgstr "Resetovat všechny pozice modelů" +msgstr "复位所有模型的位置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:434 msgctxt "@action:inmenu menubar:edit" msgid "Reset All Model Transformations" -msgstr "Resetovat všechny transformace modelů" +msgstr "复位所有模型的变动" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:443 msgctxt "@action:inmenu menubar:file" msgid "&Open File(s)..." -msgstr "&Otevřít soubor(y)..." +msgstr "打开文件(&O)..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:453 msgctxt "@action:inmenu menubar:file" msgid "&New Project..." -msgstr "&Nový projekt..." +msgstr "新建项目(&N)..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Actions.qml:460 msgctxt "@action:inmenu menubar:help" msgid "Show Configuration Folder" -msgstr "Zobrazit složku s konfigurací" +msgstr "显示配置文件夹" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ExtruderButton.qml:16 msgctxt "@label %1 is filled in with the name of an extruder" msgid "Print Selected Model with %1" msgid_plural "Print Selected Models with %1" -msgstr[0] "Tisknout vybraný model pomocí %1" +msgstr[0] "用 %1 打印所选模型" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:115 msgctxt "@label:MonitorStatus" msgid "Not connected to a printer" -msgstr "Nepřipojen k tiskárně" +msgstr "未连接至打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:119 msgctxt "@label:MonitorStatus" msgid "Printer does not accept commands" -msgstr "Tiskárna nepřijímá příkazy" +msgstr "打印机不接受命令" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:129 msgctxt "@label:MonitorStatus" msgid "In maintenance. Please check the printer" -msgstr "V údržbě. Prosím zkontrolujte tiskíárnu" +msgstr "维护中。请检查打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:140 msgctxt "@label:MonitorStatus" msgid "Lost connection with the printer" -msgstr "Ztráta spojení s tiskárnou" +msgstr "与打印机的连接中断" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:142 msgctxt "@label:MonitorStatus" msgid "Printing..." -msgstr "Tisknu..." +msgstr "打印中..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:145 msgctxt "@label:MonitorStatus" msgid "Paused" -msgstr "Pozastaveno" +msgstr "已暂停" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:148 msgctxt "@label:MonitorStatus" msgid "Preparing..." -msgstr "Připravuji..." +msgstr "初始化中..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:150 msgctxt "@label:MonitorStatus" msgid "Please remove the print" -msgstr "Prosím odstraňte výtisk" +msgstr "请取出打印件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:318 msgctxt "@label" msgid "Abort Print" -msgstr "Zrušit tisk" +msgstr "中止打印" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/MonitorButton.qml:327 msgctxt "@label" msgid "Are you sure you want to abort the print?" -msgstr "Jste si jist, že chcete zrušit tisknutí?" +msgstr "您确定要中止打印吗?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ProfileOverview.qml:36 msgctxt "@title:column" msgid "Setting" -msgstr "Nastavení" +msgstr "设置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ProfileOverview.qml:37 msgctxt "@title:column" msgid "Profile" -msgstr "Profil" +msgstr "配置文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ProfileOverview.qml:38 msgctxt "@title:column" msgid "Current" -msgstr "Aktuální" +msgstr "当前" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ProfileOverview.qml:39 msgctxt "@title:column Unit of measurement" msgid "Unit" -msgstr "Jednotka" +msgstr "单位" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:34 msgctxt "@title:menu" msgid "&Material" -msgstr "&Materiál" +msgstr "材料(&M)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:49 msgctxt "@action:inmenu" msgid "Set as Active Extruder" -msgstr "Nastavit jako aktivní extruder" +msgstr "设为主要挤出机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:55 msgctxt "@action:inmenu" msgid "Enable Extruder" -msgstr "Povolit extuder" +msgstr "启用挤出机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingsMenu.qml:63 msgctxt "@action:inmenu" msgid "Disable Extruder" -msgstr "Zakázat Extruder" +msgstr "禁用挤出机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/FileMenu.qml:13 msgctxt "@title:menu menubar:toplevel" msgid "&File" -msgstr "&Soubor" +msgstr "文件(&F)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/FileMenu.qml:45 msgctxt "@title:menu menubar:file" msgid "&Save Project..." -msgstr "&Uložit projekt..." +msgstr "保存项目(&S)..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/FileMenu.qml:78 msgctxt "@title:menu menubar:file" msgid "&Export..." -msgstr "&Exportovat..." +msgstr "导出(&E)..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/FileMenu.qml:89 msgctxt "@action:inmenu menubar:file" msgid "Export Selection..." -msgstr "Výběr exportu..." +msgstr "导出选择..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/MaterialMenu.qml:13 msgctxt "@label:category menu label" msgid "Material" -msgstr "Materiál" +msgstr "材料" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/MaterialMenu.qml:53 msgctxt "@label:category menu label" msgid "Favorites" -msgstr "Oblíbené" +msgstr "收藏" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/MaterialMenu.qml:78 msgctxt "@label:category menu label" msgid "Generic" -msgstr "Obecné" +msgstr "通用" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/PrinterMenu.qml:13 msgctxt "@title:menu menubar:settings" msgid "&Printer" -msgstr "&Tiskárna" +msgstr "打印机(&P)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/PrinterMenu.qml:17 msgctxt "@label:category menu label" msgid "Network enabled printers" -msgstr "Tiskárny s povolenou sítí" +msgstr "网络打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/PrinterMenu.qml:50 msgctxt "@label:category menu label" msgid "Local printers" -msgstr "Lokální tiskárny" +msgstr "本地打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ExtensionMenu.qml:13 msgctxt "@title:menu menubar:toplevel" msgid "E&xtensions" -msgstr "D&oplňky" +msgstr "扩展(&X)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/OpenFilesMenu.qml:15 msgctxt "@title:menu menubar:file" msgid "Open File(s)..." -msgstr "Otevřít soubor(y)..." +msgstr "打开文件..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/PreferencesMenu.qml:21 msgctxt "@title:menu menubar:toplevel" msgid "P&references" -msgstr "P&reference" +msgstr "偏好设置(&R)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/AutoConfiguration.qml:18 msgctxt "@header" msgid "Configurations" -msgstr "Konfigurace" +msgstr "配置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:27 msgctxt "@header" msgid "Custom" -msgstr "Vlastní" +msgstr "自定义" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:173 msgctxt "@label" msgid "Enabled" -msgstr "Povoleno" +msgstr "已启用" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:222 msgctxt "@label" msgid "Material" -msgstr "Materiál" +msgstr "材料" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:348 msgctxt "@label" msgid "Use glue for better adhesion with this material combination." -msgstr "S touto kombinací materiálu pro lepší adhezi použijte lepidlo." +msgstr "用胶粘和此材料组合以产生更好的附着。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationListView.qml:52 msgctxt "@label" msgid "Loading available configurations from the printer..." -msgstr "Načítání dostupných konfigurací z tiskárny ..." +msgstr "正在从打印机加载可用配置..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationListView.qml:53 msgctxt "@label" -msgid "" -"The configurations are not available because the printer is disconnected." -msgstr "Konfigurace nejsou k dispozici, protože je tiskárna odpojena." +msgid "The configurations are not available because the printer is disconnected." +msgstr "该配置不可用,因为打印机已断开连接。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationItem.qml:137 msgctxt "@label" -msgid "" -"This configuration is not available because %1 is not recognized. Please " -"visit %2 to download the correct material profile." -msgstr "Tato konfigurace není k dispozici, protože %1 nebyl rozpoznán. Navštivte prosím %2 a stáhněte si správný materiálový profil." +msgid "This configuration is not available because %1 is not recognized. Please visit %2 to download the correct material profile." +msgstr "此配置不可用,因为 %1 未被识别。请访问 %2 以下载正确的材料配置文件。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationItem.qml:138 msgctxt "@label" msgid "Marketplace" -msgstr "Obchod" +msgstr "市场" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:106 msgctxt "@tooltip" -msgid "" -"The configuration of this extruder is not allowed, and prohibits slicing." -msgstr "Konfigurace tohoto extruderu není dovolena a znemožňuje slicování." +msgid "The configuration of this extruder is not allowed, and prohibits slicing." +msgstr "不允许此挤出器的配置并禁止切片。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:110 msgctxt "@tooltip" msgid "There are no profiles matching the configuration of this extruder." -msgstr "Neexistují žádné profily odpovídající nastavení tohoto extruderu." +msgstr "没有与此挤出器的配置匹配的配置文件。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:250 msgctxt "@label" msgid "Select configuration" -msgstr "Vybrat konfiguraci" +msgstr "选择配置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:358 msgctxt "@label" msgid "Configurations" -msgstr "Konfigurace" +msgstr "配置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/HelpMenu.qml:14 msgctxt "@title:menu menubar:toplevel" msgid "&Help" -msgstr "Po&moc" +msgstr "帮助(&H)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SaveProjectMenu.qml:15 msgctxt "@title:menu menubar:file" msgid "Save Project..." -msgstr "Uložit projekt..." +msgstr "保存项目..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/RecentFilesMenu.qml:15 msgctxt "@title:menu menubar:file" msgid "Open &Recent" -msgstr "Otevřít &Poslední" +msgstr "打开最近使用过的文件(&R)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ViewMenu.qml:13 msgctxt "@title:menu menubar:toplevel" msgid "&View" -msgstr "Po&hled" +msgstr "视图(&V)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ViewMenu.qml:17 msgctxt "@action:inmenu menubar:view" msgid "&Camera position" -msgstr "Pozice &kamery" +msgstr "摄像头位置(&C)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ViewMenu.qml:30 msgctxt "@action:inmenu menubar:view" msgid "Camera view" -msgstr "Pohled kamery" +msgstr "摄像头视图" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ViewMenu.qml:48 msgctxt "@action:inmenu menubar:view" msgid "Perspective" -msgstr "Perspektiva" +msgstr "透视" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ViewMenu.qml:59 msgctxt "@action:inmenu menubar:view" msgid "Orthographic" -msgstr "Ortografický" +msgstr "正交" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ContextMenu.qml:29 msgctxt "@label" msgid "Print Selected Model With:" msgid_plural "Print Selected Models With:" -msgstr[0] "Tisknout vybraný model pomocí:" +msgstr[0] "打印所选模型:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ContextMenu.qml:92 msgctxt "@title:window" msgid "Multiply Selected Model" msgid_plural "Multiply Selected Models" -msgstr[0] "Násobit vybraný model" +msgstr[0] "复制所选模型" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/ContextMenu.qml:123 msgctxt "@label" msgid "Number of Copies" -msgstr "Počet kopií" +msgstr "复制个数" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/EditMenu.qml:12 msgctxt "@title:menu menubar:toplevel" msgid "&Edit" -msgstr "Upr&avit" +msgstr "编辑(&E)" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:16 msgctxt "@action:inmenu" msgid "Visible Settings" -msgstr "Viditelná nastavení" +msgstr "可见设置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:42 msgctxt "@action:inmenu" msgid "Collapse All Categories" -msgstr "Sbalit všechny kategorie" +msgstr "折叠所有类别" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:51 msgctxt "@action:inmenu" msgid "Manage Setting Visibility..." -msgstr "Spravovat nastavení viditelnosti ..." +msgstr "管理设置可见性..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:17 msgctxt "@title:window" msgid "Select Printer" -msgstr "选择打印机" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:54 msgctxt "@title:label" msgid "Compatible Printers" -msgstr "Kompatibilní tiskárny" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:94 msgctxt "@description" msgid "No compatible printers, that are currently online, where found." -msgstr "没有找到当前联机的兼容打印机。" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:16 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:635 msgctxt "@title:window" msgid "Open file(s)" -msgstr "Otevřít soubor(y)" +msgstr "打开文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:47 msgctxt "@text:window" -msgid "" -"We have found one or more project file(s) within the files you have " -"selected. You can open only one project file at a time. We suggest to only " -"import models from those files. Would you like to proceed?" -msgstr "Ve vybraných souborech jsme našli jeden nebo více projektových souborů. Naraz můžete otevřít pouze jeden soubor projektu. Doporučujeme importovat pouze" -" modely z těchto souborů. Chtěli byste pokračovat?" +msgid "We have found one or more project file(s) within the files you have selected. You can open only one project file at a time. We suggest to only import models from those files. Would you like to proceed?" +msgstr "我们已经在您所选择的文件中找到一个或多个项目文件,但一次只能打开一个项目文件。我们建议只从那些文件中导入模型而不打开项目。您要继续操作吗?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:64 msgctxt "@action:button" msgid "Import all as models" -msgstr "Importovat vše jako modely" +msgstr "导入所有模型" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:17 msgctxt "@title:window" msgid "Open project file" -msgstr "Otevřít soubor s projektem" +msgstr "打开项目文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:84 msgctxt "@text:window" -msgid "" -"This is a Cura project file. Would you like to open it as a project or " -"import the models from it?" -msgstr "Toto je soubor projektu Cura. Chcete jej otevřít jako projekt nebo importovat z něj modely?" +msgid "This is a Cura project file. Would you like to open it as a project or import the models from it?" +msgstr "这是一个 Cura 项目文件。您想将其作为一个项目打开还是从中导入模型?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:91 msgctxt "@text:window" msgid "Remember my choice" -msgstr "Pamatuj si moji volbu" +msgstr "记住我的选择" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:105 msgctxt "@action:button" msgid "Open as project" -msgstr "Otevřít jako projekt" +msgstr "作为项目打开" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:110 msgctxt "@action:button" msgid "Import models" -msgstr "Importovat modely" +msgstr "导入模型" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:13 msgctxt "@title:window" msgid "Discard or Keep changes" -msgstr "Smazat nebo nechat změny" +msgstr "舍弃或保留更改" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:59 msgctxt "@text:window, %1 is a profile name" -msgid "" -"You have customized some profile settings. Would you like to Keep these " -"changed settings after switching profiles? Alternatively, you can discard " -"the changes to load the defaults from '%1'." -msgstr "Upravili jste některá nastavení profilu. Chcete tato nastavení zachovat i po přepnutí profilů? V opačném případě můžete změny zahodit a načíst výchozí" -" hodnoty z '%1'." +msgid "You have customized some profile settings. Would you like to Keep these changed settings after switching profiles? Alternatively, you can discard the changes to load the defaults from '%1'." +msgstr "" +"您已经自定义了若干配置文件设置。\n" +"是否要在切换配置文件后保留这些更改的设置?\n" +"或者,也可舍弃更改以从“%1”加载默认值。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:85 msgctxt "@title:column" msgid "Profile settings" -msgstr "Nastavení profilu" +msgstr "配置文件设置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:87 msgctxt "@title:column" msgid "Current changes" -msgstr "Aktuální změny" +msgstr "当前更改" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:116 msgctxt "@option:discardOrKeep" msgid "Discard and never ask again" -msgstr "Smazat a už se nikdy neptat" +msgstr "舍弃更改,并不再询问此问题" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:117 msgctxt "@option:discardOrKeep" msgid "Keep and never ask again" -msgstr "Nechat a už se nikdy neptat" +msgstr "保留更改,并不再询问此问题" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:147 msgctxt "@action:button" msgid "Discard changes" -msgstr "Smazat změny" +msgstr "舍弃更改" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:153 msgctxt "@action:button" msgid "Keep changes" -msgstr "Zanechat změny" +msgstr "保留更改" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:14 msgctxt "@title:window" msgid "Save Project" -msgstr "Uložit projekt" +msgstr "保存项目" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:177 msgctxt "@action:label" msgid "Extruder %1" -msgstr "Extruder %1" +msgstr "挤出机 %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:193 msgctxt "@action:label" msgid "%1 & material" -msgstr "%1 & materiál" +msgstr "%1 & 材料" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:195 msgctxt "@action:label" msgid "Material" -msgstr "Materiál" +msgstr "材料" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:284 msgctxt "@action:label" msgid "Don't show project summary on save again" -msgstr "Nezobrazovat souhrn projektu při uložení znovu" +msgstr "保存时不再显示项目摘要" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:298 msgctxt "@action:button" msgid "Save" -msgstr "Uložit" +msgstr "保存" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:15 msgctxt "@title:window The argument is the application name." msgid "About %1" -msgstr "O %1" +msgstr "关于 %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:59 msgctxt "@label" msgid "version: %1" -msgstr "verze: %1" +msgstr "版本: %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:74 msgctxt "@label" msgid "End-to-end solution for fused filament 3D printing." -msgstr "Komplexní řešení pro 3D tisk z taveného filamentu." +msgstr "熔丝 3D 打印技术的的端对端解决方案。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:87 msgctxt "@info:credit" msgid "" "Cura is developed by Ultimaker B.V. in cooperation with the community.\n" "Cura proudly uses the following open source projects:" -msgstr "Cura vyvíjí Ultimaker B.V. ve spolupráci s komunitou.\nCura hrdě používá následující open source projekty:" +msgstr "" +"Cura 由 Ultimaker B.V. 与社区合作开发。\n" +"Cura 使用以下开源项目:" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:138 msgctxt "@label Description for application component" @@ -5716,7 +5511,7 @@ msgstr "数据交换格式" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:153 msgctxt "@label" msgid "Font" -msgstr "Font" +msgstr "字体" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:156 msgctxt "@label Description for application dependency" @@ -5782,7 +5577,7 @@ msgstr "科学计算支持库" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:171 msgctxt "@Label Description for application dependency" msgid "Python Error tracking library" -msgstr "Python 错误跟踪库" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:172 msgctxt "@label Description for application dependency" @@ -5822,304 +5617,287 @@ msgstr "生成 Windows 安装程序" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ColorDialog.qml:107 msgctxt "@label" msgid "Hex" -msgstr "Hexadecimální" +msgstr "六角" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:32 msgctxt "@label:button" msgid "My printers" -msgstr "Moje tiskárny" +msgstr "我的打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:34 msgctxt "@tooltip:button" msgid "Monitor printers in Ultimaker Digital Factory." -msgstr "Sledujte tiskárny v Ultimaker Digital Factory." +msgstr "在 Ultimaker Digital Factory 中监控打印机。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:41 msgctxt "@tooltip:button" msgid "Create print projects in Digital Library." -msgstr "Vytvořte tiskové projekty v Digital Library." +msgstr "在 Digital Library 中创建打印项目。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:46 msgctxt "@label:button" msgid "Print jobs" -msgstr "Tiskové úlohy" +msgstr "打印作业" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:48 msgctxt "@tooltip:button" msgid "Monitor print jobs and reprint from your print history." -msgstr "Sledujte tiskové úlohy a znovu tiskněte z historie." +msgstr "监控打印作业并从打印历史记录重新打印。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:55 msgctxt "@tooltip:button" msgid "Extend Ultimaker Cura with plugins and material profiles." -msgstr "Rozšiřte Ultimaker Cura pomocí modulů a materiálových profilů." +msgstr "用插件和材料配置文件扩展 Ultimaker Cura。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:62 msgctxt "@tooltip:button" msgid "Become a 3D printing expert with Ultimaker e-learning." -msgstr "Staňte se expertem na 3D tisk díky Ultimaker e-learningu." +msgstr "通过 Ultimaker 线上课程教学,成为 3D 打印专家。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:67 msgctxt "@label:button" msgid "Ultimaker support" -msgstr "Ultimaker podpora" +msgstr "Ultimaker 支持" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:69 msgctxt "@tooltip:button" msgid "Learn how to get started with Ultimaker Cura." -msgstr "Zjistěte, jak začít s Ultimaker Cura." +msgstr "了解如何开始使用 Ultimaker Cura。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:74 msgctxt "@label:button" msgid "Ask a question" -msgstr "Položit otázku" +msgstr "提问" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:76 msgctxt "@tooltip:button" msgid "Consult the Ultimaker Community." -msgstr "Poraďte se s Ultimaker komunitou." +msgstr "咨询 Ultimaker 社区。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:81 msgctxt "@label:button" msgid "Report a bug" -msgstr "Nahlásit chybu" +msgstr "报告错误" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:83 msgctxt "@tooltip:button" msgid "Let developers know that something is going wrong." -msgstr "Dejte vývojářům vědět, že je něco špatně." +msgstr "向开发人员报错。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ApplicationSwitcher/ApplicationSwitcherPopup.qml:90 msgctxt "@tooltip:button" msgid "Visit the Ultimaker website." -msgstr "Navštivte web Ultimaker." +msgstr "访问 Ultimaker 网站。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedSupportSelector.qml:40 msgctxt "@label" msgid "Support" -msgstr "Podpora" +msgstr "支持" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedSupportSelector.qml:44 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedSupportSelector.qml:78 msgctxt "@label" -msgid "" -"Generate structures to support parts of the model which have overhangs. " -"Without these structures, such parts would collapse during printing." -msgstr "Vytvořte struktury pro podporu částí modelu, které mají přesahy. Bez těchto struktur by se takové části během tisku zhroutily." +msgid "Generate structures to support parts of the model which have overhangs. Without these structures, such parts would collapse during printing." +msgstr "在模型的悬垂(Overhangs)部分生成支撑结构。若不这样做,这些部分在打印时将倒塌。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:54 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is active and you overwrote some settings." -msgstr "%1自定义配置文件处于活动状态,并且已覆盖某些设置。" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:68 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is overriding some settings." -msgstr "%1自定义配置文件正在覆盖某些设置。" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:79 msgctxt "@info" msgid "Some settings were changed." -msgstr "Některá nastavení byly změněna." +msgstr "某些设置已更改。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:78 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:254 msgctxt "@label" -msgid "" -"Gradual infill will gradually increase the amount of infill towards the top." -msgstr "Postupná výplň postupně zvyšuje množství výplně směrem nahoru." +msgid "Gradual infill will gradually increase the amount of infill towards the top." +msgstr "渐层填充(Gradual infill)将随着打印高度的提升而逐渐加大填充密度。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:216 msgctxt "@label" msgid "Gradual infill" -msgstr "Postupná výplň" +msgstr "渐层填充" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/UnsupportedProfileIndication.qml:31 msgctxt "@error" msgid "Configuration not supported" -msgstr "Konfigurace není podporována" +msgstr "配置不受支持" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/UnsupportedProfileIndication.qml:39 msgctxt "@message:text %1 is the name the printer uses for 'nozzle'." -msgid "" -"No profiles are available for the selected material/%1 configuration. Please " -"change your configuration." -msgstr "Pro vybranou konfiguraci materiál/%1 není dostupný žádný profil. Prosím změňte svou konfiguraci." +msgid "No profiles are available for the selected material/%1 configuration. Please change your configuration." +msgstr "对于所选材料/%1 配置,无可用的配置文件。请更改配置。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/UnsupportedProfileIndication.qml:47 msgctxt "@button:label" msgid "Learn more" -msgstr "Zjistit více" +msgstr "了解详情" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedAdhesionSelector.qml:27 msgctxt "@label" msgid "Adhesion" -msgstr "Adheze" +msgstr "附着" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedAdhesionSelector.qml:76 msgctxt "@label" -msgid "" -"Enable printing a brim or raft. This will add a flat area around or under " -"your object which is easy to cut off afterwards." -msgstr "Umožňuje tisk okraje nebo voru. Tímto způsobem se kolem nebo pod objekt přidá plochá oblast, kterou lze snadno odříznout." +msgid "Enable printing a brim or raft. This will add a flat area around or under your object which is easy to cut off afterwards." +msgstr "允许打印 Brim 或 Raft。这将在您的对象周围或下方添加一个容易切断的平面区域。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedResolutionSelector.qml:27 msgctxt "@label" msgid "Resolution" -msgstr "Rozlišení" +msgstr "分辨率" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:20 msgctxt "@label shown when we load a Gcode file" msgid "Print setup disabled. G-code file can not be modified." -msgstr "Nastavení tisku zakázáno. Soubor G-kódu nelze změnit." +msgstr "打印设置已禁用。无法修改 G code 文件。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelectorHeader.qml:13 msgctxt "@label:Should be short" msgid "On" -msgstr "Zap" +msgstr "开" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelectorHeader.qml:14 msgctxt "@label:Should be short" msgid "Off" -msgstr "Vyp" +msgstr "关" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelectorHeader.qml:34 msgctxt "@label" msgid "Experimental" -msgstr "Experimentální" +msgstr "实验性" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelectorContents.qml:142 msgctxt "@button" msgid "Recommended" -msgstr "Doporučeno" +msgstr "推荐" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/PrintSetupSelectorContents.qml:156 msgctxt "@button" msgid "Custom" -msgstr "Vlastní" +msgstr "自定义" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Custom/CustomPrintSetup.qml:46 msgctxt "@label" msgid "Profile" -msgstr "Profil" +msgstr "配置文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Custom/CustomPrintSetup.qml:145 msgctxt "@tooltip" msgid "" -"Some setting/override values are different from the values stored in the " -"profile.\n" +"Some setting/override values are different from the values stored in the profile.\n" "\n" "Click to open the profile manager." -msgstr "Některé hodnoty nastavení / přepsání se liší od hodnot uložených v profilu.\n\nKlepnutím otevřete správce profilů." +msgstr "" +"某些设置/重写值与存储在配置文件中的值不同。\n" +"\n" +"点击打开配置文件管理器。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:158 msgctxt "@label:header" msgid "Custom profiles" -msgstr "Vlastní profily" +msgstr "自定义配置文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/OutputDeviceHeader.qml:55 msgctxt "@info:status" msgid "The printer is not connected." -msgstr "Tiskárna není připojena." +msgstr "尚未连接到打印机。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:25 msgctxt "@label" msgid "Build plate" -msgstr "Podložka" +msgstr "打印平台" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:55 msgctxt "@tooltip" -msgid "" -"The target temperature of the heated bed. The bed will heat up or cool down " -"towards this temperature. If this is 0, the bed heating is turned off." -msgstr "Cílová teplota vyhřívací podložky. Podložka se zahřeje, nebo schladí směrem k této teplotě. Pokud je 0, tak je vyhřívání podložky vypnuto." +msgid "The target temperature of the heated bed. The bed will heat up or cool down towards this temperature. If this is 0, the bed heating is turned off." +msgstr "热床的目标温度。热床将加热或冷却至此温度。若设置为 0,则不使用热床。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:88 msgctxt "@tooltip" msgid "The current temperature of the heated bed." -msgstr "Aktuální teplota vyhřívané podložky." +msgstr "热床当前温度。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:162 msgctxt "@tooltip of temperature input" msgid "The temperature to pre-heat the bed to." -msgstr "Teplota pro předehřátí podložky." +msgstr "热床的预热温度。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:259 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:271 msgctxt "@button Cancel pre-heating" msgid "Cancel" -msgstr "Zrušit" +msgstr "取消" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:263 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:274 msgctxt "@button" msgid "Pre-heat" -msgstr "Předehřání" +msgstr "预热" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:286 msgctxt "@tooltip of pre-heat" -msgid "" -"Heat the bed in advance before printing. You can continue adjusting your " -"print while it is heating, and you won't have to wait for the bed to heat up " -"when you're ready to print." -msgstr "Před tiskem zahřejte postel předem. Můžete pokračovat v úpravě tisku, zatímco se zahřívá, a nemusíte čekat, až se postel zahřeje, až budete připraveni" -" k tisku." +msgid "Heat the bed in advance before printing. You can continue adjusting your print while it is heating, and you won't have to wait for the bed to heat up when you're ready to print." +msgstr "打印前请预热热床。您可以在热床加热时继续调整相关项,让您在准备打印时不必等待热床加热完毕。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:40 msgctxt "@label" msgid "Extruder" -msgstr "Extuder" +msgstr "挤出机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:70 msgctxt "@tooltip" -msgid "" -"The target temperature of the hotend. The hotend will heat up or cool down " -"towards this temperature. If this is 0, the hotend heating is turned off." -msgstr "Cílová teplota hotendu. Hotend se ohřeje nebo ochladí na tuto teplotu. Pokud je 0, ohřev teplé vody je vypnutý." +msgid "The target temperature of the hotend. The hotend will heat up or cool down towards this temperature. If this is 0, the hotend heating is turned off." +msgstr "热端的目标温度。 热端将加热或冷却至此温度。 如果目标温度为 0,则热端加热将关闭。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:105 msgctxt "@tooltip" msgid "The current temperature of this hotend." -msgstr "Aktuální teplota tohoto hotendu." +msgstr "该热端的当前温度。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:182 msgctxt "@tooltip of temperature input" msgid "The temperature to pre-heat the hotend to." -msgstr "Teplota pro předehřátí hotendu." +msgstr "热端的预热温度。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:297 msgctxt "@tooltip of pre-heat" -msgid "" -"Heat the hotend in advance before printing. You can continue adjusting your " -"print while it is heating, and you won't have to wait for the hotend to heat " -"up when you're ready to print." -msgstr "Před tiskem zahřejte hotend předem. Můžete pokračovat v úpravách tisku, zatímco se zahřívá, a nemusíte čekat na zahřátí hotendu, až budete připraveni k" -" tisku." +msgid "Heat the hotend in advance before printing. You can continue adjusting your print while it is heating, and you won't have to wait for the hotend to heat up when you're ready to print." +msgstr "打印前请预热热端。您可以在热端加热时继续调整打印机,而不必等待热端加热完毕再做好打印准备。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:335 msgctxt "@tooltip" msgid "The colour of the material in this extruder." -msgstr "Barva materiálu v tomto extruderu." +msgstr "该挤出机中材料的颜色。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:367 msgctxt "@tooltip" msgid "The material in this extruder." -msgstr "Materiál v tomto extruderu." +msgstr "该挤出机中的材料。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:400 msgctxt "@tooltip" msgid "The nozzle inserted in this extruder." -msgstr "Vložená trysky v tomto extruderu." +msgstr "该挤出机所使用的喷嘴。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:51 msgctxt "@label" msgid "Printer control" -msgstr "Ovládání tiskárny" +msgstr "打印机控制" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:66 msgctxt "@label" msgid "Jog Position" -msgstr "Pozice hlavy" +msgstr "垛齐位置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:82 msgctxt "@label" @@ -6134,69 +5912,63 @@ msgstr "Z" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:217 msgctxt "@label" msgid "Jog Distance" -msgstr "Vzdálenost hlavy" +msgstr "垛齐距离" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:257 msgctxt "@label" msgid "Send G-code" -msgstr "Poslat G kód" +msgstr "发送 G-code" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterOutput/ManualPrinterControl.qml:319 msgctxt "@tooltip of G-code command input" -msgid "" -"Send a custom G-code command to the connected printer. Press 'enter' to send " -"the command." -msgstr "Na připojenou tiskárnu odešlete vlastní příkaz G-kódu. Stisknutím klávesy „Enter“ odešlete příkaz." +msgid "Send a custom G-code command to the connected printer. Press 'enter' to send the command." +msgstr "向连接的打印机发送自定义 G-code 命令。按“Enter”发送命令。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:250 msgctxt "@label" msgid "This package will be installed after restarting." -msgstr "Tento balíček bude nainstalován po restartování." +msgstr "这个包将在重新启动后安装。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:464 msgctxt "@title:tab" msgid "Settings" -msgstr "Nastavení" +msgstr "设置" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:587 msgctxt "@title:window %1 is the application name" msgid "Closing %1" -msgstr "Zavírám %1" +msgstr "正在关闭 %1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:588 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:597 msgctxt "@label %1 is the application name" msgid "Are you sure you want to exit %1?" -msgstr "Doopravdy chcete zavřít %1?" +msgstr "您确定要退出 %1 吗?" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:740 msgctxt "@window:title" msgid "Install Package" -msgstr "Nainstalovat balíček" +msgstr "安装包" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:747 msgctxt "@title:window" msgid "Open File(s)" -msgstr "Otevřít Soubor(y)" +msgstr "打开文件" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:749 msgctxt "@text:window" -msgid "" -"We have found one or more G-Code files within the files you have selected. " -"You can only open one G-Code file at a time. If you want to open a G-Code " -"file, please just select only one." -msgstr "Ve vybraných souborech jsme našli jeden nebo více souborů G-kódu. Naraz můžete otevřít pouze jeden soubor G-kódu. Pokud chcete otevřít soubor G-Code, vyberte" -" pouze jeden." +msgid "We have found one or more G-Code files within the files you have selected. You can only open one G-Code file at a time. If you want to open a G-Code file, please just select only one." +msgstr "我们已经在您选择的文件中找到一个或多个 G-Code 文件。您一次只能打开一个 G-Code 文件。若需打开 G-Code 文件,请仅选择一个。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:829 msgctxt "@title:window" msgid "Add Printer" -msgstr "Přidat tiskárnu" +msgstr "新增打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:837 msgctxt "@title:window" msgid "What's New" -msgstr "Co je nového" +msgstr "新增功能" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/GeneralOperations.qml:39 msgctxt "@text" @@ -6204,151 +5976,145 @@ msgid "" "- Add material profiles and plug-ins from the Marketplace\n" "- Back-up and sync your material profiles and plug-ins\n" "- Share ideas and get help from 48,000+ users in the Ultimaker community" -msgstr "- Přidejte materiálnové profily and moduly z Obchodu\n- Zálohujte a synchronizujte vaše materiálové profily and moduly\n- Sdílejte nápady a získejte pomoc" -" od více než 48 000 uživatelů v Ultimaker komunitě" +msgstr "" +"- 从 Marketplace 添加材料配置文件和插件\n" +"- 备份和同步材料配置文件和插件\n" +"- 在 Ultimaker 社区分享观点并获取 48,000 多名用户的帮助" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/GeneralOperations.qml:58 msgctxt "@button" msgid "Create a free Ultimaker account" -msgstr "Vytvořit účet Ultimaker zdarma" +msgstr "创建免费的 Ultimaker 帐户" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/AccountWidget.qml:24 msgctxt "@action:button" msgid "Sign in" -msgstr "Přihlásit se" +msgstr "登录" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/UserOperations.qml:78 msgctxt "@label The argument is a timestamp" msgid "Last update: %1" -msgstr "Poslední aktualizace: %1" +msgstr "上次更新时间:%1" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/UserOperations.qml:107 msgctxt "@button" msgid "Ultimaker Account" -msgstr "Ultimaker Account" +msgstr "Ultimaker 帐户" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/UserOperations.qml:126 msgctxt "@button" msgid "Sign Out" -msgstr "Odhlásit se" +msgstr "注销" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/SyncState.qml:35 msgctxt "@label" msgid "Checking..." -msgstr "Kontroluji..." +msgstr "正在检查..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/SyncState.qml:42 msgctxt "@label" msgid "Account synced" -msgstr "Účet byl synchronizován" +msgstr "帐户已同步" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/SyncState.qml:49 msgctxt "@label" msgid "Something went wrong..." -msgstr "Nastala chyba..." +msgstr "发生了错误..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/SyncState.qml:102 msgctxt "@button" msgid "Install pending updates" -msgstr "Nainstalujte čekající aktualizace" +msgstr "安装挂起的更新" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Account/SyncState.qml:123 msgctxt "@button" msgid "Check for account updates" -msgstr "Zkontrolovat aktualizace pro účet" +msgstr "检查是否存在帐户更新" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:47 msgctxt "@status" -msgid "" -"The cloud printer is offline. Please check if the printer is turned on and " -"connected to the internet." -msgstr "Cloudová tiskárna je offline. Prosím zkontrolujte, zda je tiskárna zapnutá a připojená k internetu." +msgid "The cloud printer is offline. Please check if the printer is turned on and connected to the internet." +msgstr "云打印机离线。请检查打印机是否已开启并连接到 Internet。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:51 msgctxt "@status" -msgid "" -"This printer is not linked to your account. Please visit the Ultimaker " -"Digital Factory to establish a connection." -msgstr "Tiskárna není připojena k vašemu účtu. Prosím navštivte Ultimaker Digital Factory pro navázání spojení." +msgid "This printer is not linked to your account. Please visit the Ultimaker Digital Factory to establish a connection." +msgstr "此打印机未链接到您的帐户。请访问 Ultimaker Digital Factory 以建立连接。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:56 msgctxt "@status" -msgid "" -"The cloud connection is currently unavailable. Please sign in to connect to " -"the cloud printer." -msgstr "Připojení ke cloudu není nyní dostupné. Prosím přihlašte se k připojení ke cloudové tiskárně." +msgid "The cloud connection is currently unavailable. Please sign in to connect to the cloud printer." +msgstr "云连接当前不可用。请登录以连接到云打印机。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:60 msgctxt "@status" -msgid "" -"The cloud connection is currently unavailable. Please check your internet " -"connection." -msgstr "Připojení ke cloudu není nyní dostupné. Prosím zkontrolujte si vaše internetové připojení." +msgid "The cloud connection is currently unavailable. Please check your internet connection." +msgstr "云连接当前不可用。请检查您的 Internet 连接。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:237 msgctxt "@button" msgid "Add printer" -msgstr "Přidat tiskárnu" +msgstr "添加打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelector.qml:254 msgctxt "@button" msgid "Manage printers" -msgstr "Spravovat tiskárny" +msgstr "管理打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:34 msgctxt "@label" msgid "Hide all connected printers" -msgstr "隐藏所有连接的打印机" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:47 msgctxt "@label" msgid "Show all connected printers" -msgstr "显示所有连接的打印机" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Other printers" -msgstr "其他打印机" +msgstr "" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:54 msgctxt "@label:PrintjobStatus" msgid "Slicing..." -msgstr "Slicuji..." +msgstr "正在切片..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:78 msgctxt "@label:PrintjobStatus" msgid "Unable to slice" -msgstr "Nelze slicovat" +msgstr "无法切片" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:114 msgctxt "@button" msgid "Processing" -msgstr "Zpracovává se" +msgstr "正在处理中" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:114 msgctxt "@button" msgid "Slice" -msgstr "Slicovat" +msgstr "切片" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:115 msgctxt "@label" msgid "Start the slicing process" -msgstr "Začít proces slicování" +msgstr "开始切片流程" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:132 msgctxt "@button" msgid "Cancel" -msgstr "Zrušit" +msgstr "取消" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/PrintJobInformation.qml:31 msgctxt "@label" msgid "Time estimation" -msgstr "Odhad času" +msgstr "预计时间" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/PrintJobInformation.qml:107 msgctxt "@label" msgid "Material estimation" -msgstr "Odhad materiálu" +msgstr "预计材料" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/PrintJobInformation.qml:156 msgctxt "@label m for meter" @@ -6363,666 +6129,4167 @@ msgstr "%1g" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/OutputProcessWidget.qml:59 msgctxt "@label" msgid "No time estimation available" -msgstr "Žádný odhad času není dostupný" +msgstr "无可用时间估计" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/OutputProcessWidget.qml:77 msgctxt "@label" msgid "No cost estimation available" -msgstr "Žádná cena není dostupná" +msgstr "无可用成本估计" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/OutputProcessWidget.qml:127 msgctxt "@button" msgid "Preview" -msgstr "Náhled" +msgstr "预览" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/JobSpecs.qml:93 msgctxt "@text Print job name" msgid "Untitled" -msgstr "Bez názvu" +msgstr "未命名" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Widgets/ComboBox.qml:18 msgctxt "@label" msgid "No items to select from" -msgstr "Není z čeho vybírat" +msgstr "没有可供选择的项目" #: /MachineSettingsAction/plugin.json msgctxt "description" -msgid "" -"Provides a way to change machine settings (such as build volume, nozzle " -"size, etc.)." -msgstr "Poskytuje způsob, jak změnit nastavení zařízení (například objem sestavení, velikost trysek atd.)." +msgid "Provides a way to change machine settings (such as build volume, nozzle size, etc.)." +msgstr "提供一种改变机器设置的方法(如构建体积、喷嘴大小等)。" #: /MachineSettingsAction/plugin.json msgctxt "name" msgid "Machine Settings Action" -msgstr "Akce nastavení zařízení" +msgstr "打印机设置操作" #: /ImageReader/plugin.json msgctxt "description" msgid "Enables ability to generate printable geometry from 2D image files." -msgstr "Umožňuje generovat tiskovou geometrii ze 2D obrazových souborů." +msgstr "支持从 2D 图像文件生成可打印几何模型的能力。" #: /ImageReader/plugin.json msgctxt "name" msgid "Image Reader" -msgstr "Čtečka obrázků" +msgstr "图像读取器" #: /XRayView/plugin.json msgctxt "description" msgid "Provides the X-Ray view." -msgstr "Poskytuje rentgenové zobrazení." +msgstr "提供透视视图。" #: /XRayView/plugin.json msgctxt "name" msgid "X-Ray View" -msgstr "Rentgenový pohled" +msgstr "透视视图" #: /X3DReader/plugin.json msgctxt "description" msgid "Provides support for reading X3D files." -msgstr "Poskytuje podporu pro čtení souborů X3D." +msgstr "支持读取 X3D 文件。" #: /X3DReader/plugin.json msgctxt "name" msgid "X3D Reader" -msgstr "Čtečka X3D" +msgstr "X3D 读取器" #: /CuraProfileReader/plugin.json msgctxt "description" msgid "Provides support for importing Cura profiles." -msgstr "Poskytuje podporu pro import profilů Cura." +msgstr "提供了对导入 Cura 配置文件的支持。" #: /CuraProfileReader/plugin.json msgctxt "name" msgid "Cura Profile Reader" -msgstr "Čtečka Cura profilu" +msgstr "Cura 配置文件读取器" #: /PostProcessingPlugin/plugin.json msgctxt "description" msgid "Extension that allows for user created scripts for post processing" -msgstr "Rozšíření, které umožňuje uživateli vytvořené skripty pro následné zpracování" +msgstr "扩展程序(允许用户创建脚本进行后期处理)" #: /PostProcessingPlugin/plugin.json msgctxt "name" msgid "Post Processing" -msgstr "Post Processing" +msgstr "后期处理" #: /UM3NetworkPrinting/plugin.json msgctxt "description" msgid "Manages network connections to Ultimaker networked printers." -msgstr "Spravuje síťová připojení k síťovým tiskárnám Ultimaker." +msgstr "管理与 Ultimaker 网络打印机的网络连接。" #: /UM3NetworkPrinting/plugin.json msgctxt "name" msgid "Ultimaker Network Connection" -msgstr "Síťové připojení Ultimaker" +msgstr "Ultimaker 网络连接" #: /3MFWriter/plugin.json msgctxt "description" msgid "Provides support for writing 3MF files." -msgstr "Poskytuje podporu pro psaní souborů 3MF." +msgstr "提供对写入 3MF 文件的支持。" #: /3MFWriter/plugin.json msgctxt "name" msgid "3MF Writer" -msgstr "Zapisovač 3MF" +msgstr "3MF 写入器" #: /CuraDrive/plugin.json msgctxt "description" msgid "Backup and restore your configuration." -msgstr "Zálohujte a obnovte konfiguraci." +msgstr "备份和还原配置。" #: /CuraDrive/plugin.json msgctxt "name" msgid "Cura Backups" -msgstr "Cura zálohy" +msgstr "Cura 备份" #: /SliceInfoPlugin/plugin.json msgctxt "description" msgid "Submits anonymous slice info. Can be disabled through preferences." -msgstr "Odešle anonymní informace o slicování. Lze deaktivovat pomocí preferencí." +msgstr "提交匿名切片信息。 可以通过偏好设置禁用。" #: /SliceInfoPlugin/plugin.json msgctxt "name" msgid "Slice info" -msgstr "Informace o slicování" +msgstr "切片信息" #: /UFPWriter/plugin.json msgctxt "description" msgid "Provides support for writing Ultimaker Format Packages." -msgstr "Poskytuje podporu pro psaní balíčků formátu Ultimaker." +msgstr "支持写入 Ultimaker 格式包。" #: /UFPWriter/plugin.json msgctxt "name" msgid "UFP Writer" -msgstr "Zapisovač UFP" +msgstr "UFP 写入器" #: /DigitalLibrary/plugin.json msgctxt "description" -msgid "" -"Connects to the Digital Library, allowing Cura to open files from and save " -"files to the Digital Library." -msgstr "Připojuje k Digitální knihovně. Umožňuje Cuře otevírat a ukládat soubory z a do Digitální knihovny." +msgid "Connects to the Digital Library, allowing Cura to open files from and save files to the Digital Library." +msgstr "连接到 Digital Library,以允许 Cura 从 Digital Library 打开文件并将文件保存到其中。" #: /DigitalLibrary/plugin.json msgctxt "name" msgid "Ultimaker Digital Library" -msgstr "Digitální knihovna Ultimaker" +msgstr "Ultimaker Digital Library" #: /GCodeProfileReader/plugin.json msgctxt "description" msgid "Provides support for importing profiles from g-code files." -msgstr "Poskytuje podporu pro import profilů ze souborů g-kódu." +msgstr "提供了从 GCode 文件中导入配置文件的支持。" #: /GCodeProfileReader/plugin.json msgctxt "name" msgid "G-code Profile Reader" -msgstr "Čtečka profilu G kódu" +msgstr "G-code 配置文件读取器" #: /GCodeReader/plugin.json msgctxt "description" msgid "Allows loading and displaying G-code files." -msgstr "Povoluje načítání a zobrazení souborů G kódu." +msgstr "允许加载和显示 G-code 文件。" #: /GCodeReader/plugin.json msgctxt "name" msgid "G-code Reader" -msgstr "Čtečka G kódu" +msgstr "G-code 读取器" #: /TrimeshReader/plugin.json msgctxt "description" msgid "Provides support for reading model files." -msgstr "Poskytuje podporu pro čtení souborů modelu." +msgstr "提供对读取模型文件的支持。" #: /TrimeshReader/plugin.json msgctxt "name" msgid "Trimesh Reader" -msgstr "Čtečka trimesh" +msgstr "Trimesh 阅读器" #: /UltimakerMachineActions/plugin.json msgctxt "description" -msgid "" -"Provides machine actions for Ultimaker machines (such as bed leveling " -"wizard, selecting upgrades, etc.)." -msgstr "Poskytuje akce strojů pro stroje Ultimaker (jako je průvodce vyrovnáváním postele, výběr upgradů atd.)." +msgid "Provides machine actions for Ultimaker machines (such as bed leveling wizard, selecting upgrades, etc.)." +msgstr "为最后的机器提供机器操作(例如,热床调平向导,选择升级等)。" #: /UltimakerMachineActions/plugin.json msgctxt "name" msgid "Ultimaker machine actions" -msgstr "Akce zařízení Ultimaker" +msgstr "Ultimaker 打印机操作" #: /GCodeGzReader/plugin.json msgctxt "description" msgid "Reads g-code from a compressed archive." -msgstr "Čte g-kód z komprimovaného archivu." +msgstr "从压缩存档文件读取 G-code。" #: /GCodeGzReader/plugin.json msgctxt "name" msgid "Compressed G-code Reader" -msgstr "Čtečka kompresovaného G kódu" +msgstr "压缩 G-code 读取器" #: /Marketplace/plugin.json msgctxt "description" -msgid "" -"Manages extensions to the application and allows browsing extensions from " -"the Ultimaker website." -msgstr "Spravuje rozšíření aplikace a umožňuje prohlížení rozšíření z webu Ultimaker." +msgid "Manages extensions to the application and allows browsing extensions from the Ultimaker website." +msgstr "管理对应用程序的扩展并允许从 Ultimaker 网站浏览扩展。" #: /Marketplace/plugin.json msgctxt "name" msgid "Marketplace" -msgstr "Obchod" +msgstr "市场" #: /RemovableDriveOutputDevice/plugin.json msgctxt "description" msgid "Provides removable drive hotplugging and writing support." -msgstr "Poskytuje vyměnitelnou jednotku za plného zapojení a podporu zápisu." +msgstr "提供可移动磁盘热插拔和写入文件的支持。" #: /RemovableDriveOutputDevice/plugin.json msgctxt "name" msgid "Removable Drive Output Device Plugin" -msgstr "Vyměnitelný zásuvný modul pro výstupní zařízení" +msgstr "可移动磁盘输出设备插件" #: /MonitorStage/plugin.json msgctxt "description" msgid "Provides a monitor stage in Cura." -msgstr "Poskytuje monitorovací scénu v Cuře." +msgstr "在 Cura 中提供监视阶段。" #: /MonitorStage/plugin.json msgctxt "name" msgid "Monitor Stage" -msgstr "Fáze monitoringu" +msgstr "监视阶段" #: /VersionUpgrade/VersionUpgrade25to26/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 2.5 to Cura 2.6." -msgstr "Aktualizuje konfigurace z Cura 2.5 na Cura 2.6." +msgstr "将配置从 Cura 2.5 版本升级至 2.6 版本。" #: /VersionUpgrade/VersionUpgrade25to26/plugin.json msgctxt "name" msgid "Version Upgrade 2.5 to 2.6" -msgstr "Aktualizace verze 2.5 na 2.6" +msgstr "版本自 2.5 升级到 2.6" #: /VersionUpgrade/VersionUpgrade26to27/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 2.6 to Cura 2.7." -msgstr "Aktualizuje konfigurace z Cura 2.6 na Cura 2.7." +msgstr "将配置从 Cura 2.6 版本升级至 2.7 版本。" #: /VersionUpgrade/VersionUpgrade26to27/plugin.json msgctxt "name" msgid "Version Upgrade 2.6 to 2.7" -msgstr "Aktualizace verze 2.6 na 2.7" +msgstr "版本自 2.6 升级到 2.7" #: /VersionUpgrade/VersionUpgrade413to50/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.13 to Cura 5.0." -msgstr "Aktualizuje konfigurace z Cura 4.13 na Cura 5.0." +msgstr "将配置从 Cura 4.13 升级至 Cura 5.0。" #: /VersionUpgrade/VersionUpgrade413to50/plugin.json msgctxt "name" msgid "Version Upgrade 4.13 to 5.0" -msgstr "Aktualizace verze 4.13 na 5.0" +msgstr "版本从 4.13 升级到 5.0" #: /VersionUpgrade/VersionUpgrade48to49/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.8 to Cura 4.9." -msgstr "Aktualizuje konfigurace z Cura 4.8 na Cura 4.9." +msgstr "将配置从 Cura 4.8 升级到 Cura 4.9。" #: /VersionUpgrade/VersionUpgrade48to49/plugin.json msgctxt "name" msgid "Version Upgrade 4.8 to 4.9" -msgstr "Aktualizace verze 4.8 na 4.9" +msgstr "版本从 4.8 升级到 4.9" #: /VersionUpgrade/VersionUpgrade34to35/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 3.4 to Cura 3.5." -msgstr "Aktualizuje konfigurace z Cura 3.4 na Cura 3.5." +msgstr "将配置从 Cura 3.4 版本升级至 3.5 版本。" #: /VersionUpgrade/VersionUpgrade34to35/plugin.json msgctxt "name" msgid "Version Upgrade 3.4 to 3.5" -msgstr "Aktualizace verze 3.4 na 3.5" +msgstr "版本自 3.4 升级到 3.5" #: /VersionUpgrade/VersionUpgrade44to45/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.4 to Cura 4.5." -msgstr "Aktualizuje konfigurace z Cura 4.4 na Cura 4.5." +msgstr "将配置从 Cura 4.4 升级至 Cura 4.5。" #: /VersionUpgrade/VersionUpgrade44to45/plugin.json msgctxt "name" msgid "Version Upgrade 4.4 to 4.5" -msgstr "Aktualizace verze 4.4 na 4.5" +msgstr "版本从 4.4 升级至 4.5" #: /VersionUpgrade/VersionUpgrade43to44/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.3 to Cura 4.4." -msgstr "Aktualizuje konfigurace z Cura 4.3 na Cura 4.4." +msgstr "将配置从 Cura 4.3 升级至 Cura 4.4。" #: /VersionUpgrade/VersionUpgrade43to44/plugin.json msgctxt "name" msgid "Version Upgrade 4.3 to 4.4" -msgstr "Aktualizace verze 4.3 na 4.4" +msgstr "版本自 4.3 升级至 4.4" #: /VersionUpgrade/VersionUpgrade32to33/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 3.2 to Cura 3.3." -msgstr "Aktualizuje konfigurace z Cura 3.2 na Cura 3.3." +msgstr "将配置从 Cura 3.2 版本升级至 3.3 版本。" #: /VersionUpgrade/VersionUpgrade32to33/plugin.json msgctxt "name" msgid "Version Upgrade 3.2 to 3.3" -msgstr "Aktualizace verze 3.2 na 3.3" +msgstr "版本自 3.2 升级到 3.3" #: /VersionUpgrade/VersionUpgrade33to34/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 3.3 to Cura 3.4." -msgstr "Aktualizuje konfigurace z Cura 3.3 na Cura 3.4." +msgstr "从Cura 3.3升级到Cura 3.4。" #: /VersionUpgrade/VersionUpgrade33to34/plugin.json msgctxt "name" msgid "Version Upgrade 3.3 to 3.4" -msgstr "Aktualizace verze 3.3 na 3.4" +msgstr "版本升级3.3到3.4" #: /VersionUpgrade/VersionUpgrade41to42/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.1 to Cura 4.2." -msgstr "Aktualizuje konfigurace z Cura 4.1 na Cura 4.2." +msgstr "请将配置从 Cura 4.1 升级至 Cura 4.2。" #: /VersionUpgrade/VersionUpgrade41to42/plugin.json msgctxt "name" msgid "Version Upgrade 4.1 to 4.2" -msgstr "Aktualizace verze 4.1 na 4.2" +msgstr "版本自 4.1 升级到 4.2" #: /VersionUpgrade/VersionUpgrade42to43/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.2 to Cura 4.3." -msgstr "Aktualizuje konfigurace z Cura 4.2 na Cura 4.3." +msgstr "请将配置从 Cura 4.2 升级至 Cura 4.3。" #: /VersionUpgrade/VersionUpgrade42to43/plugin.json msgctxt "name" msgid "Version Upgrade 4.2 to 4.3" -msgstr "Aktualizace verze 4.2 na 4.3" +msgstr "版本自 4.2 升级至 4.3" #: /VersionUpgrade/VersionUpgrade462to47/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.6.2 to Cura 4.7." -msgstr "Aktualizuje konfigurace z Cura 4.6.2 na Cura 4.7." +msgstr "将配置从 Cura 4.6.2 升级到 Cura 4.7。" #: /VersionUpgrade/VersionUpgrade462to47/plugin.json msgctxt "name" msgid "Version Upgrade 4.6.2 to 4.7" -msgstr "Aktualizace verze 4.6.2 na 4.7" +msgstr "版本从 4.6.2 升级到 4.7" #: /VersionUpgrade/VersionUpgrade35to40/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 3.5 to Cura 4.0." -msgstr "Aktualizuje konfigurace z Cura 3.5 na Cura 4.0." +msgstr "将配置从 Cura 3.5 版本升级至 4.0 版本。" #: /VersionUpgrade/VersionUpgrade35to40/plugin.json msgctxt "name" msgid "Version Upgrade 3.5 to 4.0" -msgstr "Aktualizace verze 3.5 na 4.0" +msgstr "版本自 3.5 升级到 4.0" #: /VersionUpgrade/VersionUpgrade22to24/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 2.2 to Cura 2.4." -msgstr "Aktualizuje konfigurace z Cura 2.2 na Cura 2.4." +msgstr "将配置从 Cura 2.2 版本升级至 2.4 版本。" #: /VersionUpgrade/VersionUpgrade22to24/plugin.json msgctxt "name" msgid "Version Upgrade 2.2 to 2.4" -msgstr "Aktualizace verze 2.2 na 2.4" +msgstr "版本自 2.2 升级到 2.4" #: /VersionUpgrade/VersionUpgrade21to22/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 2.1 to Cura 2.2." -msgstr "Aktualizuje konfigurace z Cura 2.1 na Cura 2.2." +msgstr "将配置从 Cura 2.1 版本升级至 2.2 版本。" #: /VersionUpgrade/VersionUpgrade21to22/plugin.json msgctxt "name" msgid "Version Upgrade 2.1 to 2.2" -msgstr "Aktualizace verze 2.1 na 2.2" +msgstr "版本自 2.1 升级到 2.2" #: /VersionUpgrade/VersionUpgrade460to462/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.6.0 to Cura 4.6.2." -msgstr "Aktualizuje konfigurace z Cura 4.6.0 na Cura 4.6.2." +msgstr "将配置从 Cura 4.6.0 升级到 Cura 4.6.2。" #: /VersionUpgrade/VersionUpgrade460to462/plugin.json msgctxt "name" msgid "Version Upgrade 4.6.0 to 4.6.2" -msgstr "Aktualizace verze 4.6.0 na 4.6.2" +msgstr "版本从 4.6.0 升级到 4.6.2" #: /VersionUpgrade/VersionUpgrade47to48/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.7 to Cura 4.8." -msgstr "Aktualizuje konfigurace z Cura 4.7 na Cura 4.8." +msgstr "将配置从 Cura 4.7 升级到 Cura 4.8。" #: /VersionUpgrade/VersionUpgrade47to48/plugin.json msgctxt "name" msgid "Version Upgrade 4.7 to 4.8" -msgstr "Aktualizace verze 4.7 na 4.8" +msgstr "将版本从 4.7 升级到 4.8" #: /VersionUpgrade/VersionUpgrade49to410/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.9 to Cura 4.10." -msgstr "Aktualizuje konfigurace z Cura 4.9 na Cura 4.10." +msgstr "将配置从 Cura 4.9 升级到 Cura 4.10。" #: /VersionUpgrade/VersionUpgrade49to410/plugin.json msgctxt "name" msgid "Version Upgrade 4.9 to 4.10" -msgstr "Aktualizace verze 4.9 na 4.10" +msgstr "版本从 4.9 升级到 4.10" #: /VersionUpgrade/VersionUpgrade45to46/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.5 to Cura 4.6." -msgstr "Aktualizuje konfigurace z Cura 4.5 na Cura 4.6." +msgstr "将配置从 Cura 4.5 升级至 Cura 4.6。" #: /VersionUpgrade/VersionUpgrade45to46/plugin.json msgctxt "name" msgid "Version Upgrade 4.5 to 4.6" -msgstr "Aktualizace verze 4.5 na 4.6" +msgstr "版本从 4.5 升级至 4.6" #: /VersionUpgrade/VersionUpgrade27to30/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 2.7 to Cura 3.0." -msgstr "Aktualizuje konfigurace z Cura 2.7 na Cura 3.0." +msgstr "将配置从 Cura 2.7 版本升级至 3.0 版本。" #: /VersionUpgrade/VersionUpgrade27to30/plugin.json msgctxt "name" msgid "Version Upgrade 2.7 to 3.0" -msgstr "Aktualizace verze 2.7 na 3.0" +msgstr "版本自 2.7 升级到 3.0" #: /VersionUpgrade/VersionUpgrade30to31/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 3.0 to Cura 3.1." -msgstr "Aktualizuje konfigurace z Cura 3.0 na Cura 3.1." +msgstr "将配置从 Cura 3.0 版本升级至 3.1 版本。" #: /VersionUpgrade/VersionUpgrade30to31/plugin.json msgctxt "name" msgid "Version Upgrade 3.0 to 3.1" -msgstr "Aktualizace verze 3.0 na 3.1" +msgstr "版本自 3.0 升级到 3.1" #: /VersionUpgrade/VersionUpgrade411to412/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.11 to Cura 4.12." -msgstr "Aktualizuje konfigurace z Cura 4.11 na Cura 4.12." +msgstr "将配置从 Cura 4.11 升级到 Cura 4.12。" #: /VersionUpgrade/VersionUpgrade411to412/plugin.json msgctxt "name" msgid "Version Upgrade 4.11 to 4.12" -msgstr "Aktualizace verze 4.11 na 4.12" +msgstr "版本从 4.11 升级到 4.12" #: /VersionUpgrade/VersionUpgrade40to41/plugin.json msgctxt "description" msgid "Upgrades configurations from Cura 4.0 to Cura 4.1." -msgstr "Aktualizuje konfigurace z Cura 4.0 na Cura 4.1." +msgstr "将配置从 Cura 4.0 版本升级至 4.1 版本。" #: /VersionUpgrade/VersionUpgrade40to41/plugin.json msgctxt "name" msgid "Version Upgrade 4.0 to 4.1" -msgstr "Aktualizace verze 4.0 na 4.1" +msgstr "版本自 4.0 升级到 4.1" #: /CuraEngineBackend/plugin.json msgctxt "description" msgid "Provides the link to the CuraEngine slicing backend." -msgstr "Poskytuje odkaz na backend krájení CuraEngine." +msgstr "提供 CuraEngine 切片后端的路径。" #: /CuraEngineBackend/plugin.json msgctxt "name" msgid "CuraEngine Backend" -msgstr "CuraEngine Backend" +msgstr "CuraEngine 后端" #: /3MFReader/plugin.json msgctxt "description" msgid "Provides support for reading 3MF files." -msgstr "Poskytuje podporu pro čtení souborů 3MF." +msgstr "提供对读取 3MF 格式文件的支持。" #: /3MFReader/plugin.json msgctxt "name" msgid "3MF Reader" -msgstr "Čtečka 3MF" +msgstr "3MF 读取器" #: /PerObjectSettingsTool/plugin.json msgctxt "description" msgid "Provides the Per Model Settings." -msgstr "Umožňuje nastavení pro každý model." +msgstr "提供对每个模型的单独设置。" #: /PerObjectSettingsTool/plugin.json msgctxt "name" msgid "Per Model Settings Tool" -msgstr "Nástroj pro nastavení pro každý model" +msgstr "单一模型设置工具" #: /XmlMaterialProfile/plugin.json msgctxt "description" msgid "Provides capabilities to read and write XML-based material profiles." -msgstr "Poskytuje funkce pro čtení a zápis materiálových profilů založených na XML." +msgstr "提供读取和写入基于 XML 的材料配置文件的功能。" #: /XmlMaterialProfile/plugin.json msgctxt "name" msgid "Material Profiles" -msgstr "Materiálové profily" +msgstr "材料配置文件" #: /CuraProfileWriter/plugin.json msgctxt "description" msgid "Provides support for exporting Cura profiles." -msgstr "Poskytuje podporu pro export profilů Cura." +msgstr "提供了对导出 Cura 配置文件的支持。" #: /CuraProfileWriter/plugin.json msgctxt "name" msgid "Cura Profile Writer" -msgstr "Zapisovač Cura profilu" +msgstr "Cura 配置文件写入器" #: /ModelChecker/plugin.json msgctxt "description" -msgid "" -"Checks models and print configuration for possible printing issues and give " -"suggestions." -msgstr "Zkontroluje možné tiskové modely a konfiguraci tisku a poskytne návrhy." +msgid "Checks models and print configuration for possible printing issues and give suggestions." +msgstr "检查模型和打印配置,以了解潜在的打印问题并给出建议。" #: /ModelChecker/plugin.json msgctxt "name" msgid "Model Checker" -msgstr "Kontroler modelu" +msgstr "模型检查器" #: /USBPrinting/plugin.json msgctxt "description" -msgid "" -"Accepts G-Code and sends them to a printer. Plugin can also update firmware." -msgstr "Přijme G-kód a odešle je do tiskárny. Plugin může také aktualizovat firmware." +msgid "Accepts G-Code and sends them to a printer. Plugin can also update firmware." +msgstr "接受 G-Code 并将其发送到一台打印机。 插件也可以更新固件。" #: /USBPrinting/plugin.json msgctxt "name" msgid "USB printing" -msgstr "USB tisk" +msgstr "USB 联机打印" #: /PreviewStage/plugin.json msgctxt "description" msgid "Provides a preview stage in Cura." -msgstr "Poskytuje fázi náhledu v Cura." +msgstr "在 Cura 中提供预览阶段。" #: /PreviewStage/plugin.json msgctxt "name" msgid "Preview Stage" -msgstr "Fáze náhledu" +msgstr "预览阶段" #: /GCodeWriter/plugin.json msgctxt "description" msgid "Writes g-code to a file." -msgstr "Zapisuje G kód o souboru." +msgstr "将 G-code 写入至文件。" #: /GCodeWriter/plugin.json msgctxt "name" msgid "G-code Writer" -msgstr "Zapisovač G kódu" +msgstr "G-code 写入器" #: /UFPReader/plugin.json msgctxt "description" msgid "Provides support for reading Ultimaker Format Packages." -msgstr "Poskytuje podporu pro čtení balíčků formátu Ultimaker." +msgstr "支持读取 Ultimaker 格式包。" #: /UFPReader/plugin.json msgctxt "name" msgid "UFP Reader" -msgstr "Čtečka UFP" +msgstr "UFP 读取器" #: /FirmwareUpdater/plugin.json msgctxt "description" msgid "Provides a machine actions for updating firmware." -msgstr "Poskytuje akce počítače pro aktualizaci firmwaru." +msgstr "为固件更新提供操作选项。" #: /FirmwareUpdater/plugin.json msgctxt "name" msgid "Firmware Updater" -msgstr "Firmware Updater" +msgstr "固件更新程序" #: /GCodeGzWriter/plugin.json msgctxt "description" msgid "Writes g-code to a compressed archive." -msgstr "Zapíše g-kód do komprimovaného archivu." +msgstr "将 G-code 写入至压缩存档文件。" #: /GCodeGzWriter/plugin.json msgctxt "name" msgid "Compressed G-code Writer" -msgstr "Zapisova kompresovaného G kódu" +msgstr "压缩 G-code 写入器" #: /SimulationView/plugin.json msgctxt "description" msgid "Provides the preview of sliced layerdata." -msgstr "Poskytuje náhled slicovaných dat vrstev." +msgstr "提供切片层数据的预览。" #: /SimulationView/plugin.json msgctxt "name" msgid "Simulation View" -msgstr "Pohled simulace" +msgstr "仿真视图" #: /LegacyProfileReader/plugin.json msgctxt "description" msgid "Provides support for importing profiles from legacy Cura versions." -msgstr "Poskytuje podporu pro import profilů ze starších verzí Cura." +msgstr "支持从 Cura 旧版本导入配置文件。" #: /LegacyProfileReader/plugin.json msgctxt "name" msgid "Legacy Cura Profile Reader" -msgstr "Čtečka legacy Cura profilu" +msgstr "旧版 Cura 配置文件读取器" #: /AMFReader/plugin.json msgctxt "description" msgid "Provides support for reading AMF files." -msgstr "Poskytuje podporu pro čtení souborů AMF." +msgstr "提供对读取 AMF 文件的支持。" #: /AMFReader/plugin.json msgctxt "name" msgid "AMF Reader" -msgstr "Čtečka AMF" +msgstr "AMF 读取器" #: /SolidView/plugin.json msgctxt "description" msgid "Provides a normal solid mesh view." -msgstr "Poskytuje normální zobrazení pevné sítě." +msgstr "提供一个基本的实体网格视图。" #: /SolidView/plugin.json msgctxt "name" msgid "Solid View" -msgstr "Solid View" +msgstr "实体视图" #: /FirmwareUpdateChecker/plugin.json msgctxt "description" msgid "Checks for firmware updates." -msgstr "Zkontroluje dostupné aktualizace firmwaru." +msgstr "检查以进行固件更新。" #: /FirmwareUpdateChecker/plugin.json msgctxt "name" msgid "Firmware Update Checker" -msgstr "Kontroler aktualizace firmwaru" +msgstr "固件更新检查程序" #: /SentryLogger/plugin.json msgctxt "description" msgid "Logs certain events so that they can be used by the crash reporter" -msgstr "Protokolová určité události, aby je mohl použít reportér havárií" +msgstr "记录某些事件,以使其可供崩溃报告器使用" #: /SentryLogger/plugin.json msgctxt "name" msgid "Sentry Logger" -msgstr "Záznamník hlavy" +msgstr "Sentry 日志记录" #: /SupportEraser/plugin.json msgctxt "description" -msgid "" -"Creates an eraser mesh to block the printing of support in certain places" -msgstr "Vytvoří gumovou síť, která blokuje tisk podpory na určitých místech" +msgid "Creates an eraser mesh to block the printing of support in certain places" +msgstr "创建橡皮擦网格,以便阻止在某些位置打印支撑" #: /SupportEraser/plugin.json msgctxt "name" msgid "Support Eraser" -msgstr "Mazač podpor" +msgstr "支持橡皮擦" #: /PrepareStage/plugin.json msgctxt "description" msgid "Provides a prepare stage in Cura." -msgstr "Poskytuje přípravnou fázi v Cuře." +msgstr "在 Cura 中提供准备阶段。" #: /PrepareStage/plugin.json msgctxt "name" msgid "Prepare Stage" -msgstr "Fáze přípravy" +msgstr "准备阶段" + +#, python-brace-format +#~ msgctxt "@error:material" +#~ msgid "It was not possible to store material package information in project file: {material}. This project may not open correctly on other systems." +#~ msgstr "项目文件中无法存储材料包信息:{material}。此项目在其他系统上可能无法正确打开。" + +#~ msgctxt "@info:title" +#~ msgid "Failed to save material package information" +#~ msgstr "未能保存材料包信息" + +#~ msgctxt "@label Description for application dependency" +#~ msgid "Python Error tracking library" +#~ msgstr "Python 错误跟踪库" + +#~ msgctxt "@label" +#~ msgid "Printer" +#~ msgstr "打印机" + +#~ msgctxt "@info" +#~ msgid "custom profile is active and you overwrote some settings." +#~ msgstr "自定义配置文件处于活动状态,并且已覆盖某些设置。" + +#~ msgctxt "@info" +#~ msgid "custom profile is overriding some settings." +#~ msgstr "自定义配置文件正在覆盖某些设置。" + +#~ msgctxt "@label" +#~ msgid "Not yet initialized
    " +#~ msgstr "尚未初始化
    " + +#~ msgctxt "@label" +#~ msgid "By" +#~ msgstr "由:" + +#~ msgctxt "@Label" +#~ msgid "Static type checker for Python" +#~ msgstr "适用于 Python 的静态类型检查器" + +#~ msgctxt "@Label" +#~ msgid "Root Certificates for validating SSL trustworthiness" +#~ msgstr "用于验证 SSL 可信度的根证书" + +#~ msgctxt "@label" +#~ msgid "Python extensions for Microsoft Windows" +#~ msgstr "适用于 Microsoft Windows 的 Python 扩展" + +#~ msgctxt "@label" +#~ msgid "SVG icons" +#~ msgstr "SVG 图标" + +#~ msgctxt "@label %1 is filled in with the type of a profile. %2 is filled with a list of numbers (eg '1' or '1, 2')" +#~ msgid "There is no %1 profile for the configuration in extruder %2. The default intent will be used instead" +#~ msgid_plural "There is no %1 profile for the configurations in extruders %2. The default intent will be used instead" +#~ msgstr[0] "没有 %1 配置文件可用于挤出器 %2 中的配置。将改为使用默认意图" + +#~ msgctxt "@tooltip" +#~ msgid "You have modified some profile settings. If you want to change these go to custom mode." +#~ msgstr "您已修改部分配置文件设置。 如果您想对其进行更改,请转至自定义模式。" + +#~ msgctxt "@action:button" +#~ msgid "Sync materials with printers" +#~ msgstr "同步材料与打印机" + +#~ msgctxt "@title:window" +#~ msgid "Convert Image..." +#~ msgstr "转换图像..." + +#~ msgctxt "@info:tooltip" +#~ msgid "The width in millimeters on the build plate." +#~ msgstr "打印平台宽度,以毫米为单位。" + +#~ msgctxt "@title" +#~ msgid "Marketplace" +#~ msgstr "市场" + +#~ msgctxt "@info" +#~ msgid "You will need to restart Cura before changes in packages have effect." +#~ msgstr "在包装更改生效之前,您需要重新启动Cura。" + +#~ msgctxt "@action:button" +#~ msgid "Install" +#~ msgstr "安装" + +#~ msgctxt "@action:button" +#~ msgid "Installed" +#~ msgstr "已安装" + +#~ msgctxt "@label" +#~ msgid "Premium" +#~ msgstr "高级" + +#~ msgctxt "@info:tooltip" +#~ msgid "Go to Web Marketplace" +#~ msgstr "前往网上市场" + +#~ msgctxt "@label" +#~ msgid "Search materials" +#~ msgstr "搜索材料" + +#~ msgctxt "@label" +#~ msgid "Compatibility" +#~ msgstr "兼容性" + +#~ msgctxt "@label:table_header" +#~ msgid "Machine" +#~ msgstr "机器" + +#~ msgctxt "@label:table_header" +#~ msgid "Build Plate" +#~ msgstr "打印平台" + +#~ msgctxt "@label:table_header" +#~ msgid "Support" +#~ msgstr "支持" + +#~ msgctxt "@label:table_header" +#~ msgid "Quality" +#~ msgstr "质量" + +#~ msgctxt "@action:label" +#~ msgid "Technical Data Sheet" +#~ msgstr "技术数据表" + +#~ msgctxt "@action:label" +#~ msgid "Safety Data Sheet" +#~ msgstr "安全数据表" + +#~ msgctxt "@action:label" +#~ msgid "Printing Guidelines" +#~ msgstr "打印指南" + +#~ msgctxt "@action:label" +#~ msgid "Website" +#~ msgstr "网站" + +#~ msgctxt "@label:The string between and is the highlighted link" +#~ msgid "Log in is required to install or update" +#~ msgstr "安装或更新需要登录" + +#~ msgctxt "@label:The string between and is the highlighted link" +#~ msgid "Buy material spools" +#~ msgstr "购买材料线轴" + +#~ msgctxt "@action:button" +#~ msgid "Update" +#~ msgstr "更新" + +#~ msgctxt "@action:button" +#~ msgid "Updating" +#~ msgstr "更新" + +#~ msgctxt "@action:button" +#~ msgid "Updated" +#~ msgstr "更新" + +#~ msgctxt "@action:button" +#~ msgid "Back" +#~ msgstr "背部" + +#~ msgctxt "@title:tab" +#~ msgid "Plugins" +#~ msgstr "插件" + +#~ msgctxt "@title:tab" +#~ msgid "Installed" +#~ msgstr "安装" + +#~ msgctxt "@label" +#~ msgid "Will install upon restarting" +#~ msgstr "将安装后重新启动" + +#~ msgctxt "@label:The string between and is the highlighted link" +#~ msgid "Log in is required to update" +#~ msgstr "更新需要登录" + +#~ msgctxt "@action:button" +#~ msgid "Downgrade" +#~ msgstr "降级" + +#~ msgctxt "@action:button" +#~ msgid "Uninstall" +#~ msgstr "卸载" + +#~ msgctxt "@label" +#~ msgid "Community Contributions" +#~ msgstr "社区贡献" + +#~ msgctxt "@label" +#~ msgid "Community Plugins" +#~ msgstr "社区插件" + +#~ msgctxt "@label" +#~ msgid "Generic Materials" +#~ msgstr "通用材料" + +#~ msgctxt "@info" +#~ msgid "Fetching packages..." +#~ msgstr "获取包..." + +#~ msgctxt "@label" +#~ msgid "Website" +#~ msgstr "网站" + +#~ msgctxt "@label" +#~ msgid "Email" +#~ msgstr "电子邮件" + +#~ msgctxt "@description" +#~ msgid "Please sign in to get verified plugins and materials for Ultimaker Cura Enterprise" +#~ msgstr "请登录以获取经验证适用于 Ultimaker Cura Enterprise 的插件和材料" + +#~ msgctxt "@label" +#~ msgid "Version" +#~ msgstr "版本" + +#~ msgctxt "@label" +#~ msgid "Last updated" +#~ msgstr "更新日期" + +#~ msgctxt "@label" +#~ msgid "Downloads" +#~ msgstr "下载项" + +#~ msgctxt "@title:tab" +#~ msgid "Installed plugins" +#~ msgstr "已安装的插件" + +#~ msgctxt "@info" +#~ msgid "No plugin has been installed." +#~ msgstr "尚未安装任何插件。" + +#~ msgctxt "@title:tab" +#~ msgid "Installed materials" +#~ msgstr "已安装的材料" + +#~ msgctxt "@info" +#~ msgid "No material has been installed." +#~ msgstr "尚未安装任何材料。" + +#~ msgctxt "@title:tab" +#~ msgid "Bundled plugins" +#~ msgstr "已捆绑的插件" + +#~ msgctxt "@title:tab" +#~ msgid "Bundled materials" +#~ msgstr "已捆绑的材料" + +#~ msgctxt "@info" +#~ msgid "Could not connect to the Cura Package database. Please check your connection." +#~ msgstr "无法连接到Cura包数据库。请检查您的连接。" + +#~ msgctxt "@title:window" +#~ msgid "Confirm uninstall" +#~ msgstr "确认卸载" + +#~ msgctxt "@text:window" +#~ msgid "You are uninstalling materials and/or profiles that are still in use. Confirming will reset the following materials/profiles to their defaults." +#~ msgstr "您正在卸载仍在使用的材料和/或配置文件。确认会将以下材料/配置文件重置为默认值。" + +#~ msgctxt "@text:window" +#~ msgid "Materials" +#~ msgstr "材料" + +#~ msgctxt "@text:window" +#~ msgid "Profiles" +#~ msgstr "配置文件" + +#~ msgctxt "@action:button" +#~ msgid "Confirm" +#~ msgstr "确认" + +#~ msgctxt "@info:tooltip" +#~ msgid "Some things could be problematic in this print. Click to see tips for adjustment." +#~ msgstr "此次打印可能出现了某些问题。点击查看调整提示。" + +#~ msgctxt "@label" +#~ msgid "Support library for handling planar objects" +#~ msgstr "用于处理平面对象的支持库" + +#~ msgctxt "@text:window, %1 is a profile name" +#~ msgid "" +#~ "You have customized some profile settings.\n" +#~ "Would you like to Keep these changed settings after switching profiles?\n" +#~ "Alternatively, you can discard the changes to load the defaults from '%1'." +#~ msgstr "" +#~ "您已经自定义了若干配置文件设置。\n" +#~ "是否要在切换配置文件后保留这些更改的设置?\n" +#~ "或者,也可舍弃更改以从“%1”加载默认值。" + +#~ msgctxt "@action:inmenu menubar:view" +#~ msgid "&Build plate" +#~ msgstr "打印平台(&B)" + +#~ msgctxt "@label" +#~ msgid "Create" +#~ msgstr "创建" + +#~ msgctxt "@label" +#~ msgid "Duplicate" +#~ msgstr "复制" + +#~ msgctxt "@label %1 is printer name" +#~ msgid "Printer: %1" +#~ msgstr "打印机:%1" + +#~ msgctxt "@action:button" +#~ msgid "Update profile with current settings/overrides" +#~ msgstr "使用当前设置 / 重写值更新配置文件" + +#~ msgctxt "@label" +#~ msgid "Theme:" +#~ msgstr "主题:" + +#~ msgctxt "@label" +#~ msgid "You will need to restart the application for these changes to have effect." +#~ msgstr "需重新启动 Cura,新的设置才能生效。" + +#~ msgctxt "@action:button" +#~ msgid "More information" +#~ msgstr "详细信息" + +#~ msgctxt "@action:button" +#~ msgid "Create" +#~ msgstr "创建" + +#~ msgctxt "@action:button Sending materials to printers" +#~ msgid "Sync with Printers" +#~ msgstr "与打印机同步" + +#~ msgctxt "@action:label" +#~ msgid "Printer" +#~ msgstr "打印机" + +#~ msgctxt "@title:column" +#~ msgid "Unit" +#~ msgstr "单位" + +#~ msgctxt "@action:inmenu" +#~ msgid "Show Online Troubleshooting Guide" +#~ msgstr "显示联机故障排除指南" + +#~ msgctxt "@action:inmenu" +#~ msgid "Add more materials from Marketplace" +#~ msgstr "从市场添加更多材料" + +#~ msgctxt "@action:inmenu menubar:edit" +#~ msgid "Arrange All Models To All Build Plates" +#~ msgstr "将所有模型编位到所有打印平台" + +#~ msgctxt "@action:menu" +#~ msgid "&Marketplace" +#~ msgstr "市场(&M)" + +#~ msgctxt "description" +#~ msgid "Find, manage and install new Cura packages." +#~ msgstr "查找、管理和安装新的Cura包。" + +#~ msgctxt "name" +#~ msgid "Toolbox" +#~ msgstr "工具箱" + +#~ msgctxt "description" +#~ msgid "Provides the Simulation view." +#~ msgstr "提供仿真视图。" + +#~ msgctxt "@info:status" +#~ msgid "Send and monitor print jobs from anywhere using your Ultimaker account." +#~ msgstr "使用您的 Ultimaker account 帐户从任何地方发送和监控打印作业。" + +#~ msgctxt "@info:status Ultimaker Cloud should not be translated." +#~ msgid "Connect to Ultimaker Digital Factory" +#~ msgstr "连接到 Ultimaker Digital Factory" + +#~ msgctxt "@info" +#~ msgid "Webcam feeds for cloud printers cannot be viewed from Ultimaker Cura." +#~ msgstr "无法从 Ultimaker Cura 中查看云打印机的网络摄像头馈送。" + +#~ msgctxt "@info Don't translate {machine_name}, since it gets replaced by a printer name!" +#~ msgid "New features or bug-fixes may be available for your {machine_name}! If not already at the latest version, it is recommended to update the firmware on your printer to version {latest_version}." +#~ msgstr "您的 {machine_name} 可能有新功能或错误修复可用!如果打印机上的固件还不是最新版本,建议将它更新为 {latest_version} 版。" + +#~ msgctxt "@info:title The %s gets replaced with the printer name." +#~ msgid "New %s firmware available" +#~ msgstr "新 %s 固件可用" + +#~ msgctxt "@info:status" +#~ msgid "Global stack is missing." +#~ msgstr "缺少全局堆栈。" + +#~ msgctxt "@info:status" +#~ msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces." +#~ msgstr "您的模型不是流形。突出显示的区域指示缺少或多余的表面。" + +#~ msgctxt "@info:title" +#~ msgid "Model errors" +#~ msgstr "模型错误" + +#~ msgctxt "@label:listbox" +#~ msgid "Layer thickness" +#~ msgstr "层厚度" + +#~ msgctxt "@label" +#~ msgid "Your key to connected 3D printing" +#~ msgstr "互连 3D 打印的特点" + +#~ msgctxt "@text" +#~ msgid "" +#~ "- Customize your experience with more print profiles and plugins\n" +#~ "- Stay flexible by syncing your setup and loading it anywhere\n" +#~ "- Increase efficiency with a remote workflow on Ultimaker printers" +#~ msgstr "" +#~ "- 借助更多的打印配置文件和插件定制您的体验\n" +#~ "- 通过同步设置并将其加载到任何位置保持灵活性\n" +#~ "- 使用 Ultimaker 打印机上的远程工作流提高效率" + +#~ msgctxt "@button" +#~ msgid "Create account" +#~ msgstr "创建账户" + +#~ msgctxt "@action:inmenu menubar:edit" +#~ msgid "Delete Selected Model" +#~ msgid_plural "Delete Selected Models" +#~ msgstr[0] "删除所选模型" + +#~ msgctxt "@action:inmenu menubar:edit" +#~ msgid "Center Selected Model" +#~ msgid_plural "Center Selected Models" +#~ msgstr[0] "居中所选模型" + +#~ msgctxt "@action:inmenu menubar:edit" +#~ msgid "Multiply Selected Model" +#~ msgid_plural "Multiply Selected Models" +#~ msgstr[0] "复制所选模型" + +#~ msgctxt "@button" +#~ msgid "Finish" +#~ msgstr "完成" + +#~ msgctxt "@label" +#~ msgid "Ultimaker Account" +#~ msgstr "Ultimaker 帐户" + +#~ msgctxt "@text" +#~ msgid "Your key to connected 3D printing" +#~ msgstr "互连 3D 打印的特点" + +#~ msgctxt "@text" +#~ msgid "- Customize your experience with more print profiles and plugins" +#~ msgstr "- 借助更多的打印配置文件和插件定制您的体验" + +#~ msgctxt "@text" +#~ msgid "- Stay flexible by syncing your setup and loading it anywhere" +#~ msgstr "- 通过同步设置并将其加载到任何位置保持灵活性" + +#~ msgctxt "@text" +#~ msgid "- Increase efficiency with a remote workflow on Ultimaker printers" +#~ msgstr "- 使用 Ultimaker 打印机上的远程工作流提高效率" + +#~ msgctxt "@text" +#~ msgid "" +#~ "Please follow these steps to set up\n" +#~ "Ultimaker Cura. This will only take a few moments." +#~ msgstr "" +#~ "请按照以下步骤设置\n" +#~ "Ultimaker Cura。此操作只需要几分钟时间。" + +#~ msgctxt "@label" +#~ msgid "What's new in Ultimaker Cura" +#~ msgstr "Ultimaker Cura 新增功能" + +#~ msgctxt "@label ({} is object name)" +#~ msgid "Are you sure you wish to remove {}? This cannot be undone!" +#~ msgstr "是否确实要删除 {}?此操作无法撤消!" + +#~ msgctxt "@info:status" +#~ msgid "The selected model was too small to load." +#~ msgstr "所选模型过小,无法加载。" + +#~ msgctxt "@info:status" +#~ msgid "Successfully imported profile {0}" +#~ msgstr "已成功导入配置文件 {0}" + +#~ msgctxt "@info:status" +#~ msgid "Could not find a quality type {0} for the current configuration." +#~ msgstr "无法为当前配置找到质量类型 {0}。" + +#~ msgctxt "info:status" +#~ msgid "Adding printer {} ({}) from your account" +#~ msgstr "正在从您的帐户添加打印机 {} ({})" + +#~ msgctxt "info:hidden list items" +#~ msgid "
  • ... and {} others
  • " +#~ msgstr "
  • ... 和另外 {} 台
  • " + +#~ msgctxt "info:status" +#~ msgid "Printers added from Digital Factory:
      {}
    " +#~ msgstr "从 Digital Factory 添加的打印机:
      {}
    " + +#~ msgctxt "info:status" +#~ msgid "
      {}
    To establish a connection, please visit the Ultimaker Digital Factory." +#~ msgstr "
      {}
    要建立连接,请访问 Ultimaker Digital Factory。" + +#~ msgctxt "@label ({} is printer name)" +#~ msgid "{} will be removed until the next account sync.
    To remove {} permanently, visit Ultimaker Digital Factory.

    Are you sure you want to remove {} temporarily?" +#~ msgstr "{} 将被删除,直至下次帐户同步为止。
    要永久删除 {},请访问 Ultimaker Digital Factory

    是否确实要暂时删除 {}?" + +#~ msgctxt "@label" +#~ msgid "" +#~ "You are about to remove {} printer(s) from Cura. This action cannot be undone. \n" +#~ "Are you sure you want to continue?" +#~ msgstr "" +#~ "您即将从 Cura 中删除 {} 台打印机。此操作无法撤消。\n" +#~ "是否确实要继续?" + +#~ msgctxt "@label" +#~ msgid "" +#~ "You are about to remove all printers from Cura. This action cannot be undone. \n" +#~ "Are you sure you want to continue?" +#~ msgstr "" +#~ "您即将从 Cura 中删除所有打印机。此操作无法撤消。\n" +#~ "是否确实要继续?" + +#~ msgctxt "@action:ComboBox option" +#~ msgid "Update" +#~ msgstr "更新" + +#~ msgctxt "@action:ComboBox option" +#~ msgid "Create new" +#~ msgstr "新建" + +#~ msgctxt "@label" +#~ msgid "Shared Heater" +#~ msgstr "共用加热器" + +#~ msgctxt "@info" +#~ msgid "The webcam is not available because you are monitoring a cloud printer." +#~ msgstr "网络摄像头不可用,因为您正在监控云打印机。" + +#~ msgctxt "@button" +#~ msgid "Ultimaker Digital Factory" +#~ msgstr "Ultimaker Digital Factory" + +#~ msgctxt "@text:window, %1 is a profile name" +#~ msgid "" +#~ "You have customized some profile settings.\n" +#~ "Would you like to Keep these changed settings after switching profiles?\n" +#~ "Alternatively, you can Discard the changes to load the defaults from '%1'." +#~ msgstr "" +#~ "您已经自定义了一些配置文件设置。\n" +#~ "是否要在切换配置文件后保留这些更改的设置?\n" +#~ "或者,也可舍弃更改以从“%1”加载默认值。" + +#~ msgctxt "@label" +#~ msgid "Overrides %1 setting." +#~ msgid_plural "Overrides %1 settings." +#~ msgstr[0] "覆盖 %1 设置。" + +#~ msgctxt "@text" +#~ msgid "Please give your printer a name" +#~ msgstr "请指定打印机名称" + +#~ msgctxt "@info Don't translate {machine_name}, since it gets replaced by a printer name!" +#~ msgid "New features are available for your {machine_name}! It is recommended to update the firmware on your printer." +#~ msgstr "您的 {machine_name} 有新功能可用! 建议您更新打印机上的固件。" + +#~ msgctxt "@action:button" +#~ msgid "Print via Cloud" +#~ msgstr "通过云打印" + +#~ msgctxt "@properties:tooltip" +#~ msgid "Print via Cloud" +#~ msgstr "通过云打印" + +#~ msgctxt "@info:status" +#~ msgid "Connected via Cloud" +#~ msgstr "通过云连接" + +#~ msgctxt "@info:status Ultimaker Cloud should not be translated." +#~ msgid "Connect to Ultimaker Cloud" +#~ msgstr "连接到 Ultimaker Cloud" + +#~ msgctxt "@label" +#~ msgid "You need to login first before you can rate" +#~ msgstr "您需要登录才能评分" + +#~ msgctxt "@label" +#~ msgid "You need to install the package before you can rate" +#~ msgstr "您需要安装程序包才能评分" + +#~ msgctxt "@label" +#~ msgid "ratings" +#~ msgstr "评分" + +#~ msgctxt "@label" +#~ msgid "Featured" +#~ msgstr "精选" + +#~ msgctxt "@label" +#~ msgid "Your rating" +#~ msgstr "您的评分" + +#~ msgctxt "@label" +#~ msgid "Author" +#~ msgstr "作者" + +#~ msgctxt "@description" +#~ msgid "Get plugins and materials verified by Ultimaker" +#~ msgstr "获取经过 Ultimaker 验证的插件和材料" + +#~ msgctxt "@label The argument is a username." +#~ msgid "Hi %1" +#~ msgstr "%1,您好" + +#~ msgctxt "@button" +#~ msgid "Ultimaker account" +#~ msgstr "Ultimaker 帐户" + +#~ msgctxt "@button" +#~ msgid "Sign out" +#~ msgstr "注销" + +#~ msgctxt "@label" +#~ msgid "Support library for analysis of complex networks" +#~ msgstr "用于分析复杂网络的支持库" + +#~ msgctxt "@Label" +#~ msgid "Python HTTP library" +#~ msgstr "Python HTTP 库" + +#~ msgctxt "@text:window" +#~ msgid "" +#~ "You have customized some profile settings.\n" +#~ "Would you like to keep or discard those settings?" +#~ msgstr "" +#~ "您已自定义某些配置文件设置。\n" +#~ "您想保留或舍弃这些设置吗?" + +#~ msgctxt "@title:column" +#~ msgid "Default" +#~ msgstr "默认" + +#~ msgctxt "@title:column" +#~ msgid "Customized" +#~ msgstr "自定义" + +#~ msgctxt "@action:button" +#~ msgid "Discard" +#~ msgstr "舍弃" + +#~ msgctxt "@action:button" +#~ msgid "Keep" +#~ msgstr "保留" + +#~ msgctxt "@action:button" +#~ msgid "Create New Profile" +#~ msgstr "创建新配置文件" + +#~ msgctxt "@title:menu menubar:file" +#~ msgid "&Save..." +#~ msgstr "保存(&S)..." + +#~ msgctxt "@text" +#~ msgid "Place enter your printer's IP address." +#~ msgstr "打印机 IP 地址输入栏。" + +#~ msgctxt "@button" +#~ msgid "Create an account" +#~ msgstr "创建帐户" + +#~ msgctxt "@info:generic" +#~ msgid "" +#~ "\n" +#~ "Do you want to sync material and software packages with your account?" +#~ msgstr "" +#~ "\n" +#~ "是否要与您的帐户同步材料和软件包?" + +#~ msgctxt "@info:generic" +#~ msgid "" +#~ "\n" +#~ "Syncing..." +#~ msgstr "" +#~ "\n" +#~ "正在同步..." + +#~ msgctxt "@info:status" +#~ msgid "Nothing to slice because none of the models fit the build volume or are assigned to a disabled extruder. Please scale or rotate models to fit, or enable an extruder." +#~ msgstr "无法切片,因为没有一个模型适合成形空间体积或被分配至已禁用的挤出机。请缩放或旋转模型以匹配,或启用挤出机。" + +#~ msgctxt "@info:backup_status" +#~ msgid "There was an error listing your backups." +#~ msgstr "列出您的备份时出错。" + +#~ msgctxt "@title:groupbox" +#~ msgid "User description (Note: Developers may not speak your language, please use English if possible)" +#~ msgstr "用户说明(注意:为避免开发人员可能不熟悉您的语言,请尽量使用英语)" + +#~ msgctxt "@title:window" +#~ msgid "Closing Cura" +#~ msgstr "关闭 Cura" + +#~ msgctxt "@label" +#~ msgid "Are you sure you want to exit Cura?" +#~ msgstr "您确定要退出 Cura 吗?" + +#~ msgctxt "@label" +#~ msgid "Language:" +#~ msgstr "语言:" + +#~ msgctxt "@label" +#~ msgid "Ultimaker Cloud" +#~ msgstr "Ultimaker Cloud" + +#~ msgctxt "@text" +#~ msgid "The next generation 3D printing workflow" +#~ msgstr "下一代 3D 打印工作流程" + +#~ msgctxt "@text" +#~ msgid "- Send print jobs to Ultimaker printers outside your local network" +#~ msgstr "- 将打印作业发送到局域网外的 Ultimaker 打印机" + +#~ msgctxt "@text" +#~ msgid "- Store your Ultimaker Cura settings in the cloud for use anywhere" +#~ msgstr "- 将 Ultimaker Cura 设置存储到云以便在任何地方使用" + +#~ msgctxt "@text" +#~ msgid "- Get exclusive access to print profiles from leading brands" +#~ msgstr "- 获得来自领先品牌的打印配置文件的独家访问权限" + +#~ msgctxt "@label" +#~ msgid "The value is resolved from per-extruder values " +#~ msgstr "该值将会根据每一个挤出机的设置而确定 " + +#~ msgctxt "@label" +#~ msgid "The next generation 3D printing workflow" +#~ msgstr "下一代 3D 打印工作流程" + +#~ msgctxt "@text" +#~ msgid "" +#~ "- Send print jobs to Ultimaker printers outside your local network\n" +#~ "- Store your Ultimaker Cura settings in the cloud for use anywhere\n" +#~ "- Get exclusive access to print profiles from leading brands" +#~ msgstr "" +#~ "- 将打印作业发送到局域网外的 Ultimaker 打印机\n" +#~ "- 将 Ultimaker Cura 设置存储到云以便在任何地方使用\n" +#~ "- 获得来自领先品牌的打印配置文件的独家访问权限" + +#~ msgctxt "@title:window" +#~ msgid "About " +#~ msgstr "关于 " + +#~ msgctxt "@info:button" +#~ msgid "Quit Cura" +#~ msgstr "退出 Cura" + +#~ msgctxt "@action:checkbox" +#~ msgid "Infill only" +#~ msgstr "仅填充" + +#~ msgctxt "@info:tooltip" +#~ msgid "Change active post-processing scripts" +#~ msgstr "更改目前启用的后期处理脚本" + +#~ msgctxt "@label:listbox" +#~ msgid "Feedrate" +#~ msgstr "进给速度" + +#~ msgctxt "name" +#~ msgid "Machine Settings action" +#~ msgstr "打印机设置操作" + +#~ msgctxt "@info:title" +#~ msgid "New cloud printers found" +#~ msgstr "发现新的云打印机" + +#~ msgctxt "@info:message" +#~ msgid "New printers have been found connected to your account, you can find them in your list of discovered printers." +#~ msgstr "发现有新打印机连接到您的帐户。您可以在已发现的打印机列表中查找新连接的打印机。" + +#~ msgctxt "@info:status" +#~ msgid "Cura does not accurately display layers when Wire Printing is enabled" +#~ msgstr "当单线打印(Wire Printing)功能开启时,Cura 将无法准确地显示打印层(Layers)" + +#~ msgctxt "@label" +#~ msgid "Pre-sliced file {0}" +#~ msgstr "预切片文件 {0}" + +#~ msgctxt "@label" +#~ msgid "" +#~ "This plugin contains a license.\n" +#~ "You need to accept this license to install this plugin.\n" +#~ "Do you agree with the terms below?" +#~ msgstr "" +#~ "该插件包含一个许可。\n" +#~ "您需要接受此许可才能安装此插件。\n" +#~ "是否同意下列条款?" + +#~ msgctxt "@action:button" +#~ msgid "Accept" +#~ msgstr "接受" + +#~ msgctxt "@action:button" +#~ msgid "Decline" +#~ msgstr "拒绝" + +#~ msgctxt "@action:inmenu" +#~ msgid "Show All Settings" +#~ msgstr "显示所有设置" + +#~ msgctxt "@title:window" +#~ msgid "Ultimaker Cura" +#~ msgstr "Ultimaker Cura" + +#~ msgctxt "@title:window" +#~ msgid "About Cura" +#~ msgstr "关于 Cura" + +#~ msgctxt "@item:inmenu" +#~ msgid "Flatten active settings" +#~ msgstr "合并有效设置" + +#~ msgctxt "@info:status" +#~ msgid "Profile has been flattened & activated." +#~ msgstr "配置文件已被合并并激活。" + +#~ msgctxt "X3g Writer Plugin Description" +#~ msgid "Writes X3g to files" +#~ msgstr "写入 X3g 到文件" + +#~ msgctxt "X3g Writer File Description" +#~ msgid "X3g File" +#~ msgstr "X3g 文件" + +#~ msgctxt "X3G Writer File Description" +#~ msgid "X3G File" +#~ msgstr "X3G 文件" + +#~ msgctxt "@item:inlistbox" +#~ msgid "Open Compressed Triangle Mesh" +#~ msgstr "打开压缩三角网格" + +#~ msgctxt "@item:inmenu" +#~ msgid "Profile Assistant" +#~ msgstr "配置文件助手" + +#~ msgctxt "@item:inlistbox" +#~ msgid "Profile Assistant" +#~ msgstr "配置文件助手" + +#~ msgctxt "@action:button" +#~ msgid "Retry" +#~ msgstr "重试" + +#~ msgctxt "@label:table_header" +#~ msgid "Print Core" +#~ msgstr "打印芯" + +#~ msgctxt "@label" +#~ msgid "Don't support overlap with other models" +#~ msgstr "不支持与其他模型重叠" + +#~ msgctxt "@label" +#~ msgid "Modify settings for overlap with other models" +#~ msgstr "修改与其他模型重叠的设置" + +#~ msgctxt "@label" +#~ msgid "Modify settings for infill of other models" +#~ msgstr "修改其他模型填充物的设置" + +#~ msgctxt "@action:ComboBox option" +#~ msgid "Update existing" +#~ msgstr "更新已有配置" + +#~ msgctxt "@label" +#~ msgid "Not supported" +#~ msgstr "不支持" + +#~ msgctxt "@action:button" +#~ msgid "Previous" +#~ msgstr "上一步" + +#~ msgctxt "@label" +#~ msgid "Tip" +#~ msgstr "提示" + +#~ msgctxt "@label" +#~ msgid "Print experiment" +#~ msgstr "打印试验" + +#~ msgctxt "@label" +#~ msgid "Checklist" +#~ msgstr "检查表" + +#~ msgctxt "@label" +#~ msgid "Please select any upgrades made to this Ultimaker 2." +#~ msgstr "请选择适用于 Ultimaker 2 的升级文件。" + +#~ msgctxt "@label" +#~ msgid "Olsson Block" +#~ msgstr "Olsson Block" + +#~ msgctxt "@window:text" +#~ msgid "Camera rendering: " +#~ msgstr "摄像头渲染: " + +#~ msgctxt "@info:tooltip" +#~ msgid "Use multi build plate functionality" +#~ msgstr "使用多打印平台功能" + +#~ msgctxt "@option:check" +#~ msgid "Use multi build plate functionality (restart required)" +#~ msgstr "使用多打印平台功能(需要重启)" + +#~ msgctxt "@label" +#~ msgid "Default profiles" +#~ msgstr "默认配置文件" + +#~ msgctxt "@label:textbox" +#~ msgid "search settings" +#~ msgstr "搜索设置" + +#~ msgctxt "@label" +#~ msgid "Layer Height" +#~ msgstr "层高" + +#~ msgctxt "@tooltip" +#~ msgid "This quality profile is not available for your current material and nozzle configuration. Please change these to enable this quality profile." +#~ msgstr "此质量配置文件不适用于当前材料和喷嘴配置。请进行更改以便启用此质量配置文件。" + +#~ msgctxt "@tooltip" +#~ msgid "A custom profile is currently active. To enable the quality slider, choose a default quality profile in Custom tab" +#~ msgstr "自定义配置文件目前处于活动状态。 如要启用质量滑块,请在“自定义”选项卡中选择一个默认质量配置文件" + +#~ msgctxt "@title:menu" +#~ msgid "&Build plate" +#~ msgstr "打印平台(&B)" + +#~ msgctxt "@title:settings" +#~ msgid "&Profile" +#~ msgstr "配置文件(&P)" + +#~ msgctxt "@action:label" +#~ msgid "Build plate" +#~ msgstr "打印平台" + +#~ msgctxt "description" +#~ msgid "Dump the contents of all settings to a HTML file." +#~ msgstr "将所有设置内容转储至 HTML 文件。" + +#~ msgctxt "name" +#~ msgid "God Mode" +#~ msgstr "God 模式" + +#~ msgctxt "description" +#~ msgid "Create a flattened quality changes profile." +#~ msgstr "创建一份合并质量变化配置文件。" + +#~ msgctxt "name" +#~ msgid "Profile Flattener" +#~ msgstr "配置文件合并器" + +#~ msgctxt "description" +#~ msgid "Allows material manufacturers to create new material and quality profiles using a drop-in UI." +#~ msgstr "允许材料制造商使用下拉式 UI 创建新的材料和质量配置文件。" + +#~ msgctxt "name" +#~ msgid "Print Profile Assistant" +#~ msgstr "打印配置文件助手" + +#~ msgctxt "@info:status" +#~ msgid "Connected over the network." +#~ msgstr "已通过网络连接。" + +#~ msgctxt "@info:status" +#~ msgid "Connected over the network. Please approve the access request on the printer." +#~ msgstr "已通过网络连接。请在打印机上接受访问请求。" + +#~ msgctxt "@info:status" +#~ msgid "Connected over the network. No access to control the printer." +#~ msgstr "已通过网络连接,但没有打印机的控制权限。" + +#~ msgctxt "@info:status" +#~ msgid "Access to the printer requested. Please approve the request on the printer" +#~ msgstr "已发送打印机访问请求,请在打印机上批准该请求" + +#~ msgctxt "@info:title" +#~ msgid "Authentication status" +#~ msgstr "身份验证状态" + +#~ msgctxt "@info:title" +#~ msgid "Authentication Status" +#~ msgstr "身份验证状态" + +#~ msgctxt "@info:tooltip" +#~ msgid "Re-send the access request" +#~ msgstr "重新发送访问请求" + +#~ msgctxt "@info:status" +#~ msgid "Access to the printer accepted" +#~ msgstr "打印机接受了访问请求" + +#~ msgctxt "@info:status" +#~ msgid "No access to print with this printer. Unable to send print job." +#~ msgstr "无法使用本打印机进行打印,无法发送打印作业。" + +#~ msgctxt "@action:button" +#~ msgid "Request Access" +#~ msgstr "请求访问" + +#~ msgctxt "@info:tooltip" +#~ msgid "Send access request to the printer" +#~ msgstr "向打印机发送访问请求" + +#~ msgctxt "@label" +#~ msgid "Unable to start a new print job." +#~ msgstr "无法启动新的打印作业。" + +#~ msgctxt "@label" +#~ msgid "There is an issue with the configuration of your Ultimaker, which makes it impossible to start the print. Please resolve this issues before continuing." +#~ msgstr "Ultimaker 配置存在问题,导致无法开始打印。请解决此问题,然后再继续。" + +#~ msgctxt "@window:title" +#~ msgid "Mismatched configuration" +#~ msgstr "配置不匹配" + +#~ msgctxt "@label" +#~ msgid "Are you sure you wish to print with the selected configuration?" +#~ msgstr "您确定要使用所选配置进行打印吗?" + +#~ msgctxt "@label" +#~ msgid "There is a mismatch between the configuration or calibration of the printer and Cura. For the best result, always slice for the PrintCores and materials that are inserted in your printer." +#~ msgstr "打印机的配置或校准与 Cura 之间不匹配。为了获得最佳打印效果,请务必切换打印头和打印机中插入的材料。" + +#~ msgctxt "@info:status" +#~ msgid "Sending new jobs (temporarily) blocked, still sending the previous print job." +#~ msgstr "发送新作业(暂时)受阻,仍在发送前一份打印作业。" + +#~ msgctxt "@info:status" +#~ msgid "Sending data to printer" +#~ msgstr "向打印机发送数据" + +#~ msgctxt "@info:title" +#~ msgid "Sending Data" +#~ msgstr "正在发送数据" + +#~ msgctxt "@info:status" +#~ msgid "No Printcore loaded in slot {slot_number}" +#~ msgstr "插槽 {slot_number} 中未加载 Printcore" + +#~ msgctxt "@info:status" +#~ msgid "No material loaded in slot {slot_number}" +#~ msgstr "插槽 {slot_number} 中未加载材料" + +#~ msgctxt "@label" +#~ msgid "Different PrintCore (Cura: {cura_printcore_name}, Printer: {remote_printcore_name}) selected for extruder {extruder_id}" +#~ msgstr "为挤出机 {extruder_id} 选择了不同的 PrintCore(Cura: {cura_printcore_name},打印机:{remote_printcore_name})" + +#~ msgctxt "@label" +#~ msgid "Different material (Cura: {0}, Printer: {1}) selected for extruder {2}" +#~ msgstr "您为挤出机 {2} 选择了不同的材料(Cura:{0},打印机:{1})" + +#~ msgctxt "@window:title" +#~ msgid "Sync with your printer" +#~ msgstr "与您的打印机同步" + +#~ msgctxt "@label" +#~ msgid "Would you like to use your current printer configuration in Cura?" +#~ msgstr "您想在 Cura 中使用当前的打印机配置吗?" + +#~ msgctxt "@label" +#~ msgid "The PrintCores and/or materials on your printer differ from those within your current project. For the best result, always slice for the PrintCores and materials that are inserted in your printer." +#~ msgstr "打印机上的打印头和/或材料与当前项目中的不同。 为获得最佳打印效果,请始终使用已插入打印机的打印头和材料进行切片。" + +#~ msgctxt "@action:button" +#~ msgid "View in Monitor" +#~ msgstr "在监控器中查看" + +#~ msgctxt "@info:status" +#~ msgid "Printer '{printer_name}' has finished printing '{job_name}'." +#~ msgstr "打印机 '{printer_name}' 完成了打印任务 '{job_name}'。" + +#~ msgctxt "@info:status" +#~ msgid "The print job '{job_name}' was finished." +#~ msgstr "打印作业 '{job_name}' 已完成。" + +#~ msgctxt "@info:status" +#~ msgid "Print finished" +#~ msgstr "打印完成" + +#~ msgctxt "@label:material" +#~ msgid "Empty" +#~ msgstr "空" + +#~ msgctxt "@label:material" +#~ msgid "Unknown" +#~ msgstr "未知" + +#~ msgctxt "@info:title" +#~ msgid "Cloud error" +#~ msgstr "云错误" + +#~ msgctxt "@info:status" +#~ msgid "Could not export print job." +#~ msgstr "无法导出打印作业。" + +#~ msgctxt "@info:description" +#~ msgid "There was an error connecting to the cloud." +#~ msgstr "连接到云时出错。" + +#~ msgctxt "@info:status" +#~ msgid "Uploading via Ultimaker Cloud" +#~ msgstr "通过 Ultimaker Cloud 上传" + +#~ msgctxt "@info:status Ultimaker Cloud is a brand name and shouldn't be translated." +#~ msgid "Connect to Ultimaker Cloud" +#~ msgstr "连接到 Ultimaker Cloud" + +#~ msgctxt "@action" +#~ msgid "Don't ask me again for this printer." +#~ msgstr "对此打印机不再询问。" + +#~ msgctxt "@info:status" +#~ msgid "You can now send and monitor print jobs from anywhere using your Ultimaker account." +#~ msgstr "您现在可以使用您的 Ultimaker account 帐户从任何地方发送和监控打印作业。" + +#~ msgctxt "@info:status" +#~ msgid "Connected!" +#~ msgstr "已连接!" + +#~ msgctxt "@action" +#~ msgid "Review your connection" +#~ msgstr "查看您的连接" + +#~ msgctxt "@info:status Don't translate the XML tags !" +#~ msgid "The machine defined in profile {0} ({1}) doesn't match with your current machine ({2}), could not import it." +#~ msgstr "配置文件 {0} ({1}) 中定义的机器与当前机器 ({2}) 不匹配,无法导入。" + +#~ msgctxt "@info:status Don't translate the XML tags or !" +#~ msgid "Failed to import profile from {0}:" +#~ msgstr "无法从 {0} 导入配置文件:" + +#~ msgctxt "@window:title" +#~ msgid "Existing Connection" +#~ msgstr "现有连接" + +#~ msgctxt "@message:text" +#~ msgid "This printer/group is already added to Cura. Please select another printer/group." +#~ msgstr "此打印机/打印机组已添加到 Cura。请选择其他打印机/打印机组。" + +#~ msgctxt "@label" +#~ msgid "Enter the IP address or hostname of your printer on the network." +#~ msgstr "输入打印机在网络上的 IP 地址或主机名。" + +#~ msgctxt "@info:tooltip" +#~ msgid "Connect to a printer" +#~ msgstr "连接到打印机" + +#~ msgctxt "@title" +#~ msgid "Cura Settings Guide" +#~ msgstr "Cura 设置向导" + +#~ msgctxt "@info:tooltip" +#~ msgid "Zooming towards the mouse is not supported in the orthogonal perspective." +#~ msgstr "正交透视中不支持通过鼠标缩放。" + +#~ msgid "Orthogonal" +#~ msgstr "正交" + +#~ msgctxt "description" +#~ msgid "Manages network connections to Ultimaker 3 printers." +#~ msgstr "管理与最后的3个打印机的网络连接。" + +#~ msgctxt "name" +#~ msgid "UM3 Network Connection" +#~ msgstr "UM3 网络连接" + +#~ msgctxt "description" +#~ msgid "Provides extra information and explanations about settings in Cura, with images and animations." +#~ msgstr "提供关于 Cura 设置的额外信息和说明,并附上图片及动画。" + +#~ msgctxt "name" +#~ msgid "Settings Guide" +#~ msgstr "设置向导" + +#~ msgctxt "@item:inmenu" +#~ msgid "Cura Settings Guide" +#~ msgstr "Cura 设置向导" + +#~ msgctxt "@info:generic" +#~ msgid "Settings have been changed to match the current availability of extruders: [%s]" +#~ msgstr "已根据挤出机的当前可用性更改设置:[%s]" + +#~ msgctxt "@title:groupbox" +#~ msgid "User description" +#~ msgstr "用户说明" + +#~ msgctxt "@info" +#~ msgid "These options are not available because you are monitoring a cloud printer." +#~ msgstr "这些选项不可用,因为您正在监控云打印机。" + +#~ msgctxt "@label link to connect manager" +#~ msgid "Go to Cura Connect" +#~ msgstr "转到 Cura Connect" + +#~ msgctxt "@info" +#~ msgid "All jobs are printed." +#~ msgstr "已完成所有打印工作。" + +#~ msgctxt "@label link to connect manager" +#~ msgid "View print history" +#~ msgstr "查看打印历史" + +#~ msgctxt "@label" +#~ msgid "" +#~ "To print directly to your printer over the network, please make sure your printer is connected to the network using a network cable or by connecting your printer to your WIFI network. If you don't connect Cura with your printer, you can still use a USB drive to transfer g-code files to your printer.\n" +#~ "\n" +#~ "Select your printer from the list below:" +#~ msgstr "" +#~ "要通过网络向打印机发送打印请求,请确保您的打印机已通过网线或 WIFI 连接到网络。若您不能连接 Cura 与打印机,您仍然可以使用 USB 设备将 G-code 文件传输到打印机。\n" +#~ "\n" +#~ "从以下列表中选择您的打印机:" + +#~ msgctxt "@info" +#~ msgid "" +#~ "Please make sure your printer has a connection:\n" +#~ "- Check if the printer is turned on.\n" +#~ "- Check if the printer is connected to the network." +#~ msgstr "" +#~ "请确保您的打印机已连接:\n" +#~ "- 检查打印机是否已启动。\n" +#~ "- 检查打印机是否连接到网络。" + +#~ msgctxt "@option:check" +#~ msgid "See only current build plate" +#~ msgstr "只能看到当前的打印平台" + +#~ msgctxt "@action:button" +#~ msgid "Arrange to all build plates" +#~ msgstr "编位到所有打印平台" + +#~ msgctxt "@action:button" +#~ msgid "Arrange current build plate" +#~ msgstr "编位当前打印平台" + +#~ msgctxt "description" +#~ msgid "Allows saving the resulting slice as an X3G file, to support printers that read this format (Malyan, Makerbot and other Sailfish-based printers)." +#~ msgstr "允许将产生的切片保存为X3G文件,以支持读取此格式的打印机(Malyan、Makerbot和其他基于sailfish打印机的打印机)。" + +#~ msgctxt "name" +#~ msgid "X3GWriter" +#~ msgstr "X3G写" + +#~ msgctxt "description" +#~ msgid "Reads SVG files as toolpaths, for debugging printer movements." +#~ msgstr "读取 SVG 文件的刀具路径,调试打印机活动。" + +#~ msgctxt "name" +#~ msgid "SVG Toolpath Reader" +#~ msgstr "SVG 刀具路径读取器" + +#~ msgctxt "@item:inmenu" +#~ msgid "Changelog" +#~ msgstr "更新日志" + +#~ msgctxt "@item:inmenu" +#~ msgid "Show Changelog" +#~ msgstr "显示更新日志" + +#~ msgctxt "@info:status" +#~ msgid "Sending data to remote cluster" +#~ msgstr "发送数据至远程群集" + +#~ msgctxt "@info:status" +#~ msgid "Connect to Ultimaker Cloud" +#~ msgstr "连接到 Ultimaker Cloud" + +#~ msgctxt "@info" +#~ msgid "Cura collects anonymized usage statistics." +#~ msgstr "Cura 将收集匿名的使用统计数据。" + +#~ msgctxt "@info:title" +#~ msgid "Collecting Data" +#~ msgstr "正在收集数据" + +#~ msgctxt "@action:button" +#~ msgid "More info" +#~ msgstr "详细信息" + +#~ msgctxt "@action:tooltip" +#~ msgid "See more information on what data Cura sends." +#~ msgstr "请参阅更多关于Cura发送的数据的信息。" + +#~ msgctxt "@action:button" +#~ msgid "Allow" +#~ msgstr "允许" + +#~ msgctxt "@action:tooltip" +#~ msgid "Allow Cura to send anonymized usage statistics to help prioritize future improvements to Cura. Some of your preferences and settings are sent, the Cura version and a hash of the models you're slicing." +#~ msgstr "允许 Cura 发送匿名的使用统计数据,以帮助确定将来 Cura 的改进优先顺序。已发送您的一些偏好和设置,Cura 版本和您正在切片的模型的散列值。" + +#~ msgctxt "@item:inmenu" +#~ msgid "Evaluation" +#~ msgstr "评估" + +#~ msgctxt "@info:title" +#~ msgid "Network enabled printers" +#~ msgstr "网络打印机" + +#~ msgctxt "@info:title" +#~ msgid "Local printers" +#~ msgstr "本地打印机" + +#~ msgctxt "@info:backup_failed" +#~ msgid "Tried to restore a Cura backup that does not match your current version." +#~ msgstr "试图恢复与您当前版本不匹配的Cura备份。" + +#~ msgctxt "@title" +#~ msgid "Machine Settings" +#~ msgstr "打印机设置" + +#~ msgctxt "@label" +#~ msgid "Printer Settings" +#~ msgstr "打印机设置" + +#~ msgctxt "@option:check" +#~ msgid "Origin at center" +#~ msgstr "置中" + +#~ msgctxt "@option:check" +#~ msgid "Heated bed" +#~ msgstr "加热床" + +#~ msgctxt "@label" +#~ msgid "Printhead Settings" +#~ msgstr "打印头设置" + +#~ msgctxt "@tooltip" +#~ msgid "Distance from the left of the printhead to the center of the nozzle. Used to prevent colissions between previous prints and the printhead when printing \"One at a Time\"." +#~ msgstr "打印头左侧至喷嘴中心的距离。 用于防止“排队”打印时之前的打印品与打印头发生碰撞。" + +#~ msgctxt "@tooltip" +#~ msgid "Distance from the front of the printhead to the center of the nozzle. Used to prevent colissions between previous prints and the printhead when printing \"One at a Time\"." +#~ msgstr "打印头前端至喷嘴中心的距离。 用于防止“排队”打印时之前的打印品与打印头发生碰撞。" + +#~ msgctxt "@tooltip" +#~ msgid "Distance from the right of the printhead to the center of the nozzle. Used to prevent colissions between previous prints and the printhead when printing \"One at a Time\"." +#~ msgstr "打印头右侧至喷嘴中心的距离。 用于防止“排队”打印时之前的打印品与打印头发生碰撞。" + +#~ msgctxt "@tooltip" +#~ msgid "Distance from the rear of the printhead to the center of the nozzle. Used to prevent colissions between previous prints and the printhead when printing \"One at a Time\"." +#~ msgstr "打印头后部至喷嘴中心的距离。 用于防止“排队”打印时之前的打印品与打印头发生碰撞。" + +#~ msgctxt "@label" +#~ msgid "Gantry height" +#~ msgstr "十字轴高度" + +#~ msgctxt "@tooltip" +#~ msgid "The height difference between the tip of the nozzle and the gantry system (X and Y axes). Used to prevent collisions between previous prints and the gantry when printing \"One at a Time\"." +#~ msgstr "喷嘴尖端与十字轴系统(X 轴和 Y 轴)之间的高度差。 用于防止“排队”打印时之前的打印品与十字轴发生碰撞。" + +#~ msgctxt "@label" +#~ msgid "Start G-code" +#~ msgstr "开始 G-code" + +#~ msgctxt "@tooltip" +#~ msgid "G-code commands to be executed at the very start." +#~ msgstr "将在开始时执行的 G-code 命令。" + +#~ msgctxt "@label" +#~ msgid "End G-code" +#~ msgstr "结束 G-code" + +#~ msgctxt "@tooltip" +#~ msgid "G-code commands to be executed at the very end." +#~ msgstr "将在结束时执行的 G-code 命令。" + +#~ msgctxt "@label" +#~ msgid "Nozzle Settings" +#~ msgstr "喷嘴设置" + +#~ msgctxt "@tooltip" +#~ msgid "The nominal diameter of filament supported by the printer. The exact diameter will be overridden by the material and/or the profile." +#~ msgstr "打印机所支持耗材的公称直径。 材料和/或配置文件将覆盖精确直径。" + +#~ msgctxt "@label" +#~ msgid "Extruder Start G-code" +#~ msgstr "挤出机的开始 G-code" + +#~ msgctxt "@label" +#~ msgid "Extruder End G-code" +#~ msgstr "挤出机的结束 G-code" + +#~ msgctxt "@label" +#~ msgid "Changelog" +#~ msgstr "更新日志" + +#~ msgctxt "@title:window" +#~ msgid "User Agreement" +#~ msgstr "用户协议" + +#~ msgctxt "@alabel" +#~ msgid "Enter the IP address or hostname of your printer on the network." +#~ msgstr "输入打印机在网络上的 IP 地址或主机名。" + +#~ msgctxt "@info" +#~ msgid "Please select a network connected printer to monitor." +#~ msgstr "请选择已连接网络的打印机进行监控。" + +#~ msgctxt "@info" +#~ msgid "Please connect your Ultimaker printer to your local network." +#~ msgstr "请将 Ultimaker 打印机连接到您的局域网。" + +#~ msgctxt "@text:window" +#~ msgid "Cura sends anonymous data to Ultimaker in order to improve the print quality and user experience. Below is an example of all the data that is sent." +#~ msgstr "Cura向最终用户发送匿名数据,以提高打印质量和用户体验。下面是发送的所有数据的一个示例。" + +#~ msgctxt "@text:window" +#~ msgid "I don't want to send this data" +#~ msgstr "我不想发送此数据" + +#~ msgctxt "@text:window" +#~ msgid "Allow sending this data to Ultimaker and help us improve Cura" +#~ msgstr "允许向 Ultimaker 发送此数据并帮助我们改善 Cura" + +#~ msgctxt "@label" +#~ msgid "No print selected" +#~ msgstr "未选择打印" + +#~ msgctxt "@info:tooltip" +#~ msgid "By default, white pixels represent high points on the mesh and black pixels represent low points on the mesh. Change this option to reverse the behavior such that black pixels represent high points on the mesh and white pixels represent low points on the mesh." +#~ msgstr "默认情况下,白色像素表示网格上的高点,黑色像素表示网格上的低点。若更改此选项将反其道而行之,相当于图像编辑软件中的「反相」操作。" + +#~ msgctxt "@title" +#~ msgid "Select Printer Upgrades" +#~ msgstr "选择打印机升级" + +#~ msgctxt "@label" +#~ msgid "Select which extruder to use for support. This will build up supporting structures below the model to prevent the model from sagging or printing in mid air." +#~ msgstr "选择用于支撑的挤出机。该挤出机将在模型之下建立支撑结构,以防止模型下垂或在空中打印。" + +#~ msgctxt "@tooltip" +#~ msgid "This quality profile is not available for your current material and nozzle configuration. Please change these to enable this quality profile" +#~ msgstr "此质量配置文件不适用于当前材料和喷嘴配置。请更改配置以便启用此配置文件" + +#~ msgctxt "@label shown when we load a Gcode file" +#~ msgid "Print setup disabled. G code file can not be modified." +#~ msgstr "打印设置已禁用。无法修改 G code 文件。" + +#~ msgctxt "@label" +#~ msgid "See the material compatibility chart" +#~ msgstr "查看材料兼容性图表" + +#~ msgctxt "@label" +#~ msgid "View types" +#~ msgstr "查看类型" + +#~ msgctxt "@label" +#~ msgid "Hi " +#~ msgstr "您好 " + +#~ msgctxt "@text" +#~ msgid "" +#~ "- Send print jobs to Ultimaker printers outside your local network\n" +#~ "- Store your Ultimaker Cura settings in the cloud for use anywhere\n" +#~ "- Get exclusive access to material profiles from leading brands" +#~ msgstr "" +#~ "- 发送打印作业到局域网外的 Ultimaker 打印机\n" +#~ "- 将 Ultimaker Cura 设置存储到云以便在任何地方使用\n" +#~ "- 获得来自领先品牌的材料配置文件的独家访问权限" + +#~ msgctxt "@label:PrintjobStatus" +#~ msgid "Unable to Slice" +#~ msgstr "无法切片" + +#~ msgctxt "@label" +#~ msgid "Time specification" +#~ msgstr "时间规格" + +#~ msgctxt "@label" +#~ msgid "Material specification" +#~ msgstr "材料规格" + +#~ msgctxt "@title:tab" +#~ msgid "Add a printer to Cura" +#~ msgstr "添加打印机到 Cura" + +#~ msgctxt "@title:tab" +#~ msgid "" +#~ "Select the printer you want to use from the list below.\n" +#~ "\n" +#~ "If your printer is not in the list, use the \"Custom FFF Printer\" from the \"Custom\" category and adjust the settings to match your printer in the next dialog." +#~ msgstr "" +#~ "从以下列表中选择您要使用的打印机。\n" +#~ "\n" +#~ "如果您的打印机不在列表中,使用“自定义”类别中的“自定义 FFF 打印机”,并在下一个对话框中调整设置以匹配您的打印机。" + +#~ msgctxt "@label" +#~ msgid "Printer Name" +#~ msgstr "打印机名称" + +#~ msgctxt "@action:button" +#~ msgid "Add Printer" +#~ msgstr "新增打印机" + +#~ msgid "Modify G-Code" +#~ msgstr "修改 G-Code 文件" + +#~ msgctxt "@info:status" +#~ msgid "Nothing to slice because none of the models fit the build volume. Please scale or rotate models to fit." +#~ msgstr "无法执行,因为没有一个模型符合成形空间体积。请缩放或旋转模型以适应打印平台。" + +#~ msgctxt "@info:status" +#~ msgid "The selected material is incompatible with the selected machine or configuration." +#~ msgstr "所选材料与所选机器或配置不兼容。" + +#~ msgctxt "@info:title" +#~ msgid "Incompatible Material" +#~ msgstr "不兼容材料" + +#~ msgctxt "@info:status Don't translate the XML tags or !" +#~ msgid "Failed to import profile from {0}: {1}" +#~ msgstr "无法从 {0} 导入配置文件: {1}" + +#~ msgctxt "@title" +#~ msgid "Toolbox" +#~ msgstr "工具箱" + +#~ msgctxt "@label" +#~ msgid "Not available" +#~ msgstr "不可用" + +#~ msgctxt "@label" +#~ msgid "Unreachable" +#~ msgstr "无法连接" + +#~ msgctxt "@label" +#~ msgid "Available" +#~ msgstr "可用" + +#~ msgctxt "@label:status" +#~ msgid "Preparing" +#~ msgstr "准备" + +#~ msgctxt "@label:status" +#~ msgid "Pausing" +#~ msgstr "暂停" + +#~ msgctxt "@label:status" +#~ msgid "Resuming" +#~ msgstr "恢复" + +#~ msgctxt "@label" +#~ msgid "Waiting for: Unavailable printer" +#~ msgstr "等待:不可用的打印机" + +#~ msgctxt "@label" +#~ msgid "Waiting for: First available" +#~ msgstr "等待:第一个可用的" + +#~ msgctxt "@label" +#~ msgid "Waiting for: " +#~ msgstr "等待: " + +#~ msgctxt "@label" +#~ msgid "Configuration change" +#~ msgstr "配置更改" + +#~ msgctxt "@label" +#~ msgid "The assigned printer, %1, requires the following configuration change(s):" +#~ msgstr "分配的打印机 %1 需要以下配置更改:" + +#~ msgctxt "@label" +#~ msgid "Override" +#~ msgstr "覆盖" + +#~ msgctxt "@label" +#~ msgid "Starting a print job with an incompatible configuration could damage your 3D printer. Are you sure you want to override the configuration and print %1?" +#~ msgstr "使用不兼容的配置启动打印作业可能会损坏 3D 打印机。您确定要覆盖配置并打印 %1 吗?" + +#~ msgctxt "@window:title" +#~ msgid "Override configuration configuration and start print" +#~ msgstr "覆盖配置并开始打印" + +#~ msgctxt "@label link to connect manager" +#~ msgid "Manage queue" +#~ msgstr "管理队列" + +#~ msgctxt "@label" +#~ msgid "Printing" +#~ msgstr "打印" + +#~ msgctxt "@label link to connect manager" +#~ msgid "Manage printers" +#~ msgstr "管理打印机" + +#~ msgctxt "@action:button" +#~ msgid "Activate Configuration" +#~ msgstr "应用配置" + +#~ msgctxt "@info:tooltip" +#~ msgid "Load the configuration of the printer into Cura" +#~ msgstr "将打印机配置导入 Cura" + +#~ msgctxt "@label" +#~ msgid "Show Travels" +#~ msgstr "显示移动轨迹" + +#~ msgctxt "@label" +#~ msgid "Show Helpers" +#~ msgstr "显示打印辅助结构" + +#~ msgctxt "@label" +#~ msgid "Show Shell" +#~ msgstr "显示外壳" + +#~ msgctxt "@label" +#~ msgid "Show Infill" +#~ msgstr "显示填充" + +#~ msgctxt "@text:window" +#~ msgid "I don't want to send these data" +#~ msgstr "我不想发送这些数据" + +#~ msgctxt "@text:window" +#~ msgid "Allow sending these data to Ultimaker and help us improve Cura" +#~ msgstr "允许将这些数据发送到最后一个,帮助我们改进Cura" + +#~ msgctxt "@label" +#~ msgid "Printer type:" +#~ msgstr "打印机类型:" + +#~ msgctxt "@label" +#~ msgid "Connection:" +#~ msgstr "连接:" + +#~ msgctxt "@label" +#~ msgid "State:" +#~ msgstr "状态:" + +#~ msgctxt "@label:MonitorStatus" +#~ msgid "Waiting for a printjob" +#~ msgstr "等待打印作业" + +#~ msgctxt "@label:MonitorStatus" +#~ msgid "Waiting for someone to clear the build plate" +#~ msgstr "等待清理打印平台" + +#~ msgctxt "@label:MonitorStatus" +#~ msgid "Aborting print..." +#~ msgstr "中止打印..." + +#~ msgctxt "@label" +#~ msgid "Protected profiles" +#~ msgstr "受保护的配置文件" + +#~ msgctxt "@label" +#~ msgid "Printer Name:" +#~ msgstr "打印机名称:" + +#~ msgctxt "@label" +#~ msgid "Profile:" +#~ msgstr "配置文件:" + +#~ msgctxt "@label:textbox" +#~ msgid "Search..." +#~ msgstr "搜索..." + +#~ msgctxt "@action:inmenu" +#~ msgid "Collapse All" +#~ msgstr "全部折叠" + +#~ msgctxt "@action:inmenu" +#~ msgid "Expand All" +#~ msgstr "全部展开" + +#~ msgctxt "@label:header configurations" +#~ msgid "Available configurations" +#~ msgstr "可用配置" + +#~ msgctxt "@label:extruder label" +#~ msgid "Extruder" +#~ msgstr "挤出机" + +#~ msgctxt "@label:extruder label" +#~ msgid "Yes" +#~ msgstr "是" + +#~ msgctxt "@label:extruder label" +#~ msgid "No" +#~ msgstr "不是" + +#~ msgctxt "@label:listbox" +#~ msgid "Print Setup" +#~ msgstr "打印设置" + +#~ msgctxt "@label:listbox" +#~ msgid "" +#~ "Print Setup disabled\n" +#~ "G-code files cannot be modified" +#~ msgstr "" +#~ "打印设置已禁用\n" +#~ "G-code 文件无法被修改" + +#~ msgctxt "@label Hours and minutes" +#~ msgid "00h 00min" +#~ msgstr "00 小时 00 分" + +#~ msgctxt "@tooltip" +#~ msgid "Time specification" +#~ msgstr "时间规格" + +#~ msgctxt "@label" +#~ msgid "Cost specification" +#~ msgstr "成本规定" + +#~ msgctxt "@label" +#~ msgid "Total:" +#~ msgstr "总计:" + +#~ msgctxt "@tooltip" +#~ msgid "Recommended Print Setup

    Print with the recommended settings for the selected printer, material and quality." +#~ msgstr "推荐的打印设置

    使用针对所选打印机、材料和质量的推荐设置进行打印。" + +#~ msgctxt "@tooltip" +#~ msgid "Custom Print Setup

    Print with finegrained control over every last bit of the slicing process." +#~ msgstr "自定义打印设置

    对切片过程中的每一个细节进行精细控制。" + +#~ msgctxt "@action:inmenu menubar:help" +#~ msgid "Show Engine &Log..." +#~ msgstr "显示引擎日志(&L)..." + +#~ msgctxt "@action:menu" +#~ msgid "Browse packages..." +#~ msgstr "浏览包……" + +#~ msgctxt "@action:inmenu menubar:view" +#~ msgid "Expand/Collapse Sidebar" +#~ msgstr "展开/折叠侧边栏" + +#~ msgctxt "@label:PrintjobStatus" +#~ msgid "Please load a 3D model" +#~ msgstr "请载入一个 3D 模型" + +#~ msgctxt "@label:PrintjobStatus" +#~ msgid "Ready to slice" +#~ msgstr "切片已准备就绪" + +#~ msgctxt "@label:PrintjobStatus %1 is target operation" +#~ msgid "Ready to %1" +#~ msgstr "%1 已准备就绪" + +#~ msgctxt "@label:PrintjobStatus" +#~ msgid "Slicing unavailable" +#~ msgstr "切片不可用" + +#~ msgctxt "@info:tooltip" +#~ msgid "Slice current printjob" +#~ msgstr "分割当前打印作业" + +#~ msgctxt "@info:tooltip" +#~ msgid "Cancel slicing process" +#~ msgstr "取消切片流程" + +#~ msgctxt "@label:Printjob" +#~ msgid "Prepare" +#~ msgstr "准备" + +#~ msgctxt "@label:Printjob" +#~ msgid "Cancel" +#~ msgstr "取消" + +#~ msgctxt "@info:tooltip" +#~ msgid "Select the active output device" +#~ msgstr "选择活动的输出装置" + +#~ msgctxt "@title:menu" +#~ msgid "&View" +#~ msgstr "视图(&V)" + +#~ msgctxt "@title:menu" +#~ msgid "&Settings" +#~ msgstr "设置(&S)" + +#~ msgctxt "@title:menu menubar:toplevel" +#~ msgid "&Toolbox" +#~ msgstr "&工具箱" + +#~ msgctxt "@action:button" +#~ msgid "Open File" +#~ msgstr "打开文件" + +#~ msgctxt "@tooltip" +#~ msgid "This quality profile is not available for you current material and nozzle configuration. Please change these to enable this quality profile" +#~ msgstr "此质量配置文件不适用于当前材料和喷嘴配置。请更改配置以便启用此配置文件" + +#~ msgctxt "@label" +#~ msgid "Print Speed" +#~ msgstr "打印速度" + +#~ msgctxt "@label" +#~ msgid "Slower" +#~ msgstr "更慢" + +#~ msgctxt "@label" +#~ msgid "Faster" +#~ msgstr "更快" + +#~ msgctxt "@label" +#~ msgid "Enable gradual" +#~ msgstr "启用渐层" + +#~ msgctxt "@label" +#~ msgid "Generate Support" +#~ msgstr "生成支撑" + +#~ msgctxt "@label" +#~ msgid "Build Plate Adhesion" +#~ msgstr "打印平台附着" + +#~ msgctxt "@label" +#~ msgid "Need help improving your prints?
    Read the Ultimaker Troubleshooting Guides" +#~ msgstr "需要帮助改善您的打印?
    阅读 Ultimaker 故障排除指南" + +#~ msgctxt "@title:window" +#~ msgid "Engine Log" +#~ msgstr "引擎日志" + +#~ msgctxt "@label" +#~ msgid "Printer type" +#~ msgstr "打印机类型" + +#~ msgctxt "@label" +#~ msgid "Use glue with this material combination" +#~ msgstr "用胶粘和此材料组合" + +#~ msgctxt "@label" +#~ msgid "Check compatibility" +#~ msgstr "检查兼容性" + +#~ msgctxt "@tooltip" +#~ msgid "Click to check the material compatibility on Ultimaker.com." +#~ msgstr "点击查看 Ultimaker.com 上的材料兼容情况。" + +#~ msgctxt "description" +#~ msgid "Shows changes since latest checked version." +#~ msgstr "显示最新版本改动。" + +#~ msgctxt "name" +#~ msgid "Changelog" +#~ msgstr "更新日志" + +#~ msgctxt "description" +#~ msgid "Create a flattend quality changes profile." +#~ msgstr "创建一份合并质量变化配置文件。" + +#~ msgctxt "name" +#~ msgid "Profile flatener" +#~ msgstr "配置文件合并器" + +#~ msgctxt "description" +#~ msgid "Ask the user once if he/she agrees with our license." +#~ msgstr "询问用户是否同意我们的许可证。" + +#~ msgctxt "name" +#~ msgid "UserAgreement" +#~ msgstr "用户协议" + +#~ msgctxt "@warning:status" +#~ msgid "Please generate G-code before saving." +#~ msgstr "保存之前,请生成 G-code。" + +#~ msgctxt "@action" +#~ msgid "Upgrade Firmware" +#~ msgstr "升级固件" + +#~ msgctxt "@label unknown material" +#~ msgid "Unknown" +#~ msgstr "未知" + +#~ msgctxt "@info:status Don't translate the XML tags or !" +#~ msgid "No custom profile to import in file {0}" +#~ msgstr "没有可供导入文件 {0} 的自定义配置文件" + +#~ msgctxt "@info:status Don't translate the XML tags or !" +#~ msgid "This profile {0} contains incorrect data, could not import it." +#~ msgstr "此配置文件 {0} 包含错误数据,无法导入。" + +#~ msgctxt "@info:status Don't translate the XML tags or !" +#~ msgid "The machine defined in profile {0} ({1}) doesn't match with your current machine ({2}), could not import it." +#~ msgstr "配置文件 {0} ({1}) 中定义的机器与当前机器 ({2}) 不匹配,无法导入。" + +#~ msgctxt "@title:window" +#~ msgid "Confirm uninstall " +#~ msgstr "确认卸载 " + +#~ msgctxt "@label Print estimates: m for meters, g for grams, %4 is currency and %3 is print cost" +#~ msgid "%1m / ~ %2g / ~ %4 %3" +#~ msgstr "%1m / ~ %2g / ~ %4 %3" + +#~ msgctxt "@label Print estimates: m for meters, g for grams" +#~ msgid "%1m / ~ %2g" +#~ msgstr "%1m / ~ %2g" + +#~ msgctxt "@title" +#~ msgid "Upgrade Firmware" +#~ msgstr "升级固件" + +#~ msgctxt "@action:button" +#~ msgid "Print with Doodle3D WiFi-Box" +#~ msgstr "使用 Doodle3D WiFi-Box 打印" + +#~ msgctxt "@properties:tooltip" +#~ msgid "Print with Doodle3D WiFi-Box" +#~ msgstr "使用 Doodle3D WiFi-Box 打印" + +#~ msgctxt "@info:status" +#~ msgid "Connecting to Doodle3D Connect" +#~ msgstr "连接至 Doodle3D Connect" + +#~ msgctxt "@info:status" +#~ msgid "Sending data to Doodle3D Connect" +#~ msgstr "发送数据至 Doodle3D Connect" + +#~ msgctxt "@info:status" +#~ msgid "Unable to send data to Doodle3D Connect. Is another job still active?" +#~ msgstr "无法发送数据至 Doodle3D Connect。 是否有另一项作业仍在进行?" + +#~ msgctxt "@info:status" +#~ msgid "Storing data on Doodle3D Connect" +#~ msgstr "在 Doodle3D Connect 中存储数据" + +#~ msgctxt "@info:status" +#~ msgid "File sent to Doodle3D Connect" +#~ msgstr "已发送至 Doodle3D Connect 的文件" + +#~ msgctxt "@action:button" +#~ msgid "Open Connect..." +#~ msgstr "打开 链接..." + +#~ msgctxt "@info:tooltip" +#~ msgid "Open the Doodle3D Connect web interface" +#~ msgstr "打开 Doodle3D Connect Web 界面" + +#~ msgctxt "@item:inlistbox" +#~ msgid "Blender file" +#~ msgstr "Blender 文件" + +#~ msgctxt "@info:status" +#~ msgid "" +#~ "Could not export using \"{}\" quality!\n" +#~ "Felt back to \"{}\"." +#~ msgstr "" +#~ "无法使用 \"{}\" 导出质量!\n" +#~ "返回 \"{}\"。" + +#~ msgctxt "@label" +#~ msgid "Contact" +#~ msgstr "联系方式" + +#~ msgctxt "@label" +#~ msgid "This printer is not set up to host a group of Ultimaker 3 printers." +#~ msgstr "这台打印机未设置为运行一组连接的 Ultimaker 3 打印机。" + +#~ msgctxt "@label" +#~ msgid "This printer is the host for a group of %1 Ultimaker 3 printers." +#~ msgstr "这台打印机是一组共 %1 台已连接 Ultimaker 3 打印机的主机。" + +#~ msgctxt "@label: arg 1 is group name" +#~ msgid "%1 is not set up to host a group of connected Ultimaker 3 printers" +#~ msgstr "%1 未设置为运行一组连接的 Ultimaker 3 打印机" + +#~ msgctxt "@label link to connect manager" +#~ msgid "Add/Remove printers" +#~ msgstr "添加/删除打印机" + +#~ msgctxt "@info:tooltip" +#~ msgid "Opens the print jobs page with your default web browser." +#~ msgstr "使用默认 Web 浏览器打开打印作业页面。" + +#~ msgctxt "@action:button" +#~ msgid "View print jobs" +#~ msgstr "查看打印作业" + +#~ msgctxt "@label:status" +#~ msgid "Preparing to print" +#~ msgstr "正在准备打印" + +#~ msgctxt "@label:status" +#~ msgid "Available" +#~ msgstr "可用" + +#~ msgctxt "@label:status" +#~ msgid "Lost connection with the printer" +#~ msgstr "与打印机的连接中断" + +#~ msgctxt "@label:status" +#~ msgid "Unknown" +#~ msgstr "未知" + +#~ msgctxt "@label:status" +#~ msgid "Disabled" +#~ msgstr "已禁用" + +#~ msgctxt "@label:status" +#~ msgid "Reserved" +#~ msgstr "保留" + +#~ msgctxt "@label" +#~ msgid "Preparing to print" +#~ msgstr "正在准备打印" + +#~ msgctxt "@label:status" +#~ msgid "Print aborted" +#~ msgstr "打印已中止" + +#~ msgctxt "@label" +#~ msgid "Not accepting print jobs" +#~ msgstr "不接受打印作业" + +#~ msgctxt "@label" +#~ msgid "Finishes at: " +#~ msgstr "完成时间:" + +#~ msgctxt "@label" +#~ msgid "Clear build plate" +#~ msgstr "清空打印平台" + +#~ msgctxt "@label" +#~ msgid "Waiting for configuration change" +#~ msgstr "正在等待配置更改" + +#~ msgctxt "@title" +#~ msgid "Print jobs" +#~ msgstr "打印作业" + +#~ msgctxt "@label:title" +#~ msgid "Printers" +#~ msgstr "打印机" + +#~ msgctxt "@action:button" +#~ msgid "View printers" +#~ msgstr "查看打印机" + +#~ msgctxt "@label:" +#~ msgid "Pause" +#~ msgstr "暂停" + +#~ msgctxt "@label:" +#~ msgid "Resume" +#~ msgstr "恢复" + +#~ msgctxt "@label:" +#~ msgid "Abort Print" +#~ msgstr "中止打印" + +#~ msgctxt "@option:openProject" +#~ msgid "Always ask" +#~ msgstr "总是询问" + +#~ msgctxt "@label" +#~ msgid "Override Profile" +#~ msgstr "重写配置文件" + +#~ msgctxt "@info:tooltip" +#~ msgid "Should newly loaded models be arranged on the build plate? Used in conjunction with multi build plate (EXPERIMENTAL)" +#~ msgstr "是否在打印平台上编位新加载的模型?与多打印平台结合使用(实验性)" + +#~ msgctxt "@option:check" +#~ msgid "Do not arrange objects on load" +#~ msgstr "不要编位加载的对象" + +#~ msgctxt "@action:inmenu menubar:file" +#~ msgid "&Save Selection to File" +#~ msgstr "保存到文件(&S)" + +#~ msgctxt "@title:menu menubar:file" +#~ msgid "Save &As..." +#~ msgstr "另存为(&A)…" + +#~ msgctxt "@title:menu menubar:file" +#~ msgid "Save &Project..." +#~ msgstr "保存项目(&P)..." + +#~ msgctxt "@label" +#~ msgid "Use adhesion sheet or glue with this material combination" +#~ msgstr "在此材料组合的情况下,请使用附着垫片或者胶水" + +#~ msgctxt "description" +#~ msgid "Accepts G-Code and sends them over WiFi to a Doodle3D WiFi-Box." +#~ msgstr "接受 G-Code 并通过 WiFi 将其发送到 Doodle3D WiFi-Box。" + +#~ msgctxt "name" +#~ msgid "Doodle3D WiFi-Box" +#~ msgstr "Doodle3D WiFi-Box" + +#~ msgctxt "description" +#~ msgid "Provides an edit window for direct script editing." +#~ msgstr "提供直接脚本编辑的编辑窗口。" + +#~ msgctxt "name" +#~ msgid "Live scripting tool" +#~ msgstr "实时脚本工具" + +#~ msgctxt "description" +#~ msgid "Helps to open Blender files directly in Cura." +#~ msgstr "帮助直接在 Cura 中打开 Blender 文件。" + +#~ msgctxt "name" +#~ msgid "Blender Integration (experimental)" +#~ msgstr "Blender 集成(实验性)" + +#~ msgctxt "@info:title" +#~ msgid "Model Checker Warning" +#~ msgstr "模型检查器警告" + +#~ msgctxt "@info:status" +#~ msgid "" +#~ "Some models may not be printed optimally due to object size and chosen material for models: {model_names}.\n" +#~ "Tips that may be useful to improve the print quality:\n" +#~ "1) Use rounded corners.\n" +#~ "2) Turn the fan off (only if there are no tiny details on the model).\n" +#~ "3) Use a different material." +#~ msgstr "" +#~ "由于模型的对象大小和所选材质,某些模型可能无法打印出最佳效果:{Model_names}。\n" +#~ "可以借鉴一些实用技巧来改善打印质量:\n" +#~ "1) 使用圆角。\n" +#~ "2) 关闭风扇(仅在模型没有微小细节时)。\n" +#~ "3) 使用其他材质。" + +#~ msgctxt "@info:status" +#~ msgid "SolidWorks reported errors while opening your file. We recommend to solve these issues inside SolidWorks itself." +#~ msgstr "打开文件时,SolidWorks 报错。我们建议在 SolidWorks 内部解决这些问题。" + +#~ msgctxt "@info:status" +#~ msgid "" +#~ "Found no models inside your drawing. Could you please check its content again and make sure one part or assembly is inside?\n" +#~ "\n" +#~ "Thanks!" +#~ msgstr "" +#~ "在图纸中找不到模型。请再次检查图纸内容,确保里面有一个零件或组件?\n" +#~ "\n" +#~ "谢谢!" + +#~ msgctxt "@info:status" +#~ msgid "" +#~ "Found more than one part or assembly inside your drawing. We currently only support drawings with exactly one part or assembly inside.\n" +#~ "\n" +#~ "Sorry!" +#~ msgstr "" +#~ "在图纸中找到一个以上的零件或组件。我们目前只支持里面正好有一个零件或组件的图纸。\n" +#~ "\n" +#~ "很抱歉!" + +#~ msgctxt "@item:inlistbox" +#~ msgid "SolidWorks part file" +#~ msgstr "SolidWorks 零件文件" + +#~ msgctxt "@item:inlistbox" +#~ msgid "SolidWorks assembly file" +#~ msgstr "SolidWorks 组件文件" + +#~ msgctxt "@item:inlistbox" +#~ msgid "SolidWorks drawing file" +#~ msgstr "SolidWorks 图纸文件" + +#~ msgctxt "@info:status" +#~ msgid "" +#~ "Dear customer,\n" +#~ "We could not find a valid installation of SolidWorks on your system. That means that either SolidWorks is not installed or you don't own an valid license. Please make sure that running SolidWorks itself works without issues and/or contact your ICT.\n" +#~ "\n" +#~ "With kind regards\n" +#~ " - Thomas Karl Pietrowski" +#~ msgstr "" +#~ "尊敬的客户:\n" +#~ "我们无法在您的系统中找到有效的 SolidWorks 软件。这意味着您的系统中没有安装 SolidWorks,或者您没有获得有效的许可。请确保 SolidWorks 的运行没有任何问题并/或联系您的 ICT。\n" +#~ "\n" +#~ "此致\n" +#~ " - Thomas Karl Pietrowski" + +#~ msgctxt "@info:status" +#~ msgid "" +#~ "Dear customer,\n" +#~ "You are currently running this plugin on an operating system other than Windows. This plugin will only work on Windows with SolidWorks installed, including an valid license. Please install this plugin on a Windows machine with SolidWorks installed.\n" +#~ "\n" +#~ "With kind regards\n" +#~ " - Thomas Karl Pietrowski" +#~ msgstr "" +#~ "尊敬的客户:\n" +#~ "您当前正在非 Windows 操作系统上运行此插件。此插件只能在装有 SolidWorks 且拥有有效许可的 Windows 系统上运行。请在装有 SolidWorks 的 Windows 计算机上安装此插件。\n" +#~ "\n" +#~ "此致\n" +#~ " - Thomas Karl Pietrowski" + +#~ msgid "Configure" +#~ msgstr "配置" + +#~ msgid "Installation guide for SolidWorks macro" +#~ msgstr "SolidWorks 宏的安装指南" + +#~ msgctxt "@action:button" +#~ msgid "Disable" +#~ msgstr "禁用" + +#~ msgctxt "@action:tooltip" +#~ msgid "Don't allow Cura to send anonymized usage statistics. You can enable it again in the preferences." +#~ msgstr "不允许 Cura 发送匿名的使用统计数据。您可以在偏好中再次启用。" + +#~ msgid "Install" +#~ msgstr "安装" + +#~ msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR. It is not set to a directory." +#~ msgstr "复制 Siemens NX 插件文件失败。 请检查您的 UGII_USER_DIR。 未将其设置到目录中。" + +#~ msgid "Successfully installed Siemens NX Cura plugin." +#~ msgstr "已成功安装 Siemens NX Cura 插件。" + +#~ msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR." +#~ msgstr "复制 Siemens NX 插件文件失败。 请检查您的 UGII_USER_DIR。" + +#~ msgid "Failed to install Siemens NX plugin. Could not set environment variable UGII_USER_DIR for Siemens NX." +#~ msgstr "安装 Siemens NX 插件失败。 无法为 Siemens NX 设置环境变量 UGII_USER_DIR。" + +#~ msgctxt "@info:status" +#~ msgid "Failed to get plugin ID from {0}" +#~ msgstr "无法从 {0} 获取插件 ID" + +#~ msgctxt "@info:tile" +#~ msgid "Warning" +#~ msgstr "警告" + +#~ msgctxt "@window:title" +#~ msgid "Plugin browser" +#~ msgstr "插件浏览器" + +#~ msgctxt "@label" +#~ msgid "Ultimaker 3" +#~ msgstr "Ultimaker 3" + +#~ msgctxt "@label" +#~ msgid "Ultimaker 3 Extended" +#~ msgstr "Ultimaker 3 Extended" + +#~ msgctxt "@title:window" +#~ msgid "SolidWorks: Export wizard" +#~ msgstr "SolidWorks:导出向导" + +#~ msgctxt "@action:label" +#~ msgid "Quality:" +#~ msgstr "质量:" + +#~ msgctxt "@option:curaSolidworksStlQuality" +#~ msgid "Fine (3D-printing)" +#~ msgstr "精细(3D 打印)" + +#~ msgctxt "@option:curaSolidworksStlQuality" +#~ msgid "Coarse (3D-printing)" +#~ msgstr "粗糙(3D 打印)" + +#~ msgctxt "@option:curaSolidworksStlQuality" +#~ msgid "Fine (SolidWorks)" +#~ msgstr "精细 (SolidWorks)" + +#~ msgctxt "@option:curaSolidworksStlQuality" +#~ msgid "Coarse (SolidWorks)" +#~ msgstr "粗糙 (SolidWorks)" + +#~ msgctxt "@text:window" +#~ msgid "Show this dialog again" +#~ msgstr "再次显示此对话框" + +#~ msgctxt "@action:button" +#~ msgid "Continue" +#~ msgstr "继续" + +#~ msgctxt "@action:button" +#~ msgid "Abort" +#~ msgstr "中止" + +#~ msgctxt "@title:window" +#~ msgid "How to install Cura SolidWorks macro" +#~ msgstr "如何安装 Cura SolidWorks 宏" + +#~ msgctxt "@description:label" +#~ msgid "Steps:" +#~ msgstr "步骤:" + +#~ msgctxt "@action:button" +#~ msgid "" +#~ "Open the directory\n" +#~ "with macro and icon" +#~ msgstr "" +#~ "打开宏和图标\n" +#~ "所在的目录" + +#~ msgctxt "@description:label" +#~ msgid "Instructions:" +#~ msgstr "说明:" + +#~ msgctxt "@action:playpause" +#~ msgid "Play" +#~ msgstr "播放" + +#~ msgctxt "@action:playpause" +#~ msgid "Pause" +#~ msgstr "暂停" + +#~ msgctxt "@action:button" +#~ msgid "Previous Step" +#~ msgstr "上一步" + +#~ msgctxt "@action:button" +#~ msgid "Done" +#~ msgstr "完成" + +#~ msgctxt "@action:button" +#~ msgid "Next Step" +#~ msgstr "下一步" + +#~ msgctxt "@title:window" +#~ msgid "SolidWorks plugin: Configuration" +#~ msgstr "SolidWorks 插件:配置" + +#~ msgctxt "@title:tab" +#~ msgid "Conversion settings" +#~ msgstr "转换设置" + +#~ msgctxt "@label" +#~ msgid "First choice:" +#~ msgstr "首选:" + +#~ msgctxt "@text:menu" +#~ msgid "Latest installed version (Recommended)" +#~ msgstr "最新安装的版本(推荐)" + +#~ msgctxt "@text:menu" +#~ msgid "Default version" +#~ msgstr "默认版本" + +#~ msgctxt "@label" +#~ msgid "Show wizard before opening SolidWorks files" +#~ msgstr "在打开 SolidWorks 文件前显示向导" + +#~ msgctxt "@label" +#~ msgid "Automatically rotate opened file into normed orientation" +#~ msgstr "自动将打开的文件旋转到标准方向" + +#~ msgctxt "@title:tab" +#~ msgid "Installation(s)" +#~ msgstr "装置" + +#~ msgctxt "@label" +#~ msgid "COM service found" +#~ msgstr "发现 COM 服务" + +#~ msgctxt "@label" +#~ msgid "Executable found" +#~ msgstr "发现可执行文件" + +#~ msgctxt "@label" +#~ msgid "COM starting" +#~ msgstr "COM 启动" + +#~ msgctxt "@label" +#~ msgid "Revision number" +#~ msgstr "版本号" + +#~ msgctxt "@label" +#~ msgid "Functions available" +#~ msgstr "可用功能" + +#~ msgctxt "@label (%1 is object name)" +#~ msgid "The new material diameter is set to %1 mm, which is not compatible to the current machine. Do you wish to continue?" +#~ msgstr "新的材料直径设置为 %1 mm,与当前机器不兼容。是否要继续?" + +#~ msgctxt "@action:menu" +#~ msgid "Browse plugins..." +#~ msgstr "浏览插件..." + +#~ msgctxt "@title:menu menubar:toplevel" +#~ msgid "P&lugins" +#~ msgstr "插件" + +#~ msgctxt "@window:title" +#~ msgid "Install Plugin" +#~ msgstr "安装插件" + +#~ msgctxt "description" +#~ msgid "Provides a way to change machine settings (such as build volume, nozzle size, etc)" +#~ msgstr "提供更改打印机设置(如成形空间体积、喷嘴口径等)的方法" + +#~ msgctxt "description" +#~ msgid "Manages network connections to Ultimaker 3 printers" +#~ msgstr "管理与 Ultimaker 3 打印机的网络连接" + +#~ msgctxt "description" +#~ msgid "Gives you the possibility to open certain files using SolidWorks itself. Conversion is done by this plugin and additional optimizations." +#~ msgstr "允许您使用 SolidWorks 打开某些文件。转换通过此插件和其他优化完成。" + +#~ msgctxt "name" +#~ msgid "SolidWorks Integration" +#~ msgstr "SolidWorks 集成" + +#~ msgctxt "description" +#~ msgid "Automatically saves Preferences, Machines and Profiles after changes." +#~ msgstr "更改后自动保存首选项、机器和配置文件。" + +#~ msgctxt "name" +#~ msgid "Auto Save" +#~ msgstr "自动保存" + +#~ msgctxt "description" +#~ msgid "Helps you to install an 'export to Cura' button in Siemens NX." +#~ msgstr "帮助您在 Siemens NX 中安装一个“导出至 Cura”按钮。" + +#~ msgctxt "name" +#~ msgid "Siemens NX Integration" +#~ msgstr "Siemens NX 集成" + +#~ msgctxt "description" +#~ msgid "Find, manage and install new plugins." +#~ msgstr "查找、管理和安装新插件。" + +#~ msgctxt "name" +#~ msgid "Plugin Browser" +#~ msgstr "插件浏览器" + +#~ msgctxt "description" +#~ msgid "Ask the user once if he/she agrees with our license" +#~ msgstr "询问用户一次是否同意我们的许可" + +#~ msgctxt "description" +#~ msgid "Provides machine actions for Ultimaker machines (such as bed leveling wizard, selecting upgrades, etc)" +#~ msgstr "为 Ultimaker 打印机提供操作选项(如平台调平向导、选择升级等)" + +#~ msgctxt "@item:inlistbox" +#~ msgid "GCode File" +#~ msgstr "GCode 文件" + +#~ msgctxt "@info:status" +#~ msgid "Unable to start a new job because the printer is busy or not connected." +#~ msgstr "无法启动新作业,因为打印机处于忙碌状态或未连接。" + +#~ msgctxt "@info:title" +#~ msgid "Printer Unavailable" +#~ msgstr "打印机不可用" + +#~ msgctxt "@info:status" +#~ msgid "This printer does not support USB printing because it uses UltiGCode flavor." +#~ msgstr "此打印机不支持通过 USB 打印,因为其使用 UltiGCode 类型的 G-code 文件。" + +#~ msgctxt "@info:title" +#~ msgid "USB Printing" +#~ msgstr "USB 打印" + +#~ msgctxt "@info:status" +#~ msgid "Unable to start a new job because the printer does not support usb printing." +#~ msgstr "无法启动新作业,因为该打印机不支持通过 USB 打印。" + +#~ msgctxt "@info" +#~ msgid "Unable to update firmware because there are no printers connected." +#~ msgstr "无法更新固件,因为没有连接打印机。" + +#~ msgctxt "@info" +#~ msgid "Could not find firmware required for the printer at %s." +#~ msgstr "在 %s 无法找到打印机所需的固件。" + +#~ msgctxt "@info:title" +#~ msgid "Printer Firmware" +#~ msgstr "打印机固件" + +#~ msgctxt "@info:title" +#~ msgid "Connection status" +#~ msgstr "连接状态" + +#~ msgctxt "@info:title" +#~ msgid "Connection Status" +#~ msgstr "连接状态" + +#~ msgctxt "@info:status" +#~ msgid "Access request was denied on the printer." +#~ msgstr "访问请求在打印机上被拒绝。" + +#~ msgctxt "@info:status" +#~ msgid "Access request failed due to a timeout." +#~ msgstr "访问请求失败(原因:超时)。" + +#~ msgctxt "@info:status" +#~ msgid "The connection with the network was lost." +#~ msgstr "网络连接中断。" + +#~ msgctxt "@info:status" +#~ msgid "The connection with the printer was lost. Check your printer to see if it is connected." +#~ msgstr "与打印机的连接中断,请检查打印机是否已连接。" + +#~ msgctxt "@info:status" +#~ msgid "Unable to start a new print job, printer is busy. Current printer status is %s." +#~ msgstr "打印机无法启动新的打印作业,当前的打印机状态为 %s。" + +#~ msgctxt "@info:title" +#~ msgid "Printer Status" +#~ msgstr "打印机状态" + +#~ msgctxt "@info:status" +#~ msgid "Unable to start a new print job. No Printcore loaded in slot {0}" +#~ msgstr "无法启动新的打印作业。插槽 {0} 中未加载打印头。" + +#~ msgctxt "@info:status" +#~ msgid "Unable to start a new print job. No material loaded in slot {0}" +#~ msgstr "无法启动新的打印作业。插槽 {0} 中未加载材料。" + +#~ msgctxt "@label" +#~ msgid "Not enough material for spool {0}." +#~ msgstr "线轴 {0} 上没有足够的材料。" + +#~ msgctxt "@label" +#~ msgid "Different PrintCore (Cura: {0}, Printer: {1}) selected for extruder {2}" +#~ msgstr "不同的打印头(Cura: {0},打印机: 为挤出机 {2} 选择了 {1})" + +#~ msgctxt "@label" +#~ msgid "PrintCore {0} is not properly calibrated. XY calibration needs to be performed on the printer." +#~ msgstr "打印头 {0} 未正确校准。 需要在打印机上执行 XY 校准。" + +#~ msgctxt "@info:status" +#~ msgid "Unable to send data to printer. Is another job still active?" +#~ msgstr "无法向打印机发送数据。请确认是否有另一项打印任务仍在进行?" + +#~ msgctxt "@label:MonitorStatus" +#~ msgid "Print aborted. Please check the printer" +#~ msgstr "打印已中止。请检查打印机" + +#~ msgctxt "@label:MonitorStatus" +#~ msgid "Pausing print..." +#~ msgstr "暂停打印..." + +#~ msgctxt "@label:MonitorStatus" +#~ msgid "Resuming print..." +#~ msgstr "恢复打印..." + +#~ msgid "This printer is not set up to host a group of connected Ultimaker 3 printers." +#~ msgstr "这台打印机未设置为运行一组连接的 Ultimaker 3 打印机。" + +#~ msgctxt "Count is number of printers." +#~ msgid "This printer is the host for a group of {count} connected Ultimaker 3 printers." +#~ msgstr "这台打印机是一组共 {count} 台已连接 Ultimaker 3 打印机的主机。" + +#~ msgid "{printer_name} has finished printing '{job_name}'. Please collect the print and confirm clearing the build plate." +#~ msgstr "{printer_name} 已完成打印 '{job_name}'。 请收起打印品并确认清空打印平台。" + +#~ msgid "{printer_name} is reserved to print '{job_name}'. Please change the printer's configuration to match the job, for it to start printing." +#~ msgstr "{printer_name} 已保留用于打印 '{job_name}'。 请更改打印机配置以匹配此项作业,以便开始打印。" + +#~ msgctxt "@info:status" +#~ msgid "Unable to send new print job: this 3D printer is not (yet) set up to host a group of connected Ultimaker 3 printers." +#~ msgstr "无法发送新打印作业:此 3D 打印机(尚)未设置为运行一组连接的 Ultimaker 3 打印机。" + +#~ msgctxt "@info:status" +#~ msgid "Unable to send print job to group {cluster_name}." +#~ msgstr "无法发送打印作业至组 {cluster_name}。" + +#~ msgctxt "@info:status" +#~ msgid "Sent {file_name} to group {cluster_name}." +#~ msgstr "已发送 {file_name} 至组 {cluster_name}。" + +#~ msgctxt "@action:button" +#~ msgid "Show print jobs" +#~ msgstr "显示打印作业" + +#~ msgctxt "@info:tooltip" +#~ msgid "Opens the print jobs interface in your browser." +#~ msgstr "在您的浏览器中打开打印作业界面。" + +#~ msgctxt "@label Printer name" +#~ msgid "Unknown" +#~ msgstr "未知" + +#~ msgctxt "@info:progress" +#~ msgid "Sending {file_name} to group {cluster_name}" +#~ msgstr "发送 {file_name} 至组 {cluster_name}" + +#~ msgctxt "@info:status" +#~ msgid "SolidWorks reported errors, while opening your file. We recommend to solve these issues inside SolidWorks itself." +#~ msgstr "打开文件时,SolidWorks 报错。我们建议在 SolidWorks 内部解决这些问题。" + +#~ msgctxt "@info:status" +#~ msgid "" +#~ "Found no models inside your drawing. Could you please check it's content again and make sure one part or assembly is inside?\n" +#~ "\n" +#~ " Thanks!." +#~ msgstr "" +#~ "在您的图纸中找不到模型。请再次检查图纸内容,确保里面有一个零件或组件。\n" +#~ "\n" +#~ "谢谢!" + +#~ msgctxt "@info:status" +#~ msgid "" +#~ "Found more then one part or assembly inside your drawing. We currently only support drawings with exactly one part or assembly inside.\n" +#~ "\n" +#~ "Sorry!" +#~ msgstr "" +#~ "在您的图纸中找到一个以上的零件或组件。我们目前只支持里面正好有一个零件或组件的图纸。\n" +#~ "\n" +#~ "很抱歉!" + +#~ msgctxt "@item:material" +#~ msgid "No material loaded" +#~ msgstr "未加载材料" + +#~ msgctxt "@item:material" +#~ msgid "Unknown material" +#~ msgstr "未知材料" + +#~ msgctxt "@info:status Has a cancel button next to it." +#~ msgid "The selected material diameter causes the material to become incompatible with the current printer." +#~ msgstr "所选材料直径导致材料与当前打印机不兼容。" + +#~ msgctxt "@action:button" +#~ msgid "Undo" +#~ msgstr "撤销" + +#~ msgctxt "@action" +#~ msgid "Undo changing the material diameter." +#~ msgstr "撤销更改材料直径。" + +#~ msgctxt "@info:status Don't translate the XML tags or !" +#~ msgid "The machine defined in profile {0} doesn't match with your current machine, could not import it." +#~ msgstr "配置文件 {0} 中定义的机器与您当前的机器不匹配,无法导入。" + +#~ msgctxt "@label crash message" +#~ msgid "" +#~ "

    A fatal error has occurred. Please send us this Crash Report to fix the problem

    \n" +#~ "

    Please use the \"Send report\" button to post a bug report automatically to our servers

    \n" +#~ " " +#~ msgstr "" +#~ "

    发生了致命错误。请将这份错误报告发送给我们以便修复问题

    \n" +#~ "

    请使用“发送报告”按钮将错误报告自动发布到我们的服务器

    \n" +#~ " " + +#~ msgctxt "@label" +#~ msgid "not yet initialised
    " +#~ msgstr "尚未初始化
    " + +#~ msgctxt "@label" +#~ msgid "Gcode flavor" +#~ msgstr "GCode 类型" + +#~ msgctxt "@label" +#~ msgid "Start Gcode" +#~ msgstr "GCode 开始部分" + +#~ msgctxt "@tooltip" +#~ msgid "Gcode commands to be executed at the very start." +#~ msgstr "将在开始时执行的 Gcode 命令。" + +#~ msgctxt "@label" +#~ msgid "End Gcode" +#~ msgstr "GCode 结束部分" + +#~ msgctxt "@tooltip" +#~ msgid "Gcode commands to be executed at the very end." +#~ msgstr "将在结束时执行的 Gcode 命令。" + +#~ msgctxt "@label" +#~ msgid "Extruder Start Gcode" +#~ msgstr "挤出机 Gcode 开始部分" + +#~ msgctxt "@label" +#~ msgid "Extruder End Gcode" +#~ msgstr "挤出机 Gcode 结束部分" + +#~ msgctxt "@label" +#~ msgid "Starting firmware update, this may take a while." +#~ msgstr "正在开始固件更新。可能需要花费一些时间,请耐心等待。" + +#~ msgctxt "@label" +#~ msgid "Unknown error code: %1" +#~ msgstr "未知错误代码: %1" + +#~ msgctxt "@label Printer name" +#~ msgid "Ultimaker 3" +#~ msgstr "Ultimaker 3" + +#~ msgctxt "@label Printer name" +#~ msgid "Ultimaker 3 Extended" +#~ msgstr "Ultimaker 3 Extended" + +#~ msgctxt "@label Printer status" +#~ msgid "Unknown" +#~ msgstr "未知" + +#~ msgctxt "@title:window" +#~ msgid "Find & Update plugins" +#~ msgstr "查找与更新插件" + +#~ msgctxt "@label" +#~ msgid "Here you can find a list of Third Party plugins." +#~ msgstr "您可以在这里找到第三方插件列表。" + +#~ msgctxt "@action:button" +#~ msgid "Upgrade" +#~ msgstr "升级" + +#~ msgctxt "@action:button" +#~ msgid "Download" +#~ msgstr "下载" + +#~ msgctxt "@info:tooltip" +#~ msgid "Show caution message in gcode reader." +#~ msgstr "在 G-code 读取器中显示警告信息。" + +#~ msgctxt "@option:check" +#~ msgid "Caution message in gcode reader" +#~ msgstr "G-code 读取器中的警告信息" + +#~ msgctxt "@window:title" +#~ msgid "Import Profile" +#~ msgstr "导入配置文件" + +#~ msgctxt "@action:label %1 is printer name, %2 is how this printer names variants, %3 is variant name" +#~ msgid "Printer: %1, %2: %3" +#~ msgstr "打印机:%1, %2: %3" + +#~ msgctxt "@action:label %1 is printer name" +#~ msgid "Printer: %1" +#~ msgstr "打印机:%1" + +#~ msgctxt "@label" +#~ msgid "GCode generator" +#~ msgstr "GCode 生成器" + +#~ msgctxt "@action:menu" +#~ msgid "Configure setting visiblity..." +#~ msgstr "配置设置可见性..." + +#~ msgctxt "@title:menuitem %1 is the automatically selected material" +#~ msgid "Automatic: %1" +#~ msgstr "自动:%1" + +#~ msgctxt "@title:menuitem %1 is the nozzle currently loaded in the printer" +#~ msgid "Automatic: %1" +#~ msgstr "自动:%1" + +#~ msgctxt "@info:status" +#~ msgid "No printer connected" +#~ msgstr "没有连接打印机" + +#~ msgctxt "@tooltip" +#~ msgid "The current temperature of this extruder." +#~ msgstr "该挤出机的当前温度。" + +#~ msgctxt "@action:menu" +#~ msgid "Installed plugins..." +#~ msgstr "已安装插件..." + +#~ msgctxt "@label" +#~ msgid "Support Extruder" +#~ msgstr "支撑用挤出机" + +#~ msgctxt "description" +#~ msgid "Writes GCode to a file." +#~ msgstr "将 GCode 写入至文件。" + +#~ msgctxt "name" +#~ msgid "GCode Writer" +#~ msgstr "GCode 写入器" + +#~ msgctxt "name" +#~ msgid "GCode Profile Reader" +#~ msgstr "GCode 配置文件读取器" + +#~ msgctxt "@info:status" +#~ msgid "Errors appeared while opening your SolidWorks file! Please check, whether it is possible to open your file in SolidWorks itself without any problems as well!" +#~ msgstr "打开 SolidWorks 文件时发生错误! 请检查能否在 SolidWorks 中正常打开文件而不出现任何问题!" + +#~ msgctxt "@info:status" +#~ msgid "Error while starting %s!" +#~ msgstr "启动 %s 时发生错误!" + +#~ msgctxt "@item:inlistbox" +#~ msgid "Simulation view" +#~ msgstr "仿真视图" + +#~ msgctxt "@info" +#~ msgid "Cura collects anonymised slicing statistics. You can disable this in the preferences." +#~ msgstr "Cura 收集匿名切片统计资料。 您可以在偏好设置中禁用此选项。" + +#~ msgctxt "@action:button" +#~ msgid "Dismiss" +#~ msgstr "关闭此通知" + +#~ msgctxt "@menuitem" +#~ msgid "Global" +#~ msgstr "全局" + +#~ msgctxt "@label crash message" +#~ msgid "" +#~ "

    A fatal exception has occurred. Please send us this Crash Report to fix the problem

    \n" +#~ "

    Please use the \"Send report\" button to post a bug report automatically to our servers

    \n" +#~ " " +#~ msgstr "" +#~ "

    发生了致命错误。 请将这份错误报告发送给我们以便修复问题

    \n" +#~ "

    请使用“发送报告”按钮将错误报告自动发布到我们的服务器

    \n" +#~ " " + +#~ msgctxt "@label Cura version" +#~ msgid "Cura version: {version}
    " +#~ msgstr "Cura 版本: {version}
    " + +#~ msgctxt "@label Platform" +#~ msgid "Platform: {platform}
    " +#~ msgstr "平台: {platform}
    " + +#~ msgctxt "@label Qt version" +#~ msgid "Qt version: {qt}
    " +#~ msgstr "Qt 版本: {qt}
    " + +#~ msgctxt "@label PyQt version" +#~ msgid "PyQt version: {pyqt}
    " +#~ msgstr "PyQt 版本: {pyqt}
    " + +#~ msgctxt "@label OpenGL" +#~ msgid "OpenGL: {opengl}
    " +#~ msgstr "OpenGL: {opengl}
    " + +#~ msgctxt "@title:groupbox" +#~ msgid "Exception traceback" +#~ msgstr "异常追溯" + +#~ msgctxt "@label" +#~ msgid "Material diameter" +#~ msgstr "材料直径" + +#~ msgctxt "@title:window" +#~ msgid "Cura SolidWorks Plugin Configuration" +#~ msgstr "Cura SolidWorks 插件配置" + +#~ msgctxt "@action:label" +#~ msgid "Default quality of the exported STL:" +#~ msgstr "导出 STL 的默认质量:" + +#~ msgctxt "@option:curaSolidworksStlQuality" +#~ msgid "Always ask" +#~ msgstr "总是询问" + +#~ msgctxt "@option:curaSolidworksStlQuality" +#~ msgid "Always use Fine quality" +#~ msgstr "总是使用精细品质" + +#~ msgctxt "@option:curaSolidworksStlQuality" +#~ msgid "Always use Coarse quality" +#~ msgstr "总是使用粗糙品质" + +#~ msgctxt "@title:window" +#~ msgid "Import SolidWorks File as STL..." +#~ msgstr "导入 SolidWorks 文件为 STL..." + +#~ msgctxt "@info:tooltip" +#~ msgid "Quality of the Exported STL" +#~ msgstr "导出 STL 的质量" + +#~ msgctxt "@action:label" +#~ msgid "Quality" +#~ msgstr "质量" + +#~ msgctxt "@option:curaSolidworksStlQuality" +#~ msgid "Coarse" +#~ msgstr "粗糙" + +#~ msgctxt "@option:curaSolidworksStlQuality" +#~ msgid "Fine" +#~ msgstr "精细" + +#~ msgctxt "@" +#~ msgid "No Profile Available" +#~ msgstr "没有配置文件可用" + +#~ msgctxt "@label" +#~ msgid "This setting is always shared between all extruders. Changing it here will change the value for all extruders" +#~ msgstr "此设置始终对所有挤出机有效。在此进行更改将影响所有挤出机。" + +#~ msgctxt "@tooltip" +#~ msgid "Time specification
    " +#~ msgstr "时间规范
    " + +#~ msgctxt "@action:inmenu menubar:view" +#~ msgid "&Reset camera position" +#~ msgstr "重置摄像头位置(&R)" + +#~ msgctxt "@title:menu menubar:file" +#~ msgid "Save project" +#~ msgstr "保存项目" + +#~ msgctxt "@title:tab" +#~ msgid "Prepare" +#~ msgstr "准备" + +#~ msgctxt "@title:tab" +#~ msgid "Monitor" +#~ msgstr "监控" + +#~ msgctxt "@label" +#~ msgid "Check compatibility" +#~ msgstr "检查兼容性" + +#~ msgctxt "description" +#~ msgid "Gives you the possibility to open certain files via SolidWorks itself. These are then converted and loaded into Cura" +#~ msgstr "让您可以通过 SolidWorks 自身打开特定文件。 随后会将这些文件进行转换并载入 Cura" + +#~ msgctxt "@label:status" +#~ msgid "Blocked" +#~ msgstr "冻结操作" + +#~ msgctxt "@label:status" +#~ msgid "Can't start print" +#~ msgstr "不能开始打印" + +#~ msgctxt "@action:button" +#~ msgid "Open Connect.." +#~ msgstr "打开 Connect" + +#~ msgctxt "@info:title" +#~ msgid "Print Details" +#~ msgstr "打印品详细信息" + +#~ msgctxt "@info Don't translate {machine_name}, since it gets replaced by a printer name!" +#~ msgid "To ensure that your {machine_name} is equipped with the latest features it is recommended to update the firmware regularly. This can be done on the {machine_name} (when connected to the network) or via USB." +#~ msgstr "为确保您的 {machine_name} 具备最新功能,建议定期更新固件。 更新可在 {machine_name} 上(连接至网络时)或通过 USB 进行。" + +#~ msgctxt "@info:title" +#~ msgid "Layer View" +#~ msgstr "分层视图" + +#~ msgctxt "@menuitem" +#~ msgid "Browse plugins" +#~ msgstr "浏览插件" + +#~ msgctxt "@info:title" +#~ msgid "Export Details" +#~ msgstr "导出详细信息" + +#~ msgctxt "@label" +#~ msgid "" +#~ "

    A fatal exception has occurred that we could not recover from!

    \n" +#~ "

    Please use the information below to post a bug report at http://github.com/Ultimaker/Cura/issues

    \n" +#~ " " +#~ msgstr "" +#~ "

    发生了致命错误,我们无法恢复!

    \n" +#~ "

    请在以下网址中使用下方的信息提交错误报告:http://github.com/Ultimaker/Cura/issues

    " + +#~ msgctxt "@action:button" +#~ msgid "Open Web Page" +#~ msgstr "打开网页" + +#~ msgctxt "@action:button" +#~ msgid "Ok" +#~ msgstr "确定" + +#~ msgctxt "@label" +#~ msgid "This printer is not set up to host a group of connected Ultimaker 3 printers" +#~ msgstr "这台打印机未设置为运行一组连接的 Ultimaker 3 打印机" + +#~ msgctxt "@label" +#~ msgid "This printer is the host for a group of %1 connected Ultimaker 3 printers" +#~ msgstr "这台打印机是一组 %1 台已连接 Ultimaker 3 打印机的主机" + +#~ msgctxt "@label" +#~ msgid "Completed on: " +#~ msgstr "完成时间: " + +#~ msgctxt "@info:tooltip" +#~ msgid "Opens the print jobs page with your default web browser." +#~ msgstr "使用默认 Web 浏览器打开打印作业页面。" + +#~ msgctxt "@label" +#~ msgid "PRINTER GROUP" +#~ msgstr "打印机组" + +#~ msgctxt "@action:warning" +#~ msgid "Loading a project will clear all models on the buildplate" +#~ msgstr "加载项目将清除打印平台上的所有模型" + +#~ msgctxt "@label" +#~ msgid "" +#~ " plugin contains a license.\n" +#~ "You need to accept this license to install this plugin.\n" +#~ "Do you agree with the terms below?" +#~ msgstr "" +#~ " 插件包含一个许可。\n" +#~ "您需要接受此许可才能安装此插件。\n" +#~ "是否同意下列条款?" + +#~ msgctxt "@label" +#~ msgid "00h 00min" +#~ msgstr "00 小时 00 分" + +#~ msgctxt "@tooltip" +#~ msgid "Time information" +#~ msgstr "时间信息" + +#~ msgctxt "@description" +#~ msgid "Print time" +#~ msgstr "打印时间" + +#~ msgctxt "@label" +#~ msgid "%1m / ~ %2g / ~ %4 %3" +#~ msgstr "%1m / ~ %2g / ~ %4 %3" + +#~ msgctxt "@label" +#~ msgid "%1m / ~ %2g" +#~ msgstr "%1m / ~ %2g" + +#~ msgctxt "@title:window" +#~ msgid "Cura" +#~ msgstr "Cura" + +#~ msgctxt "@label" +#~ msgid "Check material compatibility" +#~ msgstr "检查材料兼容性" + +#~ msgctxt "name" +#~ msgid "UM3 Network Connection (Cluster)" +#~ msgstr "UM3 网络连接(群集)" + +#~ msgctxt "description" +#~ msgid "Provides the Layer view." +#~ msgstr "提供分层视图。" + +#~ msgctxt "name" +#~ msgid "Layer View" +#~ msgstr "分层视图" + +#~ msgctxt "@item:inlistbox" +#~ msgid "X-Ray" +#~ msgstr "透视" + +#~ msgctxt "@label" +#~ msgid "Doodle3D" +#~ msgstr "Doodle3D" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Accepts G-Code and sends them over WiFi to a Doodle3D WiFi-Box." +#~ msgstr "接受 G-Code 并通过 WiFi 将其发送到 Doodle3D WiFi-Box。" + +#~ msgctxt "@item:inmenu" +#~ msgid "Doodle3D printing" +#~ msgstr "Doodle3D 打印" + +#~ msgctxt "@action:button" +#~ msgid "Print with Doodle3D" +#~ msgstr "使用 Doodle3D 打印" + +#~ msgctxt "@info:tooltip" +#~ msgid "Print with " +#~ msgstr "使用 " + +#~ msgctxt "@title:menu" +#~ msgid "Doodle3D" +#~ msgstr "Doodle3D 打印" + +#~ msgctxt "@item:inlistbox" +#~ msgid "Enable Scan devices..." +#~ msgstr "启用扫描设备..." + +#~ msgctxt "@info:progress" +#~ msgid "Saving to Removable Drive {0}" +#~ msgstr "保存到可移动磁盘 {0} " + +#~ msgctxt "@info:status" +#~ msgid "Could not save to {0}: {1}" +#~ msgstr "无法保存到 {0}{1}" + +#~ msgctxt "@info:status" +#~ msgid "Please keep in mind, that you have to reopen your SolidWorks file manually! Reloading the model won't work!" +#~ msgstr "请记住,您必须手动重新打开 SolidWorks 文件! 重新加载模型将无法正常工作!" + +#~ msgctxt "@item:inlistbox" +#~ msgid "Layers" +#~ msgstr "层" + +#~ msgid "Browse plugins" +#~ msgstr "浏览插件" + +#~ msgctxt "@item:inmenu" +#~ msgid "Solid" +#~ msgstr "实体" + +#~ msgctxt "@label" +#~ msgid "The file {0} already exists. Are you sure you want to overwrite it?" +#~ msgstr "文件 {0} 已存在。你确定要替换它吗?" + +#~ msgctxt "@info:status" +#~ msgid "Failed to export profile to {0}: {1}" +#~ msgstr "无法将配置文件导出至 {0} {1} " + +#~ msgctxt "@info:status" +#~ msgid "Failed to export profile to {0}: Writer plugin reported failure." +#~ msgstr "无法将配置文件导出至 {0} :写入器插件报告故障。" + +#~ msgctxt "@info:status" +#~ msgid "Exported profile to {0}" +#~ msgstr "配置文件已导出至: {0} " + +#~ msgctxt "@info:status" +#~ msgid "Failed to import profile from {0}: {1}" +#~ msgstr "无法从 {0} 导入配置文件: {1} " + +#~ msgctxt "@title:window" +#~ msgid "Doodle3D Settings" +#~ msgstr "Doodle3D 设置" + +#~ msgctxt "@title:window" +#~ msgid "Print to: %1" +#~ msgstr "打印至:%1" + +#~ msgctxt "@label" +#~ msgid "Extruder Temperature: %1/%2°C" +#~ msgstr "打印头温度:%1/%2 °C" + +#~ msgctxt "@label" +#~ msgid "Bed Temperature: %1/%2°C" +#~ msgstr "热床温度:%1/%2°C" + +#~ msgctxt "@label" +#~ msgid "%1" +#~ msgstr "%1" + +#~ msgctxt "@label" +#~ msgid "View Mode: Layers" +#~ msgstr "视图模式:分层" + +#~ msgctxt "@info:status" +#~ msgid "Could not import material %1: %2" +#~ msgstr "无法导入材料 %1%2" + +#~ msgctxt "@info:status" +#~ msgid "Successfully imported material %1" +#~ msgstr "成功导入材料 %1" + +#~ msgctxt "@info:status" +#~ msgid "Failed to export material to %1: %2" +#~ msgstr "无法导出材料至 %1%2" + +#~ msgctxt "@info:status" +#~ msgid "Successfully exported material to %1" +#~ msgstr "成功导出材料至: %1" + +#~ msgctxt "@label" +#~ msgid "%1 m / ~ %2 g / ~ %4 %3" +#~ msgstr "%1 m / ~ %2 g / ~ %4 %3" + +#~ msgctxt "@label" +#~ msgid "%1 m / ~ %2 g" +#~ msgstr "%1 m / ~ %2 g" + +#~ msgctxt "@label" +#~ msgid "Hotend" +#~ msgstr "热端" + +#~ msgctxt "@action:button" +#~ msgid "View Mode" +#~ msgstr "视图模式" + +#~ msgctxt "@title:tab" +#~ msgid "Print" +#~ msgstr "打印" + +#~ msgctxt "@label" +#~ msgid "0%" +#~ msgstr "0%" + +#~ msgctxt "@label" +#~ msgid "Empty infill will leave your model hollow with low strength." +#~ msgstr "无填充将使模型处于低强度且保持空心状态。" + +#~ msgctxt "@label" +#~ msgid "20%" +#~ msgstr "20%" + +#~ msgctxt "@label" +#~ msgid "Light (20%) infill will give your model an average strength." +#~ msgstr "轻度(20%)填充将使打印模型处于中等强度。" + +#~ msgctxt "@label" +#~ msgid "50%" +#~ msgstr "50%" + +#~ msgctxt "@label" +#~ msgid "Dense (50%) infill will give your model an above average strength." +#~ msgstr "密集(50%)填充将使打印模型高于平均的强度。" + +#~ msgctxt "@label" +#~ msgid "100%" +#~ msgstr "100%" + +#~ msgctxt "@label" +#~ msgid "Solid (100%) infill will make your model completely solid." +#~ msgstr "完全(100%)填充将使您的模型处于完全实心状态。" + +#~ msgctxt "@label" +#~ msgid "Gradual" +#~ msgstr "渐层填充" + +#~ msgctxt "description" +#~ msgid "Provides support for writing X3G files" +#~ msgstr "提供对写入 X3G 文件的支持" + +#~ msgctxt "name" +#~ msgid "X3G Writer" +#~ msgstr "X3G 写入器" + +#~ msgctxt "@label" +#~ msgid "Machine Settings action" +#~ msgstr "打印机设置操作" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Provides a way to change machine settings (such as build volume, nozzle size, etc)" +#~ msgstr "提供更改打印机设置(如成形空间体积、喷嘴口径等)的方法" + +#~ msgctxt "@label" +#~ msgid "X-Ray View" +#~ msgstr "透视视图" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Provides the X-Ray view." +#~ msgstr "提供透视视图。" + +#~ msgctxt "@label" +#~ msgid "X3D Reader" +#~ msgstr "X3D 读取器" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Provides support for reading X3D files." +#~ msgstr "支持读取 X3D 文件。" + +#~ msgctxt "@label" +#~ msgid "GCode Writer" +#~ msgstr "GCode 写入器" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Writes GCode to a file." +#~ msgstr "将 GCode 写入至文件。" + +#~ msgctxt "@action:button Preceded by 'Ready to'." +#~ msgid "Print with Doodle3D" +#~ msgstr "使用 Doodle3D 打印" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Shows changes since latest checked version." +#~ msgstr "显示最新版本改动。" + +#~ msgctxt "@label" +#~ msgid "Profile flatener" +#~ msgstr "配置文件合并器" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Create a flattend quality changes profile." +#~ msgstr "创建一份合并质量变化配置文件。" + +#~ msgctxt "@label" +#~ msgid "USB printing" +#~ msgstr "USB 联机打印" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Accepts G-Code and sends them to a printer. Plugin can also update firmware." +#~ msgstr "接受 GCode 并将其发送到打印机。此插件还可以更新固件。" + +#~ msgctxt "X3G Writer Plugin Description" +#~ msgid "Writes X3G to a file" +#~ msgstr "将 X3G 写入文件" + +#~ msgctxt "@label" +#~ msgid "Removable Drive Output Device Plugin" +#~ msgstr "可移动磁盘输出设备插件" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Provides removable drive hotplugging and writing support." +#~ msgstr "提供可移动磁盘热插拔和写入文件的支持。" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Manages network connections to Ultimaker 3 printers" +#~ msgstr "管理与 Ultimaker 3 打印机的网络连接" + +#~ msgctxt "@label" +#~ msgid "Different print core (Cura: {0}, Printer: {1}) selected for extruder {2}" +#~ msgstr "您为挤出机 {2} 选择了不同的打印头(Cura:{0},打印机:{1})" + +#~ msgctxt "@label" +#~ msgid "Print core {0} is not properly calibrated. XY calibration needs to be performed on the printer." +#~ msgstr "打印头 {0} 未正确校准,您需要在打印机上执行 XY 校准。" + +#~ msgctxt "@label" +#~ msgid "The print cores and/or materials on your printer differ from those within your current project. For the best result, always slice for the print cores and materials that are inserted in your printer." +#~ msgstr "打印机上的打印头和/或材料与当前项目中的不同。为获得最佳打印效果,请始终使用已插入的打印头和材料配置进行切片。" + +#~ msgctxt "@label" +#~ msgid "Post Processing" +#~ msgstr "后期处理" + +#~ msgctxt "Description of plugin" +#~ msgid "Extension that allows for user created scripts for post processing" +#~ msgstr "扩展程序(允许用户创建脚本进行后期处理)" + +#~ msgctxt "@label" +#~ msgid "Auto Save" +#~ msgstr "自动保存" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Automatically saves Preferences, Machines and Profiles after changes." +#~ msgstr "更改后自动保存首选项、机器和配置文件。" + +#~ msgctxt "@label" +#~ msgid "Slice info" +#~ msgstr "切片信息" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Submits anonymous slice info. Can be disabled through preferences." +#~ msgstr "提交匿名切片信息。此特性可在偏好设置中禁用。" + +#~ msgctxt "@info" +#~ msgid "Cura collects anonymised slicing statistics. You can disable this in preferences" +#~ msgstr "Cura 将自动收集匿名的切片统计数据,您可以在偏好设置中禁用此选项。" + +#~ msgctxt "@label" +#~ msgid "Material Profiles" +#~ msgstr "材料配置文件" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Provides capabilities to read and write XML-based material profiles." +#~ msgstr "提供读取和写入基于 XML 的材料配置文件的功能。" + +#~ msgctxt "@label" +#~ msgid "Legacy Cura Profile Reader" +#~ msgstr "旧版 Cura 配置文件读取器" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Provides support for importing profiles from legacy Cura versions." +#~ msgstr "支持从 Cura 旧版本导入配置文件。" + +#~ msgctxt "@label" +#~ msgid "GCode Profile Reader" +#~ msgstr "GCode 配置读取器" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Provides support for importing profiles from g-code files." +#~ msgstr "提供了从 GCode 文件中导入配置文件的支持。" + +#~ msgctxt "@label" +#~ msgid "Layer View" +#~ msgstr "分层视图" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Provides the Layer view." +#~ msgstr "提供分层视图。" + +#~ msgctxt "@label" +#~ msgid "Version Upgrade 2.5 to 2.6" +#~ msgstr "版本自 2.5 升级到 2.6" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Upgrades configurations from Cura 2.5 to Cura 2.6." +#~ msgstr "将配置从 Cura 2.5 版本升级至 2.6 版本。" + +#~ msgctxt "@label" +#~ msgid "Version Upgrade 2.1 to 2.2" +#~ msgstr "版本自 2.1 升级至 2.2" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Upgrades configurations from Cura 2.1 to Cura 2.2." +#~ msgstr "将配置从 Cura 2.1 版本升级至 2.2 版本。" + +#~ msgctxt "@label" +#~ msgid "Version Upgrade 2.2 to 2.4" +#~ msgstr "版本自 2.2 升级到 2.4" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Upgrades configurations from Cura 2.2 to Cura 2.4." +#~ msgstr "将配置从 Cura 2.2 版本升级至 2.4 版本。" + +#~ msgctxt "@label" +#~ msgid "Image Reader" +#~ msgstr "图像读取器" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Enables ability to generate printable geometry from 2D image files." +#~ msgstr "支持从 2D 图像文件生成可打印几何模型。" + +#~ msgctxt "@label" +#~ msgid "CuraEngine Backend" +#~ msgstr "CuraEngine 后端" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Provides the link to the CuraEngine slicing backend." +#~ msgstr "提供 CuraEngine 切片后端的路径" + +#~ msgctxt "@label" +#~ msgid "Per Model Settings Tool" +#~ msgstr "单一模型设置工具" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Provides the Per Model Settings." +#~ msgstr "提供对每个模型的单独设置。" + +#~ msgctxt "@label" +#~ msgid "3MF Reader" +#~ msgstr "3MF 读取器" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Provides support for reading 3MF files." +#~ msgstr "提供对读取 3MF 格式文件的支持。" + +#~ msgctxt "@label" +#~ msgid "Solid View" +#~ msgstr "实体视图" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Provides a normal solid mesh view." +#~ msgstr "提供一个基本的实体网格视图。" + +#~ msgctxt "@label" +#~ msgid "G-code Reader" +#~ msgstr "G-code 读取器" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Allows loading and displaying G-code files." +#~ msgstr "允许加载和显示 G-code 文件。" + +#~ msgctxt "@label" +#~ msgid "Cura Profile Writer" +#~ msgstr "Cura 配置写入器" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Provides support for exporting Cura profiles." +#~ msgstr "提供了对导出 Cura 配置文件的支持。" + +#~ msgctxt "@label" +#~ msgid "3MF Writer" +#~ msgstr "3MF 写入器" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Provides support for writing 3MF files." +#~ msgstr "提供对写入 3MF 文件的支持。" + +#~ msgctxt "@label" +#~ msgid "Ultimaker machine actions" +#~ msgstr "Ultimaker 打印机操作" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Provides machine actions for Ultimaker machines (such as bed leveling wizard, selecting upgrades, etc)" +#~ msgstr "为 Ultimaker 打印机提供操作选项 (如平台调平向导、选择升级等)" + +#~ msgctxt "@label" +#~ msgid "Cura Profile Reader" +#~ msgstr "Cura 配置文件导出" + +#~ msgctxt "@info:whatsthis" +#~ msgid "Provides support for importing Cura profiles." +#~ msgstr "提供了对导入 Cura 配置文件的支持。" + +#~ msgctxt "@info" +#~ msgid "%(width).1f x %(depth).1f x %(height).1f mm" +#~ msgstr "%(宽).1f x %(深).1f x %(高).1f mm" + +#~ msgctxt "@label" +#~ msgid "Build Plate Shape" +#~ msgstr "打印平台形状" + +#~ msgctxt "@option:check" +#~ msgid "Machine Center is Zero" +#~ msgstr "机器中心为零点" + +#~ msgctxt "@option:check" +#~ msgid "Heated Bed" +#~ msgstr "加热床" + +#~ msgctxt "@label" +#~ msgid "GCode Flavor" +#~ msgstr "GCode 类型" + +#~ msgctxt "@label" +#~ msgid "Material Diameter" +#~ msgstr "材料直径" + +#~ msgctxt "@label" +#~ msgid "If your printer is not listed, read the network-printing troubleshooting guide" +#~ msgstr "如果您的打印机未列出,请阅读网络打印故障排除指南" + +#~ msgctxt "@item:inlistbox" +#~ msgid "Ultimaker" +#~ msgstr "Ultimaker" + +#~ msgctxt "@label" +#~ msgid "Support library for scientific computing " +#~ msgstr "科学计算支持库" + +#~ msgctxt "@tooltip" +#~ msgid "Print Setup

    Edit or review the settings for the active print job." +#~ msgstr "打印设置

    编辑或查看活动打印作业的设置。" + +#~ msgctxt "@tooltip" +#~ msgid "Print Monitor

    Monitor the state of the connected printer and the print job in progress." +#~ msgstr "打印监视

    可以监视所连接的打印机和正在进行的打印作业的状态。" + +#~ msgctxt "@title:menuitem %1 is the value from the printer" +#~ msgid "Automatic: %1" +#~ msgstr "自动:%1" + +#~ msgctxt "@label:PrintjobStatus" +#~ msgid "Please load a 3d model" +#~ msgstr "请载入一个 3D 模型" + +#~ msgctxt "@label" +#~ msgid "Print Selected Model with %1" +#~ msgid_plural "Print Selected Models With %1" +#~ msgstr[0] "用 %1 打印所选模型" From c8a1b435a1123e77c798b93eb42ec09cd1d946a5 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Wed, 19 Oct 2022 11:52:42 +0200 Subject: [PATCH 023/161] Add updated chinese translations --- resources/i18n/zh_CN/cura.po | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/resources/i18n/zh_CN/cura.po b/resources/i18n/zh_CN/cura.po index 0eea2c361a..2e18430d52 100644 --- a/resources/i18n/zh_CN/cura.po +++ b/resources/i18n/zh_CN/cura.po @@ -962,17 +962,17 @@ msgstr "了解详情" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:18 msgctxt "@info:status" msgid "You will receive a confirmation via email when the print job is approved" -msgstr "" +msgstr "打印作业获得批准后,您将收到确认电子邮件" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:19 msgctxt "@info:title" msgid "The print job was successfully submitted" -msgstr "" +msgstr "打印作业已成功提交" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobAwaitingApprovalMessage.py:22 msgctxt "@action" msgid "Manage print jobs" -msgstr "" +msgstr "管理打印作业" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadProgressMessage.py:15 msgctxt "@info:status" @@ -1280,7 +1280,7 @@ msgstr "Ultimaker 格式包" #: /Users/c.lamboo/ultimaker/Cura/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py:19 msgctxt "@text Placeholder for the username if it has been deleted" msgid "deleted user" -msgstr "" +msgstr "已删除的用户" #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeProfileReader/__init__.py:14 #: /Users/c.lamboo/ultimaker/Cura/plugins/GCodeReader/__init__.py:14 @@ -2397,12 +2397,12 @@ msgstr "第一个可用" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:117 msgctxt "@info" msgid "Monitor your printers from everywhere using Ultimaker Digital Factory" -msgstr "" +msgstr "使用 Ultimaker Digital Factory 从任意位置监控打印机" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorStage.qml:129 msgctxt "@button" msgid "View printers in Digital Factory" -msgstr "" +msgstr "查看 Digital Factory 中的打印机" #: /Users/c.lamboo/ultimaker/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:44 msgctxt "@title:window" @@ -3214,7 +3214,7 @@ msgstr "加载项目将清除打印平台上的所有模型。" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:490 msgctxt "@label" msgid "The material used in this project is currently not installed in Cura.
    Install the material profile and reopen the project." -msgstr "" +msgstr "此项目中使用的材料当前未安装在 Cura 中。
    安装材料配置文件并重新打开项目。" #: /Users/c.lamboo/ultimaker/Cura/plugins/3MFReader/WorkspaceDialog.qml:515 msgctxt "@action:button" @@ -4004,12 +4004,12 @@ msgstr "自动切片" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:340 msgctxt "@info:tooltip" msgid "Show an icon and notifications in the system notification area." -msgstr "" +msgstr "在系统通知区域中显示图标和通知。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:348 msgctxt "@option:check" msgid "Add icon to system tray *" -msgstr "" +msgstr "在系统托盘中添加图标 *" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Preferences/GeneralPage.qml:357 msgctxt "@label" @@ -5293,17 +5293,17 @@ msgstr "管理设置可见性..." #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:17 msgctxt "@title:window" msgid "Select Printer" -msgstr "" +msgstr "选择打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:54 msgctxt "@title:label" msgid "Compatible Printers" -msgstr "" +msgstr "兼容的打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/ChoosePrinterDialog.qml:94 msgctxt "@description" msgid "No compatible printers, that are currently online, where found." -msgstr "" +msgstr "没有找到当前联机的兼容打印机。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:16 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Cura.qml:635 @@ -5577,7 +5577,7 @@ msgstr "科学计算支持库" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:171 msgctxt "@Label Description for application dependency" msgid "Python Error tracking library" -msgstr "" +msgstr "Python 错误跟踪库" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/Dialogs/AboutDialog.qml:172 msgctxt "@label Description for application dependency" @@ -5703,12 +5703,12 @@ msgstr "在模型的悬垂(Overhangs)部分生成支撑结构。若不这样 #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:54 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is active and you overwrote some settings." -msgstr "" +msgstr "%1自定义配置文件处于活动状态,并且已覆盖某些设置。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:68 msgctxt "@info, %1 is the name of the custom profile" msgid "%1 custom profile is overriding some settings." -msgstr "" +msgstr "%1自定义配置文件正在覆盖某些设置。" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrintSetupSelector/Recommended/ProfileWarningReset.qml:79 msgctxt "@info" @@ -6064,17 +6064,17 @@ msgstr "管理打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:34 msgctxt "@label" msgid "Hide all connected printers" -msgstr "" +msgstr "隐藏所有连接的打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineListButton.qml:47 msgctxt "@label" msgid "Show all connected printers" -msgstr "" +msgstr "显示所有连接的打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/PrinterSelector/MachineSelectorList.qml:24 msgctxt "@label" msgid "Other printers" -msgstr "" +msgstr "其他打印机" #: /Users/c.lamboo/ultimaker/Cura/resources/qml/ActionPanel/SliceProcessWidget.qml:54 msgctxt "@label:PrintjobStatus" From 6860c6777c3d92bf5705f3d8eb26dd4ee60aa602 Mon Sep 17 00:00:00 2001 From: jelle spijker Date: Wed, 19 Oct 2022 15:52:29 +0200 Subject: [PATCH 024/161] Update conandata for the 5.2.1 release MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fix translation: - Italian (mea culpa) - Chinese (我们很抱歉) --- conandata.yml | 105 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 105 insertions(+) diff --git a/conandata.yml b/conandata.yml index 09f7834960..d50c70b4b7 100644 --- a/conandata.yml +++ b/conandata.yml @@ -10,6 +10,111 @@ # requirements (use the /(latest)@ultimaker/testing) # # Subject to change in the future! +"5.2.1": + requirements: + - "pyarcus/5.2.0" + - "curaengine/5.2.1" + - "pysavitar/5.2.0" + - "pynest2d/5.2.0" + - "uranium/5.2.0" + - "fdm_materials/5.2.0" + - "cura_binary_data/5.2.1" + - "cpython/3.10.4" + internal_requirements: + - "fdm_materials_private/(latest)@ultimaker/testing" + - "cura_private_data/(latest)@ultimaker/testing" + runinfo: + entrypoint: "cura_app.py" + pyinstaller: + datas: + cura_plugins: + package: "cura" + src: "plugins" + dst: "share/cura/plugins" + cura_resources: + package: "cura" + src: "resources" + dst: "share/cura/resources" + cura_private_data: + package: "cura_private_data" + src: "resources" + dst: "share/cura/resources" + internal: true + uranium_plugins: + package: "uranium" + src: "plugins" + dst: "share/uranium/plugins" + uranium_resources: + package: "uranium" + src: "resources" + dst: "share/uranium/resources" + uranium_um_qt_qml_um: + package: "uranium" + src: "site-packages/UM/Qt/qml/UM" + dst: "PyQt6/Qt6/qml/UM" + cura_binary_data: + package: "cura_binary_data" + src: "resources/cura/resources" + dst: "share/cura/resources" + uranium_binary_data: + package: "cura_binary_data" + src: "resources/uranium/resources" + dst: "share/uranium/resources" + windows_binary_data: + package: "cura_binary_data" + src: "windows" + dst: "share/windows" + fdm_materials: + package: "fdm_materials" + src: "materials" + dst: "share/cura/resources/materials" + fdm_materials_private: + package: "fdm_materials_private" + src: "resources/materials" + dst: "share/cura/resources/materials" + internal: true + tcl: + package: "tcl" + src: "lib/tcl8.6" + dst: "tcl" + tk: + package: "tk" + src: "lib/tk8.6" + dst: "tk" + binaries: + curaengine: + package: "curaengine" + src: "bin" + dst: "." + binary: "CuraEngine" + hiddenimports: + - "pySavitar" + - "pyArcus" + - "pynest2d" + - "PyQt6" + - "PyQt6.QtNetwork" + - "PyQt6.sip" + - "logging.handlers" + - "zeroconf" + - "fcntl" + - "stl" + - "serial" + collect_all: + - "cura" + - "UM" + - "serial" + - "Charon" + - "sqlite3" + - "trimesh" + - "win32ctypes" + - "PyQt6" + - "PyQt6.QtNetwork" + - "PyQt6.sip" + - "stl" + icon: + Windows: "./icons/Cura.ico" + Macos: "./icons/cura.icns" + Linux: "./icons/cura-128.png" "5.2.0-beta.2": requirements: - "pyarcus/(latest)@ultimaker/stable" From ec9dcc43b4f514ae8e42dd64185da4cee70d7fa7 Mon Sep 17 00:00:00 2001 From: jelle spijker Date: Wed, 19 Oct 2022 16:08:53 +0200 Subject: [PATCH 025/161] Update changelog 5.2.1 --- resources/texts/change_log.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/resources/texts/change_log.txt b/resources/texts/change_log.txt index f143f1e76f..cf49fccd25 100644 --- a/resources/texts/change_log.txt +++ b/resources/texts/change_log.txt @@ -1,3 +1,9 @@ +[5.2.1] + +* Bug fixes: +- Restored Italian translations (was French) +- Restored simplified Chinese translations (was Czech) + [5.2] * Abstract Cloud Printer Type From 96aeb1b581e4dbd8a7ee86655e8c2a0d4cac4f62 Mon Sep 17 00:00:00 2001 From: StuSerious Date: Thu, 20 Oct 2022 08:53:54 +0200 Subject: [PATCH 026/161] update CITATION.cff to latest version --- CITATION.cff | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CITATION.cff b/CITATION.cff index 7efa45fda7..8b732467da 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -18,8 +18,8 @@ url: 'https://ultimaker.com/software/ultimaker-cura' repository-code: 'https://github.com/Ultimaker/Cura' license: LGPL-3.0 license-url: "https://github.com/Ultimaker/Cura/blob/main/LICENSE" -version: 5.0.0 -date-released: '2022-05-17' +version: 5.2.1 +date-released: '2022-10-19' keywords: - Ultimaker - Cura From 17627af0a07db82fd713aa98a1e84a0b4866ac7b Mon Sep 17 00:00:00 2001 From: StuSerious Date: Thu, 20 Oct 2022 08:58:10 +0200 Subject: [PATCH 027/161] improve CITATION.cff formatting && add keywords --- CITATION.cff | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/CITATION.cff b/CITATION.cff index 8b732467da..627cfa2515 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -14,17 +14,17 @@ authors: contact: - email: info@ultimaker.com name: "Ultimaker B.V." -url: 'https://ultimaker.com/software/ultimaker-cura' -repository-code: 'https://github.com/Ultimaker/Cura' +url: "https://ultimaker.com/software/ultimaker-cura" +repository-code: "https://github.com/Ultimaker/Cura" license: LGPL-3.0 license-url: "https://github.com/Ultimaker/Cura/blob/main/LICENSE" version: 5.2.1 -date-released: '2022-10-19' +date-released: "2022-10-19" keywords: - Ultimaker - Cura + - Slicer - Uranium - Arachne - - 3DPrinting - - Slicer -... + - 3D Printing + - Additive Manufacturing From 035815b4210107885d03fea7fe5059dfdfafac7b Mon Sep 17 00:00:00 2001 From: Jelle Spijker Date: Fri, 21 Oct 2022 17:19:55 +0200 Subject: [PATCH 028/161] Only build mo on Unix Once M4, autoconf and automake are Conan v2 ready this can be reversed --- conanfile.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/conanfile.py b/conanfile.py index 32482ccf2f..9dfe60db81 100644 --- a/conanfile.py +++ b/conanfile.py @@ -291,14 +291,15 @@ class CuraConan(ConanFile): def build(self): if self.settings.os == "Windows": - self.win_bash = True # We need gettext, which requires the bash environment + return + # FIXME: once m4, autoconf, automake are Conan V2 ready self.win_bash = True # We need gettext, which requires the bash environment for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): mo_file = self.build_path.joinpath(po_file.with_suffix('.mo').relative_to(self.source_path)) mkdir(self, str(unix_path(self, mo_file.parent))) self.run(f"msgfmt {po_file} -o {mo_file} -f", env="conanbuild") - self.win_bash = None + # FIXME: once m4, autoconf, automake are Conan V2 ready self.win_bash = None def generate(self): cura_run_envvars = self._cura_run_env.vars(self, scope = "run") From e400f04319a48577767113932fc7bf27679533f7 Mon Sep 17 00:00:00 2001 From: Jelle Spijker Date: Sun, 23 Oct 2022 15:25:16 +0200 Subject: [PATCH 029/161] Only run gettext in a bash environment Once the msys2 (m4, autoconf, automake) are fixed we can use the msys2 recipe. For now people can use their own bash environment on Windows by setting the tools.microsoft.bash:path and tools.microsoft.bash:subsystem when needed. --- conanfile.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/conanfile.py b/conanfile.py index 9dfe60db81..9476badca6 100644 --- a/conanfile.py +++ b/conanfile.py @@ -276,9 +276,8 @@ class CuraConan(ConanFile): self.requires(req) def build_requirements(self): - if self.settings_build.os == "Windows" and not self.conf.get("tools.microsoft.bash:path", default=False, check_type=bool): - self.tool_requires("msys2/cci.latest") - self.tool_requires("gettext/0.21") + if self.settings_build.os != "Windows" or self.conf.get("tools.microsoft.bash:path", default=False, check_type=bool): + self.tool_requires("gettext/0.21") def layout(self): self.folders.source = "." @@ -290,7 +289,7 @@ class CuraConan(ConanFile): self.cpp.package.resdirs = ["resources", "plugins", "packaging", "pip_requirements"] # pip_requirements should be the last item in the list def build(self): - if self.settings.os == "Windows": + if self.settings_build.os == "Windows" and not self.conf.get("tools.microsoft.bash:path", default=False, check_type=bool): return # FIXME: once m4, autoconf, automake are Conan V2 ready self.win_bash = True # We need gettext, which requires the bash environment @@ -318,6 +317,7 @@ class CuraConan(ConanFile): icon_path = "'{}'".format(Path(self.source_folder, "packaging", self._um_data()["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), entitlements_file = entitlements_file if self.settings.os == "Macos" else "None") + def imports(self): self.copy("CuraEngine.exe", root_package = "curaengine", src = "@bindirs", dst = "", keep_path = False) self.copy("CuraEngine", root_package = "curaengine", src = "@bindirs", dst = "", keep_path = False) From 10710fe83874f2ab1726ec5dc955bc7bbac1836a Mon Sep 17 00:00:00 2001 From: Jelle Spijker Date: Sun, 23 Oct 2022 15:55:56 +0200 Subject: [PATCH 030/161] Update the po files conan install will now update the the po files --- conanfile.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/conanfile.py b/conanfile.py index 9476badca6..e0dd5e9e36 100644 --- a/conanfile.py +++ b/conanfile.py @@ -317,6 +317,13 @@ class CuraConan(ConanFile): icon_path = "'{}'".format(Path(self.source_folder, "packaging", self._um_data()["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), entitlements_file = entitlements_file if self.settings.os == "Macos" else "None") + # Update the po files + if self.settings_build.os != "Windows" or self.conf.get("tools.microsoft.bash:path", default = False, check_type = bool): + for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): + pot_file = self.source_path.joinpath("resources", "i18n", po_file.with_suffix('.pot').name) + mkdir(self, str(unix_path(self, pot_file.parent))) + self.run(f"msgmerge --no-wrap --no-fuzzy-matching -width=140 -o {po_file} {po_file} {pot_file}", env = "conanbuild") + def imports(self): self.copy("CuraEngine.exe", root_package = "curaengine", src = "@bindirs", dst = "", keep_path = False) From f1936dc37ce144ac58ee4c11cf68394d0b545bc8 Mon Sep 17 00:00:00 2001 From: Jelle Spijker Date: Tue, 25 Oct 2022 02:41:35 +0200 Subject: [PATCH 031/161] Ensure that gettext bin can be found --- conanfile.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conanfile.py b/conanfile.py index e0dd5e9e36..a39ced56c7 100644 --- a/conanfile.py +++ b/conanfile.py @@ -296,7 +296,7 @@ class CuraConan(ConanFile): for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): mo_file = self.build_path.joinpath(po_file.with_suffix('.mo').relative_to(self.source_path)) mkdir(self, str(unix_path(self, mo_file.parent))) - self.run(f"msgfmt {po_file} -o {mo_file} -f", env="conanbuild") + self.run(f"msgfmt {po_file} -o {mo_file} -f", env="conanbuild", run_environment=True) # FIXME: once m4, autoconf, automake are Conan V2 ready self.win_bash = None @@ -322,7 +322,7 @@ class CuraConan(ConanFile): for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): pot_file = self.source_path.joinpath("resources", "i18n", po_file.with_suffix('.pot').name) mkdir(self, str(unix_path(self, pot_file.parent))) - self.run(f"msgmerge --no-wrap --no-fuzzy-matching -width=140 -o {po_file} {po_file} {pot_file}", env = "conanbuild") + self.run(f"msgmerge --no-wrap --no-fuzzy-matching -width=140 -o {po_file} {po_file} {pot_file}", env = "conanbuild", run_environment=True) def imports(self): From 79af58ef7e59ae1343e86d224106fd2c1e93917d Mon Sep 17 00:00:00 2001 From: Alex Date: Wed, 26 Oct 2022 16:36:55 +0300 Subject: [PATCH 032/161] build: harden notify_on_print_profile_change.yml permissions Signed-off-by: Alex --- .github/workflows/notify_on_print_profile_change.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/notify_on_print_profile_change.yml b/.github/workflows/notify_on_print_profile_change.yml index f2c77d366c..c8747a9828 100644 --- a/.github/workflows/notify_on_print_profile_change.yml +++ b/.github/workflows/notify_on_print_profile_change.yml @@ -19,6 +19,7 @@ on: - 'resources/intent/ultimaker**' - 'resources/quality/ultimaker**' - 'resources/variants/ultimaker**' +permissions: {} jobs: slackNotification: name: Slack Notification From 6e6b5cbbc466c3842127f1840f5849b9b964e992 Mon Sep 17 00:00:00 2001 From: Lorenzo Romagnoli Date: Thu, 27 Oct 2022 12:22:31 +0200 Subject: [PATCH 033/161] Update logo.svg --- resources/themes/cura-light/images/logo.svg | 30 +++++++++++---------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/resources/themes/cura-light/images/logo.svg b/resources/themes/cura-light/images/logo.svg index 611840e248..63449bb296 100644 --- a/resources/themes/cura-light/images/logo.svg +++ b/resources/themes/cura-light/images/logo.svg @@ -1,18 +1,20 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + From 9a1eca50e407c05176ed9db21c59241c943dfb33 Mon Sep 17 00:00:00 2001 From: Lorenzo Romagnoli Date: Fri, 28 Oct 2022 12:02:55 +0200 Subject: [PATCH 034/161] Updated splashscreen Updated splash screen logo with new logo with capital M --- resources/images/cura.png | Bin 325136 -> 299931 bytes resources/images/cura_enterprise.png | Bin 327226 -> 301636 bytes resources/images/cura_wip.png | Bin 324496 -> 298589 bytes 3 files changed, 0 insertions(+), 0 deletions(-) diff --git a/resources/images/cura.png b/resources/images/cura.png index 66b10d5118f09df2ee078491be1dd8fb0940ab11..ac1677f3f89e09f90bd9711a64b89a54c3e6fd57 100644 GIT binary patch literal 299931 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

    ?rgf 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 diff --git a/resources/images/cura_enterprise.png b/resources/images/cura_enterprise.png index fd5025b67c80fd492048032f34e9be07bb7f0446..4a200a8c6bde834370b26a6e85c81a81af8b7656 100644 GIT binary patch literal 301636 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 AT$q~L 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

    h+UeJ;o9G}MyKwx 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%0D%q9a5 zyo(O)EJ8UjjyCiv{|?ZAM9K&&05|$E(^sorx2!H~EVfup>em)_1I!S<`Wv*QjB{HjMk!z+im?w++EmN6m1+ z7RKGB%6ZK2)RRyMzfE)Op*~k5juV(N04e}J1l&X)A~ZwKb`5y0w5KgR=1>;{d@Yec zp6gh}H=pOnCW*X`_)_phgx4Ja)|@39;@%8Z8w}6y6&o+hEZ|yt{DXDEUV*{9^0;o) zpmq&Wi^U8ZCIMowkBH#^HM39eu)5WVs0vYS3>~^-OJUK#&^Jmu9UhnXo+t5Fsn}|f?dgaT7cw*r~G<7|3 ztNTR;>vaRyK&s*rfa4P@6KTPsHfFazGf)#Z?sU>KWp)^TVe1oa0v=)SE5Mv^Qa5@N zQ|+=zo#Fsy$=5AO61TgTGGJ!Q>`B7Cl_qRLrBVV7zG<<+8DEenpU9k51n(x3-bubM zQ>TT(bxt%&gqNyUXfeJB>YXSM)!5ppwgP!HSK(@#!T{VZ{4BxXhco)92(@XoCazzEcH=w}2Hg<5G6 zGhjErFiDKuVWR|Nf2jMAlI5xsy3=>eJihhq0=2)m`a^RAl_3BVyg~EzVdVSMSoMWR z0J0DY0O^C^*#?^~Ff`rxomW0JUR1J}2gitAm8IvnzmPHq4B5X~9g8?o!MOpY!wb>U zYTA21GkX5}+0>nxvKvqBC7=w^*^y`(eG5;-uSdC@hO#EqNgQg{gLh~xpdEo#Wkk7O zT#BJplCuvH-B)m3kwT{zkME?ps{=??6QHkhKA6g?40B^iI8- z#oqR5YU0Gg=7jkN#;P{|%MI1lvQLvKpbu?`AObB38d7_V8te=ksjozYs7;jOh986* zMdroVy0FJ4;ShnE@g7)|%{7WPI#vTB|D7r;ucFQFOY&1yA~Fpkj2$bX1ShFZaduh- zAsFR@RT@T3HQFe=Ed>`d3J>YxNp)-yr%(olO#nOU9Z@x;`opTeRjQD@?m5^AtWp9~ zsVhv@aEk8>^DAt8L48!#)mm(20KlW-q6eTn9srknS(v;wN*XE%&8p{K{9euFtk2U8 zHiUA>8g0wfli83N73n;#C!4i7u0)RljJ1V%;_p>LJoIE3kMJ%%_Mvyv@7cmocLjB4 zQ5{x37Za;ziL$;3FSl7AWM5HU&&;I2+JYESpYu%>Dvnfs<)5cL$*85|_cLDw>oz8$ z7~Is9<-IJ7PjT6i?%&wMX(K5BcwaX?_xU5R3W#$warRo-UFz4apu5iPOT&IzD5^C* zais6 z%uun=Ubbqpq@96E>>Fkzz;@qqdT(Yz){B6GoBOL@%@tuA`Umela9~RjBd~9R%B@sp zs%phJ8P7Zp!}UVHAeb@I=K!!xn6*|syC6U(&si%Iu6lJN#>xNyhzFJIWL()`$PVAd zu{ZFlgz>t>+VW!nwHw|Kzy-A`yeLa5+I)u=wZ$m_fMfBhjS`5{vHcaa1FJ~?#Gtfq zmxeU-`vn4&{`=N+VGTn&po;s`cFn~pU=7$UKgp}{^Szjzy6)tjlEMX^g4!7&$R7kx z1>-X0v)RRAm9o$`hzkGWXD*FPD+b0p_HHaj_y{`yW(lkoQuF9T3t~hepege9A+!Nl zGg}BV1kXu$%OORP3*F#SB<&_aK^uz75h}?FW>&9$a=frR1akLP_3h9Gh z_VFBDG1nX1C7=3U&QS) z`eW;I0ifi@`JtQ$5GV(Jj>xedxcL5bhQ7vTo4PKqq~50m zP$`z33qUu5)}Q`uK`;g|n+x)=2joma(bgy27=an3fPYEaN!{Xc$`l}#Q3lQNQ#GfI zNqwd3SW@6OsBx`-t1Co_f|#yE>S$CYv$mMxX9*F+eho9sz0l$|@E@2c*FZd{jO!<%uw-t!}hbN0(FJ+W

    K!6(du^k+c^!8Ky?%Gg&>4MB~uRr~r9wYmu9 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

  • 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 z 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 diff --git a/resources/images/cura_wip.png b/resources/images/cura_wip.png index f98957a0b5cb2e7fba069b02b20654fd00ecfc7c..5c2c8104cc1cdda215fd19c0bb93a21ea6ac03ca 100644 GIT binary patch literal 298589 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

    Q3&cR#TfA)tD~ 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

    B2M?6v^;>qd3P3}= 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 literal 324496 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

  • }LSnV7UC}!@G*`2Y3KL`?m-v3!`UI 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 literal 325136 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 z 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�|F#XT%3u)epcCy7ce!KU4o!jFCKW!f~ zX3Wkv-gu+a4piQ;V@C}C>4D1Mj^V!uh*H>sG%S^b&CbFU2Zk|eF+jy;EL4f~k7QHL z`mz4sCzG0?agHZD3(eihH=|ZZj*Bk)N5AC_P32p|Z}&%4I;senHO) z4&&3ziRov`WR(zAijC!vM$kBN+7V%mN?V3ph)8$+S%^$ME<3}*<+(NGcKhX)vEG;6IFfO9L;OyBeqRIxc8XuQFz{xfR4pekgRnA5wn}Kn|`tY%{hcR-Rb_rXBomsd7 z;N>j|t-Q2g6Jh1OaocW$b>f#1dI1B13okx)Ow2u6Dl79~5(u%DQLH?@s-0NpO17T@ zT4D(V2^n(SNtgSLuoSk{BV2arabp=y2jL@O(V{gt>(EicT=j^@x&Rp5_{7QxN_zKd z;Uy`|g7O25dQ_-!^wZmyNI0;;WagK{^l<}XE*6~KF9gt$V*^#@XC5+&QP1k@*Uk%f zzp$2ty&;6e?h#fC#T+FhiZlDdEl;lIJvqFMVwWh0`KGWiryVjXvMs{?Aaq5?Na$?; zse^gixB)R241lkXgyl}$e?%NNRIcyb6KML_{(R)@p>)E2Bf_eUI~mE-2yr$Vst^O^@%gzX)B z(j3WgDU1{3v$rsOU;fP;6hDpU3xZ)nZkYfX0gdSp=AYfUG(7kArWpD?MHt8B>vu%( zd-h?Y1nBmm>mOM`wa%uwgOV92%qT2R42zz6@CcH7hMfXT5mvlH7&H{ud};m`oBu&A zr2GNB0+{>p?TcbaPW1{u5thTj(m2NGkMex%48)N+V}|y|fzc=&OJBHjM!eDg+`c#h zqdX0wUZTVV^bX7_HY{+Hx0yC}Ks*ZP+kc)9b}}5d|1iv*$ZD?N+=&`!JY5zB-?;AW zxQGLz^{(T`qQEI5Hw_btZOmhTfZEkX5&757Pl7QVE2+>t>TJ7ueJag0V&L`W}=AA)Q45;0_ ztYAw?2T$FXb_D;NW@8!LFSeTZZC68F!eT_hrCX|k_U)m%k`3n6xcYji z84oVs3PJnUl5e3oFzU2Cq6*}|VqQwCU<~joaYFTG10Ab0HkzB&CHxu+kS$}XWJSI% zWJb_+D&%pG_x1H5s>W)cnnKQ*^--2DiPy6xX;)mZp$J{zUl|kE9`fuvrMh4gyi)qzgh{73 zJ7ZlM2FGA&|G9Z{K?XG#%W|D5aHxT5h|h{8Bdq^sFSzWS)OMCRY;)T35e*>vF|j$M zZA^Fadg&EShpp(DF+Ek{e!XbOR-<&yKy$M}s9)I(S~{Dq2~kVv0bv?83FCm{TmJi& zMRd40U~DhP5h-Zh(fbUEtM9w@j4}uEdi7*f`40PvqrF$c9SG(9?M2gQ?((g;K96`A zdyEs9u_uHz!L@m!Ctgwh=-HF_pDv$Ce-@@$@Y6qi&s_CbQ1HR_|*j?un|88WnPEp8edB|B$C3_T`TbilKS$wd z>KBs$rXY@d@AnkyS%6((UmmnqKtNI~EE1x1-V_Cl| z615S!MVSROW6J3Mv1Zap3Bh5PAr1isfI1cMfF~{otr;q2~ z-n$I>N#>Y@8RJ8Q!8!S$VZvnf5Qb-Q+_aFVRv0(D4_|of*qHm(w@;7o-9OJO;5|o| z@Em~1VUKV^af$1hU+BN-N_`M}Q^(E!0Vyw|u*|#1Yi|(|cy{O;4_h#X<|1 zOJW!{uur)9+{p}fb9IzW0(>I|_m1_=Fz(2$L&)!em)e4%CHZCc~ zUSSZC2iUQjs0YV<Qocut79jLm(RLQ@d{rmT~MD=gqx}HiW%=a4wQn?c6 z&Aemt*BXS4_KzLH;ldoHH0NSaR;6w=-o$35`x%=garXTg-{F zBY;{s|^Q*@~?ELonc zhBAX3ud(DqoP}ahKdu87itch@vq|TFyr{v2c~Ti_TapZ{-4vSI5KO%+bjp-j;pXwL zfiYL}kP8UW#X*|aq4Yas3AO}p`if+ec2Yr5?q%Q4imU3x?k;5SDUpT$3?JN!k$`-= zglPn5gf;6s_=CbAO%mt&ih-WT)ho2p@?P;y0IW3rFuW zls|aJL_&d3Fa?c39{$BPBJ|THt9m35yP-@tRsM%uphpErVB0))l&xIf5t$im#Yf)J z)#ps2JDyz|BzzNl1E7QBOWJqs=6}0#7VQ>*A#Dd!#g&xg>MvXx!<_Wp8|Tx;ExXH# zJqvxJFbgQMiLelI!1M;_Mg@t{KB_on1C0m0$rFENk(LvJ(F-jXCf&G+&Mg?J-c%y`FvD>gy z0P2~CjbsV;GV;KbLCdZzvU{f-G@JnF8r}xWhwHXslQ(SbD8cWEKvDpFD|J{(r7n0dOdBId+D%Zq(GcCT0`vahZwK{y(5PtTp zjWHyB{!wFMIR}8+-7=n{ON??2m>2){ySHLN)Sf+hgdW*VOch{^(SsjVY(^q+E;O zTrE?|XX%kc_wjE70);(F^3*=(XR=X5v8m}^j!252C+K%WIcPfGCG0Ur7D(Gi8T@5u zqPc67@CZL=imMwI{B5UmHb2W;Vm_}Hr#_J>n zJ9L;*k-SEhyGkxQ*-*kvZq8_PDCHZ)6}M;n)IDc?VAa(;2SP0N%Ao>uLF-3(jFP~s zeV5&HiZcymQ-~^q{#x#z+T4`C$R&fzLaCultpcL`PFE(kalzRMop08bJX?L5Juw;&dfkx1Gj~ z=o=QT-p-%9csjPI$BNaOY<$e@p)vU#N8FILy-a~~j~XQ*pj`y#q_RR7Z2jhr2zbCY zpe(_wi#F$Jnbrh2Bknh!KUe_R4*Kl_%jk{8+k&<+GRU$T`si5`V^aHn{Bd49_YMwx z?WUc1$sJ-+_f@A(4A(upg12nn9aKoFQ^Q*Ogn|8f#6p}BGNrlgofS|VILxo^r z5Ki2GT1(tC@O5EZVpJ#3C+y4vL-*vIvcquxiuSNx#s!C4pDgSea=?U548oG|`%WE? z>hZk1ZASzR0Mn?~^yZSSp-v%*=iV_YlHV$T>$O}GV#J_6e6)lrKPEs2z+$K{Vkk3! zU6FCqK$)Xqv@l)g9XW=6e&^zN6ik^7Y20T`9LN_PH--_CL+vT#>FqsnKrH8g9hUQ! zZvz9x2%Fu3#Q3buDtqiQ#39%SiK2SDPCuPjDBp3W{JZJ#)#0WmRxlFhg)xgjCuGnF zhV0ono09Q|QZ>jnhrIvviNfq{iscnl?-gg@_3`s2#c=Fv`3Rd2#CKh!G<~zkdBLe!3Bq6rbc3A5%U8Lak?QSk<~TK@-v>GA@yYw2)-=H@dt_JI}HMO82OD{-t7u z8SUwzZ`@6SdMLnzi4+M^xtE3=HEEitGIULyGT*MhYkSi!%JO0rp$~}d?{UEe zM^q8a?@~*#%@G4YE{<)Ygz0P+#r|-iOPL$2jS7bWijT1|6v{@$d%H}xi{gMauO({S zL=PnBNes@)9;g_X?nRUq#H`OSbITQDEqht#7;=hm$+tbl&nWaJSv}awVcJ*w4sFkW zczm9=9%6{j7egzCPqlcydvZTn=xZH}T>aKE;;Y;tqq?xTH=MHt+}B-y_Cx9qan=3h zsd)^R2k|YCW57wh`jD3oj1oi}e{ud`4f=HfIwGD(fE+_{`ri{45n_5~;1r^i^E)T> zgA{@L?$`SB_MOhXIeAT1AKyPnp#pFKb^s?5n>P~>BR~SleY}FDkL$-!ScleC*6R8U@pvJh9YakXX=E-ru0}PZ)`^P>bwJSf zx22qL8-b~~=jBCyJ_Q?v6N{%F&_h`!xEzrLI`yp+7Ostep01i?c*f%O^!~Ip=IqxY zBtS(rRqSRi-lTCyINb=4HLZ3NBXMufPA%QwUTwr>Ilp48kjBbQ6(H2UO-Bu02cv`U zz@>`QhX6_dT#$)?!gmM<4w%8)5+pYkCNcmjU$0fdEhB@IN~2PzJ7835M>LSiW_!R zzqXpsuk8F9G_YrtCOQVg^u#;M!U!kNCQ13hs-1Iq9|e?8y|+~Fjm`LbU#)TCf>zlD zu&`j2&N{Rge*q~@GGzjw0>MS(xOgTb=g+zh*zSKzQkZ^F4$+M_Ph~y zX)(=?`Wxe8JL+J3sUWgRNs7R9d&23U2nu!;OXLTHfq=kp#T7pp6Bj>-&*z-gOQ*g< zo5Y3+Z4wPyVi-6+F9D5cgo{O_w5F#Mi_GaXSsD!9<;a{HS<1>5o@jy5l=?KSdd>nl zeLqG6PgyHuC+1vo^!jp^h%%F z%#_ty=aP#gCdKV(&Rk`2ZXDKAm*`r(xR1E_mapEX@kKDw*PT6tUjB3?k_2l_9(#)f zXw+!XE_UE=d|t;mkp`7*oY?D4vxxqsA{UIcpiIusix4$$E|$Nji{;OJFni2Yo*>`nL!%ZdIY8W%s~t3vFfws6>|$YV{_^xZb>&?uF3Hcus0*;6KR-1$AB^e-f~JuGI@hCP za~9B<*(A8#n$fw3^`Y98TO5+_z9G-it`DIG)je7>PSc5ti8n~QJ@Uq49kW%!nvLk& z&Oy8t0-8{2_osa++b}^9yq&i15C1-uESOSR*=~e$B~xSKy0u>e4#=qhK>d?BW`{~((7^f-!EbZ2-b4%@SoDdavEJNTG zO8am>!tG~i?QD4jAiGik;fzHaRldPu6P#b8Rfns4$CmDw_sw9a;g1k7e~vI-xX;U< ztPuBR6Lr7-DfL-eGo>E;4eR8D;p7)TSsW*q%h>YMg<0(_Ap2i0EOcMYU5DrKr2=Fz z=iU@|?SZ2@GvrEwyE0!V^>_35g@vJUpn8XkEx{ybV982aSi$^w2%ePuNdYTGCL-G* zJ1U-uCf{k~a{)znSK1uf`W8AM0GWKk`rk@nHxxe#1}eAN>Frnxm)D6RSPQ%U01~3h z%(kBKxd{jvOB6oI$gzs{iggP2%`b@C@WdMVTIEO83$$!7M8-%IShi^7{4F_=9j1}s z@;2to3b+Is$GP%K9@#NmUmVW7-?s(llng#mv`Ag?euvmrx?N%OZ4Y^lqDYQ=Z(nI<{UFkzmG zC)PoqoRs!$Z23||#>*Lq%4b=6rSTufFIl%3e$303!V4;Y`X`i9TawL#Qu1`NKd~57 z=~R>|Zkh~|yIi6nlsJwT&gMY2(F^ah%eNpD>$#_Zo*}{v0c?El)By^dCaOqc>IdYM zyZodY#>uY#zOvYj8P=W=H*}Aln)6q}wFXsiunJ(D5YUa2POaqM89|@au z&npW#fIh7U7@j|UXCy5XaCpUSQ=<4H1-i9o=N5d+H%DktynI*PWiHNt|JrwG2VpQBZxcWPwgfrsZhwA(j){)#TF}?_?=GOH zo1V4=a6!PkxTC0<071cbsxprTohoiGFl-QK1wcXk9IAKPK|PhB{G+g)6jwyVhV{^A z;b1^3VXFT5;z9)xX}0+l^eSOPznHhdz4O(Y!rFlf3fNSo{A~hueBQk#F+t`U0qm0EXgvnRb1~G+6Dj zR{~+V@z20ZSm@FhU18nyOH+ueD%^vDRS2h$yk+7D3JR_rO80kU#wGlkTp)_Z3qUC| zxUpP@FOtEfUB1$iTQr458Y6h{_aw*`>NE}bwfIVzZD z1t5X=q=eO?bVULilmYbwkSuo2?&Y$&=X;NET%GedoVAnOC!DWxQ8vRF+m(bzZJrV3 z?z~cA8DL6oNE=HbKFR3kG&-y)a*!Iwiy<3FMIg&*LR5-*YWv&Z4P&ihOa@>byEi}J z5aLrPt~&t;CNOF7L0QqmHw%v6ij7jER|PQ7d%`A>l}mQnRMom9hLkh~%G2*I51@n% znR(uTNsqbXNd3!`R;q$HTx}nV+pJB?rm9JF+&|+@ zo8kU@?)~MqWU7|Y{=+-b0V6wU{x!HpglTa;UW*t(yC;n4?%yVzRmc2&q2O|xA zq`6Bs6Jm|77}sBo<8#8Mg+$8{kRtgr#5a*!4M*I4niOk&Z+jtc@U0*+S+~y16F@^~ zjJQP+!}Zbh^{#uzW(=Xx&0BZot*QM5Eh`vp+zm1S4?{Ix>W33|IIW1BbPy9=2%Roj zcbAFl4$=%eVL;_?00OuMA#;G7erQ*-gNXY%@9fCE)^qz78HZhK@Xn>T6VPTH>< zL$hn{lFd4@#|-I62uA<=_*wy@O;zCYl}U9DfC!8h0`w91jnM$t=w&C?AT^MtxY=LE z1K1iQMV`E1Jww3r=jRTkzdbuwU2hOZ1#pDQIhe>V=B>xcLsq5tRa??#Kz?Z{fac0m z`XRoGSIC%vn-%Us1fc`GBT)N*;hkL%0lkRhvb6&-dr+AlJ-CC)I3Um;ISC`XO_7kL z^Mu_yalh{Fwa@Ap?S~H`zaijT!9AoEASVGe`~@pFQ@)>X*@9J8-RFMaHLsnQ?KFl(}+2ii=xrG+c#iB4oVvt4!D9me~cCaoLf^tKi#op{%M#9?DgCe{_ zz<$=quCV;)MQ|Cq;OM@MmReMF7`?88cyS_2wIC}EsXa9cnH`aGqBpzXs2>s zzfd+dcBka>I5iHc_s&iU#?3@xiEJsM2oQI*Sqa0z8T*&jqtM|MVzl7^hcTM5Dxo}K za2MBz)C+d6d=zB!-?N?xn&lY7iGO5mU-v%^VJwv3;P1e2Z(I8l+VBx-Sf&K_vYlfIFb;r^-XcJ z>?OwP)<@@1?TRghwnE$V?%Ilfe$F8MeBsK?`P!h@?lG{vy4D~PiBnsze_p5g1nmW8 z2(B+^dm&%n*6llKkN)lTK8Sm2-=?XGg(5`^04Pq)pGF-$0YTcWEJizRYfvTdSI#s&= zzCJ4ke;LK@8_QGrVNptMK_kB_fJ$NEwxuNlDHOqx4VB``Gyb}MT-~J^Rlaun{tSBI z=L6`9e=K$jS8WSlEV+liU&Gfvutatn+v%1IdeKSyw2$9;XPWqQ|G6;Qv};fALF+d+ z&|NRp>GMw--9g_w=x5VIrxLw*{b2g({flWz?H0Q7_-=Ihaa~i{K3z}O-n-bWB7ODO z5n5N=b79?fy7s_aE*+fgft^4|Q!VjBPP8l40+U0TpTt{kM_ zsgbhZ@xn6ta=~W$-Pijy>WA^4tf8O$cR{SzN&9xD-(BplTPTy@ovG{TH;*lL7UOm0 zNxkUG6MF0CP-Y(g$!ht0p^gU#)4hDdZt=6p3pUYB@)?wR@x9s=+vs^IqXEq;PwK5k z`}XlmXxtcSn{F)$zejM#39!BL>pkd!H&?p*CoT)_zLNX>HwW;zFz!v z*X>Tb_ir1XwS{hbZlT@__kZ=K(cvCDgkHxz=IY6ue_cJ24&A+@mhGsYeImQpYI&Zx z0Dk@n88AF#R7bk#sNQtrLv!f0TlQ_#KeCf0oPxRPlo~Zwr~l?Nq53<~FU}i8XWaC; z>aQ5)eeKpUbkwyU2VlkSs*`Jk67Q$?LES-ppZ4oX9#B{UZ)yKOT{av6wR)2U&;|PG zhdLX@K)HYaU=PM_xqVf0%^d&3e@<29YV^s~ve1Kax0fuIny449mC6@R>j0%dTEC!u zes%v0{Tm{IfBw#Hbi_69X#g_bd+Ptj(y#BE;Xa?Yju8tq@%M+&H~;Xd7)Z?}ruBT| zkB6wcK%XZI?%$rCOHaSQ)c<||v4zFw2X{@OXWw5D=8`RNDLyK)T4a0Q3=l>H>vGp$ zHZrM#)v{MwbOSKcZy-Py!MiXhnlCLmw4?FL911$-yvw7%URKq*i5>+)Hz zm74V=8(e+QeYi}Il~=x?H-z*b54^V6HAvs9VHweh&J>^mHEie$f$_mfKJ(2EJ@aDFfHh%b(P_p!Oa> zzOOHU8r+yqL10sW&L}ag2aW8kfzk+wUM%a-*N^U_Y#hedgA`*crql z{a4D7Zy-k1RH?2Jm@3E~%vf0Oz>bMcr+36viS~!9715qw&fDldoUyjhHz)7koxuh@ z8U!{|S2K+jw(9Idd(sCp))7ucLTD6mX&;8uh`0liG{e;g=>;M?*b{nAemnEvUfO2> zM@aN*?A4a7Whbm5Uwlj-njkJKur|Z`v{CU-fM=+Pqdow|w>>)#8eC-MZYpydI${89 z7m4c&f$spz&;Uc=IqE%A+=^W~Hs_0us&@Z)VF7zNg`)jO{20>6K;8d86Bg;Xi!8rf zeDH3a7zw%o{1*$@{aD<_Qx>e(JbidU_5p$IA4&Tljm{VI)~R#@h5bEF^5IT@myLj) z01Q(I0rhY>LcFsHT%)qNs1+~{m-)1X8}%RtHW&c&IAwb4BeONVQ_fho7T4;ThxB%@ zf4-6zTN36h{;@Jm4H7C(nlx!=)4T=5{g?gaf5a`9G7QfAeb#s!y=HOWngglIop9Rq z`fC%T;y1c+yUEsQC*3qpufFzFzi8k3_2Gm*#psK!LGu|F~j+0G7>k;7=win5!0`_VTYr;-n0}Gj)Rk zs^<1B*U2WzwX|zjRwF<+wlFbFOBRVz~xPkE};7aNC7;4^rwBr zXl-?GPhCgmPFyGL{hLSTySJvSQvzthZ}z4OkLaQIL7U2Fgx{;XwQ?67*^^(rX>T6$ z{g1Vuyyw<$8t|-3|N0fZGiANoZ9o-(6u*7xyJQ=R!SXwL?7Jsd(>>oGr63B|Z-4$6 z8hpunItQ_v>L(1u_2&!};5CORsI~ju+g3ODn{R7l-1Gh2=q*|F?tg7bm{RPyuO+OIy)IJm=h@5(s&b&6bv)Fdtd z@%{p+j`;E0x_}e$TnrrAR5rUjrLVT@EnM7WB??jRsoBE zynWD|5|^2S@v`ml83*^`qxbGge|Tb^umwvr@h*(${N(qqWw%5uBB_XX&yT$ zo|~f|H|y51g)&1(q`Pj@c6#WIrOEXp_kxh-X$SREnF+Z29)4qq7VQ0Lt5wGe3ibOA z>Bz#8pxzANt938=(>&rDWeA5t{1oh7C)r#eeNXF_&78P88B7RHQ6f<>+7a|La&6e=j3x8I{zHMQ2QUTSW;)ccFbUaUB*3U2nd>`;+c-^lpf|kBoJ`g z6O0(##ew8h1_zO3NLCG|@t60_lKEOs?OQc-dk${L`wi=;BCoAll%Tkd0}qT8J=Q5^ z_xpBj$=9Ddgb)Caz~_;7_A+^34iifi|bgL=vZ zy_D_5cs*%M4;>R=v?zBw5h(+P)3g|S0rs%5&f@x{?4^I;z#pzF=sx0DV0INpmsy(l zaWGSK=~ezL0x5IFluBXx$0^~WdnUq5&n$47HXby%baXzfNG@BDvRD~gm|R2TKRs8P zToc&?Y082vB%p)ZwesNQ;1O-x4-vfV zZh2xUop)$w7zdZf@t|G;YzSZ`E|u}wc>ul#SRSR8`GGf9@|`a&7qC{X_W*cXx4A(( zLO_Uu9()Zf22-kU*cS6Tp|778=IDaMx{_BE2XoX>*(7@bAOU3DA|OYz%uA!-Id{CU z6re-Ps7#x%U`FFknO{#7forOfcb%zrS70zz3(5ODrF6A*TZBbgs!Sc)_kzQ^)7ihB zuDcL?AB@dqx6h*M&Z;IajS-MKfj!$vcL?jGZ5RWx9c2OL!J=5~PHcUDGAuCz?z<=T zq1&JL@e{lEt0I4LFS*X}H;nu{U#$hW((n5Ka%odBwr@{a!{(X>TY}tNE{v^kI!5~h zEEPl$0lHi`+2d;zg<6&Mm^^R2YN+f!plzBbVOT%+VVyE=`RPfo&E}i+Z^CeabprcC z1=)lk=MdW7HaSQ!K`zAxnSqCZBworeQFa%(4O}H)zb^UH6eotpk9PUbmqFJ>_cWnX zusHiSO8Vg16`S-~(D=b)fBnEL{RZ5bV8yUFLcyD|#WA_`lnKw~zm=-w-kMye0IEZq z=K3MP(qEsNgCJY&|3mla%%0`&EZWtl4Wf&Mr8;H*UI5ftJEe^k?uoucj7Rb1q6aaM zQNgp1dwU^W4&|jp)`uw_TQb(Ec;^JlQtXy;4{X3Mmcc-ie6~VdZHPy*)xw@@ZHO|q zXxhY`Fs2({a%_!z_0v`K`zPiqnE09)ew;SDS$5<1N&6oree>5VM(OeMLA}~I1YiGI z+H%>Nl)KGlIDiv&`v3)7wlz547^F($FvOqD-r%|lQ-t^*Gzef5SNh{IBM9r_q)d%kySe@!xtI2}A2!Oc+B29xoO&I#v_ z(aGJR{e{zsSf}7NeCGY-l#e4MSMDRA1Fpa|GLAa6Ywj*Pv6^=u*jCpH0FoOn8cH8d zTkFm}v^SkFriVjf=0089fCb?;t(s_j+$?F6ZXKG73$BJv6aaagl&NnQoXG5;`SwDh zU|V}5ia&bqE)1}D&r6Fupq8Qo9Aa)mfgY#(dUtL?`-qDW37rA3?1gm=qOpi;LhK#D zu54O(zu}$qInA4wRCynL19vf=htrI30RkY)TIrC_5F0%JR{+P*Hrn=3^am4-6QnN- z@b=7TK-yB3p2DiZ^$Crzmp+!ycQ}WH&~JQM$A1>~7zZ2>91eG?^o_$<3yYgJeh*<6 zA*~>8-iT9t$NRask1&8ZoeI~g*hT($=2|@f@Vm$6&{OX$Q$Q(TTwT7{+~GN?Z=Et& zcyIhiDhtAw#R))iW7VCIlrGJELc}9`yQyrg8C$v z5JsW23tw?!FD>H(Z`HZqeWO30G^Ufd-vA`Ha!ezXx<&8cG&f)=#$dU?yx{$gGFZor z?IZ(p4H;XuV5QG;PC)`;^1My@J(Qg(#oXXCfIMNn9A(F$h(nx@i@S8vq|!D-t&q`L zOP%{y(Pg(ymxNNf#Yl zkLutkxs8APxKEgiWi2%W3knE43(}-P>sM_784A+{-@u)kPy>Jk?*Ho=4a*+X9ykz{Gbb8Th=s zMC6jsMfbB$M)mM_c|7tf!iUH~tURp`{VDFb*R#mtIzJM>hOy}<5*DZnW< zs8HLO+;eby1uQt?f8Du*dAWcwxZPBMElmw-2NjwG2Eg61OTeoKi&H1ELEweV4x73e~K7g1jNIw`Cn-R zJcw86!8>2cLy78$Wr0G_U#23_a`2HQBIrmcHW*yx6G@$fn> zgCaUu!$+T4!bnH6-|!A}?OB5~UC!&DuU2=j5J&ET*B9$5hBP(^@czMR19{8#oeGpT z2^bmw@ya+}DXIrK=uh!S!Y)GG^FZmhD^KpH%o5_hu=xTziCDxR{$nbnK>Qh^a0CkL zFzSc`|LMs&8q?<6-ETtlK!PxI5JyD{o9gbZ8L|@4M*DcyI^C3CbxJ=%PCpfX%}(i} zsQqMqAGKE(RoYiqc{VWt4A*bo;TDNagKPw(H;^myPv0I%pUzqj@mswgyeH2}-=?+5 z&sY3*hJZ<=5VBVwqvACGpP*qd6!9!aw+_`>HUQq^i)12^Bn z!`rGGZ2Y9Pf?ON)p4DAiD06lB-xut+hHMS2q;iN8FQ3Ooc7N&RCLI z59>H7V|%}AP5{-fxcrlQYw3^??SvWYNyh*h3ov+q0o!(2R+9qJ6 z)SV{_Ea$fa>s7K~>R{~Jw=QY$D+=}eN2@iH{lO#J(cboLPr(voaTg zw9CGS5m)u$AFA{u&jW9)p!?-tKd@E)OQ9>-CCLS{4Tyq^>3<)iY?;)BuDNF}r3Ev^ zkJ(^|+Eey3vUgse>4L+1C?j{ss1C{|{o?BWbkigA!dFV}yW{%uxUpUJ^I@00uW?{x zg$jcbuFBdKTa~psdB3i-$46}eu$>uKJ7tlPFL9g%=2gr4_;q{eWW~-G@l0UH;9>)y z`YSRcxg%P-S zLal!7`=<|(c3G!jOWbf}x%-AK;#J*<5Jb7+*I_ZSP zB5~Nn##6zzlDPnZ)0!CHwY8(f=?ga2VxV~rD*fo%uw{pWTf4JwL4O?-pwB1!-U~OVDHrebYWy({A8sj8Af7Z7!Smq zEnKlBJeS45wbCQ_|9GL+oqt4caf7YV#Ip}*0JekjxCRmb^z6Y}?>omYP*)D6DZy`l zwMI`MwryFW-@UrXGryaeo_uF1z4~dLY8wd{sQj|j5vK#i{p+BqwMc*{PRcD=y`Al(G+e`o zPl8Os<8Lo>Yd7x<2F=g0llSYcC(mT;@#AkTb?Y~28XbT{M&7<_&mJUhwVia}$j-{d zz4-A;&*%r+bm38b-OHcW@iK8)!WDhy!M#-zY?`$FCo|W(6U1GQ+;@okaW=So^SO@g zn(-<7^`L*hvWQk~+-4{6&E`^FtFS9xuYb1My*YU`@7AxqJMZw`+zCMO z)kO?t`pp3>Zr$PN;fYJ=N&&WTEM0TYG=Tk(zQ)GCQ!O*NEpL5nj*=w+j>vC#z=)2* zPIhr8jqT36$;R>@FD&%zC+9Par0=_H-+_?=7`JVSE^}g=&pM^b zTL*S;-yt2`nFsgefqmN0giq>l!cgxGoj2)26=p?j9Yk@VqlFYrHmWIm{cli}cGrIP z=Z9qs?ohU?irjT}f{#35l=7g3quEh+C93ey(5ek?gLPO*du(1pVb;9 zzRe7t7HoH6egMMEoSpD%&xpML+ubx~3T#*&JK=WWiizu;-mjIgXWR3Rh(Cm_qPGPk z{r2J-VZwUSwfELKALbS{gtXal-IXWyRCegWw^mvwYB?6ky$>4MF0^^laY2x{g3l1d zf#7Ha!oNLrJx#lFG(Z&Eg)(` z0KPR^hOIR0J0BYt;0I7>Cw$kdU+2ve$a*t+RL&04vAghyo(g0DuJ8iDI(TFUsn=R% z9uO1tz{I8W=+Aan7VB@%ElL<9Ohg2p-#>9n{QgxZ_oYk!I$itH=xm!HV4&WfVnL=w z-L123{zCJlMH(sqQh+P~shaLB`L&z(RffQWj~pllw|D@Lm;U7|4NU*hKW7j*m-S64 z?zRJCOWEX2uE5ZDw>>kTC*6J!c4Z!>%6||n|HsQl#5#bD!oRuyJt8gcoZSB6+6PPJ z?vq{f>$i?&=;?rQI%U7^lx?!~**F5P3|%P2vmY#@8<4`o=r7LpMzQVuF7zz{QeVGj zZv{}lx__qL@2xNE6lj5s0+R*Mjd&_?Bhc56>8D@cV?YOW0SYMAmOt(PK6LZNO}XHK z*C?t_^`AR!Z?9( zfCkjE)!XC4tGl&g0NVd}14JQUMOch>boA)14ECrTHamrr+42VBqb7c_%Dw(Y9S;@O z2nmpJ!f)dizxhNekmo;ILDuQ*Wd2ga1Cs-WBSowY;jWz1ht_4m6 z^2|l`!QEjoXH269ws*~?GP9O$*7iq$HBQ=rZNtU_3=&+>5U7OOI)c=DbZn`|=>ZI8 zF5F1R3MfMy&X(=vtZV!l3ik7B2lf>AO^IF*rscz_YYXu<5D-PMHd6I`GGh&a#e=*0 za50#0J7IGPF;v7iK~?~1eDcmm65uW!TDZ0X$RLEN@i^)Jgm|{P^*gjakbeN{b=pBa zbYR0xIZFBl@lHtLgO{+kZpyqFG*Z|ffJp%y3^yL+4Sp=H*$I>C+$VF^Asvs(9f0M* z>CL5Uw)pXqfy%0u&BUEMfFF8use@Q-SQmiBc;`-bbCzymyN%qnT?NjNb1BY{?jM zQcsO5)m)0=I_{|l0h+pBKQN1HSJXSI08?T8qC)P!%Fii7Qxq8|`_Lua<1J*|nQ^xG zP@`8lF0dSpW>`$4YcG4I83ty})({shE-(_|p#`?W{FJtRAv=NQ>+ZpuxCFVTYd>X1 zCfE94H2|@@zEh*%#5#5SCu{lE3;WWEH_l{Si*jFkMlX{00jeTvf&YLxLrm3Omk*#5 zZkQI`2HvQJBkr6U$`-nV1?*gRMsND|o%1LM2H2qjoVl{@7F~zdO}JKr<-PD_F`kQ^ zxc+$B?R#mRzH{fC=#s>}-WDbc@lsbD-;-{Kix7*DfUlpQ)mL17i?p&GWFo8$zz5&5 zz;*-orK?Y=qiU!+K*=UcJ8yGQCh@blDf95Mj#$xc>iw6kvvYK*cf(#s3z1X|e zu0OjU-S+$veIEb|KF5t*lG3HJ$6 zis7H`zAh1W;ypjuJpx&{=*0cUzc_C&{rW){QRi2Wbtt;t8IJ5_dqYd7ghNGEIp z3_jmGVWA4)_Y+3$`@)DE{*w<}K9u78w|i!648`1=?7k3Iu0!i)+SiDO!V9MY-}uA9 z1aO6GEL3Ac(<68(aTE8A-+!j8)n1oREDS$p!^-8f zsFP=-*xWE-v#IUuO5slfS44R~6ItefY)!N{hw!^|nQ4h1=X4kAqCa+6XZK7<-_fUQ zE5^yJ|GZKwo0hGi_sI3?+L9F<$(rE}mv3O*dj(*V$WK4EW-Z?2W-i&JLDd%=*@s3{ zS3%5E)2qPc^6`vy8Z-@e58QUbs&I>@CFo_*;?-M%x0(2)F+JRYBRkQ2VQbzs*35;y zntvYLX8h#4%iSxJRxo0Sa7qsV2A~*hBvOGq|KUpa?$lLUR=CP=G7*f`CCBvDwQy10 z7B{eG8+CUYO}#pEtPu<@G<3Qy$(r`A#{p^D6fCH7R*xIAmTwtC4|6p{EY(=5Glo4hrs#j zuC3kqNA~8u1sFX2?lL`vx?n{;*)odsGys)&6hH&o83zk?AJ~q^im``8h4c@@H3~Ny z$NuAp%C8t#!wYjaT-vS&LDHikxx$@|b^(Pd3=3(8=RR2Onl%+Sr7&Z{!YLCnPu%uM zzWn~Qb?&(jmT?}cgdd}abl~#^v_B;*(}&YnbGUnOWUxCy7_cqk&U@hXMZtbM%>sba zg~$Ln-ONux9sA_8_ft>NLH0|T6n(!%!bJ7?2Bt{5yXgKqi_FmebefACGe zz`Urk2Hvj>2J5EB7l%EGX&zZOhoN9l)>^=d9+j$L#hTE~k1tdZHSMl_7;ZKMa*qFa z75(Jj^ISei{qCV5G6X0+K-JpfNth_2 z~^ zA-DxUyX#20;r{6v&st{0S*?|F|KEkf^)tNY-G6NCmLL3m3O)PY3Ks)PY&ho7GR%X3 zmYr=hoHcR)Pr)d&4TcZ_5x!)j(};QI>;@6|An~v)@Z7v<6IU&)CQ@|V``RKsxn@jd zr}i!Q;-jl+(wz0Kd5Ke5UBPh}+sFQED?I=V0>dGFftWJ@Bplg?`xmhHQ4j}BMPnK(2JpZBpY3&L?2VqVC zDx(8e3QHhtnkv2{E(m&8y}GpI@1EQrxdHhdVSk%6A(aZ~Eo=gS-yfcw=QhDhkO3;h z3_;NxC)Eb^YE8d=be_#8?KLogFrrA~g0w(j#%}!jPzE@Jn-jvG{v_fS&6@t9xH-cO zw44yvL{3123BYCg-n2E@7-lE!ihPK4=8d0d9M#c#cacqqPaA_1aBwR@!r%{2%+cof zwroOP{CEY#J2f3m|L$!xTmV{9s0-YLnzN5QH*wL?eHghK5$l#-X{>(dq<+dq;ToG) zAfrB?vtBjJzAu1ig)pK=3ZOzt7^HmB@B+C<(^AP@Cal(D;tE~8VS7An>Yw0K$ebmDQ-Dc-Cw$TyEPpT=-G-dJs#x*Uh8o=ZhwRn~EUT)~1N`kJz_V#HPrE$&^U;jM0|1_rX0K-egF77S z98MEbVdEzD_^{r3U;yh0WsnJ=d1~z@7WR*jfP84*Ho`Oxk`2z9tc{6Rty;wZRh$;H zUFlTK2wh^j82Vk850WeqaRGpZ|EFndD281U6ZLPU=@gx|F5A+X*UwJ6l_TJy{Byr( zgoQ8pDbs>d4E!|1pTzvI!uiCii6M&Z6>+4wFRQyWQ^0|EEgQIOhDz^MaxQPPiu5*= zZCLdR4?->EA-e|uEt#*8`gLv2>*~vH{pRhF{qV(e*=-{#4NdGg>lRx^_2Uk0N(@SW zVbHsZPj=qbhS)H52~t)jFo)vm({sKBC2Jy=@6`3trKE;!-w)TSEQGiO<90mk8(7a9 z#9nfgi8uOZmD$H0ZHaA5LHIJ(+j*8OrP_%`i(&zYB3o1lBsYh&3otZ%gl7Ucn0|`2 zSM0N}nMiGDE^uR7eZhP=tZt5zW?TBi|Kvj3X&RUk75=8o*eA9!-K{Woqpp=Y@S@l*vWzUN+t09jW~w(ZJO(m^AI@@n8id_ zxwy)iOO^h=bqHOhLb87KP06_nb6CHgi*}lu6i+KfcD!V&`_`W}RDx`U%lDHur}Fir zFn7}$$JS1}nA_G{k-3bnxvT;%p#uDR`oX%e>nokdE z_xL8p0hmg})b*L3>QujG&6=dBF7Cf(!d4-YxDlw@^{ZmH9jI+{0mhyTh0|a= zJ!0+)Y>RfUo(9wHn zTO8!r%=}CM7Xs74V1c=X7$)Q-R;=ABK!+VH1S!aRKti zJg(+0R)x%v>!QLG+5R`LXc5hbOY%vm@q)T=HOG zGeSi$7kWH&2D`*kSm`)(H~JfuBRy6GR9d2v)h%m=&}Ft2_LDiK2}(H6gWp2j8x>y> zq$HHcjjmwdhwLYZ!C9+IASlB(b*~YUbi0h|hz$^_|1|H})-pRyle5zHd=4Q)2Qc%+qi^`K0K+1xpk%E_lGhF5 zu1OfnWjK;k%M?~Yo5Lk%sjDK$LO(bKft;=10p~jo@XV@~^<@Nd#)$dHa^COu)yTS1 zK4QSsU_1(|gHvt(esbyI;s)C$t|g0O!oiVp1I5{+p~_hqC=LnV7hsvh^`U^uUY$b{ z-+NzM?9Mr)7tdc_k34UD?LE^pRmp+EP#m^LXI1-#J7>bARjM6y-G9u>;mt);p)okYS=u&j&oE%gS+g68ouJTDGI1^kSa!&@49+- zHJVr7G1cv8XkeV$>)W*zcWu|gwG$S#K?te2;<|x&X}O$jJVMJJFtQUP{tP+ukW6>+ z8h;|qg_CbM2mqHPn4}j!Ua9OLjP0c-RMV<;+n}|@Yc_7vWW{&Cu+Z&nNb5RkgP5OB zg}DpKr3(WMu1q8Yeo4S6Vx?f{Z@PFG0|4RMh!KNk5@LPUAhuHq^of8c`~#>$dK{b@ z{9^ukYSp|c{p_594CQoWEfDvk0M2HRo}jy)UmyUYt?G^;b_t;u%T{lp52mjZCbBdA z;@+8Ls}+ieB+NJkD*eikOZfSJXTlxqjvn1b#fA}UhVi$L09nMiAvm04uZJZ-%KBaT zE`Tax=q86aFSE@{#MKD#Rs0FHbYw|@KmYriPeqy}DBq)9p@@!gw`og*0!AqBi@TUK@w2eFOXc}h0^0sNL4`?eLYN)n zzTH~WCCAs$Rd-DBYVDkzG%POSjQKWt^k@eGPz6=;2Q6HZz+XbL{&u?MYZ*xg$U(~b%eGNg9T zfkt2*UEW9KG}OYFw@SzQhf4TjB{1k*cHhD))R8lWkyCPGBZ$)GF0v(BCN3q$SZnM& z$iw%&J2B=AOi$G3;Ql2SdCcfa^@HCgrvVmY*;qBpD6(@!=F(oaA+wEJn*X?0Ih(ka z%)7kH`OgttDr@A+9lACo2e&7(vEca?W!}*}FVzwN6~4H6Ynf&&s^=NBiE(1< ziWB?M?E)&4agW5VZx5V2L?UIVx}(je%-iT2Jgl=wNR5E}j-7ETd#gh|F@1#fa_>%E z&DWeUNKd#S#tCU()^FLtnRQWpB>=WprGAGB0D#L5`2)T2FKIr({$jkhiHiziq+oKU z)^2jp9K(q^VR-l*VQ;>iv)+%Tu(`p#k&_RS1c--%TM%r{^0iyFJYa?pCj?RtDPT@J zs3#IUOC2`r$v*)UGG^M*l_&S7c}q9Dar<>=$Z;%Lz0Foj0Z*;n56&1se|%!DHpcuF z_59BlH#=dkSQt$H$r%Hws&zAZ=DlTs%uc%mEEmK2v~|O)+wwaCxSoA~DHq0`v?5OW zL7g2jok(_El1d;Y&@p>=qj6(P3}z6Z?a6nRhghe`N$Xkfi;wODu_gLs=2{xmqm7KK zjx4T19Vf7VaQ`7c-~<_`2Z;+8FEFVso3Xm00cLSH;IxB#(s5E28K2O}V;l%T%q?O? zZ@6z3(n4YU2XBfW*F8J6%E1AN>remTrJxGv3M)z>O^wa_#%OSiVR2>*lglqI*H$$u1bJsQORsD(r_{a~^awj<`#k;@4RJYRt}0!i zM#RKtxX3JW0+j}=Twvldmn`Lg&L(!!+j6ebRTZsq044V2GABbFVum;YwfJ=dQ1L_? z2iHs4hLG<^^6?M>oKuQ-N%f6*E>^?fWh$??W5zyaW%ez>*$_zm%C~rfluNys@UTzXT*}w8I8XEewq{Y@Kc(PJC0B5(*#c<9zRTkADXn>St)HIx z*W>0VE{-F_K*8`s#PW%Ew$l$!9|Tas2M+H{EUQ1g)j>;RF zMb1FvJ?tWE5@HT<-3=EF)1dQ7v(~A=XR~G{ z_sXP|e6kpDxYFL4x|VhdT0+VdfGoIYk)~-tk2abVTG&5^wiuFD|McuZ3UrF;&!^SSF7Ns0SN+dvQM z9dQXh@y>FWt$I2Ma3BD2PZI^mL-vEhrgpMVF{CcLlgIYZxaGF3n>umR@hoAllyQ|? zojA4|ZQfpXUoF_cKRI&{ZINZvGuf=b3Mj}?}3zu}!?V*@vB-n_Z6 zEaG3&PMtcn5~S6}VyfC-G@}q$ZcUOIA4-d4VzD^F^c*ncMn3J9T-YyAK^7nqC(agF zTX-n$d~MP3%LP{$Ws_mZV__(xEAo3f(Q~~>h_15pg^8n@0ipfo=EK&pSGN!2j{zBO~FK4)4h*RT|?d&-N75+Xk zu7onSGJM7%zRKm52<_n+hrm>3F4qLmLrFQc5m5p;6rUg5V6HI}5{$ERvHnEypg>lR z{C;t{h?t=qNxW3Kj4dtPAdJGuo<&>ifk3?0JeI*E>o=3UMvA3MhB*Vyky%M5IeWUx zJ_+rT=5CUuh*VvyLJEd2x`9JG1Xhb;pJvd#o2e@GZy%d& z_j1LN>liEzj*;IfEY8Zc+k+dK_|jvm^)ww$N_|^gS8D_?Kr`u)x0b}dtm)duop)p} zUL$M?(zQSkRs++eU^jk!I4u>|65_Gyx9z0I-&#ta&DlW4mGzQc{&D+ug+~Pn>l$lR z&hp*a7{{~m`sa%a)BFl`1gjxTnt;cxJfpVWU3_dGeng&w6I>`G7_t+`c6Te+Y^V39 zujV3C2ZpSPikPlizr(d{-GtG8U`C9Lh1(6!U$SZ&Z5OuVQ2~W{84)A)!_x;S3pHn1 zJrYgp+6DuR7^9;Fl#Ucv=<^@0P*KdkJw4wc2;PR>5CI8C?cGJSw(7+_rGr5lq|}5M zs`S^NKSV_*|Mpt z`wW5Wj?(;x{uoXm;?y^!4W`cD6aZaXc@PK=u~`Jje>s1>j>TrpnGYJ#+3h}{9ajlc z*1vlz)zrH7?&)CD{AxjdT4UVZaN#fw$cLL#0A^uBg3kpgIV4!V9!!j2)X z4Xh{bjo3QmUqrkZ4jot;E3k{prA$KvcuknJl3u)NKi}TWy}NYjvT@a_Ra>PEcSP|| z0aPw$s^S6_jIV8`!Xg}3p3qPnwRj8*6&F&D#E`F|D}~*;@1}BGU*dlwGPhlNy3Qkv z?1ZzgSX@wiK&w-bkufqvIRvtjS$AhFPmGnytyoz6{UTivaO?sYNn396pe3P!Xh0}8 zzD0ehq)TM6Mgcd4`#R2I0rWp*c4mmRSc&-{TVSKnGP{}u-xfB<&Rkv2H>NFO!8=n9 z!`|5$1Q%U^o-7Q;F17(@VK*FXG*~6?e~w0+jngiIod94sff;X5Q|ECARL1=q0>faR z8xAZ2H_H1gv@^x-_tj495iTqFHqKnhS>e*}`bjC_Pp$W^VyHMUs`kDSUnA2Q4VaCE4VUa*Csqjl*WESR|S`z-y(5@JIS+Zy%<OF=PNelY&?x?z?8=4!1%8$1pJfh);28b=G=aYzjI=ju}jXmN-2X`w%VEX>%J?F|}_B20k-4+t`X1$rPDZxsB-hi1}mFBz#R zXkPoQ&K)zlE3e(S)6MsyuME*jqW;76B4r5u zNF6Oq2~N^I^hRhKml49!Mqm&D0DSUiUwg1iIN1j?|*F(ZP{9Oi1mZ}58wv* z27hu^FP#fFJ~W$N|7;~$A#-gTND z2s&G53tLy!vW1>ZM2Z{4D1vdtDNq5i?$F&kX?nYtCgq`0K87(2V2&|WwY9Yrk^;ug zafKak0vep~PY4l+5QU0hDqDIoi;0Sscdp7p@;j2VFN)^YqXYZ$rz@?zjWat)n-NN3Fj2=PuU*R2=zg*FxAy~~g9 zMpqu+qp+zRb@k-1-SNU>S03L@NBNyEt?8JP3*Wa<&KKhfPboTFNK)XvB zKqNvwcvL(3_U*G(AL^gq9jprM9jcljT?>*TbL~pVBQ)^uzBy1+(@b8Fb`HP$Mn8Ug z>N?~Abie(^02()@i@p!_^zk3B;@ieAG1H~)!GB&gjP9SfOk4=-bc|eZcuzNOOlLmp z)+up=|IwfJ;bX7=Ow$2DbQ9@je4FjmG%mk+c)pH_nr^M!gq!w`pCQ=sHxDn+(;tWI z)`3qR+m(KNH*|qo)-7Msg-7<}?~bdn#%7%OIr_Ru^u%?0(yt$$t2A|7 zsU4KzTkt*K9|av5eHK#CT=JJGJ~hsHgPYP# z!5I$l&(1|!J!3-v;6NY08S9+bM@|!v{YlG=sSTTx1dL4~!R25!x}1wlc{!HN1By~) z&dO}9!JOs{rEW_biwKA^H;djhw2v=`wX^fU$i)K*p$eP`D315C&%9akKrkoub=wkM zrIoHg4;zuz$7pk8el1{MLnbC+&*a7Fz?+* z1EsDAkVa~o1g?FuaGWwk{=B)@U$6);>}T*9>IDajGyW@EX`g;QTdS)NISF^{Oq&e*DRpvF7i`p%g>71v1Vndm-#E5Lz|9VZTms^< z;OebcSp&|t0)D(+cA|GVLP=i7ZGZ`=J=zn=xiOah`t*F7Fa3uE(g3=^oJcuT-L18r z)V%rOSyZ<+m+N5xGfmz3hxgI7LE6o&Si6lW3+528>qZZ0&lq1fJ~vzAulAC*`e-_| zur^R@apV2?%mIu|0@%@=<@_L+x`P=TiQA=5$_?dglf%l|A-OdI=AV3bnSwirvmUok zS9kWIy;xW|NHcJsuB{zdNq{WMCMifM3Lq(usj7GxE0x?o7J6hogox4<2piT*iarnv?8v_@fEq3or<;mszv-=m*&+cEMU<>N!C*C;Q zIdesXMO{93*WR~Ckaauvv(tO>2{+CRO(1^e=z33d{=b_wLjU^qsrrg~z&dvHbu1!@B6=aL|ahNE{q)>r^-D zcmZEX{(0S5z4+FPs_EQ6&Z1FQey+EkddFUL!mkvZ83E^6F;ei!f4^c7ef!Qi?wzmJ zYw@l>yV^bSlcBu-HIuarNT2haJ7=pnC>E+xtQ=3Bxq-qus(anp)pXo1r|7Qh z3;le{7#ef+`zpqF;gJw()Yu1i@NOL$ zVw`(u;$p9&tlC>q#L>^6=#~o$gIR?LLiCzqU_Axbw0GkYaiZ=Gb|j`U;2gwcWm7nS zBilcfLab4Eoc;{K^?IpiyV#h{_`G25IGk+GNaZSYtdi zEV*zRPk;JnhcT#Y0tFV2BQt5wHbyY9fkYI+l?QQNP$F#vy{nJ1zcZX0Z@{4q(=y@P zFH-7RJLE48*qEa%3gST~FW8`;9kq8?)&BYS%M10ZVg&h)XBRl+Wc%d>LuH4*m}e~9 zR4&q&kP>#vP^H0y5nPVvLur zj++>r14vcVrbQFoTtcsFd5Fadt3D$i;wWJ>;4ZrH!C4xMl}JTG*#y8k2lw7T#@A}B z6+ZuB&U&6I8?o=7)?YQezH?#?BlhaWPgdy3MZ6#`dcwZl^dJJ*F6eO$>Q$vFqfiI1 zG*Ghtzx!vYGzCR->!~UnOt?b8^`D=f=Y;Lz1kn9pgx1zM0uXK&peW!~m_SEwPg$kx z62Kh9WT6H>Nx;>q2lgOgd&IqKV!u9yO4d~;444tVVSnd`^yvroqJ4&R&?L%Wgpvtd-A$>(! zt~ekuPCH?#rTkwO?iQq3=^Fl@aH9mGDU(8cIIG*(J#j$5voA}s|u=!;$ zQXK@`-17J$VXHc2_Xw7bk?v*(KltV<1s{Ik#y&_-wMGa8Fu>5e(>A(y1yGsI{LLc^ zRjl-ok!?9A5yNggU^!oJynoyHrF7xp-2^-|VF5G>zMz19$jJ6IWx*x^M0HN%3*?#j z{rOMU5Lmac&$itG8>46Y?%crQc}TA^dHyB^No33bX;Ns-!-o>J*F0b?>G_XWDZ_;; zcJEgu*Lab+3yDVdH8ZxB~E(s|*{u_W_&PpR ze!uadIdpPROh05)C%pzww6G1=xQEI5iNjd*EKB$i{_yTub3L0ExbJ@;MWJoR^sxYwUY+dqAL20sqb1Qi^&_w_m>cn=-lIl{qA`pusgfjPi_)mC( zEjiXE;r=P6+TM1Qy93z8Lcmpp#U5kzfZ-kJegQw*c9iq6p@HG|i97EY0bOSv(vz!N zHADV97B;U)Dup-;W6JkwZF0*ONB8&fH@SX2MEj1SC}LO@ySiuy4 zX_~vV-giU*`bfEgwuHbf?unQmKaxEOAb^2ewP@-(w{6DHOZiu=->&`X!hA$}p84Vu zMP0A^?{uo$08op}7JX=_xM|N7P=la;DCFCw4W0qG7oQW5h~RNZE}SmL{rjg5RK^UV zpE@!H+>bo6ov?*sJ%P4a-G^WQx*1;#&oBLCN6aVq$%#uk2@R|z)8&8 zo|&(G1GWcZs0WSgr1L@;8Ws73jv1TJG1&js!Z6`<;po8~=+ZxZso!T~bHj5W<$yZA zAYKH-uOTMuds>H1+^Sj0jUCp3ak6#%$14>u#Yy0N2o1*9?gQGYyBev9I4peP;-;5A zUa4ujdWlOD@o6WG?XK=tv(tE;dqi)(=cUDNaox6TUi-P%L>lkRL-Fi7+%KE|{@e9i z$^^#nHxJHszqogXuyo65+s-oOFTqa+4*xe(mG5N3DyQ$|082k9XN#xz35R1Y&ePp- zs~vz7C+uSDM;>JA0>vMG(Ov3+!>crf%VcruO{v|&2MTNT?)1&JsD)*#Bu;PJ1y6%iVdhNnh+k~C*xu^no(Dx4>(N4B6WEB+F zshxn34RKxHtzR4ZncM?^3$WokURe!ZWtKa0S`>HP)Fs2dP3uvu?U z+ejhugPcnXt<4CE)hqMv;?|RUu`z*WPT+FfUCM%l%=jAIf9488-mry1IbFe=FoFV> z=({KOlEL3ySt_kd|2E1hWfq&zr`WB6EsE_OT~SG|DSyE&*{^#`WxkNy_@+m{%=)s- zlLfdTsW7fXuDy4J#X?TLtHxEk`zNkI>KGRHo+e-hYXrcjNBKiTd^vxkvSTc-N92HT~o}$mNGojC_B>6tJONqwVnmDEcBC zwa(+MAY`{^|8}b50!9kJ3f}|RLK>R8#a&1b!<_(7wk9$Yz7|34Tl=Ksau8AkJdQj& zMZvlnt?h?ojGKq>({{SWTZSP;>N@0TItpkjY+=HxVCwmCN0MBGzHGT4FW@}Y zB=hlN;f^}()%~d8hQi4k+iU5))pb}3^;7*7jna%Oc--+&0HNVjUy3oL0QR!KeUmtI z+nJj&xf(-TxC|$;O)qnR7Bd3^@oj)<<4o zvJkh`NxETm;hz6!MH)p?806tQMLx$#xUD-HqH?&cgOD(Q#Dy?d{ND66kVS}$D6T*p z)KGcu?^T|F-Ii?){JMap*FUeLku~jv#i`NMInYx=UyF-N6F)<80LhC_7}JB^ow8a5 zD<1Ymv2}i8THkaiwC;v})PJA%3ilxC5bU2F3^h{9wd(>`d{A zO`EYML4NMTWeSv`Rrd0vl>%bg)3=0OI%)sz+K?}QvQj-67;mk`b%=m`B%T(Runy{* z9-0N#Eu3Nsc3Cb)+gyE0e_=JZXdD$JFfa~~c4xm49q6cY2W#SDFj&GcrVUA8hB0Q( zJFJfYvgH8u*~Ze(LI}GawO1E<^sOc0a$c%#J1}A=jZwCZI#o62`mJU6;fytfEsSA@ zuOHnttJiu8*ruo6Eh*^4t99$vnx@9?+%#VY@L|3J zq)nL4SSE@Fob3X?N_aHs*DCY&#Vxl>gVWaYY%=Nle&<^bARz3`jr!*E5AH|;rs&|| zZTQ{ko9K$;y9ub89~!+`xPLi1fUUJ7@Uu0M)1DD8#4ObcSfg;l34g~$N-l&k42eqh z+Kl>7_rNtPgZi%A2f!&zHXRWgwv?R!LiYFAX%BY?jclhm1_8PzFQ^x$rz;8I(nhHk zX6o;k4^)Qg`H$DoPw!h`{XoGz;S0z`kZ3>>?!B;m3cgi8&fB$a;)6Hj8n8~g_iv+r zJ@D2_x2SH1f--LaOYZg;mh$wwM(gvDP#JFnsGtt9_8j)-u}S?p&lZGCiD7W5Q#424 zxUpTe49ETQON%3lh8<)5xer$n;++7x@VmGKrL9_PoS0{-)(hi=v^_h+{Szzc%xwC5 zIq%vVrN9bc=EwKU3}cw-;87jL$G(uRI=NbQkV_Fi5eGQjb2etcM5+5Fw!Q}vRFIYM zZO5?;!D}YJAqES=hyZGc`9eGyTz&v`V6J}i(7f26VVs2)jXRPEpu&d5PHTj?p%7?Y zU};jmcQp6j>jhY0pWFOGirL#E^NNuM0UL33xo0oHKHZzuC6h{n2l;c|$ z3g)kjyMGS5vUHDFDy>$&Cm~yH%vBgxD30L~`ZpvC_8HQiCw{To&0D#dQ(G6p#Iy`x zbzT)$*Zb4fG5|je($<~M{o=gAJVQXyU!I!p;5LJ<6I8Riv}*wdz+HNLwI(Qr`wfB0 zKDO0201P8yh!CHIbTDvTadbVA6PFkxl?_;&S3X;*APq0Lm2g}iOas6VQnDZiBt$gD zy%Idf4lI{e1VAHiGi&9Gj_gBUiNSw!@~QxJEpXi-c%JqVX5!&Dm#VuEQUy{ko-%*E zfTm4u<@#;>ofG;gph8U85B~m@xHel7+@(i|yAMG0ppl&wP(fk)caP1D?T?=jCq3(s zUiy8oc)x#QP8v5-5HN6v(}F7z=Xu_qtjU1mb{;WC2-g4O6LZpp%E$#Ilt%LAn;xE} z>2MH4FYKHObpG0pKKe|3q1C9p|H2mnFs8-l+P>-pVN2I#3tX{$7lq+6#52)ps2S$x}-yQ%C10^o5X z5=93XMY3+Ng%?WSK-_cnh8@0RI1YBm6Syl+?x$+?e-(CdXU6a#=4#u{24P-1i92_j zGO^d5J&-4UxtgZeZgLy9>;%~2i;tg0;VHg$IiD0}!JVQi>R(St_==!6$)`ja4Gj-62Dt>p`COZER z?4u+yqKdM+AJH>V6*Jfb}v9BO{jKAq@JfGUOn z+-5rd*E1XvDgXV7fpp6gOG4f?@51sWWJ*WOIU1-bwVRbSdVbPcN(bPi9lNyP@gJ== z%P#(3paF2JyA z)3YDyXD*!}v1;d2gB_SL#Bv!Huv40QNI!tB(ijn8$F3IO1|W6Y^NaM00C-oOQlt3< z4ZP#7WoG~&c3{9k$$%Qz%YY3fFyY98%=4H?ibgt2N{(xk8mMxpSIHaGP-{*z!b_EK z1VS<8QkdHsWSKTD+L;^(JTe)MKv;2tDP$ncFrnQbbC-qhCu8eu@e46iT&e2fs~!rE z+UfhHl7~C4AUWdF_@^{eLp{T?md$@MLM{V{p~MjjModVBN?Cnu&PJSY}pPrZcQ7)18RJC_8;;x6dBLDi#ywv~l zpSEq9F+u?DHP!C0#-bD3wru8VdbCu5Pz20l9Y7!B-!IM|LIMUgFnp9SS=Zk?-G>H* z-rXSU-NesVx#7Z4;ZVVq;yQ)!<(|SW9eQ$ql`;5a_B!q&tQTT`AAG~d1_Ky^y+STO z#8CARw;Y%koQ6w`EXVo@3*;VpW2uUFqF#vULY~6Cg`vXfPq-rAmNjmcrbEi0Lb%O$ zPwB5G5s_#aCsJK9@KUa3nq#oJfXZ7Ro3FqPatf%!Rj2gRfON2mI4OGjv-3Cz0LSqS zSNN5u)L`7Yf4{siY*xbFQpS*M0=R|r?+^Yy)w|6FM1#>n{zl{h?AD=$lX1raR(F9D zNaOsFKs?A&*xoDy^u?KPuY&t;m*Sssg)`qU*}5D`5ZxeQ8yEIz77goSumM{nr`^m2 z7opv%C&O4jRCEG}ZdvUgCaoRxIo-_QNHtQ8G8Y=#EzOYh1{ckOepR~@I#KGeK zj24$%YXyonal{p=rxUL@u?OA!*y6Cjmf|u^As$7g6v84s{*%@8$d8B818=TmxcqRl z3lHzYV85RGWKAedT(kYx!fE1QsX{byDQh2f!}9%auB4An+Dk#ylm-5XY<1VxPJj{L z^w?sZFmR!rJf<@MnXY_rV}e-%Aj+(zg5jGUTS(LI+L!Ks!~4W3Z0_-Y06v@~1b{*k zX}tT~N2~bybNbQk#D~eR1*--+xYk*4^J9iBpbxWIH2O!}A>{q!Ig#6N`~gY;UPm1|fo%;C_#X zH!=lxDx8c745oI0PjSP+w^bOsd77CtID(6VRe{|Fc?%QG%{OC)bOJ(g0fHH-(DXEc zF>`UKxKv8aO!5KgB@4*+6F(TTxGf`>0iZyiD-*7;gCgr3u&61tquwRo&^8a^fTavv z#UYgkrpJ0DX3EGaPB#f)Gfp*YgS_)g6!lPi;2SGL42EY*rsTgmAK3?PDc4&7)1RN3$FW^Qo)U|Bh1cIVE01-#`$;`FderTJGTN>!s7Y$XQ zfxLq&!l}d)_v@}f{SUmp$i}TI?<3vL6K^kbKRSH?BUR2pBQ-4yL#GTU->KjZ354yEKSKe0x?FJL;vNs+RBsOQVVbl&ofVY&&xh8!u8-WLGAannw1 z*OpC7?mH*dFk!o}s`@?*QucN9?RYNHK0{?qmJv(tL;oiDDWe1)U9 z;N^^1ihc3x7Q4puf4SgDvogcY2DSG=~#U9znk zy)$(q{p8+Sdihr))h($kkt`s`|7sc;#;|Tm?pKPRc|+19WBfE=Sa%7CD?0mk)9BHk zj!^KRC+FmHyjP1!L#W46`rS7M(u}+IVU!o3>W=Y{bJ*^v;5H&nU2*ecwe+v=4&h^d zIoZ4>`ai^Yft`Br%@t$-0D$pdR}Vvwx*p|6oo^q%)cySIYM%Me1K?8AQ-X-U0vqL5 zKl6V1Q(XX0Gyip<0<<)E#Pz$mfzG^nikooLUi|iyb)h4(QNiig$As-NSFXAf@1Er@ z{mXQE?dCDMqwUbTsW#^6H+?}10)T?_0{}A=jg5gqY!z6xXWw5Dhh#PkZG8w6nxak4 z$F`A_&KV$$f!KC6RqU#$0*v`5SOR5EQBrmfHt3?|F6X-nm+u^-)>D{U9PaDlII=n7 z7YA>g!e|Ue$lJ;Ujr_fBt5gan`!t_mge&11=4}2GWrs$H3gHMPZbAV#h7*6eoP9abSyUMp>0&{+O3!6rATm)S9?BaX2QH!po2)KMnGf9 z&`biudc*xQ=+fhBAQ$2mt=OXNbk*1TsRj|^YBZ5>ITl(BUlaGO6Z$doyZ!Z<1;BpPIsq1%40^51yN4$(aX8_4z{rkzLJswtA?yl*`UNEL)9-0uyx#rQ&sH*6 z4Pmf^WntBqLhig;t#cZm7aiS)5m;U=F2M(1U!tKO29#xp31A#RUxd@W;=)sT1_ZC$ zr277;1L&n!7t*9z>$TW8bqTO}$fz!apm{JtcfYt0`eT|B2=WADhIMqO9@vB7db>dS z<~I+`qIDZ~W&)kQg_f?~=5|O|;ib4+VQ|12p^juCPhsXMO0MhpW-e3El>3XQ)piuzo0~tZ;Qa0|| zzJ&^O0xOT-j9>J zDvW7uf1g~KsiK`+a-Bu5SEMS;5T?HOac8LKy08;2G&Y$V(M9`Uu4F?9fx56SWUZ50 zDUBT$zLU+CutAB%Z~RJ7(q(Q#x64b20_35emQ}?3pe#if={vakLmfWprk*OHCfy)7Y`&g_+t@+%kw)Lc9!4^8HL)Ti^Qgm-#@| z*R}FK3=%->O~MGsuHCJz-_8?0snbNf+hxfZGqgR@acImEPRc>o3ZU&9$5g8!1j_&; z+Pz~d2lo)v$89{KY2bRpiLa-GnR@HX)d}>FcQGS48m!0b!eAkzA^6=nuf2w)fH zuh^n_-5!U#(YdTGy-dpm;#PY}>I#-DZxCG9r)x|8-K8Vc-GwwIuL<*!k)(Y1o?YqU zWBTfspj~(Sv-91y?PW?X&DQko6Kce5*r2M~aN)oD=_)4%U0ARk3VM(L7;*^9*K8%k zx>??s@IC?{x6{jF*j>K3hid%noIx7@1cnX@hd6Sa6_?SKnmjA;UYsfayBWwKWM#P9=Q-~za zGZt?O^U@a|YU!x=Z~<^v-9A}mYXZ`@-Kok+{OF89^y~X)I+cS+r(S8Wj1Q!{*=I<5 zW&7@UzE;@PozYrj`P_3*JBDKX-7hVKWI>!gwicfwZ39sA-wF7RB4G|fE&WgdXVXZYx7mY_|@QH$6PiV|6g-NuT zu80rAr-^E^`vtulUv$o?fVle)C$pToBwQt+qTFEG%LfEgp&8;Yj*{mzmO38BShqC~>d^Md1q=0iF)3j7el%twb%*60bRN*)BTP!{Dl7ZXcKm^v;aES` zq?FMN=M&j?lmEHE%d_UE$*p@A>7Ni|JopM0s%uP*6h2EGA2z7q`=jicp0ygQRSxYK0ErKPxAi=2Y_1YzV=aD`*@E<6PGcqef*-f3z?{lcfn97Yr=e{yGW$-1U)gAxyDe;qTmd7eIS&U>{9U^rVe%SnvY-+v70gbR@c>_NboP8{1^84Q3XisQ!HKe#oI6L1E%(bMlP2W!UxyJ{J`w{Pk89oil_ z?p$91Uv=xZ69C{+0fho6-PUal3{`NPqO2D;;)BBAb!*?kjUL>d#pMLH3BlniiGbw2 z0;me(VMI+k>Ri>F+O=**t2SnwW9(Xi(vFtEt?ofAH*Bj}TzesC|{)B#Y1k)neM z%;2=zO%5?$kbO9ApRU3aVY9gZ5C;V}9!@G=KCYizyKy^1nH+fzdr5mkQ5}HhjW11=oQ(+Q z>h7&I-s@GV3zCJ~z_q?Z2nA#lUYS!z&_9D@$IhJ%IKZKGKWeWo47L?&_f{s#=Ko~^ zxIh|sK;ItP}D4YY9DQO55%rUF6l7jiW+99fO*g0us4 z89S3PQE4$_@4oV@ca{^*XdiV_-=9;^AzOO~LE7Dtd#R z5EV!8m4ll~kV9emTQfzrD3}JHdIK-Zi5Aj{Z~&QsN}!1R4Fm=!PR@8~v4R6t95-V#>%^GlE>)>__00F^?{REa!r8CQiBW0;QtmaB=LB z%P@ih%rIgCXhYfK$-KOSVqVFNO-??NN-*WZeBmNavccd7sL%OGM3I`KP={=7$^jeM zCM%o&8FOi%$(7?A%^n@bbpVDg`S5g%`H2$RCp!wmiS*(E(;7k?6Jtb0AY5?2CFVIF z_Xd#6TKMlf`#*6b7Rsf)mT#x@S=#MTs)~Wv>#R)6Mlr&kxfsCW+IAmKU!!p{L;JRM_1hW79qCOtd1P`xG8Z^`N{{cbqhPt%`|4 zDSiJD9RXOxP27aU_1kE?qa7|iwnmp!1l$Akju3zcxeX-d{$$o#4HSo{=BBMXy+>&t0~K3Uh#vZ?Y+0a6}&+chHl9i&?(IV8{>`ccFaNN|-xnJPC6rZeSNz z6x;}Pzv<#(3c??nxR|!=Xo%JmGrfQJHttLTjFA3#;Pu6Bt9@h!xrs)OImqnD#lne{@j0(22!}n_L9zs zg^K)Wc>-N7=dlLavSUETFCM8p`TcB#wgSXbCNSX4$d{9cEeCAGuAr-BWr_E+I=Bdn z%=KlMAYVA+luGL=<+vBumkijYI);iSA1qruN8v%I84-w0NHi2FBXJ=5sbrvaylft70t1Dpdfqgg?l3Wf|LJ{AFb+)77E6 zzBJKu+qj!J;Y7}!k=Hf$aoFmGr??{fRC#BL;EA*M(zb-Mc~SUY_^q;~(xw2016K;L z&>JFQE)wS=Z3~P)^3Szs#*6@P1f%1m+s8B4=Zzg(>f{4@xI=gALN`1xgEb~4d;-@J z+;UK2?;{2lr^3L7z_<&e;btz{z^4gog55d**)zhHK$;M;45Nfuf+9IwGmGkQtbL1~ zoMM;Uvps})I$OT~pH~-A{@l?043`(4_q5cO}6^SVh|3UVSpPx5ar5eES%@Yv+_ZMojGO)W; z04KmBQXv&bFH?)=tY8x^N}Q+$@Q?Ffe&B@Pl_w7%D5m4!#8SBqWrM^)Lm6p@n$xvs z`4l(T{A-#Qhh>g)6RB-}e$EipP(x}UFCLr5bg#~>pi&R*H3#VtBt{knR;5D_j|bon zX$k0LfqAW*|9cK>r$8LZy|?XfasC4^5AV~~T|TZx8R4hiU9LF}G49+eCx`m6(1-** z3RHSW1XWZKQ`H_ZRbjgx*1ll#b6{nQXl`&ScgMCa6qmxdU_`)R>uVk_MANdR+h9|j%#-T&3OZwza1ziml&j78!;Owg~X~ZtoWsbfPGWAWUd?)FavYNqMW+~ zIKMWud|KW^1ne6bQ&((03@c|=6L`~ z31rwx5W6S(mh+V>+@B~pGmA4gf-Wuq>*77q#rcHY1w>xmQ11MGIGK$p}DS=I$Mu6JlCm*#Gs?LUD66gy%VBEl@7# zIsNRpsNjMF=zDweYBxy?+uBXr zg^6hG5X}7BN9PEOvz1)dz9?UBaSdH`L|e{h|d+Oa~+|b}`NIUD)V}y}XcWy0&(E3~b9dEr@HYS~gSH zZ#MyhcL|F$d&y?45aP;kN^SI@4g$J1DOkM!^+oEwteCS3WTAZj&>M?sSl_m)Jq0%z z;_D!|2@z7L#Xs`qVm4=7i{?#Kwg7E3W=KaB+I;AZrOpnK7?8#ILy~5&RsR$~^nth= zk$y+Y=6ZE%$pGMBM2GaQ(!6{){g);>t2_q8LvaEVNt9D+A^#MlQ@ZA?L4?zn^OtVX z`9GjXl{;WW2Ni8yxNh=ha0FKtlwQt2 z6lFj#?&GQOsz3;_Kv{CyIH-2C!zAAGecs<=b zYd@kiCtT)gOY<&#C0!aSALoC$(g*5thAOTRlv+5&UPY6h;VVxAHrjC6y2DJ_e9eGO z0kA~F#P-O@bh+qQ3N#$>y?N1uDy9bAe=w?TGb(}3xQ~~1Xf84L}%gVv_mva@H zMy>!}rytx?0SjWQz%>2)m0H>w($yTXXIH{WyQkh=s(JBl6E}#skU|-~gRFJSrh1BM zrZ6kJiy?(R8`8lb4r^H7D#D2@1RvwR!njcVRy_@<3ie=e5LdFV80x7DHWCsk1DL)0 z)mpc7%@#)RHNpkqLi)#xK0tYYVYqNIY>hAn*!4dxJNdWnmJEc6bNd5JacWMQ3AjL*BJl~PHy^9%?@r> zDAtc2+)hu@K@tH{5@4}#k_`#5(FS0DestPE4Z;Td1{HUlblkSnuT5~fU3Nl^0veoV zL;<_Xy?-gdyKQjSi3?X1*>QgaOCUFDR{?2AdDEe)x!b&T2jBbJ5}ng&Q{lV#TgO*3 zRM{VzxJ2BVOVUnFu0_7So4+|+<@K{szJ`UAOI5Bd)Yzwv@A_1h=a2>Z5}R<7NqF@oJ?96%fv zX?tn~kX;}^|96k;xYOq%tl(@w z4Q08wuoo72Lm7n@C>YxmZChmTA{Yoq?$Mv6Y~(g#t^7=i{gQuL04e!HxCjP{rl!K+ zQtl3RR$6EAQen)+SgZt8N|DiF1H_?ixsXn$vhR!S8d}K}+@=Mls*(|OSp}?S89SwI zVruAixhu3ou~n>P@SKLoQ0m>xE1Y4IxEYGkur4Q0Ih8Q7!Nt!1AM@XgolB@E@6C9V zw8G{v`_Z}4WL7J?@X^uT1mndsd4Wj#->-7mMZZ0zPPy% zX9TuJ+>7*p7)LN*kaz&YF>b$ZIu@EYFFD!i^S!SwOu#6-a3Twa6Nc+E0UHP`))=kO z;y*fLAiXBc8W?~|1`o^^>T~;Z^Mu9NR>bM@-`#53xgVS{fVT@^08<2wCnQ3Ki*W0< z1`Tu<*PHvxlk=eBowc#=U#TabIHntfRrSEc!xI-5!WNL82l4|j`UqT?x;X^mBW4V) zL9k+wOaRb$;p3HV>VgemuQZn+^3VYk;S}JH{y8;(Ck zd#Tg~+;(vVBEQT*P4En1@8Aj@R$b*fRyBtVfX2TyDAR;kppJTi5>gn|-CFTMBRkS? zVWU135QccHUz|6XZhm-<2Il7r000Jp;(u`J0A+yykRc9>z5Sy0R_49f9L+A;&Mz()V3vFvA_HIPZXWZL8BdoipPeYoK$!n5xrNf=Tuuy@#n+_e*!dJI){Y50g$w=XnbA-8a79}a zjSo{Y>fr>R%j{Ox4F296!Dj{5p@>~g3yZ?uE-+w`NOcy#?gECh!v=}@F_y~vFAKfk zTfzXMHm9Q;FeJ{!Q5tcvl-ba0;!JnQm@6%WjxoG#3u+isd5j*1HcZ1R*!~1mIZi5~ zoVH;Lz>jR4-5~Z-7>s%M(q6%n<*s$>62q=STkHPpx(^-x^8|T?T zqDFu*&eukTa5)f06xGP94&6WdnYWWx2CM3rZOKowrj?n1Qa5N zUW;Z;ow#@S?w4y-^_d#Nl<9wy;+My*KHM*-Zay^9w{M(z0 zbr^p>cO8v@fa#&V1&Fqy1wj<^tJ)2|WYWGc+|p0{^`m+#0J-MOK{&PNHg4IW!Q{A4 zw~o!#?e_RPOC4N<^}-0*xWvz+_w1sntZ)J`ALU_r6PIRp*Q!N{Cw@^UKy?)j=+&Ab zYjDuW&U)!3$5m?#7?>9baKaV#ko@Z{fA2A{y#T5q0=72G7%EZPeESk?kTC>t)ZaWj zOMt~j_s&;q7^?I*oq3J`d$2}wAAaoZC7RJ9z`!tWJ==B8;k|gJxEufa)O>(E^9tw> zoIpKW+7AhoZ-2JdA+`#_$jC`KqNa+jJf$CNxdqHl_;h8Q5jOw#9@s%#zE$+w$L6?Q z&3}mBuHCpzB|Y%2+{a1%8H^ud&ThSAgi2)`w@){QTlDtl=Z6C|-WYxJn7%6euvpxa z$BgbSOlU{OK@P;y;bfqV(AKS6I{{R_d|~s6e-={(_n%5px4&pAWvfhP2b6*po@tZA%m$`y=Pp~%iEZPiTk z#*BV3%?(kpp9|6&6-Fw*#^R*R9Y|RmSAbBNeF|-z1pTsjo(xn`HWp%`47Ek3ByYNa zU<}7(AXD#`6vdN^FB?LI2DWkHL9+kYkJ$wDh+G8GdD~E8Nv-EX!rwIh9L3yxh7p|g ztABn3LFtsK%QpbNxHgaSM#@2jt(Dg1c59+|Kg!07RXl>F^buFA02!+sfK7Tv+GH79 z82TVC8W}AUS#Ouw%dB=p1$Pc*fzOm}Pb*1r3U_d}79^ISForYcA_9#xLvXje=U)+ef^7mC`?lT9doPdA;_cs9nR|}JXTzwyhM8#;_i;k&A z0$wNAu&^rP&Re811duS8Ub|7tg-3U8-;BR?e2ua&NcfB3a-`-!us1Z4z<6AH&LCwH zux9^v!Xn0X&xjpA{&Lp*}Z>zhieD-5jUCq00=?%zFaGy4uQkJ6T^pK z^3azIfyUkXx7B0)HQn0~*e$5Gm-UFN2cak+w5z~yA@(b^Jq5Ezbk1SD)g|@(hbv-F zQCbf9(&MX@xf=h`a!O<^#e)Y>mIu)2*R2ix;mO$=@NVtjycsi;x931@Ug~`7BXiu& zhIHtuW80>5#YqE%)!4#__d*~uTzyCwJ#*0}^67mBYK+*(>UIvN4IwkoM;O310;-^k zh0~hI*VjV8D*yssFx+q*Lj4;I+V3BmYkStrt<1EaxWo<`*+~Q6-7dx{l=2baF6^Ca zE@%^?tM5)*r$88tp}1?ExOY{B9qEb?w}n(j!eVMeUww+Wi5J(a4pyW2ApeKr`Ic>3 z2lv6Wwfw=1)wE-WUq#RszyA7A21ANdm|(ZUY|ysv+_r`L<%NTJlQ3{l@yBV&e4&SH z`RBr*Z4p5Dg@A1cxqdNkqaGYsx@wyPcsyHNu77!YJ|r-xa{iC%U&S~z`DbCr8p^KG z{0BP=y(_rU7YNvbT*iA}t)`D=tXD;ONQ=N74&hmAPsGx}l?_k{7VG-+d_rX~Rb9Gt z*|=)es^tEYf6auxYPogm)~fpYdWFR1{hF81m|vQ!K) z;j3XJa}EBF#U{G-$ZOk#R^-rS=1Q?e-H!2wCui%pv*%G`HZB7`>Eq1BR5YNJ#k=Hy zrTD633OqO~x)9mlo6AhQyhB{pUDys~&$M#+0>$4004V~7c)!qcDZa`-Kd+lh#@p@_ z+sg8g1%N~m&=g{syzwnH0v#n|vm(Iu&tqjIAs!0Bx_^0UuAY1n7KP!~J84XJO`U=hU1IwkQqXt?%ahX`s+#go&l*gf+BH|B zjfA-X2`7#1p|MXV%J(5QxlMrAUC%Fc!b}ywEP{v;yp5D6NKpe_DyWMiSu@xTD2RiB z`|YE1oX7(2Ajfx^Zh9n{~STM)R#qU#hXSh}=pM)$n3umG;@b*i|X+KCGjZlV9a zx=0z5d>lYe2|y7puiNDrn~-chQK)*7Z;pT@1TrINANd7GRkwBfjp(4V5&#CD&Dr3F z_HM)P2b>o(XY|i-q;vN7M09j8~M8b%n*0)jz;qz zfDH5QHy01nkJ_|p(`)nQ%{cuBP}R^Rl%}+0%a&$4cI;^Ot6%-qI$V6MOzX$hG z>d4OYkF5E998?5UMi|60_&Oz*4pU~2+1V;xV9NqPGHC)ccCKI?veDpg?9%WFrAz2E zA4HLXsOVUxV*96-G;flZLtqQo_kG~Z(-ewgIUPAwIF11h{owo4CSoAdVq2#+WS7^I zC^fu!xnh61lCv@8K@{#E`p){4$`$Qr8-yG*xFW`&$npk2#o0Y8z-%L+n(E-=O}} z)(T%VV@R`gNyWe@0ymEF0I|%m3}J!ri&Q1EWhh?nlja;ZZu$m4QLA7h+vt$N{Jxeq%AM z-sn>=0T@BwX}5lD8OdyiRaYS}oyCBKq2{0&({=r_%+fv=!#6 zqqwZ#hPvnFMZ%b^bx=PCsKQA@R0jf!7l=#p!HJ6?5~;!8?@V6nx^!s9;{=o;t_G*> z?tH!$Vvp>?TsDdpIqi0(gtl%WIrrrG z>s94{_L6#J58&Mfw9`b@feB-{t1mmTpL=BD5?Z=;Tci0e?r*;Gs^nGu{bJofXs%Py= zCCbUO49pmyNI}=BjgtZO*SZW4`9_azPq_|QG+4nPlSV&k8-P*tAe!T~X80m&Vj$0A zAu@1~%x(1cI%8lm_Zw%szW{+VR?u*pZSoC#x`ILX7ju+!h@&YV)iDoUETQdi!yjop z7@HACaddCSe$I?!D0CS1CWnv~i{#?VlNrZJrB|11kVlYMm{^>-9-aTwZV`n+W2~LU zccDTjCP#o5rr8bq5x8CY{!TC z;i8kT#2ll48i7Izt3>LHoUKWSE%Z`WD6+8>Iy@(bqT4Nww?a=lE_Qu_O$D?WT9PYR zEn~{k_Bl4Q{WMo_n04{HU_Ul*Z*cXS8;~cD;TpU7;aNBZr~v0b6BfITn|E-JPR(T} z-ASMJ?c@8o7R{Lv=hQ@Y<6xlR25Q=*q)Z4zE|IQe;mWOPlPk}^P>eiI0pdj5O%Kh{ zB(&F^Gg#e+A534z-xMYQhD_Wr?#}TGc#VLHc>CHywT}oGU8D>b$6eNW!uH@)9Qx}IPt1nfh>zIQr{F=b zvoJV3Tk58HK;?f(ry~E{U;$`{?b(STo$%$H^#WoyDp0}v2FOHu72F>uHgQ^Q^``A? zcFo5GI@RF1^tftwuK+)teslD30l{O=!|Q^5@SSKHQ2l!2P?X&p^lxB;nvR7VX#;Q-E>ifD9Kx=)xv zxQYFu6K0J3MC{+F0d46|kI!>c=5A;-|G#}ge*sn-ke)~@G^$@aci0}C`518{&lHz9 zw7MpKUdQuR)KlgBFUgqy&Pn|U0<6fHxTtP(Vg4h14@7eXtkR0L+jNrdKA?(E6cG8f z1AEXXGuCN8_;FXR7+d)oB$0p+~@QOS3&OYQ}= z%%xzgiWRZ;a77W#%%xTUrMb~_ai<%tRoK#7^OU3fdmby4z*f#?gg~Y6{cxicTNBHb z_jzoMJdVif9wALB1Weg;{i!rx4FgA3|D2JGjY}0S5z4_!5%gwmvtq$12UO{#nE_XS zt*V8WDaHR7xXZ>5F=hRl*O@X8EDiOA*wNE!63~#t#V#E_13Pb2cZ*x+mT+l6>*m`TZ+L zOKOrZ_w2ex{f?U*vriYOaBKY2*}_!Z_v%8g*(0Bg9@3sq9NXP35MToV&1K>;0pl@R z+$C@UHE-I)U2$?h{`LJcRT2Tl4Gh()4cl}lj-<(u0+>91Bken+J&na_wyNgtWdU5D z%v!7U09%4slSAd-Rxy-_x4KV&+|0!rZ4~H~JM++TUqeYJ`Y7S|F~u@M_) z-?TLoB9d2~(vR+yaxGfDr8ut$(hM!=>qk{1jz&)v{_CaMLYIU2gQgOaP{SQK{-YIz z@i0^qvL?)4ALO$x!lvJ*(WXzHRsz0XqoR$9NECjsEk>!q94d`K#&H+Ff*X zZ*lX^*C6)7R0(4c`e%O;Ff08R?Z3Ej-4MC|5ducr34;mg2XVW(eD0zoV~2LsoPzhg zwvb-x0GMF+D(62~H-J&JI{+nc z>>(sOaKg}oJu1w90qUB|5+_6mvOI7ojTR`@85sRr=Nbhvnl*$E#%<>F0KyoO85jD8+6*{5rwFToqNnC>IgCCo=7EhvB+ zml@N@dT>~6lYz5hM<&Ku>`Yj2T>>Khd7SOC4V(${z~P?d+%Wm#LkJD^PxVeIb__Ua z5OZ+jgzHieE5~Nz3PVRRo-MLi7GssW7A%OFg6k<`@{*l%DJVL&4yUCqGa#|yje)Dw zPO{T|flA>}h6FG5ZpN znDv$aax}>HUiiDPX$U{$>IgQ%D49Ah2Sl9T7oJrygFam&=;;4+jC@d_8pl3fU zie<9WSb2>Kbpc?7F`edU9DJOO>sUSta|o*CkU>CD@ndf-E{Gt`5F;uqf+h-HFAT+> zo|>y_<9Iw-N?t6JlL7 zb&0*;8i7Owg6 z2k8c!7W;TcxUZ+=B6E4(5xwd2IU5jTq-_OIA%8RS6N+)>%TBBjFw{g(vmvN{%a(@F z{(h{Vux~d89v7o3WkO%cBb~q!IQCZE&?5wm9JQr#N1g|7-*~1xk`OOm26`KWFh`1V^(7EGv=)F zo=la%f?_#x1@rhWXCXNOL`2}{41^hA$p%}Yv+_Q)0Q5#R4nHe&qXH<1itCvM*e=_Q z4Onp_mWm=fmY!kwD6(|1G#Sh02admkl_T_Tz)ICW4%iMZY z?1Q}N%u&D;zaJNnLU}9M_5|Dt?G`~?nq?8VRn{$^Th8SywJj=T!NL%RsOBJ2;8(2-_i!e@0zU&9cggnBphexL)?SwO;Pvbz@7 z5J59&gSftMjC_lpobroi*AC73$7c-kjJ)hFVPFAJ1iWY+dvQjl`B7*3qFLtGCe7U0Htf9hHd21fxPz}dS? zD|+P3B@`9WZM~3oK>aswY0#5=NW%kds98(uHQyir)+OSSY$_}dn25aJ)p7{3JOA)r z3Puowef#(Ys+kq`SlmQhLx`h-TD&kx^mlwNKp?QrkY1pZ#&lEZ0Mr+8SOQuj3EQb% zGYDuhSQ6ahkvEsBCX@B7fCl%Iv%H$TrJ%v9zc6F_NImdOXjwh{=2CTa=3^bh;DF&B z>BRlIG5Y?~IcT>v8V`gxxsk#IAzcyj8b0*K5;uL}24z(8Q3Y{Q)E#M9yoV$1l=L|O zXAoz7_>HAnr)z{UDm6hYUMtN7*s*O3xQd;CWGz#RW=%91H3H^w5)>(oo_T+nFjQ+Y z`|oWyPWpZS^!_Sy@tcQd(~8yG#0A<;mDs_!Or!4!#Kax4TPF?L?<7DG)&A|HvsKe8pZ{Q9!B8Tl zlC@1f|BisT-(hcGz& zIv0=jnRGw^gOqkl6)A2wp;1ncGWIMLuIS3C0BRYT5ldMr`F6L#n?aEnrqhAc`f*$Otw-MTH%P%f<#1*%Inm#T?efIy$37U8*~-gHeRrOpHPp%}ghZ z?M_2`x6y>VtH0PzkBL!k5L*w{k$wMBEgg*j+#t37@Cfjv~W3u^Rt z3ljuD6?$6R{2RyiSF5Iu_bhoAcvqQSaI{_&7l+4 zL$$1sgAPKJI5BL)u0xwo2MHwY+gM^C-KoDLq<2~r6>QQV(! zZ-N2r*0DJsyKgu8+cOKqUAvw38QekKaD5mtUl43vvuP*8T{&J{W)QJF^}xXjrr)2o zR<*PC8rZ?LY0-o|pz;f=iv!;=*hwTJ1`B25{7vaILLRwy7ltq@K*_RITlKMUpM5%Wy+hpuwCHpKqa?tK zSFGKxryX${Xmp)%NKZYT>4VXW^S@8GmVB)M^;;g9?fW#F{{ZWVO9LoETfHWm44ewY z8~~sP)7!6m8@JD}PW0~=Ysq64F3f+puGend2_WBi{)gY8Q?+^XX0q|h;e*Dx|1SKB z8g0z2!N_reCU0~_qI3Vp%in|2q$%vU3kD%|lQ+f@U{ets*lqL2r1W@#28S@pNY@P(IrWFyLdOGwvQ`@i~}9jCvOcGmxX zCBP7qRY$;M%&A>xs_Dr+XJao|r$zvTh$53^T3*Qo<@?A6g^icIx2#<`w2h1Hl(%2r zkH$O^CHHgD>>AKAK8La~V?b2vT{c~WG(Ym@bVL=gYN<{0c^w%@SK06tah2B2;bsO* zsp6I9s4-^o&Ggj(eIuN*zKKIM0k7~Cj{cSGDR~=n1os)xjSNU^kwRhErP12>z6tEa z-#tD_fX;~Xu+em}$c^vE*(NAV6>dECS=}T5d|{#6v~`CrgV=$K8%cAsoxFcfclV16 zXl?yY&c_APbQ~rwHw38TR1@^15airUTy+3i&;UYw$v6Q8V4}Loj{YVw{!4=KL*cr& zZ{dD$`T!oC;*3V+mWgDDjzx_I9h*ZQ~&V@ZOxVTA7y~;x3!9xLyr1 zm=;J5ELypl{`TzrV8DE%fhoA)s6Gr9Zo;RllzB=_3uzjaZ;RUxX-Z&N^D&CHle+O` zCsfmm0<^%Iz-9Q_7prJiIO(`s|MqVG;T^Q?zY2n-`S?9W>)uM-lq5i{&MjD3pA8On z=O59V!6G4T$rJA^4{31HI(xy9ebo4iYZa#v)kW&N*oUJ4l!!~vy)|Vu7dHx|BA{PC zO2ti`Fo-&Tae5C-90ICm3#*7zXh@%c;$`(BN?o!QHs7ZhYWbQk( zqZ44v0*aOWD+#NGLkuV#!$ z30wBolsf5~*6Jz+U{kL?72Wh;7vb{#_sa{_wU^gj$U*w1FsA^L(5kB6vJ*+ZHK!p? z`AwO>k&YhSRYCW}&sH^>|568cnt=81JMeH2n)XT|<|(+Xod3PMwkG5pL`>p}wOcD@V^UOa)22;t0aYtqntT0Eyb8OUP?M}(nYjP1PFw0GxooF;L?T2nDF?Lp? zicN~mXDapyr?|gzoUYl1hph7D&>lgK-`^@N#;M%aU!i?$_n(Gu0#kW+#Bu9Fvs$E7 zIUqgjkO*@*{m1HOOmhx?;xEO;-&)-Ffumx%i>!R8Y*+%q=&W1??K>RnX}u9aU_9kl zAn^>)g)jRC*YDxPk+?`$K$WmXE$Os_dcfsD=N{f0LE*gCt6ImSA^6U6*}Ws@TXS)f zEn2mO5rF=+1G>Wn#dkixfCdQ&x?)^^0TnHfh?oBK)I4=h#lDl`LJ=K1eXu0|cyX!f z9UU{eE5GtdoeDDwprh8!OAHn7+r;=IN80Ce*0UHbhwBi$4KN2+&ujr!KN1(?q#43g zh(X`JV5Ua2Y{xRA5(r6fpDsZEXY43BL<-2G?n=~C-l=N3E<%lRn6((ksTGh z%00P7^QNv#yJn2%*KciLNK!yOe8KX~4hrqB4v;C z3IG1_xmv!n59zIOZXeEAr>?nnt(s`^Y{(Blz5=-z-=DUQo_=qswB-&b07*|8Le`+f z-85g|yk(o?yny2Q_fG9kxc|y^+a1)!p-w+;ziui#iWo4A^0z0iA*3wYP`@M08o!x1 za8xHgVvo+kuCB&uLT3in=G>_QHW4rO+UKj>XS3I9qs~}VPaVY#2v+ph7Y^0fvj0q2 zr0!cC(b@bTw|{qy4O}8%i7Vzm+>@st+>5tC@KoHFi^4UVww945iILvvdtV#iKAygg zh4rI3h>@GV4)Pv4z#uzu+40r%*Qe(>0aT6Vzc6<3y}(k%^-F(2?!VgF+Lq$}ON#2k zRN2cFj2Xw(rucjKjVJ?8LpXTgjLamjR^$;9x315B;PRf~P66sFm?8{`zu(i8EVlN8YW*d3Tipa>?`2 zWthUb3ecFrpbCb-su0`74gy3Q=aU#)ouaV_&nfhHXvdgxr(mSbKoiA2wsy|0N_~;s zXQ@spw#b(`8va6jUhx&+gtK91@0vbT>a}c_5DMxd04n77i)h5(DH?xD?N8Zh#?_ipRvXKV@k1XRxDkuLbB^hmNC{XGHv-u*J7-di>##|!|1n=-`Has zN+a`s&wna_j!4&pwsnP0q9W~8=x2Xfp{?Qv#ULd|MK(AuYb8iZOZ2l& zRpf|^_sVYSTOgDxfU;foeqOieF5K1K(-*Qe$k!6by}?!>IWd&J;YQnkL??BnU{@d8 zI4e8cfQYAgRa_sktEYdAuO%4TF~S@jEp9W!UC9R4_2|%C)6L+S2qp$VLn<63)E%vP z?V8fRUR>nfow`cLJp?hqKp;_Z`&P}UcI6g#-|LHM-qKB+_ayQZ0!%=76q;6T1!#$z zOkv-ko~;?NUH}q*6Q&}cNnpi}+_ST?33cLT0t*9IR9Yt(Zb`cM=xPu5-?DovJs|7(jK1S!XeTM*h?@5nu%xPHx<1K~1r54^r8Zm99R z!F}2=+UmG{ySWLIR`Mq@K5#M+r}MyS!S2mmT(64uV6axN-{FP}5ZzDuxlOBP?yl$O zGXmnF=XBTj1?nc_Yzm`tkTJMS03+h4R&P|7q%vJH4xN;pk*N6lrw+hLKlj+%OM;^y zjZJ_i+#e?>?|W?#WlO)l5F-T*vG=}OtKbiT>YvKJKAN$X>%=t+c?l@R3j?;x`HyjT z+CjaLx=F=l^ZAdE4FE%Ef&uKojk~wFNcWWIbnDc@z5mr3?%b}K9@dyvAzX@Q00duh zd^P{!TO;&66aO4BV#Ky-)22n?u*Q-K7kot(CN*0u(#yFFL^&fg;x;Y6(HZg!%mku{jra6_nEF(zE+LdDYQ=C;%bv$ht zlDm?qK$ZnyTDE6p)4Bj;!aJS?tC*Iq5+)Nx1Ys*}wt+INkq{xpHY_qaC3a?b)%VJ6YHx8KZ7w z|07@e?jjl~K^fRjVUGfyR>4AdatIks4azKiUAU_QuFmDp{Jrn3ds z)V0%s>x&ta82fs&%NGB{H<`6&8#=zE{yDx9Ou2nE$8WH40M(P5DbCY zE;ruJ9usUn=TGBE=a4I6&NK|dZ&87rV)8Whqt6f+9H2L02%<1<_-z=|7xa=u)pTe1;SY;%qaSEcnNtqAEli%NH)0-V8D`#k~n zFxDvbL0->n4;dd7>RK`c$*xU{5?^{;4ZZ&PDr(cBsT07#|9ZK$P%gy3fW10c+-N^J zdk{nnkvoqM79fKJ!(fdNqtu~Ya|TGk?FaU3P4~UJSloEsAtb87)Che4nz;2~yr7T{ zb?y*9ueI+Wt|_>bpvDbm3#niL_`Z2;U$}x8?jV3Cq{)Fx>D_5-v_6{!KuoLM$&|Eg%d+m`Co_g?@G4Oz3T~xQ7(z9lvjP0vJJ=5$|*V#KlyY zz*0a2qhEdM04MiXci{6MEJvbfMqWE4W!`gOTmI?UgBb2aNHg5`+7eg4r6KDoLf$+* zQHWDvcfBxQPdwT{MmfGGEKIF@4rb^dFD}s2iebz+1Y4tR5DdM?fVTAb+so;luU7H4 zogM&mZrg%zS`Q2r6wxbVcoFjirE>(tV>pQWlaUt?_yMk2q!B{U{FCDP1#mrFT%BOk zkW72$&N2(AP^EDNg86~0Fl52Vw3YtBX*vPr&^LotmFDq7f@|n>z5Uf{Df61VTx{e1 z>Qnpk2jWHqL;At=HR>i5RtyIq7#d_XJz7CUUIk_`o&XLZ?@=dAR*R-h+%;zn!eDh2BZVX<1W?RTJz=O z`q9d@+cgeN09#@HgYh~<#^oQLm`l5w|6tIdb@j9VOxHsKU=xvoXNL^Z)xr>u9o9(| z?VoyYx%<_HL-l*tUw{3dgt^jKm2extcANssH}nN{)vHE@J7JVE=2vf(FtL* z@A21UzXWFYMGKJ#XI&`QpNdy5uO!lm(-^+zrAM4U;#nVSo`)rcXs&*tSx- zj|XFMX^WpxVIo-P7yfpEcB9a7EsWp4f~;w>ObQsf<))@=|{UCNumUiEdYHw+x+9 zk&&zf3NE_D()jg_LliMvK%y3-m$@&q*f1CSku#X*Q|B1C3Ypoh_u?Ys+sSZ>)t_80 zu@dKhoV$iZ{ido&)f8NO2J)<)Vg99_wBbpV0^>7qMh0e$p&&}DBw1Hx&oZoQot3*I zi1Km7_LbPBu}qX&w(_;hPhG@~1$Q3D%I%7|3U#BLEhSyh5s>}g35ztB8{&}ax9!xe z;h13^8NudXidzWcjh)*ycbhivV2EVmg>)z1KE9gne|@ROtbm0=Fgc$5k}yQbO(#Id z30PqS4j(Y8Gc|~z2Dtjulk+q^N}zz0E&1COyHnk|t<ni~4I&QV4HM6~5GgH7x9A<_l4X1$y zn?h1<)4ulgmETLsj48Ki(_n)QGc!1BW>_(h*8bnb5d+s3-gPI8OTVh}p)FA%0LD-X7 zOX6ucfWud3Zcr8{OVeT=37-#DV2Pl5O@Sca0mFtwnqanINRg`vuG8y8)`$`F?BS=+ z7)R@beF3ohwTwaQ_O_(&LEUU$Ja0UsEmOwF(~R-NUmQgMJ|vm^w;1L37H#roQYU=h z9s&r@880rsC2*MDTf z_UD?3>NaY43|xLl{0i6fTXQ$zdEqEwj>gFtgW*ED2?XGyNc1}kHoAEqt9Sg504^k4 zjRm}``i~;i2pq?pMouYg5~c`vgiCa*%-wh8ehA!0;QbG7nHv_ZYOU!1D4BO3K5-<# zR@f->vR?lukLk@K8~VxZ^Ax0-{*NBqou`PdAU+Hr4sK)w_=iW%GF{e`3Sg?*x&M0h z?Ag2Isd_gW;979ZRCXT}g2Xh4cDWt+APZ`^jPW$exj7LTf>J}dS-`)6#uTG;)I;rAQ9{k@u2&`{LC* z=%#1ahMS&VorU_~|L&PT$LseGuAtvNn6l|gdmj4VJ=lM4uf0C^mc|==TDtGmb#&SBgXt63&L#_1K6W zNd0-^lPl<(7mjV$-uqrzL)YHFl>YqrJ?P|by_M&~m_gm?FIUNX-+ntAZP{6dN58u- z*WcsW_tw*uzn(#}|8fNF{)v~e;lgXypYh&{+OEgGzrWn0d;Z>U?psX1yKf2kGzb`r z|GjuDf9S;FdJWtfzqxm@8XHj_`r8-x(mXbJVNt*GSMTZK23`2+6}!=KQyS@{ufL|p zy3^zcA39+e|L>&}=-ltULGLbTp`Ts3hwRV>$aSyEb!{1VTz=wkxo)Cd_hvweiaWox zKVNh6Yx3 zJSzHc`zWGN=a#Dv059k)yAOf~dwIK%c$>5hN&isZfK+4ZvJInh3afxKsxajCcyb`g zyr{%wJxSk2A8KVUlrHbkCCB7lbzCR=VDP%yIx66zdjEV4+bT*_7JZypI`62Vni%uK zV~5j!|9P60906l>$%!Kw0O%HRm&lG?6CWNUpa}KJ5;o)ky}E`k2*Ysojk7c(I9xC| zwe_m74XD$H7%9vnByNP83?*&g+QTWl?K^6EG=0)YS-WJd8-`P9OSWhNP!w`TQcuKR z34<19F4@eVKWnUjvF+*>T)AOK5GI2ke-m}*Hj2Kr(U;GkK({`1| z1*Qlm-WILcS^@bV6So@DPT=$%;=pEV3|Ed@Wn_zgaoUD}{9ncO&8Z$jP}w~E`f5G) zUuIR5P&aW?e&L*0ZxP@K2M6FTeQ(ibFjNWx5qJ(@xLH6jPIV&q9AkrdfI|rv96d~! zwM812XH137N7QOO|Cr$#OLVrZG4~0$nYXMpygfgHAH-uFr!3F>z*RO}U*{b)T+?-+ z(DC%eo65{*6z}Hn-yfX7`;O})?IEqb2Ox_!0=VN|2n;2D*AxwDF}`%}1iIt-(<1A0?l{Di1Q(y+U0}kR2|_)3avy+~0Hws+qX%{2GY=k68kH8GOOI{j zO>)iWP8%w~W_i%KBE7z=0HC+^ntjLips!yrl8@fAH+||43-liN{IqLk(&9DS9m9}! z|9sjtGqkU`|CmAD4$eThYNo;Ta^jdm|^bUvy+0WAKbpABCN@ueM6r={r3mbssA@EEL^o!H@HVn?x&z6 zyZMs42Jgj*)*#e(H|}}<3lWvp%IPzCpL(A6y#5Xl_VUm6r(u`BL^iA&Q=5+7s}Dan zZIfodoiesJedu@+s(qzC@61D*=sBT(Z+LQ*0IVkd{%wl{_{iT+MG*SPclM?4{cBNp z?!67Fwxgvj3U;^<37A(I0EIY4i=}_NfAVFW4**bH50=U!n@q1^+ar4igJ(`iD#&%;Kx8_v1E03(|-U#I>wG=GxSS=2|>CUZ}`j(#( zH;K6+lwEw(jwK7l;T|#=GB}7BE0y zqhMIiJ!&{V^xCTMdMYI|WgK?YO&Tu}+@r+J!m^v!VE3`&Hfxag9uflqHUW=8wsjPb z{ptmiG?00@xL$64s+p#WJLt&C12wrMfYz#Y+m#_gv;T14!Z2r93qSMDIstvX&>nHC zO`y5WTa+#M)!p;;^d1-n#6(?o!YD$rNR&WXymD&>lX+Ykh~f5wYX*!4P7R_S8#Xm4 zSM!Ne$I>8Ske;8uHm#i@jip$$Z993<%5CA4g9h_o#2vS5R|uYAgm}k_TMEJN2*O{x zaYrnZBd@;;%0*zvY0dqQ^xgW#7cqbNBV{sYg1tR`}Q9! zYzs4(9>j+M{6ypt?}0joGZ$}Bmzh~CE<^==@{F+pMp_tvD!YWu49jg0XZ5sz3IIWX zS(N-irf|f>$v7Zqmx2l8sKOd?q{#38F58`ujUMh*xK8gBP$7US&s9#_nE`#f@cGA# zpua!5h*qrKp_%b76*u7G)mxEgie?Hkw2uIyUkNi8XMckJ(zpF4_0hrzfaZff?@E$VSX(Pye)jwq*#jvJ|m0c5^b(N6jm zWsERhH;OwLwIx4y)>vL4fc~wy8~D{(83mZwT^Q~-{GZdrQu%I>MWI24ze3dsT-lG29ym{yzW zhR*Y}uDY=7+O!-cgKKMTk!hg5y*hzeqDzlypP3K(WidDfX+C$zk;c9`Y_~9nL8ydn~569X$#VO9FEz$pAPa5 zZeL19;w=>B=64UQpwFE?Oz-^l^M^B7A^{ySC@moA+qMj#$ye#Gqr&3Sy% zb;*tyh{F4|nnC^GM;H&f@u^h-h8;|s$r=|wJ8h!?&))hs7^!RTZ&vVu(>A#OzTWq>~Y^NHmdRNo_P(Y-INqR47R!13(6>jW$f zCY!8dg&M}h+OTD3MG*JCyqW-_?8GPNd%Pmx3+~d8u|;;dHbgLkkH7q<=}LK{bcnqg zm?|zv&fvxGU@X@G@ijNjq3gc1uYM{_89(#hdaV(cKnIoDgu0=Ln?o-5$w79M;s-0c zI6uCm4XX^EYh(sUnVd?@mTE2sf4N^-BXboO!Vo7s+k%}pv}7NJ)M$_A0#P--Df3L$ zpyd9}hK{MQaccFsEW|~=Q5bpA@?%P53@KTAgMFnsROCThb*0pUNqS1^zL!>LdIYcq z*x7&KoN;{0frIG}_b$wU3a&5!d4M5xUt~E&(LXYErLaq(!<7f^QmS?1e?&Dgr5 zO#^V(x9(Io6<8l}Bhuk}4d7qgIgf6CX1SiY!ihJe1sF1*n`ZIG3r4Y3fF244!*zzE z@HlNKEGf5aZG$^5VD3LBECQGm^a)8B4-|uJGDSQVf~Em-P&Ne_u77|3Lc;O)$)j<~ zt}88FyN$N*4B>|#+d~-sA#eeyP?3Y_(`Sz1dtO>8uE-tHPG(N{K205$mjP9Y+0 ze{MPX*)djJLnjE}5?RV-Ze6(Ukwr97+S*9$dk&OMSy#IM<(0v+J0aac+-hJ18HIu~(Bd*T;Fbcj z2S62FcC3j#O-5iQ0Yu>ni|Gw^1(bXF=HF)sfNfP!(MP~-qiodr2&-p~BRpR~FN5W| z@8uO5_z%H7^xA4+`4>H>o8`QS0bc!IcRaas{>(jQ*2C*u?;025-scJ4Bp zn@`j#phjv2oKQuMv}J3zAv3$Mt<$yrm}}k-Y(I1>o?Iae8C<84QBpAvrHGYk9OiU&G zBDN;F8X9aN%c&43i%SQlAuclay|#gVeECTF{X>xr`NsLf1w1WCH%Hq9Xie@-?=0M^ z?zeXqwF=wPTiBM(lninXnZWe`G|x@nEUZsoxC8a`PYb)Xu~h>WSzLqS*4kmQEo>*@ z+|ERQ8Pn87p0_1k7f+($cL64R#=!%0;)+X>fAGwjG+uChMK|JxmbL_}SiuWLJEQJ6 zFjpC{1j@kA^bw5HH$OOvLV`+QsmLZu>hCu%9Gyq<+WVISJml}<^UIDKtggH0d#4<4 zb)NvhZ(TS>-IJG{FoeGUuf@uIO%X7Kwqb(5BW|v;vo71NBBEM_R={`Q9<;qZ7C9;t zg=}0>kQ`g*m3W}IM&g=pT{M=`geuX{TrB8SXOF=`pr8CxTzZQlYo%WXFnn7S8-30o zK9y*hGPW1Tg))w9ymv#8>xC_9%*}jT+;%uh4fX&F4p^!i9&09mHF9np1jU|x7y!6H zN58UBcNKPZ2Y>$TF&YevoG4^_&~(${f=lkVnop+@=r{K)6i_sUPWi@*;2j*+SN1k*#YGL^Wik8!r>EtTqGZrEDF{CAp>h-^tTcQhw z-8>k3UEKwiO(Erzp-Ct~xBZk1OM%UlU#6B+1t!5Zezw%OlYSnusDJSBp9gu4t~|o5XkOfx2=%(Zf(q)s3b^R7n7uu98iMfs~1kxJU?JBaMT_r!=8G3 zZNQQ4U*A2C)@~k&`Bfdrl*?2lGQneC$|u;q0@w^K#bCXyY*8ev_{;A$jyTU z<|D`wr9^ac~jB zu%Zs#tdx+sOc(IfUa(T3V=GZt;m0ogV;5Oejh_m2^lq7`Lu z!Y}Wfo4CX%?d}2;!Nh?HfgAMach1w`dARnF#r^|F4`s*>-b5iaG-yAwk@6ZU{W?p7 z`ZsDHA9!VTu;E2J_88rpPuhQ=xFqLNl|74#H*$wf9M((RwF?{*8rO3ChI)>pq+P$h zdwvoPr8PwEE{o$y`!#7Eu3Mj4rsDw+@cNt$TB{CM?mf0I-ymQHb7D3kj#!OEcH=VkB!7P=Z9N-36FT91%|jBG4T*6n}Et97YM5U){Y> z!zxB>Vl;KaK7Q3b--fzWvWxnwkRh<=A~D>8VN_Zot?c zGo_Ic*VmE$AFx|LMse}CgpIrI;YIBAUqGnHzK_mT6zCQ}h=6x>MdKtYY6YHt=wQSP zh8L!-?NI-bob&~0$Ml7p+v|UN2}`9T0&)s^n?Y53KxGY2gQpKlnVM~hC5z-{DjBgU zE{Ij(mU)z?Qw)esC?_q5aia+(s6}@~wm$V7L?;GA-*vk0(c>zwr9kI`>4tG+Qj{u4s_`Z1cb_G@5VB0{NmS;+n;?aBjhVK*_ z*Re}UAn?C)C_DN;erA%q*O@R0-+%RcD&q~Zs4QNyLyar?XZNp)E&^NpDefp?J+|kE z0JMxD4@zWFSh>v$oXk!5r_b%CE=RQc@GredIrVb{&I*_WWGF)@Obpy`EWnV?JY=B$ z{_M03L>^!#(kRtyWWQAU7 z=dBD^TzWq}BQgN})$K+W;GWuTw%A}B=ei?R^ILv@_TBaL`Lo7=@lrPG;HzFVP(^;) z-1Ew+AYh8+I&rx*GGdqjszSLPN5fZ39jdk08F~HY-}4oqeOQdE ztE!EIUQzaN$>LSzZ{RMP8_$>(u_-vSV#n5k;)Y8IiVVXfOcTwYxmiluhm11wdYYCa z=RRTQ@k>lpl7ZPqN^P(a30dI5HQ!^j=ygQ4Xs`@e)bRoduz7o1xbn2ojFU~M>G$S5 zjW5xx-Y}vI)iqZ&+yF3OT3(;MQ8TOmUKj`gVT=N|=L&Fo>g{!?UB|BqOLO?1jatz5 z@I418&_e9reiQpLYTM!T6Ux~j`!?FQaAmWe!usgRqv*r~2B}-JtGGp8xObsGcm9f4 zs22w8+n4M{?=9FA#HEDdzv8NE4LE7``kam74RO(+P%*?I44kHB5EmA2-x;UJVS6-c zl1l_ALwD~NM&+!-hROT=PzO&>gEh#Paas^|1E=mV9^p$ zqhs=s_m9#H?kDWmL|^^Obj>JYgM*Cdh_S+HI4~l!h2i_|hxgDz(a2(sbP*qww!b!O zy#j(?-?PBYH$4d`hI?rE(*ui9dZol8C-3pFf!+8xab5jUT$Z6O?;u`aZw?R!>~9Y) zPKG$m$25h859+SDt&nsTrCpE$0BqJrWK4R2u@bj$U$He$JQ}l^qj)nw1yW_4d(=?I zp@BsLq!EW?ZO$x^JPt8dw>`5=%NCK-3-n7EJpRK~Q`AMg8Yv$vWHD`G06-BRhg@7g zzI`r(<;$~Du0}Y|xknD=du3c9SFoLE2eQc{#}~#8v44-hu|@$j@2u)SO4Pu;2~hUu zhZcjuj4OH4f7Ha>b5t+Q){gkPcZ5A0KfD(sE>+y=^wRVVNZ)|?yAJgq@nOherl%m8 z+UdX3?$FrS$m`av)4w~Lb`KgfD6C$+Iyk+~GtcibInz-U#dW!9I8UlFIfBtql|5Qq zH&e_8CVE3BHLSIe?HRib0p0idrf~G+K0Laq8{Pj}sWgpiMmKd;*6DcxTVsS7!gug@ zUm3Vft-I2qoyw``%xP1gAnu>Mmfio_hJe4BecSPSgXmceid*`e@(clp?K8G#?4y3C zLD%RpgS+xO3tQDjfyvruOiy*I;dQD2DKJytxL{NsA+T#V!aYbX@*;_rhk#3gY-J(+wUj{oB5}MsbB9-dKA|f0%P&sUf4pH z9XEuYc`sICzdx~8a1}oH-o`k}p;(OQq|2ug(<4KM8EEefPcB!>grOcgq&t7^^bwR- zH_CvVJT6GB%59f>m_<_o{q+lbR-n&);&y{;)lWMEy5imw*JYoiI5j7g28~zSZ+ssr z240ySfFWVGHf7+BXCe2>?7tnO_0yhxXT9vsccoUR(~Joa{Py1q__g00iG_l}aBVV1 zFj32pGvpa}>=vr8=wsO`<| z6s7@UBFA1upF-XJ;$$RpG3$AS&kRwbnsmWcLrH5Z%r3UW$$Cl)=LBrtwL-y*Mo@f@Psy8FJ{kxa%E-vPE;U(Gq!xe>M&sY8a zT_o|;BkjoOjwAH~uCy&k`yE!U%PXb?wwZ*W55W zY-rtOnyzC37ba3DAjQG|{B@e9WB{9m*fp@eeMMh;hzxKPA9<5DZ`qZ%9^#T@#0;T4 z%jyl=^U1A{^t8WhTF*avINkE}Qf#pEB)4si^o74BOyy5+pBFZ0w)~LhXky-n^x*%# zU?TnK*4ea8K%spTbK!UQEDS&W#ALXP!(Sg<`5iuW`dCJiQ>2sl@fDM4=Hksd4~4O094h$G2_xZd z)_RW{TXv8?vog3}xA3u(N3wv~u&d3&8-%?Q*Rn9HjQB7Be7L-ExZu@U>*(!yn{6#r zX7{86nlu*|4z8pnFYEt4kfvaconSL^T;Q@T z^R~{|``O(_ZWT$akKv|>Ph!kON|2a<1}DAEubZA(&6gh2q;XL9Pu*zBt=~tC)w2Sq zKKY0F`roJiuprzg!0WPO2j;fgUKJ-;e*EDv^!$vL0N~@6J!MRS-m;;rn`T_77*<{S)cqQ=gu<}lHy|AVC69^M!n`* z!6_Q0zz{ziNv_f8rdtQQ7hHk=bKQLU^XGOiJ{V^jo)a(y5Ov=xN+D~^5Zq>G9@+$O zD9xyO+|1eU$2B(zxO&%M<}t_nm@L@J-e`HE#9$i83guRwb$7$o5DMsVuM~%-s=yIA z0o;81lJVqHEkUS4k1vzHA=zN>%#gw5iCxXTFRi9j-&2P}L8sj3=O5pLkVTp+Zk@t5 zL1tikL9Z9zd@S(WX?b&1i>*Ca?kxg$daaRU-N^A$EYx2|UCX11jF-`P?!oB z9vmk}?jQ>luz7^{!BPNF2{583gek#^Gw9Se#ZV)53JErs#aN~QBZ*+=+n;TwJp`zH z=kncS8J#XMAp??+-uz@UvU)3>gCvtZ#I=chQpkH$UO^Kyj%@12KmOO;@b^cSD6jzF zS+!xC2J(MY7^rVwwi{f2dW!Mw1smAtO*{+kNt{GmuwpAc^!jRm0(L?aqdG`W0-}~4 z044wxUdRA{|0^prhDkiMT8tQpRT1|n*Cs&4^oi3)Yg`&!Q)cm_n>&st0>{PW7Gmmz zkZfOE`=rmBJQd?1Oj2}bXPX{)Q2%a>tl{_^xvLV0&U%THomjJwy*>gmqU>0rpeZFj z_Wn@_c;{c~BcL(>MDf3bVFOUF*MDpd5MTGt$CiX^Zk(mn z2KE@$H(c|f-T3_n4i1Rl1DM4|Vco`^?et&fVn7UT{R@HWn8ls*43!R5PX7hJHWHbi zpIq%7=Cl;0WzMamd7q>*tgbwI*SKK|(Qn9R^h0@0y4p+tUT{~vyLfAW-=31o%0%_` z3r5iC-N21etBQ+3Zx z-jl>&4x%m#31up#6Xl8flPl=w&W=W#qPnmSTaBM{R6WMkt*R@ z`OoGM9*firKfiJk&;IL?>Pkew<(0pFPmIobdfzvvhC9BwpC^flyzjrIz=)Xx zIVAYqTjtT(_(_>rA+Bm zf;2NLlvuL-eNLOQ2&DXXGhT`dZk&(hS#C=Z%Jw?1VV)@~$ca06--bH@tsG)n5SIb5 zI9l<8i;o|{w>-T}<4H`3u6+M!b%7w0I%@TORv4pEzSI{pRlZhNAV> zBg8d?K=V7EU8cF9^xR5n7=9ctfC%m@ya3i#tlM73R@!>}{!QGubAy)ZfQxC_n(dj5 z#1$VuZ4B5et&NA1rznVg{i9;2KD;~s8yVE)dz}Ob?LMkcxTtFwyTX1L-zMamm;a8 z$`5W!7)T^L{h$B@q)I@3EyNG)DMs^><3=*ryalVa(DH30c7FO0HEH}!T^IIyIR~)uZSxUj5F#Tq700wyqQ7B z{(NyiVLYFFYc*%RNV36W&XLWQ*0o!^oj9`+@hY4=JN4i}0_;`=VHUZlW*iuNe%c{} z8RcJ)V&T!LtJNK9t7=ojbT}Tv|b`QgqWkRoHs!aLZH?i+J`LhIDFvO6DZJd zVbEk9V&t;Ys9-812@v>mTmWT|d#S@c+iXj&W`v-6?bJ|vk ztpAp$F{mkR@i_}K4U zz6bf&)TvY1)(!mEu1rmzOW!FAOa7VzK;^SUW*Wq|2!#qR%L^6xa<WUV52D1@gk0~AYH5PR)qyN|CIFt+0xWGR_B?lk>f$YI8IQ^` zpjRiHGN~BFO3aY_L@ZN3%~Q4Aj|Uafm&zn#GMg7i)#Sz|4GvU^7jySZ{m;KUV-?Gg z6s97ig`eGb{Vn~y+yJE2xx7)Dz_w)y7IYqmldCf#TVMxR19>bN<>G4dh01gaMZRS7 zD#|37adED`d`I~o+-`7z!Y#Q$Df^Jds7r-r-U)4K$hQBZ6dvkt1WdP#m zN0fI(XUas%puz5M@fID-nfO3sv4S-qpWQJxUjf(BsKGtMy}~MJ zl!Sce!{S=mOBk!)-m^eY$DMM}5Sl!uH~m9)_BcQRcIImr!8J6O)`@Eb@gWCI8bCJ+ z;{s#ezh@U=u?8`67=g706H^w9m?RP>zK|(=?()cvA%pi~*|kDJ-LJt?2TB$hhJR{5TH`{*vX?90rLNRbZK_MBG??+;L%o$ zF5+OmcjKIFU3&HCta*-(+It|14GUw`sxd@hVzzFpX(Cj(B2knXaXA2asP%W$UIQ3~ za=}*NWFl(H!A%KvZk4#V#Fbd$mFH5 z#m1Bu%Htq_A1Bg6hT?Hy!QlqPA|bx&&gWNzFP%3YsaC=+^-7Ya#W+pCDT27CE!xcf z-T=VYer6w)+uy~Ni314Utl&8#1*m`Z!b$XVnV(?z64YW_3y{VBJ0IRd6R~1$ju2TL zyKf@{yaRMCS+y;kd{7hrLzu<&i9z%Fzt^}vjQnQz3rpLE2~wy3XN&82uQ7c!T?GQ~ zkt6N!J^O2^8^qGJZmTJ?2(WIt>Gl80Q%CE8c#&;8{qHL7bTD8T_vr%2j@WYmBLxT; zTez_?Cg{iF)xxF^KCl zVM{(fn{~j|E=*RLi$gO7`d43tK_Qck#d4)fk-RlNuPxq1pI5GFNPTiq*XjQW%$Vkp z#m+S(1enqvkO8=;&pG}ooz9H?0$bQ%W9H^WLt3nBc|nMHB{5VwEnPNz+q~p8g4t@>Bck5%MfZv zU^TuS+#>Ebk9DzI*6TR6i~h^6=F&)=*DTL)L&?rM>0n&g5eEbp)BY3tYHZ9SudfPV zT*U3dNCr7hT**^sZ%_jaw^?tw9tQuSV~1;+gz>{;s0ZTw?s;)V5D>u4;zrpn3=jYr z5{zQEj?Z78y@}30dIYthz_I`m)bB%Ht45?-m^?rk6>Ls$G7wTh_IBi|5|^Y(3BchI zaj$*$>~Z3%o1^)Ow(hJ21dWr6UcmQJpcjCtdzXgLqiX|y?c#}y8f@<^+{i7hyTS|8 z*D*@R2!j*WZQjl(Rf0`WcVWVM3S$PT0rcH1_jzertRpCFkjSZjz-dF|GJ@+1j2B{c zx^`(*W=la~EuK;a)A5eD=6lHf?tWo~?Nn6bQH1$x7fxd2sX`nU5@gn5r3cl2VR1-Y zbM&)2=MlgpPDEbyfpJ>5@Y#3Pg)ZXeME$xyJ+M$upE0vvf>~rI;IK`Dx2v-yzK}6o zHc^mMuoDsn2yqi(c^KpTM*(`1hWBFB%xi0lI*M%XAAkR7Eu4Md%PY8YZ=Lr+Ya=38 z6q0bV*CY8HYHp!f&6_bk;jF`l z@}(D!;P-?T9U*cAsPg)clam*TyZJXM=)PY6_a4`mkJ+b*z>I=v!hAt$5ERtjb4(w` zoCRn`$_AWxv;?a5I{S!WVT*vSTc2ts>OlX`KWaFEnS6KtW(9Y#yiS{LQpOMKsmv8z z%*|_B>Hnmk_Oh@k0aR)R4OH1WQ#N>Y;3qTY2{;8?^wK5REaC)oEm=9;K!$A5iSp4N z{OlAc1<_jgf^GL5y^;V-jY?o~S)+@gsl~hI##p>othX08uDKK0AjdUW0Ys7qJ?}q%RMWN zRb)h*{~~@bKg`^6e<IjXsM80ai7RfueTGkIHORm5%bR8QYdUDiOp{0w=j;$@NRd zDirNb?26^HDgal!gj`F7uS0OGT|k+NbdN+$#)T#dB=arozLM>`F?FdvA#)iOl~6;H zMU4x3$eqXrp)efQ5gUl|oa+0OV6r|VSa~2Xqd4{rHoo>o0up2ks?NJimxVUBF(}Nf zkt_9JK7*LxR(5hSa6rO*KibQJD<~~Y=_qC14cX2rZFcf_afj?p{Ec%T<6wAZ*sx(? z$_@NiwSo<@q*jzUS3F~Z%a~<;Ei=$IU96oRD3$fhua0Ss6(eJWS-fwB*CMu9N2-4X zt$$}h$pia#V+8yD>h5`(0o#V;*eOi}<^}HK51%qx6CDC{y|ZAWFjU<%9t*qf>mFWD zaKo+Nyepv8#wSi6Lyx|>T2HY(EUvPCy}O2|#Qh|$FpbYa9M3&s%y9(%Nx5!-xZhyh zQ8oo20y(D8X2i9?#f4+_e|vbb0;^A*J}w{u=QHoDWt;|_)w~7u{qm?R5x{o)v&;Aj zaji73*$PnL(0iF}N9;K;bQNs$k4G1)>uuDa9^v?XoA}g&2GJYyHz}|L@DX+>gG|5f ziP7f+#U=FOv~^?y2@rv_49G$CNs)oT197$Ypm!Ixgjq{k_yRGeAVnU0ZKcLBp`Iat z;a?wKq(+u)c2YcLd4sSxM+g&k!xKxQ@lSIJGDj@YukM;hYc@tt1PuH$Z?C0&C-mb> zPaL6zq!F7I3kBOE8}Bdj4j(>g6rNR&1rJG7`W}=N?p2UtL@pd zE$$%<;fJK{4+^0Aw=ifsV?EZ~b`*_c&C}C>rwChhzA$Py?T0iPJ4Mdl5x4RG z{&S|LU#Qpr#y(y6~^RyVv7YFPZ{4Q z#>u%CvL{TQJedVpCF}j4-G8>_BDZMerGadp)e*&Ri*&aB83@JoHhDv{et+3>EG30+J&uz~%mrFaCm*jx0-Zehg zxwX0aTsIH%xH$a}RJkgTf0k*EAtJA}?XNeymiSpWN4U~vxA0RH9tJo6{EM9&LVK57 ziEOW|8Ga3MbDI1Br1ulwOGI_+OLga;W4zqcKP7G_0HM_zcW7CShhJZ*ZVh|>VY@em zL-y#$ztN-n@g7I*6Wv`%+=v90I2nlV03hJx8A{P0D0ooc?%`XPPGX$W0)ug#xM09e z*$lyn+%KO$QQar2H}2HDNS6r^*k^2C`t)z#QFq*bNt+g~Yz?~!yMs6?xVRuL1ZW?* z*FbfP!A*iTAfHn#*%wC|C1<|(kv#~BL=p2+?{*zAu!p8+`2Bqg#AUhD@T*<}b`51v z4%xk*mdttljny=5QA-v)u0-4yPV4>P);Y=^C5h*;I6~Zj2k$l@^z7EaNHU81qs}3K z)6zBD)GY@l3+~W+Weflu3(#gd>(HUptt*Rx?ycFkk-41Qoc_dVV`;juBhL#+FsPo_ z2)XKOADo~k-Gqq?lZN$V9Myki=7z9&>rU=1?92ara1tT7dfK8*MA^#_I|$i*L2Cjo zRd+9Ob*3Zn>xV^l*WSG_Y-rt~MUIib30dvIt_YI@`GsHqdp_fYVhmykWbSyld(S#- zC^hx#swpjyuk5`Ao5QY@+6d_)kY?joch9f%8SzsG2wMt3Hg)z!t@%fF+J^Q4jG}}R zGP;}oj~0MdW!{;;xuX9)x;1EWQ>_^&ZN~fE zyL1w;-=C2>0&%k|1cbqT9m@k%^?#%=WS75hv=+ujPBo;@czw>stna90h!hMzyk)L} zXq8Gxj#wg1S0s=flMLa~jOkj1U6Y0%j%C&}j3oK-UmUUtc$ zSp2-uc-M{@s6gJ$=C98?Rmw;?l;63mgsE6={Hm{S7C);u+P3K1VA=_(kibR-+n4@O z$c2y73Xs{4w1Ad1KdquA#;RiA+`3(X2Epr4y51IY180f(2~?Kzirf;YV!v}w_lTy= z09PKkJfQh@*@l-1X=cefPymPrMJ9hv4UPqUHMyiSW(E!uqKlh|e4Xn`p(+xd%xfrM*#n>G(zCf|V5r7^*g{rvTVSo<1x%5RWRhb6-Q_v4$)!D104Uoy#6DMT zxPj4}ODq8&oO;aQH{Yot-k@%?5M{&efo=@*h_#Z36Nh0=YjT$1PLct5AZEx0aCg*h6ZeR?Us7GWD4!7ny9Z&H6nLQUFcNHH zCy&2R+P_HywowTHOv=dzH0g111j54z#XiS&z5n1rnzsms74brFbq(p?m4151JbGRL z0BY_b$J4~&y@dr^92TtH!XDIq{+zM2sb!ZMzn279AiMV)vZH@>*2VyK1E6BDfR~$} zYSxUti2~GqcN2FXvc%u<+zOmnD{E(x*B~*xc>ZnAELYHXh#2|ZNA{wp-dc-1URu)W zV<(Rhx7UKi>aiQCpmhk(KV}%UZmrQ9^EPS%Q@i)%QGLP(j~lM(9FRXtm_kOPOQdOd zL0pIcIY;k3kPh3UzcMu_ri)xqZj(Z%$L#KiS*ru;aem+=B1-c-@#Y$RuY1?dK^Q(p zNg;qU#9%%8<|-`&9VcX&$Z+$1>AVTyv8k&yU^_FsY2G8#`Ioh>-7=cj+#32zJ3e>z zSib(zB?^vE*ACh0|0)a>@-8K;YFlBAVL~SJKi$7jW5kfV2`=D$$Mw~D@b-dD;iLna z_*P-ax^!vKVd>SQv$|7}hYan*T>H6zWyP{J$~y(L^W+1DXkEtN-;d;NTRZwY5@E87~wYt1GDdPBO%GyY=d>G?253R6!o0BD!oSEAQ3FfJ*@)g&`^K zk2bCw3Gz%>Wcok;i~TaBc8lHp|JzFAsZ>7bU;RRHl1%zB@;li({&QDJnq8&(rFCDnPIPZF@$Z8&$yOWnPiL)5YL#mSpGMoRKx= zoFgb0y_~wk6#OoR%qM7To1e$j4xB`g6a3e*F{KJqQCU~qF5Qe~4!!G84~ucjATPFx zD}cy7BM&n>aFw<#u< zuB)+n+HJ+Ut!X1fdSw3-;!=BQ#)bg5$J=694ih&8K#c&Y0ETLy-1DPinD(F8pXM~T zXt82>PlL_@mITCTQqcDwI9O8zz{P^oYjCNz303hwf19pFj&~c?OY<__B|HAvOSi;B z1tEem1lJ>P*5Ll#kSsFHU$I4|O+z?LShXqR`_aDR`>OH%=09etYb=dHl%Me-3Gpa7VlKaU8jclQe`1Cb*e!E*Hx8HwxwG!Y|% zp#1Xups5uu5>SCac4TY^ID&g_{pKACL~+Evu}?S6iG-LVxc$6q3QQhijec{_{Fr(r zsYqG@!!c6^GJq{|9#L6K(qs(`mIZNSNF9OLGh|0!w`oV76$qL~+#Fo6lmzD7;`HV7 zCTMDc*Muno1NrSsb{EF0Sp&JzetdrC3(GYtdaxOq^mc$e7ilk$;1lJ6@@6BobmXA! z0CdU>0_@}90`NTKBfuvNYwXGw2_q&9SUf3Mr~e2lKl8958i&=9{^P&{*ecX}#06uA z_GExp#J$a39s}h+aO6-;!1@OO6|^F?|mJY;~ajpBHe6O!^PKwi5GNQ$?I{ z=+Mx!djr2GZ0?W&J%TWj%C7F7$0+JQyaZprcp__I?8RF`z5dr8JyV}0plY~)DxB0n zZj4>Ipz@+ci>g`GgBk7gQ~SbkAt`PJc8j~?)8ir-4Vf*FWf3KJpNafb~QEs;}NO6^S#PG~6<7LkKP9(e*}nUHH-d@^KRTyJ>_ zB=N_!+H6^sq2grELjr-;#Q2bgD8Vc5*L$ z3J9v#|B%PXeo6Yzl#yC!w-S_1MjrE`5Vq_jfWuYv=r+v3wgv`xl)5Vn7bOE2ioqj~ zgNkg@rEb*-_4;4OROsrQ#)sTzWix1;C)`}!f-prI2a;!o{QUG8<23ks<+^Plt)|>f z4Coc7jMgLbCm%G3k(hI-FcYYOcE+KDS&T8iDFzxrFwc_6E+PPDB z|3QNp?iZ8@!6~P~^7FB&s|W$T$LyoUZW$+{z+9lN8{(=^_Jb^#Ng92qFfQ29BZIfF zDXHLcEJO0*j15}o_Tb(7YjVhs2)JuryCVQREnK-pNBvwenlPX*PhVeTopc1hqm0Vq z!tl&o++rwLEjKc0BVOr1VOCILrKxW>`qKI1`3-S*zCC{v!|)?W|Kq2P)@<+n1epH% z?!_5^L*~7EcIHb35H47;H6Q?5OVG$Ok?iw;N&S`K8YqBj)kf4^>_@YfZlS#eL?N3x z8nNf7UW|H+*WRfOCT-FAN!nM{MLvyPb+;LVpDKa!BTp>3_U2*E2bGee~aw1#xp# z9T6+A>c^$X+q+K-^YNcvWrQmuMh5D- ziXr*R2PbN9_^AgCrdx$QK-z$hpE_1cy?|9R@P)e|pAK9{2k+h(5Ico9sx(IWIfCBd zCc9X6^8id}=xt9g3&=c<7#zeHfuX`_F}RR6x9+5?Z=9{n%m>66{_xg0vU~4MUlI2T zO6B15+n!xcWswRRZvrM^Q)`>BSDOV?t*NkfhX|NL;QV$0WPf^Kk-F5x-A1PzI7su; ztysT}Q6EzbZ;`bbZ|Uf1hYjJzK3&5Nk1uA=f*6bW(UV6p%B(#3#u}9i@(4|lKH*d# zf|mgpS8v=I2K4U4zrK5cCNeE+ptz1cIDr?f*h-VcmH2~O=Zdb@@@Vzw+901#)V7Zj zBRoswwp>_3oG`=5KCnk{b>1pQ9d5At7YsLCSAP_@ng*tOP$fTv`Qr~BJsd1eKwOt! zC-)NIcFFN07)%k|c*ro0*sC;s^)locLphh9-x%#nB!f@U8Y_ovut?l%G(15Otx_W<+Ik9%r&UX4gW=Ky)5oTnhF!clt<;9uRjAjD)ARsBEh;6b$Cg#PrmhZiXW zj0CjfhV&Ewx<>nq?+@zVRW>S1sU!XW$jPJWx-ajif5ZLPy?ghTb?eq4m(ot3qLwPj zKhwaM^}pOvx95p7DXdiB61SAlR^5%_Sh%$`L{_H6cf>d24=M&d%DFv%PIiHTjVg1c ztqaCPqHj!bLlwGEk`sTH4$$yZM-HiY7OGa07A zB61+EAy9620o2B{#c|SJN8o0Fim8rh$Y9R|OWyTHY4*gyt8sw@QH~)qGLel*bC4oM z5%S5#m;e@HO`70Jz$=R4z_f)yBHr)!a zNNs6I<}xjQ)%I}tB4=5&Z)s{mT+~CBsp41)89Vy#C*y3W(4e#ds&t)umK*O3s3L=$ zfJ_?0#Kv;gTculrSDX6wqs>UTh(KDD`hcPS&`Bfcg#8C0SUAKOpm;0%{NOReHCGV| z+=@#N_3qdf8k<_1T6ZDth5m5gLQO8)TNoo@9{3btr(om}xQm#XjjcO0*ms8*C$Lj+ z*8m8>m4uA{3xrW>>f43xcy5JtQhSd$nlld_BJ9{U1ze9#U1K_l$r{EF?InhPkQPdQ z;*B+$Ty)ni99iEKek$z5^hKL^vVgL|{kt&Osxd<E=I%>U)%!&Iq z>H9dTn7Bt;CoVf-ufi|HorKd|VBn6}vpYc)-wQ5 z;aPCEBDdJhPd6u^Q|2MAKX%F>{fVTXc@~z1SMxQ&T?l5<8Xd~)4T#a2y>t@;P$iE{ zMgOl7K!!xDkbAxUqdw#n0_enz9M;Ns)$2ci;HStw$ zg~9sbx#Ki8t|1*P_xe9>Xb+ipjf_OOwRGsl>px1=0JH*(B7yC#;wt^KfV-=2oF!~* zp#MI90$nP4f&&pq2wJcI2!8kW0JzDQsmbm?R9N<9YA8W~Y<1II&s$P+4Ux_Dyeh>` zMAU2Jz;UI@#y7KBMC@#+U2YzthRk3zBxNY^AQ2EDlb6PPWVc#$lUeLkih=Pm$nFzI zXI6Os7{kSBKg20DL&e{xZ7G4+2Eic!RMi+H z;jk6B4z{~WAjoD{RN|Vwm)ji|af*oq8`4^wWLsi;yv?sA3sG-miYwK2{TS0)s5*1v zPAYvK{WBUR*A-PxF#zdV6T)TIpO9WQi)sDrq!sOtknR;HS+LWym@uptG)f1Nj;-xX#Hfy-UGG=v}hYc67s!j-3v zX5{6WIJ|ejiLln~yTr}YU1PLrbuoxIE%wfW&6>mK<|pHh-dvq9jHe6WLLx;3mcu1! zF6)djx=(Z(Te|OX%Q~8C-jqb_hy;Mt}q2rwkzDUsNtY z&~{^=&h+3bt6}_kt;l7zFgtK-U32+v)VvC{?lx(F!!dg|YW^)`Y)2qFSeW@MS_9lx zHqZ6`axsFv&k)%>`}R6vNVYNCoJi8eSi$Xum^xwdWSqAv*oF%g?<2JVQZxJ*EX}T1 zat7JufBdg`IzI;s!-8Vl!VJPR}~U4(_+d-&&ouG3mR` zTogeDQ}_6rk>S$3Ze(VI_=Cp`L)>0KTwq+gs``Ka(L;HzxRAw-+)n>-4`JZ+puoeg zuMTsTwq(1Gg4FNK+obg>k>d-2=U1IIj$WR*f!-2#FWkY9-C2hY6NYRVP8*uyW&MY& zknR1ax6dPF-A6q^6mv%Nw(V%+IWoRTY73Bsy01u-iW-%OzXHpO9BKPc>PLSOm+0RT zQw0$;Ha04-GJB2x?DStRc~cWPsQa&2G0yQCS$FfwMW!rNQGKFH%z)tl_Z}rn7Z+tS zkm>UrYh{#aUDQP|*G5{PLpq_?z|Iwy7>inU*Kcr|3_+J3rAbD*eGVa>J}|>l*Y@%~ zootp*$nQvup(`1$)BG@VVAMr^Kh(TIir;B4pqO^yWh|;@BFE(<8mG89@Jc5cLn%R0 zUg;E>PkLwwnnDJl*#w1R7P9q8asVr%X)qehD!G$ySzeTngq0YuI));+`%@qv;GH+E z)>kgBwLBi}UN)zypBa#>q&9Hig2;jYTFp^bb@yX?v~!bH(4pa6y(}$YDe0C|8U42w zGQcs1U!^DU4#5n2a08U*PG;$-j1T!onVX9;u*${F-R&q86=V-i40VxbY1#>oyuLVz z7EfpcgVyVXls)$0}^L-nr!xvW>Q?fZ{&rJZX3JuG& zCfj?a^`+gj?7QU}Fb_Dg{-+14h7N(>IQi67fX^eZuVSzkpEz|i-T&%JI{ARXdJKFG zPP>IrK&bo%po7fh_rAPBa{%o%rf)cCw|@MO$Cm1dbrz!qh6TU~t|xI3(LrJ?;HrLj z>M9LxM%kE6TX!n!f)X&Bh516wIUMhokCgdAyT5(?%vgUewE>{!!ed7Wqtl?duKxPa zLamo+bE8Ms&f)xHhVfHkv;hqJ$u;jkXpq+TL$EkbuT2z#`K-7*9~5>-+(Xp2N0%^a za5u(DHk2mWTL2#d?h#7`poPSz+r-dL8s1ZLNKKIb|MC7s>dHx{$O7sM;zZ&ZhYY3B zLwacJmjJZz$NLu);2|%>Oo1W8Tta$iVDqaVoTNpXm#%4b8>={XFa}qiI!2R+ zu3EpXs;hD_PNjk&Lmbxj?X^S^mAMVsVQdiphj~@6|6qBV`gIGpJ=4rusJKr5KYrR+ z`m`{FXg|_3AXB~RKT<0o!6y>m{`rB$`s^VBAdx0xkI}t&jR0dXhe$k&Sg3ma$3Y6z zBYb(r26aD!m;`XO@DAu202c~lYvzA>8+pMHO9x%T{YQv=etGwNWoN@9XQs7*M+m4= z_n)j0C8a`BQ&aafYu31w3UB9Ky<0HLZi9+{xGcb->JlN!yI8k4dFxX-h7)gBcFg78 z2^i!jy7UYAO=V0Rs3`5tw#K(Bq6jAPAS`}|y#^4Gfx2t}^GX?O z7hH-1& zY_72?CP}eGwSqVd+$ENz9ng)kvG3b>64jsP^X<)fsX~D}l)-ojhR>`|mO*_w401>~ z)W1b#cj_=#2KZb+FIB);0c#Ezw+B*`8{(&Qnq0BpzJ{o^CAc7R*Y6JQS^+SrmwDmO z($4^>e6zZirKxSekqiLUuNQ6}2Y1fE-Lr_I8Z#C>%)}i5{k-VQzn7gfoM$cGLa)u) z;Mx~5x_u^(5H}`QBjyGy%vE_X9=&b?pGykg7r2tu<7Uof~dG#239HOw`fB-?=pst{0 z-ybosM>t~g06u!3ff{4_>^tk!W!guW6BM(C%X9m#8UwH(8~q=I2`TYg<%RgUP6Al} zB!IAehC1cC?J?S1+2#KfGlQ=AG>&^5-~3iT=Ue44_-D{}bf%(+?Y> zaY`FocDB?1!}e&@0~T+J%k}OTSG1E4+@%0bw>;IXhakNE3$w;ooik2l(Ym8efYUm} zAXdr%A@F^>dc(R7MoaJfrkv}PTv%!6S2GiVUNAJ zmhQd!V4GhCs>%1MX;;c+yv!XDyQ^|S0&=D zl$R$voeg*;_oOit#tbC`Sp|K`nMV!~W@Fjl`^|+F$w;C++Ocj`$s0RmZ(4SBdkzd@ z8wa~4wV3L6(b)heIi*LH&n@7-urge4F)7`H%XjiVUN1HS+>n5!GsqNKF#{h-LJ^!L z(3pUf{OFV(5jp@14Y3J22^w60HdO(Y8E^+U5@Td2N&5itKn}m!pcT&&g%OVtQgH);g6@Nt8co1g1 zK2F?K*Bx4NL>^t{M=P$(=xl1KPyDEFYs zM$o9YQ0##>%4DD~hM9)k(~!lU#jDSV9%icF@lz%sBZe11(~Vwf-B@&j%-qE5kY@)m zE(=z+(vf>MYUvEr{zDm=O?B^3ym%MvoHgP?Jbi;nZChaWjD}5H?B&;i98Q zhAmrn@$JtoSHZq8ZN0J(#|l`%$;Fy5K}d}Nw;SXn?i!x6JjMdw{_Ju(^Y9_zx<{6< z7Jp77p}=Tlq(0BVqA6>iI^0{9?Du!=Y!fVi=v_ZrAsZ%|BOEa{?CH2Ew<_2+v@wYD9P2<;K^jo!@%2qPq z0T=99M+{N-BT@_`5+grHT#}4T`zYyy_&YN}raNF0&kEfkMw$l12tN7NdQC7ZEEpST!#!|{5{DQxHnC3s zQBM&p^6kRTA+`~08<e=3YWIjza04zLP4F};7ptXve*-EGD5kh#*L+Rkn5NIT4a;1Hup##~oi`znAc(Fvu? z7DLw%EfH0rI#*H;*f_-Z*(@4a%vv$%xlK_PPV9B_+GeZu!*3?ou8(un^^1c4TDsO; zMqIAnyYX;sEOImb&l88*>3{kt#i+Dfo6@IQ7t*kKe{6a`Z*bh- zf!*IkMPaNdbXaEO+C+jF<_nqoI+r)S9j1fYUiX6f>xgYqw8bdZ_=49@GbH-`IO zTEVC>cdi%%1TO;wfjPku_g4h;%+MqBrV^3FLi`X|801{)E$*~CpKAugqO2CuF?1Hi z|Hvt$X_~my;Kl)P14x)Jz+m>W7JhT?27Xc)sq>E-s<9;~&I_YjnZoJ48t;#LsEoU9MRbTB~D!2aC=O3fg@ z(Jpc6qsHMIb2bVK*k5C-aB6PB%B?hC*ql~?C;2`K>ca3|Cjf9+Vh7U(L5Fj2zpg6V ze?GBPU6MF0xm*}M#Js`fhN9MR69P2g)TOwd7@)M4Ox9kb`|@dr4MrVCZb7~$H{URP zdyVPC~__Hf(S5*!use^aQI%0ykyO`@Vk2!u#9gwVZVWVz;6B3&MaTIBM7U= zh`$1ut=AR2E*AC>fb6k1)}$Rx(HG2Z8CS+>N3fN42qRItj8qhuclW%oJS=oY=uQ8H z-Q&-nH9lPb_!7Ctws!h2>>&T*lY47m`ZWUDR<7Ss(SLjncJrnunspOVum7k7fO!lS z6>)G#M=__lH9R+MEu%goV%^3M>y1)L+Rxt$lLm&?^#6Sa3_^Mcy6x%Z2}@M0A$`b%=yso+CnqP>gZ+mNN>#nDtemd4WJMh2*J5QZDwFkwRs+dyYlDEh) zI>D`Jl|?weSKKVov&W8cBEuhSyWni~$X2DecDun0RN2)>gGj#YNV(4K`x00vEQTfV zB#JH_%L|o^g;@q|Tl;LUl@cy4^+PSyB<%3zP$pNNPsJb_i&wuq+jlbnE5=Fz zEAeu!{}tDvV{Yw&G9TjVuVrjPsLY2<654aQ3dSAy4jxDv<|l_cYQEp)f;=>Z?+R%_ zC(f?=^mf`E5LK9_*m*V?4_E9p-OjY-BhEw_PI(ejf)Ge50?Q!4?viaG^C)1bzJdJ!C@B&Z) z=<3%?_rT##4=l1a=sorr**6@#dtXNS1Yu0VKObERHlfh3ZmmOs=Knf(ycW#8?YU*j z7X4EUGZ+%Yo4_r$$EaRNf*E>r?Zo%LvO)vC5mSQiuip{_y2S;fZb6(fLtt}@7(1jT z0E4tkh%>NMhsy3Arw@_S2?qJn6A?^3M}wdb6SnQ%7gy-XH#Bs&k$p69{hyC5(bNHP z?J)=&7>2Q_U-uw@iMI*}L)wQ!_8h>%fN0zl7&rl);r3^nlivC%8VCt0hlvZPPtQ*D z*GCi>+5Av(R&euP>BsBHw!pNcy_5#7@NK!dZ+=PfN3pTE4fV*{Jx>P^~ zT(>C1>=|FYkeUATXN?nvW>-KByhQ@oz|bKb1FnZV>bxU|(zW+3(x82R=moz4lmW1T z$|35B(9)d!gQz)Nl>u}HsvIDq9CiHs!N1iY+m`E^-Lk;!%FK%W= z-^GO+{{6yoVU}7e`VW8(P;=wsOVvGFum4~Vzb@eBN4L%mOV+fu(|=*`0*Z{^@c7ao z>=k$I+7Q-k*v@b@!|gq3L{CQgl7Bqb95%J?Xs7>Y9yXLwh6iPC&`0Ea!->TW^54Ac zPtxmrM)hgartR$Pv^P}O19lEq!#&ZUdm~s31$nSk;%;h6eWW=Sh0(wn)G!r0W9w(- z_G!7yAj<=b4Ad%ZDr8M;K{4`itUQB~KOj#{>@$k;%@U8HyYub3)b6Vy|-o&UjOHhMVH2 z2|%a*Q7PS0wP7JELuwMPHvs3y+yYV}W0)tW^{2$orM7xN61r3nXnxyMd^~>Yx9iIi02g;_?w9pMfav4^1+4|+cKT{=6%3Tp#WS++ll;>Z3L0kmdpftKXTwQ9Hs4!{lo7Y zh4MFA4-(J)khuMjfqc6F-=5t%Gm=;egQkEg%`$BpKnPAv?knz1#91MLU0i#Nk}il( z!xY?ae7_)WF-C$+&8J5$UQzzR;RVFa{Z`l=Gbm-&Go7&CpwL}hhXB!(H$;^6AGx%U zFAeqj{C!O~&J))26qyfCy|osAs-6CycJN>Zs6}5o(*LW@9!I~pYc3@~Rnh%LX?mE^K=VpwbpkpFUmJ^3LQI8J|)?Cymx;N?c$v>>fmE*Q1oud!gbJFxezS zqh>57Laba-fRrsp!FMmD7xEF^T2 z+mCkV4AN#`L-FBy!@{Ml*;rYXE%mP9g;v`w6rlp?6Wjj47edca$kIrbG^7wdhyRo3CmKn*|HjF*vMtLyn z7Z5TWly}J$RxGb$wy320+eWQ&|KOIyEPj;@^6tD}cFos4vREZIOn?Fci=TUUjplp8 zNxwFC!Z#84rcmZFI#i-lV++*nRAjQ4BXLN&q20 z7}zzq_avb=Ei(UJd{pwno4Oj5>69#%InNL-)M2GAzz+H_j*>LH(DXG&%@?Ww>zv{o+cR zJhnHTa=>6h{1jZCIE8ujKWB&aTXvGSWtiXNhx7`k3WyeW84@4|w^r!0CJgU^lbHPL zyXGg|tm^-M6Z&fXz@ObYuS5NRpMWW_Xh`#c__e5CMgO4-`0MFd{JNd~UvcUfe(a64 zL0H#z`j205itu(}WBUlG!vT+<+&)kH@WOlR6fpnjianJ@{ruTuHO&TGwi{Y@5#smW zFYOxC7j-Y^>ShJ6Im@=lJYT2dD)Wl}aMcvII#iYl{jXg?<=z*+RXvl;W|ACf}| zl;dV9?^V8Nm?xo4``x>}>SSp5$=^4);@dzDY;p#{33%1HpsF*J5&@9}+>s2Noe3SX zl64~X9cOn72LQ~?SYHty(L76$Kh&*@8 z=8(CXyi7bT^#6bPK5%JqD1(saF8MtwIUE->fE?~31aE)l%&~OeODhQRGq*ptoMs7w zlxAeQb>POn-3Vn|u6uN`9;r{_j8BuFqXu>lyN~Y8$4_YzBiK_JmDj~xh5+!+HTIiR-8fjT_QSGod3}J%CRrC;7ApGZK6v z1`4Mfk-I3*W4YTH0e%;YTQAnNi-!T=?n26d6ZacLUAky7Yt2FrcTiUPS{&(p#`R%< z5}ZUNGUBZ02x7!`7w|iE_69ykWU-sLPa#9}4>4h4dwE4xqq0B{UG;&n{MzhI;Uxe?XTNYS%&~7@x|@K!&9r*`c6wa^*32a>c@Y&? zD1Y|s@pQ|ROZB86xljoV(15;OPzH%mXc)0!S#GIsV~6(CIICaXJulV-tkZvF@<+yY z1jVCZH{!X97O{@sq2jvy)!kbDr=9*EE!e)6rgnrh+jJsZQJd-g|=yKH886zH)%kR(x)ha%ko02Xo%%~-sJ5QvTE zAjayi4=)zRsV(c_1;-3WY6g@);i$ zwpvK|ml40l$oh@q$>?9!WD%?|YP?i{1X4k~I%~ZKun!&BBM5_~nd)&ZV%HF7g*c|| zyV`8H4P7&ydE)+q=nwZT(i4+!%-KLwXKfUq*M%nwBL?@<(Ei;Jho$4yr)OuaW4A%r zD;Y}^9cJVwOF6W%kum6U))7OLQN!uZ>ZUhdddZ0+81Z3uKOall2qUQ(>H&^dt>3O- z^FeXl!WB#nT+#nt-8=CYJ}@EtTUbkR1Gm%v-rYM1i#b-)PORRry=YC+f5d>HNb?o} zsz1A9KJuUC)}f_1)e5Evbr=zYR+?i*x{}g8HSc^Z592$Lfoy`n0!p; zA70m7bIs2i8yj~{o;-Qy^5x5erc{tWc-5*^;s@WFSHMt$!Q(QP-5og&g)5scBTU`k zg*t>6l5Z@q2WNUoMw@y43kDYS&&Y1Xe~TSysHSCbmO(G68K?>E7e&gNO7gveI3Fy^lCCGAc|~qG(_-D zWZ*eCz-#_0dq3k@j|;sa4sL=bK$Cz*JW&#i%t_Bkz$DZGv$TSlThh8v7+Ycw`tsP} zJGHbOt}v1gxkZYlx{*lzcR!qq(0GwLu#~bLlaB|ANW#-}NzhafKq!Gh!Rekcc!vE` zAio*IJccFi$~PvpFFU5=qir7$N;kPqOOn3TflQ8i(Jrx+eOSv9tLlH6UrB8!%RI|b zp-V_VRE-n3=Ij~@Weyp5ij5CMZlSMd^@^a$0r=uH#4}LZ18zFhu@jaj>})GZS%YH? zkZJtYnHwy<0NFDOi$_|d_Ywh0Frdf|jl_%JxoI||uH8Q4`h|(ZdNMMn|MISR^r_Rw z5)38WaHj8vi-8&>ZnfV(yHI0egwYX~7z>Eog3R4o8xY6VA9!U|K*sgwr>zU(_R-iT zdV!0EloZ5iwjp7xxpGIRx9Eeb`XVz>Vada1R2o+#s%}RC`aewV7zrNLMM*z7-{9}9aGE^F+@ugqM}NdIv44YM?1s_92k zR87!{@;*rPDz3|{mup*g@RQ=|S|-N)lH*1S0NxyWb!VQrWUCgz{^liV? z3TXNApWmarIW9{fBPlFcu3w7m%lc53RdKlia0PXB%6HzGzmWx82IM6>QpV};U)f&( z{U)S7Ff+lKsF0g{N*L6q-de)|{pt1<{r~J)<208Vg465uzk63^j5lQXGjXjU4T9Hy zB;Y(#Kq?Y{Ziw#QivA1RskOK)WZimSkTU+_#q85yGaIH=|_Z-+9-AUQ8 zP8k?cAuBQ{2^n++Dw)>{%aO2_zE@`)-0*NRMDcf9e++<80$BwpklVIr*}2pKu>wxW zpT}K%dP1P$GD)jN1*kZwv&k}v%YnrV2Fu6EP}b5QWaChc%W)^|tj}g})0-j3ETsp9 z((nWjC|{cWOxFG^uXMc!)m72kfTl&wR)=JKZLXwyF_$(a!6cx@1@Ka4iK>iGIW_C3 zkzmYG9@pwCWPn?moi+vK{(0P($a((K)Gzr!Q?o-RV!eD#yutLFvJr|6VFOa^7U?`^ zO9PVz14(xbw>`9k7O&i@pY0HvIeusldi0Go;eS3jiNPEo@g(Ay+5`*WG~dTh9j$2* zuDN`7+3oKX!_uNB#Q>=K3&=wJ7EUH2F6p`VqM^}KTGF|niQ5Y$Kl=CT!T>h4S{%Ev zLweB32Q=|dHQ2gMkE_F&uG+9eWin-K-+=g{U)(j%dR73HT!1*8JxBMVU)(jH^ZJ_@ zMo3azotl?vVBhZI!da<_Dj{$bPQLGzmHds1^eB8dW}hZ$^IBTAZhM|-m^v2;i-TNF zsQs3PDVPr94Y;iy7Z3wHS1+8X%*e?H4hECOh{>_<4(Q!Q^CY2+ z3Q7pY1&IwDgvP#|8O+xo?q2}6nr1j3FYe6a_Zz4z=FkD%cz9EHEh>zH$hiOW)7I<3 z0rYWikgnH>6Y| zD2k2KpTD|uen9LZSV$DIo;17{L;i?EgZumYx6C2`LhU~QtLf9H>l)CxA{oDUWVRz4 z5(6LcM|+FKh53%luLcd9t)oyth3P?Bk~lv%EvJrwDz+;VJJ6F2AdqQ z5Ntwtn-pB{%l0kV&^%h?z)yA!Ws72FKHZPl4{LTk)VLf@sM;IH_@OLga14pwx0cb3 z$tmL>L#32Kj<>hgxK!FDJu5ycC+EaZpK>8#1Fmy{vELIopqZAhs%NhJsq^hIcKwOl}1F1ZmCU15PX8*nTZWLyovbA_W+dPE4c9q#%?r+OhK6w-& zl?@tY7PTw^?B$=QS=PTiU&)U~S}zM*mG_cvs0x@XN}TR)`!rS~YPpugO&4x>qM1>e zWA~ALlp*OUZZiZSN9M<^lbJ1uh&Kk$xq1l?|o@y5SCMOkG(i;ZPx$Z zJv%Wnsv~8GrSUNR|M2@pG3Mr^5xwZwcQ4S4_+I~Uk`^Exxw7tid8II5W5enV+bV0V zkWz8gke7lg6jLUuf{}R7Pz-*a0A(exf6AJkEqdY&%HMHSt@-87ZKI1}QNx21f~hcP z`o0;*XjGl`Co(u}4td9zw6h(7xoURmtX0|JRsl{i8xbMa-Np8{4pbPRvYS-!K^^0i zcNENZY=arV^zF=`q~)91ukOaSw{GObNaCavIw6@n8*Y_FGd9)PsmCmGhsH)J$G6?A1xUZ@82=f`Cb z9Eet1fmbDPb7$Qg_zB*v7Da*|8DZ(=!v-OqPBedZ#Y<7Jsi(j}Q9i%Z$~+YK^L zW8b6dd`#CxH$^@@VPl(Y2bGRqSdYCf_gLffO`R)_w2@5~MS?pSjVzpd&JjEi*8r z@<{bE`}gXsX%!4*;SNY@D2AL?Z`@8-e`q%po7Ea=kTDph^)0)Q7?EMra0+fnV>d06 z^4hEojAF(p(2N+KFP<}APh*{S=umP0tS8j+gQ2_j-UWz-3JX^*VCn|!+G_l?KD9QoG>S}SzIwDKjfqWpt|GPWuY8_rwkt8R=Yx& zHN-W+^@regYdFRTnd48`w~3am*+!do?x0(rYSz<pm_tMBgJs79i7A$WKhwjn4cSOdMF##Jm5jcKflMMf1FsG(xy68m6wk+}?3;EI9F?zi;4xa1c$ z#hr+YUvP#wc%w#nw9Q&(zjcXQN;~>!b=euOY`9F2OjUFjynwBniE(fQ1r=9i#d77X zS+QVbE<*z`*-d8OESMw||BVBUWc|+m2`+4$L5vEW?4OecvoLsup@=;*=4GATZh7}l zSw`%C_pUDkB7WQ`x6gr*(BAMBS=G0vB9EFk{=x2Fo){`{CkwSaFPrE}pNI-9CKs$9 ziZ3+I)i^yfv+96(otw%SD!W(8`BlcU2qMcRxOqvz1*D~B75SS^ntQ5*e+38H0vVtQ zX<;zrlORoAGy_#x%`BJ(+a++3OTtkWbVg2ps=82iCviVu&orG%ep@!PSlU_c>(>2=>7L9so~$uUnp`+N%dUp&0h!gmb^T0g zUcFr(3in&@o}C#?P(NXxdUWX&cJ7KU#2?){SBnwb_aA>_mHzzQ=k|eN=b6o$Nf;tc z)qsF*JiLn-?-LJf;@4+wpeMz(IAvTP`qssh)D?nLcw4u(@du9^CTv2hCJaSC0TA9> z)S_;^nM)c__fK6sNX_v2?1jq8Ag1dZ7w;x6vleA4*y+E`ukk~BX(3zzf*SjRw!zi- z!t}MYVA<9nEDX;Tqc*E~OJ$wJFEOELf6W>`Ll~idzqq_&j~YcbV92J<*(e~Yo3KI4 z$&&1X)es_t&pcuXauR7aas=?dAWR4HJ7La<3y7}zzy$iqzvhDJ$m53~c$7c^Fvb0l zq!MnVZNlu~IxE(D=pKz>;_#jfU~t+YLp0bKDGgo}#%AiAP2oIY69Jr2cQ2_Jm-)(s z&vBo}rmj)lLz2uM-5Yo}0iQ_g(Ac-Do~&kiiW1@GCRdYe4lv0kr_Q_rA0u z)#M|Szs?P?mZ!^i?h%+&rMA8KInW^c&rlKljZdj0j+^$*RcE}*LW)~#E6wY0S8ae_XVyh()x z%V34_B3{`IJJQL4jRGLZuP9Xi@~sO++99(sp2@KlyJE=vUCQ0!su$R&F34AhNLy)v z;YzDqKMR~TJ6D2AoL1W^9xZO(=$F282~Tqd)*G`p0WxsNZmitcij~a9w%YCB%}xS> zoWN$N80dOjV9$%+&H?h-7)KGXXS+;BP825Za&N=0wSt4P7(xNA6;b99s>DyZS2l*B z`dv2^X)#URu8waOX^ElB<6PvI8x!2EnRDCQ-z%gQkbPG?Jgm-uI)HBql^D|M{cR}f zpJS}QWTz)Z`BntWBq}y@(4%B3|f?w#G8)nDNw)puz zea4u0if&xrfD?&eu5eTzr}~cAbAZNNAzn%d9AOZaQd?UnAUw(9TyabF=-xTp{KQf+ z`J?60x=I|Ou8pB=RB-5CPN77G}BYtE)h{9l(YtjS=7J=9!Lug+etplqkK5h)e+8rz4) zi5&a(?4+e(gkjTcHoyxy$Kr#oQ_4z zlYnW>-f#MU`eB2GaqSvzlR44ml6Q}6>K;BWj9asSM5KJU>B(l>09EuKrH>95ok0v+ ztAJjd#)KPvQ)?SN{nI1T^c7s#*ti7+mE|6)H2ANBJXLSHuIIReBx?t#^5>4Zs({J# zmBQ7fj-_}N@U1?{_BVes%PHQ6LqU@rj8PI(oC5|1>V~#*eVNFCid)?FzkaZ*Uroy~ zrP*B=D0^He1ZvjNN=GR@#{ncZ$^$dp>#fq)>WIF-H-~xZL`5 ziR(cuj(`y@6_Tg8?~A;Hyh{kUedyJdT7n}`RhN;Z5+y~DXz|=5wPhF@GM(I>>g){(Hbo*6#hoh+SkPe1cnU2r*F@$v~t5X%@7Ww`j>|nA(5iC z9jE`kc(yH+Gf{of~0f-Fucb{IJ z`N^Lg9$U*iLVn;>1M){?zjPO>166$lRMo*4sv0xL+L#V{w4wbN#@m$N+sUdt!%4H#o76>f*Yhi!&SY=9_76KxUy^_({R`x1H@g_UqR%pPcKt&f*3Evv_1C5 znmC4T3*4nsr*QhAgZSC(AnGTA zVM>6^)I#r%Z1A5sYpf<0Mc%Qr6$xghgpp)%W$IVpYQ*WwJ*4emf51G!6$$3+UosCW zn~yZ-;X*`~dCWu4IGbJ}8#`()-uUFw{9cl*-T1K*sxNnETO z+vz_(2Utd;Se!(x*Z-!z-NF~n8OwhZz=b$Dq&YymS^9oJ5oery1^c&h!}hHImp$WMKXS?_trH2^;M6JrcfI}}Go_KA{^^mF^w&TYj+yStWonw5n)GO3 z_0^FPP0!D6usla8yR3?~hvGDkySPxl6Sqldz^U>m11>49hWvMZj8@eb>D_#B^|e(j z+sm^3rR;)n5Qa10XzZfKzlA#1pcuq#473D56$Ga1oF3&BIX1u; zh9n)+1uh;FrZRqktK$^1wMywG0eKrMx>q8zZ2M8$(A$@FYWM(8Yosj!z;D)(0BDk$tmA#?zEHl|5OO2fvJ8)r! z3;-<%j_5xDE2aYQLgo31CUn3zzt2t_`Mx#?W|2MOu=`mbLg7I=)c-he8K9e)$nO(5vqfsmRVzDmY`o|2u`m)_=K%dTf$`0&N22_=}uGpgU zjv5Z8p#Um!`Xi12U4xKk=(%a@!wFLcYT`>|_}&PHO5}@xdjWcy6&!)mV#rl)(-v>mzj0#l zd~xl}TGA2*_Upo8+)Qg#7ywjXyKthohUN;OYO^V&r}Xe201e!7h($scYy?YdvdSb& zoOT0agCv-n#bpDAj1sGgJMBNAzp^R!zPK_nit$8Fo>k`@K14Q%93BxC3a@A1Tcd7B zfIq}Cp)MRs@BHfSQlcgUDghhflH^TWcdE;ls#A!%iOcfL!-r_iyrl|=0?%&V5`@8H zxC2q12q1Ucj$N93_4U~svJ}6SH*nHgUUl()go2W6C{gxH!yZ! zuzqmsoFMK#t{=S7Lwc|l7_WOF-{&>gT*FosP=nMfpsIuAG!g^JkYw8slFXqIAE)1a!puNaVreQ@nhckfD4~#$&lNdj94~BZXC1BD->4-ov}SBeo_Am9(0i(*HGFQLe=^wrlNGxf0y03`@#niRSYI_x(6cW1z2<;NnId_p3YAvG-tNT}H85No>aI$QYhat&4RK~zK8@Ip zgnc-HJ~p7@?oxg)n6ur}+%;(piNo!nUee>Zu5)HFe80+G#tlE)TnV|avHes4T!EJH z%A7N#xRKb8w8Q3cKsW7Ex?s{GS@i>d@7K*sEXV}>apTDg9kFfMJHR8+ue zc=)x|%G~WYt}jmYDF{Uo?8{FaMPIpK5*;KgW>eoTjM7E-iyL{n3(7bBN2-Vq95oar ziGtj_oks2@u2`G~P4)cR=|4)sbe2ZmnV8pl{Xcr2Mm@m__A!sU(|-Wzp#mzgIY4aS z4H}16^dE^~7YkTipgF3F{$p+-+xt#&XI^{H0?qAZ{lYbw>MtY3gTTGF3nbWy5Ukcka1h z<4x@5fbHUJK;!C}#8=uy)!#ECtnH22+Y{KSc>XGG(kR-%PTch`r+buk#TLqColoYT zA_0|9bd+UceS*g%rVQ3@BD+r>U+;zr*|7R~lkVskpX!vgIhy8(?@rP)9shW6$yTKT zFJcqeG%1wRo4GyqvwXWe$hX;yw|=)qc}-1Vi{tE#ZQWI?@wN9XR7M6y6|pvJHf~ST zEG`Cv2Xxb5VVvLti(&cia@$jbkmVf5#Sxz(%!Ms$;lg7_FpjdnEKEg`HQCk|clpqX zqiO558r*n1W^hkU2s%Q3NAcuG1So+exc}u9NQFS(_{R(_ynO3ZYItZ*F}~RK|LU#< z8cUV>scl0|KqSx9x^?p2OEcDiMGJ@R)rc4(T}M`F98*iX@#@p76MyrfiFEC~3pFqr zBlY}yYxO?_+rwRojOp`NYz^lhJ&ck2==6gJ)8x^8P=Hy>=LG*Zic?1k*a@05DL9}>$s2@|g$t$cGZwe7Tdeh3#D$%9@E}cn0Hwl-M5J&)EZeZg z?%|T-M=+StN2ab$dBQ3$1bu7yAjBc9YuQ9_YT zh%sDs`j6oD!vy^N`1ZLWF^3iXhincOw;kp&>i7NQF?o&!-;4eqwa-8X^L8V^sMG&Z zGG;jNfH9i4e5)R$@cKV_blffcmWzj9-x?8!IoXhJ9H{BHfCS4y=Gf|(zDAmG&Ll>%v^g^8+H+kY56aX1*aHX3 z3Q;y&em{`bs`OkAUUTC$RZ!3V@mUA`bIE{s26k+_5(@b{?7q((vDUd=Dl>CkkVAq_ z|2bq;s+^1pW#uD34?Hk*i@NKLKGiR;TA~RFE#VS+Ywo7-_*<(OF(i0><%1Kow9K65 zEqRWaA;oiGz>#Ho*_!Pd>xl9n2KtZ%eTpy^IMrtJsI-Q|`wnR04;(R6i|rzd`wlUZ zI|b;SE+Fr**Vlxzj~JpLW%{BPO;CC7i_7(!aJ!vx*ihOgE;|Tdn;5+tAB(36@i|T) z;y={eBd*3!;rDZn94c%`zp!KHE>-0RUtJxhFWH1J31!xP^s&k6t^$)0Dr|2Yhfke3 zhQ;8kaYjHqaw}~V_a6!;11Nms;z`wzhX;eT^At5I7v4^*pBbrG$*WU*-_~mCD~v+ z5W9xlV%3k43Zst}(Ek1{bG7VG{fc$;KAK%$+)_K$rHirnr}%x>S&#>P^GN6t#i01p@Z)FSvP2dXQmqIReM-sr#zCG3+|hJs0w ziR0=N@L199kSW`)VjR4oNQ;BZ2~~Hy4vd_CZm?(A)egvH<6gi;13OShWhwN=jmnDL zej(0;LpBI?fTjSPbmR1Qf#6g?m0OrC6+x)1SEIs@HhKPF!~1oK-B#quQRFdAeTzy*xSe?$L?C!i*Io-?LjMWt@b~ zqQ5<|gm5$-OvA`Q-8E+w0-aH~7VeQ-o?eP0`{85nAI&e%Sg*C-V31Lp?-zH@hl{6v z&eJL43b|0+Yd^VtF3n8IC=u)Pg>%MhV#Se7J;R}U^y3?!To%50@kHIZ!&L+q;8A-w zrXc7x`qwkdgzXxIm4`~!uBIA))wAb^Y7q;FtSP=9b> z-!3TAqWP-;)=+9h8TSehjA;%Ai(3)7sKh;$jDLB3_-8Fpn%(47;VP4=q{htp`62P@m1M?{qaw)=M+i*J&Z? zy{?kE^NhG55f4|d|6MzE3jcN9I8AFYFVzh6x;nUDcbUH<`R|V`B?0p&ATDFHI?q@z zr{^CPQ!iNB27D2K>Z=0u=83BhiCuqo+X9()ZCU@tl^VV*fD1Joane)gRjt-e|4%+( zaM*2RFaG^~ixTt^>zqK9c=(35wzi_tps#jzO3y}Y6@XP&@dW6~tthIyB|bKwiWX@bGhs(j;Q_4O7`!T5ONqiIT**vebG&$6)^I?ZlM1&GZ|eG)-cB+zfD`XeCReti;QrKDUh>Q1JvuG7 zE+kJ#dR8cS5R#^g0gPnD*&B_jOmbV(n5SWF z2Z|y+pFv;RMYOZb`uM=@O=L)Y;<|g1y*RUD@y}2Xh86W+NLD@+(dH27s_O(c%A87MFuu*QJi_+Q=!?I%YthCGHl5e z{pWgCEz8x$IX=?=ZbnAI4keFRQdxHT&+YWIqVJTw(PS!WfQU8m6USvHEd`nDV}D=H zD~bK20+!0cRlPRf&#hg=1>j{3_4=RWoCY*dmEFRZckHU^vHe$Ot>;Z!+Jdkm3>ME@2F+w_t5jpjMaS`;u{_sHT{@HZJ>Th)-A`!d;; zBm1`1aBJWOoHXNyURxc&ZoL2C!Td`x?%Q{@@qXg!`prEHw5^D9>e;nHv#kIA-bG<& zTi|yWY}DiJh-o=^_x^OfxNJ6V*;zj)kQ*wTdDu|C_TB}I_G6&dZr&+CZF4{>fD6QB z*d#0v3f!Wf%hqnsa||-udu(3;U<0J@f!-FwJ$3fR$`g*8(j-hwH@f5bR%%?^(pJVEFogka9?o`YRMNQHq|7RBH)32yYd%4FhM~m0{Zi8 zOXH8ac9)+tTJwjk-x5vzl8_z*&LN{uBCAuO6KlrwIG>=)%qGwsK63L7JQt z=_r0HEKn`iRxJ;JyArW)C{gp|TWdof0q}@T!>Q93r>~D$`UiAV*Y93q`%$YfHml=d z1^xbo#|&qYB|Y)x+R%~yfBN*Xnl2*cUTdfSR|z0Pa@qG}oa^!*Xuvr#u(37Gq7xyuKv*O`r8kF@Pl9M+_`hdfd?MAbNTY+wa)baeWjCK z)<|12ljTZ2Pc?5uZn3v(8_fU{6sX zk_~vUhNU$+(gE=?wY&m`jPA*LZQ!7+om4D+$P7p7K>nW5p4C(h<&{~uZ1IcxD($^E zlWNA&P+_>TJU!dzjgto>X=X=OBHt(VKNPE(0B?yI2`L^Y8T?QzPGTpFd?ND5g7dAo zbdM>IM;dhRAj#vO<(H_}EQ>T0M8!Q>;+(ilEZ6x!4$HguLN=xesDv!Ox|4cb#w*V~ zA_GPVHRZ22So=*OZTLdD2e~nKlPYB4yQk;5Q^q6rl`V+g?w`O^Ldsman!$N+H#XVZ zXGF!_UJj#%>#vvn)yz|b`Bq=#3#Nn2PP~3&7g(kv$KdP{7 znKY=dZkzYcYB9 z7pMMY@x+f0nADf=5F_)%)YWBg*>3)lH9*I4?WP@k&&$i{haVO9*{t=mLm7FAknqrCe(~`m^pqalP9HmYH2vwp1t{pu2tHme%+IK%o^<5oMn-JZ#9_U} zCAFTucF{xufi3ig0GtP2Sw+A8%wF`1JLZdfX-96G$+BOsPISo$Blw?>!Npc1x2)^f z01ylmK=tE)%~e+9z)AfTfT7gROEcGVA7SK>Z%UZ5FrAoVaUJ`g7y37i_ZLl7(BgZ;#IO%sXp21y?ij zd0l+`aJ?6bULy(WUmsematFhNbO@IVYqm>3CqNN`uWx&%Ii6lDlUARDjV6jG-~S3~ z0&Zo~)esq04W8a(RB!sB$Ob){Ji0F-==%K!4N~S1EDcgCT>I}u2rTEyl#_q=6qnvjI8r*ZA1h6bq%*Z zvy8ccxL*IyK73f%vb~M(lQ~edu;~BUM+^%{*!kM*jY*HH`v2kgjZ_&9?9(j(d?HN( z70?p|u<<>j3$vGONva$5|8&`O;G*$Ed+Oobxx)?onQsBzx)R7y*HiJ~pGL#<(R>NB!aVhOVG3$~9B&Nv3o zKolQC2B0RxP$#b}uGCnEPtrmV4DbebHJJ>FDkW#KIZRJwoBR>)R^q5^DJ>5V`R)`7 zLm0RM04ePlGtdhmZ-$a!VjPu;yP#&1jWAUSrKgX$BZ(xrR^GPfkvE8Fd5OoPG%TFK zUI9~vKpL_v>@lei9NfHA;}ytey3OBOGESK>tbpbWpeQjsrQcrm-qzF-E5}*-l;9DU z=6Q=s6<0SEQmlZd^2MwRj-gHS#b68-5->x^q>rH(moo9Qi&OzuWh)YU5ZaHOEigr9 zQC1;1Fi8pXq^{ytdgk4g;=&m#4A+t%1}e8{`l1&8>V*@K zJX7P3@cH7^t^C*X^D_@0 ztXa9O%*vvbTNy#_N9@^1*9c>PVETnCx4`wtU;EpPq>)j&gZph9-P1Y;THd*R2o&1Iy8KoCEI*O9G#ngG=$!epWL;p1c`C@Hfk zGw3o%gu;r95{U9)G_?{8*2zmB-$rz8b2)T8cy;dXng-k$V=9yr}AE! zu~Tz2*=w+{PiGu5gphc3VM7*LmRs@vX&!-#k&hPtF9x43%SQ$ zn7)oN#&F$v{YOqOuwdW4advLH*MH<7n=-BsfA^+YpvlLi$TXHE; zM!hazCDc8Lxc>LxfxgPHAy{l$hGW#h93ZP_>w8lk<>cgEHKzjHft#ze!m)5RHvWF> zU3#HdeAoBXl1vuWDt!&Ekr{~w7e8cUoHsEI$#R*+<_wnN<>lY}EBjlK11=FISVzm( za>zy=bVC$=Vaz0;x#GP3lQXa;=QO1?TNV!8SPO*O9jw^Wx}y^lPx9LYQ6b1 zZSvkHtyN=(^bFm)Ht-`;S2BXm-<-37PdR8XKtq_ZXfro-Y7n+%jh@6aVIp=42{ixo z;37uerq{)#2Da+dgNKA^i#9Q8rs0S`VqAtab_-yQG#^!J695Wafr#${F!|E?6Bvbf z-1h-)pfn8Qs8 zwys+j7MIfidP1O$NhCwrc;y$EAJj`kE-SD} z(*Mv&1_*)FVwXerE)5J&0+2FP0FJPLVXL^-kjNBS&r!&C=gy#k^O?5ewB*SHuQ+v- z)(jN3E9rNfTk!hf)Zjz`$;cNan^iptiIaD5ry{B5s*O9ei1mH1uB7>zoxZC7$TJ2O z?)K-JQPu~!$+Vq&3m5^jhFnkE1>C><#%ggH_X(dqV=RkXkp3;K5g0e5C-|HI!XN!> zPF6Ut|0rdH1e|a~QwREw*g*izyPjJSE&{(OT%3U?$(c&OS_(ZZ(T+I#Z}3d zoH&Annbqw6m^-GcxI(}oohWk}pX0#CYcn^*2PRd6%X5F3L&)S0p!&B*7b{@J%@ z6QfZ1P;s@}7z0rGF*n4}xv{aa$F^1jn(cQx zu(aTZyi1POyD&R>A+g(r>@*CvC{s3w?(x9~GzY3+zOwJ=?SXM&1c`hgeUdd9 zQ&e1B_I`55IfPDmEEN8msx(NJ;9J6Wq=bZV@>v;JRV;261l?(E@V9E z+Q=Dy8052=mjuM%6VK#S-_I*YMkm?TR%U32_plAWDK4?1HrMOxrB|d|=;hder`=CzsN)HQQWU8A0!1ciGt^AQ>mB zG*DM=)!4TSqf7~sC?Zw~HTE8m&o4fHB+Y7W(b6E0LVq!?U=xrK6Zxzje`9r)!W3aC zjuEB{j0oa|kXamgj*tZ#b=1~x-k}-UZ+dcx8fXgDx$@NuC(_Dw+cY@dGo$uG-8-Br z+b)Rc#c69bN$B2V`h^2_>&r{U5Dw_mRgckwo#UcMIybP10uut}Vd|U>`t~4k9e(ok z(e$^6mxR{syBMJ6?iW{RiUJ4)#u&`f)Y%&}X#4!5hw}Gsnyp3`H4@fMW%Y*bI$n?gj6P(lED}YPF&$K3BmKKq z$1G(1w>{a}hYdxsZPY^4^$Z|rZ()VRb*juE0_r!k?9$W_{}MPK1hW@f4mtGuyHF(1z4k zig4XACS3n@%5(!$16Qn^wc4>xHa>9-)L)SqESu=mfk81j#Ys&0tCZ!ZW6)3*Dw`YG zc(DnBI($Y1QB{LumXRtT!P%;i=b%wCoPdPCzs<79)}?W;Ox@HOlS3Rc_TayakC`Yp z01h|UI_8^@=cql(HLN<2d3S5fB8SR-98*Dc4)H{*>Mw!eJ5d}%5(J9P_O^-$?1L$L&W>p{wy`K2+lr_i%{NM)vaAr z`a$G0ny6sAz}4ZZ2q(@H_YBHSD^z)T&wZEOPv3l7v^eTfT7&BKpWTYVP8J_HYA8SP z)*1>fW-UL{CP;`b=?TMnsH+Kpr*N53-h=yhWt0p-@Net3c+4LR5x~DiW{g&*rQ9tFvEBwap)scR}oSl zA-5EQ=mCa~-*-?Dh6Zs%$|PCFc8tZ9!oqCZ9zjK0Ev;*DzUj}C#Mln#-BnKkZr-|6 z6Oe+n5f>D{I%|U%zR_S5^m)QAvAO1~?;jV2sdu-|bl)p0^&Q*`Zo-FNT|@K5h4uk) zodGPMkT3)ZP=bV}w?4fr>?7brKqLcbP7#+XGI7JrcKnn^Wnc#M>B2|v-4w2SXfZ8W zv$e=O&FQ9oUFnKbM-y^kA=U@i2(v^>#Wgr`a4!L&T@iPsaye%2MzB~c0EWS?;QIm` zQN)=a5Z9yhIYDSs^FVu#?icnD@OtZ0&2aarS_34a?%^xK%#0N9gA=0wUHgvfi+Xr^ zYHsWHnobTBF-E6veY&|r{YTBeRv8-tocEzF(F3*rBd zsp?=S?_7V;)aB><->og7axcG77wVyX7YmBa1K~EV9qrJovLUK66QTY`25$Cyc`r6I z&k1u)Iflm@c@J9Z+f*qjWO6pvp*(=fIM~!7s`zuy=HYdgN*Vi*H^{guXfw*ZvZRNCd9oyE>2h`+E{R5xBW z<;i+XWk+AyTDQ+*-^xOa1`qDYSchy?m>fH0_j2;c@{KnAKLWL}Gxx9IV!*!ef$?k=?u_6#5Msq zy|-|a0I*eB#s{e;zVQ3^04nqp9bAgSS}9O`LR@(;)QE$_zzF~imk3~e4R!5Mh9%9- zw1hCgC<+BX{^n}U%`|LacdcdDR~S8jRpg`sctzPDl*~!fCo@@y8A_X{b!5uldQBx)$-x=D8Tvmu-tF=)({r{){kM82i{o@0RmDQ}*f5bWA z^XZGW&{-l=l$Aj{e)z9B${OK>C|F9cqV@XUNkAFK2C-~7Z77VL0=u^KoPGj)k%See zQZ4m@=|7T^jt~$Hw(nn0FQdh)S}XbwW(%42F}Hql+dP?9TeF^a7UmGAGj~aU_Zrii zOZ;9{|8a`)qwgCHpdY6G?ij-ZBbu6;HX~1!%%%TaP`THIQ@xuc)B_4?XV|$OU1i!Q zttQUUb?ic@8pIr1qn)V-PX3$K?@`6&Q*2(aA32C3S?LO>DTXyI{*D$+poc34sjgjQ z+Ml=C6(B(rJh>M8RzyV(etKCZbulAD(IC5-OjTfN_bs0qtse1}GlYTMD(=U`yW(sL zP(I=2W#EmG^NCZ(<68YJeO@O&Z%8UGzp^7QbRoMh<;#+2gFi(`lu0RS*N3`SX>+!o zW+DUS{9*2S>HiJs1AkJLjK&G%88gb@G*GCzz^Pr|iw;)wjNLDJTym>QzYV}U6{sJD zJnn%in7P^xy??FB)Fk8<>ZW57J#l5++;pobPeT8;R3v<1YZ|wQNEIo?=THGGUbKa7 zWH*N#Y>any-tRgckFCx|tG?ZZmUewB;;vkif6Ftneu)g^=+X521kgf>53t-;V3<&U z4uHWARK8!DcnBEZUkvd-9$8`wB=zsznLhHqQ88X=QHw>?ry|3FZhv+e{nvRDG~wlT zF@_U{^$H7CZsE;a+vI+IwQT?%SKlxjHRSSID{e1!-GGULfdepk?2T1yGX+T|;Z}oN zDHd-ouL(nYhmV{xk`aRi<_Wd&$}#x}8ixpr^O-Zp(aa?+dawlLSYmFWI0*#g&}CvE z;lf+rqWPWz+=wqvU&n~Qfh+(Nzj576ajWf6X?)_eFxY zMOTXJ6iH9N`S)32zX^R9$NCWq#A%{})ta|_Yj}6zMg}`4>`D;%iHo*Zz^TX)P2Geo zYYA`9-@u4df}0Y7?e&`pfHwq#gHaMdnt}M}!9BwsBYQD|{*j&nF?9$=e@#Fy> zXV!nPPkW5)9faLu3wZbXkKAQL8+!y~9j~>8&`%h07=g zRN`aW8&3Vp1!%DE6z2%%8oAgu&TLR-^|;8j*jx{^(sRui*>G`P&6KZ%ZM0UQ@x(6+lJ)>$WM2 zEwsL;p!s%j&aO7SCz|(pU z;I(Gcc6#cqwHkN~z&3r+W?`wC_*>V{;0>F1g$s`#&d5%V6LL5`b z3UEs;S+!N;s2+KJH66WoBOkd}qZsK`;`Upo=?dPQw@Cq2(fjxkJFJ<`uYW8aaR)#_ zt+vPCSfhdQ0BUeOJ@fWj+IK=C7`}P&Bx>x}EgZ8~ zBVYg6(ttctjeWZi@@(N2e|>Z@+??T*0|zlm*u=Vbu~;?IIb8meH>t5tS8fqd`M|5o zC@l%v2XWugByoA|H@**b>dfI5b(;~2DKqjj_3YjNwvd1I>Ah*~rkz?|#b^>gX8`u# zak~4(6H8bZ26F=T4K7&>>Y>6^9x3de$eN#hcMZ*2x`kw%5E!n>IE~%PS!!Pk<-)?$MdPe%*AM zwy4EUDP|q{po}}l3ZB`n_kQb@+-OA2C)8`?$rrCF`yPiof_lpI`1TJh# zv3hYm3@(T|w7Yi(L>ZJMaA5|w-WVoeQ2JUig6XNI)Eq2zPdO???2Nd6C7$HV?Jul> zGY;&xr?G)t#>Lu~WR$W7*uAWu(ll#q0(ruQa9=xsdIz@KG(xF;Lk} zL$SEM!HeVQ4m!E9N;GK370#7p7&G16+eLOzBp7DmgzSP%)zk;(Iv|@STlG2RbR;=+ zk-WE|$jqC6KW4E{WfKs;UCdM@)lU&RSdloQGPOC!iT^*Ul2?oCWbg_1a3|QFKq>2p5wc6`I zsJtJ05rG|*j)x4aLIEzt9L0-Mm-7N2WtD!4Z2AGc$V1c5&IMrsY zAKbsIW>QC-&!@$OgP0p(9D;x*1~af;4CIvYeOVYQTEBUxum~Fh(h1;%*|Ad^_2|49 zM@AyW*6p=`g1=MeuIJb1Y@qLbWDiYJ3P}v=*A>NrLs??u6zJ56_^NZpG2CTO$99FO zb2f;v?gIve-zRN@;ae_%0jKlsc&=F)8z(9tlVoh?$jx<`^Y|;G&80IV095)|ERb!cP1_&jRL?aSVMrX zC*NM9LF7HVb`CwdHE{plU1+c{ASm(+_Znijri|-HCm%4Fo|0>kfgAwhfQkLJFgCK- z=jBR!6({@=lQCwUv`91B4)#x2t8nrGO^nhvkl_-M&9-f|WTx{vr2n3G^e~1?Z0YI< zD(dwgpatL+^%ik@4@p4x9oL6Z;26m}k)0g*zXYtd)Bk?GJM#yQ9Ewst;&R+p@dB(9 z5IJsW&#=$f-i*NbhhASvYgN9{)j3q;F910VAJ~Kc=dUvaOqcj8(|_a{gKO`Xcg?Tp zKTeb)kJVg}D`MinLS;P*K~J6{ADDn!VP?D1O>Z|>^naKDy`%RY$S7NcIV1gUr~g-; zHdfN}dR>WmiFb6@ z6IFm+G7`B#^=)y_sK~+_t#l9fetTC{rnTx~z>=sc4Qae%vT8gcbQ1ct~F~u;&C>{8rY-N-yn_d_%5|gEhpyTakC2 z1vlc6oIBEA>g1Dwd#U5qZVY_$9gxgA1JLT`pIsEMPw!>DWOw5Nc9U9~A~Ctx9I7f- zdbAt%I5b>vSAh}kyCF*^RNP>B4B})er<3ga+yOYE`~>GtOYNw>pZ>DPRGyta&2eEx z|G7+G*O?+e19;|IhZ=CNiTeok>=2Z_L4X)o z7%(YqH8;c3%=&L(FOVty*Z*GN#;3^VVqwSt==K-z@#2j2;fBYTDC=N-L=wp^otf`= zc6plfc_j4nkDoR+%v_99WNTF^J9pxM+KG2Qzl>)uX`x?!Y9E>|uC(EeT{X}h4Bi!| zj7GxGFlSi{fAxY%D3~1H6UNM@GUf?@*8vmz3eX#%aXhFWcf!7d6o3fugey;j@h=oc z4{o&{T^lqwedUJeVmfTkMg+!(2}67Gk8YhCHnb*&Ewh!eCLsFvvpeSEL>|}c#i`<& zLLAw;%{w%v>z(BX7rkS;*4Lvl~JVo}$wBmGBwS}$SKZhLxpnzL2?M z?fdZgj-D;trcd*XC(JO2CyTje|W+wuGz7}d1U z<-t~k%!X7q!~W!q!xvmEW@=_#yC@lU_J)<(+Yd7_fhqyf_*D~II&z{+4BMvqSQayi zhAs*&&kJRTvM$U)r3qPdt}mqpRarX0XAoHJW0q3}JU&*N9A?Y}h|bn%{5xc*4Cs}% zlt)(pa^1LF+t?&vu&>$gs%oTNuU-yQ`0Vaoi47At3iXPcImAg^^ zaD}|&@;P~irUD$?N>c?!p#Z9^ijHNAGqGf~Cj)zazPQ$BnfqB(K5KVwI(uDYLUcYk7Isj4DGxiGCVY_lW@_eOaNIGe<&Ar430~Elh!(Cx(C)^}Iy>c== z|K2*f^_gbPoph|QDmXQVM4*T5(MVv1zJ2{nE$b3vqLv~#WdMr=CIlI%e=05_xav$P z!1$m>-kfDyz_x_@Us=J}-NPjW7G|2b3lE*#pMH4rys&Qb_SmV z*_x-x_Zlw%srMbwq<{_+67H}gCl5rq6nc63dX0NJVZWyE)7$0|WjA{Pl&2puhzAYm z9>iUk<@bdTj8m2fr{R!p0x?F2BkC%~_@w=sG#M%iG9w+s8HWzxm&J8yH35;V6LDqd z96nTQA`a@`9SJbQD>K&df|Xlo=gv0TKgF>@w#a?;4{=q_S=OpO8$GzErj`)bC{7p# z)Hs9-3}EwV0b`JtxIcBU;qv>)$s_r1!XTn-Ptn*o->fDe#ssmP0`Pe6aeXwM#f}{{ znjwG@2Mkc>v8@)`=|ASnKI8g@U*0vZOkAh`Cm%G30jLo}2KO9J3nIT6@;NPEzawnh zzKih;99Ho95AgVv3nprYd!+t&_T6>*IRN6hM-5BBYKOXOADy~}-dV7zo&EzD{g=46 zZ+muGn3qlpnwEey?A*CQKyWuk{2U4*d;Q1Z0g+c2Gq^kd>A^+n-n3T(H-xVXP()#8 zWWPsw9&AEP&rn$VJD2Y+;BlMg>w;|S^}qJ$nc5zJs_xypw~QM%ZtK*kQ+Jt?cd5@) zRRL90B?3zBsq|?!4CT6Ntco*ewv+`Aq`a%ocGk95#A_{eKzeS)0L9fQ;!9$0@Z!S? z81d-dZe#|qbi}V^9&^;a(rv9jRgmUZ@+z21gXUNkyPL7R)zzeqO|fOHWJ|Qq+^y;X zDRtz=v1i(S9B?LUXko*M>y1olH^f*=+n)}CzmuCczn|h!sKPW6b-+qdcC|V%X<#Ku zGF#X}x&^l~RACo~LfBX5n{O<6D`#NM%Q???2PD#rO|dv-Ue&Q%21Kab$YG@dLZ}3p zv!4*4gC;0!7AV#A!rmdU%ToEgg-i`>oW zL0iTnT-E<}43|yORP;E_6gMt8zM4Y2u_YU}YQ}S7H^`pRs8c;6s!RncteOW!=@YMG zMAV)!D|fWzv%vHurwVX)@5fG*@5YbvE-HQI02b==?IT7NzzFL0?t)kX1g4;fQv3cb}OacXxMp7+_!rTNY=r#nu^1j#m{SSJo>b?8!&5X>*IC&y6Vw*50w?DTk?B277FFAg=%I(|Y>Vn}r zdf&d{ikhz{zyLtjZrVws26v;M+_NC({*gy_l4pJS>d8Ss91A!QrfGp5RY&4X#Lgf= zCfEtsbL4EAv3Q$?2H1SqcU152DY-vfY{)vEfp{f91bbg|@(4||iHz+(ylY{oYKv7R zNKl{|r?ODy1$F$^Z`x&hHI)cXJ|Z~$$M~M+pCEeQ>7%qp;BCU(9KU~m2Eh51fEFuZ zbCWP5o5i*Gwy<3$WQ&I@cBz09uzN^2Dr}QZ#eckN zBJ~tT^HpILh2bmoA7g&$@x!@Y1P zXc6#_WUpTTFFa7CQerZETUMp*Z+@QFix2?PU4H4+ugs=sD~oE@BBFQl7%@c)Z_&Q+|qH zV5>#YAaA@+0cvc44E12_Xbyq{w@F40#MZ|#f8FBU(sqS1aA~k;u`$6!oW>$EY}SU< zUMG6Ru55d%ynPIb`H3=b090}EMk+blMl$dh8Cu++>QP$)?#dRUCDlbt=wgFcg^Ur2+KQzMg#J;eJr5b)0LdTSRqLrYs{lNq{Q0TIVPN0R^vzQyYYY}n*1^q+d`K@&->8X44-|$8?mGY+ zVNUonmrl?;Tf>A2TePw@AZL>qb;t<`G!fJeK$UbYP8F1h7}md=g5>@(&R_x&Xuf`P z8%+~{wPw>!Mx5JE1teFXq11oO8^j|axoI=~M|N?X{zTdf)Jepg5!v#bd#GC7Ax`27F|3^;gOOr?R)ZdX(1AxlwKZ5m=ahS43pe}zkg+ZaOi{Lb)zY5s z799H#Z)@$P)Rz35(x_23w>4R0vrJi8$OB7f!wn2ouFv#b_l#gbp~%Q?a)?$qF6PNc zlng6Hypp%c@j?d;427nCgp9ikoRY~h4sxi0SdL&tuWPRWS7GP^TdOF6vdZdG20FnE z6ea09Ii~if50cB4f&(SClb{Hm@?BjF85=5$b2_$>^Z2EvlSc!o7o5j7waw&}&{e!J zPT_=Fm^?`vzaME#vfr{>irBG1+T2h8xY+s{D_6voIR&J|QK&StKJQtKY!R6oSJDITxIq;sygRJyxMoUy@or5Eh z*$qEs3{-n@gi4fvRnn6L#xn4$=0KY2N#9KH`MEaLr!U?XCJgP)9Yp#6@YqtWSfZ+b z$leVGO`_34}e|~aB5H}87IsDq}jmo}Ub<%Ln_Kg#YzkOt>WhB>t zXQU4J@jZ(Kgmu$oroRw3RJA!HM!h^F+x+GqW@`!w)C63(ay#Ap=rR(wrGTsfdctnW znyvJOD<)}r2rbeaiiKQXLkDz0Ce>z{pZL)a)_^22A3VYClH z)}4j1LV))ZZ|)F4xDGD1@X3qE^ZL!Z#8tZ~2*~4aynhP6vtYBZahu?(QjpRM?zSncKH77 z^VNN6w$`*pz#5~j;Qu_ZNWqYR=YWFJ6NRY+gLKfiKD;05A-=FGt+ihNksE7(wB?5) zI{^2)UtFor0Ho?7AQ`7ca;_LgiTv_@l3@>=`V@S7%%(XPN_=i69)jzGA3k0AP1vc0DL#jNPfZqu+k{Pa zp|pm%v!#hhl!Tcks)0LyeUf)@*9CH*Ga3d%W*Gt&kFB&JBr9TIp3<(}+LM?N(~t}j zt4YT8YXqoO=c`5$MZ`zsW(odkr-r#@vaHFV{Ftnr`Hmj{6)bH2ol@zV#*iBaIr7ao z?hVt;4KvqtD1DPdA#D>_CFUrmypJ&%GbM0W&7B0^qW%ZUgj{TL6b_RISP@W?yO-O{ z8L^lg_l^2v_i(L`k0N&Oq@FS7=j2wzwaO%!z$>S@9nzxXB;m&-wlm7g1XpQ)FoMn* z8(Ryl5tQZ*J3Z1bvImP1ix5!*fXjfK`iKETnu9&Ms5xDb|D18?AkBD=q?<5W_lhyu zxOEpJF(~r;0LaW2#sLPsnh4c%!3La&Q*OfKJpRTSn!mEDfws?R0WM?vAV-wq>4|dP z!>_NUmCB}&xWRU705#&3Mhxh#NgV(AhJE<56GsH(FfuTSAaMW&#Jt@3!b)K%c99Xk z01YTngF1x^R&7gzxeU)!^9E2G{NM5{B0gRrmnzF^w_j@;q#YG zqz?;Q2PQAdo)G7Bk${pP-@Q=#JbmdFM&i|*A6*KUD_?%XaE2@KXZJ4B@<0Fnp{e4M z98F_~^w5deMHm~zd!ZkjTXyPcLd01i9mCZpji8@@@<4S#KJ)H|q#1t3fAFl)V2cQ2 z=Jg*1h6VftB=XYNM)W(LTY>fz z`af?)3qA1K8hy?J`CV8-VbjLa_~AX0{sYWjabgv$UU_ld21~{dAP@Pne)-@+2dI$W ztRo#HfbgyPTQsZxS8txFf%9LuVj|yk{uoWn`F`0DtXkiS?D3j^&FlYInMX)!3#Rq$ z1zYK*=^G0DM^HTgH8Rh?Ie$xdXa3fv`j5n|ug}?JQx1Siufyp-T;7S?tEHvIFZ@Yi z?HAjEb?86^XtIkd#8rW;gqE`PkG+cvYe>IWYa2P^Vwb1&fy^$3#8#NA&L)gAZ6Pn* z@vV?L5xW)29c#4;X6l_Pp3?S>diu&=9k_0G>XyzM#b98PJqojdsveezo+t;-{E_3u z$b(b|u<&VnR-Nja5am+Io0B0j@KOnl^C+9#tPSaQ=~*GWV*27(njj-v z;^bZR*u#lTwZ)knd*X~{6n1=8bnh67a`$QXqvRCVU`WXGHzXM|cc3)ihzjPZvXh}n zuj5xL3mFo7=7=^bu1r%UvA@owGbN_Vf#&J~?P(R@QeBv+45SQfpd~h}X{+tomC?^^ zmeUs#H^+t5>3_Z#C+~0`u6oBq5p8aO$*#{(Ay6|3Gv%*S_QS`qtEQNJ-|iMnrsZe$ zTrzi>^*zm0mrk?*AtC+8mb8YpMfHv|n@wdM>T(Np);y>G)wTJW_zkipFh19ml!^R$ z7Mzj>$CkCH1;nOTAk=}wzh4UDaKjm+v`h?6`@wDY{?kVZyRliAgN`^A7z6|`n2z4v zJ88D?ivYNUjoQ3*mw=nf$PDSGR-5yXm|!^y9l0ARkf?w;v-$3$D2*-(IWC3s^4zoma)+UMQdd z3|QN)ye^|%0C32}j>5*czpyS~4wb3Fpdfw4ZXx4PwD*VdEW{ZhKNVu35SV}Le*LIb z`VF_~4jC)twZaL!H|A~TDkh17xK|n2`N3CLH`V{EP8y+wu>bVbGW{FHkda0FIB^3X zF78iU7>7UpGY< zxor$)3x@)-2MdlC+2IsxzusK}QdxNYhwBydA96unw5Q)$7qMQc z|K}e$Oi!pj`Sv>UuK@!F(6njO(&AucY5?bZ=hJ_$hhnxCAcV-rM}@>W7qI~3gHO$h z_<&`%$+ElVr8Q$PWAdwqQd)^9jkY0>;0SU1X)Ftw(TnY(3}h-j&;6;gVVfAq*1T$A zj%`o(^nI_CKCrWxlw_C$r#DM(xV%W#nKCCLa=;{aoA&bJjDje4)MCk^bWFYlpvl0A z@-xX02GtOPk3q}hQnU1abVFm?o0;C?%jrwDJUHVM^1X^nT{~hPujJzL$Ftah7fS62 z#WNh(b#ZI8rc#MgLSl#f{HT4S{w3FEI{@H7AHO~6w1f;2r~A42TQ`RNt55P|^;h*$d6LyN^w4MYq}_}kOV)Bs&7OvN6N z!?FAJV*ml%8iCeG0EtsnC_IZCK-+fgMlC$BU_n?RMoAdBTuu}A3!nx70Dpsx+R{=n zO-NMwy_=@00sE)l&lcd3PF?9KzV`{B0i%EzFLB!uj>2nA!Z`8wAK#mg+iw7Zn?q~c z?x_EHUY&EqU>4v6Wb%M{uMaf{z?tgW)xJtJv%K|w(I&Cebag9ojxH2$5e|UTu0a#F+U^dhMZ(vjI zm**hJ9q%Dw=~3c#M4m6iYa#9oLEm5i;ToJacXI$>!aNf8P)}jPwFRbZ(VFc#X>srX z_4VFcyoC-J+eZWB*KBTU(El;w21e}DJuj{fBKJc7k%#JYmrYbxV@LU5rHtQ;;$9TM zrgBCPZaQzA?yP?Gz>)_2hpZ7B1=#^K;eI$Nh=ia3CWd@HRwNTOro|T zV$G`53YC8L?Ake;fAnBRru_aryJ$^7q^|IKD;ogKe}>qxIm=q~R4X#_Bc%sUOd`WR z;^amPTlHN5TvaCj>i#$}3+4^(YUFDB{i90*63^E4Uvx;b?f>zyWnsI>&QdB!zmeuW zrBqO+N&po#d(~ovQX}%II}f5L{*01JC%lM@T~vG8IC13zj0ifAyBQghC>GHKSP}p- zL&NT-q1YM3wngy7*~*8)I9G2(piy07`IM}$q?5@O$-+$*IPEuyoH48bQx3yUvPnkW z8QZ|zbYYH?cOWj0Mg5iHpX_f+7AqrD2Y3G**H$RCev0eUX6_MG4 zz!|?4O)dJByI*ezu}5L~d%+v1!fMC&lbkxlB&$>cch0w};ttcGW((=!w9@W3o^XsG zQzq0n{$4#x4Pst!GNAItHVt1+Bj5~a;z)=n8gFvgDvxh_E(OEhNLS-a6iQ=k4|fzx zYFgg-XzMF*RI<5TU_|$smoDz5S-dmv6Z|^TP9|ZU{^T}Z864%YDgaqXBxsJ=Os1A7 zF-}y>t2oj&F-`ow4?!2}Z2~OYBW#Ekxb57b19DUG;J#hM2hSd@E-Az~O%~VHEl)1j+aaG4 zip#=f12zao3UZ0EU2doF;?eyY<->5m060h(wTZ!y(oNu}_Nyc%cp+02uO12@}Lu2;lq0eTxW& zKCzBbjsR=`7=Np>ZtMFOiklDVB9P$mUvJ!(yNbK*i@%v+>cSrqz|>s~`d^=3q(SXq zMgI283LQTb=|y{Sa&FF&mLPzMJ9OkAuCKU^#yO|!R|ndEY;Vm9{+hans{0#y=+u!I zMR;GGwJ8FsYRwVGCET@cCBt3yp)*I*TZnxUaPXP{D*%(vUok?4>Pwh|~1{no~wGT+KOGRbZU5D9{@gOd>N%@zJG@Rs*V1Xp|tz>VG2+u4ev@n zzi)8_RHgpIWqFn+#$8O?ckV817+zqiHf-3S;`D*)jDRbz|J9&#MTN&sR_`SSKXtyc zpblUK2QZ4eGEo7t;%XU}l4u^B8MVbEf8RQ5Ac7q@a%PK)ouIK24Qzuo(ULP3Mw{Ge z#VjbMM4F{`WK>~y;nWZVSoOXKZ!IbNC+bX2ieX`L>|n#S+6%|b*&Qn2Y71x^rLt<8mh-%D{?{|aKs+e1@+wsfM6&ejr$bR=p9%4k%X z(LME&93@zF-dY$!X&fVpAU3PkZontw($tj{H&{&lkl7{IzK}n!bc+*XmQ;$0X0va% z0UrF{K$mSCFjuO~%Ixl80FIIzLIz`b5i;15v&p9^ zo>zc0E7KG+aKx$eoY1vRoa{d3JlhkTucEOyeK+JTq;`>e&nDEgd7HEw|NMa|{4al= zCp-Tke9w!k#GtpqIEQx^ZDHg(f_5pkxSKG%${o<;?(cSDZA0 zo_uGWvO!=J;QE5AWxp|f^yC`iqwarY4Xxg^ll-{hKVW>ma?NB-+n~YK^5N8ReHaDttSXrxq;sPDes|(%n+)6t6;DI=`$N-$l{)%8H2mlvXG3E*HkvaEv zjQiUqZF~OR4Ja|g`w45+LjWjT*N05#C!cPj!_-tWp6i605{a&0PegV5;xCh1!WPINGIZcj+^)|DFJq zU0-{?^@pr4l!2VTTgG3U+ggAUBcGyKNUSL- zKMmi{h$wX_jZ;X}URFgJ0D(4^-^ooDq#K4Z}a-b>!Evg6rE}6Ov z>V5Ma_$i)U$|1VT0y#HuQUb0?Eep)Po2|Fa4o`@2{hMhh3SDxBIN_S?;)!bGZUilE#x;UhKZkPr*d~;Fa%TT>`|Y9C1N?+?E%j|M92G)MF4l6BIDS2Bav%ES z1>@<_H`XRL#;%7O?9d5)H76Bz^GL^V|EsGMh?pc0T#a%puLz6srUEslbH%;Wr)MXP zQGx*)BY*&Ts(N?tC~lsWIPIo$3b~&~4(_IjD4%<8LqJeAjMyu}sDQb-`s9(?9%Ly0 z)dP#g__x}ECT-h-hZ_j@i)C);gaZfA1Yt^04{o1PJsAB)YKCZ7 z5$vsnmGPQ5yu0QEgDbU@uz}Z~K2ihYpM85ncvHaJ@%#1HG!D48n-dAuTz~o~#vy{g zJhi--OE}?p*yR2ic#haBB*Da*arl&eK|lmQ{Ms5qNtufU^laF&E4(p(6N4E%R@|e= z*pAwJ7&EvR5qosEfF$(S>pxt%mz^*oJpRTSO@~m|e*jq&X$IH?z#1<=2JTbDhQU1u z0R7=}#)SWQa1pQBu(Lt`M-S<)Ckdr*D78b^oH~M0Ul3W!;SxM) zp3u^^huhjhn7d*tN-7B;?gj=-UD7sZ!AOF6gNqp88wo%wFkI`jd@RzCQo<$lf=0Wn*999 z%uu30%(^G`FGP0|aTyE6!OyKw15_FOwWsgf7}ztZx+QhsjPfYwV`?tL0#rHqCH{hH z?!s)|-R?7YHvuNQhKSsCM7HUw-Y2Sqs3d8!$x%fA)yzFL0y9dm55KiL{U<8gOq8cz za4Ow6@BBV7fr8u?+g#Om5zX72A5%Uu#Zl%d7NyLM`tRjh{g(RUy^gLo=`aCNv6PaNbH)fL zY1Qo5C_8h;VS~e5an-#va|16Bqk3zno_u3{K-O=hBmg@EIgJuG;FqqNh=iZCe0{4HVTSu``r@tn z{juV{{OWa+w9vA!TH#X{k7oe|nqB}Y0g%~zSbt<8pHE$dRr~1qV+k3};X*oKY%eV> z1CRulD313de-(-~}jlH;U34jDy z+u^oD4MqSF1k=AD?$GIrwkbfvDMg&f6!&9;{&()wK?B4!E>2v#m{ENN&>~&JiTe-K zJW}Y}Bd@Pfm+S8K_Co)0a`THa4hSpXyU{Cl%fC-7sum7slpcjf?^MUNLBSEkMc!aiuEY z1o#9ix_aZzLjSvW>!7Yh#DyVnAK(k~0t_93)qn912UV>RP$llamhttB>hiCf{Hrll zB`EPh=+?PxjPhsoWs7VV&)l%6rbRBe?xdA0?}+`vLrq>j@VMzB9Hrgln^Z1PxjhC% z8lMsBxA4}F{BAqCOB_I8i?wRFfj0rw^D^`17Sp0Hew!P=f(jE*MaD@iL*1SZy(ItXpF9+yu+lkZ)fG zr8XuJQH1F#2Pv*a5ud-`UKQpvj zutCWOSGC=DvEgK(H{xc#i*ZTc^nf9?Gl|;uJjZ}#ZOEXe=5i^Pj?e&X($gusV)J|1 zsAW8C7%-`G-qWRLG;R>sg=5;i9dIo+l64?kW3|Z3Ed!&H&B}d=>kLzVY`KzTN?)#r z!T+c0C-Zl2pRa5RPM#et3JPL#O(kj%2+@~ zU$}B2!)1q~?=Z?ex^@tzW2H(P$M8|p4Q@5mIz;kPWaNHn`bGtwJ-T(E?|x)|4g5y( zQk3m^LjXxX0ZxaCn+tXCR>*T67chr(2%orUJW@*VyNk9Wd8MAFgsX9auwaOZg5gF? z7l0FzdOkaSy&mfa12j}vHzW{+yYl(>*3)~7x6zEnTha{JPnebKP8&%-kTFBN5=LBP z#K%qTuO|+Xd=qlR=}E*b0T91Bd$Wv1i^|~`0j%=6rF#q5dH1J0hM5pa!zM z<%y-$6Knc^`H91H4*Xddw7UM|{@=b~9|q9qFR}rP_+*ugQvoGjsIB<$t82sbC0qCl zmrtSxUt1l7;bLJHHQPSilsMUmZ26GM+Kp{t{kEMNJPxMw@6H=bD1eRFy6KCy28(CH z2|}<j!r%2mnH+Lr5%&XUj%FPr2f>E0VmzrHR7@ zkQGv5Aaw=6>Q4li1MutI?uz-{iEuJ?+RsncC-&^wb41Lj4hpcW{U;yvvNAQoRAs*wT=|N@hnItcZIruD|KDQwAG#utT*r>>Yej!$V!qf(uF~F2G+% z$RQbVA}ZsKn4A%8M%OiOL#?eGLYZW-_`Enh)c^yZIj9*PFnnFE-* zkR-WK26J_xbU%+#UO|M=(}98VdXmAY4g6MGe=zF?BvXapiEv1%lTJUd1;0O|2!L};QHbL6g7NK$va>&$ZF-+t0=P&3gCFD zxG}^qho|0N%O)cf!#!|Z?{LugJ`5MkFYaFyHg4TTp`Yx=hlsoKv_l3mzz@LYWF9Kh<0Fw}fePHu85qxSz0B zUDZH8`|kSi*cLE!b<5XWS0TW<9 zkOvIOLxl|t`;Y6zryVj_%lo`IeN$MrZaV`o{#M*tYd5zw0O`?#yD?;oG#H2{nl^V! z*c00Mbm{L-VbB0p1eApz+`d5B71XmkKvo@cH-F(TWW_wLu3@=!;r^DqX}#fw{W<`4vcB zTj)O+C_H<(-0Qajv}3A?q>Z1sY@)JP08}?WvXs_rZqxU1LiU*b`f>jVo@aS{-Z5#{^BH#I{AOP{|ct6bn!(4MU9J-TPiZc5LcZzQ;VHhyCs1sfK_OE$7Zh# zDyZ~E6n}?0OsmC8F*%=5LFwm!fcL8A(M`3tkF*1%JPhJ=vEo&C6QT|71~sbneZo6+rRx~Zk4af$+2TcV(i?Jf?)3Q7I%y4IjErq#D_T)u@PJ`{EUov3H;wwP8!^E{1FHBmr>z~U~6IcA)DI;)CzbC z@*O@%+=5`$;HFw8AosLG2We>_1hV7Ap%&JrO8=2e6mGwD0zMZCGXo%s98t(iOZtDsNyAaT zhwc#+FMmX{J^gC+>*lyFr0>U`4FnC%*2SN4# zbzc83K5i&OzBtWy=L;+7Jz*EU{v+>KC#?|BQ^3|vLcL3jFA~+7{=-fFWdX}boq?Ct z{yY5e!`1y)l&L8)s%PNhVt*(ZEONWSWb&&Mbk*sy=&Q)~GOpN3^Nk6yRfm%yE$|MN z#yteL=(AfWqfz(3#xV!>cd?)*o0)wU)R@1>h)~~L%BIm+pQ_!NeKA8FDBUZY&}gL1 z0udFPdgo${_l|ZdN}C;+%ipR1mc{xICqI#6jEq%rK+3T)nchh4Vvj^@T14Z}Bz7*% z8A?nUIUo~v_8Bz9@e4+#q`5)qM&--KD*+;(UySU*!9OSSr1{?LZyBZN$Bq2>=P|cU z1{KCJ&eY)AMO1>-kWfcjd9D5K3vrIsY&S)4mjuB6k~{?E!eoGooVzfolylo=2;*7dw8Glezu*l?tfv z0?YHt>jP(v;XgdS zRFA6T`=7da9QVU%uNPMeP}t1he*Zq|vRe@WRo>iCtO+;@hB^T%v;*Mo6F+~45f_D` z$w&hLHyMBe00)53Kixc=#)@IQ@}%LKx`E=VaoQn+G`Rey_bk$Y=1T>12+N}dqg&f{ z<7hu2Zmfp@K*ZDlIKA-Rh9FEv%GLvS9P&(o9YcD65d(IDiD9$@r`+%laY!FMZ=8ZB zq^dyfDFn~k$lzK8ga7uC#hQi!*~P`>#M9<(hJn`u0XW%rm#{RmmS}k&LOj{yZ|>02 zE9me0<tK1hfbnNUg%GT_vt8ahLLQ?`;4(6izr`0RQZsg$lGpE`0m}{k81?SmJKg zyk!r*vRYk=xZdl(uwQ)H2_xty3aCOcr&T{ich+rg;~(9AD?@~P)%M6CK9P2 zaBs)}LH~L4m-S!VwOVAk0#sT5aXRq${Raeb&+!cD_wCOv=Sd@ahm#K)z$YI#h>;K# znf9M02oyOz;@js^LfUiZPmIG_5XsShbgE8WA?ufFBPV0tAaa(ZPkAGjOrZRF>KqFn{ju$p3=~yo7N3bb&K|3 ztBnB#)puv`Gj>X=QwZ#Dp21T#sENVxKqj>zFEr(=W<)Yji`{Q$?<-2(puDb!^36&z zW(|Y2wZfs=nY_wr|J=ghf}$(*8K__;+`>v!lefJU2PgR86tduH%I3!I7r)?6t>q8N z4`cxj{ZN=$@-u}vrgA9at*D$Q1<*NErtJ~O~*MGAD+a?-teV&+sNX@92qLO=fo(SBd1T{f9kHw5}Adq@=`de-x_Lak^_- zkE$mm;MQD5#Uf)srvz4JRj9Tk+W6TowkTyR<+Tr|`Hq;}FU{9zAT?kZg^iJLv3iuL zO|=x@m^}5C`OPw!ozE+mK# zuD8Rd^c7<{U)+>k=%W{mqa|xw6`V|8yhWe$#b3`*Fm;)L$x7rT}YtQ|18NWr!_0Y+^rg*{!DS;v>BL_+gB^W+;a@F46V zqyKgN7f{OQ9X*8p=fNdGm?U1Zsx=79rgaE^@X>*UF`qcRC;$CV-;E1-ssD#g>ZgDf zf$fy7B@Yy4?kZtg#r@2KggL$W_WAlfoDQ73Vp|aK!yk}2g9M*QOM#k*UjN4r>rQ7L zI#|<1%$IqEF{PLf2$#W)yw9kf8Z-F#8*4R*Dqg6Uh<|4sHiU4ZbErJ~jrp5{<@v%( zSSlTW88c=ivu+vHyHj=gFUC~8S}1VT-cUCLc?qEG!O3qIKO=B3>rsFfa`=Ybf?bc> zY93SMn-uIu$pTOv84#0??Xm5r;WkJ2R|bmm9cpniW_t9(4$Ot?F$1bNGu+PFA$y{t zfh9OC`Wr&BIiAs@)DIhm zH+hbk%s8h!a~A;vQ=^M5%bObJhZ~FZGYLLXBl-O_VX47I7d)WU&pq^seW229>L^La zTGn(alt8b*0--dZwZ7YDp*~kBLD0;)uruV=%Rs(*Ou82}yts5nQ|)P9|BLp;b~u(Y zP}WOMz0Ym3ey1+Sam_NybIdS2yLKmHhO(Z;f%uvX;yA9U;qog z-@+C#j^-mT6_R8={Vw9O`m4+97xym?SDiAP5laQ81oivug+Xhf62YJ;HE-o%sCa6X~6J z7$KGnIigU9uWJ{kPhT=o+)BGp3|P|@#7U&%-oJMz`nUitBt%7itFw<7B1}~~%kyH2 zfL?U{sUzsScg)vR6kbCRAPpBRTyLv4?F^5-v4&p}-~$&O#^*#~aP}YDTk946NEo!7 z1T)VO$PT9^F&1Ev9(ZLHy(5gv)|Op5Zb=OxKUi2q0oCG~>#ZpjUY@Zr zj1X5XvWV{%=4*%i!}k#5g)u=o0;DkjQ}(8~C=oc0#H_;ycBO}3TPtqRHB{IC{=GT} zkv;$EspYZ6jeSCzVD{f{oT?!E=Es&u`&Ln1|HlvO8Ll~bxH4QQQDdL)JGytc^!VY7 z;QQhIk)U%Cwe1W^w|aN$6h3|F1fIWYdl0uQ-~GZ$I%?km;h+h<89BP#G{DVx`ie*Kw)ZB0N-)wZcq zr?yR>K0ODj4;V0@`;HwudRm}*&#PZ;!t`VzWdOx#fu{QInuwbHoq<%d3yB&GP6)+i z4xCZlc#^wI%`(}_Uft1HDgTY&2RRLPaBbkSEnEX3W-F;~)l)o|4-mK8lG*m8yrI@E zDuU4MeH@2vk0%T3K&otC5}fOY351#gRlA=(-|kVdjESgA{ZH3=pcX23FegM1TSw-m zq}<+WJ5Qc1O~5KPBD1A>T?Cfp{7EhrChsZ^O^uNO-~uUUe-0V*cW!Ey|6!>#TB?)1K2f| zNDMcOnHb;*h^uyt5Vy~_#H}a0eOkP_RX$%6h7ah*U$}AteeJii!sO9C`Se2u(~s_& zuZ=;3l)JwpH{1kqPg4`~&`Gy!vmSgmK? zS(io#xw)=CZM2?_g!>S|_NaN6*W+s1Aqe|ZmyDBOJ8bb=-aJ^8>Y=pJ!FbLC#R$yjl1A-nuP{_jlMBR~vk9N^A`i)#MLR&mp9)07K8 zylZ|_{YL?56t`X|?LTNjUky%w@~t%t_6&VPJ|;|#J6~9-4c|w`_k3w1Ty+T62Do0Z zvPCnwx9x5Z_sDfJH!3-cF+x#eFpG#ms_TCz8K;k5I979wX)VK98|evQK#~0&K4}0+ zfOL#8g7zVKxarQ7=Y#n}{L`h!4Of>T0^7;y|0gaS#{ho-nLidlwlN02BOL_NZou`q zR$POF`*fk}|MN|)>SFqjpm>y4+9dNFaeqI&b3S?fM_Hj8&KwhV?%cy*H8D5r6&|^$ zl57lAM@-d)7hbq0fhww}RESKKBQHu2#coHHSLF4q5;@=fDtJB?Xpo0$xlk`4QU21$*qvP6Uuhx)D=_! z+61a9OcxVIHp+$4qYbphcExriz~&eOZzzhfN`3H*6Q!Xp!9)geWzMV6FjiD!kD|Eq z7}(rO?Tms>_fAu%U`31pa%j)6ha22PWQ9DLC=nTE$m+&3fgw)MqT0OkqgBe!z3%}- zU8G5;ywfJx*X&V^fG>3{1B)7?;$@lNbF(I~UtIDyoc!En*Aml`)Vh2wH(XnOPoJ1B zFymjFA89g#rW>W)6Qaa$M*)PU*ECySlAh_bV$S-V7aq@0hIBvjearxcrNY`X$YPcV|LT|W9gRxM9 z*pB*psL_X}D?pdU#1d-|hLGVcL zfc#D8A2U>dX}hLZK=M!|6#ex>OH!b8r-udvpK@{(CLQ^5^%CoGpZwb>OtfC z24U{t-qVx?VC;VT$kHHSuF!wfc!V4guY}~B09Hu2*`*V!oAZ^Kn+RYM^X)HMq`6W5 zaezSjf%r24PeWPQq96d9anB7hhfuV8wA>4)1|dr%>;$WXXFc)eI?dIE=TvUFtUDh% zd#vUp0}F^bG~K16!1PDl9S#*B9&0`lo637ny|rEwf9}}Pu1Qz%EM(&c7)GXk(|-i4 zUwG_L&C51S<}Tu}v<79oe|V&*{Re6e!GC)?xtUYELK28KOeti+%u9|pQH@SUoeUx; ze^<2#$JHmcMZXgY098f&5tmC)wXDPeQZ~c3f@-V+)m$#cwlKv3#U?9D6@`(&KwjV} z#dK9hiIX5GBa{4Ad>p4;dx+hpXfcflD8Z7ESydb3<(3MtJ+G2_2hJ#tD2H!VZ+T!7 z*qzp-EXv@3qRBFjpL?+bR0bHbOR@g4cg)ZRBCcJ>j-7}T#Cx3!8n8?|q^z?Ec%+n@NsJkzbiC>?yDX9Yf17P%F0YT5avtCaDB1x!D5izzfitjAi zqCxQ}Wc$@?rx4s*aQ}fRLcXhqUSF$$*FU^tp$?+3CmK71q@aIyo}MsFfGWG+8E!d7 z#`16eVNMVbC9bT#gczDNn|IOA?^&Ry^S*c`l1$F4%BP47EyF+0ob(@=<^fc|Bq2A|Tl2Tj zdkeP)VP^EC;U_K}A3Dldo_fgOfVeBLSEl~}Y>0IOgN0L+hl^~G_v@8en=uZ^r3FwE zetzHL>ac-KDF6lJ&U$gidIiH*i`x(RrwC$p-lf#F=J1A;D7zgTmi1#kU*A> z*rzI(jV$QL?LRBz{oiLyPq0V4MF9NFB`vxEaB2}y z^AP|StSNx@yye@GvLPHiu@9ei@OW$lbUlJw`Q}HL^6Jey%}lB;-+1A7A{=K8#Zj9@)eCp2e%@-3E{OnZ`2I=yXi%QT@Ti>%`i3!Px-( z-5%J*9{GW-z^ILF+BwJN!wwo$mbTH$nS36lbxT8#M;V?i`SwsWi)g?+CTgO8Iq`bxEO7V#@Ajk|}yxM>X zMQfNQmmwc=n~PNA<qsXCOO z7cwB?6o-~s!H_0S2`Y1YOMS?1k(Zs_A_CTc9lWQg5<$xeh^J488kon})2RO;WT$3Q zRX10L^zXtC3$OuWgV-Rr=#cUNfC27}PhB*Do)`Dc<8Q5{rE6Ro111e@MuJczngj?D zMoH^y;^PmVJw{lUj>ssEn3aH2UJt&y76x7!8W<)d#zf&?1aRZD+tuQ#L%=&+K43Cl zcyFVoCNODLr?MDHAo&ux$G`k(ZdkdoRp$aucp*&$dMIFx4-+7PbP>p-g_nR7-cQ&W zq+5XTM9j=DA6Ud2TQq^D#xCJ#JXkp}PpCDBEbpJYe1f?& zu+kWE=Zga$GO@2Fg+vJ&e71eZ9)9ADweoL`=JWz92qpz`haA>u-NHO)t`I$Z&B|P5;Hc8m>Nh1b_F|d76#==zaP#vd1GYmVh@6uK)ZM6B)7v>xMK2 zZ_V2h#4W~$idzl=+ylj}Hd7cPWad9X=EXTj4B=O1Zwhjq&Nl#`KRmHYS*{`CLd28- z=mSFp84Gx%2VPrU%R^SFmbe6U{)UHSbl|Q zn5~Jvoh3u$=yzkKD&SDMCDQw~-(8<6VZ3}lW)IwQHz;*7_%??M43dH&Csl{fax7BO z-z0a+R?PvN%EUw&RR`4Q zhUQLj4d=K&k3TZ@wR^hz$2V*3%eRUaJ7lz#hu_U*|6Na%Igpv#9OLOy`;wLR=0CMB z_bj%(=_?waq@neXD|?##n-N&rREhbc{Qcb4C*Hf#W*yX$dqdHA5N>e2(q zKsgd|3#tM1Yo3rD>M8*vb@)F0glU?e0;$i7aW`T@}-vz7j zog4O1mITFs(N`GCuU)qfq2Tk{%{%yp(?`=2Z?Dz*f_ROSetzeMeFeO9qVN214!!@3 z(dw#P7R$_>bHre$I&1{uV%1C6RPa1Be)LPB)xBN?b>a!&+l^*nl}{eZym> z_NT`LWF0uJPdIW)Uv3lGzwq9A1~@rYT#_jB0@qcQ4=T@Naf5|#zHhRgNW(|ZzPCCjy4FmgGPIm*a+Y7Y1>o0LC38 ztR9Lg3q#s5eCX`ank8P`%i*?Xmlyg!OxRXo_B1sG0{Z{-#PUM_M+n=Bv<-0YAwCOP z;E_h+!~+My4IGw=d-h)N$zdl#T8t**332scDvY)no8Z@& zxY2F*U@9(R)%}g$H`L1Mn?z}O3Y3=0ngMXn4=#See+j>~=Nl!U5Rx5Bzo)xq>sT$d z;r{>*apL-b=+uBf1;FKO5AyhAgQGX0$hMF(j$Y0gn6hK;A}~(4qnQEo3p-V56*8zU z0GoehKv&HZ{M{h|Q2(6z*tqYTamixI^7UdcLuByEWV08boFPRW2r!xJu{a^vq>VX{ z-+^G;*TxPcrLyZ?KjM{*vMUg2mO({7QY{eL^~+p_3fL)?sk0HJuVmoB>C?S!RcluK0B%qnb37Otv$iJSVxB14*T*$pKHdt1Qq;(Z^EOZns=) zzKYwqg``n#^?Bvz3UOX9%V%csa&3(@IZ)Aq#7>cO!PkJU^#!N5kihdHVFVVeYOU4* z*G~Zw+^0upE!azG%o6>bl42ro8g4g~>Of2rGL55HFHY*M-MlkA@an1@YAC-T%lQOh zd2o6VX#f!Dd%@8|!}0qM;3cbDX*)8Y%Z(qKwvOR$`SD!~sC8$%9+5xu@F8LRu?KmXo#1VR=Zve}M@;D#AV2tKxdTYTJy5Y>xK@1}!MF1Kk zz>dH1zI`-@)X(o-M2Cr64nT5VRW>Kd7vS&0qlamNOt>;(Sml{oBBmG0m2~e&!~1uW zXN?65qyQ7g^}*~Q8~E1kdz9Hj)^NBa!3I_%8#KNLf&NI=Ik0b6jh6y5gf>YR0baoL zF#_iiD2=*yD6EVO<0l_9Q1dhixKh~w$Obhtm!ns3{yEHqcOT{kT*D_FI512c-h&7A=}M?C`6prbaMH6<2UcK;_%~ep(F?{hfH2Y^ zz-1}puI<^hZFlG;>?CRq{_fEw+IN6R#NkaG(L?)*w!=+}`!8G9mh>O)KGd&-o3lg5 z4nbVryn9bb`VW~Rapzk39Kq}V^T6U%ZxOLvU{#TW3vb{w;8$**MJ=tn3;l;IuRCpY z_~VxjiOZkHQ~|LgzefeCD4zZk_g_yRsIIhn+&UI3Kq%J^|A9BMg(0DmWyvrpto0HQ-GR^CW-6zgxaM+vC}pYFVgV zZHSN(mFJ-@H-82f0Kh;}27La+V*y7fu|IKbDA=$-DH}aGr7Bq|n-Zmra!g|$GvB>* z$Gl>hY=|1zJ^$S5^E&HR_LI^xJ+Q@(lMfo8!OAcqS+>T>1>eBOx`w7p|D7!NhQneDe>pinb#wHGl~K1JW@3RoED?RUbWX zth(He+P6QQDz2=~!o=XNzqoI40NY}H#j*AM$Mn|wA&46F00DO3O8cw0+EDioIiM=T z+bMkTtdW{L6d>$34_7WdtoUAe$)yMv*iVYzb-3x8cV5x{=q*<&>=1LT1urXsuW zPuEYu-jCiE`5|4yZO^U{#wwZ)Ws8YGXT(d?@Ox^Ba16=g7p&@j#Kd5 zSwN$V3n6{QOc}oiMgAMN?oypO<)Fb~(uf}X>(3S`6@bcHWnIglO8(XIRJ~%dEDQje z&>?BLS%tWB3^_iaT#jnXL}Bbh+=%6MqS3{ajlK5~q>tE`B{#a<>|WKx%1l~Zf+$#Q zQ)wjX3x95*zbgG+2HpD$8$fBg&fm>sktqj{v>KS35bDMzP$Pg!D{LsRq&>W3{D}N1 zyHE^r?fHqZFiS~=JEk0e&#W03P4+BxKLe{KERFS;3`j@Y)nMF0c1yWAySFwH<+0}4 zh&Xp$x-K`v>~dsI+S`**vxT$1I;;>)tXGa|$SHl<0}v`;gl|uV9u?h3`Ah*f32pOt zNvw!diW10W0OZ7%&_M^If!rNq-bA70|aNaL&7@TZEssNjdrW3=&_<=!!OVEr8$2NZb`pLXx&5kfm+=>Wt zM$y@K#P##i%uND(Nb^0tC#=R10*;V(X`6tDFJC)}!Mv>6xI>o$4GFwQ9u(?1#FO?Cm%Qn zZXvaS;uZ^HY@MsPk_^=2GnY?5fnG+87hHe{KF2A=M_*qXmT%a>R|`mcT3EGd^ENf; zd*==v!k4a|#5g61bQLJca*BY@cNcF9bCzz^#GT)I|GxD5$Cjwu7O5JL9^tJ8n}q$7 z@el^@|5rFD(=Ez1tV)3B0344u~5=V$L__ZlTdbx`i_i9n6q@ zXXEwibd{zP+8MyfkfOS8Omjh7@ z>bKn$g0}Y^*=n?D5~%&E!MfQ_Qx=jv%TNCVuKYeCx#N=IG?!hrZ*kryK$z^Su~u9? znav)PyFEE#CU)P1M#Xhe_Y4-qxoZQ30bqA{G&nrv!p)ol*nosQ0#R5ABt$i+)Q@!) zAdC06){@5{Tmnm*eFnCI1J_X}I1f1o4{qGD5_KfWJIT+dIw--5lU_s{ZbhhMmk#-` zn|Nt66!JP(j6}7)>yY(7_S9X=l)+ORCIz%?^Dm1?Uh6jP49D!#pHsi(nr@vthL4;# zh94H=4YrBmm|JJDoB!ZhqcwI3h6-OD(7S6usTKiSynRPI?Kiq7qaZNqqzxCQ1f@X! z^+Wp!le0$yzrp4prUu69lNXKWr{7tp%*~gtovX=1r z+|ArYSTX@ce2uibllc3;IvX`UPRh z#I3nY=MMlCK1XmnO8Ge?(~?L(fzNR26b%7z#32DBA-xNr9)QZ}KT6bK zt|8ae?;cqiR&U&?568TH_PzD=%)9F~y#;cx;l3vcxF)at@;dzR!)e;IX}L_zph1IZ z-MV$fWwzakNTR0q6#^DZAdNR za))Rj%AqR5FCiKfc81>C7(cDZp1g_~8^Y-Xl6BOKu-h7kI!L5shRo1cL+srynxK?w zF{iQ5CIbgR)4?<6e&gsgj09qPTrbU7dKX_}vvQm9cRQEn-(;MqxU@AV&c_75uWS}uP14)K#*ic!PmF*YEemW47yUPu%NF3D!l+vfp(3^C8 z_e`)JD3Jf%F+Nn>+W=zT{|CncR;_33q=-^Ml#tP5>__>m2)G*9Ljz_+R6s4J#0KRV zn3xuACHs9w#2aaVm{ROkB_mEihMkNOfV1awT4zj`IO)He%j7|l19*l0yS7pZFcYve z02(s07t(Z$%eVXoZoNLT>$aZY_2F~IFiOxMxIFjAbh$$i7ZE@A?grY?)=po!da?%R zuHUkgmk3ybVS&M3zM)OrZlm=+?=ITH_lY|U8P>BOIej)i~A7SuTMK< z5Z(Uu!{M^wpWj#2qC0;70dnoauxNFQc7DR}?u^(g9IgN36HDpJlSXQZ7`Q`^xv0MY zpca}XhWw~0{TS>NTu$G+b-w0LVsh(|NCkn{`w8It%rB>hzCAngVUzpO=dYNcC+;49 zb1eyQRc7k@cg(NJGze?ds;L#8dv8M!K*_?Ch09ME!Ow^+1Q>=5Tif`;V}~<<-zx$r zDH^A!Od7i+GSzyCknso49L z`o$~9GXNdjV{qA4=_4xr7qG%-9kxf@u#1AQIsEPSPeF!yMxsuDZZKjf(etx=7uqh5 zU!Sv)@DG3m0sUa)P{$E$4}c}^4$ufUDT2cX_3cb;!sVdU4C3PEtY`@W?&-h@z4=R5 zP11n;FaPh1r2jajiQ16D7K&V2)$MxUE33%s|D=&U`3#ve%htB?!j;?T)@N3RLnrlR zT!Ks1Zg0^4uAN!fx&D}U0Sp-C zSYC0cSaNm15vaa+@#1a*s`BZ-D_?P!dv{8;VpNMraoWuR3P(Y+TW^SxnJ18JIW};!_a>5B_|gihdTi%oli@7rcS@Y@fMV zGcfcrqMDrQvdI^8kxT(VB$#oZLEk-DQzdc=? zC?-GWin$z`fPy5lQqI&w_Dx>~A)Kp;>w(-v_033H@J)%b0mztqrt-6m{cw3V`d#<9xkWgeZf&!qk>TVn^+T$|%s+uANN({R#_`4X|L(l88Z!gHh2)&5-v{Q&<|7heihBz+)--p~!QvtTLxccf z6r>dZ6W&{}g~e#98x4sZ!C2vB9kQe&M-qa-e{ugJWdlrRs6~hbj0mV#<0S3+@y8EP zHU$P3C&*wVk#!uxK|2sA50C{W2Dz#p7x&YUE}JzL1Brg2Nc8_cyf|g`w)FsY`OZ0Vu%;LIy||Xp z78@6vLvS0NAt3O3cg#;S1FpWKr}pEMh514NJmSl~{M(rtlwa5Xb7NVd-#?zSdQTeO zQ?sh~?a@iI=A%v>GRtEg2nb-XPiTjL*>KW91NiOvTWH~`?f4F2mw2Xt!8gQxw{FX> z@aap&^OFMbM>YZi&faSUEnH9>sS)XhU4iY(krNfXaJ_<6#C)p` zB~<#4nt<1yJc>58>?F8O?|*ewQ~m$^6_b=5d+M!BJh_bO=KjO!zn!)-=_E{5Q&5#r zh3(3XVXBt9ym+|Ziv`^SmIx4n-I~(-D%YX@+=`9mt27{^n2?0@J_9$?z7i5C-Zq97cqj>EB#jly+3?{A& zI0NkkrC9E+Qbr*ms62jUJ2P-IdAF0NCCOc#`cnWqLkl4qFAkX%33-4*Io{UnP#Evx zJ*N-36(#dQw0EJTLFUF!N~2I8D-WESfwFo#a|0u`;S41xfgRsRqEO7W3?Az3ck2xq zF!Aj!!KVXG>|&GK6S^zbuSVHek104D#VPQ?kEx4sBfsyXLIct|MpS}E$Fh-ACg1bC zJ7nvx+pIWGAaX__BRR5Cj~miM*&HNwBnRa1`&ow#(Ja;XytF#}owx@PPz)nyvI8T5 zQ)dVe_p(Jw2E<9>j)(&Sqk#E#`V@Dntu?s=*F`UtiA}w+!kjIf}S#}H~r?J z#VG&|Ii993+^Qf9C1OxY1P1!$SsMtc2F?_Q;#M*APrkL5-hcXNje)vPj5Rvmy-Ozq zrV~!1p|2;2tLe4bo5PDU)~6-&h{^p0tPG}~+_O;AEW9v%y`IWLt}4{?TeY#udxerI zU%qk@-5~}Zj81t#gtTPLC#3HvIfK*!lSlL-aoL51Yg%~ax;CU;2BG{rnZe1@C>&d+CFMfSGrGt@CSh!03APj0O&Q%wGvy=TAIudt z0jTYW*eP6doy<9mQA_Kdytc@H!Jy7txjjr6)}8S=T+%k5d-v$bpT1-QO&9hPClDWg zeGS}pp{szsXWm;!i&nMDhGDG8qE+MFe)Hgxruu*7i6aGLTq!U&+S>cR|(`4BJy;A z!w;d5yOWITQ&gxB83cccX9|7bNcFXppwwli4@Ay^DjflpO$x#pm1Caq*&2Z+q>AZ0^Z!#Du2F11wMLGZv@Y#ZgD7C}9*%^R1 zFcoK5eeBYjKy_k}h{-c{3Hw)fi}ND5fTh$WN- zc>L(WJ;a?jEQ+?N14;_l+#3J67^ zU>7B!V`F`4>=3XzJM2HcHzQR7z%<;IZ_e97!^E|UJiSP9@y{RJ zmr)J|a)Rp?V~)bw?+C+%SR|ahlz!1A$BzioMSf}K20elI^jm8gu3OV7G*Q4;Shj8@ zqlO?7#*QA+BOE%pAJ3BOMhxt(EY$BGUr%2ax8J}2b*`S?vxNmEdagWag!a3ufVS7f z9g5SNUjM;-0pJN>V$=j|-O+BUt`p!R=ZvK}%eQMOo_~}3Z)w>b-kQHz3n(8sr5}A! z*r&P6x6|a2J!B5dja!OR|Bu9m<+iIugPqSA`OAE`tU@EG!1Ma_R)24On z(W6H%E2!M#%9jgu4&Hs>_;$}TSeqpo}UtmbI)-|#*Z^v zO)EZGToXGNSDoFdiL+_T1J#+S`tW!W+w;-~$!%=U$h&CYFS{5iD?-LCDQcV2oxNYI29{ zzNBJ`8feS9uh$0yWZX#ZI%!sFTFx6c9-#(~D9fN~b^Vi4&IKu4wm+`1)t}jI>NGE+ zE(bd~&8h4Pw-`Ft2mgG;GYK2RV3m$PV1T-29(!Z0<`2TDsDJ*zzJwSf+~gtI*}ti$ z)2ip7a4>fMU;W)ojcu{9L7Ib0#mH{nwoBYT15hwHY>4hLA(I%#(g7M;T6by2^{3xi zUj=c;d4zbJ51%tyn1ZEY?Uo%nMhNQu$Ezmtr++zJS+nnaU>~~aNAD=>h3mg4tPx_p zgnbC&c4M3}yWzjy3|m`wX`eqNtQOvzw_=+<53xYV3T^{%!T|%cPT==$pGT)3I+%Kh zTk*bE*Fg!@L(bGD%*>ykTCNNf#_U_S%o0$NtOvvGg%gfo#Sq{0Pk)%DIidiXz=)k7pmKq@ z2?5Lyi2l!in%kiNNUiYs%O}b`x(c9NrLM8;6>)b+b%7I(UjJ`6W0a2d zh=ItJwVal(Z7uZwOEQ1pc0}#M&eCTT4!`H+RR-)-caSXgKR+^+o|XB7%=KW&`uFP0 z_zq&yP#7F9A)`iY-@Y9?4`r%2&VmN_U-v6t$u1a5nq4wQI(6Dp+!TdSbLH^fjCCL~ z1|`#MZV|AZzuSVw>6XAkb)_>V?)yX;G!)j1n!QrL{4z#av8o1FYLahbn|><5WV;>Z z@D?lCT8~2VGh#5S``vw|0JO<8Q0}+~f5o=CCi}#sHNmUid^VSnM+sS$p2cx)5*Ihb zZtSu=OP6rf=XhWDICd;dykB*r0!TFsS}+%-fxC*y@<1xfHG|D0%e17LEWJ!JOG+7} zJJ3X4M`R%mb~4b~5ue?JH7USJg8{FBfoybxGv2f}2;!!O2LZ`}*$gmv6yS8q0}*Nj zRORoX5oi?csTqDM=1eodRtH1Y?>rZC+sNi){pmGnWgz19fC>QI6g*OG6@tL>SrAU> z$mRnzj*{28+S=*VoP!^$G(OemP8QYpM0E(kt%tb&ut|MT|BinDSQV24Fm&`j{l!Jo zN1u)0VgwH(!!!b~QE1onc3|($V&KNuEdq=+X89; zepp}vGQHmwCyoraJhqHBZQq&Zq|HZw8sxP?oECCs?LW2`ZQt2W2rh?=#3c!K zhyh@BSMo~hAY>}wE_CX|^y>!})0iRM1Yi!({w?T*Pd;&=g306e?~l|1Va~E`yuEFY z&adrl?E$GP2K4F7U%zgOf(G;vVEVa6A@?BM!{(a+&Tz?b zLp2=-g7;4lS>X@^03zIg2aoR;#>iOU@IvLXBn3i9h>COzD4_$E55e{*S%ZFnGTXj$ zw}Q@*!e*h6G3p#56#`fyO~fhJj~~`kPiO+%|5zBjSxdGCnJcO&i0?aQzX3Xq0EJ*^ zz1||j|A+zIb*|x5-`n%HgejwY>Ip#v_rE@Ov$|u!HvUcK^Sg_;R_O`c_`nUl;xA|G z{RC8v6i}rxRU+RUQ$@8rRo%fZqU`3&hoy+?jDg+E ztepo)fg0UD`SzJfz;zwmj*bkRd8W%Pmhq-8{)^33Su+UUa5Mvv(G)r3n=O=q5wqbn zR*I;RJ#gj_f4941MRnY0ZH;}5p1Zs{lLxULWqH$KU-0sAeX!@S)uvOhLIox)@JaP% zUiA$SWs{l#oRe2>ce+I*unHB^Wkx8=Ge5JGP4#{$w{p@(AZriL@GVb_8b~!z7r#wj z)*Kt+UAr0Zq}{E3lCgLZFJs@&%+vn`Y?{3y6G(AlQ#oMys^mG2&&dt)444o2CI`gI z`%(=AP%7fo&!h00T^SD+(K7lpO|Vu zxS2Gm1_qOqom?8gb`5BiV@$;q_j$I8_Q?Cg`*qQTj9@g@TH#pNp3h$~L9>A)DQA3e zk~v~ru0Cai2ByCu?xKVi<#VJT=+(WGxboU~sTlb;1SnVw@Vfr=k;1G5t?PH50D!+f zy&`n$+<~W#>qTISkXr~YvH$$rTEkTDGPjlzok&jU*W zVu8LSY#1`0<3wBmaH(=>UUTZm@Eef{a#iUvC-()gI$iFI?A=IgdiP7KH9==ysw#cl zXH=B{^ubrx1OZ&hMu5FLd~!efz*(c!y@{AL21MCP0R`w4k zC$SQI?YFbFRE?h-F#3pZL&+E%FhHO=0>HtzAxIod6=d=I$Cn8R+MwS-8Uh6DBiJ6N z36GO!V7{PH2Z`J8kV$=MnYddKe7>VCXzB+f7hR#{YpVGs{nae`cm@hf|3U6w<%^;K zw(0NA8_P(fiIb#9Oz9u~`s6a46y?(o8ytFf>!^$$62KlfzOQCdzfD}XI9LI|3Q%>9 zxP-4eZ6vC9sCyEni_q(d!+UD{nSjM`?omS+d9YRp_`l=16@~sIiR=mD_67Xi(z25t zcx`Q=|3}Ft1DWWN4IiKtfN{p+Z6QQW!XO|kKV)l6RSZ<$DjvTb;_=hupEPyq)Gjk- z%;@Uff8DQmCD?+Qclw5cs)Z(MHP-`;)2=b=UW${kl^`x4RmuV?dHIY6C>zZLG;9&g zFP!v>`H1Q(8y7&J-acpPh)VZ^zc$$3lQK(TefLJr-6Xq(>h{g8w#7|oFHD0mJ5eqs z$hr%OYR~s~ip?(oO>9GTZ3HU?$Z?EM!7eocAaMzgIF$U_UjsY7p={wJDfTKixdu)P z5Soo@X=_V)G`bdvyo}55CNLInl&4R-1)F$)YJxT}7r$=|Yy7UMVU|S$_{rCqajx$Q zthL_Y+b3Qo&FC^N#(HJTUYor|6F(wI9T)%lp(Q#cJ|=%p5=I3%n_x^4Fpuw=YY8<0fB4Y@wWi-^ zelb0qap)jM#%x?ONPq$un3E0~B!F$1=G6jY0hiVCbvx?wp5Yez_=V%>HxDfl@U|n( zEz^InP2Uif2QE?p0Aaz3ZTzYL$~nub`g{A1?h`(I&L||+AXVHYg*7X9@6N0JbXM zRHOc1FTe!s5ZrNKiU8_fowX^n?b^dgo$&XUObnem1fDi`i^d@d6BfF3MiJuPdV&+R z{t)Mc!wN{;>h*v4fbQXoS5D+7rEgQl^wK1xPrkKInIN!k!n6r+9;+wu)@<0B^uK?v zF5%z_eKhDEF9fy&+?oFOleYfdIb*agBwTP{`X))=g?S9CH?--gz$5qVr!iOnlK**I zb<)-JAMWcfUp-ml))0$_!ry+}M-1x9ACZj*oD0}^ApHVzUttq~c3@L6ZfFm>{?w5u zffRoK#Y1f~)4WWL{OeYNs+R*%BWqMkiBNypY8X;psq&-zyEndExV7y6F&@R1%TU}Y z{^GaM+2Y#$)64Ldx2buF^*gKFPbzqHY6>1*$I_0`P^9&xa1UiOUJ57Kg#8Q)WbJ3*-rdX=L#S}5( zib{rpDfY=3nIgc-5f3JZvQG_tOMizti$*rI6_T;a0q(sFxXq|i@;C+u=(6#Tzh=X2 z!YBbs6lCK#)Ly1Q&7-W`d)}Sw`k2SxuyY0_q3U3DT@yWs&v1I{**Jey*+1)JDCS?B zzxnKhdj`ecRM!Ou!s5NT@rmq4kV^2>00`6Ft2Pw+;wAKdwbk9vxfVHXBuu6AE5fC` zv#aSVyGc^qpBuw1*v^wU`R+fiH{+z&ZO^WBV@sNKT-;I`f77-*&f~b4;a-TZK@1au zxT~B-)iZ_V2w%Qt5~F0x*491YZ%;2{FBimYU3lzp%{Y#LYt;N(o&XhT4y%2{FeAG< zVp~u|`Jb+zLNKgPzr9||nT#3Ky-GhIf1G;gKt5A|#$qvs$aan7pIwAOyXA?cI);J^ z=;C9CX`C2bL@1gJ7nit{gz?(JFzm=xg$(77zqvk$Ta2fR%SZqgXQNQ{8F5ZmpE4@E zF;85Q3%9!YQC&H(cUN^e-Yg(;<;FIZzq*{np!e_7CA_zAD_?QKaQf2!&QS2?e9$W1 zVg0)XVdI45Sxl=@q#5j0M=)ExRNlRNbkyVjaMNzsva3P=j~6%FM3LQ}pIn|890d9U zh{4skW&0j2Yz)A&r#&?2KMpEj`TAAGfHBe>;QNT9dVSs|EswKYn7cpAm?H=s%##2r z0ezd*6^P(*xLT2L6F>=ZdDFyYh9b$GI+C!9!}K~N@kCN(*1gYy%{G3!Megtio*@>waSC{{ObgniI0J66F}Av{;f~ z{K|#e+L0R)SpofKMsXfAQMTyGUT|(vYL{N`^8QeL@EnFSA$I6cW_S;j!GvGvLygJv zvdLhjVgNZYaO9?j8#vyZDE z*awP(Mz)|thRU&bC1Dh1d%tu8B7)1jmZ3^&z;QUSIL@H zJuA07wkNZm@riC6ngBL#c$R;UsDzHW{Zzke#vIJ94Fz{aCD`JmtMDL#fadY2CJ6$h5yynsp*QDkY8dNrLwnLEFB&UuJ<=1FaCLe8 zA0;lu_n$G6{wjb7aaDEwA2p;K|LX_$RhDLqjM)ltfxb9%gJuSg<49KtNQFyq)An5r z`hWa>1H$1``Z8)PBInb~nz%F9*Td<*$-)NS_tKiMN7v3g<^Vunx?&>r?bSsYuxWEQ zs=If)0KB37x`rd=zK|oz_59?n1vE=oHMk>>n9`4qo7zvu5iV88|L6BCY|wu&U;s>T z{r&LH1u@@M*3>@TI??;j9Hp7|5xfrB2ryzCG5~l45CkYj$)uH4iJ7FsxMswFZkn}T zKvXzzTpvb&Jd|UAFn*X@0In#m43{NNp4xZ8_+5Yc=+L@jH{%+xxm8eq)_;*XUwPsP zO}T+h0NjY*d|wf$4yH={pfRNaQmfZrO&BR#H23ne_%@m03k9 z%!pYJ$G$ial6Mf*w5*=XT$(!vaPa>aOQ=`79d*5?U~MsXo}^~|&L38`$C_s>RmfZT zWKF7YH8U~R9kT+?8n|+b-o?f-BQ=q^`!X$J&vo%Poas8fraihT$Vn^lC0ua;?lW@{ zWk$^~fs;aLfD}0!gS|tAoFgiu^xUcq5qNSvOL_^YEVw-cH)aJp64iu+pPagQEYfWm=yjJtY z-eWCTm-L^E&drl7X&A>lG=foNq=s88KAHRV=n}3GL-EHamuWJ_`fE_X&V0GJ$G`+3 zIcMMAUHBvCj8@Qq6bs0xe(E8E=x28?q>GLns#&jJoW3z2f6053|}fWi3llPkg@6ZgGo=4RSF+?bX^7Y@(7WdS4 z07E`#T)*(q^Tsh^x8^Ks5s*8C{^d{e!bSm9b^RBYC8Gx3FYjNh$yZUj<|1K@z+}BV zb5qzX-?>=+{>{TnBA_aD1gz9H0Z>1>dluL@Vg33Ou77*MR(kNY)x1-H&4YR(bh9RI zJzu`~-oh;mckHXPH|U8wxPoya@w(GTvdAH9*s?R}KT6u5_%X@^fmIYRTj>93hYbp| zmu_VMD$@@fmT29%n-&T%Jm<(Enz$5hOPl$4p>Q@*Fu>J|7%t=yyYu-~dI}PA1p)1N z<}Udhu2>|aML#xd-lh6~&8eeweheDgJ^c3JC00u^=@0Y-r&>`3;BU{Ypmkf?bleS8 z383Nu0|xN;@#6!qlmdpmGF1gTMdT7i+F1Bim*cA9jG7y=jBUsp;)c57I7K z;0D4BV(`KJ=?jgFncY0j8Kh=tFTgZ4FqWRR3(i$Qd2p;7M4nbm9D|>xp(H(QY_%WW zRpf%dy#_Uzhp{DT(on&Q?2YZJzFB8b*zV{@pB+x&44$&#&LFG0B(~1!f2rWEPsQi< zzCnZBh-UYwo)wJgj7TYh&02pvD_CwMxLFJ0vrQJ{SRf+r)@(M5^k z^ah9@I!WAe$oSo(OGkR<-3{UCch>4>!diq+T{MAjdv1lsHhoUog>30Fmu%B6eBp|T zJX(O(1Fx*saw1>|;L^d#Jpcp5U?JZS+(frLu}oQ<-^*u9*J-JdFiHT>2hSeGKfiZz z=+i@(5OD$hJ^`BK?uDFgO9`+QKsBZeEP88!(Rgo|kZv30J5g~4>nHRR8^A6n*NJ?!{1*t zj(6~izy4v$h@M&+2Ot$i zntKW0I6wd$a%Ulc{;9XtQ&*WoXC69)esJe}I&@+`0#hk0BfT~o#jV?Du&|pa9WY2U z<@fB`LHi8W3&04;U8l+%f+TQ?^oYs*1f+LD0@Bd6YX{9#j}#s#qK)r+{YRg1*a3m( zV9;KeQ3d5A77LpN0DH6>r&N(L<2^8{PXA9jU|=}wh{4<@Oy(_*FVoUT$eW(bIPeLr+btiT$3KscazQLxWK|L=6@yC$%J} z0F5sLF?o4y>_o5)Ur4~k#Z-AaPFc|q+^iotA}Vg%uk)J!|&%FgRNAn#F z-H`Lz#V5un#Kabng9UCRyb(@#rDk~ZoT;&4ly#F`*Q@(Bg0)8dw|h{HHTge&Pwgy- z7{AV-IUOR9^7>yuuX>T310c$8yKB?(7RScMsgP}GvQEa1rrl5c zBX5hy%|CVwc9Zoe0?d^1BdtHxM{o(<+y`GWX^Ck}&4OFIUa z(o^rOqw|j*7M^=|9ls_(3Hg=~hx7b<6>vj-CdBWcULSzTm#&(Oqx0G(9C?3p{uVmp zut7@X{phZRgqRw*+omtBg2mzTK|$y{o?D3k>G0`G$1`#kRk1wmCQaZ`gSv+gh1l%L!oFjB@nyokeD9700dYSQ_$QR4nZ9_N z$ajmL6hzHEl%pXk^&f!iGnY;Xugu!OyLJW5(S>-T$KPBh0BozqB*9&a;D4mKsOx_> zVc&{HIAB~a22=EwJR6{VTk9?wJG8sZnF*RIWBuk`^whg>2XECFJOR|i%c3{51mSVmNFeaq6z`+WLXQH^calirT9DaG< z;;=Pt1l08?AR4R|m}7BqhxZn3F7&_skqh+~%Tp!fRI8o-Gf>rCKvmB&P(38uP_k5U zeKy6l<;*iQ{*}HOh>L})T2!iqJWqnXEzkMcLHiH5_a=*?Ur~IVw?GcW#jZy;A?*dM z*={~RC6s$(2dq*Xa;H*2e<}YA0-GD!vaO8<-d)qoI5kKnWP4O~*FVdB(X&!i&fO+p zijw_v^Du5a(v9PPY~1Va7;m79SKKXlMk0d?4_<0rXuOfN({M=w{7iWwHZoM6D)fYE z1PFDxdmU_0lHAS&^lSpffw8Ans#)Ez-V)DVm3KE#S3H9q8B_zUj@2m`9S@A$T9#h9 zZyB&v4+?3`iW|Y`B{Xp6n5HN*c56m;mkjkIW0k;RIU1>-%niC%pI^mhgi7Fe{M7!M zrT}qD$kFqv)~L(+f8o)?LmzQv{Yl({NK5ds3&yIu=cSm5{DPy0Y3`t3KeUMa>)`Qy z!^Ou9{sv(C z%%u~0w?4DHss4ZQs)_s<>M72v@;w2ZBc=|ypq8!K&f;#R-^sWkpVS2D z6M!)K4q$~;6>#+-x#y%2y}&$aVPpW64O@3AIJ^F|(E;w*wVQS{=s)^~p#PuVvw#qQ zZm&)qI)s0`dJ?0Y517omo?8_Tp4giY6SfiKEiOP5&JIh~v@(h~|3GBx_5b{%hbS$pE`0)*(s&M~R zOjWZL#ugr;`e`kHWhhsKv}>|=%3$AY@EYDr0LTM2&dW?9DpLcKTPOoRV{B~y$K+g2 zh4;%fJH$7=(an?()eTIxxW-@<>`-1l^CIm5rm<5^ccJAg1@dxkzx6ezE~wojc&29W z&uB24n4*kge91wrt&w}UzEMsRm#jmHHS1Gn3qGkffuOhWkwC9izw?y zT4-u7TRKY6RbI;})ToL3s~T$x3EVinX#`+S770dW_NU?g)ekq`WcRK!N+C0I9!*kk z%$0{S9)QGqvRl~7IbMvlU)-o+Gms{i#%p{=PFt1u zAA$2Y?S^3SidK z7M(x<4*QPn9e(}5qNe(P-KisKK%Xvz!o({Dw4#7EPIQ|7f8^ZJymG_NSfsg8|B)>o zt~Z%} zkRQmX{{Kp;@Deq=;$q>;h&WC5@T0msf*5X?$)U;8;Df3;8>u2fgWY@84Dl1VdS+gU z9eEO%n}d{OP`Pfb68l3L5O~An1H!B8t1H`!#jsk~gJ1Vu`=Svoz(L&glHD_bzXSw4 zNMz^Yqr5|jhPl>fFO<3u!z+tpn)0xOh(x1IINvjVi;5A=D2Gz)m}^-428ZP6XktV{ z?Plzsm%Eh4jxzhvMPg;Fi4}cr^R9#gjX)-U?g1EkFBN51BsGGA>Vo+E5mkk=b zxH``yCK;#s%1Ov3jpBN01j{!HP{7G3xQ*OUN%XL<}wW?rrHdJ+Xn&6_#8%TKVhu|*oBdUy76y?omjtR zr!o;gzI&kpqmvFCK*tNavq}uy7k@K@_7&rX;BC}y(|B*`6#|woJAQ;P5*x+kwJjVv zxi9}rm<)g(oD4)AKGe?xcm$|9XhPrc-!P1v_1|QLKyJ9dZhv8wN(^=3aKi1`cQ*u- z^8t7R>wz3lNG*Z5Dg;F%Q7TH-Tp}zC;+w3dpx1v)C}f7e?O&Z=S9JOy>ttI%ZfE*+@MUXdAKQz<-i;o+suE5)# zSs8i>yLsXP1J&h*&j6AD=!C5b8@KIb9d*ZG2>dMq3 zBk~lKxIt0scNcCh^#9x=hXeuT47VN9N}wRJ*Z&WnGg@CDz1uLPrnst;G zVOz4ICCqxu&Pa!NgolGa&8H^Y8O2brXkjn;r$XVXV%zOT_9`Ffvumua){X2YGQ1SM zI~-wVX7?-xg6bhw9_ZwaZd!mXRxJ%wvD@bc!&@PObPUa|Oy9HhKjx3MOm`vmoyfss zvl?W8DT|P^t#U{BJhpUg&b@5{6+B=mk`|>dnUoz`v*p8qVt1!JpEv`tv|3<`*n!zk zhx|YTlu@^gaZA@l%uB8v9<)`BqWlg2IooQLuT5F%DNo?kbmusVKjUP|gIWE-DNc^! zShnY97SFSLIMvUvD=K^LYShIvKdNcvfuRAf1aQ2rHO@|36v;R{$A);2sP~G3HwG$C z#@H{W#0=W_R+BF4Xo%8DQ^R49Q0R83IHjb>ak(M~Zqn$oEmC>IL>WwFker}gynQsb zoJW`vU<;IhcwR56HKsiS+Hx#QJwXsQ(hR)4U^54YQE`e7C$6^b7);oaqol{S?R%`3 zdR5|sfkL$&78MXkmCA{puzF@gFW7r)&yR5o~VR zTIfIWDk0s)UxWeLT%F!zxCW7?0I^kL1$2Dsk_lS07&*PBNgHPi+h+Pdc~nn6Roryn zy={JKo3MP08h710cMJ&b7iLWvIvg}W*%_4Mu|Ym^-@cl#^+$It)cJ=wgPdgeaO&tj z;X?v!5SR9zj4cW)%l8?z5doBj4eYAyA^_E&1#Ihg;EohPeg08Hlnq4O(_7MJl;p|1 zCe4{8tR-WHKJ?mJ1?uGV9|>Op^!kZg@0Q1wscZ#oBTpM*^fb0>v&aOgDP%t5RB6(G zxRFm2nSebM;KwaHs`-RN5T_h6P)`5?z^&TY#-|)Kz^fNnF>Y;b)rF-1Rl-zt$bS_& z+3*UH*H2e_7hpa*&7onZ9H@vL+bwgQIW~a%EeI(^o^@2^%>Xfi!cbAyQjX?L$@&8s9fC%W1IPb8Wa9O{}4k z5WlQrRPMZ!os2{4nbX+T-1CgPD?m}r*P;=g`LkyQ19J&TQ|1G!v5TXeE{pIZ8hv(C z&o&mZN!4|s9QQPD)3oRM@Yxs*vZAZJTht3{Dh&95IahnRZ_MrY8j;ufM$|_pAcDn&GeJH1)wh z{P%k}!KLmZ0b=~D02X8{A2YbS#&mt|mosz-P_+4D@?8Xy<9XwTb?1FX_td&_G3$S- z5P%@>jvYH_oDD$eF~atI_apm<2VPyp2$TlM0lS7iKKsswxVD!1kI&bNv3_$w1sVi! z=(qz+2wTTE;RZJx+IxbqC)Wztd*rn>;ng`CQTh&XQX-qRgqWgYw#xkhp3gs8^NVSa zyf8@NqN9iM4q>p6J4?U}BL&89A6Xjf6_)znSKMxhiTd3CyeHtShbHTUixJu5g*Br7 z;wC=(@S)+q?_0?2p)eiVy^Y&&l+OjvW+I;h+KL zBG|RdjvuaB;r(mFh7I_aR!aP9h^gv!`AdoIK?xYkGgZ35$Z$v8n^9(j$Qfr!hCHpv zRD0QComTNcF3yMwuv2Wa-40Se^@gnWcgAxePonnFq&=Oxr$P^LfI@L#|nk=JNfE{@6^6X-qq;aov|2aL>a8jK;@NX zcfcw=KP14JL29-F&LXrI+xn2exN9qZZ4Vg@Q7M$t^=H!}*d;aBDdjoF{waad{3J5Z zW;TijaJ|PS&jm`xEHX!Cw2AVhinpYY-v|vrsp0P$!d)J>nl9ABz_m3|vzHM^8@}%L6Q)>uZcTWowNA#kp!qzKaWKP@iuo1l+e* zm+yz*r5MlS`MAuM~hD*$z)ysFFj!x4vdj%FkeqAco7p7+!EKgC*M{U=Nx7 zkv;*n6Hhy2kk%SRoj+v72QvjX>^(28F7$u=(C!4*6KNqf2{;o5j&A+h5w?zK?LVqg zD(vnU^$0%!th#*bTi^OTF8tS9mziqDU0qrRY72eRMfXXvxqcx~qeXf5loocg*?H4d zv#gZXy!az6I$Q)!s3GOLi_iTX+_MunYUob}j%IL5SW|$u^aoCA&9*Ju8aOU2jb+zE4!R_1wL<_RIuc61qsNLLtR$ zWI5f(teMZyP@4i7P^D9&`e$IrlGW(0L>Y4Rd7K#R`|JT#Wg;n07i)WD?IO^~)+%{! z;+@>hExySf6WqMs8=y+_lB0?gb0kis9RCv^XH$b*tc?v$dY=1?+z@3Quy&;_P{?mp z*Cz&u>OjvV5ha&opPp|miqG`{`zG!91-2b8*Lq&uJhp>uDR5}Q=63S>Thr>yO&;TP zSG&1qj{JnA{604kL5PUdk0mE>T~a!7L*{yzfTpbtT-WE+#y~dgUPYQ+&-r#5NPMoi zR-P2sRqQmMB@6hlT1doaqh+#xQut;p)_`z9CR zR2u&M?V05a_ZdF?&{<>PR?_5&NWB0l|MBsq_B~`+XOw37pP1kih7lynVE`!t5OCTI zCj=2|G)UZnXwUs{H;LT4b!EQ#l#vW3;`P~^G(7VH;m=tHLbj0Rckm~=G4-d_(@ zHa1*A)pPh zErvSMDsJtdyu-EqJ+Y&OxQgFN*2}~i;s!YPg)(SKZ4V`apd8!7+R8GbYF6 zq%q9Uk>g*D!SMDtuHap5Wlz8{lyjzHJJQC7J=&qNZGb;yaDmMHAZ&IMM5LpgL&HyKRkSOG3yd)o^SG zjv?eU?h@hl#^`@gE*vQnAKF#hLVh*+o>{~HuvG0LSQoLxgkg$@8AC1%4*qZk6^mOMtr%rGUu&8lE_v1)<0f3 ziC~n4`Oz4wLnihUhNYDemsFE1>hm#}6R>MwRWhutB!_Y+?>l`Y{ou|8nurp`qCa@% z7>!H93ob?^QT^WS^R&n_xp{)NBF^UvS5DNrcx^GUCz5AA|K3K8A3NpXL5#9LNY09c zn#DggbIfYjydS{d>|a?HD4Tv^4SRl1P$ABPdv3bQ71VgaS$jd@$-ncV}@Mj**5 zKx{t&aN?4!dR5c^s(ep-c;d~qjGR_T#c;g17QcSoWJW$Oi$G2>(%*hmzhMxkc3uSd7engi=Y-+z-jiE9J4WcpiCoDDg5ez#WJ>IH74(T zar+{P=lm7hg8(o->A-;+k9Xug{pr8&T@<$O*khZe(6?tNK3BlcoAWm_PO086bFk8< zN+tkdi0#7(*KVDe)`{!)V;7DWps7Wm^^gKCeE%7vWsZn!9$XT3?b*XGytg6z=;H^l zn(u(Eb(wviS+j75!Xl(=LNa~q`jGn)fkE;KSR0C0C|p+_ zw0M6H<)KOAlg1!jPy*t*OsYRZ4#2sS zE9KuPW2XGyK$O-H*N&WuBZS%$<3=Fb z{mWO23rCCIwwh{&zP&mz7$>++P%_12U@sWt8w5lk!Q*0$-y$`jNXm)wA;=vCQ1S17 zMKRnR+QF$~`Uqn(gnx10;?PUna@U?ZLJTNs0xAQhaaX4uJV;NAiJc3lA2N_v3qyoH zfXO-ikilX2z^;sJ>IgbVPON)hTCK62mCQnlJi%!-7{)(8wL&+>;tmUkP3of=+z}N2 zMR8k!O+)fg#6}_ZD)mkzfHFPO2F;~a*ZCm*-}Ksr_c9^!?-wg7A) zRlxr~yhH=_>-rDZ77i=G<+o|;?gsroctURl(O}xZ-l4W3Qd%JUz5pA(TKa}Kr(2#_ z-k|>|;{1*4CKFtTV8Z}zwVtA~l+_%BY>)&P>AW-jhu<6Rg6nyZfO>#QaV_eY9yqp-rUF4?*@dfjgzmzIB7U!Obyxb<{>X)K zYVe3bg9dFwL1p>0%BXH-YKoK!m%m6!pVcl|;aY0qP74J%@$ij;Gsb>b6dVAAmvR_)VfzP0z*nPS<701?v8YMu*%3Nnh@-{Zw!)AT20-G}`B9om*3fkftK+Z{B4ZPTQYx2*)(MFBy z#yK<_8;Ss@-N0I?PYR|6@D>VWliQo8p^1?wU*xT20jAuTHoiFIiBSg{S&sF4n0t!z zBl5-tpIH|1c(-zH`AJ)X95eRieBl(&=JOlXjd>{A9+Li(ZARR8vdgS&L&N*cfK(yA zJh{?ioD@^nYx-ZjtbcATDce!#ud!J*W03$&$U+>9^-`;=vC^gEDzgflF3?I;iK6&AU@Y8!2^0w`}!<8owXBbA*wS%kx zhCX-M#PIWb7E#O2-5NNKtuZil*Z;0nF{xfO)6 zCpcC=Y(Tg0;*1SoCG;d90>JpUxyFzXy zxWHyF+bXgf6Q<4G#0c!K>whnC``vKXXk~|HFLSxDR1BSs7?9KZ<0 z`3;vPQbT|}R99q8|HlmOu5nbqynjhpvw4Tkt8qiRD}#d+6}@|O3gUWYln0u(a(j?_ zh#Rd~t*3fMIu zecmQ3z`&=n^Q*I28q!gxON+S*vUC~Mjkq6c95@O=TJ0c>BP+JqCL{pqupP0(1Y z7p8B}6d-6Da+p2+-Q(jDP?f1cM)lWUe|>i9;@Dq(72PuVWcXaJTpVp1|g(IhO`rm=%Zl`EZM2FjByMeFXADB zH@>m&?7&X4DIuf}^D|PT;z>d47^iL~17$!ZdkACSEkTS264m0)g%7M)k~3?CY)L$98DiW`C0q(Frl@Yulf2@jcYrEHc0fA_cS({1QQ?lFz-ic%ijaaL4Lo4O zy8Z(8F+3i#+GudJki?D=t9H6ve5UseS=iPd6R+!N$ZBo6+sx2g*W#Gv8@cardGe8x zr!>wit~_{|E{f2*1Uc0wX%WL!={LNrk}6|m;)+%1Nxcmmg;tBGAt zZawzq+Hl+f{dvsLZa6`vyL)R7%BqN=XJiqlgwKdhK5&r6H2vxA<$2s~Ns?}!e9%BW zh4;9)OduDe4EXzt#xoL$qD0JDVtBV~-=lyEug;yAzahr-HxDggVOGNDu9!e~Jijsl zDuAVb{m{OQK<1l%{0_kd_)ou|NmgukQ_D_eFdltlE!`-fW%S@4TKmrcm0=RdY+$dh z;kwgCAQx8H-nIvEQ}hp)OrY-ybAkIIU|FuAdta%FB;(W_;;{zw?ZRgtHkiJ1!@j}- zb)cW!wWwODYx+K<@6iVrc zjQCB>_TH%fC{Bz(Y5=Ob{x4YFibG`dAHpia9e3)%gTr@j*oXh~*7*T3MgYSAk0^hm zfGP^drass~eEx$w=92*`Tp$c3Es}pP&)P))bp2!jqe~UcP958uFC0EZCp8jfA}$Ga z34d_sd`++k*B|~Na9@Baf9=}Iym8yE@ViHr7GVhx5`xEZ8gKr}?R4{_OEdRi8+iGL zSTdw$`1!pH^~0h4x`p$P8p78K!vxu4ywQ$7Keb$3%U$`RV~2;c4;#V=?uT4}9WcfU zsGR+%zZ>8V&Gr5)P0TL9ZRSlqhVJ)B=!Oj(|nQYr|b z;+{Qw=8-f*!fCm4FV9Xf8JiFatJKb!oFJAt$$We^d8PVQSUm}3@6*|B{0G>nw3 zVyLT0e3wl`9L11gWlVuxpYr6QB;b%av|!uIgbEyf^_zo&@v8t~@`F&?3Qz`L75K4O zt>9U(Bs9~(>^{tRa&Im_r~e6)dGJQgZR>`QvtGt~R(P?3;)REdXx7BdQKbKe^Tq`+k%oH(|frD`NIUpr(~Fc>RwLA}T3A1Dtuv7HeLd z+oimb+;M2XF8rgr7U(QFYVv?^$??Ofzc2ve(&PTUyN03tyYk&HuJp|e`;6|z$L%+O zzIVsGG$#^=D8HgE+y3H``N5qFBgAAr>&U?x3=QV$^g{+QavdS_wT;DR#E?Jq%35Vs zE;wcwgDrYz!B%Z?7ct2HaPfHU)3^ROCkVU7TIhFOn?4+X?eESRt8Tn^7i^))BYNji|MKH+3>E5fMabRpbKaJQl0vv`8E1P@%4|1Cy;PiSu#Yq+YWiv0fL zZ}Y>R_I8J`Nx|lT-d*&t007e$u9ye_5Kt0m{>ln`o_o|_1vB@e$Z`|?KVKL&q-JQ6PNuH^h%rJ&^qU`Dh5&zk zK2k_THQ)or_6>i3@i=}~o{0k6I5|0M$u`Ym-?nQHW9*T}6<(suH&PHf&0GZA**KGYGKK45w`Km*GyKn@#F&s(!c&? zF3J_@c>ePKg$#D^;}?!om*Hw*z)<6`(veF4Ck*S(2s&3cDOVsmD^6fAR~H{UlukQj zu%2*4y+}M=T)X_j%nf0}upW#G0QJ|@sZ$YGRphA(;`%ELRvg6m29swrB9O@bp3IVv zZ(&^0()TDW5=3>TDlQ_f4Z)g{v=0t|X?vp5Cs!2{2AsSA02FB}xCKYj+S-6k@AQis3kPI26p{+1zv>GPb*qbB`>r?(w$TJGY zUl=EE)fYCZ%Lq8CGrLt|?cRY5(G@t`NZ+De?xy8rZ?As0=OreG-8$`nQtnh{a{LZ3 z4hm)2GUfJXFi=fu4tc>KH;s)5PBdA%b2G>k2RLmPi2NOy^Bl5=u!}he1;om;I<_%= zUIl)I5Psm*HO6St zD|0rm{L^?InZ%dnp68>Lmt-z;6BE&UtALpujDH zhrjl_nc_<8!>C(_c$c^?GjcS+C3DZqE9sC4{RFi2WR#;Zjk)2BQ4F`vQ*W&$)FDJH z6%4mcHYBs0yP`$dq)m(h(eswK5c-AhqK4jKllsw3=Zy;jHh9>8t_0xqE)t81*snZs zIL}_Pl@aI+*#I;={Ms5?xS}<#OylM;#|=j^QQjl2vbz3H5Ri);NXSwTwgoOM0iTSqz_~zxlBoj9 z{_QXG{2Wd9KW6{_NNyU0aZCD-xTR;_UQaKJ3k(bsVvoiQ>WmEGP1Ooq70RI$PY{&%L_= z?$;o5hLPNLoXlOMe(?H_6M!F-Ikjtd2sjN2KvmcO1*=*#HH5u-^yq=a>D0Y@_fSv% z*#H3C9B|8!TXTtW2n0uH63<%XOlQG(lxhbT0%h_cP+<(ruqIbXb}PnbQEBu|zdd-- zdsIwOTv;;Us~#Jig`rIUhlme3;S(~)O7(_4Ek-Yt;!0quEyWDmM14zk(f^j?;6Vh)Y!@$5@# zg=4bj&Ha#omo0r6N<~n?p+R20*U`?V$x#RY zfg8TZ?9?>L!1}Ho2E%~VxzflcQEy1XD+|L~^ z!eAmvUCnC;DR@HyN1VVzz9YkCIfX@4qwZ_Jn;is%@P$VY)%YPXsA`z*dU2JwhT6z9 ztr~UKGA7rYGBW((@uhk!-(+;EFjEh`x*EnjoO|RD0Za?@lolRz#FYNw$bI_rSAIKF zb2$kU!#}-ek+3+`h@E%jFmb01pczZHXclnfyZY{}^HVSJ84^?e_30H_1_kZBzXDWx z%^ES*$lU$tw6%QGxnneD2I(Z)gtZZ-nFsdnO1D0Aq zYwx;KNAS(U677hEf&qxYnxI6`$p;J!mmD{Ym#l3C!@~%EU$nX<>Hh%}`hWqXA0iuk zns8bFQF3Tw%kJH-svd!-^wkmd&2e|yZQMU z8}!*=(vY44pcY9=HzG(}?hTjZXD^*de|%zDKo)zi{~tJG6tbX$ZPLRJ%hv9YXI5ko z4q<%d>PZ4lJBG<4d-H>@tOkP@UZ1^@2cyK$_&)T{;!<8Gb9sVn9KQ9(Sy2ru9qcKr z<#nfwVq~SCIJ^h{>cJ&x?eO}4{Qd*Opg!Fi6tHmr9e()Xc*ARb@p3q=Qfvb%)oSW& zoh?Mf1*k~04Gd|Az!}I;x<|EZX0r)yMM>O7@LMl3kQEm%Thhs5tV0BPu{nh~jjd0C z7L<*8yxLe3`&JUJJ;qkkPzN2QTS);`@=3(uiO;t7_>=_&3lp(m?0w_dglu5&dwcXf zxG{4snhdCX`IbC*Oc4OtP?}pMW=YTe%~L74RqgEr9wUe6fol|>o2Pqu8NN%mqs;ty zV4X&$4j&X0wi}pP^jZMSDBM-9wGVFcQp+YPDjp1Ga%OW{ICtj#G*(S8Zm5Iw*8Ng%VCl zQ@{bx3V`HTr$o}F=U2@QiD5ApckE2N(aHbgd6hz#E){=S2?Cf$q6sZ)a4JoVi3(?%?R$G|Oucv0xq zJyE}n7%Kq}bmt4Jv;k05W9j`_re<1|U+w$@!L7WB_~AXnzx`znC)G*g5*Q_503;EdOm6LtBOIh3+dppM=EMgTrs zTF3_lkke7-2u>x!mG_AY#%ZaambN_&`af}aPif0={@FbXaf&hsla%y-#DEn9m+zsI z`tURFY|va>J-c=ick2X34yM=UVC=imf#Z79cm6adHoDY*0NsHC8gF@GX{G8l{TF74 z-(9>_lbgcjeDc8qQ9cIj68GuRB?xF|oWw&p9;Bf-XnbE~1Y35rGg3zgqpB%2kXMSF z$LCyeDdUu7e{q)r=*M}N^cE}_=4juZUHCT-FAigdbVmvcoztjgh%_P3#bVw#tN_Mq zwlI*$dcSke9=_@PvC2XnEH32l%e)HCvt#-X78GeaQhXX|dB1E2s7j?kE=N_MLS@Tc zYyv$oMg`{$s|BdEkqI1B)-7R`3Ou#v9GSLA7HpJ(q`(3+->sAEw(&|kX0nZ_E(A*OBTjotGB7qQ z8WsaRwaX8}y2LpP6Jx&VVY!xF=F)(RNBT(>djn`#x zo!*N=@eBkR-(=Gw_k|oVG3=M+;=fflDsBMm%?zGGLTFUXXTOR#P~d?DJ9k_OBAv8? zXOcazF2aJW@$C9+<7B`lp)k8gFfq1g{SWb(L>YTg{>aq8e`WxiqY4o@%McRw$$O_{ zS5lioA>@!;2-Q1LZk3*<^`er8bvk|Srg4soWFzj_&G*=+%xR^0UIFKtF68E~-`Yk9 zCeNe9L5wsbwE|ouvjoUw98M$*2`>?M5l);PKBb=;MPULoU(zcxH--CD=t7EX^6TyFCt^?URWo3lKd0(82V*+vckbJ9VtU z;}?H5Ba9xR1(W$iaZmpHU*>Y3?w!LHfIdo7TJu#+8PSV=bk_oE@>0;Sdw0-WN%+o! zmD_`W6GnU%n6zL1!y&X#z)DNoF0QSL`o~S@k5RcSdEvc{ z;rVwriVLp`qhFu6a6F?pFf!d!P5+Va3jp%Z0!lV+i_drZkEE7JCi?Z?&7$GL;+-w7 zv7G{#Q4kslK9RT-fa-Q(*t&P_6k2!fF7*FUao6rQrZ*$VznT7{#LoW0Kms)3z4=;C za2p|O|1tXx5I5Z*-n?xW%}041>GFoHJNfB%*77s&uGNIGpSf%t?b;(QHE|*L?A9r? zv{uiDT=6-+gpxNi7Huo^A7yWlQUh%QQz>i{WUTcF_Z{6kTzT>cnk?WKbMx+(R)^Q; zY!rakNlWm2<(i4Qo^Ic{M*%m$sLVUJHWM=0qwqK%KB+JL;{Jv7>g-K~+K+gN`!7Ub zMc)0#4Kv5Y=-x{2#pOVcwZ~OHk8NgM+`UYXnbYuRCL~>8OJM>k8sJj6fc$4^ItI$y z>oh|%AmIjIVKUIgW7Fe15P1WcStWK~Pllsr*saf%)%L*8PR2#+W=1&4tBBEQxMO-h zZc?grC>}z$do`7LmaW=WFcQP5{|2GzW=fPQKVK`8a zIMru$?RpFFx$e|any3^Y>vLC33U@reg4b=`>E>s(D@3di++B!sLXyT#9Xf`a&Kt`Q zys|pr*nZc}9gz5vKKi4#2`t=)1RR1X6V`+^PDk8IV8ebYhPB;uiBYHk3`n`~U$@R{ z(0`mP#BqC+Rhc$#lh&!5G`xob6pCYkd{0|jcI&B2N}wR?|Fx%%3IcFB*Otrrj}ksZ z`gWmTqQJCB`%(d(h+lj1t@YuZMVlG!!%to~mT`&_3{vO~g5AzztWOR7YiZ_L}Gr|~cj|9JHzUcF(5xK=xBiii#3 zzFxNlIm*@+`ag9{Pj!VNPHW}H9eQ$;oc<#$W{-ei0a|*^DF+QuaP;&$>%)VutRdt? z!rd`kfP|&wUk0e`_5aAI?o{2M&`L{? zE$-fj&IvIGo6ZOU1uJ=?RE^wyEv!)+Og=u0 zlGTiMGYPwHZ6n$;?^*(twlu{fe1<+_8#5-a?va?R)J+>8X7V7P*#o$Y9m}~Mv5Ns2 zXH>KKGi+MG*C;;Q#*i0Llt+WU+4Qg0H8*K1Mk9Zx5<{HZ*?8o`6U9$wz_Kk5c{bYA z&U)(`YWg1%7+?=@I5RpScfsw2(jOI^i2b1m{n+VuG<13V$?3m;UW%Jy&k&bJF8<}l zvl`_%;T@pLuL2&K45`wSz)tV2&H0)T()yI6@@%3;rAl)t&r1^^rG6%{#m&K{t-Aus zmsIS-9zJH@{+c4ejC-{JRQgYe2u*TSDXibt#>f;75OU`m>i|9&aY=WJD@I&)ynV+W zJ$<+D$X+yEm;~)(N2ZToFizcAPrbd4FF#=f&0V%VV5g7IaT@QMQ-eHFd5r*(maVH{g)UD61Oque%{tp%w4eTKRS@n6T|AYH= z;Y&{#hSUcnOqUifKI^a{(w40nKtFO|ce>`(QS`On&J0^+e&J*#P8^OG1`|20kYWS1 zAaPRB>p$Ye#1%`6SGNk2+L?a+(CV}zpaDp;05`LM$gp_Tc1HOj$l{~}25KT%B%AFi zz;x-F9hyuQv1Q2Ee(sS&g2;aUZvFm=z&UzT|_whaZ5qpUq!7{Oe=eTuR3Ll?*!;l`HMf>rp1GVOc5Q5) z=^7OSZq!-62L*C6@;V=%?B+o3PnHE!onibxUb$bje)_wz(@jbYbZ|>pZdqGJu*_XK&P?-QPU4By8BWv#I_!>kkUuepHx_|3(tYO&WY15XgSugxt~ei%(2)hqnu?gc!gPggqW;DL0ho@XQms4xkHaf3pjdV`o{3WjP<-Fx*xlB?noCOH%x=~ z5inlYe;nWc_=V#bxvG|}-;wkmZcAi@f9SO};qzBa7&rkp?G5^m6N7{Mb))~Uz4rjK>p0Ftt7Zm+0S0l9b0k54K_tN( zAu))VB1O@pWUX?t!pdGrUfJF?tzAp2m1SA0KysB66&OT{K_tbTa|RPYT1Dk9?&73#mg&qrS@HdgRw;x*QAW- zrT)L?lqm@4_Xl9({`u2e`MCLQo*6^nJPtfYz(2}fylOXgUV7k#Qbfk?asjVMj{)X0 zT~YtByYyo+Ha9-J(Y-7{32nbnK;XgCgFA2Zux1)PVvuJc!Q$b5v&9Fnj~_LN zK6AlrpQLs8&_=rL$<48E&bxteoDq(ox%sgTGKad8{)3srF+l)l0BtzKQre&NfAsJs z`rL)HeI6_fC(aanT;zrXpW=EH=59P;cPYwWzM+Hu;is?RjK|!)J1$Tio7~pc*0FUf z&TXQQQJv}?QzM`%86Ue!>zWj$MwKgL0GF7Cyu*w$MeWFHh4ES0^g9t%8&SXotxs3~1m1j%m&=Vw3%4^2KxOMcHN*b?)s zEk8Dy%f6BAXEZOI=1O3ZDEnottm{t7Ak&0y&C6SQP;0jOO(n?8{j%UR_dhXPrHsjy z5G=O6ly@yiVZ*+aZOQ#FmPi$9(Q7LkHms5@Q^yKL&Yd#U$2+|uM(O*vuAsf0$|{7r z%6XnI>~=#;)U^++^Q=G;ZWI=Rg1_>CgM19u9C3Lesp5w1UDVvzKv&bJn z+-5ji56{D8bH>7uX9*0#8ApsK#mm@p!(0%kV*qeVQZ5SJy~i`B7!+;D6Pl9yg{&sqoYaKeH% zK5oHiw@qA(j|y{k(t^=`_vCNyUt1%0^c8VT*a`RivYj>h|IxFjGg1v86FB-hNZQfZ zNIw4*f~b)?0WQz)-?Gx@uBz()q>XQ@#Fc` z)g69=LRJ59^wEdTn(lW|;^-qBH-lZDepjaeVZ=otuhiFnv(&9=?@apN=o!$-JgBMB zA4T+yYccOSlm3IH#hC5x>T|-9@~`h*M+eUs?oK$Q%^y;Y*ukUcjdFVnJG29>%4Ct0BFPQ?&V1D0i@JIlP96(wdVj z0;l*LR|cYMeayNb=AdO9JWN%(jk0m2f)S$tdpH9tQhx_0R!A*R=u@pS(6yQWA)i+Q;5ti$kYdaFsNFKI>uDz zg+V?RsJM`XmJ&u)_ZJ(nr=6l&WU4K>EXNzXd%LN;&PuH3Jv!j!?0woRKsE>1MA zwnaaS&u}U$O#zDWLg9~MS{caXOt=8$WhH|^HY}G84Q2h0T1xo<>kVWDuwEQ za387=RDGQ(TbH0TFCCk=tLnkZ7Eq~tQ;VpSK?0+B%&64=G%kd^OAU15f-(LuPHuEhhfW$NL&>=8W?3MgM%w>tKp}2gFt8fyM}AX&3h7(o?4J)xv;n7q+6Qp~3GI{M5NK zeSrOO2er|}(SvEtmc2A%e2cFGJI9c$6LayfS;LWsh_O=;L;?)&$Ih8f|9bs$pUMHd zxnLBrTaUulaJCE{01b}0iGa%k3&au0Kb}8rI9z`Ie7Kv$ZHRXGK1BV;X7-SGs~7IR zU>}VBqx{b9KCp8>uN4k{M(h*fy5y&O+nf=MV^EO%bIzn81Q6F9fercwm*S@{nCWG+ z(X)f4{!bk@l>YY8ImovJFzWSxu>j_mg-t?=0Oa&KRpk7nu#;2A4dxXaI>Q)8{YRcL zv>jQ)6;N6IM;sA$Oy2h7Cc*}QQx9#!QAYg4>w&4d^pr{dn49Y#+Tg@h$nD5EW%OSF zr3bk;i|okg|MBxjN^NyQH&q!UX{CS4#layiu17gzv=FsLR zg+1)>%%@BGkGMMIx)K(Qv0-6N1oEo?XCE`c3-W+Tt$ejGnP5rfAB&6HO_ezYh6}qo zXN*VchSgx;kSfBRaPVmU#Q8Jb#;tkRCh}CZw6u`mC#ONw{_MY%D_6F(x3?#zs^#4e zWn-5Y=d|+c!l^g-zR24Ee1zpNCkDCTWKpwOcYV+DM;t^ zWh59EQ6;9dTqZ?gxf=}`wAhM6C0PuGREP|iOKV=n7{#51=&Z}n#U}aR6JXW9U9~xs z#Grq;((PK(AjxzxoBF7bQ^{}z8<19Xm)c8e&0O)itTTmUTU0PA>ewdJ?ou+9_QwC1 zH-A?5v5p09?a#m};X^VkX2}RSGL9XJtRt78f$|-Ok+3Z-*e0q>wKxGxQ}R>VtD5;^ z-r|Zet*u$xp2!5MUislXJUJN4>WgKU%p8dN&lTOTv@?H`3Ewz}Oq&hcm)aaANCCpa zl40^!YF++98nD7csM_`LV+Q*qd>`|W*e zxCH*8$4G;K1djg9KPebTx_tRB4q(JKog#1k!XQb#{XQP$z8AKL3#O00{?Ylq(SQHr zSLl?(#`rAd_#XL$;KqYH?e?cOyWIj5E>{7m5pzblqYfO&8zajD#^E1+ z@|xSUvx{*s?tgsOEV@cqI2ip&qgx!9BJ9}OyuBx(MIBS@Iy`3HNWSUO4PbO?^dGzJ z04xL)_}yPPZw}|c0n{Pz`J?ZgCI-D%Se|trJXE#tljlzNuE!tTwyH+|{ei!Wrg*jr zLHP)l#^Jzk2pa;o7mlvE@c4=J%IaOot!DLq$lwMBLv_EfQHc4e>Ob6paGCz_j+NrZ z8%#$XFjCxX&Gdw@OV~k&Ozzk;0MG%KV^#lg_TR?^oZ@^$1gxw6OIhx~X{~&*xI@u5 z1jge~WgKM$+2FA2msjp~Ckg-=GrZZK=|@Q~oB)+p_wJJ>dZugl-X0%kRZssB?}RS> z=Du}>{v-D59C7>g3J`{?4tcAN7vPOAk?0ld*p#s?UIy4Xxj4pUPd)7Y_NTlVbPlVhqbeu!!=CbKYRJ41ytBL=`t8sSyrBeLv4MD8mQm99bsR{bvL8>j*mZF2&& zX%VG5J|RaH29Sy-rap1i5IYkymBF&@RRJRObC=~+eo@N8^n=0@%?YeHN^U;&t?095 zA1Yuf*-hJ{GxN-$A1BT-&vf!2C_=liK-jrO7c zS~Ay#ZL$3gs^4|M4P^k65Ke4PT10alNk`lO`d?ozR`#I+P5_^>E4iZo6yHQLbCy9> zo`*?q)5H$FVwa}B0jKqVUX&eTpZJnfCcE$4xSabVhnGN`JTXyRXGhK+*`xqg)*7FAs#8<;2YPyLGKg5gFxVE zfEF@iBfuT8Ixz6qod-4u$J5N2GK{|c`(^&1;q!&50H6q4@JoOU z*5JL1rh=hykG-;$5omm@xV@GGlq}!jS)LESb2|Ox_SFt&!BJjnyws=2_kVloT>AQN zmwE=Is{c6q4F@SBEBN+3JxTu&H-@8W#tKkDVE6BYIRUt<>c6mp4guOXJ-Xh!_vbkT z7O8nqW61Xu=f~j2Mt8{U;rvci@*HX8z=Pv*`ObFZXSTijeewa$AU# zy5;drI3CEmm9gs)F>8m<9`3X9V}@NP?qa0tQ2ie_VzB$G3uf?(%XbkN&TC{|_4M{r z^}0;vjkp=TOA_p(>OXcMeo4j*fEs=O!5>$JZ=_X7MvJ&N?Ccxb;$`Rl=e0{&-N|Ue z{At7d`Gqhtn}wM|{wk~gcpfocU`#RZ0Cq7p2TFhDiFq^kFv_&vW7$0OHl%G)R$EGnsm{G`CG@+ZZ)S{eZ zwW<2f%@)lVK;}0Z|tdiuYEu7xLT?RL4BWrRu7KS>H1KJ(V zv@4)w22$Z!t5}rez%IJ+La8b>JHQcab8f9bveAx zOc^`aZyoOs2Uyxg)Q{QvEnV)`EgSex&o9_ZqMRe6ID;fmK0v_NHTSJ`&%d#QPhU9ReesexJY;Ya{j*Q# zN%Yqj&8DCKX$@RIr0==72gt(jN z@Oa6RiiAs&<9dd=+jn-+{V#OWq_!b$ z)uuiE47-KGR$?dNW3O!Y?SOqjVoV%{y=hx_o?21=kxt`pM0Vf3X@w8ke`d)xVZ8>q zMQ@0jn4?|~ssN}wiz)N&_9r*HH`aDwcc>p*xE+6V`^pkfMg14%5a~PU*Y~XP z^G+|suKks?>mFf@Fg}QbQr*JU*#PK37r))_=1(8SkH5CvGn(Rh<}czrMV$ZlOuMwJ zi_aE@YrVWQj1gDm^$)Hs^#5%FGQnUWQSQXiE%f_`H@LX;^J{B&(`#!x{7C_bNtC{( zcIh!SdR3EulF=E;YqBe+Tm{j`o|%V&!K=9RqEU2)r3hV8W0+Vcs%2FYpi9eJT#oeJ z%r86*6qP2~s#J!F4Whz*5HSLmtXUCL=4z#rKMa6MyKa{>SBLddC&nTkf}i zI8ZhUa?}t~0i+5MCAnKxG;}VAroWhh8Gt1oEDe*h*``VhTd6XQPhyx7$rr4oWh;j;ngv8-4oTSh8_ zsPw$Aj>|IR+=>Mxc?Wz(2|U$fxfDc@l^T_-U(OP*__?qYabSoF9WlQr#x=>nw1uq; zI)JOBCtTfhLP^%H=seY2i7<}SLy?M0;xTJj{IAn>$;aeSkzT4?L5NZSMx0w|ZA~kK zGbK|UMl94Lh9bRCru9i>qhM5iBB=T4*SGUiukY}0^#BKd^PV{&0p;SYKBp7fi0$j* zwqqpo^gE)Y^f?n-{rxxw1laAEd86pxZd`^vAdGk@Fj8k8HQu}N5crJ1@&EF(S8+fs zc6Twdpg;S@4xeKQzaKewR6N&C2Z_?k1SUu9MaXzAf4?s5!Tf2h;xb(08K48D?a~i= zY30r&-Xvs^`KK?K?T<%6UL$*{J_?``qr2X1)bEY{H#IiU2Tq^nlbhmPJGsxhQQv*y zWPg6&bIW%6Z17+I-4b)IUDkgbr}B0IJwLr;wLf^cs{e>5JACd492D%3n6qv8AUbaT zXn%;XxJX&RF=0pHmwxn$X?WIuoVy6u-M59|%4<>9|92cdmWK~%WbFRL_XkdC^#@*m z^}`4GoMrQ83>UfW7WQp#IoG59e^%V9!Ym4)>Y(xhr21kkeD6|D%MRJLAZ4^b-NY+d6vL=$-q>JEt?U z{iAO`zGHRXiO1nU0vsy@_Z)U_A{)H`Qg`Q5oB7b$BYdzt4!2&ic8_Omzj6H=S#%5; zH+xnT2S6jq?f<%QSsbq1`QgHTU2yya?^^t~8fcTouQ-bornx+_+J@Mp$P`fq z4K7K<|I(oT0K=k1IaR<_0xqe7L^3Eas2S+8Lm5P8nWl!2%bp;Y;^jEodrF|0BN5^v zhB6%wl{mvNu)h0Icn78OZB1Ptl>4jGBni{b3k#?ylXq&ED4R^fU=bIyOKp5&I$XA7 zj>uT%>byw7^K8V*=7q+^vCtuk;~%VH=?cN>49GZ2tDg$bRF+u+ z;8C6#R#GAVVkD9(q(#&jPh_0XaRG?aUcr1SgN=ro&nfCW$GNU=7DPrKWc|L1S|bN* z^gs4S?PuyqW}?#E(|&NA?pnDsV3-Hcf9+dxb0=~xRvyFyaz!_8dtG`}CJH)u- z?77wi?(C zo8jZfUSHec#}S7ggB^MNwQc@*pa1f{16kM^?-oOfhh^*bB>fjKL!Z8ImH@K#Zqts= z8vP$Jtcfodx82X~T20-3frUoWO93YiyC88MAOPi#Jv}~X{OKh--OfGTN&gqj7~!*z zf7b`?_t)tEg6YE<01$Chs{gOA-9xXh*+YMLY$JtwfjJZwkgWb+bmC<9 zhVyiH7U!pQR1TY@mz4<;!ta3A#dN&O&u~$RsF|g919@$9i z+V>{?$Iep$sf>6nxMZ=*aH9dk(B+SvJ43#AG+KvhHeWrR>>F{*rD{hO0vtN<$3l_e7EIL|AQGX`LU!H-iczA{)Eo~ZKb ztTm8J@jxlqAS~ntoRO~L3eLEwP=_a#MeMA#Or(JdJAs;fxx`qpOAnX@H5qKmAW~(Q zicmVjnYEOX2z8MSi=a~y%Mcmy5%uX9JQe$90BI%$4X|?2u0&RX^SYi-MTnIrH>NML z-=zmh-^SU<)fyOAQZ&k7sWGjYtVR&w{@hQp?orEC**Z8GZf9Qv6w~IS8`Av|b!QM~ z{>xVB3gKt-7*=SuFoO$&Y{7d1ujY!{qcI=>(!|Dx=dz)vqECep=QQ;xvuob2hV$lP zzoQY4?3b%5M_dhv%Fhc#7K&xtmlPw$0a*w16Bl}p9gjE0#>Unr(3fs?br!J*mm<7Y zy^9mtadNXJ$|m(pR~*y9_#nl#gd-SCJYIfl&UHFn8o1E^+w~_=5vApia~v5t0Ghj=ZFhG+*UpE| z8cv^k*KFD-E)}@+Ht!rvJH_3DVDTS|yJ)?*izbX343-4>n0)0^#}0Kk8V14Y0944S z^dn(OkbDzyEC2kVgM4ffj2q6BLks^^m;`K>M@I5R!n_RinZw)t>|Z2+?#e%`@UEfp z;;wm@um}HkgWvt;b8($1Ooy;Mo*2Nv>c<{5%EuSs0AFMhpCqmw#3|*G&*O6X!m)nG z+jpgWotIYs&pmdc4~|B@s(Sj5U5LN9dlfyhc)Jr>F&G-SlOA|+tIwD8$@69+PZkc0 zuB-pZ0~XG;+Z)%?tp7tq24Inp)q6)ruVONjxd+l5{ot50{;=V*Hu!y#zLf5ub+RiG+<47vFXtTL+-@&Fhz%DWv~p zKJS-Cfi!j@u5RB`=s$w}5yLm6xrx4a z^Ku{5fAEaq4Au#8SlIoDf3qhIfvY+KrmX+}@uJy`F~=qjFkoQYtX|`onudmku%=a+ zs@B%la#g3&kcEd5Lz9hpmTvKe7nZK*qH_7uayhHK$vIcEcq8Xgf1+1d?@+59ftD-4 znF1^SimCM(rY!%iEQ?(L%d&Lvl#PkskpT!vQaXWM&0^{}tm{#UBIt>ahSnIl<~1@b zt{NcE#F-T{#?MtpE>R24uwXiY!#HZcs06DCY;v)NyOi1@nrGI=_YZf-pebup=cp_Y|(OVHV!FXe~M2!!dBx1}Xlk z#8YYgB``4GxQtxw=kevtIb)g{)K|=LJk+e046zZ1&OORNC&Ks06s0j#<|qOy%8D6h zS#o)XvCI0zW*j)TJ+*=qrK?gXo90Tc$b6?yS~qL%6=z|2Qq2R}DEmBqq1Q=A^1`6Q zmTE44ORpEc&h0yUofu-za@_IsCI!1u?JPTL*7l^6agNIWg}q>a0=R$PCN3km!H`Sp zp69lBw;gsE!mR^07%s%NeCVB18ApI1AY2TuPu_@_DzG?67XbIxKmOu1#P7H(-hUv& z1$oxOadgk~?LN!8>mxU5>|kN2Mtab&yQ|M1h>U>Y%NI@daYgI5cl*rS7oLE8Ps`Oc z#P|W0>XF6U9CjI=f9!b1H>bXBjI?2|Fco`}{vSSPl*7TuIM=S8{vR=S6dfX<=Ig&( zYG-HCe*gfmB@e!|&Fep0na>JKGGqKuckH}TjDxFJZr$)|omVpV^x zU9y|uLPqftN?}JJ&P%i_ z0D1$74!|xwi zj|~ru*t!>&?@GQ7%+C2UhVk2kQNsm*{^H7=Y-H+AK4gqLbmnmGm5FfsQ=6nud;NIB z75)6OUG7~cOyFbYwK;KB^P?|s3r9J{!Bm94lxcfH<1SuLh8>|ANLiLEIvwuU*1!Bw75M#LDD z{5ES>rOb}$pN#2nJy^n%-nJvp(I1enE#6N`DKgaq0-3l?2_!4}K~>!R1s+^6*<8pOPA6eVziEA?xMvd%A0`MXNR1C&wG zNh{M*W|rCFJWYKEGFCJ9SL9QSRmJU6f>Ad>`-rNGm;KDJUs_(83zhY)T1P;Pa?f7~ z2pK=JnSXr88neUBV{a`h?F}L|=IK93Pne&Fhv5L$S?$_QF{R(sqvu zTQOJadHdmQj1&XUEJdd7T|QqF&J28J=}sr?6TkoTskCEvH~r|2)#AR|O<%t30MAs2 zo2Rfx=+h`+VE#&2qMzKk3fbVDFcoyVFdR+Na2VT;u0AKAgT-*VJzc#u`Y&M8opbbf z{+56SFm6@-$05Wx@EPBS)C#5kpD6CrBj$|2d5Jy%9}glP49PQbKk_OKX>Rm6k?dU3 zp8z7e_w>1&189(=# z3uZ9fYOe^OtLi_-_cP+MM0;^$3sNzx-W+m;Z4z0|oG=7u7SeZwK}!so(SLwG#F+id zb#Ks~&R#z=5mRR5{@=H)EOY`p z@IG+bRKjjmaVd&yHWd25K*spO<0koBXGpJc%i|jh{XbN|BF^>0d5xH3-Cg94oj;0^ zSoDU6*AWieK78&-hWi_`dD(+qW4m+mPoGj@;lhP`pMLu3Ue8o5Sg@dB)22<--rjE8 zqzsPvJE)SMs8PcyBJR9fE+Zi=!#tnjv>G^SdfdTO?4V1_598405HwuJ7OAJKCg?q_ z-<)T)u8?eOV9{>JB{P+PN?0H(vpmi?%KgoNCM|R>z9~DZ3ekY6(h$U^6cgXzG0t`+ zy-_0HiLz+i-yivEN^Z>PkLfqAIA65c4OfvHr&Tqs)Qwh(INX#j!OX)|h4kue?(fi+&%mSdbw* zbvb45P{JSECQ4v33f&-CXWFG8Eox_8P&mD>=;B_0i-f>q-jOhFWMq@|KZC&vFsAHP zOA>G3g55FLTvw!YE3xTwXhWF6x@HXksC4{;tTOn?NR5n+*PUAx@R#&}vpjXJWEWhw zVLBzThk;at%z;^U^qYIvIs`#~>C!oT{|oJKV3Zb?c}G@uC~?8`5$*&51~}JF zhaYT_KV(+e3%u>a4TA$};R=N7?yAon<}-(1``|jaeRm(tpFWs>bKg2&wtxgaMxIB8 zb{q*Kt{7gowbOxBLRXip+r{$F?;b?_)Ia@)d4xEh9zI;t{3APn2H?;DEEK>8M;qCbc{b{1-rubZtg4e zAFi;o7LI2m2L+(2>OT^h!mWngaC&@>)qeoEMTfP~*M76qhe*JHi`&v2F9!T8?>~^% zZSD4X!ZHI^>i_9SjCZ432l21(TbJj8(fW zb@23I;`VD}qt$mnEOd;(T${uHCwqh6?+1%i|los;T}T zD4-pI>0k}_cJpCsnQ-+0m2;`0WHb}Qk>ONnpqw*{ zb8Lq%sNY!G@VUmKs2#=@FTP3mlB$Ae$LvNxbnr~okdr*?Wr&t(FiJ4lx36* zv9E#2C6JcEO&SaXL`i{_)A5NevshFx456jYv(ql;-0F`=IWFJ{p=2wmGqz-JTw3HU zpmMgMX<^TAR>p8;kQ8JR=8m$G=54Xc!bSVcu0JbUdY0mtQBuQbH1fQ0sb03S4}SOr zv?zh1Xyjt6jj>MaU*UF)3u2&v^3Pa8O>-^IhNpboMVffeImn-1je*f zEkkuoK}5LC>HCht9Gzl{5jac$)_6f@m;g$Yw@Y;>y7d-1w=uCF5x~cK%lJD|pc6U; zS0QI3qxxpY(JP|G6E-*6B5Aj>m;*-ne5pud0-A^??RcINJ{|*%j!Sez5u8Q%125MtN()s$(YHQz+DLT6vy+B(f`rIniy_m z0C40`6L++;`VV&{WQsE~pA`U%;CL{v2TW}(^*>&Mn{XP96LLy5(f{+wKZ}g&;{G!R zwP3w;MAiLe-p~ufmmct1USXlqnjCChLw?bv3~MO8-Pt;n0*W|AU4!~jS{3p`weB28 zWaF{?kA}!%745ZcF8gFeLHm|LVFbRacmi3gvoDNsTqpcS*$YM?V#tDYXh~ zD2)tDbQR^HQ!;}q?Mw!`wil{sj;byuatYkT7X`bzJHwEK&$#*~WF!$Lzj`@cRDu*( z%$(*XS6w^l@7i&+?d8JoXx+}-7l2X8tXZb0(r%q!HJ479^l%yg`+fN`qUQfy&_eMw}i34cG7}GDo z+=%PsBf=E@^6s@RCW-V_feD*6vDL>;&6(2bgMZ;JdUee%hARp?zz|0@xCuMHW+5=# zA+vZe_NJ5AR zTo-nY4wy8Ietq8>*WKG+qyHa1YZ^C-B#@IyC3DD(;UOFN$Yy^4uK-C#fHRpfLK*N7 zoO8?s|2xhctm;29rsKfhrR(;lgM_XA!*G94WOu_u>lw*O7fc)OU1Gz;&_B6kyU3`A zK6U;KoR=5@U6^^Q|Fb8y`a_!k$8VPqn4YTs&z#Weuv-x4DdHHO4-kF004e}AFn_%a8W z$&BNIaG$VuZrzr>h5rBLX;Tnz?~}7$dGiWni)Xt&icAm}1{W|Z@YIP5kOc;8^UiLc zRsAP-uJ%Ff3uLY#pV#b3t^Q~yBnN%uTPNvrno-@K{g*%$RSs14pvon^H%5{N_&xp| ztTjG?)GON6On31&$ISnMwN_(PVPh=|>&?1SV7RW>xR|i0`4ug)l0ReeY z;-r$1g^mC<^*O)Pq-ma}y(1#ao`klC5A`O}u{P>aO2W=~raJmh1>h?BXml%yEWZ3} z2}Z}!v3v%iqdbkclvk|O)#`s0XvbER@mW*_x7x4T%g8l@<_bX0H*3#IuCzMKbeg6- zarwSf7Y;=}KDzYY5HR$TfU6_tj`Z#$J!%AQH!v#CE!_#1k~dHQLx>d$ODOT%W)1gg z6~1%ha(esWV+py14ieyY^noK8Mhi!mTzTtChm;8d3J?J7kdfT3r|1b-m@ogu0R+&1 z!*D0HHPb~WOhQmR5^(yn**<;#ET3yiI^g52w(susfCwzctE+bVjOu^?(^rsyvPS<8 zm@>>AJbgHWh3f5dHTr+)DN|_X#3ACE8|2hA4sJ1InfHLq7)xAuK}YHY z91DbeP*wd82mVeG_tRc~bdMePaRLTTIc$tO^^i87+Tr%6Hv5<{tN%!fik*T#zGJmp zyJc^U{*NEo;y!Wy4F17wD`|Z?r!Lfe;N;=%T_;W8DZ*Mk`Pz2B8*$_I?n3_oIF6b( zl71`hTI74G>ObO zQ&|9>YZgWeyCSa>z*bNHFJCl;;e>r;@m5BnO)yT76F@bNFan@mxoNMs=C&5I{q!To z`M9qZxcna5=wjknRxQC9>(*FiV>V(OR^1-I2O#4Rv#g*tTJ_%_p z#tC?v7F95SDq*TRUw-*zpHaQ8X6HHLbTncCVKqxMdK3aFHJ*k~V{c-Y%!1_ajt1Af zJ|!zcn(Kv28|nubbBtP7#belfGS7g@q1povY)9?lGnVt=Ab zMEO+3Uxp=%t3&~8oH1@LF3I^t+6Df)22kk@*1(kGV?L{xl4#0EGb$JMK90H5;_A2# z!W(3WaZ4txe5U3~qIVg2kxqj6JQW)qEc;~JkxXYaMp@EC_3F)|p;UarXOSBqcE#8e zrFmkEad3cSrXw4pus|0<_i;|A4FL(9BqLAt)J+%D5*#J-&q*06wXp_J=^JXCIFvsp zvJ6l#)CIt=w8fFu=CTg6k#|(gLi#R&BsGh9?I6V#VOE>*WFiY@w1MPQ&55$yC;_3= z?+Q!{KXnBRvqfKkU0Nb^eXu`sHwr+L`V@^#QB&R@;Nx#JJ}r)bGwpOakSxr@#MSCo#ghd6Z0yP+^m7Demd(`L-nKhg*gNvmwFVXh%oS1@U`Jj#uIvHXC&a)aCy@dwtN%FX54#Dm?H`F#ahwiVFzoPq zMi{%H!r-;Oa26?*Ix_{ogDuO{B5Da+57xx4Y2);}(o|JB4+^F2SdS30$^*PgIdGeisSQY#Z6^ z#FfnddfhU&MssBu{RbFZDD!Obirr)dE1o`wFe(?Vi$75L>8GDAn5w}SJwWB+SbbA` zlglL^3T2R>IHPiJWdTm8hAL*rx<#T@(YnaI(bsJb84K#~?PpuMb2VTxuUtWwQ&=@^)ip@Lx}&I>cS0oz#rS<@2J z@CcGLXBW9jAIX5TJjYz+rIG@3L$=)XN6;5PONolN)3SUbssVbOXHqdA(wgDw_P2cA z)tjS^3=qX%<3~3$;#QC=Xs5V!;1>Me%`0)noSwFsGWjNPPSfpp)*yUbWzP%W4P{SqMOe zBU*%IV&roIAft-@Prhe^_v$~ zu&19D_7l?Vm+tTC>~&8s+0Jk;19T(s9|8AB?1?c$e3rc?j~U|Lf7%oVfX3m_ICIeI zzqHNE7cU8~uI}&w`Bwjt5ADdgBgBQ;Mw@nYyZc{g=NGSD6nZU8Ra;xz?yXz5BDy{w zs7xWH!cbWl{9!^7RMlNb?T)!16&IrFO;miwBT7E0IrM+!rH07*47h3{N$!$Qbb^YjOn)mJ}o?3hiu4W>wV{Ajx8>5AQ_-w6PCmq zw5a%djgisM?W;Au2?;pkeU{ZQV^%S-p==j_Pe{f1M_h;xs0Xf{bEcivU0Dc*$i^;f z2QzN5t9cxo3{=?2E6H42U$j|`RHbiZmrTw^Q}L9JeK~fy-QkY(tRq`w`J9CSRDem_ zuChgBfLZ!Jd!|h&P@ISHeph46%aP56*?v{qqnMdS0!lz{) z!wCD{8JA(HKV}KjaWX(Kfu`Jt__WdTVtfn~qioc54A_ynj^oR<$V<4Ma1*aqkTJF#l>9%L*RwrPxa<8_J42Rp5PBg_qqK4NQ-$Pw()@$*L! z7!Me-7peDJo)IG!sBA)J5Q1aD}CF~M1L zeAEFWeH)Qlprf;wMh$EByC9LPsH*>?#J%ZRAYt0T+Ew*`>bMrh*>7LJc8PBj&N>`1 z%PHGgx!cD)-Tc@FWI6Zq3}Am^TMNyb*6NQX z+9K@XFYaEAa{yEKr;3~NKfPzJPx^^X4Zpg3O`-pj<@t}EJwxVpkB?1@>|@e@jQKyl zZ=T4wTNth#?%Mm;1rJ6gr2@qRl|85$n5i<0jaj@=TLT-drnuHPeOuJAG>k(sNaho> zYP(2m#U&(8LUw5lPv}RNnGz`2waO(HsI*Kq3x9efEu02?SuheNUje3KMRw9Us>@8} z6`IZKAceJ*3glrI)bgq~4yG9Go)xav4i1t>73G3L@J8;n^;PE@#CqN_I@cG^W5IJN)AEyj6V6nE6LDTBKTaJGQC%6gf4s^gTI8?!Q$ePgq_ zQT6u-ii&y@P>S_NG+6;JZ#D)*bs4b)N=vX*J9n!s&cKl>f=lf-zzq4NaPHhUgq`RW zZkM8{AZPJ+qmfS+axHZs|(; zk8JU)1WX}=cRl_8hszJ}aX>ioMD>5f&_V9pVTKn8HbfxmEVAvoWT>1dG$;;_(m zWSg(*KX%1^^sE_350Kn;R{v*DZ1pa%?~7Xu2Q9aa7(`O92U$*s<~8=Q0Podi#?8 zHwrkDx$Tw+gE_Qiko(!6R&j{Q5A6nc``U-+qYZAv&_@2QW}}A$?>IlIVVS3jW7$4X zedy4k!#X-T>Vv96J*^VkDhd-2F;OWLamXg8a!h*i7FGiGH12z6`)|j zfi>_|V_adNOmAF#CIc1Ai_`-LrJISU9GmKMOqP*WpjgYE#gg(%57hy1agHPbkr_x6 zzf=bxRrl4JLc6j9rQOB&-NMFUtG4!KZp1o#4f$-gh@W&`J$61diUPsw!!>QzkJ={*pm;v za~k4bu&v&G?p-tarvfSjxRlJJG;Erfd?D8rmLcKCRC7N87_1Q@dA>pEzp0G+KnyXfxc+v$MGt-^#f(J$^= zQ&;~lI%yIZ8-`o0p8kLGyjgxHS+^MYqXZCujeAnS0DdA@65OCL(wlJLv^<93bAXgC zap%D$_4n^RkiL72~eyt3n`Z}{MQtN%#DaEbJN?vz$S*6~MP-sV

    GccQ;Br64VunZD6Q11ikbUX@2*Q81Jf{Luz_=MXXxJ;!b zD+N*Z{e6C2nafrvm&O7ojU*REcs@gjfvA{#Xm9~R0&P=hX&I^fh3rIm;*<9x1Tu^Z z?nEaNhH>6YcSbWl^ulhq$;L$)$5>oY!1T5K!)Vin;ieek!6HI{MX}%yMM*2 zQqjL@wE@>}6RCw~c5kZ~vpqN8jjTv>|tfP;){PONx@@PL&4r zunUahk+8EGY!VXYH*TvGX6gg0y+ackr?omJZekOZE>ILo)p;UjNAws~4E?_%4w-DR zxRWL{rayNBe=mdh_di;-AA==c(=MVOS|+oE^O@$r|hQ>Xotqxsy&PnJV;Q7M`_T#qu_qd*t18Dc;^Phj_sd)c& z8?eXj^i$$^E5y>1W=Xe4>i_=C{j%ra(Tt->BZfv&6E4p|_R0E|)UDrku)~CwV9mu- z&prvyIDbi7LEE6a_aE`OI>*$-fAKfQIE%rhA8C@$QAdIl4&n~Pgr&uayyV5U46lOh zM+L_aG4JW~R9GGbl6*wm{u%ehG9hHhk>(o696WfiZzJ!xvgN$`@QrkRZlVuVz=jN{ z;W%P6z?lTn9af&$5lo-T@njT(4Db|sFo~7tiBj$+qsn^|N}e=Hg49uep5)8&3NeC7 zJ?KO+3xk^{Hbg5pJ$GAY@>8C-C8JJ|W&ju@BB9eDcxp3sC!q;3oM?%U%Yd>WSfvn2 zW0FkgC7q>?3>XBSxfRUEC27VHCkeK;j_U{QKPbxHl0&Pk+cM}~b=8CZS7vYM?4SYBcL~D8FJz66s|lM0kzHxvrc$%>^%skEBnf5qZi@}diuVax6#IDBLZpSx*ulDZCQXv>^q#+{iiKkjUIgP!5K%7 z9-WC2bftFrnHN_MN z5<Q{>MHK*7TcFdEExkwq~JB5tjJw;sFAgRDG}7?mKbxJYl#!2U{0dS zV60p=v(5xV9~F0`3eTv&^0kj61}BJ5$_482>VXh3M--={N;so`ptV0prOoh64nZnE z2^WwWf+?ZTh9yEqCdJea}(+!qZpCh8>6cy8)3L z$DQ55IajCX&;=&=+Kl6N&yGR6)t@nhEsvA4N`{QwqsbAm@3v2#J!Yd`{Tr^WTEpSJ zf7br@$T{bnGqrW=)+shNebJ&ta}FIkH1FE~b$0cfs;h7M0wx_PaUe?5Dpm5<7z`!z z>VS+l82c-b7EM!P&0Z~z=Y@bwo;`W5wPNd8X^D-l@1|;_Tq>FxtBh^Ff><5N3;f-E z`Xf!{N9FT`6kcUWEV+@Po(e{@Llr+)ZA@heCzfH#Kr|7lYT!1D9UDi|TDms5c1#uX z%o#BeSJNe%2$_3A43;bST_&4i`WV@;nnbTFpGXHqY@~Z$O4AI#54i_RrOfSYz9daz zXU%vtSFC(c$_)!yZ{~t&nIPG35F1tU2z}EhQHZqvvX1v_70Q%=e4No~5=xSv32NJV zd}$(8&?q-Zj5mjBin2%?5&uz@fM6WTvTi1R;Viwb*$zg z#hi}IRmD(M^<&>fVB~>w86{V&Dy3)@|44o?=?D@UefATscE;}yxJ~h|K?F4c3MP-E zd@hx_Yt-h{vp*+QYs4pdto??ENOrRXWCdx(`(a}9Wy66Ug3KhtcfB>?s+0XmJe<9c zF`|XEaXe$XI?PS}9x@2F^f{1YJmMcx`&ZUcxt?SH<>#%!DJRXsDGO)e9Ur|H8@C@! z7GYsPanZSp`#o2?TVizm?K^PS`h7Sy)wpe*@%Y8EY|$)y_^X?GQl?=iJ@w?-(*1by z(zcK8!Jgl03E2HDiBl37;%^$wk`rg(*I#rd{`#|Pv1$9^(53m=g^yV%-GfBm@v(b> z%JG281u&)uRAJ^hJ)f1Ying;a;kf5#SQK~-*Ym%Huj=6J0%r;5`wy;r#apVrp7HAM z_0Oqli&F<*@PZdi`SM?POJMi+vM0>0F2GHcKaxgh(-T3ifWzGtaK~oE*kw_&7YxWx zchblR4yyc7g}R3AM@S$WM8L0#NsT(F#0+gey`Y3*#~0HHPYxf*-5R(-aA$2 z8AVx*Cz$}vCRHtzv!N2LQNm8yd8-V{Vos`9 zj8WG{DmYHFz|LcNj+zb1KC14TAXM(IrWf^F&a<2$YaRpbHL3cM2~}Q(N%<9_bGmBM zOs=LeiAW|#2yk^3rYc-kInOTM>f>V!spe%Lv7d|Z1XTz?Uu}Z>ip$kEGUANO`zhJR z^<9=$di^U9%aw?U%TV7TxcbD9eyl-<4n4An2c^S2)p~1eRHnA)!hPD6SeK z-uXKqlUehZUbaTl>5Eu!nl#U$jfo5 z*tR+Kc&(MBsQ{k*z*|O2OCAJTKk7_^RD>lsgUGzJ;5xq_c&O)&kb>kn)fz}deHd8> z&P0OfS!*x4aJkN!E^^@DF}&^b>+#@@!&Ze10^3!kUVizhcyznW_gB}hMYnl5Fm*w93#Ro7|CY|0!*MGO+eAoV?`r)r`?9Y4F6P94{Wh-#QZ9AlUq{7jo>e;wE zMy)0xt;d|714#W9S zrf3z46eE|iep679bqTs{76%SWFfe2R%20{L zdE_*)Wiijc1fu|wNY<6iR*)Gf+%YUcXd~r;-Xqh1CKRPZXwrHVcf`p|`OJjYzVcyh zbYmJ-+H-KVKw|3X+G>nRl-Fw6hZoo&%f*qIEXhmSH=HWQ{a`&Yf>QbWp7DA0s{1(? zzp&4CBZCHaUau~}mpp?>2(x)vZcQW|;aaW>^MM{3=nn~Ek%nBdC&>aWWz{*QUb>Mt zX-21rgjN$VWkt(7D*!K*=LE@-h`snsxQwV}b&~#xx(!=6(`qaMsKu8H+wf~crKQcl zi6()v_U}u3g;YwK_2(txB7I}_=>4Pr!P7GQCar&2uSy$OT#!&%GSe)QUr64joCm1u zz&NVsRAie37HZ-Sl30Or1l0RbnxUhp`DM03Cap^Ek1COJHjyvUp}hpOBRAiSBqc>V zQPsW|Yr15QLLuNjKXCA(9Fi#793KCS9jS&&f7L=ZG*#v`PxA2N@L9piTkjuIEq6#C z|6+YJ{xvKwgT}q$4tOkRe3?i>2$1~MlBc@1s;jm37sX(b#JwzW3Au*FSUJ^{&v`vE zq4M|_Ys&ZR_PUL*l6qE&|EBu3!NV#vNP0k1~HjEMNi*rv}htVy90i7k-HIW4(a zG=HW%)Gn)iyCpW8dqU;o?)~b7xzq8+7p}%nJ#qp5@>6TOhk+)&mOou}>ebI(iH}~t zN%tH$#%T0u)3UY-cHudTS^~8bhmSV+-o3lq>eD*>?Pu3x!MvIJUw-jyy!fJJIBm%s zhN}L%D_2T)7h-oV$6nb}x;qt@;DIfNBl=4~2)u9lltvp(j$8K~8DttC1EG|2TSctk zWV=OtX27!Fn~qZGmoE2sE%!F)0-1&YkODbdC29|LkrBy#N0DrL9(B(!mX^ zX>*Zs2dYGC2t@Da){3Ug^oXu8;}`oOZezL1B@Zev5@?xfG-YzBQvn#hlbPC`GUHK! zYEUS_r?f1=3Ai*ukZocJ_6UTia13mY(nhI|O^rF15-c?3f%dikcAZ&`CC;Yd%vmGn zS@`+*i|jVCw8`BnKbAF3EgjjgYKT%+B;DK8jT1CQHOnt#wV@L2L#qb)`RvXxWNcP4 z3fT4sPlkSc91Nfee{*b<<MXdosy^7I@ zw+GhWjATfO1MqrB_q2K0eQp?yDnT|o{~twl1ja8~|B6!X6k*!z89!{MzC>O8o+)hv z-hAfB+>NLBjpYc{ASb3qNo4{bc8w?IS2;91OLMukq%Vv9fe(uRE+hTWYadSF+*gDf zRgv~#_A$ddG|fKhlRmGPxYPB28syd8oTQ^&!da6_4v4T+&6?0aYtjmfS%x!6(16Oe z@XXL-L%lR4L4bx^DvW)F9lS4}r6yeDs-32$HLrz*3Mf*Oh=?0pkShvss#9cCmS4EH zivvYqqtsc>6Q@?h3Mr4ME%6D01UYnBVEOQw7-LKv0}BE^!7@)PvBzWv#MClXzTqUx z1Hoo1DghID9Hi$+%`1kJH3{D__gl4eE?)Vp({Q9EIU9By#5eBPNwpWh8=?RG)1SR$ z1hi^NEHQ2K2u)7RTT(M*pe*2}5#DD+zy|(u$ z%GTTV9L8tAvqe7t-7R?1BNyVQFIpyZW{t3U=iz?u)yKZJ$rKe!l{~uhj<)>mt_^#* zl&j@Q-sJRk{s&{xNw0Wb)UkY$ZeWPWv+}0nofkMu!83p>PgWpKa7kyPKMgvZ{06M= zI-eh4xouSU&&B?AK`u%=BaPdVd~})uTWS!gHC8@0SCx^^lAt~d zu}cWL8P|sLu+1V)_ZWvpIfL!KZ*o4)v#fM^UP2O$KB6zzvHJyyPZjLO`)t2irBjZF z*EUfKz|hW-bZb2Z@hNv(mi`$?;)Bcy2H-N2ee4|Tra=QWYGieJ+w%)V)9f7rVwe-OLTq#v_H{x93S z+^vCud$Gb+oF?`SmqUksPEt+-7XgSJrTWT;*c!H#D~GsXBpNn`pYDHNlxTY6%+JY%t(S3V~fD5`c$`6dOnkkf97N!mPYAv!^Ag!_>vo>iqZI- z@lyKA?M=uS!$cc42#};=Ii3`YFzb)YD~akk_HedgRY#zfDlG&gv&MW%jAT-u(Z5Hz zWUT1^cKe!Mf7KcI;l{lND`Pwc?N)sc?Q03h z=Q4=|hMs!|z@>-YRE_0pUt6vh|?VnCheTe*^{OYS*akn_SKGX;S9sdG?R&g z8sJWa!F}6Jke34TB?)$8YMKVsogm$1I#M{mS|1M5jpb>^5vvmMqqjLJLOn2qzfD}^ zEbm7WTHtit3~c3wCec^^x2efjT6!y=H{vrG502n+@G6&b(=>C72nmNwIw~WAQA-|G%H=bO^w*G+SZ5@Btns9|ASvka*I?r@g-0d)BRLWm@rIGM(##^ zYB4fX8OEVkq=G^|62kVo};@ThoBOxq2EoUIDQ@(?iE5ilZNsS)@Lo)h;(aNI0beb7`C zg*foTBEyhcVnM-Ww##yowZyAc(o`0g2ZVrRN}^qkQIZ>YUQYBOVY?eiqeqyJD~V-I zM9i>0i)V$LeTb1|Gb!^oD=&fT-nChA>2P7_!a;&<&%5n07nRv-1 zEA($ZyIwZ7Rk6$4<-M1*#BSfA1~=ZZy}PThAM_(nD|a7$_NI+8PMkGSyHp)g3!7wL zwZ~UvYga(c_9`57@=l%E=Mu|!xoVYc6mFst@nUjY{^8`!8*cwIq-lDFHCNbrht(wvx zHY0Z=jQMXEtOtYPY&|p7L>?^Jt34Y+w7M3&&HpKjO&W3TdX{t~33H~`1o{h6wm zvL+G&uY`z`DcCc%0>G^TlE%p(6cUxRghn~kk#l4Tn$p4HAbc+q9ivsAaun#z&&RGZWq)z`(R0Y)D;rfciw30|QS35@<6%p#6IyJ3; zWSm)EjEB_T-K3=|ZXhSL_vE9Qa{0_o=$Goc%2?ymR!xbF> znyR&mLG@FWd_xiecAGGaIO=MGP(4wcI%oBnf@{{Pna?V|WgmkLp-e(zsopYMc_jg? zIVPfS_VeqpbI*~~PwDBT6Q<)=pTD}h%TNFJ7athdta$n3AGuJv z-{E`5$L_OXXbJ|E=e58CY!g%n^R&s@1sW#?5m7<^%nw|8n!z z{!tC*teh`D)mE^6?y^&H{cSt@YSxFpy0L7CA2>}3@2DC&e%F=&25bCe?>4t$@E5#d zM0rjFb6d82pQi~CQuUYKn~W6<&Z5Yg&DYDWO#-9vJdXfL6nOSyJrhBqnC=O!|?4 zYqS*>#~b6m9`2Fd32vodk~&SKuy+_EfvyqZ!%2<0WTtHBToPmT94=Oc8Y5wL9qTA5 z*=P`+Qb`#hWC`+EsxdGUn`hTv1<`z6_7k-zVB${f-W?>Ci(y3Esxsy=jR%TfoSe9r zl7vBgeCAUESK`QJpo&YDXcA4-NIKnqCZviIDD=<=_cQn477NTppj9Ilu6Cy3v`+&W#i1ip(UQm<8iYK0oKmX*KUb1P^ zMV6g3TX*a^A_v>^&pYD;oPGNI?t39Q2qg)LRT`z}tDb$jeC5{d_|A`ZR|Sji)Vm(o zCwH#j+Y+y7czH{#&RjMR3+K&jhj_4BQq&YYN`H^f-A2OfK}+gn0#j`lw3QVk|MF>V z@f3u;oy$=q$GlPuwwbU`HPTkr3K%tf*C&<+5oxfcJxfA~ zy_WNvrm6Np7{EkOdQw9qINPA?2|o89S-Tm5 z=S)lP<>pX&QY=~c!K5pGohD$W?U=b40<04DlMp58X+$Q?RQvCyBm&72t!h;P>Nt4= zae^Tvc0T5jR|H4~OH>IjWXSn#i1wOW=eoQXgGr!~4|*Fm=#F=76kY4Y<= zKNTOiZi7DM(I?62OXtW_&R&RH@7p7bPMC@1?ULf$*`xlUpnq`nqj31>6#nIV+p%uz z0d%CRj{9PQ=Rf%r*?(}VUEC^htFV;n@k{8-xi^X8 zxlYh0W8s4w(=65%U^Djy$vg!7`c5Q%(<_m#tt26_pGs?z0ZSU56M`I~5Ce~DLa>Ve zt%w&%K_i@%x0yFetm4U5fSgS8tfv!C6QMBfZOo%A7cu{P6-4N=)`ZVa*=M+5`o2GZ zL_M-QUs_eW2dCC9fIL@aO9u9KjfC#IhI=wrHhBBQps~SIXQs9Dc4f5}0!} zlIByilOcNO)$YP1yfa$05bspB_jc^WlJ~{z5QG#tgOyua_(3G~sDx&y@ucciw?d3< z>P|bjMa6v-q3dL8^{E>7IQ5yfj4hu@LSj~lToF|e`Zm&|E42QP&05s;rPaVBdrEk9 znAMsxz&4g>`xnhgGq%vWoG8KVj8tW`&ulnRs0p!RvJ?RX4XJ>blS$bpWU10>G%U=R z?QE!SB=}v1RvIs(vsgyuz!gbym2qyDY>iy?DcMJJbuGnd3je^#w4J~vHvmZzyROJm z5H`_-LZF_jNr2%9f9515%Yoe;TL8o!uSACEkM85*@h|DT@Zr*^!UvUf6r7ofGntA7 zFH=AX&m8{=AtEjW;VPQ+S8$5;GnAOEbsEB*IDfiy8@o4dFMD&objvoR_%q*w{Nl4t z!{g3efOmgtEpA`8$83;je*5S3?GoM5HfR3Fm!2iv(p>j*HShn@hF(A265emV_!0WC z8#eVnOVd@z=o&Z|3tiZN(ky_TcET;!WqRJ^^Q)I$z)U$@{`FOyfzr z{ePD&o+Wc}yC^VZE@d8HlHfsDe6?CmImXXaFbLNO~7-Inuzb9Yp)rzEOSMx^+125#B?!1PP&t z!~xWUu6q@yfLeV~HturI6onTj9bO^OJh-uq>WE58Da6Dbg#cSpkC`GzV}%qo3`|6T z`#_qhAb2tr$;>tsGl*0jLSY_bd4Zs3=G7om%u!YVEy<9-Luii_=#B4p&_@!X3wU0z z%n!!42K1D6%lItXi~QWLqK#D3`yi^}z&+_LHi~638w3-pmTHwC9z5wxh=XM%&xjAF za7=h3HdiVyPC~7a4n9($v7{T7!Av4jUmlFTy<@84OR7^txBgd@ad75y&Cu} za|J<5m8x9gg$l1eAo*CakuSHFs+$gDCQqothsQ8ZMuQKT^ldp#QG?NlK9>EE09Kd* zVj7^a;l3ZemPr zYHFv(K8`aIxhCuiaOZ_W{X}9Xxj`wfxC+ZB7L%Y8@U4Y0+&7DlOVzJkZIija%%?Zc?CN1YUfyizax_|+r-@yg(ioAJ4ye?7^Rs-Xm zqIsUMzbS7xBl5U++mw$p15Gb#!dB9n-LE6mBPWVpD(Vh9N2=5bi>qPGQOvUWg_cqC zn^`la=^I~khTOO508U*p8~@|uYZx!0Ni$D7XAxd};WGUF7aqVj@7y^Ui(=mF>G=0A zc|`x5sZZXx33qQeKyCD{)b;yoSDhhW{lWI0P<7&TTh{K`xDWSi1io>{ZhhUAD`nNP zxp?N|PsYYwhp=w*f&T8m?)g{os2}ru3v@ACb$1f}@^e>8x556{l;W%HQsGT^@9Ih3 z|GIW<48~&8Pb9z^@I^Lnf!c*^AUE(mo9pJqtB&dR=Tv%$^TdwDhA>G5aXwN(92Y?_b%JN@0o3539_-APeDr(tJXq2ct9w@i|^g8ZkvA_Nx)dKeY)89FG z;nFYY8oew{nPu7rZ4KvB+HFb-(UHVX3~ZYz34ahSms4s^7s{lOj{3h~5afiBFBC3BT>0_AFa+)_J50_>3nmfNfTX{9hkGGYSS zB48{pDfP%rcxX~3Ob3J}FHO2%M0=$&+KsD_tEk)*A2)?aAO~H@r=uVVk}@eR>D@Qv zcgWZT@$jVp-r-qfR2Mi;n9cb{9YQ=G&@J@ucv>I8I^ zq_5n%1J{0gGlDV~86UA?9^Uqvv(XWxKl$jr+7c?WgF4asnTwW5cNgGyeze;LZsgyj z{goH2mhav7P)o=j#5=FKUmx6YNV@$|^X5!%t79j~w2}EmfKeG^E91O&$?=UZJVXBZ z8=Li?Zg>!nS$RS)(;e&f;>_jqz@ z>b}jDi>J#)XV15B6i>h5uKn1s~F zxHQ&39-$P-^7Gnq4$k^A2|ZCu>;5FOAzzj-lA%E`tX&6pc48P*>APSMvyNYju&Zb4Vn@bTN&9Ta0$jwGam5l71TiD$ zex`C>`MiLaSmtvAQF=}lC`~$a;bAK-@bI#{tW_l-Yg`AFFLy0hiMj$L2b}?|Q)5j@ zQ&`9{LhM3m)~Mu4lX?oPtWBBK7m`eHNq(8U1rh%$QQ_#$dHLllaI~%JoP6ReT=UH> zx^v$Vm)9=D$qQ$-#Ouudr_w%t!$#LT+gY|~Hh$wpXW)k$_T!pwZLzVL=B@wB9(OVp zFPJI+_~i|#Dtskz$`wyqs#|v*mT&*C5Uy_ZVdc`f`uUr;;{MGC8wR= zO&gYCzTkVX1OYd&EGOix5xGtn-NSuy;R_+zM-crn5^d{^aSI8p)$`4+jg})-ju39yB?pzr@gW;5OBe4ZANdFTL){2=5DG7)LMJ~0L1mN%N+`tVkMU^+H zMgq5HSJ|*1&sFcWzJaKiM5VyzTav3z zni9PvD+N(-hcxTi7^AFbrczIo%DzhN)?SPEDD^pXuF$zBSMekmY@tq?1-5b$bw3jl zkT9B!g^}-Sa6KrPs4Kkl`&gp5;N%kSYMnh-E}hf=`1_{qhp=nk5!}A^A3-JEyHsIjl zDO5zZ{qOQcbM&+&bL1mm+vvIDm!G#9dk!3v&)u}O_mjKU@5Kpi#p;st7WY5y-0hkA z=AAom*8}_Tn&+I}J!Dk>`ZMc<?LkH^CV92oLrHRiB~bhS9~|7So|iRi@tcxkR!FciBDDUukq(p zaicmGEX1V4rZgr{CMqgb)Fs4ZvZnIpy;b$s8!lJ zxml30ePj-co(mc;i5IcE&!_TIgfM5g4v5?U@}^XKG=;&g&(2LFnvxA~0tg+I{cM~- zHyMBhL$mj7H6^e66ZT6qH2eYSep9nOUacrWJULrCV&pl>2CUF&A_^np5?bY7@qC*e zq}m{Ioaxx?P(p!K!EQ;}ewe$Ui&!>Dcd8O3qzUDlj84`}LnqFgj-S8$WL$dg0z7W@ ze5_hJt5Vqy*6zppt%vZb@9e}4cRYl3-EV@CypiDf%@)(N$X)gx`Yf`aWJF%=?j|df z7|ZNI4jlV5?_Z;zTF%KNm-;LI6nb}(80t(wAYPdwSrNNS5DtjN-&_C>c#;;o+K5N7 zf@MzYMspcOQuQb%6TxHBI0T+ng@fd8nK7f6byu$v=gDUZKeftUx!X^DNco^r5$Y}q z3ye#IDrGXLC+;T78562#38AZ3&OnI&LNybg0VEWl0m?f!EHNfjO(dp7@cB5)5Hy`; z8z>Wo)>12~iWL>EQDJi%NZK=JE!o6`WL-MiLRs?FF~1rdIhNHKN`4|}KD@$V9!sx5DsN|HiA8?-Tr*&*mggaeB{mbso-ExI z(jXeorXdMn`xiZGHcnqWcnU->851~{YfN$roRUyPFFt#YoW6L*gh3|YSB=pOG(l!k z5|#9K^r4y!62*Uf*C7(Df94qA?f8;ssUmC z(?D?N$sV5%>fcMYV1$w0^Vhb}4Na4j-AqCvMzqIWp<4 zef=|+ER!oPI2oV$_Ey|--$O-I22y+SOD|h47oWQb?{6zX>$e`DQt9h5XV!E){rn|8 zq1v#0_{49OZprag&pI7%|44k_J;D9-mWXu^?mT#eIW%YpH|XE9alaloJSD&R(`U+E z59~pASK?H+IsFGa4c?Ib zy<~$}uY+R}Qf|ss!5o6_+3v)aakykyCW)%9yW&|+F(L}u7b};{(F@N#NgmvJsQ>w$ z1BZ{vo|cGi-F-wGpvqZom8$Qq`witTF8d!;KIfcsl$zsX|F`o0Kwseb$z-0@c)&7dB>Wyb*OnOVNvGHstT z{XvprrJr*fG?1JFx9?v93`TyjhL$(0q2 zs#OfSYutY5+K59%YWjRKuIqBfl#rajgf3A)lG=CzQ74$ZGgH%&OI|v3TL4vHxO}M+ z;wWw8*g}Amxp!{v(Xq!_^ymB2+6|+*V(+Ipoj@5>mQawRAQ<_eYQQs#I5j z`fne7psh;n!$bS0Y&@k*xp4k;Tzu|Aec=U*7E5tVE7N(bfJa+O(i{8Lg3Hp^a)^^d+%e-3s6(dnZn? zo&dkQm1tY}c}zMK14`uOhp2F-#9qD;t=vfH7U4uvf33)se2IYcmh#NLh&zZ&hkv-D zJQ=8o>HFnMY&$`tJG=No?&8-{1L6fUf%}0cGz=4gFzEb~(!EvASX~HNX=?)|x|PZ4 z=chvgcf=;FRT_jRM;0l}ijwygv9ghn$n_HAj4FbgY8*5G(s_keB#TOEzw3z3+Li>h zOKy1Y7au4CuSNwt`Ozn#d*b=WZ+H+N=$6lt4!i$8_kyMJ+_s|hmG5uIb+_(7R5wh{ z_IUBrmUT;bx?%f4bI}-I_mIvjpS%>G{N{t$xb0AHn$wod#_wJINW8VJTJ1YDB|xqW zm2fc!)+Hy-lwY}WmHx#)-zOa*>o&1JX5|Tb{+TD@XD(VU-?(dMzp&Eb_1=R=+oi%? z`i(nx%A-#^L7(}A#q#ua8S#f3_sPw7KZNc56XVr8DFuFU7)rChkR@gtm{2h?cn&{v z*RhOajflHXo(uUFfHL;(uF9*PdP=+eIZf_bzYo(#BVE0GF6Pae)~*)Jz>3AQ<-(Vb zJ*TQ~f;aqiq^c)WJYo2pDtyO-IYu#9-ifIgXPreILA9HzNoINivHMv!a3c|R2a@`o zMyNx~ngD~!lU@l?Cr4JD*ECJ9Wf9)t1+SjTq`r8^pk)o4k@aVvw{kX~|5FQ+Tpigu zX33nheF1Y<_xkI1?UgtF%?7;ul9T!b`MK}y!H2%S8!@F~;>$!J6RnUxFVAr=5oiY# zhe;cndpNbbzr^PdPLk~4gR!K%Q}C*1%Qe?$fY&L6>0W;MnBMIO^v)3A~V#6AvB zKZxJH%jBQ?lgMcj!EFDmOoVFvw!>}Z>0Z75_Fa+(>-uQ_?%sC{pZU&qx%S)J@Z0~e zrr!sV&-MLHiLk`}B5JQmG(k~4MnS{=tgMuF)rf9!C+>SHvNb+4L}jBUrFg5wYWHK+ zQSs6Acm(!UaHl-aE_|>Qk&tFh>1Sc&P;8;e#(;Xakok8eQSM<@${Gx;_*7Z* zBpX3yB9Q|H;$s@aBr>IlSGBQcF%&MK#{l)g2~LV;jof7K`vQ(tv+Xqd?X^0dn9xXE zIH`jsjj1A6A1bx@$9220covt*Kyo|y+%Idv_lJ4q%0Ut|qbFBWlDZx=D%t)w5-Ysw z;T2Gc++n)z+8v3f?7VEogxwL3Za-2-Ub?+d@A&9_+CAtKl@AKKCAn9&6{MT*-i?o4 z{~&5KQ#^9Te7*95Q{=mM@4`o}-c)B5K}&2I@p_vnM} z?!41mJn1T6b7%Dvf4$;KC(D2P(7n20$H9!MDFVv-(X^g++{Ad?$U9$&K zD6qLUl{bi;#s zY^vl2jcCKn8G?gv9dIP{&-v7T`xFKn)vb&*c34g)RZ4qQtlUt97vX@#XKW-kl1j!Y zn=+}nbJ`f2lswepuNi`muf4MW@@bi2J5V~IQcUD!E>Bb|CRM5|g8;TqMEwDuQ*!mi z3nyrdl>qLS;T|IO>CXpm*sUMDVV6{tz&2s{<_wcxt$asWNH%P}UrUvM&-*%-YM^R# zgv%o3GY1ZT%tIQe8a?uDA>H>QOPGliC8sE)M3E{15FfjvTTzZi5U7mX)#bJfkwA~n z+d@2beCUgo)cg2MKb##*Da0^aXfUocPp|jMnX=2%;Q70VX&PJZoKqu7-IY_UkeFXL z!d0pS#@2THNO<@6#Cg-?^G2w;y;4{F;ceX$kporiTmm!YVtc#x9r4wnOuC~onRJDe z>@*Y0W{|{2Mr=9JG2rv%wkDCE?r&f90tti;WN|;S3T9tzEzib5gDB@0+i*`^Tx0D? zxFaWjo#o4o8R8X-6wiX1%&UE*P_OKyFPTqS9VXhdN|%#!)wC(LH+l>| zxG%F9<3>qRE(Vq!m{fgr-}5kt#7KXU`s(|slB@H@L|MGL@bupmhH+^SPs!qn}#@_0&n&n|1LP+z%q zNB>BM|M1dB;0-T01Aq60b#nMHe0jC&=j(Uuz}N5GiE~?m*X_^xnU=h?OP%`NdvPjq1leq6rD%(@YChP~-~*&K|kU5Nqw_)KtMRz*PHD#@Ha* z{o!4E^z8I5R5HbMpCUNd7(6v zG9e;4V9J*XQ}vG(e4?GZtBIxxzdO$wV?r{UHVrV*GL7dXUna08%9Y@Y+v8R94+D$m zkeH6db(U);}@T*&0P5rL0m(Dn%p3PieT3cf95i zJ)!D0o4@=WKh(DB#C)oLPrD}!0#R71z+t^)4CE@AAQR*P5s-iqOM{k37?Vbh91nU* zg$PcPNW_|5X;LFm`Pi%6WRC|UathVgIEnEkb@100fVzaKl2e3+FS-}Hs@-AK`ZU#o zw zADkhX>^#SHG{8Km6Pu0*2o6X-J>hv`1<25XsMZ<*kcd{b_V3DsMoO&WGdPB>o= zUj#AEt8PUG^<69_IO?&6PiinH4`d%h{5~NDi7}D6@*Jt|M~1iVJdEyf1b436;}vYq z6}zi{>A9;~;?z~K?#1?pjs#&dk-CS3cH4m7`r&(I*S@20_bFa3%NNbU%b$KKPHRce zrX7d$U7uVdZ8c1pdsi)+Bd>V+Y52fbHe%m_sb2P{oxMmeYe~%yH|&#Nx?*L2r{Op5 z+||oS+~oK!Ja;jk^5}*5;}6|kjOq3(SbOnf7q^wK>G;rB*7yGRiLXD1Uw_dV*mvj{ zKJvAVa`;H>qp+EQbWd;Z{&khDr=ES1y!gVi`@0QqY-L!pi4QO(YjmfOAbb89s>u>0 z436wING*!`JkQZtW%f+LtDk*3-uI;qy5_+H0=Gksf2mr^M|bDnqD713j5E$q|Ct(A zs=8zNoGP3Hxb&zDU*^Plqqa)6 z1Q(xk0?u1iN|Nih9qInbXKvn&&wh88_{u|he1tszNel7(C!N%uKc}Bbb-xL}Hiaof&ZtUP&E*Pf5JTdw-S+5`B^cgvkiCqe#sKdlik=aIrl_db-|MM z?}D}*J>7J52)DJBpih5ir(S=@PT`E)mn$_)*tys5zU*`+L)_Y4_nDh^y6j!MFL?5j zR=111?f>-NbzP;YAieRD0{ms;x3aQmgr)0r)hV;_3zskL+j#3oAHce;hgh|#d@q)E z{k06$Nb=cb*AwSXlN0Ap!$bR~q+1$f^(hk;I9-td=A|=xX0UF{AzyCsYg;{ak9BB$ zLDy|Pm{`8x(sLKey)uzCgIWzaJ1$+mG5GOaBsB%W{3-aYVn!w>;=i|!nNK2zqpo<>720y0)ceRvOV(oktT=@C$2J>rf>y%Dfu}MJ zL{q}9>VE!Nx7>F1Wv62E?!%bh;>>%$_<*-2L1gs>PhBb(?`W6(Hb`?h zz3m_Wh!b)7;}^-Fe(c`$s=-!s7{n8byq^)2{Pu7xmP;;BwrNmF% zxEY`N)@D3*^#Z));^p1*t>mk>?&wL^kz>Ky3p>bU)^%l@&_g_RiX0FSrOevjIf3eQ zeM39;ds?Dtp^u=0%=v+fV;reHcJAES{p&BPDpix7Q?>LQc5q|rpmyHps?)cT`o;>#1hi=%}l8jwMELpi^PJ8_+l}tC@wYRNK98T4|Lau)8 zc_+91l+DT=X==$*PiEf#f1TA5n!5k~yvG2qxO6dYTYmt*@Mrh-B&#DnpZ z@7j9)6BpvmFIkSO{`g1zon;y7T?g&I?%cQi;>w=L9q;J+y7-(0c>R^jdV=-*x7^-W zT?Pce^TWiWv5n5$uViQb&Pz|1-+AfE>eP3CW@AgJx`%~!4qBE!QQpbn3n+K7TW57!)7FS3Cz|+;2G;A-`RW0HBn_qua zOKx`Kxqomgj7a%}g@CRa)BRPg9e?}caak0`wUgotbR3=JX*)S$T;>!KvzJkh(;ZzWL(n;2%!3YzU`Z)#X z#ll1f>W)EpN+Y$B*e@gAnlQH=)<%L$e;i{@pv! z{*gRDNp8|NKCP9w+eg*K!P14Z@E2|6h(s_~<~nlobC;irYrnOntNk2-Zep8dp=aYg&@J9qEG zt@rJ1$<|SEQOyp=rbNGg-$U&<9>U6{bGzzQzdX3M)nP~Y)^0vv0T)W*GITI4vR<2J z`T1@k!%9eeTCTh5sY|i#p~Lw49lJP1uq9DpRZ?b7AK{5-EyRiQXGpiv{%h|Wdrp;h zTc^6a|EeEUMomv*3~&Y|qR#%1XIwIN5wm5Qde9Fg%IQwZ(y~)*4cJ^xV?31Hp!EL_{Rd&%$I(Gr3wq!Ni6 zx$E=C5voaTe&!F)#g%WlL)ULTSP|)ham@txQC|khApScqTZJK^>K+^L=J&1vlbtV* zw*UM2r!T{MUjHckpBx&M-IddX{aJ;I zqf_%yb5i?#MUKT}j#-}i-Fg-midQ~!IsWE1&h4v9|9IV|9vC|^v~d1R-L?NHA}KcV z#uuKB-@p3I{@kzKz6+oF<`#6scz1vP47}heOWXEVpd(&w#S72*J#JB;PRb-FR&phl zX1wwi<$FJ;RF8bxiL~>^CyUlfRMGptg<05_q$_1m!8p_mERw2RoI6{Wf+(Rxc=JY# zJRwb}m(xU^N&``$GV#4klX()6ydQ$s|3TZO4ezAdL4#B)n#Tm5_I*JTDFxe#<*L#R z=(r?HOd-(>WlA^a+3>kN!t~>V%PF!9F6P=br7gY}dDRJ?NnM7Trzwiacaq3JqN8aU z^;OS4O}4cas_rLf-gV7=ep60Ptmmvcp?iR*{GcU6ANWe#=||n3d-@6b>SvuUpa1UG z?uVB9$M7j)iSwd%$?bJlu5OpyHuOX!TiEO@zxIOF_|XG<@q;yc`eAidt6zNPY5fz{ zyS-Gu^^!C3u%YGFSq}?jqjH}b`jq6GiS>7?s->cwSz~d`UjYv zwR|qV@`LTzvFE6|q1yjGp(RzH{NF$7<+yv}{{G*|C(gwAXP&6PclBBFqYe9U)7`sq z`?|e!Kr>rm7VEbjka@GGwH2$T$Aa#T#!kUq_3Ya}+|_;#rxIdSDyL0VInrFkNx2br zPqD=>FL>06EkT@*KX0prPN>>r#`I};{*#wVheH>gb5g&l{{GDedv7{@$!y$ITdm)V zo_?mLB2_)x8b17!<#R&|2U>S&ma>)n&;Ud!qs{INlt>(MK=VA`r()jDO~?U?I*`qC zDf|iGh#zJS!e)RtxSnkmw`c-TC!Gf7n*!wBl390jBx6W!%6D}*Kh!;JEs#l39$F~_ zUE5#VEG(1dxc;r@`0H+&u}j|F9fTd(8Xg@1y5a5T`jS^KUt2xuWbBsg^5@;rk)U6D z-YIz7$2S%bW+LrZ1+}lxeErV7POQ4VZ@d3M+uq@}!ga7G8_zdl5N*!J>z}t=-u%8b zmejnGIJp7|`UPwM+E%B=3Ds?D_u=*b>+XPSCt;%9^57&wbwgXJx#5o8{rTNPG`k88 zk8Y{zbN}Uhobzkn>d8Q=_l$A!?%Zzg)A0yZubZw7dS2i&{N@E{Y$$L2wk6EM$0uBW zCjm2e%=im=JZ(s=%2-B{f;~+lWtxdXt_-IwF*<2!wk(aJ>Zknes!f0TOONiB`S7y0 z-ilrOj%h62_WY(IfuHVwVxz4@U9+z9T}6(+_WWzUxlRA;2k(`e-gzM|J8w}-vQBQR zU0bUGb{VIT)&dwdB*%*~0QxZJRlZ%Jd~a|Y)eaw19l)+r&Sa67h%!4RgDKYz2o>Sp z_?fW38h0}0At->ih59RDMa$1+fvvKg{qYxhY%yrB2)VS7MD)DW75jgRrXwkNsn1=o z|JG&7RVN>Vk2#8vTrK5lNJ%Zp-%W9vN{gtfc(wtlu*m_^(DzGTgYUJeG>b%5tk-zg zpFS$Of7TOD?lyp9!Tg!{z;zq^kteyO6^my{w~>3>?jv~5XVz)ILEEh(dg{ru<&7^| zEo-(Mz~6p;y^oj0v+fZEzkJ0?`NkbPyDC&Y9P^DAK6M#(?LFFkZv_w0*FFCX{d8Nk zTDSE8UVP#5{^w+FD!&Qn6}qm8MJLR})olf{x|P9+{^UjM=$K3bacnMz5OE+ zy5A)12*-bY^`raO-)O6C&wBilj>N?lS!2s>6-d7Py=@&q#A8lB0Z)0%iFnB+D{$lO zJKE~d&X&wg(fQlel(~3m``tS~xu(NT{qEhn<&=f9^`dr}@h!jjXx!XZu5N6v+1l#Q zYrF=m8WVx2R7w!2z_mjDAJdZCE1!G{-q9{^+9aX($vLy8wUfO^^<(Pp0DSMitd|S{ zz~qc&%YXgrDx-GKsrt*`T~eL==5@&}$gje~2ntooumne^)tKRW84jscq-WGfc}g}r zOJmXT@i_J|&Pdv%0AQ&uaYi&r8ATjh`7`ox9P%Y)$sD8% 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
  • !I%uBWASDbH;?QVl=vuNAAWZ8 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≺-MK(N3}GCJveY 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�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�|2~v*M~ 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

    _RQrR(Q9M#RM)5&aHY=jJ;;%fk=6P5 zWHSeHf3hr?stn`*@yh+G^wZvzjc!t6pq*L5a?5gCT}4S%K6nI9k^$7rU)1b_c7OZ8 zDz~k*qeuPksXr)m`x#+6et{&C+kNo0Lm>MBQwQ;^iGyiRN0-l_jwAZGKaRp*G;cJ` z7(dYcHr&+lN}vC(oSV zjUdXD;23^O`(7Wb6N=@QBLx-)@k;-{_TB?Luj4ouo&f<61PB(eg1t!;sV-XGDps?4 zvm{qVmSZ_~toYvCILUS5KUQ*++&GS%Vmr3tBDtwp#geRU6{`1UNmQf6PJ$gI0T6xv zdH3w>&YtfBCFj@k{7>@W*c86+JLhbfo!NPJW_I@bx3BQrcw6Q)z! z_FinE&lm##sjp-Dj9Bi_ge*b=lLY9&5a}I&Sy4< zzB%s(#&JeCg67vxwh0gQM)`+j4#xxmoB_1q3`=Q$l>hO~we+QP=J`BW7*3oi_>|BM z2|mU3D3-g)gx#eme??m-ef8=$aKnp1T3R}{ZNs@uRAf{qb4<yEvq(C()T?qrYXlY10%s82-9a*U`9t~YRQdGJ$*2>R z^%?+G+|86$H4y0%0#varHzI=zTA$AT5xn^rFP9nC+!$9f_ySf1W_Y( z0$iT|e)}q)D77sA(^?vwSo`=px2^Clz_R>!%B-W>*yJ9VkPBkA6!rS&Te)`?bqTDsYdMJp$o@3#C}Z{D;wgwYDK9bqx`GC zyfD+7tKM8aP5!`F?T@L6F;#-JSddml4u-}n3L@0RibXAyX$mVU^mHHJ#m=ZYBwrMlS1xDj? zTlBZ^4#%=03s8s`D!ycFWgwF?;R2MVl>`FWSh;j)D9L{qpMDa8U$_Fc3K&AAJEux$T5saoWqg?*uxDfI#)%awII1IVIzJ~wm zlMB6~e?i=1t2T9-aZ%L z|0ut^cL3HopVtbBIuZMXxGwqY4xB%RaSRHQf6i|mg(Q>Q8-NY^2AAR&&z|FHv(Z}z zbNQb!sgeHtqWQ?T1TgC5AIUM7i8To+0+7?|IHB`1Vx62ZX(X>~>kh{JLjI9w3~fi& za0OIW{t-un9g}xHvx%?);JE!;aFh{0{bpgQy6D(ef6UEIkG45+74jD3oHFt+fYO89 zUkmNX$p4Xx#!5fQ$vF9-|JPQxRmeX;ClaDQFLkZ<=NU4=Rfr7?h)n~SLz|xw>tUz2 ze7Y$Ah^s@cE3twxHY}_SKwjnlw8N%&LhjYt#8-+X6IN3B$Ks-PGla)r;li%Y*^`mF zVGS&BNEP9Z+IKux%Tv|R&_IHpoK30VR;^l9MPnJ&p)+cbJY}BnGjmz(1mRX~=F)A| zK9+*kv>t&?v{LBQo-{@KTWcEMHjq2I@PT;z9po zo?&$#2iEni87%NzG)pKyMc6=Pix8WV<8CYi8e9T&!ON(wJ~M)*OzpldI;gZFwN{PL zD^9JT)J6{L21-2YoPCZWC<(2#;2|;!d#Qouwzwar| za>GuyQxBa)&7)cg?k?Ob+)ITm4y6j<@hKS|TegLB;9oQa?;|kU2bKrx#D24z`N#LH zp<`v`f9WYRWc5Gj4;)_l+pRvU_}4$X$oJtdfBYI9d%y&-6s#qi$mIQKJ7@*ncMieV=)*6?0#{A`r%!C~u{Ht<{O+%h9Y4dL0|!ut9cG{X@GN9f z_ebm~aJKUQIRSU5_2>7mE6IOx;4gM$!kr1)Az1pbg)KfrW57Vx9Q1&6d0D>v@W z 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 Date: Sun, 30 Oct 2022 11:09:12 +0100 Subject: [PATCH 035/161] Fix unlinked brim settings behaviour. Some brim settings seemed to behave as if they where linked, when in fact for any extruder set to -1 the 'default extruder' was set by some hacky code that supposedly fixes a 'dissallowed area' issue, very likely also related to the skirt/brim settings. Since dissalowed area for skirt/brim will not be a thing anymore, at least in the front-end, due to CURA-9066 (the 'parent' jira ticket that was blocked by this bug); it was sinplest just to remove the hack altogether. (Otherwise we'd have to make an artificial distinction between -1 and None as it relates to 'Not Set/Used' versus 'Not Overridden', only to then force it back to -1 in situations that call for it -- like communicating to the engine.) CURA-9553 --- cura/Settings/ExtruderStack.py | 2 -- cura/Settings/GlobalStack.py | 2 -- 2 files changed, 4 deletions(-) diff --git a/cura/Settings/ExtruderStack.py b/cura/Settings/ExtruderStack.py index e93193818c..eba41569b7 100644 --- a/cura/Settings/ExtruderStack.py +++ b/cura/Settings/ExtruderStack.py @@ -142,8 +142,6 @@ class ExtruderStack(CuraContainerStack): limit_to_extruder = super().getProperty(key, "limit_to_extruder", context) if limit_to_extruder is not None: - if limit_to_extruder == -1: - limit_to_extruder = int(cura.CuraApplication.CuraApplication.getInstance().getMachineManager().defaultExtruderPosition) limit_to_extruder = str(limit_to_extruder) if (limit_to_extruder is not None and limit_to_extruder != "-1") and self.getMetaDataEntry("position") != str(limit_to_extruder): diff --git a/cura/Settings/GlobalStack.py b/cura/Settings/GlobalStack.py index 041bd19d3a..25fc74b28f 100755 --- a/cura/Settings/GlobalStack.py +++ b/cura/Settings/GlobalStack.py @@ -226,8 +226,6 @@ class GlobalStack(CuraContainerStack): # Handle the "limit_to_extruder" property. limit_to_extruder = super().getProperty(key, "limit_to_extruder", context) if limit_to_extruder is not None: - if limit_to_extruder == -1: - limit_to_extruder = int(cura.CuraApplication.CuraApplication.getInstance().getMachineManager().defaultExtruderPosition) limit_to_extruder = str(limit_to_extruder) if limit_to_extruder is not None and limit_to_extruder != "-1" and limit_to_extruder in self._extruders: if super().getProperty(key, "settable_per_extruder", context): From 45fb71e966b5b47cc152c7df927be250a451dda0 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Sun, 30 Oct 2022 17:07:21 +0100 Subject: [PATCH 036/161] Engine should know to (not) offset the nozzles w.r.t. disallowed areas. part of CURA-9066 --- plugins/CuraEngineBackend/StartSliceJob.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/plugins/CuraEngineBackend/StartSliceJob.py b/plugins/CuraEngineBackend/StartSliceJob.py index 64216f373f..d06136a2b4 100644 --- a/plugins/CuraEngineBackend/StartSliceJob.py +++ b/plugins/CuraEngineBackend/StartSliceJob.py @@ -487,6 +487,10 @@ class StartSliceJob(Job): settings["machine_start_gcode"] = self._expandGcodeTokens(settings["machine_start_gcode"], initial_extruder_nr) settings["machine_end_gcode"] = self._expandGcodeTokens(settings["machine_end_gcode"], initial_extruder_nr) + # Manually add 'nozzle offsetting', since that is a metadata-entry instead for some reason. + # NOTE: This probably needs to be an actual setting at some point. + settings["nozzle_offsetting_for_disallowed_areas"] = CuraApplication.getInstance().getGlobalContainerStack().getMetaDataEntry("nozzle_offsetting_for_disallowed_areas", True) + # Add all sub-messages for each individual setting. for key, value in settings.items(): setting_message = self._slice_message.getMessage("global_settings").addRepeatedMessage("settings") From 24c12fd3ebca6fb1959722bb644571cc1db22198 Mon Sep 17 00:00:00 2001 From: MariMakes <40423138+MariMakes@users.noreply.github.com> Date: Tue, 1 Nov 2022 13:23:08 +0100 Subject: [PATCH 037/161] Added Triage status label An attempt to improve responsiveness on feature requests. --- .github/ISSUE_TEMPLATE/featurerequest.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/featurerequest.yaml b/.github/ISSUE_TEMPLATE/featurerequest.yaml index 83c448fe44..bbdd3908bd 100644 --- a/.github/ISSUE_TEMPLATE/featurerequest.yaml +++ b/.github/ISSUE_TEMPLATE/featurerequest.yaml @@ -1,6 +1,6 @@ name: Feature Request description: Suggest an idea for this project. -labels: "Type: New Feature" +labels: ["Type: New Feature", "Status: Triage"] body: - type: markdown attributes: @@ -41,4 +41,4 @@ body: - type: textarea attributes: label: Additional information & file uploads - description: You can add pictures or files to visualize your feature request in the comments below. \ No newline at end of file + description: You can add pictures or files to visualize your feature request in the comments below. From 5cb67ab8c42f8d24337654c45c4cca16d177a4c3 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Tue, 1 Nov 2022 16:11:34 +0100 Subject: [PATCH 038/161] Add new pages in add-printer flow Pages added - Page to select Ultimaker or third party printer - Page with information how to add Ultimaker printer(s) contributes to CURA-8689 --- cura/UI/AddPrinterPagesModel.py | 2 +- cura/UI/WelcomePagesModel.py | 2 +- ...erContent.qml => AddThirdPartyPrinter.qml} | 22 +--- .../AddUltimakerOrThirdPartyPrinter.qml | 75 +++++++++++ .../AddUltimakerOrThirdPartyPrinterStack.qml | 55 ++++++++ .../qml/WelcomePages/AddUltimakerPrinter.qml | 122 ++++++++++++++++++ resources/qml/WelcomePages/PrinterCard.qml | 85 ++++++++++++ 7 files changed, 343 insertions(+), 20 deletions(-) rename resources/qml/WelcomePages/{AddNetworkOrLocalPrinterContent.qml => AddThirdPartyPrinter.qml} (86%) create mode 100644 resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml create mode 100644 resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinterStack.qml create mode 100644 resources/qml/WelcomePages/AddUltimakerPrinter.qml create mode 100644 resources/qml/WelcomePages/PrinterCard.qml diff --git a/cura/UI/AddPrinterPagesModel.py b/cura/UI/AddPrinterPagesModel.py index 9b35dbcacc..1962a6e2ec 100644 --- a/cura/UI/AddPrinterPagesModel.py +++ b/cura/UI/AddPrinterPagesModel.py @@ -12,7 +12,7 @@ class AddPrinterPagesModel(WelcomePagesModel): def initialize(self, cancellable: bool = True) -> None: self._pages.append({"id": "add_network_or_local_printer", - "page_url": self._getBuiltinWelcomePagePath("AddNetworkOrLocalPrinterContent.qml"), + "page_url": self._getBuiltinWelcomePagePath("AddUltimakerOrThirdPartyPrinterStack.qml"), "next_page_id": "machine_actions", "next_page_button_text": self._catalog.i18nc("@action:button", "Add"), }) diff --git a/cura/UI/WelcomePagesModel.py b/cura/UI/WelcomePagesModel.py index 26c27418cf..5faf39311e 100644 --- a/cura/UI/WelcomePagesModel.py +++ b/cura/UI/WelcomePagesModel.py @@ -265,7 +265,7 @@ class WelcomePagesModel(ListModel): "should_show_function": self.shouldShowCloudPage, }, {"id": "add_network_or_local_printer", - "page_url": self._getBuiltinWelcomePagePath("AddNetworkOrLocalPrinterContent.qml"), + "page_url": self._getBuiltinWelcomePagePath("AddUltimakerOrThirdPartyPrinterStack.qml"), "next_page_id": "machine_actions", }, {"id": "add_printer_by_ip", diff --git a/resources/qml/WelcomePages/AddNetworkOrLocalPrinterContent.qml b/resources/qml/WelcomePages/AddThirdPartyPrinter.qml similarity index 86% rename from resources/qml/WelcomePages/AddNetworkOrLocalPrinterContent.qml rename to resources/qml/WelcomePages/AddThirdPartyPrinter.qml index 83a38eab7a..df7a2a176d 100644 --- a/resources/qml/WelcomePages/AddNetworkOrLocalPrinterContent.qml +++ b/resources/qml/WelcomePages/AddThirdPartyPrinter.qml @@ -15,22 +15,13 @@ Item { UM.I18nCatalog { id: catalog; name: "cura" } - UM.Label - { - id: titleLabel - anchors.top: parent.top - anchors.horizontalCenter: parent.horizontalCenter - horizontalAlignment: Text.AlignHCenter - text: catalog.i18nc("@label", "Add a printer") - color: UM.Theme.getColor("primary_button") - font: UM.Theme.getFont("huge") - } + property var goToUltimakerPrinter DropDownWidget { id: addNetworkPrinterDropDown - anchors.top: titleLabel.bottom + anchors.top: parent.top anchors.left: parent.left anchors.right: parent.right anchors.topMargin: UM.Theme.getSize("wide_margin").height @@ -103,18 +94,13 @@ Item } } - // This "Back" button only shows in the "Add Machine" dialog, which has "previous_page_button_text" set to "Cancel" Cura.SecondaryButton { id: backButton anchors.left: parent.left anchors.bottom: parent.bottom - visible: base.currentItem.previous_page_button_text ? true : false - text: base.currentItem.previous_page_button_text ? base.currentItem.previous_page_button_text : "" - onClicked: - { - base.endWizard() - } + text: catalog.i18nc("@label", "Add Ultimaker printer via Digital Factory") + onClicked: goToUltimakerPrinter() } Cura.PrimaryButton diff --git a/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml b/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml new file mode 100644 index 0000000000..c56ef6be4c --- /dev/null +++ b/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml @@ -0,0 +1,75 @@ +// Copyright (c) 2022 Ultimaker B.V. +// Cura is released under the terms of the LGPLv3 or higher. + +import QtQuick 2.10 +import QtQuick.Controls 2.3 +import QtQuick.Layouts 1.3 + +import UM 1.5 as UM +import Cura 1.1 as Cura + + +// +// This component contains the content for the "Add a printer" (network) page of the welcome on-boarding process. +// +Control +{ + UM.I18nCatalog { id: catalog; name: "cura" } + + property var goToUltimakerPrinter + property var goToThirdPartyPrinter + + contentItem: ColumnLayout + { + Layout.fillWidth: true + Layout.fillHeight: true + + UM.Label + { + text: catalog.i18nc("@label", "In order to start using Cura you will need to configure a printer.") + font: UM.Theme.getFont("default") + Layout.alignment: Qt.AlignTop + } + + UM.Label + { + text: catalog.i18nc("@label", "What printer would you like to setup?") + font: UM.Theme.getFont("default_bold") + Layout.alignment: Qt.AlignTop + } + + RowLayout + { + spacing: UM.Theme.getSize("wide_margin").width + Layout.preferredWidth: childrenRect.width + Layout.preferredHeight: childrenRect.height + Layout.topMargin: UM.Theme.getSize("wide_margin").height + Layout.bottomMargin: UM.Theme.getSize("wide_margin").height + Layout.alignment: Qt.AlignTop | Qt.AlignHCenter + + PrinterCard + { + onClicked: goToUltimakerPrinter + text: catalog.i18nc("@button", "Ultimaker printer") + imageSource: UM.Theme.getImage("ultimaker_printer") + } + + PrinterCard + { + onClicked: goToThirdPartyPrinter + text: catalog.i18nc("@button", "Non Ultimaker printer") + imageSource: UM.Theme.getImage("third_party_printer") + } + } + + Cura.TertiaryButton + { + Layout.alignment: Qt.AlignBottom + text: catalog.i18nc("@button", "Learn more about adding printers to Cura") + iconSource: UM.Theme.getIcon("LinkExternal") + isIconOnRightSide: true + textFont: UM.Theme.getFont("small") + onClicked: Qt.openUrlExternally("") // TODO: Update url + } + } +} \ No newline at end of file diff --git a/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinterStack.qml b/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinterStack.qml new file mode 100644 index 0000000000..104a0cc96b --- /dev/null +++ b/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinterStack.qml @@ -0,0 +1,55 @@ +// Copyright (c) 2022 Ultimaker B.V. +// Cura is released under the terms of the LGPLv3 or higher. + +import QtQuick 2.10 +import QtQuick.Controls 2.3 +import QtQuick.Layouts 1.3 + +import UM 1.5 as UM +import Cura 1.1 as Cura + +ColumnLayout +{ + id: root + + UM.I18nCatalog { id: catalog; name: "cura" } + + Layout.fillWidth: true + Layout.fillHeight: true + + property var goToUltimakerPrinter: () => layout.currentIndex = 1 + property var goToThirdPartyPrinter: () => layout.currentIndex = 2 + + UM.Label + { + id: title_label + Layout.fillWidth: true + Layout.bottomMargin: UM.Theme.getSize("thick_margin").height + horizontalAlignment: Text.AlignHCenter + text: catalog.i18nc("@label", "Add printer") + color: UM.Theme.getColor("primary_button") + font: UM.Theme.getFont("huge") + } + + StackLayout + { + id: layout + Layout.fillWidth: true + Layout.fillHeight: true + currentIndex: 0 + AddUltimakerOrThirdPartyPrinter + { + goToUltimakerPrinter: root.goToUltimakerPrinter + goToThirdPartyPrinter: root.goToThirdPartyPrinter + } + AddUltimakerPrinter + { + goToThirdPartyPrinter: root.goToThirdPartyPrinter + } + AddThirdPartyPrinter + { + goToUltimakerPrinter: root.goToUltimakerPrinter + + } + } +} \ No newline at end of file diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml new file mode 100644 index 0000000000..eb521acf91 --- /dev/null +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -0,0 +1,122 @@ +// Copyright (c) 2022 Ultimaker B.V. +// Cura is released under the terms of the LGPLv3 or higher. + +import QtQuick 2.10 +import QtQuick.Controls 2.3 +import QtQuick.Layouts 1.3 + +import UM 1.5 as UM +import Cura 1.1 as Cura + +Control +{ + UM.I18nCatalog { id: catalog; name: "cura" } + + property var goToThirdPartyPrinter + + signal cloudPrintersDetected(bool newCloudPrintersDetected) + Component.onCompleted: CuraApplication.getDiscoveredCloudPrintersModel().cloudPrintersDetectedChanged.connect(cloudPrintersDetected) + onCloudPrintersDetected: function(newCloudPrintersDetected) + { + if(newCloudPrintersDetected) + { + base.goToPage("add_cloud_printers") + } + else + { + goToThirdPartyPrinter() + } + } + + contentItem: ColumnLayout + { + UM.Label + { + text: catalog.i18nc("@label", "New Ultimaker printers can be connected to Digital Factory and monitored remotely.") + } + + RowLayout + { + Layout.fillWidth: true + + Image + { + source: UM.Theme.getImage("add_printer") + Layout.preferredWidth: 200 + Layout.preferredHeight: 200 + } + + ColumnLayout + { + Layout.fillHeight: true + Layout.alignment: Qt.AlignVCenter + spacing: UM.Theme.getSize("default_margin").height + + UM.Label + { + Layout.fillWidth: true + Layout.alignment: Qt.AlignTop + wrapMode: Text.WordWrap + font: UM.Theme.getFont("default_bold") + text: catalog.i18nc("@label", "New Ultimaker printers can be connected to Digital Factory and monitored remotely.") + } + + UM.Label + { + Layout.fillWidth: true + Layout.alignment: Qt.AlignTop + wrapMode: Text.WordWrap + text: { + const steps = [ + catalog.i18nc("@info", "Sign in into Ultimaker Digilal Factory"), + catalog.i18nc("@info", "Follow the procedure to add a new printer"), + catalog.i18nc("@info", "Your new printer will automatically appear in Cura"), + ]; + return `

      ${steps.map(step => `
    1. ${step}`).join('')}
    `; + } + } + + Cura.TertiaryButton + { + Layout.fillWidth: true + Layout.alignment: Qt.AlignTop + text: catalog.i18nc("@button", "Learn more about adding printers to Digital Factory") + iconSource: UM.Theme.getIcon("LinkExternal") + isIconOnRightSide: true + textFont: UM.Theme.getFont("small") + onClicked: Qt.openUrlExternally("") // TODO: Update url + } + } + } + + Control + { + Layout.alignment: Qt.AlignBottom + Layout.fillWidth: true + + contentItem: RowLayout + { + + Cura.SecondaryButton + { + Layout.alignment: Qt.AlignLeft + text: catalog.i18nc("@button", "Add local printer") + onClicked: goToThirdPartyPrinter() + } + + Cura.PrimaryButton + { + Layout.alignment: Qt.AlignRight + text: catalog.i18nc("@button", "Sign in to Digital Factory") + onClicked: function() + { + text = catalog.i18nc("@button", "Waiting for new printers") + busy = true; + enabled = false; + Cura.API.account.login(); + } + } + } + } + } +} \ No newline at end of file diff --git a/resources/qml/WelcomePages/PrinterCard.qml b/resources/qml/WelcomePages/PrinterCard.qml new file mode 100644 index 0000000000..2b29d2279e --- /dev/null +++ b/resources/qml/WelcomePages/PrinterCard.qml @@ -0,0 +1,85 @@ +// Copyright (c) 2022 Ultimaker B.V. +// Cura is released under the terms of the LGPLv3 or higher. + +import QtQuick 2.10 +import QtQuick.Controls 2.3 +import QtQuick.Layouts 1.3 + +import UM 1.5 as UM +import Cura 1.1 as Cura + +Control +{ + id: root + property alias text: link_text.text + property alias imageSource: image.source + property var onClicked + + states: + [ + State + { + name: "hovered"; + when: mouse_area.containsMouse + PropertyChanges + { + target: background + color: UM.Theme.getColor("monitor_card_hover") + } + PropertyChanges + { + target: link_text + font.underline: true + } + } + ] + + MouseArea + { + id: mouse_area + anchors.fill: parent + hoverEnabled: true + onClicked: root.onClicked && root.onClicked() + } + + topPadding: UM.Theme.getSize("wide_margin").height + rightPadding: UM.Theme.getSize("wide_margin").width + bottomPadding: UM.Theme.getSize("wide_margin").height + leftPadding: UM.Theme.getSize("wide_margin").width + + background: Rectangle + { + id: background + anchors.fill: parent + border.color: UM.Theme.getColor("primary_button") + color: "transparent" + border.width: 1 + radius: 3 + } + + contentItem: ColumnLayout + { + spacing: UM.Theme.getSize("wide_margin").height + height: childrenRect.height + width: childrenRect.width + + Image + { + id: image + source: imageSource + width: 180 + height: 180 + sourceSize.width: width + sourceSize.height: height + } + + UM.Label + { + id: link_text + Layout.fillWidth: true + font: UM.Theme.getFont("medium") + color: UM.Theme.getColor("text_link") + horizontalAlignment: Text.AlignHCenter + } + } +} From 25a0355cfee91112e381dfd35813fdd9aa05d3b1 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Tue, 1 Nov 2022 16:20:09 +0100 Subject: [PATCH 039/161] Update dialog size CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 4899c6873a..30db1174cc 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -14,9 +14,11 @@ UM.Dialog id: base title: catalog.i18nc("@title:window", "Open Project") - minimumWidth: UM.Theme.getSize("popup_dialog").width - minimumHeight: UM.Theme.getSize("popup_dialog").height + minimumWidth: UM.Theme.getSize("modal_window_minimum").width + minimumHeight: UM.Theme.getSize("modal_window_minimum").height width: minimumWidth + height: minimumHeight + backgroundColor: UM.Theme.getColor("main_background") margin: UM.Theme.getSize("default_margin").width property int comboboxHeight: UM.Theme.getSize("default_margin").height From afd3d92c5ee07bb8c850dfe882b1ce2a843734c6 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Tue, 1 Nov 2022 16:28:23 +0100 Subject: [PATCH 040/161] Use wide button spacing CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 30db1174cc..4f7d5737e6 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -502,7 +502,7 @@ UM.Dialog } } - buttonSpacing: UM.Theme.getSize("default_margin").width + buttonSpacing: UM.Theme.getSize("wide_margin").width rightButtons: [ Cura.TertiaryButton From fa317a9e140b144cb36c2eb4e97b84782921687b Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Tue, 1 Nov 2022 16:31:24 +0100 Subject: [PATCH 041/161] Use unique id for WorkspaceDialog CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 4f7d5737e6..d56ffef7dd 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -11,7 +11,7 @@ import Cura 1.1 as Cura UM.Dialog { - id: base + id: workspaceDialog title: catalog.i18nc("@title:window", "Open Project") minimumWidth: UM.Theme.getSize("modal_window_minimum").width @@ -107,7 +107,7 @@ UM.Dialog anchors.right: parent.right width: (parent.width / 3) | 0 height: visible ? comboboxHeight : 0 - visible: base.visible && machineResolveComboBox.model.count > 1 + visible: workspaceDialog.visible && machineResolveComboBox.model.count > 1 text: catalog.i18nc("@info:tooltip", "How should the conflict in the machine be resolved?") Cura.ComboBox { @@ -461,14 +461,14 @@ UM.Dialog color: warning ? UM.Theme.getColor("warning") : "transparent" anchors.bottom: parent.bottom width: parent.width - height: childrenRect.height + 2 * base.margin + height: childrenRect.height + 2 * workspaceDialog.margin Column { height: childrenRect.height - spacing: base.margin + spacing: workspaceDialog.margin - anchors.margins: base.margin + anchors.margins: workspaceDialog.margin anchors.left: parent.left anchors.right: parent.right anchors.top: parent.top @@ -478,7 +478,7 @@ UM.Dialog id: warningRow height: childrenRect.height visible: warning - spacing: base.margin + spacing: workspaceDialog.margin UM.ColorImage { width: UM.Theme.getSize("extruder_icon").width From 846102be4e270af956eaee339bd758a4fd8735fb Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Tue, 1 Nov 2022 16:59:25 +0100 Subject: [PATCH 042/161] Update campaign links in onboarding-add printer flow contributes to CURA-8689 --- resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml | 2 +- resources/qml/WelcomePages/AddUltimakerPrinter.qml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml b/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml index c56ef6be4c..01b375f66d 100644 --- a/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml @@ -69,7 +69,7 @@ Control iconSource: UM.Theme.getIcon("LinkExternal") isIconOnRightSide: true textFont: UM.Theme.getFont("small") - onClicked: Qt.openUrlExternally("") // TODO: Update url + onClicked: Qt.openUrlExternally("https://support.ultimaker.com/hc/en-us/articles/360012019239?utm_source=cura&utm_medium=software&utm_campaign=onboarding-add-printer") } } } \ No newline at end of file diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml index eb521acf91..3566600159 100644 --- a/resources/qml/WelcomePages/AddUltimakerPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -84,7 +84,7 @@ Control iconSource: UM.Theme.getIcon("LinkExternal") isIconOnRightSide: true textFont: UM.Theme.getFont("small") - onClicked: Qt.openUrlExternally("") // TODO: Update url + onClicked: Qt.openUrlExternally("https://support.ultimaker.com/hc/en-us/articles/360012019239?utm_source=cura&utm_medium=software&utm_campaign=onboarding-add-printer") } } } From 056221cda60caec3686a9846477d7d4d754f5594 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Tue, 1 Nov 2022 17:00:40 +0100 Subject: [PATCH 043/161] Remove "Add cloud printer" button in onboarding-add printer flow From figma design contributes to CURA-8689 --- .../WelcomePages/AddNetworkPrinterScrollView.qml | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml b/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml index 36c670f462..3d138e3d2e 100644 --- a/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml +++ b/resources/qml/WelcomePages/AddNetworkPrinterScrollView.qml @@ -175,21 +175,6 @@ Item onClicked: base.addByIpButtonClicked() } - Cura.SecondaryButton - { - id: addCloudPrinterButton - anchors.left: addPrinterByIpButton.right - anchors.leftMargin: UM.Theme.getSize("default_margin").width - anchors.verticalCenter: parent.verticalCenter - text: catalog.i18nc("@label", "Add cloud printer") - height: UM.Theme.getSize("message_action_button").height - onClicked: { - CuraApplication.getDiscoveredCloudPrintersModel().clear() - Cura.API.account.sync(true) - base.addCloudPrinterButtonClicked() - } - } - Item { id: troubleshootingButton From 41fd36a03836eb6d90d88560fcacad380dfafce6 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Tue, 1 Nov 2022 17:10:24 +0100 Subject: [PATCH 044/161] Adjust margins CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index d56ffef7dd..1bd2cf32c0 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -82,17 +82,10 @@ UM.Dialog UM.Label { id: titleLabel + anchors.margins: UM.Theme.getSize("default_margin").height text: catalog.i18nc("@action:title", "Summary - Cura Project") font: UM.Theme.getFont("large") } - - Rectangle - { - id: separator - color: UM.Theme.getColor("text") - width: parent.width - height: UM.Theme.getSize("default_lining").height - } } Item @@ -160,6 +153,7 @@ UM.Dialog { width: parent.width height: childrenRect.height + spacing: UM.Theme.getSize("default_margin").height UM.Label { @@ -236,6 +230,7 @@ UM.Dialog { width: parent.width height: childrenRect.height + spacing: UM.Theme.getSize("default_margin").height UM.Label { @@ -352,6 +347,7 @@ UM.Dialog { width: parent.width height: childrenRect.height + spacing: UM.Theme.getSize("default_margin").height Row { height: childrenRect.height @@ -393,6 +389,7 @@ UM.Dialog { width: parent.width height: childrenRect.height + spacing: UM.Theme.getSize("default_margin").height UM.Label { From b01ff2f57e743acd84677e9a21a1e539f57a8c0f Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Tue, 1 Nov 2022 17:10:59 +0100 Subject: [PATCH 045/161] Add open with above printer drop down. CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 1bd2cf32c0..51b9e8e4e9 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -78,6 +78,7 @@ UM.Dialog { width: parent.width height: childrenRect.height + spacing: UM.Theme.getSize("default_margin").height UM.Label { @@ -102,9 +103,21 @@ UM.Dialog height: visible ? comboboxHeight : 0 visible: workspaceDialog.visible && machineResolveComboBox.model.count > 1 text: catalog.i18nc("@info:tooltip", "How should the conflict in the machine be resolved?") + + UM.Label + { + id: open_with_label + anchors.top: parent.top + anchors.left: parent.left + text: catalog.i18nc("@action:label", "Open With") + font: UM.Theme.getFont("default_bold") + } + Cura.ComboBox { id: machineResolveComboBox + anchors.top: open_with_label.bottom + anchors.left: parent.left model: manager.updatableMachinesModel visible: machineResolveStrategyTooltip.visible textRole: "displayName" From f72c980c208ac25e7c05380c69ed4e3e0c90f966 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Tue, 1 Nov 2022 18:19:50 +0100 Subject: [PATCH 046/161] Add icons to the left of titles Align title text with values in table CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 213 +++++++++++++++++--------- 1 file changed, 144 insertions(+), 69 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 51b9e8e4e9..48499c1d91 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -93,6 +93,7 @@ UM.Dialog { width: parent.width height: childrenRect.height + anchors.leftMargin: UM.Theme.getSize("default_margin") UM.TooltipArea { @@ -109,6 +110,7 @@ UM.Dialog id: open_with_label anchors.top: parent.top anchors.left: parent.left + anchors.bottomMargin: UM.Theme.getSize("default_margin").height text: catalog.i18nc("@action:label", "Open With") font: UM.Theme.getFont("default_bold") } @@ -162,18 +164,36 @@ UM.Dialog } } + Row + { + id: printerSettingsTitleRow + anchors.top: parent.top + anchors.bottomMargin: UM.Theme.getSize("default_margin").height + spacing: UM.Theme.getSize("default_margin").width + + UM.ColorImage + { + anchors.verticalCenter: parent.verticalCenter + source: UM.Theme.getIcon("Printer") + height: UM.Theme.getSize("medium_button_icon").height + width: height + } + UM.Label + { + text: catalog.i18nc("@action:label", "Printer settings") + anchors.verticalCenter: parent.verticalCenter + font: UM.Theme.getFont("default_bold") + } + } + Column { + id: printerSettingsValuesTable width: parent.width height: childrenRect.height spacing: UM.Theme.getSize("default_margin").height - - UM.Label - { - id: printer_settings_label - text: catalog.i18nc("@action:label", "Printer settings") - font: UM.Theme.getFont("default_bold") - } + leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width + anchors.top: printerSettingsTitleRow.bottom Row { @@ -239,17 +259,36 @@ UM.Dialog } } - Column + Row { - width: parent.width - height: childrenRect.height - spacing: UM.Theme.getSize("default_margin").height + id: profileSettingsTitleRow + anchors.top: parent.top + anchors.bottomMargin: UM.Theme.getSize("default_margin").height + spacing: UM.Theme.getSize("default_margin").width + UM.ColorImage + { + anchors.verticalCenter: parent.verticalCenter + source: UM.Theme.getIcon("Printer") + height: UM.Theme.getSize("medium_button_icon").height + width: height + } UM.Label { text: catalog.i18nc("@action:label", "Profile settings") + anchors.verticalCenter: parent.verticalCenter font: UM.Theme.getFont("default_bold") } + } + + Column + { + id: profileSettingsValuesTable + width: parent.width + height: childrenRect.height + spacing: UM.Theme.getSize("default_margin").height + leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width + anchors.top: profileSettingsTitleRow.bottom Row { @@ -356,24 +395,35 @@ UM.Dialog } } + Row + { + id: materialSettingsTitleRow + anchors.top: parent.top + anchors.bottomMargin: UM.Theme.getSize("default_margin").height + spacing: UM.Theme.getSize("default_margin").width + + UM.ColorImage + { + anchors.verticalCenter: parent.verticalCenter + source: UM.Theme.getIcon("Printer") + height: UM.Theme.getSize("medium_button_icon").height + width: height + } + UM.Label + { + text: catalog.i18nc("@action:label", "Material settings") + anchors.verticalCenter: parent.verticalCenter + font: UM.Theme.getFont("default_bold") + } + } + Column { width: parent.width height: childrenRect.height spacing: UM.Theme.getSize("default_margin").height - Row - { - height: childrenRect.height - width: parent.width - spacing: UM.Theme.getSize("narrow_margin").width - - UM.Label - { - text: catalog.i18nc("@action:label", "Material settings") - font: UM.Theme.getFont("default_bold") - width: (parent.width / 3) | 0 - } - } + leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width + anchors.top: materialSettingsTitleRow.bottom Repeater { @@ -398,67 +448,92 @@ UM.Dialog } } - Column + Item { width: parent.width height: childrenRect.height - spacing: UM.Theme.getSize("default_margin").height - UM.Label + Row { - text: catalog.i18nc("@action:label", "Setting visibility") - font: UM.Theme.getFont("default_bold") + id: visibilitySettingsTitleRow + anchors.top: parent.top + anchors.bottomMargin: UM.Theme.getSize("default_margin").height + spacing: UM.Theme.getSize("default_margin").width + + UM.ColorImage + { + anchors.verticalCenter: parent.verticalCenter + source: UM.Theme.getIcon("Printer") + height: UM.Theme.getSize("medium_button_icon").height + width: height + } + UM.Label + { + text: catalog.i18nc("@action:label", "Setting visibility") + anchors.verticalCenter: parent.verticalCenter + font: UM.Theme.getFont("default_bold") + } } + + Column + { + width: parent.width + height: childrenRect.height + spacing: UM.Theme.getSize("default_margin").height + leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width + anchors.top: visibilitySettingsTitleRow.bottom + + Row + { + width: parent.width + height: childrenRect.height + UM.Label + { + text: catalog.i18nc("@action:label", "Mode") + width: (parent.width / 3) | 0 + } + UM.Label + { + text: manager.activeMode + width: (parent.width / 3) | 0 + } + } + Row + { + width: parent.width + height: childrenRect.height + visible: manager.hasVisibleSettingsField + UM.Label + { + text: catalog.i18nc("@action:label", "Visible settings:") + width: (parent.width / 3) | 0 + } + UM.Label + { + text: catalog.i18nc("@action:label", "%1 out of %2" ).arg(manager.numVisibleSettings).arg(manager.totalNumberOfSettings) + width: (parent.width / 3) | 0 + } + } + } + Row { width: parent.width height: childrenRect.height - UM.Label + visible: manager.hasObjectsOnPlate + UM.ColorImage { - text: catalog.i18nc("@action:label", "Mode") - width: (parent.width / 3) | 0 + width: warningLabel.height + height: width + source: UM.Theme.getIcon("Information") + color: UM.Theme.getColor("text") } UM.Label { - text: manager.activeMode - width: (parent.width / 3) | 0 + id: warningLabel + text: catalog.i18nc("@action:warning", "Loading a project will clear all models on the build plate.") } } - Row - { - width: parent.width - height: childrenRect.height - visible: manager.hasVisibleSettingsField - UM.Label - { - text: catalog.i18nc("@action:label", "Visible settings:") - width: (parent.width / 3) | 0 - } - UM.Label - { - text: catalog.i18nc("@action:label", "%1 out of %2" ).arg(manager.numVisibleSettings).arg(manager.totalNumberOfSettings) - width: (parent.width / 3) | 0 - } - } - } - - Row - { - width: parent.width - height: childrenRect.height - visible: manager.hasObjectsOnPlate - UM.ColorImage - { - width: warningLabel.height - height: width - source: UM.Theme.getIcon("Information") - color: UM.Theme.getColor("text") - } - UM.Label - { - id: warningLabel - text: catalog.i18nc("@action:warning", "Loading a project will clear all models on the build plate.") - } } } } From 1ebc0b487e1a812cffbb254133881e4e11d9d221 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Wed, 2 Nov 2022 13:54:00 +0100 Subject: [PATCH 047/161] Add various assets welcome-page assets contributes to CURA-8689 --- resources/themes/cura-light/images/add_printer.svg | 1 + resources/themes/cura-light/images/third_party_printer.svg | 2 ++ resources/themes/cura-light/images/ultimaker_printer.svg | 1 + 3 files changed, 4 insertions(+) create mode 100644 resources/themes/cura-light/images/add_printer.svg create mode 100644 resources/themes/cura-light/images/third_party_printer.svg create mode 100644 resources/themes/cura-light/images/ultimaker_printer.svg diff --git a/resources/themes/cura-light/images/add_printer.svg b/resources/themes/cura-light/images/add_printer.svg new file mode 100644 index 0000000000..3d814f48ef --- /dev/null +++ b/resources/themes/cura-light/images/add_printer.svg @@ -0,0 +1 @@ + diff --git a/resources/themes/cura-light/images/third_party_printer.svg b/resources/themes/cura-light/images/third_party_printer.svg new file mode 100644 index 0000000000..d2444d2d28 --- /dev/null +++ b/resources/themes/cura-light/images/third_party_printer.svg @@ -0,0 +1,2 @@ + + diff --git a/resources/themes/cura-light/images/ultimaker_printer.svg b/resources/themes/cura-light/images/ultimaker_printer.svg new file mode 100644 index 0000000000..f2184d4bd1 --- /dev/null +++ b/resources/themes/cura-light/images/ultimaker_printer.svg @@ -0,0 +1 @@ + From 1dfac6bb71ad893ee6455168952ba210b09c2732 Mon Sep 17 00:00:00 2001 From: jelle spijker Date: Wed, 2 Nov 2022 14:00:35 +0100 Subject: [PATCH 048/161] Apply screenScaleFactor to image size Contributes to CURA-8689 --- resources/qml/WelcomePages/AddUltimakerPrinter.qml | 6 +++--- resources/qml/WelcomePages/PrinterCard.qml | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml index 3566600159..e1cb0d7120 100644 --- a/resources/qml/WelcomePages/AddUltimakerPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -42,8 +42,8 @@ Control Image { source: UM.Theme.getImage("add_printer") - Layout.preferredWidth: 200 - Layout.preferredHeight: 200 + Layout.preferredWidth: 200 * screenScaleFactor + Layout.preferredHeight: 200 * screenScaleFactor } ColumnLayout @@ -119,4 +119,4 @@ Control } } } -} \ No newline at end of file +} diff --git a/resources/qml/WelcomePages/PrinterCard.qml b/resources/qml/WelcomePages/PrinterCard.qml index 2b29d2279e..6b0a5bb526 100644 --- a/resources/qml/WelcomePages/PrinterCard.qml +++ b/resources/qml/WelcomePages/PrinterCard.qml @@ -67,8 +67,8 @@ Control { id: image source: imageSource - width: 180 - height: 180 + width: 180 * screenScaleFactor + height: 180 * screenScaleFactor sourceSize.width: width sourceSize.height: height } From 975775b7a03f8c7e88e003e721662a5c65f35bf5 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Wed, 2 Nov 2022 14:15:37 +0100 Subject: [PATCH 049/161] Add various dark-mode welcome-page assets contributes to CURA-8689 --- .../themes/cura-dark/images/add_printer.svg | 53 ++++++++++++++++ .../cura-dark/images/third_party_printer.svg | 60 +++++++++++++++++++ .../cura-dark/images/ultimaker_printer.svg | 35 +++++++++++ 3 files changed, 148 insertions(+) create mode 100644 resources/themes/cura-dark/images/add_printer.svg create mode 100644 resources/themes/cura-dark/images/third_party_printer.svg create mode 100644 resources/themes/cura-dark/images/ultimaker_printer.svg diff --git a/resources/themes/cura-dark/images/add_printer.svg b/resources/themes/cura-dark/images/add_printer.svg new file mode 100644 index 0000000000..06f838bc76 --- /dev/null +++ b/resources/themes/cura-dark/images/add_printer.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/themes/cura-dark/images/third_party_printer.svg b/resources/themes/cura-dark/images/third_party_printer.svg new file mode 100644 index 0000000000..6ffe5c20f3 --- /dev/null +++ b/resources/themes/cura-dark/images/third_party_printer.svg @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/themes/cura-dark/images/ultimaker_printer.svg b/resources/themes/cura-dark/images/ultimaker_printer.svg new file mode 100644 index 0000000000..e5a99a6e5c --- /dev/null +++ b/resources/themes/cura-dark/images/ultimaker_printer.svg @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From d12b59ec0f47e2c92b7fd03b31f55c26dd25113b Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Wed, 2 Nov 2022 14:17:05 +0100 Subject: [PATCH 050/161] Refactor workspace sections into separate qml file. Refactor an existing hack to force trigger the onIndexChanged functions of the comboboxes. CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 367 +++++++++---------------- plugins/3MFReader/WorkspaceSection.qml | 99 +++++++ 2 files changed, 222 insertions(+), 244 deletions(-) create mode 100644 plugins/3MFReader/WorkspaceSection.qml diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 48499c1d91..187d49693a 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -1,4 +1,4 @@ -// Copyright (c) 2020 Ultimaker B.V. +// Copyright (c) 2022 Ultimaker B.V. // Cura is released under the terms of the LGPLv3 or higher. import QtQuick 2.10 @@ -28,9 +28,12 @@ UM.Dialog { if (visible) { - machineResolveComboBox.currentIndex = 0 - qualityChangesResolveComboBox.currentIndex = 0 - materialResolveComboBox.currentIndex = 0 + // Force relead the comboboxes + // Since this dialog is only created once the first time you open it, these comboxes need to be reloaded + // each time it is shown after the first time so that the indexes will update correctly. + materialSection.reloadValues() + profileSection.reloadValues() + printerSection.reloadValues() } } @@ -89,111 +92,15 @@ UM.Dialog } } - Item + WorkspaceSection { - width: parent.width - height: childrenRect.height - anchors.leftMargin: UM.Theme.getSize("default_margin") - - UM.TooltipArea + id: printerSection + title: catalog.i18nc("@action:label", "Printer settings") + iconSource: UM.Theme.getIcon("Printer") + content: Column { - id: machineResolveStrategyTooltip - anchors.top: parent.top - anchors.right: parent.right - width: (parent.width / 3) | 0 - height: visible ? comboboxHeight : 0 - visible: workspaceDialog.visible && machineResolveComboBox.model.count > 1 - text: catalog.i18nc("@info:tooltip", "How should the conflict in the machine be resolved?") - - UM.Label - { - id: open_with_label - anchors.top: parent.top - anchors.left: parent.left - anchors.bottomMargin: UM.Theme.getSize("default_margin").height - text: catalog.i18nc("@action:label", "Open With") - font: UM.Theme.getFont("default_bold") - } - - Cura.ComboBox - { - id: machineResolveComboBox - anchors.top: open_with_label.bottom - anchors.left: parent.left - model: manager.updatableMachinesModel - visible: machineResolveStrategyTooltip.visible - textRole: "displayName" - width: parent.width - height: UM.Theme.getSize("button").height - onCurrentIndexChanged: - { - if (model.getItem(currentIndex).id == "new" - && model.getItem(currentIndex).type == "default_option") - { - manager.setResolveStrategy("machine", "new") - } - else - { - manager.setResolveStrategy("machine", "override") - manager.setMachineToOverride(model.getItem(currentIndex).id) - } - } - - onVisibleChanged: - { - if (!visible) {return} - - currentIndex = 0 - // If the project printer exists in Cura, set it as the default dropdown menu option. - // No need to check object 0, which is the "Create new" option - for (var i = 1; i < model.count; i++) - { - if (model.getItem(i).name == manager.machineName) - { - currentIndex = i - break - } - } - // The project printer does not exist in Cura. If there is at least one printer of the same - // type, select the first one, else set the index to "Create new" - if (currentIndex == 0 && model.count > 1) - { - currentIndex = 1 - } - } - } - } - - Row - { - id: printerSettingsTitleRow - anchors.top: parent.top - anchors.bottomMargin: UM.Theme.getSize("default_margin").height - spacing: UM.Theme.getSize("default_margin").width - - UM.ColorImage - { - anchors.verticalCenter: parent.verticalCenter - source: UM.Theme.getIcon("Printer") - height: UM.Theme.getSize("medium_button_icon").height - width: height - } - UM.Label - { - text: catalog.i18nc("@action:label", "Printer settings") - anchors.verticalCenter: parent.verticalCenter - font: UM.Theme.getFont("default_bold") - } - } - - Column - { - id: printerSettingsValuesTable - width: parent.width - height: childrenRect.height spacing: UM.Theme.getSize("default_margin").height leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width - anchors.top: printerSettingsTitleRow.bottom Row { @@ -230,65 +137,66 @@ UM.Dialog } } } - } - Item - { - width: parent.width - height: childrenRect.height - - UM.TooltipArea + comboboxTitle: catalog.i18nc("@action:label", "Open With") + comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the machine be resolved?") + combobox: Cura.ComboBox { - anchors.right: parent.right - anchors.top: parent.top - width: (parent.width / 3) | 0 - height: visible ? comboboxHeight : 0 - visible: manager.qualityChangesConflict - text: catalog.i18nc("@info:tooltip", "How should the conflict in the profile be resolved?") - Cura.ComboBox + id: machineResolveComboBox + model: manager.updatableMachinesModel + textRole: "displayName" + visible: workspaceDialog.visible && model.count > 1 + currentIndex: machineVisibleChanged() + + onCurrentIndexChanged: { - model: resolveStrategiesModel - textRole: "label" - id: qualityChangesResolveComboBox - width: parent.width - height: UM.Theme.getSize("button").height - onActivated: + if (model.getItem(currentIndex).id == "new" + && model.getItem(currentIndex).type == "default_option") { - manager.setResolveStrategy("quality_changes", resolveStrategiesModel.get(index).key) + manager.setResolveStrategy("machine", "new") + } + else + { + manager.setResolveStrategy("machine", "override") + manager.setMachineToOverride(model.getItem(currentIndex).id) + } + } + + function machineVisibleChanged() + { + if (!visible) {return} + + currentIndex = 0 + // If the project printer exists in Cura, set it as the default dropdown menu option. + // No need to check object 0, which is the "Create new" option + for (var i = 1; i < model.count; i++) + { + if (model.getItem(i).name == manager.machineName) + { + currentIndex = i + break + } + } + // The project printer does not exist in Cura. If there is at least one printer of the same + // type, select the first one, else set the index to "Create new" + if (currentIndex == 0 && model.count > 1) + { + currentIndex = 1 } } } + } - Row - { - id: profileSettingsTitleRow - anchors.top: parent.top - anchors.bottomMargin: UM.Theme.getSize("default_margin").height - spacing: UM.Theme.getSize("default_margin").width - - UM.ColorImage - { - anchors.verticalCenter: parent.verticalCenter - source: UM.Theme.getIcon("Printer") - height: UM.Theme.getSize("medium_button_icon").height - width: height - } - UM.Label - { - text: catalog.i18nc("@action:label", "Profile settings") - anchors.verticalCenter: parent.verticalCenter - font: UM.Theme.getFont("default_bold") - } - } - - Column + WorkspaceSection + { + id: profileSection + title: catalog.i18nc("@action:label", "Profile settings") + iconSource: UM.Theme.getIcon("Printer") + content: Column { id: profileSettingsValuesTable - width: parent.width - height: childrenRect.height spacing: UM.Theme.getSize("default_margin").height leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width - anchors.top: profileSettingsTitleRow.bottom Row { @@ -365,65 +273,38 @@ UM.Dialog } } } + + comboboxTitle: catalog.i18nc("@action:label", "Open With") + comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the profile be resolved?") + combobox: Cura.ComboBox + { + id: qualityChangesResolveComboBox + model: resolveStrategiesModel + textRole: "label" + visible: manager.qualityChangesConflict + + // This is a hack. This will trigger onCurrentIndexChanged and set the index when this component in loaded + currentIndex: + { + currentIndex = 0 + } + + onCurrentIndexChanged: + { + manager.setResolveStrategy("quality_changes", resolveStrategiesModel.get(currentIndex).key) + } + } } - Item + WorkspaceSection { - width: parent.width - height: childrenRect.height - - UM.TooltipArea + id: materialSection + title: catalog.i18nc("@action:label", "Material settings") + iconSource: UM.Theme.getIcon("Printer") + content: Column { - id: materialResolveTooltip - anchors.right: parent.right - anchors.top: parent.top - width: (parent.width / 3) | 0 - height: visible ? comboboxHeight : 0 - visible: manager.materialConflict - text: catalog.i18nc("@info:tooltip", "How should the conflict in the material be resolved?") - Cura.ComboBox - { - model: resolveStrategiesModel - textRole: "label" - id: materialResolveComboBox - width: parent.width - height: UM.Theme.getSize("button").height - onActivated: - { - manager.setResolveStrategy("material", resolveStrategiesModel.get(index).key) - } - } - } - - Row - { - id: materialSettingsTitleRow - anchors.top: parent.top - anchors.bottomMargin: UM.Theme.getSize("default_margin").height - spacing: UM.Theme.getSize("default_margin").width - - UM.ColorImage - { - anchors.verticalCenter: parent.verticalCenter - source: UM.Theme.getIcon("Printer") - height: UM.Theme.getSize("medium_button_icon").height - width: height - } - UM.Label - { - text: catalog.i18nc("@action:label", "Material settings") - anchors.verticalCenter: parent.verticalCenter - font: UM.Theme.getFont("default_bold") - } - } - - Column - { - width: parent.width - height: childrenRect.height spacing: UM.Theme.getSize("default_margin").height leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width - anchors.top: materialSettingsTitleRow.bottom Repeater { @@ -446,42 +327,39 @@ UM.Dialog } } } - } - Item - { - width: parent.width - height: childrenRect.height + comboboxTitle: catalog.i18nc("@action:label", "Open With") + comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the material be resolved?") - Row + combobox: Cura.ComboBox { - id: visibilitySettingsTitleRow - anchors.top: parent.top - anchors.bottomMargin: UM.Theme.getSize("default_margin").height - spacing: UM.Theme.getSize("default_margin").width + id: materialResolveComboBox + model: resolveStrategiesModel + textRole: "label" + visible: manager.materialConflict - UM.ColorImage + // This is a hack. This will trigger onCurrentIndexChanged and set the index when this component in loaded + currentIndex: { - anchors.verticalCenter: parent.verticalCenter - source: UM.Theme.getIcon("Printer") - height: UM.Theme.getSize("medium_button_icon").height - width: height + currentIndex = 0 } - UM.Label + + onCurrentIndexChanged: { - text: catalog.i18nc("@action:label", "Setting visibility") - anchors.verticalCenter: parent.verticalCenter - font: UM.Theme.getFont("default_bold") + manager.setResolveStrategy("material", resolveStrategiesModel.get(currentIndex).key) } } + } - Column + WorkspaceSection + { + id: visibilitySection + title: catalog.i18nc("@action:label", "Setting visibility") + iconSource: UM.Theme.getIcon("Printer") + content: Column { - width: parent.width - height: childrenRect.height spacing: UM.Theme.getSize("default_margin").height leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width - anchors.top: visibilitySettingsTitleRow.bottom Row { @@ -515,24 +393,25 @@ UM.Dialog } } } + } - Row + Row + { + id: clearBuildPlateWarning + width: parent.width + height: childrenRect.height + visible: manager.hasObjectsOnPlate + UM.ColorImage { - width: parent.width - height: childrenRect.height - visible: manager.hasObjectsOnPlate - UM.ColorImage - { - width: warningLabel.height - height: width - source: UM.Theme.getIcon("Information") - color: UM.Theme.getColor("text") - } - UM.Label - { - id: warningLabel - text: catalog.i18nc("@action:warning", "Loading a project will clear all models on the build plate.") - } + width: warningLabel.height + height: width + source: UM.Theme.getIcon("Information") + color: UM.Theme.getColor("text") + } + UM.Label + { + id: warningLabel + text: catalog.i18nc("@action:warning", "Loading a project will clear all models on the build plate.") } } } diff --git a/plugins/3MFReader/WorkspaceSection.qml b/plugins/3MFReader/WorkspaceSection.qml new file mode 100644 index 0000000000..03cf18ccdb --- /dev/null +++ b/plugins/3MFReader/WorkspaceSection.qml @@ -0,0 +1,99 @@ +// Copyright (c) 2022 Ultimaker B.V. +// Cura is released under the terms of the LGPLv3 or higher. + +import QtQuick 2.10 +import QtQuick.Controls 2.3 +import QtQuick.Layouts 1.3 +import QtQuick.Window 2.2 + +import UM 1.5 as UM +import Cura 1.1 as Cura + + +Item +{ + property alias title: sectionTitle.text + property alias iconSource: sectionTitleIcon.source + property Component content: Item { visible: false } + + property alias comboboxTitle: comboboxLabel.text + property Component combobox: Item { visible: false } + property var comboboxTooltipText: "" + property var comboboxVisible: false + + + + width: parent.width + height: childrenRect.height + anchors.leftMargin: UM.Theme.getSize("default_margin").width + + UM.TooltipArea + { + id: comboboxTooltip + width: (parent.width / 3) | 0 + height: visible ? UM.Theme.getSize("default_margin").heightcomboboxHeight : 0 + anchors.top: parent.top + anchors.right: parent.right + visible: combobox.visible + text: comboboxTooltipText + + UM.Label + { + id: comboboxLabel + anchors.top: parent.top + anchors.left: parent.left + anchors.bottomMargin: UM.Theme.getSize("default_margin").height + visible: combobox.visible + text: "" + font: UM.Theme.getFont("default_bold") + } + + Loader + { + id: comboboxLoader + width: parent.width + height: UM.Theme.getSize("button").height + anchors.top: comboboxLabel.bottom + anchors.left: parent.left + sourceComponent: combobox + } + } + + Row + { + id: sectionTitleRow + anchors.top: parent.top + anchors.bottomMargin: UM.Theme.getSize("default_margin").height + spacing: UM.Theme.getSize("default_margin").width + + UM.ColorImage + { + id: sectionTitleIcon + anchors.verticalCenter: parent.verticalCenter + source: "" + height: UM.Theme.getSize("medium_button_icon").height + width: height + } + UM.Label + { + id: sectionTitle + text: "" + anchors.verticalCenter: parent.verticalCenter + font: UM.Theme.getFont("default_bold") + } + } + + Loader + { + width: parent.width + height: content.height + anchors.top: sectionTitleRow.bottom + sourceComponent: content + } + + function reloadValues() + { + comboboxLoader.sourceComponent = null + comboboxLoader.sourceComponent = combobox + } +} \ No newline at end of file From cde07b9fe443a21339917e60cd5ba36e924c4692 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Wed, 2 Nov 2022 14:18:47 +0100 Subject: [PATCH 051/161] move signal function to bottom of file CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 187d49693a..705fe2afe8 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -23,20 +23,6 @@ UM.Dialog margin: UM.Theme.getSize("default_margin").width property int comboboxHeight: UM.Theme.getSize("default_margin").height - onClosing: manager.notifyClosed() - onVisibleChanged: - { - if (visible) - { - // Force relead the comboboxes - // Since this dialog is only created once the first time you open it, these comboxes need to be reloaded - // each time it is shown after the first time so that the indexes will update correctly. - materialSection.reloadValues() - profileSection.reloadValues() - printerSection.reloadValues() - } - } - Flickable { clip: true @@ -498,6 +484,19 @@ UM.Dialog } ] + onClosing: manager.notifyClosed() onRejected: manager.onCancelButtonClicked() onAccepted: manager.onOkButtonClicked() + onVisibleChanged: + { + if (visible) + { + // Force relead the comboboxes + // Since this dialog is only created once the first time you open it, these comboxes need to be reloaded + // each time it is shown after the first time so that the indexes will update correctly. + materialSection.reloadValues() + profileSection.reloadValues() + printerSection.reloadValues() + } + } } From 3a07d14b4b588ee94636515ab42dbf40c391a3b3 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Wed, 2 Nov 2022 14:19:35 +0100 Subject: [PATCH 052/161] remove comboboxheight CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 1 - plugins/3MFReader/WorkspaceSection.qml | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 705fe2afe8..f6d60be46b 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -21,7 +21,6 @@ UM.Dialog backgroundColor: UM.Theme.getColor("main_background") margin: UM.Theme.getSize("default_margin").width - property int comboboxHeight: UM.Theme.getSize("default_margin").height Flickable { diff --git a/plugins/3MFReader/WorkspaceSection.qml b/plugins/3MFReader/WorkspaceSection.qml index 03cf18ccdb..572018dea9 100644 --- a/plugins/3MFReader/WorkspaceSection.qml +++ b/plugins/3MFReader/WorkspaceSection.qml @@ -31,7 +31,7 @@ Item { id: comboboxTooltip width: (parent.width / 3) | 0 - height: visible ? UM.Theme.getSize("default_margin").heightcomboboxHeight : 0 + height: visible ? UM.Theme.getSize("default_margin").height : 0 anchors.top: parent.top anchors.right: parent.right visible: combobox.visible From 25ecb0e62161ee9c0cf9b5bb8eb7479d37080813 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Wed, 2 Nov 2022 14:21:37 +0100 Subject: [PATCH 053/161] Make types specific Remove unused imports CURA-9424 --- plugins/3MFReader/WorkspaceSection.qml | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/plugins/3MFReader/WorkspaceSection.qml b/plugins/3MFReader/WorkspaceSection.qml index 572018dea9..b3296a8b67 100644 --- a/plugins/3MFReader/WorkspaceSection.qml +++ b/plugins/3MFReader/WorkspaceSection.qml @@ -3,11 +3,9 @@ import QtQuick 2.10 import QtQuick.Controls 2.3 -import QtQuick.Layouts 1.3 -import QtQuick.Window 2.2 + import UM 1.5 as UM -import Cura 1.1 as Cura Item @@ -18,10 +16,8 @@ Item property alias comboboxTitle: comboboxLabel.text property Component combobox: Item { visible: false } - property var comboboxTooltipText: "" - property var comboboxVisible: false - - + property string comboboxTooltipText: "" + property bool comboboxVisible: false width: parent.width height: childrenRect.height From 1764c338a044080c3f310dc11c4e9ac9c4ba3c8f Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Wed, 2 Nov 2022 14:23:36 +0100 Subject: [PATCH 054/161] fix visibility check CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 3 +++ plugins/3MFReader/WorkspaceSection.qml | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index f6d60be46b..30ffe05665 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -125,6 +125,7 @@ UM.Dialog comboboxTitle: catalog.i18nc("@action:label", "Open With") comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the machine be resolved?") + comboboxVisible: workspaceDialog.visible && manager.updatableMachinesModel.count > 1 combobox: Cura.ComboBox { id: machineResolveComboBox @@ -261,6 +262,7 @@ UM.Dialog comboboxTitle: catalog.i18nc("@action:label", "Open With") comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the profile be resolved?") + comboboxVisible: manager.qualityChangesConflict combobox: Cura.ComboBox { id: qualityChangesResolveComboBox @@ -315,6 +317,7 @@ UM.Dialog comboboxTitle: catalog.i18nc("@action:label", "Open With") comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the material be resolved?") + comboboxVisible: manager.materialConflict combobox: Cura.ComboBox { diff --git a/plugins/3MFReader/WorkspaceSection.qml b/plugins/3MFReader/WorkspaceSection.qml index b3296a8b67..cc0ddfbb65 100644 --- a/plugins/3MFReader/WorkspaceSection.qml +++ b/plugins/3MFReader/WorkspaceSection.qml @@ -30,7 +30,7 @@ Item height: visible ? UM.Theme.getSize("default_margin").height : 0 anchors.top: parent.top anchors.right: parent.right - visible: combobox.visible + visible: comboboxVisible text: comboboxTooltipText UM.Label @@ -39,7 +39,7 @@ Item anchors.top: parent.top anchors.left: parent.left anchors.bottomMargin: UM.Theme.getSize("default_margin").height - visible: combobox.visible + visible: comboboxVisible text: "" font: UM.Theme.getFont("default_bold") } From 4381a97c85de02d1b29a30fa7e634b0234b61b33 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Wed, 2 Nov 2022 14:58:25 +0100 Subject: [PATCH 055/161] Elide button text when text becomes too wide contributes to CURA-8689 --- resources/qml/WelcomePages/AddUltimakerPrinter.qml | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml index e1cb0d7120..af3b506b76 100644 --- a/resources/qml/WelcomePages/AddUltimakerPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -84,6 +84,7 @@ Control iconSource: UM.Theme.getIcon("LinkExternal") isIconOnRightSide: true textFont: UM.Theme.getFont("small") + fixedWidthMode: true onClicked: Qt.openUrlExternally("https://support.ultimaker.com/hc/en-us/articles/360012019239?utm_source=cura&utm_medium=software&utm_campaign=onboarding-add-printer") } } From dbba1c411035a837725894729eb89f7a390b9e3f Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Wed, 2 Nov 2022 15:14:33 +0100 Subject: [PATCH 056/161] patch checking for base parent component of Combobox to check if it exists first. This should be refactored out some time. CURA-9424 --- resources/qml/Widgets/ComboBox.qml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/resources/qml/Widgets/ComboBox.qml b/resources/qml/Widgets/ComboBox.qml index eac85bfb44..a7eeb33f6a 100644 --- a/resources/qml/Widgets/ComboBox.qml +++ b/resources/qml/Widgets/ComboBox.qml @@ -18,6 +18,7 @@ ComboBox property var defaultTextOnEmptyModel: catalog.i18nc("@label", "No items to select from") // Text displayed in the combobox when the model is empty property var defaultTextOnEmptyIndex: "" // Text displayed in the combobox when the model has items but no item is selected property alias textFormat: contentLabel.textFormat + property alias backgroundColor: background.color enabled: delegateModel.count > 0 @@ -45,7 +46,7 @@ ComboBox State { name: "highlighted" - when: (base.hovered || control.hovered) && !control.activeFocus + when: ((base != undefined && base.hovered) || control.hovered) && !control.activeFocus PropertyChanges { target: background @@ -56,6 +57,7 @@ ComboBox background: UM.UnderlineBackground { + id: background // Rectangle for highlighting when this combobox needs to pulse. Rectangle { From 7171249d3f56745acc227f57e8f07cf7a547a36a Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Wed, 2 Nov 2022 15:33:47 +0100 Subject: [PATCH 057/161] Adjust margins on dialog to match designs CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 616 ++++++++++++------------- plugins/3MFReader/WorkspaceSection.qml | 4 +- 2 files changed, 309 insertions(+), 311 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 30ffe05665..4a6ade7d08 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -20,7 +20,6 @@ UM.Dialog height: minimumHeight backgroundColor: UM.Theme.getColor("main_background") - margin: UM.Theme.getSize("default_margin").width Flickable { @@ -60,246 +59,135 @@ UM.Dialog { width: parent.width height: childrenRect.height - spacing: UM.Theme.getSize("default_margin").height + spacing: UM.Theme.getSize("wide_margin").height + + UM.Label + { + id: titleLabel + text: catalog.i18nc("@action:title", "Summary - Cura Project") + font: UM.Theme.getFont("large") + } Column { width: parent.width height: childrenRect.height spacing: UM.Theme.getSize("default_margin").height + leftPadding: UM.Theme.getSize("default_margin").width + rightPadding: UM.Theme.getSize("default_margin").width - UM.Label + WorkspaceSection { - id: titleLabel - anchors.margins: UM.Theme.getSize("default_margin").height - text: catalog.i18nc("@action:title", "Summary - Cura Project") - font: UM.Theme.getFont("large") - } - } - - WorkspaceSection - { - id: printerSection - title: catalog.i18nc("@action:label", "Printer settings") - iconSource: UM.Theme.getIcon("Printer") - content: Column - { - spacing: UM.Theme.getSize("default_margin").height - leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width - - Row + id: printerSection + title: catalog.i18nc("@action:label", "Printer settings") + iconSource: UM.Theme.getIcon("Printer") + content: Column { - width: parent.width - height: childrenRect.height + spacing: UM.Theme.getSize("default_margin").height + leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width - UM.Label - { - text: catalog.i18nc("@action:label", "Type") - width: (parent.width / 3) | 0 - } - UM.Label - { - text: manager.machineType - width: (parent.width / 3) | 0 - } - } - - Row - { - width: parent.width - height: childrenRect.height - - UM.Label - { - text: catalog.i18nc("@action:label", manager.isPrinterGroup ? "Printer Group" : "Printer Name") - width: (parent.width / 3) | 0 - } - UM.Label - { - text: manager.machineName - width: (parent.width / 3) | 0 - wrapMode: Text.WordWrap - } - } - } - - comboboxTitle: catalog.i18nc("@action:label", "Open With") - comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the machine be resolved?") - comboboxVisible: workspaceDialog.visible && manager.updatableMachinesModel.count > 1 - combobox: Cura.ComboBox - { - id: machineResolveComboBox - model: manager.updatableMachinesModel - textRole: "displayName" - visible: workspaceDialog.visible && model.count > 1 - currentIndex: machineVisibleChanged() - - onCurrentIndexChanged: - { - if (model.getItem(currentIndex).id == "new" - && model.getItem(currentIndex).type == "default_option") - { - manager.setResolveStrategy("machine", "new") - } - else - { - manager.setResolveStrategy("machine", "override") - manager.setMachineToOverride(model.getItem(currentIndex).id) - } - } - - function machineVisibleChanged() - { - if (!visible) {return} - - currentIndex = 0 - // If the project printer exists in Cura, set it as the default dropdown menu option. - // No need to check object 0, which is the "Create new" option - for (var i = 1; i < model.count; i++) - { - if (model.getItem(i).name == manager.machineName) - { - currentIndex = i - break - } - } - // The project printer does not exist in Cura. If there is at least one printer of the same - // type, select the first one, else set the index to "Create new" - if (currentIndex == 0 && model.count > 1) - { - currentIndex = 1 - } - } - } - } - - WorkspaceSection - { - id: profileSection - title: catalog.i18nc("@action:label", "Profile settings") - iconSource: UM.Theme.getIcon("Printer") - content: Column - { - id: profileSettingsValuesTable - spacing: UM.Theme.getSize("default_margin").height - leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width - - Row - { - width: parent.width - height: childrenRect.height - - UM.Label - { - text: catalog.i18nc("@action:label", "Name") - width: (parent.width / 3) | 0 - } - UM.Label - { - text: manager.qualityName - width: (parent.width / 3) | 0 - wrapMode: Text.WordWrap - } - } - - Row - { - width: parent.width - height: childrenRect.height - - UM.Label - { - text: catalog.i18nc("@action:label", "Intent") - width: (parent.width / 3) | 0 - } - UM.Label - { - text: manager.intentName - width: (parent.width / 3) | 0 - wrapMode: Text.WordWrap - } - } - - Row - { - width: parent.width - height: childrenRect.height - - UM.Label - { - text: catalog.i18nc("@action:label", "Not in profile") - visible: manager.numUserSettings != 0 - width: (parent.width / 3) | 0 - } - UM.Label - { - text: catalog.i18ncp("@action:label", "%1 override", "%1 overrides", manager.numUserSettings).arg(manager.numUserSettings) - visible: manager.numUserSettings != 0 - width: (parent.width / 3) | 0 - } - } - - Row - { - width: parent.width - height: childrenRect.height - - UM.Label - { - text: catalog.i18nc("@action:label", "Derivative from") - visible: manager.numSettingsOverridenByQualityChanges != 0 - width: (parent.width / 3) | 0 - } - UM.Label - { - text: catalog.i18ncp("@action:label", "%1, %2 override", "%1, %2 overrides", manager.numSettingsOverridenByQualityChanges).arg(manager.qualityType).arg(manager.numSettingsOverridenByQualityChanges) - width: (parent.width / 3) | 0 - visible: manager.numSettingsOverridenByQualityChanges != 0 - wrapMode: Text.WordWrap - } - } - } - - comboboxTitle: catalog.i18nc("@action:label", "Open With") - comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the profile be resolved?") - comboboxVisible: manager.qualityChangesConflict - combobox: Cura.ComboBox - { - id: qualityChangesResolveComboBox - model: resolveStrategiesModel - textRole: "label" - visible: manager.qualityChangesConflict - - // This is a hack. This will trigger onCurrentIndexChanged and set the index when this component in loaded - currentIndex: - { - currentIndex = 0 - } - - onCurrentIndexChanged: - { - manager.setResolveStrategy("quality_changes", resolveStrategiesModel.get(currentIndex).key) - } - } - } - - WorkspaceSection - { - id: materialSection - title: catalog.i18nc("@action:label", "Material settings") - iconSource: UM.Theme.getIcon("Printer") - content: Column - { - spacing: UM.Theme.getSize("default_margin").height - leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width - - Repeater - { - model: manager.materialLabels - delegate: Row + Row { width: parent.width height: childrenRect.height + + UM.Label + { + text: catalog.i18nc("@action:label", "Type") + width: (parent.width / 3) | 0 + } + UM.Label + { + text: manager.machineType + width: (parent.width / 3) | 0 + } + } + + Row + { + width: parent.width + height: childrenRect.height + + UM.Label + { + text: catalog.i18nc("@action:label", manager.isPrinterGroup ? "Printer Group" : "Printer Name") + width: (parent.width / 3) | 0 + } + UM.Label + { + text: manager.machineName + width: (parent.width / 3) | 0 + wrapMode: Text.WordWrap + } + } + } + + comboboxTitle: catalog.i18nc("@action:label", "Open With") + comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the machine be resolved?") + comboboxVisible: workspaceDialog.visible && manager.updatableMachinesModel.count > 1 + combobox: Cura.ComboBox + { + id: machineResolveComboBox + model: manager.updatableMachinesModel + textRole: "displayName" + visible: workspaceDialog.visible && model.count > 1 + currentIndex: machineVisibleChanged() + + onCurrentIndexChanged: + { + if (model.getItem(currentIndex).id == "new" + && model.getItem(currentIndex).type == "default_option") + { + manager.setResolveStrategy("machine", "new") + } + else + { + manager.setResolveStrategy("machine", "override") + manager.setMachineToOverride(model.getItem(currentIndex).id) + } + } + + function machineVisibleChanged() + { + if (!visible) {return} + + currentIndex = 0 + // If the project printer exists in Cura, set it as the default dropdown menu option. + // No need to check object 0, which is the "Create new" option + for (var i = 1; i < model.count; i++) + { + if (model.getItem(i).name == manager.machineName) + { + currentIndex = i + break + } + } + // The project printer does not exist in Cura. If there is at least one printer of the same + // type, select the first one, else set the index to "Create new" + if (currentIndex == 0 && model.count > 1) + { + currentIndex = 1 + } + } + } + } + + WorkspaceSection + { + id: profileSection + title: catalog.i18nc("@action:label", "Profile settings") + iconSource: UM.Theme.getIcon("Printer") + content: Column + { + id: profileSettingsValuesTable + spacing: UM.Theme.getSize("default_margin").height + leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width + + Row + { + width: parent.width + height: childrenRect.height + UM.Label { text: catalog.i18nc("@action:label", "Name") @@ -307,101 +195,211 @@ UM.Dialog } UM.Label { - text: modelData + text: manager.qualityName width: (parent.width / 3) | 0 wrapMode: Text.WordWrap } } + + Row + { + width: parent.width + height: childrenRect.height + + UM.Label + { + text: catalog.i18nc("@action:label", "Intent") + width: (parent.width / 3) | 0 + } + UM.Label + { + text: manager.intentName + width: (parent.width / 3) | 0 + wrapMode: Text.WordWrap + } + } + + Row + { + width: parent.width + height: childrenRect.height + + UM.Label + { + text: catalog.i18nc("@action:label", "Not in profile") + visible: manager.numUserSettings != 0 + width: (parent.width / 3) | 0 + } + UM.Label + { + text: catalog.i18ncp("@action:label", "%1 override", "%1 overrides", manager.numUserSettings).arg(manager.numUserSettings) + visible: manager.numUserSettings != 0 + width: (parent.width / 3) | 0 + } + } + + Row + { + width: parent.width + height: childrenRect.height + + UM.Label + { + text: catalog.i18nc("@action:label", "Derivative from") + visible: manager.numSettingsOverridenByQualityChanges != 0 + width: (parent.width / 3) | 0 + } + UM.Label + { + text: catalog.i18ncp("@action:label", "%1, %2 override", "%1, %2 overrides", manager.numSettingsOverridenByQualityChanges).arg(manager.qualityType).arg(manager.numSettingsOverridenByQualityChanges) + width: (parent.width / 3) | 0 + visible: manager.numSettingsOverridenByQualityChanges != 0 + wrapMode: Text.WordWrap + } + } + } + + comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the profile be resolved?") + comboboxVisible: manager.qualityChangesConflict + combobox: Cura.ComboBox + { + id: qualityChangesResolveComboBox + model: resolveStrategiesModel + textRole: "label" + visible: manager.qualityChangesConflict + + // This is a hack. This will trigger onCurrentIndexChanged and set the index when this component in loaded + currentIndex: + { + currentIndex = 0 + } + + onCurrentIndexChanged: + { + manager.setResolveStrategy("quality_changes", resolveStrategiesModel.get(currentIndex).key) + } + } + } + + WorkspaceSection + { + id: materialSection + title: catalog.i18nc("@action:label", "Material settings") + iconSource: UM.Theme.getIcon("Printer") + content: Column + { + spacing: UM.Theme.getSize("default_margin").height + leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width + + Repeater + { + model: manager.materialLabels + delegate: Row + { + width: parent.width + height: childrenRect.height + UM.Label + { + text: catalog.i18nc("@action:label", "Name") + width: (parent.width / 3) | 0 + } + UM.Label + { + text: modelData + width: (parent.width / 3) | 0 + wrapMode: Text.WordWrap + } + } + } + } + + comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the material be resolved?") + comboboxVisible: manager.materialConflict + + combobox: Cura.ComboBox + { + id: materialResolveComboBox + model: resolveStrategiesModel + textRole: "label" + visible: manager.materialConflict + + // This is a hack. This will trigger onCurrentIndexChanged and set the index when this component in loaded + currentIndex: + { + currentIndex = 0 + } + + onCurrentIndexChanged: + { + manager.setResolveStrategy("material", resolveStrategiesModel.get(currentIndex).key) + } + } + } + + WorkspaceSection + { + id: visibilitySection + title: catalog.i18nc("@action:label", "Setting visibility") + iconSource: UM.Theme.getIcon("Printer") + content: Column + { + spacing: UM.Theme.getSize("default_margin").height + leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width + + Row + { + width: parent.width + height: childrenRect.height + UM.Label + { + text: catalog.i18nc("@action:label", "Mode") + width: (parent.width / 3) | 0 + } + UM.Label + { + text: manager.activeMode + width: (parent.width / 3) | 0 + } + } + Row + { + width: parent.width + height: childrenRect.height + visible: manager.hasVisibleSettingsField + UM.Label + { + text: catalog.i18nc("@action:label", "Visible settings:") + width: (parent.width / 3) | 0 + } + UM.Label + { + text: catalog.i18nc("@action:label", "%1 out of %2" ).arg(manager.numVisibleSettings).arg(manager.totalNumberOfSettings) + width: (parent.width / 3) | 0 + } + } } } - comboboxTitle: catalog.i18nc("@action:label", "Open With") - comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the material be resolved?") - comboboxVisible: manager.materialConflict - - combobox: Cura.ComboBox + Row { - id: materialResolveComboBox - model: resolveStrategiesModel - textRole: "label" - visible: manager.materialConflict - - // This is a hack. This will trigger onCurrentIndexChanged and set the index when this component in loaded - currentIndex: + id: clearBuildPlateWarning + width: parent.width + height: childrenRect.height + visible: manager.hasObjectsOnPlate + UM.ColorImage { - currentIndex = 0 + width: warningLabel.height + height: width + source: UM.Theme.getIcon("Information") + color: UM.Theme.getColor("text") } - - onCurrentIndexChanged: + UM.Label { - manager.setResolveStrategy("material", resolveStrategiesModel.get(currentIndex).key) + id: warningLabel + text: catalog.i18nc("@action:warning", "Loading a project will clear all models on the build plate.") } } } - - WorkspaceSection - { - id: visibilitySection - title: catalog.i18nc("@action:label", "Setting visibility") - iconSource: UM.Theme.getIcon("Printer") - content: Column - { - spacing: UM.Theme.getSize("default_margin").height - leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width - - Row - { - width: parent.width - height: childrenRect.height - UM.Label - { - text: catalog.i18nc("@action:label", "Mode") - width: (parent.width / 3) | 0 - } - UM.Label - { - text: manager.activeMode - width: (parent.width / 3) | 0 - } - } - Row - { - width: parent.width - height: childrenRect.height - visible: manager.hasVisibleSettingsField - UM.Label - { - text: catalog.i18nc("@action:label", "Visible settings:") - width: (parent.width / 3) | 0 - } - UM.Label - { - text: catalog.i18nc("@action:label", "%1 out of %2" ).arg(manager.numVisibleSettings).arg(manager.totalNumberOfSettings) - width: (parent.width / 3) | 0 - } - } - } - } - - Row - { - id: clearBuildPlateWarning - width: parent.width - height: childrenRect.height - visible: manager.hasObjectsOnPlate - UM.ColorImage - { - width: warningLabel.height - height: width - source: UM.Theme.getIcon("Information") - color: UM.Theme.getColor("text") - } - UM.Label - { - id: warningLabel - text: catalog.i18nc("@action:warning", "Loading a project will clear all models on the build plate.") - } - } } } } diff --git a/plugins/3MFReader/WorkspaceSection.qml b/plugins/3MFReader/WorkspaceSection.qml index cc0ddfbb65..f4e53b7cd7 100644 --- a/plugins/3MFReader/WorkspaceSection.qml +++ b/plugins/3MFReader/WorkspaceSection.qml @@ -38,8 +38,7 @@ Item id: comboboxLabel anchors.top: parent.top anchors.left: parent.left - anchors.bottomMargin: UM.Theme.getSize("default_margin").height - visible: comboboxVisible + visible: comboboxVisible && text != "" text: "" font: UM.Theme.getFont("default_bold") } @@ -50,6 +49,7 @@ Item width: parent.width height: UM.Theme.getSize("button").height anchors.top: comboboxLabel.bottom + anchors.topMargin: UM.Theme.getSize("default_margin").height anchors.left: parent.left sourceComponent: combobox } From b1e559ff1a831ef3675628096bae335f641da74b Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Wed, 2 Nov 2022 18:09:49 +0100 Subject: [PATCH 058/161] Add padding below section titles CURA-9424 --- plugins/3MFReader/WorkspaceSection.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/3MFReader/WorkspaceSection.qml b/plugins/3MFReader/WorkspaceSection.qml index f4e53b7cd7..575fc8fea5 100644 --- a/plugins/3MFReader/WorkspaceSection.qml +++ b/plugins/3MFReader/WorkspaceSection.qml @@ -59,7 +59,7 @@ Item { id: sectionTitleRow anchors.top: parent.top - anchors.bottomMargin: UM.Theme.getSize("default_margin").height + bottomPadding: UM.Theme.getSize("default_margin").height spacing: UM.Theme.getSize("default_margin").width UM.ColorImage From 8bb608348115cf6758ab4db8c9ef903bd1772919 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Wed, 2 Nov 2022 18:25:05 +0100 Subject: [PATCH 059/161] Create custom component for rows in WorkplaceDialog. CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 162 +++++--------------------- plugins/3MFReader/WorkspaceRow.qml | 34 ++++++ 2 files changed, 64 insertions(+), 132 deletions(-) create mode 100644 plugins/3MFReader/WorkspaceRow.qml diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 4a6ade7d08..b1428cd878 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -86,39 +86,16 @@ UM.Dialog spacing: UM.Theme.getSize("default_margin").height leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width - Row + WorkspaceRow { - width: parent.width - height: childrenRect.height - - UM.Label - { - text: catalog.i18nc("@action:label", "Type") - width: (parent.width / 3) | 0 - } - UM.Label - { - text: manager.machineType - width: (parent.width / 3) | 0 - } + leftLabelText: catalog.i18nc("@action:label", "Type") + rightLabelText: manager.machineType } - Row + WorkspaceRow { - width: parent.width - height: childrenRect.height - - UM.Label - { - text: catalog.i18nc("@action:label", manager.isPrinterGroup ? "Printer Group" : "Printer Name") - width: (parent.width / 3) | 0 - } - UM.Label - { - text: manager.machineName - width: (parent.width / 3) | 0 - wrapMode: Text.WordWrap - } + leftLabelText: catalog.i18nc("@action:label", manager.isPrinterGroup ? "Printer Group" : "Printer Name") + rightLabelText: manager.machineName } } @@ -183,79 +160,30 @@ UM.Dialog spacing: UM.Theme.getSize("default_margin").height leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width - Row + WorkspaceRow { - width: parent.width - height: childrenRect.height - - UM.Label - { - text: catalog.i18nc("@action:label", "Name") - width: (parent.width / 3) | 0 - } - UM.Label - { - text: manager.qualityName - width: (parent.width / 3) | 0 - wrapMode: Text.WordWrap - } + leftLabelText: catalog.i18nc("@action:label", "Name") + rightLabelText: manager.qualityName } - Row + WorkspaceRow { - width: parent.width - height: childrenRect.height - - UM.Label - { - text: catalog.i18nc("@action:label", "Intent") - width: (parent.width / 3) | 0 - } - UM.Label - { - text: manager.intentName - width: (parent.width / 3) | 0 - wrapMode: Text.WordWrap - } + leftLabelText: catalog.i18nc("@action:label", "Intent") + rightLabelText: manager.intentName } - Row + WorkspaceRow { - width: parent.width - height: childrenRect.height - - UM.Label - { - text: catalog.i18nc("@action:label", "Not in profile") - visible: manager.numUserSettings != 0 - width: (parent.width / 3) | 0 - } - UM.Label - { - text: catalog.i18ncp("@action:label", "%1 override", "%1 overrides", manager.numUserSettings).arg(manager.numUserSettings) - visible: manager.numUserSettings != 0 - width: (parent.width / 3) | 0 - } + leftLabelText: catalog.i18nc("@action:label", "Not in profile") + rightLabelText: catalog.i18ncp("@action:label", "%1 override", "%1 overrides", manager.numUserSettings).arg(manager.numUserSettings) + visible: manager.numUserSettings != 0 } - Row + WorkspaceRow { - width: parent.width - height: childrenRect.height - - UM.Label - { - text: catalog.i18nc("@action:label", "Derivative from") - visible: manager.numSettingsOverridenByQualityChanges != 0 - width: (parent.width / 3) | 0 - } - UM.Label - { - text: catalog.i18ncp("@action:label", "%1, %2 override", "%1, %2 overrides", manager.numSettingsOverridenByQualityChanges).arg(manager.qualityType).arg(manager.numSettingsOverridenByQualityChanges) - width: (parent.width / 3) | 0 - visible: manager.numSettingsOverridenByQualityChanges != 0 - wrapMode: Text.WordWrap - } + leftLabelText: catalog.i18nc("@action:label", "Derivative from") + rightLabelText: catalog.i18ncp("@action:label", "%1, %2 override", "%1, %2 overrides", manager.numSettingsOverridenByQualityChanges).arg(manager.qualityType).arg(manager.numSettingsOverridenByQualityChanges) + visible: manager.numSettingsOverridenByQualityChanges != 0 } } @@ -294,21 +222,10 @@ UM.Dialog Repeater { model: manager.materialLabels - delegate: Row + delegate: WorkspaceRow { - width: parent.width - height: childrenRect.height - UM.Label - { - text: catalog.i18nc("@action:label", "Name") - width: (parent.width / 3) | 0 - } - UM.Label - { - text: modelData - width: (parent.width / 3) | 0 - wrapMode: Text.WordWrap - } + leftLabelText: catalog.i18nc("@action:label", "Name") + rightLabelText: modelData } } } @@ -346,36 +263,17 @@ UM.Dialog spacing: UM.Theme.getSize("default_margin").height leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width - Row + WorkspaceRow { - width: parent.width - height: childrenRect.height - UM.Label - { - text: catalog.i18nc("@action:label", "Mode") - width: (parent.width / 3) | 0 - } - UM.Label - { - text: manager.activeMode - width: (parent.width / 3) | 0 - } + leftLabelText: catalog.i18nc("@action:label", "Mode") + rightLabelText: manager.activeMode } - Row + + WorkspaceRow { - width: parent.width - height: childrenRect.height + leftLabelText: catalog.i18nc("@action:label", "%1 out of %2" ).arg(manager.numVisibleSettings).arg(manager.totalNumberOfSettings) + rightLabelText: manager.activeMode visible: manager.hasVisibleSettingsField - UM.Label - { - text: catalog.i18nc("@action:label", "Visible settings:") - width: (parent.width / 3) | 0 - } - UM.Label - { - text: catalog.i18nc("@action:label", "%1 out of %2" ).arg(manager.numVisibleSettings).arg(manager.totalNumberOfSettings) - width: (parent.width / 3) | 0 - } } } } diff --git a/plugins/3MFReader/WorkspaceRow.qml b/plugins/3MFReader/WorkspaceRow.qml new file mode 100644 index 0000000000..72cea7b5bd --- /dev/null +++ b/plugins/3MFReader/WorkspaceRow.qml @@ -0,0 +1,34 @@ +// Copyright (c) 2022 Ultimaker B.V. +// Cura is released under the terms of the LGPLv3 or higher. + +import QtQuick 2.10 +import QtQuick.Controls 2.3 +import QtQuick.Layouts 1.3 +import QtQuick.Window 2.2 + +import UM 1.5 as UM +import Cura 1.1 as Cura + +Row +{ + property alias leftLabelText: leftLabel.text + property alias rightLabelText: rightLabel.text + + width: parent.width + height: visible ? childrenRect.height : 0 + + UM.Label + { + id: leftLabel + text: catalog.i18nc("@action:label", "Type") + width: (parent.width / 4) | 0 + wrapMode: Text.WordWrap + } + UM.Label + { + id: rightLabel + text: manager.machineType + width: (parent.width / 3) | 0 + wrapMode: Text.WordWrap + } +} \ No newline at end of file From c987ef53159d9f561e4f0adea277a37367ea71c6 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Wed, 2 Nov 2022 18:30:46 +0100 Subject: [PATCH 060/161] Adjust warning label margins CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index b1428cd878..3467dfe90d 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -262,6 +262,7 @@ UM.Dialog { spacing: UM.Theme.getSize("default_margin").height leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width + bottomPadding: UM.Theme.getSize("narrow_margin").height WorkspaceRow { @@ -283,7 +284,9 @@ UM.Dialog id: clearBuildPlateWarning width: parent.width height: childrenRect.height + spacing: UM.Theme.getSize("default_margin").width visible: manager.hasObjectsOnPlate + UM.ColorImage { width: warningLabel.height From fc264133478da9271bc1d40f542a5e5e22b279df Mon Sep 17 00:00:00 2001 From: jelle spijker Date: Wed, 2 Nov 2022 21:16:18 +0100 Subject: [PATCH 061/161] Check against str for conf_info bash path --- conanfile.py | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/conanfile.py b/conanfile.py index a39ced56c7..88c4289540 100644 --- a/conanfile.py +++ b/conanfile.py @@ -276,7 +276,7 @@ class CuraConan(ConanFile): self.requires(req) def build_requirements(self): - if self.settings_build.os != "Windows" or self.conf.get("tools.microsoft.bash:path", default=False, check_type=bool): + if self.settings_build.os != "Windows" or self.conf.get("tools.microsoft.bash:path", check_type = str): self.tool_requires("gettext/0.21") def layout(self): @@ -289,16 +289,13 @@ class CuraConan(ConanFile): self.cpp.package.resdirs = ["resources", "plugins", "packaging", "pip_requirements"] # pip_requirements should be the last item in the list def build(self): - if self.settings_build.os == "Windows" and not self.conf.get("tools.microsoft.bash:path", default=False, check_type=bool): - return - # FIXME: once m4, autoconf, automake are Conan V2 ready self.win_bash = True # We need gettext, which requires the bash environment + if self.settings_build.os != "Windows" or self.conf.get("tools.microsoft.bash:path", check_type = str): + for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): + mo_file = self.build_path.joinpath(po_file.with_suffix('.mo').relative_to(self.source_path)) + mkdir(self, str(unix_path(self, mo_file.parent))) + self.run(f"msgfmt {po_file} -o {mo_file} -f", env="conanbuild", run_environment=True) - for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): - mo_file = self.build_path.joinpath(po_file.with_suffix('.mo').relative_to(self.source_path)) - mkdir(self, str(unix_path(self, mo_file.parent))) - self.run(f"msgfmt {po_file} -o {mo_file} -f", env="conanbuild", run_environment=True) - - # FIXME: once m4, autoconf, automake are Conan V2 ready self.win_bash = None + # FIXME: once m4, autoconf, automake are Conan V2 ready self.win_bash = None def generate(self): cura_run_envvars = self._cura_run_env.vars(self, scope = "run") @@ -318,7 +315,7 @@ class CuraConan(ConanFile): entitlements_file = entitlements_file if self.settings.os == "Macos" else "None") # Update the po files - if self.settings_build.os != "Windows" or self.conf.get("tools.microsoft.bash:path", default = False, check_type = bool): + if self.settings_build.os != "Windows" or self.conf.get("tools.microsoft.bash:path", check_type = str): for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): pot_file = self.source_path.joinpath("resources", "i18n", po_file.with_suffix('.pot').name) mkdir(self, str(unix_path(self, pot_file.parent))) From b75e047348b9efdadd0031fb3f1826f725cca181 Mon Sep 17 00:00:00 2001 From: jelle spijker Date: Wed, 2 Nov 2022 22:01:19 +0100 Subject: [PATCH 062/161] Use ref.base_name for pr --- .github/workflows/conan-recipe-version.yml | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/.github/workflows/conan-recipe-version.yml b/.github/workflows/conan-recipe-version.yml index f1dfc67bf3..eb1824c8f7 100644 --- a/.github/workflows/conan-recipe-version.yml +++ b/.github/workflows/conan-recipe-version.yml @@ -93,12 +93,13 @@ jobs: issue_number = "${{ github.ref }}".split('/')[2] is_tag = "${{ github.ref_type }}" == "tag" is_release_branch = False + ref_name = "${{ github.base_ref }}" if event_name == "pull_request" else "${{ github.ref_name }}" buildmetadata = "" if "${{ inputs.additional_buildmetadata }}" == "" else "${{ inputs.additional_buildmetadata }}_" # FIXME: for when we push a tag (such as an release) channel = "testing" if is_tag: - branch_version = tools.Version("${{ github.ref_name }}") + branch_version = tools.Version(ref_name) is_release_branch = True channel = "_" user = "_" @@ -108,10 +109,10 @@ jobs: branch_version = tools.Version(repo.active_branch.name) except ConanException: branch_version = tools.Version('0.0.0') - if "${{ github.ref_name }}" == f"{branch_version.major}.{branch_version.minor}": + if ref_name == f"{branch_version.major}.{branch_version.minor}": channel = 'stable' is_release_branch = True - elif "${{ github.ref_name }}" in ("main", "master"): + elif ref_name in ("main", "master"): channel = 'testing' else: channel = repo.active_branch.name.split("_")[0].replace("-", "_").lower() @@ -165,15 +166,6 @@ jobs: bump_up_minor = int(latest_branch_version.minor) + 1 reset_patch = 0 actual_version = f"{latest_branch_version.major}.{bump_up_minor}.{reset_patch}-alpha+{buildmetadata}{channel_metadata}" - else: - # FIXME: for external PR's - actual_version = f"5.3.0-alpha+{buildmetadata}pr_{issue_number}" - - if is_tag and "${{ github.ref_name }}" == "5.2.0-beta": - actual_version = "5.2.0-beta" - is_release_branch = True - user = "_" - channel = "_" # %% print to output cmd_name = ["echo", f"::set-output name=name::{project_name}"] From d5099111bba146cdb89f56e776899f40bdd7e579 Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Thu, 3 Nov 2022 00:45:42 +0100 Subject: [PATCH 063/161] minor fixes + layer_no instead of height --- plugins/PostProcessingPlugin/scripts/PauseAtHeight.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py b/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py index 5923a53adf..ab50691634 100644 --- a/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py +++ b/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py @@ -26,7 +26,7 @@ class PauseAtHeight(Script): "description": "Whether to pause at a certain height or at a certain layer.", "type": "enum", "options": {"height": "Height", "layer_no": "Layer Number"}, - "default_value": "height" + "default_value": "layer_no" }, "pause_height": { @@ -447,7 +447,7 @@ class PauseAtHeight(Script): # Wait till the user continues printing prepend_gcode += pause_command + " ; Do the actual pause\n" - # Set a custom GCODE section before pause + # Set a custom GCODE section after pause if gcode_after: prepend_gcode += gcode_after + "\n" From 50fad9caf4e6dcb980c94fd497c80ab40df6e00c Mon Sep 17 00:00:00 2001 From: Jelle Spijker Date: Thu, 3 Nov 2022 07:18:26 +0100 Subject: [PATCH 064/161] Only translate when option devtools is set --- conanfile.py | 39 ++++++++++++++++++++++----------------- 1 file changed, 22 insertions(+), 17 deletions(-) diff --git a/conanfile.py b/conanfile.py index 88c4289540..a122cb85e4 100644 --- a/conanfile.py +++ b/conanfile.py @@ -10,7 +10,7 @@ from conan.tools.env import VirtualRunEnv, Environment from conan.tools.scm import Version from conan.errors import ConanInvalidConfiguration, ConanException -required_conan_version = ">=1.50.0" +required_conan_version = ">=1.52.0" class CuraConan(ConanFile): @@ -276,8 +276,10 @@ class CuraConan(ConanFile): self.requires(req) def build_requirements(self): - if self.settings_build.os != "Windows" or self.conf.get("tools.microsoft.bash:path", check_type = str): - self.tool_requires("gettext/0.21") + if self.options.devtools: + if self.settings.os != "Windows" or self.conf.get("tools.microsoft.bash:path", check_type = str): + # FIXME: once m4, autoconf, automake are Conan V2 ready use self.win_bash and add gettext as base tool_requirement + self.tool_requires("gettext/0.21", force_host_context=True) def layout(self): self.folders.source = "." @@ -289,13 +291,14 @@ class CuraConan(ConanFile): self.cpp.package.resdirs = ["resources", "plugins", "packaging", "pip_requirements"] # pip_requirements should be the last item in the list def build(self): - if self.settings_build.os != "Windows" or self.conf.get("tools.microsoft.bash:path", check_type = str): - for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): - mo_file = self.build_path.joinpath(po_file.with_suffix('.mo').relative_to(self.source_path)) - mkdir(self, str(unix_path(self, mo_file.parent))) - self.run(f"msgfmt {po_file} -o {mo_file} -f", env="conanbuild", run_environment=True) - - # FIXME: once m4, autoconf, automake are Conan V2 ready self.win_bash = None + if self.options.devtools: + if self.settings.os != "Windows" or self.conf.get("tools.microsoft.bash:path", check_type = str): + # FIXME: once m4, autoconf, automake are Conan V2 ready use self.win_bash and add gettext as base tool_requirement + cpp_info = self.dependencies["gettext"].cpp_info + for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): + mo_file = self.build_path.joinpath(po_file.with_suffix('.mo').relative_to(self.source_path)) + mkdir(self, str(unix_path(self, mo_file.parent))) + self.run(f"{cpp_info.bindirs[0]}/msgfmt {po_file} -o {mo_file} -f", env="conanbuild", ignore_errors=True) def generate(self): cura_run_envvars = self._cura_run_env.vars(self, scope = "run") @@ -314,13 +317,15 @@ class CuraConan(ConanFile): icon_path = "'{}'".format(Path(self.source_folder, "packaging", self._um_data()["pyinstaller"]["icon"][str(self.settings.os)])).replace("\\", "\\\\"), entitlements_file = entitlements_file if self.settings.os == "Macos" else "None") - # Update the po files - if self.settings_build.os != "Windows" or self.conf.get("tools.microsoft.bash:path", check_type = str): - for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): - pot_file = self.source_path.joinpath("resources", "i18n", po_file.with_suffix('.pot').name) - mkdir(self, str(unix_path(self, pot_file.parent))) - self.run(f"msgmerge --no-wrap --no-fuzzy-matching -width=140 -o {po_file} {po_file} {pot_file}", env = "conanbuild", run_environment=True) - + # Update the po files + if self.settings.os != "Windows" or self.conf.get("tools.microsoft.bash:path", check_type = str): + # FIXME: once m4, autoconf, automake are Conan V2 ready use self.win_bash and add gettext as base tool_requirement + cpp_info = self.dependencies["gettext"].cpp_info + for po_file in self.source_path.joinpath("resources", "i18n").glob("**/*.po"): + pot_file = self.source_path.joinpath("resources", "i18n", po_file.with_suffix('.pot').name) + mkdir(self, str(unix_path(self, pot_file.parent))) + self.run(f"{cpp_info.bindirs[0]}/msgmerge --no-wrap --no-fuzzy-matching -width=140 -o {po_file} {po_file} {pot_file}", + env = "conanbuild", ignore_errors = True) def imports(self): self.copy("CuraEngine.exe", root_package = "curaengine", src = "@bindirs", dst = "", keep_path = False) From ce8a7b610996de64b7f0540f88eb6f7aaa563dc5 Mon Sep 17 00:00:00 2001 From: jelle spijker Date: Thu, 3 Nov 2022 07:50:57 +0100 Subject: [PATCH 065/161] Create Artifactory build info --- .github/workflows/conan-package-create.yml | 12 ++++++++++++ .github/workflows/conan-package.yml | 1 + 2 files changed, 13 insertions(+) diff --git a/.github/workflows/conan-package-create.yml b/.github/workflows/conan-package-create.yml index 4af608b7ac..4f55f0cd70 100644 --- a/.github/workflows/conan-package-create.yml +++ b/.github/workflows/conan-package-create.yml @@ -3,6 +3,10 @@ name: Create and Upload Conan package on: workflow_call: inputs: + project_name: + required: true + type: string + recipe_id_full: required: true type: string @@ -126,6 +130,9 @@ jobs: if: ${{ inputs.conan_config_branch == '' }} run: conan config install https://github.com/Ultimaker/conan-config.git + - name: Associate build information with the Conan package + run: conan_build_info --v2 start ${{ inputs.project_name }} ${{ github.run_number }} + - name: Create the Packages if: ${{ !inputs.create_from_source }} run: conan install ${{ inputs.recipe_id_full }} --build=missing --update @@ -151,3 +158,8 @@ jobs: - name: Upload the Package(s) community if: ${{ always() && inputs.conan_upload_community == true }} run: conan upload "*" -r cura-ce -c + + - name: Create and Upload the build info + run: | + conan_build_info --v2 create buildinfo.json --lockfile conan.lock --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} + conan_build_info --v2 publish buildinfo.json --url https://ultimaker.jfrog.io/artifactory --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} diff --git a/.github/workflows/conan-package.yml b/.github/workflows/conan-package.yml index 8a9de2e37f..9bcd9635ee 100644 --- a/.github/workflows/conan-package.yml +++ b/.github/workflows/conan-package.yml @@ -81,6 +81,7 @@ jobs: uses: ultimaker/cura/.github/workflows/conan-package-create.yml@main with: + project_name: cura recipe_id_full: ${{ needs.conan-recipe-version.outputs.recipe_id_full }} runs_on: 'ubuntu-20.04' python_version: '3.10.x' From 30555dbd5b31eea55f56d0109c7fa7bf8ec806ab Mon Sep 17 00:00:00 2001 From: jelle spijker Date: Thu, 3 Nov 2022 08:14:07 +0100 Subject: [PATCH 066/161] Use lockfile and build_id --- .github/workflows/conan-package-create.yml | 11 +++++++++-- .github/workflows/conan-package.yml | 1 + 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/.github/workflows/conan-package-create.yml b/.github/workflows/conan-package-create.yml index 4f55f0cd70..7d4cbe2f59 100644 --- a/.github/workflows/conan-package-create.yml +++ b/.github/workflows/conan-package-create.yml @@ -7,6 +7,10 @@ on: required: true type: string + build_id: + required: true + type: number + recipe_id_full: required: true type: string @@ -131,11 +135,13 @@ jobs: run: conan config install https://github.com/Ultimaker/conan-config.git - name: Associate build information with the Conan package - run: conan_build_info --v2 start ${{ inputs.project_name }} ${{ github.run_number }} + run: conan_build_info --v2 start ${{ inputs.project_name }} ${{ github.run_number }}000${{ inputs.build_id }} - name: Create the Packages if: ${{ !inputs.create_from_source }} - run: conan install ${{ inputs.recipe_id_full }} --build=missing --update + run: | + conan lock create --reference ${{ inputs.recipe_id_full }} --build=missing --update + conan install ${{ inputs.recipe_id_full }} --build=missing --update --lockfile=conan.lock - name: Create the Packages (from source) if: ${{ inputs.create_from_source }} @@ -163,3 +169,4 @@ jobs: run: | conan_build_info --v2 create buildinfo.json --lockfile conan.lock --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} conan_build_info --v2 publish buildinfo.json --url https://ultimaker.jfrog.io/artifactory --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} + conan_build_info --v2 stop diff --git a/.github/workflows/conan-package.yml b/.github/workflows/conan-package.yml index 9bcd9635ee..0a3d4447c1 100644 --- a/.github/workflows/conan-package.yml +++ b/.github/workflows/conan-package.yml @@ -82,6 +82,7 @@ jobs: uses: ultimaker/cura/.github/workflows/conan-package-create.yml@main with: project_name: cura + build_id: 1 recipe_id_full: ${{ needs.conan-recipe-version.outputs.recipe_id_full }} runs_on: 'ubuntu-20.04' python_version: '3.10.x' From c20410d7321f5d6bb95418a4aad3475f5f19decb Mon Sep 17 00:00:00 2001 From: "j.spijker@ultimaker.com" Date: Thu, 3 Nov 2022 08:42:24 +0100 Subject: [PATCH 067/161] build info and create in one step --- .github/workflows/conan-package-create.yml | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/.github/workflows/conan-package-create.yml b/.github/workflows/conan-package-create.yml index 7d4cbe2f59..a3b769fdb3 100644 --- a/.github/workflows/conan-package-create.yml +++ b/.github/workflows/conan-package-create.yml @@ -134,14 +134,15 @@ jobs: if: ${{ inputs.conan_config_branch == '' }} run: conan config install https://github.com/Ultimaker/conan-config.git - - name: Associate build information with the Conan package - run: conan_build_info --v2 start ${{ inputs.project_name }} ${{ github.run_number }}000${{ inputs.build_id }} - - name: Create the Packages if: ${{ !inputs.create_from_source }} run: | + conan_build_info --v2 start ${{ inputs.project_name }} ${{ github.run_number }}000${{ inputs.build_id }} conan lock create --reference ${{ inputs.recipe_id_full }} --build=missing --update conan install ${{ inputs.recipe_id_full }} --build=missing --update --lockfile=conan.lock + conan_build_info --v2 create buildinfo.json --lockfile conan.lock --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} + conan_build_info --v2 publish buildinfo.json --url https://ultimaker.jfrog.io/artifactory --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} + conan_build_info --v2 stop - name: Create the Packages (from source) if: ${{ inputs.create_from_source }} @@ -164,9 +165,3 @@ jobs: - name: Upload the Package(s) community if: ${{ always() && inputs.conan_upload_community == true }} run: conan upload "*" -r cura-ce -c - - - name: Create and Upload the build info - run: | - conan_build_info --v2 create buildinfo.json --lockfile conan.lock --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} - conan_build_info --v2 publish buildinfo.json --url https://ultimaker.jfrog.io/artifactory --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} - conan_build_info --v2 stop From c8f51a67431d16cd93844d2f9dde4be004959ce4 Mon Sep 17 00:00:00 2001 From: jelle spijker Date: Thu, 3 Nov 2022 10:08:00 +0100 Subject: [PATCH 068/161] Correctly wrap text body to prevent weird alignment in welcome pages CURA-8689 --- resources/qml/WelcomePages/AddUltimakerPrinter.qml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml index af3b506b76..92f79e00ba 100644 --- a/resources/qml/WelcomePages/AddUltimakerPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -32,7 +32,9 @@ Control { UM.Label { + Layout.fillWidth: true text: catalog.i18nc("@label", "New Ultimaker printers can be connected to Digital Factory and monitored remotely.") + wrapMode: Text.WordWrap } RowLayout @@ -84,7 +86,6 @@ Control iconSource: UM.Theme.getIcon("LinkExternal") isIconOnRightSide: true textFont: UM.Theme.getFont("small") - fixedWidthMode: true onClicked: Qt.openUrlExternally("https://support.ultimaker.com/hc/en-us/articles/360012019239?utm_source=cura&utm_medium=software&utm_campaign=onboarding-add-printer") } } From d07c2c2c0da6d714187ffb37965a58a211ed8df4 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Thu, 3 Nov 2022 10:37:02 +0100 Subject: [PATCH 069/161] Update copy contributes to CURA-8689 --- resources/qml/WelcomePages/AddUltimakerPrinter.qml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml index 92f79e00ba..0d99b85b51 100644 --- a/resources/qml/WelcomePages/AddUltimakerPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -60,7 +60,7 @@ Control Layout.alignment: Qt.AlignTop wrapMode: Text.WordWrap font: UM.Theme.getFont("default_bold") - text: catalog.i18nc("@label", "New Ultimaker printers can be connected to Digital Factory and monitored remotely.") + text: catalog.i18nc("@label", "If you are trying to add a new Ultimaker printer to Cura") } UM.Label @@ -82,7 +82,7 @@ Control { Layout.fillWidth: true Layout.alignment: Qt.AlignTop - text: catalog.i18nc("@button", "Learn more about adding printers to Digital Factory") + text: catalog.i18nc("@button", "Learn more") iconSource: UM.Theme.getIcon("LinkExternal") isIconOnRightSide: true textFont: UM.Theme.getFont("small") From c892bac27f8f763f8d829ab0f91a96359ca5b8f4 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Thu, 3 Nov 2022 10:45:29 +0100 Subject: [PATCH 070/161] Use paragraph for in favor of ordered list Text indentation became when the text would span multiple lines contributes to CURA-8689 --- resources/qml/WelcomePages/AddUltimakerPrinter.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml index 0d99b85b51..9c9154f3b3 100644 --- a/resources/qml/WelcomePages/AddUltimakerPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -74,7 +74,7 @@ Control catalog.i18nc("@info", "Follow the procedure to add a new printer"), catalog.i18nc("@info", "Your new printer will automatically appear in Cura"), ]; - return `
      ${steps.map(step => `
    1. ${step}`).join('')}
    `; + return steps.join("
    "); } } From 6126135adb5798067622ca8135e9f7b308625213 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Thu, 3 Nov 2022 16:43:01 +0100 Subject: [PATCH 071/161] Adjust dialog margins. Move title into full width white square. CURA-9424 Co-authored-by: Casper Lamboo --- plugins/3MFReader/WorkspaceDialog.qml | 63 ++++++++++++++------------ plugins/3MFReader/WorkspaceSection.qml | 7 ++- 2 files changed, 39 insertions(+), 31 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 3467dfe90d..f79fb6266a 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -14,33 +14,45 @@ UM.Dialog id: workspaceDialog title: catalog.i18nc("@title:window", "Open Project") + margin: UM.Theme.getSize("default_margin").width minimumWidth: UM.Theme.getSize("modal_window_minimum").width minimumHeight: UM.Theme.getSize("modal_window_minimum").height - width: minimumWidth - height: minimumHeight - backgroundColor: UM.Theme.getColor("main_background") + backgroundColor: UM.Theme.getColor("detail_background") - Flickable + headerComponent: Rectangle { - clip: true - width: parent.width - height: parent.height - contentHeight: dialogSummaryItem.height - ScrollBar.vertical: UM.ScrollBar { id: verticalScrollBar } + height: childrenRect.height + 2 * UM.Theme.getSize("default_margin").height + color: UM.Theme.getColor("main_background") - Item + UM.Label + { + id: titleLabel + text: catalog.i18nc("@action:title", "Summary - Cura Project") + font: UM.Theme.getFont("large") + anchors.top: parent.top + anchors.left: parent.left + anchors.topMargin: UM.Theme.getSize("default_margin").height + anchors.leftMargin: UM.Theme.getSize("default_margin").height + } + } + + Rectangle + { + anchors.fill: parent + UM.I18nCatalog { id: catalog; name: "cura" } + color: UM.Theme.getColor("main_background") + + Flickable { id: dialogSummaryItem - width: verticalScrollBar.visible ? parent.width - verticalScrollBar.width - UM.Theme.getSize("default_margin").width : parent.width - height: childrenRect.height - anchors.margins: 10 * screenScaleFactor + width: parent.width + height: parent.height - UM.I18nCatalog - { - id: catalog - name: "cura" - } + clip: true + + contentHeight: contentColumn.height + ScrollBar.vertical: UM.ScrollBar { id: scrollbar } ListModel { @@ -57,20 +69,13 @@ UM.Dialog Column { - width: parent.width + id: contentColumn + width: parent.width - scrollbar.width height: childrenRect.height - spacing: UM.Theme.getSize("wide_margin").height - - UM.Label - { - id: titleLabel - text: catalog.i18nc("@action:title", "Summary - Cura Project") - font: UM.Theme.getFont("large") - } Column { - width: parent.width + width: parent.width - UM.Theme.getSize("default_margin").width height: childrenRect.height spacing: UM.Theme.getSize("default_margin").height leftPadding: UM.Theme.getSize("default_margin").width @@ -312,7 +317,7 @@ UM.Dialog color: warning ? UM.Theme.getColor("warning") : "transparent" anchors.bottom: parent.bottom width: parent.width - height: childrenRect.height + 2 * workspaceDialog.margin + height: childrenRect.height + (warning ? 2 * workspaceDialog.margin : workspaceDialog.margin) Column { diff --git a/plugins/3MFReader/WorkspaceSection.qml b/plugins/3MFReader/WorkspaceSection.qml index 575fc8fea5..211d8776f3 100644 --- a/plugins/3MFReader/WorkspaceSection.qml +++ b/plugins/3MFReader/WorkspaceSection.qml @@ -26,18 +26,21 @@ Item UM.TooltipArea { id: comboboxTooltip - width: (parent.width / 3) | 0 + width: (parent.width / 2.5) | 0 height: visible ? UM.Theme.getSize("default_margin").height : 0 anchors.top: parent.top anchors.right: parent.right - visible: comboboxVisible + anchors.rightMargin: UM.Theme.getSize("default_margin").width + text: comboboxTooltipText + visible: comboboxVisible UM.Label { id: comboboxLabel anchors.top: parent.top anchors.left: parent.left + anchors.topMargin: UM.Theme.getSize("default_margin").height visible: comboboxVisible && text != "" text: "" font: UM.Theme.getFont("default_bold") From e954de7f0120fbf9cafec9b71b4efb0609e08b4f Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Thu, 3 Nov 2022 16:43:19 +0100 Subject: [PATCH 072/161] Adjust dialog margins. Move title into full width white square. CURA-9424 Co-authored-by: Casper Lamboo --- plugins/3MFReader/WorkspaceDialog.qml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index f79fb6266a..d40f54a34b 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -324,7 +324,11 @@ UM.Dialog height: childrenRect.height spacing: workspaceDialog.margin - anchors.margins: workspaceDialog.margin + anchors.leftMargin: workspaceDialog.margin + anchors.rightMargin: workspaceDialog.margin + anchors.bottomMargin: workspaceDialog.margin + anchors.topMargin: warning ? workspaceDialog.margin : 0 + anchors.left: parent.left anchors.right: parent.right anchors.top: parent.top From f8ed660d58135b5a6b2a39f3c9d5548617c85bb5 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Thu, 3 Nov 2022 16:54:56 +0100 Subject: [PATCH 073/161] Update icons CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index d40f54a34b..46eef227dc 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -158,7 +158,7 @@ UM.Dialog { id: profileSection title: catalog.i18nc("@action:label", "Profile settings") - iconSource: UM.Theme.getIcon("Printer") + iconSource: UM.Theme.getIcon("Sliders") content: Column { id: profileSettingsValuesTable @@ -218,7 +218,7 @@ UM.Dialog { id: materialSection title: catalog.i18nc("@action:label", "Material settings") - iconSource: UM.Theme.getIcon("Printer") + iconSource: UM.Theme.getIcon("Spool") content: Column { spacing: UM.Theme.getSize("default_margin").height @@ -262,7 +262,7 @@ UM.Dialog { id: visibilitySection title: catalog.i18nc("@action:label", "Setting visibility") - iconSource: UM.Theme.getIcon("Printer") + iconSource: UM.Theme.getIcon("Eye") content: Column { spacing: UM.Theme.getSize("default_margin").height From 997b6f830d6a711341d0211f3034a9cf343a692e Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Fri, 4 Nov 2022 09:12:47 +0100 Subject: [PATCH 074/161] Manually revert part of PR. It shouldn't really be nescesary, but you _can_ put any gcode flavour in relative or absolute, so we should also deal with that in the pause-at-height script. --- plugins/PostProcessingPlugin/scripts/PauseAtHeight.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py b/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py index 3c579d1ed5..6afac57359 100644 --- a/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py +++ b/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py @@ -514,7 +514,15 @@ class PauseAtHeight(Script): else: Logger.log("w", "No previous feedrate found in gcode, feedrate for next layer(s) might be incorrect") - prepend_gcode += self.putValue(M = 82) + "\n" + extrusion_mode_string = "absolute" + extrusion_mode_numeric = 82 + + relative_extrusion = Application.getInstance().getGlobalContainerStack().getProperty("relative_extrusion", "value") + if relative_extrusion: + extrusion_mode_string = "relative" + extrusion_mode_numeric = 83 + + prepend_gcode += self.putValue(M = extrusion_mode_numeric) + " ; switch back to " + extrusion_mode_string + " E values\n" # reset extrude value to pre pause value prepend_gcode += self.putValue(G = 92, E = current_e) + "\n" From 6ddc16709b4dcb9b6b2214ad36918dbe1c191b55 Mon Sep 17 00:00:00 2001 From: jelle spijker Date: Fri, 4 Nov 2022 10:13:41 +0100 Subject: [PATCH 075/161] Use GCC12 as default for all Linux runners --- .github/workflows/conan-package-create.yml | 4 ++-- .github/workflows/cura-installer.yml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/conan-package-create.yml b/.github/workflows/conan-package-create.yml index 4af608b7ac..f76394a4ae 100644 --- a/.github/workflows/conan-package-create.yml +++ b/.github/workflows/conan-package-create.yml @@ -108,8 +108,8 @@ jobs: sudo apt upgrade sudo apt install build-essential checkinstall libegl-dev zlib1g-dev libssl-dev ninja-build autoconf libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev xtrans-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev xkb-data libxcb-dri3-dev uuid-dev libxcb-util-dev libxkbcommon-x11-dev pkg-config -y - - name: Install GCC-12 on ubuntu-22.04 - if: ${{ startsWith(inputs.runs_on, 'ubuntu-22.04') }} + - name: Install GCC-12 on ubuntu + if: ${{ runner.os == 'Linux' }} run: | sudo apt install g++-12 gcc-12 -y sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12 diff --git a/.github/workflows/cura-installer.yml b/.github/workflows/cura-installer.yml index 99d12a5057..2c2287433f 100644 --- a/.github/workflows/cura-installer.yml +++ b/.github/workflows/cura-installer.yml @@ -127,7 +127,7 @@ jobs: echo "APPIMAGETOOL_LOCATION=$GITHUB_WORKSPACE/appimagetool" >> $GITHUB_ENV - name: Install GCC-12 on ubuntu-22.04 - if: ${{ matrix.os == 'ubuntu-22.04' }} + if: ${{ runner.os == 'Linux' }} run: | sudo apt install g++-12 gcc-12 -y sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12 From 61a491f910abd2fbb69d3da02f76995ec2926c26 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Fri, 4 Nov 2022 11:57:53 +0100 Subject: [PATCH 076/161] Restrict permissions, should only need to read here. --- .github/workflows/notify.yml | 5 ++++- .github/workflows/notify_on_print_profile_change.yml | 6 +++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/.github/workflows/notify.yml b/.github/workflows/notify.yml index 370b54c78b..e970952687 100644 --- a/.github/workflows/notify.yml +++ b/.github/workflows/notify.yml @@ -23,9 +23,12 @@ on: required: true type: string - +permissions: {} jobs: slackNotification: + permissions: + contents: read + name: Slack Notification runs-on: ubuntu-latest diff --git a/.github/workflows/notify_on_print_profile_change.yml b/.github/workflows/notify_on_print_profile_change.yml index c8747a9828..a41bb00c2a 100644 --- a/.github/workflows/notify_on_print_profile_change.yml +++ b/.github/workflows/notify_on_print_profile_change.yml @@ -19,9 +19,13 @@ on: - 'resources/intent/ultimaker**' - 'resources/quality/ultimaker**' - 'resources/variants/ultimaker**' + permissions: {} jobs: slackNotification: + permissions: + contents: read + name: Slack Notification runs-on: ubuntu-latest steps: @@ -33,4 +37,4 @@ jobs: SLACK_COLOR: '#00FF00' SLACK_TITLE: Print profiles changed MSG_MINIMAL: commit - SLACK_WEBHOOK: ${{ secrets.SLACK_CURA_PPM_HOOK }} \ No newline at end of file + SLACK_WEBHOOK: ${{ secrets.SLACK_CURA_PPM_HOOK }} From 00dbe928149bdbcf03b285cd4ce32c5f60c2c7a8 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Fri, 4 Nov 2022 12:00:39 +0100 Subject: [PATCH 077/161] Revert "Restrict permissions, should only need to read here." This reverts commit 61a491f910abd2fbb69d3da02f76995ec2926c26. --- .github/workflows/notify.yml | 5 +---- .github/workflows/notify_on_print_profile_change.yml | 6 +----- 2 files changed, 2 insertions(+), 9 deletions(-) diff --git a/.github/workflows/notify.yml b/.github/workflows/notify.yml index e970952687..370b54c78b 100644 --- a/.github/workflows/notify.yml +++ b/.github/workflows/notify.yml @@ -23,12 +23,9 @@ on: required: true type: string -permissions: {} + jobs: slackNotification: - permissions: - contents: read - name: Slack Notification runs-on: ubuntu-latest diff --git a/.github/workflows/notify_on_print_profile_change.yml b/.github/workflows/notify_on_print_profile_change.yml index a41bb00c2a..c8747a9828 100644 --- a/.github/workflows/notify_on_print_profile_change.yml +++ b/.github/workflows/notify_on_print_profile_change.yml @@ -19,13 +19,9 @@ on: - 'resources/intent/ultimaker**' - 'resources/quality/ultimaker**' - 'resources/variants/ultimaker**' - permissions: {} jobs: slackNotification: - permissions: - contents: read - name: Slack Notification runs-on: ubuntu-latest steps: @@ -37,4 +33,4 @@ jobs: SLACK_COLOR: '#00FF00' SLACK_TITLE: Print profiles changed MSG_MINIMAL: commit - SLACK_WEBHOOK: ${{ secrets.SLACK_CURA_PPM_HOOK }} + SLACK_WEBHOOK: ${{ secrets.SLACK_CURA_PPM_HOOK }} \ No newline at end of file From 81f8939c1f3395b444d0ec1784895aba87d0f3a2 Mon Sep 17 00:00:00 2001 From: Casper Lamboo Date: Fri, 4 Nov 2022 13:40:49 +0100 Subject: [PATCH 078/161] Update resources/qml/WelcomePages/AddThirdPartyPrinter.qml Co-authored-by: Joey de l'Arago --- resources/qml/WelcomePages/AddThirdPartyPrinter.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/qml/WelcomePages/AddThirdPartyPrinter.qml b/resources/qml/WelcomePages/AddThirdPartyPrinter.qml index df7a2a176d..f25cdccbf1 100644 --- a/resources/qml/WelcomePages/AddThirdPartyPrinter.qml +++ b/resources/qml/WelcomePages/AddThirdPartyPrinter.qml @@ -99,7 +99,7 @@ Item id: backButton anchors.left: parent.left anchors.bottom: parent.bottom - text: catalog.i18nc("@label", "Add Ultimaker printer via Digital Factory") + text: catalog.i18nc("@button", "Add Ultimaker printer via Digital Factory") onClicked: goToUltimakerPrinter() } From c5788be6f7439b81d9d2fc3e704ceb3416d19aa7 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Fri, 4 Nov 2022 13:48:31 +0100 Subject: [PATCH 079/161] Add ids with interactable components Makes it easier to perform automatic ui testing contributes to CURA-8689 --- resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml | 3 +++ resources/qml/WelcomePages/AddUltimakerPrinter.qml | 3 +++ 2 files changed, 6 insertions(+) diff --git a/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml b/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml index 01b375f66d..0e88e0373f 100644 --- a/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml @@ -49,6 +49,7 @@ Control PrinterCard { + id: ultimakerPrinterCard onClicked: goToUltimakerPrinter text: catalog.i18nc("@button", "Ultimaker printer") imageSource: UM.Theme.getImage("ultimaker_printer") @@ -56,6 +57,7 @@ Control PrinterCard { + id: thrirdPartyPrinterCard onClicked: goToThirdPartyPrinter text: catalog.i18nc("@button", "Non Ultimaker printer") imageSource: UM.Theme.getImage("third_party_printer") @@ -64,6 +66,7 @@ Control Cura.TertiaryButton { + id: learnMoreButton Layout.alignment: Qt.AlignBottom text: catalog.i18nc("@button", "Learn more about adding printers to Cura") iconSource: UM.Theme.getIcon("LinkExternal") diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml index 9c9154f3b3..a2b08a45b6 100644 --- a/resources/qml/WelcomePages/AddUltimakerPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -80,6 +80,7 @@ Control Cura.TertiaryButton { + id: learnMoreButton Layout.fillWidth: true Layout.alignment: Qt.AlignTop text: catalog.i18nc("@button", "Learn more") @@ -101,6 +102,7 @@ Control Cura.SecondaryButton { + id: addLocalPrinterButton Layout.alignment: Qt.AlignLeft text: catalog.i18nc("@button", "Add local printer") onClicked: goToThirdPartyPrinter() @@ -108,6 +110,7 @@ Control Cura.PrimaryButton { + id: signInButton Layout.alignment: Qt.AlignRight text: catalog.i18nc("@button", "Sign in to Digital Factory") onClicked: function() From 2019d8f3af63ff28a566c2953aca6ca4553f7252 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Fri, 4 Nov 2022 15:11:04 +0100 Subject: [PATCH 080/161] Start MachineSelector refactor by allowing list model to be passed in. CURA-9424 --- plugins/MonitorStage/MonitorMenu.qml | 2 ++ plugins/PrepareStage/PrepareMenu.qml | 2 ++ resources/qml/PrinterSelector/MachineSelector.qml | 5 ++++- resources/qml/PrinterSelector/MachineSelectorList.qml | 1 - 4 files changed, 8 insertions(+), 2 deletions(-) diff --git a/plugins/MonitorStage/MonitorMenu.qml b/plugins/MonitorStage/MonitorMenu.qml index bc95c276e8..ba99c3119e 100644 --- a/plugins/MonitorStage/MonitorMenu.qml +++ b/plugins/MonitorStage/MonitorMenu.qml @@ -19,5 +19,7 @@ Item width: UM.Theme.getSize("machine_selector_widget").width height: parent.height anchors.centerIn: parent + + machineListModel: Cura.MachineListModel {} } } \ No newline at end of file diff --git a/plugins/PrepareStage/PrepareMenu.qml b/plugins/PrepareStage/PrepareMenu.qml index 42c3c8dde6..01e378c2d4 100644 --- a/plugins/PrepareStage/PrepareMenu.qml +++ b/plugins/PrepareStage/PrepareMenu.qml @@ -55,6 +55,8 @@ Item Layout.preferredWidth: parent.machineSelectorWidth Layout.fillWidth: true Layout.fillHeight: true + + machineListModel: Cura.MachineListModel {} } Cura.ConfigurationMenu diff --git a/resources/qml/PrinterSelector/MachineSelector.qml b/resources/qml/PrinterSelector/MachineSelector.qml index 0008529408..ef9112eead 100644 --- a/resources/qml/PrinterSelector/MachineSelector.qml +++ b/resources/qml/PrinterSelector/MachineSelector.qml @@ -16,6 +16,8 @@ Cura.ExpandablePopup property bool isCloudRegistered: Cura.MachineManager.activeMachineHasCloudRegistration property bool isGroup: Cura.MachineManager.activeMachineIsGroup + property alias machineListModel: machineSelectorList.model + readonly property string connectionStatus: { if (isNetworkPrinter) { @@ -156,7 +158,8 @@ Cura.ExpandablePopup } - MouseArea // Connection status tooltip hover area + // Connection status tooltip hover area + MouseArea { id: connectionStatusTooltipHoverArea anchors.fill: parent diff --git a/resources/qml/PrinterSelector/MachineSelectorList.qml b/resources/qml/PrinterSelector/MachineSelectorList.qml index a328ae69d9..0fa19a51ff 100644 --- a/resources/qml/PrinterSelector/MachineSelectorList.qml +++ b/resources/qml/PrinterSelector/MachineSelectorList.qml @@ -10,7 +10,6 @@ import Cura 1.0 as Cura ListView { id: listView - model: Cura.MachineListModel {} section.property: "isOnline" property real contentHeight: childrenRect.height From ccb4d181e632d515a302992d63070dced2f37d91 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Fri, 4 Nov 2022 15:37:57 +0100 Subject: [PATCH 081/161] Allow buttons to be passed in for drop down. The change also remove the "Add Printer" and "Manage Printer" buttons from the monitor page drop down. CURA-9424 --- plugins/PrepareStage/PrepareMenu.qml | 35 ++++++++++++ .../qml/PrinterSelector/MachineSelector.qml | 54 ++++++++----------- 2 files changed, 56 insertions(+), 33 deletions(-) diff --git a/plugins/PrepareStage/PrepareMenu.qml b/plugins/PrepareStage/PrepareMenu.qml index 01e378c2d4..719c598469 100644 --- a/plugins/PrepareStage/PrepareMenu.qml +++ b/plugins/PrepareStage/PrepareMenu.qml @@ -57,6 +57,41 @@ Item Layout.fillHeight: true machineListModel: Cura.MachineListModel {} + + buttons: [ + Cura.SecondaryButton + { + id: addPrinterButton + leftPadding: UM.Theme.getSize("default_margin").width + rightPadding: UM.Theme.getSize("default_margin").width + text: catalog.i18nc("@button", "Add printer") + // The maximum width of the button is half of the total space, minus the padding of the parent, the left + // padding of the component and half the spacing because of the space between buttons. + fixedWidthMode: true + width: parent.width / 2 - leftPadding * 1.5 + onClicked: + { + toggleContent() + Cura.Actions.addMachine.trigger() + } + }, + Cura.SecondaryButton + { + id: managePrinterButton + leftPadding: UM.Theme.getSize("default_margin").width + rightPadding: UM.Theme.getSize("default_margin").width + text: catalog.i18nc("@button", "Manage printers") + fixedWidthMode: true + // The maximum width of the button is half of the total space, minus the padding of the parent, the right + // padding of the component and half the spacing because of the space between buttons. + width: parent.width / 2 - rightPadding * 1.5 + onClicked: + { + toggleContent() + Cura.Actions.configureMachines.trigger() + } + } + ] } Cura.ConfigurationMenu diff --git a/resources/qml/PrinterSelector/MachineSelector.qml b/resources/qml/PrinterSelector/MachineSelector.qml index ef9112eead..a395ea3913 100644 --- a/resources/qml/PrinterSelector/MachineSelector.qml +++ b/resources/qml/PrinterSelector/MachineSelector.qml @@ -18,6 +18,8 @@ Cura.ExpandablePopup property alias machineListModel: machineSelectorList.model + property list buttons + readonly property string connectionStatus: { if (isNetworkPrinter) { @@ -232,39 +234,25 @@ Cura.ExpandablePopup padding: UM.Theme.getSize("default_margin").width spacing: UM.Theme.getSize("default_margin").width - Cura.SecondaryButton - { - id: addPrinterButton - leftPadding: UM.Theme.getSize("default_margin").width - rightPadding: UM.Theme.getSize("default_margin").width - text: catalog.i18nc("@button", "Add printer") - // The maximum width of the button is half of the total space, minus the padding of the parent, the left - // padding of the component and half the spacing because of the space between buttons. - fixedWidthMode: true - width: buttonRow.width / 2 - leftPadding * 1.5 - onClicked: - { - toggleContent() - Cura.Actions.addMachine.trigger() - } - } - - Cura.SecondaryButton - { - id: managePrinterButton - leftPadding: UM.Theme.getSize("default_margin").width - rightPadding: UM.Theme.getSize("default_margin").width - text: catalog.i18nc("@button", "Manage printers") - fixedWidthMode: true - // The maximum width of the button is half of the total space, minus the padding of the parent, the right - // padding of the component and half the spacing because of the space between buttons. - width: buttonRow.width / 2 - rightPadding * 1.5 - onClicked: - { - toggleContent() - Cura.Actions.configureMachines.trigger() - } - } + children: buttons } + + states: [ + State { + name: "noButtons" + when: !buttons || buttons.length == 0 + PropertyChanges + { + target: buttonRow + height: 0 + padding: 0 + } + PropertyChanges + { + target: separator + height: 0 + } + } + ] } } From 1ebf5bb650d1b46ed29d7561630ce1a4113c7c79 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Fri, 4 Nov 2022 16:42:07 +0100 Subject: [PATCH 082/161] Update MachineListModel to optionally take a list of global stack to show in list instead of searching the container registry. Add option not to listen to container change events in MachineListModel. CURA-9424 --- cura/Machines/Models/MachineListModel.py | 36 +++++++++++++++++------- 1 file changed, 26 insertions(+), 10 deletions(-) diff --git a/cura/Machines/Models/MachineListModel.py b/cura/Machines/Models/MachineListModel.py index 24375b72ce..04faa4d1fc 100644 --- a/cura/Machines/Models/MachineListModel.py +++ b/cura/Machines/Models/MachineListModel.py @@ -5,7 +5,7 @@ # online cloud connected printers are represented within this ListModel. Additional information such as the number of # connected printers for each printer type is gathered. -from typing import Optional +from typing import Optional, List from PyQt6.QtCore import Qt, QTimer, QObject, pyqtSlot, pyqtProperty, pyqtSignal @@ -14,7 +14,6 @@ from UM.Settings.ContainerStack import ContainerStack from UM.Settings.Interfaces import ContainerInterface from UM.i18n import i18nCatalog from UM.Util import parseBool -from cura.PrinterOutput.PrinterOutputDevice import ConnectionType from cura.Settings.CuraContainerRegistry import CuraContainerRegistry from cura.Settings.GlobalStack import GlobalStack @@ -30,10 +29,11 @@ class MachineListModel(ListModel): IsAbstractMachineRole = Qt.ItemDataRole.UserRole + 7 ComponentTypeRole = Qt.ItemDataRole.UserRole + 8 - def __init__(self, parent: Optional[QObject] = None) -> None: + def __init__(self, parent: Optional[QObject] = None, machines: List[GlobalStack] = None, listenToChanges: bool = True) -> None: super().__init__(parent) self._show_cloud_printers = False + self._machines = machines self._catalog = i18nCatalog("cura") @@ -51,11 +51,11 @@ class MachineListModel(ListModel): self._change_timer.setSingleShot(True) self._change_timer.timeout.connect(self._update) - # Listen to changes - CuraContainerRegistry.getInstance().containerAdded.connect(self._onContainerChanged) - CuraContainerRegistry.getInstance().containerMetaDataChanged.connect(self._onContainerChanged) - CuraContainerRegistry.getInstance().containerRemoved.connect(self._onContainerChanged) - self._updateDelayed() + if listenToChanges: + CuraContainerRegistry.getInstance().containerAdded.connect(self._onContainerChanged) + CuraContainerRegistry.getInstance().containerMetaDataChanged.connect(self._onContainerChanged) + CuraContainerRegistry.getInstance().containerRemoved.connect(self._onContainerChanged) + self._updateDelayed() showCloudPrintersChanged = pyqtSignal(bool) @@ -79,16 +79,32 @@ class MachineListModel(ListModel): def _updateDelayed(self) -> None: self._change_timer.start() + def _getMachineStacks(self) -> List[ContainerStack]: + if self._machines is not None: + return self._machines + return CuraContainerRegistry.getInstance().findContainerStacks(type="machine") + + def _getAbstractMachineStacks(self) -> List[ContainerStack]: + if self._machines is not None: + return list(filter(lambda machine: parseBool(machine.getMetaDataEntry("is_abstract_machine", False)), self._machines)) + return CuraContainerRegistry.getInstance().findContainerStacks(is_abstract_machine = "True") + + def update(self, machines: List[ContainerStack] = None) -> None: + if machines is not None: + self._machines = machines + + self._update() + def _update(self) -> None: self.clear() from cura.CuraApplication import CuraApplication machines_manager = CuraApplication.getInstance().getMachineManager() - other_machine_stacks = CuraContainerRegistry.getInstance().findContainerStacks(type="machine") + other_machine_stacks = self._getMachineStacks() other_machine_stacks.sort(key = lambda machine: machine.getName().upper()) - abstract_machine_stacks = CuraContainerRegistry.getInstance().findContainerStacks(is_abstract_machine = "True") + abstract_machine_stacks = self._getAbstractMachineStacks() abstract_machine_stacks.sort(key = lambda machine: machine.getName().upper(), reverse = True) for abstract_machine in abstract_machine_stacks: definition_id = abstract_machine.definition.getId() From 088ea0a768f6f211be376ca8b58f552a67aca057 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Fri, 4 Nov 2022 16:44:04 +0100 Subject: [PATCH 083/161] Swap out UpdatableMachinesModel for MachineListModel. This has to be instantiated with the WorkspaceDialog but attaching the listeners throws an error because it is done too early. The listeners are not needed anyway, so they have been disabled. Update WorkspaceDialog.qml to use MachineListModel CURA-9424 --- plugins/3MFReader/WorkspaceDialog.py | 9 ++- plugins/3MFReader/WorkspaceDialog.qml | 86 +++++++++++++-------------- 2 files changed, 47 insertions(+), 48 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.py b/plugins/3MFReader/WorkspaceDialog.py index 0a8f7784b2..9e0c8158cd 100644 --- a/plugins/3MFReader/WorkspaceDialog.py +++ b/plugins/3MFReader/WorkspaceDialog.py @@ -5,6 +5,7 @@ from PyQt6.QtCore import pyqtSignal, QObject, pyqtProperty, QCoreApplication, QU from PyQt6.QtGui import QDesktopServices from typing import List, Optional, Dict, cast +from cura.Machines.Models.MachineListModel import MachineListModel from cura.Settings.GlobalStack import GlobalStack from UM.Application import Application from UM.FlameProfiler import pyqtSlot @@ -14,8 +15,6 @@ from UM.Message import Message from UM.PluginRegistry import PluginRegistry from UM.Settings.ContainerRegistry import ContainerRegistry -from .UpdatableMachinesModel import UpdatableMachinesModel - import os import threading import time @@ -63,7 +62,7 @@ class WorkspaceDialog(QObject): self._extruders = [] self._objects_on_plate = False self._is_printer_group = False - self._updatable_machines_model = UpdatableMachinesModel(self) + self._updatable_machines_model = MachineListModel(self, listenToChanges=False) self._missing_package_metadata: List[Dict[str, str]] = [] self._plugin_registry: PluginRegistry = CuraApplication.getInstance().getPluginRegistry() self._install_missing_package_dialog: Optional[QObject] = None @@ -161,8 +160,8 @@ class WorkspaceDialog(QObject): self.machineNameChanged.emit() @pyqtProperty(QObject, notify = updatableMachinesChanged) - def updatableMachinesModel(self) -> UpdatableMachinesModel: - return cast(UpdatableMachinesModel, self._updatable_machines_model) + def updatableMachinesModel(self) -> MachineListModel: + return cast(MachineListModel, self._updatable_machines_model) def setUpdatableMachines(self, updatable_machines: List[GlobalStack]) -> None: self._updatable_machines_model.update(updatable_machines) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 46eef227dc..64444004d5 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -107,50 +107,50 @@ UM.Dialog comboboxTitle: catalog.i18nc("@action:label", "Open With") comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the machine be resolved?") comboboxVisible: workspaceDialog.visible && manager.updatableMachinesModel.count > 1 - combobox: Cura.ComboBox + combobox: Cura.MachineSelector { - id: machineResolveComboBox - model: manager.updatableMachinesModel - textRole: "displayName" - visible: workspaceDialog.visible && model.count > 1 - currentIndex: machineVisibleChanged() - - onCurrentIndexChanged: - { - if (model.getItem(currentIndex).id == "new" - && model.getItem(currentIndex).type == "default_option") - { - manager.setResolveStrategy("machine", "new") - } - else - { - manager.setResolveStrategy("machine", "override") - manager.setMachineToOverride(model.getItem(currentIndex).id) - } - } - - function machineVisibleChanged() - { - if (!visible) {return} - - currentIndex = 0 - // If the project printer exists in Cura, set it as the default dropdown menu option. - // No need to check object 0, which is the "Create new" option - for (var i = 1; i < model.count; i++) - { - if (model.getItem(i).name == manager.machineName) - { - currentIndex = i - break - } - } - // The project printer does not exist in Cura. If there is at least one printer of the same - // type, select the first one, else set the index to "Create new" - if (currentIndex == 0 && model.count > 1) - { - currentIndex = 1 - } - } + id: machineSelector + headerCornerSide: Cura.RoundedRectangle.Direction.All + width: UM.Theme.getSize("machine_selector_widget").width + height: parent.height + anchors.centerIn: parent + machineListModel: manager.updatableMachinesModel +// onCurrentIndexChanged: +// { +// if (model.getItem(currentIndex).id == "new" +// && model.getItem(currentIndex).type == "default_option") +// { +// manager.setResolveStrategy("machine", "new") +// } +// else +// { +// manager.setResolveStrategy("machine", "override") +// manager.setMachineToOverride(model.getItem(currentIndex).id) +// } +// } +// +// function machineVisibleChanged() +// { +// if (!visible) {return} +// +// currentIndex = 0 +// // If the project printer exists in Cura, set it as the default dropdown menu option. +// // No need to check object 0, which is the "Create new" option +// for (var i = 1; i < model.count; i++) +// { +// if (model.getItem(i).name == manager.machineName) +// { +// currentIndex = i +// break +// } +// } +// // The project printer does not exist in Cura. If there is at least one printer of the same +// // type, select the first one, else set the index to "Create new" +// if (currentIndex == 0 && model.count > 1) +// { +// currentIndex = 1 +// } +// } } } From da304aec907a1b731785f7cac45af7b4f5171e97 Mon Sep 17 00:00:00 2001 From: jspijker Date: Mon, 7 Nov 2022 09:13:43 +0100 Subject: [PATCH 084/161] Revert "Use GCC12 as default for all Linux runners" This reverts commit 6ddc16709b4dcb9b6b2214ad36918dbe1c191b55. --- .github/workflows/conan-package-create.yml | 4 ++-- .github/workflows/cura-installer.yml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/conan-package-create.yml b/.github/workflows/conan-package-create.yml index f76394a4ae..4af608b7ac 100644 --- a/.github/workflows/conan-package-create.yml +++ b/.github/workflows/conan-package-create.yml @@ -108,8 +108,8 @@ jobs: sudo apt upgrade sudo apt install build-essential checkinstall libegl-dev zlib1g-dev libssl-dev ninja-build autoconf libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev xtrans-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev xkb-data libxcb-dri3-dev uuid-dev libxcb-util-dev libxkbcommon-x11-dev pkg-config -y - - name: Install GCC-12 on ubuntu - if: ${{ runner.os == 'Linux' }} + - name: Install GCC-12 on ubuntu-22.04 + if: ${{ startsWith(inputs.runs_on, 'ubuntu-22.04') }} run: | sudo apt install g++-12 gcc-12 -y sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12 diff --git a/.github/workflows/cura-installer.yml b/.github/workflows/cura-installer.yml index 2c2287433f..99d12a5057 100644 --- a/.github/workflows/cura-installer.yml +++ b/.github/workflows/cura-installer.yml @@ -127,7 +127,7 @@ jobs: echo "APPIMAGETOOL_LOCATION=$GITHUB_WORKSPACE/appimagetool" >> $GITHUB_ENV - name: Install GCC-12 on ubuntu-22.04 - if: ${{ runner.os == 'Linux' }} + if: ${{ matrix.os == 'ubuntu-22.04' }} run: | sudo apt install g++-12 gcc-12 -y sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12 From 96597152bcd97abfe810ad506c032c6930846d81 Mon Sep 17 00:00:00 2001 From: jspijker Date: Mon, 7 Nov 2022 09:18:28 +0100 Subject: [PATCH 085/161] Use GCC10 as default for Ubuntu-20.04 --- .github/workflows/conan-package-create.yml | 6 ++++++ .github/workflows/cura-installer.yml | 10 ++++++++-- .github/workflows/unit-test.yml | 9 +++------ 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/.github/workflows/conan-package-create.yml b/.github/workflows/conan-package-create.yml index 4af608b7ac..d72f436154 100644 --- a/.github/workflows/conan-package-create.yml +++ b/.github/workflows/conan-package-create.yml @@ -115,6 +115,12 @@ jobs: sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12 sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-12 12 + - name: Use GCC-10 on ubuntu-20.04 + if: ${{ startsWith(inputs.runs_on, 'ubuntu-20.04') }} + run: | + sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 10 + sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 10 + - name: Create the default Conan profile run: conan profile new default --detect diff --git a/.github/workflows/cura-installer.yml b/.github/workflows/cura-installer.yml index 99d12a5057..371847e81e 100644 --- a/.github/workflows/cura-installer.yml +++ b/.github/workflows/cura-installer.yml @@ -116,7 +116,7 @@ jobs: run: brew install autoconf automake ninja create-dmg - name: Install Linux system requirements - if: ${{ runner.os == 'Linux' }} + if: ${{ startsWith(inputs.runs_on, 'ubuntu-22.04') }} run: | sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y sudo apt update @@ -127,12 +127,18 @@ jobs: echo "APPIMAGETOOL_LOCATION=$GITHUB_WORKSPACE/appimagetool" >> $GITHUB_ENV - name: Install GCC-12 on ubuntu-22.04 - if: ${{ matrix.os == 'ubuntu-22.04' }} + if: ${{ startsWith(inputs.runs_on, 'ubuntu-22.04') }} run: | sudo apt install g++-12 gcc-12 -y sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12 sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-12 12 + - name: Use GCC-10 on ubuntu-20.04 + if: ${{ startsWith(inputs.runs_on, 'ubuntu-20.04') }} + run: | + sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 10 + sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 10 + - name: Create the default Conan profile run: conan profile new default --detect diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 035a2b8ef1..4f7d077432 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -107,17 +107,14 @@ jobs: - name: Install Linux system requirements if: ${{ runner.os == 'Linux' }} run: | - sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y sudo apt update sudo apt upgrade sudo apt install build-essential checkinstall libegl-dev zlib1g-dev libssl-dev ninja-build autoconf libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev xtrans-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev xkb-data libxcb-dri3-dev uuid-dev libxcb-util-dev libxkbcommon-x11-dev pkg-config -y - - name: Install GCC-12 on ubuntu-22.04 - if: ${{ startsWith(inputs.runs_on, 'ubuntu-22.04') }} + - name: Use GCC-10 on ubuntu-20.04 run: | - sudo apt install g++-12 gcc-12 -y - sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12 - sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-12 12 + sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 10 + sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 10 - name: Get Conan configuration run: conan config install https://github.com/Ultimaker/conan-config.git From 81af19dc4328156d10ebcd957d9388ff5a585239 Mon Sep 17 00:00:00 2001 From: jspijker Date: Mon, 7 Nov 2022 09:18:28 +0100 Subject: [PATCH 086/161] Use GCC10 as default for Ubuntu-20.04 --- .github/workflows/conan-package-create.yml | 6 ++++++ .github/workflows/cura-installer.yml | 10 ++++++++-- .github/workflows/unit-test.yml | 9 +++------ 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/.github/workflows/conan-package-create.yml b/.github/workflows/conan-package-create.yml index a3b769fdb3..5f781dfb00 100644 --- a/.github/workflows/conan-package-create.yml +++ b/.github/workflows/conan-package-create.yml @@ -123,6 +123,12 @@ jobs: sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12 sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-12 12 + - name: Use GCC-10 on ubuntu-20.04 + if: ${{ startsWith(inputs.runs_on, 'ubuntu-20.04') }} + run: | + sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 10 + sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 10 + - name: Create the default Conan profile run: conan profile new default --detect diff --git a/.github/workflows/cura-installer.yml b/.github/workflows/cura-installer.yml index 99d12a5057..371847e81e 100644 --- a/.github/workflows/cura-installer.yml +++ b/.github/workflows/cura-installer.yml @@ -116,7 +116,7 @@ jobs: run: brew install autoconf automake ninja create-dmg - name: Install Linux system requirements - if: ${{ runner.os == 'Linux' }} + if: ${{ startsWith(inputs.runs_on, 'ubuntu-22.04') }} run: | sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y sudo apt update @@ -127,12 +127,18 @@ jobs: echo "APPIMAGETOOL_LOCATION=$GITHUB_WORKSPACE/appimagetool" >> $GITHUB_ENV - name: Install GCC-12 on ubuntu-22.04 - if: ${{ matrix.os == 'ubuntu-22.04' }} + if: ${{ startsWith(inputs.runs_on, 'ubuntu-22.04') }} run: | sudo apt install g++-12 gcc-12 -y sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12 sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-12 12 + - name: Use GCC-10 on ubuntu-20.04 + if: ${{ startsWith(inputs.runs_on, 'ubuntu-20.04') }} + run: | + sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 10 + sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 10 + - name: Create the default Conan profile run: conan profile new default --detect diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 035a2b8ef1..4f7d077432 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -107,17 +107,14 @@ jobs: - name: Install Linux system requirements if: ${{ runner.os == 'Linux' }} run: | - sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y sudo apt update sudo apt upgrade sudo apt install build-essential checkinstall libegl-dev zlib1g-dev libssl-dev ninja-build autoconf libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev xtrans-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev xkb-data libxcb-dri3-dev uuid-dev libxcb-util-dev libxkbcommon-x11-dev pkg-config -y - - name: Install GCC-12 on ubuntu-22.04 - if: ${{ startsWith(inputs.runs_on, 'ubuntu-22.04') }} + - name: Use GCC-10 on ubuntu-20.04 run: | - sudo apt install g++-12 gcc-12 -y - sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12 - sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-12 12 + sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 10 + sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 10 - name: Get Conan configuration run: conan config install https://github.com/Ultimaker/conan-config.git From 8969e34021f8e15d1edd7ffd2166766e8beab191 Mon Sep 17 00:00:00 2001 From: jspijker Date: Mon, 7 Nov 2022 17:03:54 +0100 Subject: [PATCH 087/161] update the system packages for all Linux versions --- .github/workflows/cura-installer.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cura-installer.yml b/.github/workflows/cura-installer.yml index 371847e81e..d0f9fb895e 100644 --- a/.github/workflows/cura-installer.yml +++ b/.github/workflows/cura-installer.yml @@ -116,7 +116,7 @@ jobs: run: brew install autoconf automake ninja create-dmg - name: Install Linux system requirements - if: ${{ startsWith(inputs.runs_on, 'ubuntu-22.04') }} + if: ${{ runner.os == 'Linux' }} run: | sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y sudo apt update From 880028835973f3a8a6e3ad0e419c0667ebc135eb Mon Sep 17 00:00:00 2001 From: jspijker Date: Tue, 8 Nov 2022 11:27:07 +0100 Subject: [PATCH 088/161] Runs apt update on all Linux --- .github/workflows/cura-installer.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cura-installer.yml b/.github/workflows/cura-installer.yml index 371847e81e..6b70a7cc31 100644 --- a/.github/workflows/cura-installer.yml +++ b/.github/workflows/cura-installer.yml @@ -116,7 +116,7 @@ jobs: run: brew install autoconf automake ninja create-dmg - name: Install Linux system requirements - if: ${{ startsWith(inputs.runs_on, 'ubuntu-22.04') }} + if: ${{ runner.os == 'Linux' }} run: | sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y sudo apt update From efa302ef19a2decd5eca47bf47dfcc96e680952e Mon Sep 17 00:00:00 2001 From: jspijker Date: Tue, 8 Nov 2022 11:27:51 +0100 Subject: [PATCH 089/161] Removed and extra space --- .github/workflows/cura-installer.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cura-installer.yml b/.github/workflows/cura-installer.yml index 6b70a7cc31..d0f9fb895e 100644 --- a/.github/workflows/cura-installer.yml +++ b/.github/workflows/cura-installer.yml @@ -116,7 +116,7 @@ jobs: run: brew install autoconf automake ninja create-dmg - name: Install Linux system requirements - if: ${{ runner.os == 'Linux' }} + if: ${{ runner.os == 'Linux' }} run: | sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y sudo apt update From 802effd8052bbd54fdaa867911d40a67976a46d0 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Tue, 8 Nov 2022 15:11:59 +0100 Subject: [PATCH 090/161] The engine now operataes on the area _before_ the offset. The frontend should compensate for that: Do _not_ apply the formula, as this now happens implicitly. CURA-9548 --- resources/definitions/ultimaker.def.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/definitions/ultimaker.def.json b/resources/definitions/ultimaker.def.json index d2787afe23..bfdefba55a 100644 --- a/resources/definitions/ultimaker.def.json +++ b/resources/definitions/ultimaker.def.json @@ -70,7 +70,7 @@ }, "meshfix_maximum_deviation": { "value": "machine_nozzle_size / 10" }, "meshfix_maximum_resolution": { "value": "max(speed_wall_0 / 75, 0.5)" }, - "minimum_support_area": { "value": "(2 + support_offset)**2" }, + "minimum_support_area": { "value": "4.0" }, "raft_base_speed": { "value": "raft_speed" }, "raft_base_thickness": { "value": "min(machine_nozzle_size * 0.75, 0.3)" }, "raft_interface_fan_speed": { "value": "(raft_base_fan_speed + raft_surface_fan_speed) / 2" }, From bcb88981b7947af86e603ec26f8920453c11f29c Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Tue, 8 Nov 2022 18:00:44 +0100 Subject: [PATCH 091/161] Add support interface wall count settings. part of CURA-9350 --- resources/definitions/fdmprinter.def.json | 48 +++++++++++++++++++++++ resources/setting_visibility/expert.cfg | 3 ++ 2 files changed, 51 insertions(+) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 08a895c9fa..eab18dd00d 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -4682,6 +4682,54 @@ "settable_per_mesh": false, "settable_per_extruder": true }, + "support_interface_wall_count": + { + "label": "Support Interface Wall Line Count", + "description": "The number of walls with which to surround support interface. Adding a wall can make support print more reliably and can support overhangs better, but increases print time and material used.", + "default_value": 0, + "minimum_value": "0", + "minimum_value_warning": "0", + "maximum_value_warning": "0 if (support_skip_some_zags and support_interface_pattern == 'zigzag') else 3", + "maximum_value": "999999", + "type": "int", + "value": "1 if (support_interface_pattern == 'zigzag') else 0", + "enabled": "support_interface_enable or support_meshes_present", + "limit_to_extruder": "support_interface_extruder_nr", + "settable_per_mesh": false, + "settable_per_extruder": true, + "children": { + "support_roof_wall_count": { + "label": "Support Roof Wall Line Count", + "description": "The number of walls with which to surround support interface roof. Adding a wall can make support print more reliably and can support overhangs better, but increases print time and material used.", + "default_value": 0, + "minimum_value": "0", + "minimum_value_warning": "0", + "maximum_value_warning": "0 if (support_skip_some_zags and support_interface_pattern == 'zigzag') else 3", + "maximum_value": "999999", + "type": "int", + "value": "1 if (support_interface_pattern == 'zigzag') else 0", + "enabled": "support_interface_enable or support_meshes_present", + "limit_to_extruder": "support_interface_extruder_nr", + "settable_per_mesh": false, + "settable_per_extruder": true + }, + "support_bottom_wall_count": { + "label": "Support Bottom Wall Line Count", + "description": "The number of walls with which to surround support interface floor. Adding a wall can make support print more reliably and can support overhangs better, but increases print time and material used.", + "default_value": 0, + "minimum_value": "0", + "minimum_value_warning": "0", + "maximum_value_warning": "0 if (support_skip_some_zags and support_interface_pattern == 'zigzag') else 3", + "maximum_value": "999999", + "type": "int", + "value": "1 if (support_interface_pattern == 'zigzag') else 0", + "enabled": "support_interface_enable or support_meshes_present", + "limit_to_extruder": "support_interface_extruder_nr", + "settable_per_mesh": false, + "settable_per_extruder": true + } + } + }, "zig_zaggify_support": { "label": "Connect Support Lines", diff --git a/resources/setting_visibility/expert.cfg b/resources/setting_visibility/expert.cfg index 66a26d5466..b7aaeeeaa2 100644 --- a/resources/setting_visibility/expert.cfg +++ b/resources/setting_visibility/expert.cfg @@ -277,6 +277,9 @@ minimum_support_area support_interface_enable support_roof_enable support_bottom_enable +support_interface_wall_count +support_roof_wall_count +support_bottom_wall_count support_interface_height support_roof_height support_bottom_height From f0966b1c578b8c56ead7baf0aabd098674b415f5 Mon Sep 17 00:00:00 2001 From: jspijker Date: Tue, 8 Nov 2022 18:17:41 +0100 Subject: [PATCH 092/161] Don't stretch in height and adhere border to UX design Contributes to CURA-8689 --- .../qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml | 3 +++ resources/qml/WelcomePages/PrinterCard.qml | 7 ++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml b/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml index 0e88e0373f..27da8444bf 100644 --- a/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml @@ -50,6 +50,8 @@ Control PrinterCard { id: ultimakerPrinterCard + Layout.alignment: Qt.AlignBottom + borderHeight: thrirdPartyPrinterCard.height onClicked: goToUltimakerPrinter text: catalog.i18nc("@button", "Ultimaker printer") imageSource: UM.Theme.getImage("ultimaker_printer") @@ -58,6 +60,7 @@ Control PrinterCard { id: thrirdPartyPrinterCard + Layout.alignment: Qt.AlignBottom onClicked: goToThirdPartyPrinter text: catalog.i18nc("@button", "Non Ultimaker printer") imageSource: UM.Theme.getImage("third_party_printer") diff --git a/resources/qml/WelcomePages/PrinterCard.qml b/resources/qml/WelcomePages/PrinterCard.qml index 6b0a5bb526..406da371ce 100644 --- a/resources/qml/WelcomePages/PrinterCard.qml +++ b/resources/qml/WelcomePages/PrinterCard.qml @@ -13,6 +13,7 @@ Control id: root property alias text: link_text.text property alias imageSource: image.source + property alias borderHeight: background.height property var onClicked states: @@ -42,7 +43,6 @@ Control onClicked: root.onClicked && root.onClicked() } - topPadding: UM.Theme.getSize("wide_margin").height rightPadding: UM.Theme.getSize("wide_margin").width bottomPadding: UM.Theme.getSize("wide_margin").height leftPadding: UM.Theme.getSize("wide_margin").width @@ -50,7 +50,8 @@ Control background: Rectangle { id: background - anchors.fill: parent + anchors.bottom: column.bottom + height: parent.height border.color: UM.Theme.getColor("primary_button") color: "transparent" border.width: 1 @@ -59,6 +60,7 @@ Control contentItem: ColumnLayout { + id: column spacing: UM.Theme.getSize("wide_margin").height height: childrenRect.height width: childrenRect.width @@ -68,7 +70,6 @@ Control id: image source: imageSource width: 180 * screenScaleFactor - height: 180 * screenScaleFactor sourceSize.width: width sourceSize.height: height } From a3f259d0041afba7150444c882e708fe43392d4b Mon Sep 17 00:00:00 2001 From: jspijker Date: Tue, 8 Nov 2022 18:27:09 +0100 Subject: [PATCH 093/161] Send user to external DF printer page Contributes to CURA-8689 --- resources/qml/WelcomePages/AddUltimakerPrinter.qml | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml index a2b08a45b6..3ebe372550 100644 --- a/resources/qml/WelcomePages/AddUltimakerPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -113,13 +113,7 @@ Control id: signInButton Layout.alignment: Qt.AlignRight text: catalog.i18nc("@button", "Sign in to Digital Factory") - onClicked: function() - { - text = catalog.i18nc("@button", "Waiting for new printers") - busy = true; - enabled = false; - Cura.API.account.login(); - } + onClicked: Qt.openUrlExternally("https://digitalfactory.ultimaker.com/app/printers?add-printer?utm_source=cura&utm_medium=software&utm_campaign=onboarding-add-printer") } } } From e9a1806570322109085ffb2e7b47c0dbf6ad8009 Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 9 Nov 2022 07:28:46 +0100 Subject: [PATCH 094/161] Allign "learn more" left-side Contributes to CURA-8689 --- resources/qml/WelcomePages/AddUltimakerPrinter.qml | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml index 3ebe372550..4fe0e028aa 100644 --- a/resources/qml/WelcomePages/AddUltimakerPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -83,6 +83,7 @@ Control id: learnMoreButton Layout.fillWidth: true Layout.alignment: Qt.AlignTop + leftPadding: 0 text: catalog.i18nc("@button", "Learn more") iconSource: UM.Theme.getIcon("LinkExternal") isIconOnRightSide: true From 2ef0c3d163fbaacb24f28fa66bb57b6d2911e9a5 Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 9 Nov 2022 07:40:44 +0100 Subject: [PATCH 095/161] Don't trigger third-party printer dialog when onCloudPrintersDetected changed That signal is received basically every minute when you're already signed in and it will close the dialog when no new cloud printers are found. Contributes to CURA-8689 --- resources/qml/WelcomePages/AddUltimakerPrinter.qml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml index 4fe0e028aa..a8a1c65af7 100644 --- a/resources/qml/WelcomePages/AddUltimakerPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -22,10 +22,6 @@ Control { base.goToPage("add_cloud_printers") } - else - { - goToThirdPartyPrinter() - } } contentItem: ColumnLayout From f2147bb259a92d18984bef7906e66a7d2281bb47 Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 9 Nov 2022 10:09:22 +0100 Subject: [PATCH 096/161] Enumerate steps Contributes to CURA-8689 --- resources/qml/WelcomePages/AddUltimakerPrinter.qml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml index a8a1c65af7..015ecf0f64 100644 --- a/resources/qml/WelcomePages/AddUltimakerPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -66,9 +66,9 @@ Control wrapMode: Text.WordWrap text: { const steps = [ - catalog.i18nc("@info", "Sign in into Ultimaker Digilal Factory"), - catalog.i18nc("@info", "Follow the procedure to add a new printer"), - catalog.i18nc("@info", "Your new printer will automatically appear in Cura"), + catalog.i18nc("@info", "1. Sign in into Ultimaker Digilal Factory"), + catalog.i18nc("@info", "2. Follow the procedure to add a new printer"), + catalog.i18nc("@info", "3. Your new printer will automatically appear in Cura"), ]; return steps.join("
    "); } From 3d645140f23ae9ad2ca23d36d74fea74177baa32 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Wed, 9 Nov 2022 10:37:49 +0100 Subject: [PATCH 097/161] Fix: Sort updateables on top of others instead of vice-versa. --- plugins/Marketplace/LocalPackageList.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/Marketplace/LocalPackageList.py b/plugins/Marketplace/LocalPackageList.py index 85f835980b..3aa3ab6bfd 100644 --- a/plugins/Marketplace/LocalPackageList.py +++ b/plugins/Marketplace/LocalPackageList.py @@ -44,7 +44,7 @@ class LocalPackageList(PackageList): def _sortSectionsOnUpdate(self) -> None: section_order = dict(zip([i for k, v in self.PACKAGE_CATEGORIES.items() for i in self.PACKAGE_CATEGORIES[k].values()], ["a", "b", "c", "d"])) - self.sort(lambda model: (section_order[model.sectionTitle], model.canUpdate, model.displayName.lower()), key = "package") + self.sort(lambda model: (section_order[model.sectionTitle], not model.canUpdate, model.displayName.lower()), key = "package") def _removePackageModel(self, package_id: str) -> None: """ From adf2c1636083753292dd708560b352d8d0089599 Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 9 Nov 2022 11:13:40 +0100 Subject: [PATCH 098/161] Fixed printer buttons conform UX design Contributes to CURA-8689 --- .../AddUltimakerOrThirdPartyPrinter.qml | 1 - resources/qml/WelcomePages/PrinterCard.qml | 2 - .../cura-light/images/third_party_printer.svg | 62 ++++++++++++++++++- .../cura-light/images/ultimaker_printer.svg | 36 ++++++++++- 4 files changed, 95 insertions(+), 6 deletions(-) diff --git a/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml b/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml index 27da8444bf..c76979fecf 100644 --- a/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerOrThirdPartyPrinter.qml @@ -51,7 +51,6 @@ Control { id: ultimakerPrinterCard Layout.alignment: Qt.AlignBottom - borderHeight: thrirdPartyPrinterCard.height onClicked: goToUltimakerPrinter text: catalog.i18nc("@button", "Ultimaker printer") imageSource: UM.Theme.getImage("ultimaker_printer") diff --git a/resources/qml/WelcomePages/PrinterCard.qml b/resources/qml/WelcomePages/PrinterCard.qml index 406da371ce..8d0cc0dd06 100644 --- a/resources/qml/WelcomePages/PrinterCard.qml +++ b/resources/qml/WelcomePages/PrinterCard.qml @@ -13,7 +13,6 @@ Control id: root property alias text: link_text.text property alias imageSource: image.source - property alias borderHeight: background.height property var onClicked states: @@ -50,7 +49,6 @@ Control background: Rectangle { id: background - anchors.bottom: column.bottom height: parent.height border.color: UM.Theme.getColor("primary_button") color: "transparent" diff --git a/resources/themes/cura-light/images/third_party_printer.svg b/resources/themes/cura-light/images/third_party_printer.svg index d2444d2d28..14e73c2d9e 100644 --- a/resources/themes/cura-light/images/third_party_printer.svg +++ b/resources/themes/cura-light/images/third_party_printer.svg @@ -1,2 +1,60 @@ - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/themes/cura-light/images/ultimaker_printer.svg b/resources/themes/cura-light/images/ultimaker_printer.svg index f2184d4bd1..e65682fe53 100644 --- a/resources/themes/cura-light/images/ultimaker_printer.svg +++ b/resources/themes/cura-light/images/ultimaker_printer.svg @@ -1 +1,35 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 92fb7fd1a6f45563b144d14a590bef694a9fa8ec Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 9 Nov 2022 11:14:28 +0100 Subject: [PATCH 099/161] Show the add printer dialog in the browser Contributes to CURA-8689 --- resources/qml/WelcomePages/AddUltimakerPrinter.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml index 015ecf0f64..f7830fd67a 100644 --- a/resources/qml/WelcomePages/AddUltimakerPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -110,7 +110,7 @@ Control id: signInButton Layout.alignment: Qt.AlignRight text: catalog.i18nc("@button", "Sign in to Digital Factory") - onClicked: Qt.openUrlExternally("https://digitalfactory.ultimaker.com/app/printers?add-printer?utm_source=cura&utm_medium=software&utm_campaign=onboarding-add-printer") + onClicked: Qt.openUrlExternally("https://digitalfactory.ultimaker.com/app/printers?add_printer=true&utm_source=cura&utm_medium=software&utm_campaign=onboarding-add-printer") } } } From 7639b0ba199e110f3c865a5820461c99d7c70f77 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Wed, 9 Nov 2022 13:29:33 +0100 Subject: [PATCH 100/161] Center align UltiMaker onboarding wizzard-text CURA-8689 --- resources/qml/WelcomePages/AddUltimakerPrinter.qml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml index f7830fd67a..58cd44fbb0 100644 --- a/resources/qml/WelcomePages/AddUltimakerPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -35,7 +35,7 @@ Control RowLayout { - Layout.fillWidth: true + Layout.alignment: Qt.AlignHCenter Image { @@ -47,6 +47,7 @@ Control ColumnLayout { Layout.fillHeight: true + Layout.fillWidth: false Layout.alignment: Qt.AlignVCenter spacing: UM.Theme.getSize("default_margin").height From f1c8d3d9e001bfb01ebd13b4bc7abac18a67f50f Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 9 Nov 2022 13:47:32 +0100 Subject: [PATCH 101/161] Show busy indicator Contributes to CURA-8689 --- resources/qml/WelcomePages/AddUltimakerPrinter.qml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml index 58cd44fbb0..acaa938d1f 100644 --- a/resources/qml/WelcomePages/AddUltimakerPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -111,7 +111,14 @@ Control id: signInButton Layout.alignment: Qt.AlignRight text: catalog.i18nc("@button", "Sign in to Digital Factory") - onClicked: Qt.openUrlExternally("https://digitalfactory.ultimaker.com/app/printers?add_printer=true&utm_source=cura&utm_medium=software&utm_campaign=onboarding-add-printer") + onClicked: function() + { + Qt.openUrlExternally("https://digitalfactory.ultimaker.com/app/printers?add_printer=true&utm_source=cura&utm_medium=software&utm_campaign=onboarding-add-printer") + text = catalog.i18nc("@button", "Waiting for new printers") + busy = true; + enabled = false; + Cura.API.account.login(); + } } } } From f73d192d65232acd14d0d0a695aaf0ccc1475356 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Wed, 9 Nov 2022 14:02:43 +0100 Subject: [PATCH 102/161] Use Label for each individual step in add UltiMaker printer CURA-8689 --- .../qml/WelcomePages/AddUltimakerPrinter.qml | 35 ++++++++++++------- 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml index 58cd44fbb0..7325b77ec8 100644 --- a/resources/qml/WelcomePages/AddUltimakerPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -53,25 +53,36 @@ Control UM.Label { - Layout.fillWidth: true + Layout.fillWidth: false Layout.alignment: Qt.AlignTop wrapMode: Text.WordWrap font: UM.Theme.getFont("default_bold") text: catalog.i18nc("@label", "If you are trying to add a new Ultimaker printer to Cura") } - UM.Label + ColumnLayout { - Layout.fillWidth: true - Layout.alignment: Qt.AlignTop - wrapMode: Text.WordWrap - text: { - const steps = [ - catalog.i18nc("@info", "1. Sign in into Ultimaker Digilal Factory"), - catalog.i18nc("@info", "2. Follow the procedure to add a new printer"), - catalog.i18nc("@info", "3. Your new printer will automatically appear in Cura"), - ]; - return steps.join("
    "); + spacing: 0 + + FontMetrics + { + id: fontMetrics + font: UM.Theme.getFont("default") + } + + Repeater { + model: [ + catalog.i18nc("@info", "Sign in into Ultimaker Digilal Factory"), + catalog.i18nc("@info", "Follow the procedure to add a new printer"), + catalog.i18nc("@info", "Your new printer will automatically appear in Cura"), + ] + UM.Label + { + Layout.alignment: Qt.AlignTop + font: fontMetrics.font + Layout.preferredHeight: fontMetrics.height + text: `${index + 1}. ${modelData}` + } } } From dd4e1c66b71f17ef8e5eca8cc42065aff86e2f2c Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Wed, 9 Nov 2022 12:54:38 +0100 Subject: [PATCH 103/161] Make `MachineSelector` more generic by detaching logic from view By detaching the logic from the view custom handlers can be added to selecting printers. This was needed as the MachineSelector in the `WorkspaceDialog` needed to do something different from the `PreparMenu`. CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 50 ++++++------------- plugins/PrepareStage/PrepareMenu.qml | 7 +++ .../qml/PrinterSelector/MachineSelector.qml | 40 ++++++++------- .../PrinterSelector/MachineSelectorList.qml | 4 +- 4 files changed, 45 insertions(+), 56 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 64444004d5..97cd2eed51 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -115,42 +115,20 @@ UM.Dialog height: parent.height anchors.centerIn: parent machineListModel: manager.updatableMachinesModel -// onCurrentIndexChanged: -// { -// if (model.getItem(currentIndex).id == "new" -// && model.getItem(currentIndex).type == "default_option") -// { -// manager.setResolveStrategy("machine", "new") -// } -// else -// { -// manager.setResolveStrategy("machine", "override") -// manager.setMachineToOverride(model.getItem(currentIndex).id) -// } -// } -// -// function machineVisibleChanged() -// { -// if (!visible) {return} -// -// currentIndex = 0 -// // If the project printer exists in Cura, set it as the default dropdown menu option. -// // No need to check object 0, which is the "Create new" option -// for (var i = 1; i < model.count; i++) -// { -// if (model.getItem(i).name == manager.machineName) -// { -// currentIndex = i -// break -// } -// } -// // The project printer does not exist in Cura. If there is at least one printer of the same -// // type, select the first one, else set the index to "Create new" -// if (currentIndex == 0 && model.count > 1) -// { -// currentIndex = 1 -// } -// } + machineName: manager.machineName + + isNetworkPrinter: false + isConnectedCloudPrinter: false + isCloudRegistered: false + isGroup: false + + onSelectPrinter: function(machine) + { + toggleContent(); + manager.setResolveStrategy("machine", "override") + manager.setMachineToOverride(machine.id) + machineSelector.machineName = machine.name + } } } diff --git a/plugins/PrepareStage/PrepareMenu.qml b/plugins/PrepareStage/PrepareMenu.qml index 719c598469..59508dd102 100644 --- a/plugins/PrepareStage/PrepareMenu.qml +++ b/plugins/PrepareStage/PrepareMenu.qml @@ -56,6 +56,13 @@ Item Layout.fillWidth: true Layout.fillHeight: true + machineManager: Cura.MachineManager + onSelectPrinter: function(machine) + { + toggleContent(); + Cura.MachineManager.setActiveMachine(machine.id); + } + machineListModel: Cura.MachineListModel {} buttons: [ diff --git a/resources/qml/PrinterSelector/MachineSelector.qml b/resources/qml/PrinterSelector/MachineSelector.qml index a395ea3913..8bf5e3cf1d 100644 --- a/resources/qml/PrinterSelector/MachineSelector.qml +++ b/resources/qml/PrinterSelector/MachineSelector.qml @@ -11,12 +11,25 @@ Cura.ExpandablePopup { id: machineSelector - property bool isNetworkPrinter: Cura.MachineManager.activeMachineHasNetworkConnection - property bool isConnectedCloudPrinter: Cura.MachineManager.activeMachineHasCloudConnection - property bool isCloudRegistered: Cura.MachineManager.activeMachineHasCloudRegistration - property bool isGroup: Cura.MachineManager.activeMachineIsGroup + property Cura.MachineManager machineManager + property bool isNetworkPrinter: machineManager.activeMachineHasNetworkConnection + property bool isConnectedCloudPrinter: machineManager.activeMachineHasCloudConnection + property bool isCloudRegistered: machineManager.activeMachineHasCloudRegistration + property bool isGroup: machineManager.activeMachineIsGroup + property string machineName: { + if (isNetworkPrinter && machineManager.activeMachineNetworkGroupName != "") + { + return machineManager.activeMachineNetworkGroupName + } + if (machineManager.activeMachine != null) + { + return machineManager.activeMachine.name + } + return "" + } property alias machineListModel: machineSelectorList.model + property alias onSelectPrinter: machineSelectorList.onSelectPrinter property list buttons @@ -46,7 +59,7 @@ Cura.ExpandablePopup { if (Cura.API.account.isLoggedIn) { - if (Cura.MachineManager.activeMachineIsLinkedToCurrentAccount) + if (machineManager.activeMachineIsLinkedToCurrentAccount) { return catalog.i18nc("@status", "The cloud printer is offline. Please check if the printer is turned on and connected to the internet.") } @@ -59,7 +72,8 @@ Cura.ExpandablePopup { return catalog.i18nc("@status", "The cloud connection is currently unavailable. Please sign in to connect to the cloud printer.") } - } else + } + else { return catalog.i18nc("@status", "The cloud connection is currently unavailable. Please check your internet connection.") } @@ -81,18 +95,8 @@ Cura.ExpandablePopup headerItem: Cura.IconWithText { - text: - { - if (isNetworkPrinter && Cura.MachineManager.activeMachineNetworkGroupName != "") - { - return Cura.MachineManager.activeMachineNetworkGroupName - } - if(Cura.MachineManager.activeMachine != null) - { - return Cura.MachineManager.activeMachine.name - } - return "" - } + text: machineName + source: { if (isGroup) diff --git a/resources/qml/PrinterSelector/MachineSelectorList.qml b/resources/qml/PrinterSelector/MachineSelectorList.qml index 0fa19a51ff..1b0264929d 100644 --- a/resources/qml/PrinterSelector/MachineSelectorList.qml +++ b/resources/qml/PrinterSelector/MachineSelectorList.qml @@ -12,6 +12,7 @@ ListView id: listView section.property: "isOnline" property real contentHeight: childrenRect.height + property var onSelectPrinter ScrollBar.vertical: UM.ScrollBar { @@ -42,8 +43,7 @@ ListView listView.model.setShowCloudPrinters(true); break; case "MACHINE": - toggleContent() - Cura.MachineManager.setActiveMachine(model.id) + if (typeof onSelectPrinter === "function") onSelectPrinter(model); break; default: } From c23b019f169a2fd9e85fa8d2b5c040f6abcc5ecc Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Wed, 9 Nov 2022 15:23:00 +0100 Subject: [PATCH 104/161] Couple support roof/floor wall-count to parent setting by default. part of CURA-9350 --- resources/definitions/fdmprinter.def.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index eab18dd00d..5c82d04d61 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -4707,7 +4707,7 @@ "maximum_value_warning": "0 if (support_skip_some_zags and support_interface_pattern == 'zigzag') else 3", "maximum_value": "999999", "type": "int", - "value": "1 if (support_interface_pattern == 'zigzag') else 0", + "value": "support_interface_wall_count", "enabled": "support_interface_enable or support_meshes_present", "limit_to_extruder": "support_interface_extruder_nr", "settable_per_mesh": false, @@ -4722,7 +4722,7 @@ "maximum_value_warning": "0 if (support_skip_some_zags and support_interface_pattern == 'zigzag') else 3", "maximum_value": "999999", "type": "int", - "value": "1 if (support_interface_pattern == 'zigzag') else 0", + "value": "support_interface_wall_count", "enabled": "support_interface_enable or support_meshes_present", "limit_to_extruder": "support_interface_extruder_nr", "settable_per_mesh": false, From 948ac84070f55834c0461cea888935cc31bfbbed Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Wed, 9 Nov 2022 15:49:04 +0100 Subject: [PATCH 105/161] Add create new button CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 97cd2eed51..ae4c44d0a6 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -122,6 +122,27 @@ UM.Dialog isCloudRegistered: false isGroup: false + buttons: [ + Cura.SecondaryButton + { + id: createNewPrinter + text: catalog.i18nc("@button", "Create new") + fixedWidthMode: true + width: parent.width - leftPadding * 1.5 + onClicked: + { + machineSelector.machineName = catalog.i18nc("@button", "Create new") + machineSelector.isNetworkPrinter = false + machineSelector.isConnectedCloudPrinter = false + machineSelector.isCloudRegistered = false + machineSelector.isGroup = false + + toggleContent() + manager.setResolveStrategy("machine", "new") + } + } + ] + onSelectPrinter: function(machine) { toggleContent(); From 95e0021cce61ca8287e1c7565447bd9d1855caac Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Wed, 9 Nov 2022 15:55:48 +0100 Subject: [PATCH 106/161] Align dropdown in open project dialog CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 5 +++-- resources/qml/PrinterSelector/MachineSelector.qml | 7 +++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index ae4c44d0a6..f452ab0252 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -111,9 +111,8 @@ UM.Dialog { id: machineSelector headerCornerSide: Cura.RoundedRectangle.Direction.All - width: UM.Theme.getSize("machine_selector_widget").width + width: parent.width height: parent.height - anchors.centerIn: parent machineListModel: manager.updatableMachinesModel machineName: manager.machineName @@ -122,6 +121,8 @@ UM.Dialog isCloudRegistered: false isGroup: false + minDropDownWidth: machineSelector.width + buttons: [ Cura.SecondaryButton { diff --git a/resources/qml/PrinterSelector/MachineSelector.qml b/resources/qml/PrinterSelector/MachineSelector.qml index 8bf5e3cf1d..b8bacc8f36 100644 --- a/resources/qml/PrinterSelector/MachineSelector.qml +++ b/resources/qml/PrinterSelector/MachineSelector.qml @@ -198,11 +198,14 @@ Cura.ExpandablePopup } } + property int minDropDownWidth: UM.Theme.getSize("machine_selector_widget_content").width + property int maxDropDownHeight: UM.Theme.getSize("machine_selector_widget_content").height + contentItem: Item { id: popup - implicitWidth: Math.max(machineSelector.width, UM.Theme.getSize("machine_selector_widget_content").width) - implicitHeight: Math.min(machineSelectorList.contentHeight + separator.height + buttonRow.height, UM.Theme.getSize("machine_selector_widget_content").height) //Maximum height is the theme entry. + implicitWidth: Math.max(machineSelector.width, minDropDownWidth) + implicitHeight: Math.min(machineSelectorList.contentHeight + separator.height + buttonRow.height, maxDropDownHeight) //Maximum height is the theme entry. MachineSelectorList { id: machineSelectorList From 8ee5bc2bd46804aaae92df87d965007efd1f08fa Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Wed, 9 Nov 2022 16:04:39 +0100 Subject: [PATCH 107/161] Remove column with single child Just rendering the single child produces the same result CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 397 +++++++++++++------------- 1 file changed, 196 insertions(+), 201 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index f452ab0252..23f9231230 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -70,240 +70,235 @@ UM.Dialog Column { id: contentColumn - width: parent.width - scrollbar.width + width: parent.width - scrollbar.width - UM.Theme.getSize("default_margin").width height: childrenRect.height - Column + spacing: UM.Theme.getSize("default_margin").height + leftPadding: UM.Theme.getSize("default_margin").width + rightPadding: UM.Theme.getSize("default_margin").width + + WorkspaceSection { - width: parent.width - UM.Theme.getSize("default_margin").width - height: childrenRect.height - spacing: UM.Theme.getSize("default_margin").height - leftPadding: UM.Theme.getSize("default_margin").width - rightPadding: UM.Theme.getSize("default_margin").width - - WorkspaceSection + id: printerSection + title: catalog.i18nc("@action:label", "Printer settings") + iconSource: UM.Theme.getIcon("Printer") + content: Column { - id: printerSection - title: catalog.i18nc("@action:label", "Printer settings") - iconSource: UM.Theme.getIcon("Printer") - content: Column + spacing: UM.Theme.getSize("default_margin").height + leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width + + WorkspaceRow { - spacing: UM.Theme.getSize("default_margin").height - leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width - - WorkspaceRow - { - leftLabelText: catalog.i18nc("@action:label", "Type") - rightLabelText: manager.machineType - } - - WorkspaceRow - { - leftLabelText: catalog.i18nc("@action:label", manager.isPrinterGroup ? "Printer Group" : "Printer Name") - rightLabelText: manager.machineName - } + leftLabelText: catalog.i18nc("@action:label", "Type") + rightLabelText: manager.machineType } - comboboxTitle: catalog.i18nc("@action:label", "Open With") - comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the machine be resolved?") - comboboxVisible: workspaceDialog.visible && manager.updatableMachinesModel.count > 1 - combobox: Cura.MachineSelector + WorkspaceRow { - id: machineSelector - headerCornerSide: Cura.RoundedRectangle.Direction.All - width: parent.width - height: parent.height - machineListModel: manager.updatableMachinesModel - machineName: manager.machineName - - isNetworkPrinter: false - isConnectedCloudPrinter: false - isCloudRegistered: false - isGroup: false - - minDropDownWidth: machineSelector.width - - buttons: [ - Cura.SecondaryButton - { - id: createNewPrinter - text: catalog.i18nc("@button", "Create new") - fixedWidthMode: true - width: parent.width - leftPadding * 1.5 - onClicked: - { - machineSelector.machineName = catalog.i18nc("@button", "Create new") - machineSelector.isNetworkPrinter = false - machineSelector.isConnectedCloudPrinter = false - machineSelector.isCloudRegistered = false - machineSelector.isGroup = false - - toggleContent() - manager.setResolveStrategy("machine", "new") - } - } - ] - - onSelectPrinter: function(machine) - { - toggleContent(); - manager.setResolveStrategy("machine", "override") - manager.setMachineToOverride(machine.id) - machineSelector.machineName = machine.name - } + leftLabelText: catalog.i18nc("@action:label", manager.isPrinterGroup ? "Printer Group" : "Printer Name") + rightLabelText: manager.machineName } } - WorkspaceSection + comboboxTitle: catalog.i18nc("@action:label", "Open With") + comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the machine be resolved?") + comboboxVisible: workspaceDialog.visible && manager.updatableMachinesModel.count > 1 + combobox: Cura.MachineSelector { - id: profileSection - title: catalog.i18nc("@action:label", "Profile settings") - iconSource: UM.Theme.getIcon("Sliders") - content: Column - { - id: profileSettingsValuesTable - spacing: UM.Theme.getSize("default_margin").height - leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width + id: machineSelector + headerCornerSide: Cura.RoundedRectangle.Direction.All + width: parent.width + height: parent.height + machineListModel: manager.updatableMachinesModel + machineName: manager.machineName - WorkspaceRow + isNetworkPrinter: false + isConnectedCloudPrinter: false + isCloudRegistered: false + isGroup: false + + minDropDownWidth: machineSelector.width + + buttons: [ + Cura.SecondaryButton + { + id: createNewPrinter + text: catalog.i18nc("@button", "Create new") + fixedWidthMode: true + width: parent.width - leftPadding * 1.5 + onClicked: + { + machineSelector.machineName = catalog.i18nc("@button", "Create new") + machineSelector.isNetworkPrinter = false + machineSelector.isConnectedCloudPrinter = false + machineSelector.isCloudRegistered = false + machineSelector.isGroup = false + + toggleContent() + manager.setResolveStrategy("machine", "new") + } + } + ] + + onSelectPrinter: function(machine) + { + toggleContent(); + manager.setResolveStrategy("machine", "override") + manager.setMachineToOverride(machine.id) + machineSelector.machineName = machine.name + } + } + } + + WorkspaceSection + { + id: profileSection + title: catalog.i18nc("@action:label", "Profile settings") + iconSource: UM.Theme.getIcon("Sliders") + content: Column + { + id: profileSettingsValuesTable + spacing: UM.Theme.getSize("default_margin").height + leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width + + WorkspaceRow + { + leftLabelText: catalog.i18nc("@action:label", "Name") + rightLabelText: manager.qualityName + } + + WorkspaceRow + { + leftLabelText: catalog.i18nc("@action:label", "Intent") + rightLabelText: manager.intentName + } + + WorkspaceRow + { + leftLabelText: catalog.i18nc("@action:label", "Not in profile") + rightLabelText: catalog.i18ncp("@action:label", "%1 override", "%1 overrides", manager.numUserSettings).arg(manager.numUserSettings) + visible: manager.numUserSettings != 0 + } + + WorkspaceRow + { + leftLabelText: catalog.i18nc("@action:label", "Derivative from") + rightLabelText: catalog.i18ncp("@action:label", "%1, %2 override", "%1, %2 overrides", manager.numSettingsOverridenByQualityChanges).arg(manager.qualityType).arg(manager.numSettingsOverridenByQualityChanges) + visible: manager.numSettingsOverridenByQualityChanges != 0 + } + } + + comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the profile be resolved?") + comboboxVisible: manager.qualityChangesConflict + combobox: Cura.ComboBox + { + id: qualityChangesResolveComboBox + model: resolveStrategiesModel + textRole: "label" + visible: manager.qualityChangesConflict + + // This is a hack. This will trigger onCurrentIndexChanged and set the index when this component in loaded + currentIndex: + { + currentIndex = 0 + } + + onCurrentIndexChanged: + { + manager.setResolveStrategy("quality_changes", resolveStrategiesModel.get(currentIndex).key) + } + } + } + + WorkspaceSection + { + id: materialSection + title: catalog.i18nc("@action:label", "Material settings") + iconSource: UM.Theme.getIcon("Spool") + content: Column + { + spacing: UM.Theme.getSize("default_margin").height + leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width + + Repeater + { + model: manager.materialLabels + delegate: WorkspaceRow { leftLabelText: catalog.i18nc("@action:label", "Name") - rightLabelText: manager.qualityName - } - - WorkspaceRow - { - leftLabelText: catalog.i18nc("@action:label", "Intent") - rightLabelText: manager.intentName - } - - WorkspaceRow - { - leftLabelText: catalog.i18nc("@action:label", "Not in profile") - rightLabelText: catalog.i18ncp("@action:label", "%1 override", "%1 overrides", manager.numUserSettings).arg(manager.numUserSettings) - visible: manager.numUserSettings != 0 - } - - WorkspaceRow - { - leftLabelText: catalog.i18nc("@action:label", "Derivative from") - rightLabelText: catalog.i18ncp("@action:label", "%1, %2 override", "%1, %2 overrides", manager.numSettingsOverridenByQualityChanges).arg(manager.qualityType).arg(manager.numSettingsOverridenByQualityChanges) - visible: manager.numSettingsOverridenByQualityChanges != 0 - } - } - - comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the profile be resolved?") - comboboxVisible: manager.qualityChangesConflict - combobox: Cura.ComboBox - { - id: qualityChangesResolveComboBox - model: resolveStrategiesModel - textRole: "label" - visible: manager.qualityChangesConflict - - // This is a hack. This will trigger onCurrentIndexChanged and set the index when this component in loaded - currentIndex: - { - currentIndex = 0 - } - - onCurrentIndexChanged: - { - manager.setResolveStrategy("quality_changes", resolveStrategiesModel.get(currentIndex).key) + rightLabelText: modelData } } } - WorkspaceSection - { - id: materialSection - title: catalog.i18nc("@action:label", "Material settings") - iconSource: UM.Theme.getIcon("Spool") - content: Column - { - spacing: UM.Theme.getSize("default_margin").height - leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width + comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the material be resolved?") + comboboxVisible: manager.materialConflict - Repeater - { - model: manager.materialLabels - delegate: WorkspaceRow - { - leftLabelText: catalog.i18nc("@action:label", "Name") - rightLabelText: modelData - } - } + combobox: Cura.ComboBox + { + id: materialResolveComboBox + model: resolveStrategiesModel + textRole: "label" + visible: manager.materialConflict + + // This is a hack. This will trigger onCurrentIndexChanged and set the index when this component in loaded + currentIndex: + { + currentIndex = 0 } - comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the material be resolved?") - comboboxVisible: manager.materialConflict - - combobox: Cura.ComboBox + onCurrentIndexChanged: { - id: materialResolveComboBox - model: resolveStrategiesModel - textRole: "label" - visible: manager.materialConflict - - // This is a hack. This will trigger onCurrentIndexChanged and set the index when this component in loaded - currentIndex: - { - currentIndex = 0 - } - - onCurrentIndexChanged: - { - manager.setResolveStrategy("material", resolveStrategiesModel.get(currentIndex).key) - } + manager.setResolveStrategy("material", resolveStrategiesModel.get(currentIndex).key) } } + } - WorkspaceSection + WorkspaceSection + { + id: visibilitySection + title: catalog.i18nc("@action:label", "Setting visibility") + iconSource: UM.Theme.getIcon("Eye") + content: Column { - id: visibilitySection - title: catalog.i18nc("@action:label", "Setting visibility") - iconSource: UM.Theme.getIcon("Eye") - content: Column + spacing: UM.Theme.getSize("default_margin").height + leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width + bottomPadding: UM.Theme.getSize("narrow_margin").height + + WorkspaceRow { - spacing: UM.Theme.getSize("default_margin").height - leftPadding: UM.Theme.getSize("medium_button_icon").width + UM.Theme.getSize("default_margin").width - bottomPadding: UM.Theme.getSize("narrow_margin").height + leftLabelText: catalog.i18nc("@action:label", "Mode") + rightLabelText: manager.activeMode + } - WorkspaceRow - { - leftLabelText: catalog.i18nc("@action:label", "Mode") - rightLabelText: manager.activeMode - } - - WorkspaceRow - { - leftLabelText: catalog.i18nc("@action:label", "%1 out of %2" ).arg(manager.numVisibleSettings).arg(manager.totalNumberOfSettings) - rightLabelText: manager.activeMode - visible: manager.hasVisibleSettingsField - } + WorkspaceRow + { + leftLabelText: catalog.i18nc("@action:label", "%1 out of %2" ).arg(manager.numVisibleSettings).arg(manager.totalNumberOfSettings) + rightLabelText: manager.activeMode + visible: manager.hasVisibleSettingsField } } + } - Row + Row + { + id: clearBuildPlateWarning + width: parent.width + height: childrenRect.height + spacing: UM.Theme.getSize("default_margin").width + visible: manager.hasObjectsOnPlate + + UM.ColorImage { - id: clearBuildPlateWarning - width: parent.width - height: childrenRect.height - spacing: UM.Theme.getSize("default_margin").width - visible: manager.hasObjectsOnPlate - - UM.ColorImage - { - width: warningLabel.height - height: width - source: UM.Theme.getIcon("Information") - color: UM.Theme.getColor("text") - } - UM.Label - { - id: warningLabel - text: catalog.i18nc("@action:warning", "Loading a project will clear all models on the build plate.") - } + width: warningLabel.height + height: width + source: UM.Theme.getIcon("Information") + color: UM.Theme.getColor("text") + } + UM.Label + { + id: warningLabel + text: catalog.i18nc("@action:warning", "Loading a project will clear all models on the build plate.") } } } From 0222c79f59f6f2a568ceb86405b06b837a9c647e Mon Sep 17 00:00:00 2001 From: Rijk van Manen Date: Wed, 9 Nov 2022 16:26:56 +0100 Subject: [PATCH 108/161] increase initial layer skin flow For large prints the initial layer skin flow turns out to be too low. PP-275 --- resources/definitions/ultimaker.def.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/definitions/ultimaker.def.json b/resources/definitions/ultimaker.def.json index d2787afe23..283e17cc5d 100644 --- a/resources/definitions/ultimaker.def.json +++ b/resources/definitions/ultimaker.def.json @@ -93,7 +93,7 @@ "skin_angles": { "value": "[] if infill_pattern not in ['cross', 'cross_3d'] else [20, 110]" }, "skin_edge_support_thickness": { "value": "4 * layer_height if infill_sparse_density < 30 else 0" }, "skin_material_flow": { "value": "0.95 * material_flow" }, - "skin_material_flow_layer_0": { "value": "0.80 * material_flow_layer_0" }, + "skin_material_flow_layer_0": { "value": "0.85 * material_flow_layer_0" }, "skin_monotonic" : { "value": "roofing_layer_count == 0" }, "speed_equalize_flow_width_factor": { "value": "110.0" }, "speed_layer_0": { "value": "min(30, layer_height / layer_height_0 * speed_wall_0)" }, From 79a7b1e0649b71de2dd5d41b97ad9ec7ce42541e Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Wed, 9 Nov 2022 16:56:07 +0100 Subject: [PATCH 109/161] Round width to prevent drawing text on non-integer offsets Contribution from @fieldOfView CURA-9424 --- plugins/PrepareStage/PrepareMenu.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/PrepareStage/PrepareMenu.qml b/plugins/PrepareStage/PrepareMenu.qml index 59508dd102..3f24d619ac 100644 --- a/plugins/PrepareStage/PrepareMenu.qml +++ b/plugins/PrepareStage/PrepareMenu.qml @@ -75,7 +75,7 @@ Item // The maximum width of the button is half of the total space, minus the padding of the parent, the left // padding of the component and half the spacing because of the space between buttons. fixedWidthMode: true - width: parent.width / 2 - leftPadding * 1.5 + width: Math.round(parent.width / 2 - leftPadding * 1.5) onClicked: { toggleContent() From 06a28861396a46800916c9eeb45b05e45be15661 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Wed, 9 Nov 2022 17:11:31 +0100 Subject: [PATCH 110/161] Clean up section property logic CURA-9424 --- cura/Machines/Models/MachineListModel.py | 41 +++++++++++-------- .../PrinterSelector/MachineSelectorList.qml | 12 +++++- 2 files changed, 33 insertions(+), 20 deletions(-) diff --git a/cura/Machines/Models/MachineListModel.py b/cura/Machines/Models/MachineListModel.py index 04faa4d1fc..cb7c3b5998 100644 --- a/cura/Machines/Models/MachineListModel.py +++ b/cura/Machines/Models/MachineListModel.py @@ -130,17 +130,21 @@ class MachineListModel(ListModel): if len(abstract_machine_stacks) > 0: if self._show_cloud_printers: - self.appendItem({"componentType": "HIDE_BUTTON", - "isOnline": True, - "isAbstractMachine": False, - "machineCount": 0 - }) + self.appendItem({ + "componentType": "HIDE_BUTTON", + "isOnline": True, + "isAbstractMachine": False, + "machineCount": 0, + "catergory": "connected", + }) else: - self.appendItem({"componentType": "SHOW_BUTTON", - "isOnline": True, - "isAbstractMachine": False, - "machineCount": 0 - }) + self.appendItem({ + "componentType": "SHOW_BUTTON", + "isOnline": True, + "isAbstractMachine": False, + "machineCount": 0, + "catergory": "connected", + }) for stack in other_machine_stacks: self.addItem(stack, False) @@ -150,11 +154,12 @@ class MachineListModel(ListModel): return self.appendItem({ - "componentType": "MACHINE", - "name": container_stack.getName(), - "id": container_stack.getId(), - "metadata": container_stack.getMetaData().copy(), - "isOnline": is_online, - "isAbstractMachine": parseBool(container_stack.getMetaDataEntry("is_abstract_machine", False)), - "machineCount": machine_count, - }) + "componentType": "MACHINE", + "name": container_stack.getName(), + "id": container_stack.getId(), + "metadata": container_stack.getMetaData().copy(), + "isOnline": is_online, + "isAbstractMachine": parseBool(container_stack.getMetaDataEntry("is_abstract_machine", False)), + "machineCount": machine_count, + "catergory": "connected" if is_online else "other", + }) diff --git a/resources/qml/PrinterSelector/MachineSelectorList.qml b/resources/qml/PrinterSelector/MachineSelectorList.qml index 1b0264929d..b3a65da7da 100644 --- a/resources/qml/PrinterSelector/MachineSelectorList.qml +++ b/resources/qml/PrinterSelector/MachineSelectorList.qml @@ -10,7 +10,7 @@ import Cura 1.0 as Cura ListView { id: listView - section.property: "isOnline" + section.property: "category" property real contentHeight: childrenRect.height property var onSelectPrinter @@ -21,7 +21,15 @@ ListView section.delegate: UM.Label { - text: section == "true" ? catalog.i18nc("@label", "Connected printers") : catalog.i18nc("@label", "Other printers") + text: { + switch (section) + { + case "connected": + return catalog.i18nc("@label", "Connected printers"); + case "other": + return catalog.i18nc("@label", "Other printers"); + } + } height: UM.Theme.getSize("action_button").height width: parent.width - scrollBar.width leftPadding: UM.Theme.getSize("default_margin").width From 27267deb22dd02b7d5ce93f79f7c65d9dd61938c Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Wed, 9 Nov 2022 17:16:47 +0100 Subject: [PATCH 111/161] Fix clicking `PrepareMenu` CURA-9424 --- plugins/PrepareStage/PrepareMenu.qml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/PrepareStage/PrepareMenu.qml b/plugins/PrepareStage/PrepareMenu.qml index 3f24d619ac..12db91635b 100644 --- a/plugins/PrepareStage/PrepareMenu.qml +++ b/plugins/PrepareStage/PrepareMenu.qml @@ -78,7 +78,7 @@ Item width: Math.round(parent.width / 2 - leftPadding * 1.5) onClicked: { - toggleContent() + machineSelection.toggleContent() Cura.Actions.addMachine.trigger() } }, @@ -94,7 +94,7 @@ Item width: parent.width / 2 - rightPadding * 1.5 onClicked: { - toggleContent() + machineSelection.toggleContent() Cura.Actions.configureMachines.trigger() } } From 65f7769e58f63bf14a0fdf5bfd51b7141c543575 Mon Sep 17 00:00:00 2001 From: jspijker Date: Wed, 9 Nov 2022 20:15:23 +0100 Subject: [PATCH 112/161] Fix internal data plugins deployment The conan package from the internal package wasn't deployed, added the logic for the second list item --- conanfile.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/conanfile.py b/conanfile.py index 2dc934e253..30ec31f82f 100644 --- a/conanfile.py +++ b/conanfile.py @@ -357,6 +357,8 @@ class CuraConan(ConanFile): dst = self._share_dir.joinpath("cura", "resources", "materials"), keep_path = False) self.copy_deps("*", root_package = "cura_private_data", src = self.deps_cpp_info["cura_private_data"].resdirs[0], dst = self._share_dir.joinpath("cura", "resources"), keep_path = True) + self.copy_deps("*", root_package = "cura_private_data", src = self.deps_cpp_info["cura_private_data"].resdirs[1], + dst = self._share_dir.joinpath("cura", "plugins"), keep_path = True) # Copy resources of Uranium (keep folder structure) self.copy_deps("*", root_package = "uranium", src = self.deps_cpp_info["uranium"].resdirs[0], From 0c79ec738e9eb95cd1de304dcea24ccba332bf36 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Wed, 9 Nov 2022 23:05:06 +0100 Subject: [PATCH 113/161] Fix show/hide button in WorkSpaceDialog printer selector CURA-9424 --- cura/Machines/Models/MachineListModel.py | 29 ++++++++++++------------ plugins/3MFReader/WorkspaceDialog.py | 4 ++-- 2 files changed, 16 insertions(+), 17 deletions(-) diff --git a/cura/Machines/Models/MachineListModel.py b/cura/Machines/Models/MachineListModel.py index cb7c3b5998..82b889ac4b 100644 --- a/cura/Machines/Models/MachineListModel.py +++ b/cura/Machines/Models/MachineListModel.py @@ -29,11 +29,11 @@ class MachineListModel(ListModel): IsAbstractMachineRole = Qt.ItemDataRole.UserRole + 7 ComponentTypeRole = Qt.ItemDataRole.UserRole + 8 - def __init__(self, parent: Optional[QObject] = None, machines: List[GlobalStack] = None, listenToChanges: bool = True) -> None: + def __init__(self, parent: Optional[QObject] = None, machines_filter: Optional[List[GlobalStack]] = None) -> None: super().__init__(parent) self._show_cloud_printers = False - self._machines = machines + self._machines_filter = machines_filter self._catalog = i18nCatalog("cura") @@ -51,11 +51,10 @@ class MachineListModel(ListModel): self._change_timer.setSingleShot(True) self._change_timer.timeout.connect(self._update) - if listenToChanges: - CuraContainerRegistry.getInstance().containerAdded.connect(self._onContainerChanged) - CuraContainerRegistry.getInstance().containerMetaDataChanged.connect(self._onContainerChanged) - CuraContainerRegistry.getInstance().containerRemoved.connect(self._onContainerChanged) - self._updateDelayed() + CuraContainerRegistry.getInstance().containerAdded.connect(self._onContainerChanged) + CuraContainerRegistry.getInstance().containerMetaDataChanged.connect(self._onContainerChanged) + CuraContainerRegistry.getInstance().containerRemoved.connect(self._onContainerChanged) + self._updateDelayed() showCloudPrintersChanged = pyqtSignal(bool) @@ -80,19 +79,13 @@ class MachineListModel(ListModel): self._change_timer.start() def _getMachineStacks(self) -> List[ContainerStack]: - if self._machines is not None: - return self._machines return CuraContainerRegistry.getInstance().findContainerStacks(type="machine") def _getAbstractMachineStacks(self) -> List[ContainerStack]: - if self._machines is not None: - return list(filter(lambda machine: parseBool(machine.getMetaDataEntry("is_abstract_machine", False)), self._machines)) return CuraContainerRegistry.getInstance().findContainerStacks(is_abstract_machine = "True") - def update(self, machines: List[ContainerStack] = None) -> None: - if machines is not None: - self._machines = machines - + def set_machines_filter(self, machines_filter: Optional[List[GlobalStack]]) -> None: + self._machines_filter = machines_filter self._update() def _update(self) -> None: @@ -106,6 +99,12 @@ class MachineListModel(ListModel): abstract_machine_stacks = self._getAbstractMachineStacks() abstract_machine_stacks.sort(key = lambda machine: machine.getName().upper(), reverse = True) + + if self._machines_filter is not None: + filter_ids = [machine_filter.id for machine_filter in self._machines_filter] + other_machine_stacks = [machine for machine in other_machine_stacks if machine.id in filter_ids] + abstract_machine_stacks = [machine for machine in abstract_machine_stacks if machine.id in filter_ids] + for abstract_machine in abstract_machine_stacks: definition_id = abstract_machine.definition.getId() online_machine_stacks = machines_manager.getMachinesWithDefinition(definition_id, online_only = True) diff --git a/plugins/3MFReader/WorkspaceDialog.py b/plugins/3MFReader/WorkspaceDialog.py index 9e0c8158cd..da7b8737e3 100644 --- a/plugins/3MFReader/WorkspaceDialog.py +++ b/plugins/3MFReader/WorkspaceDialog.py @@ -62,7 +62,7 @@ class WorkspaceDialog(QObject): self._extruders = [] self._objects_on_plate = False self._is_printer_group = False - self._updatable_machines_model = MachineListModel(self, listenToChanges=False) + self._updatable_machines_model = MachineListModel(self) self._missing_package_metadata: List[Dict[str, str]] = [] self._plugin_registry: PluginRegistry = CuraApplication.getInstance().getPluginRegistry() self._install_missing_package_dialog: Optional[QObject] = None @@ -164,7 +164,7 @@ class WorkspaceDialog(QObject): return cast(MachineListModel, self._updatable_machines_model) def setUpdatableMachines(self, updatable_machines: List[GlobalStack]) -> None: - self._updatable_machines_model.update(updatable_machines) + self._updatable_machines_model.set_machines_filter(updatable_machines) self.updatableMachinesChanged.emit() @pyqtProperty(str, notify=qualityTypeChanged) From 4830479b63e00d71cf897743d8514fd46b0a62cc Mon Sep 17 00:00:00 2001 From: jspijker Date: Thu, 10 Nov 2022 11:34:46 +0100 Subject: [PATCH 114/161] Also map plugins folder in conandata.yml --- conandata.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/conandata.yml b/conandata.yml index 3728e59f67..03aa4aac95 100644 --- a/conandata.yml +++ b/conandata.yml @@ -40,6 +40,11 @@ src: "resources" dst: "share/cura/resources" internal: true + cura_private_data_plugins: + package: "cura_private_data" + src: "plugins" + dst: "share/cura/plugins" + internal: true uranium_plugins: package: "uranium" src: "plugins" From c59f5a5c00f43687b8d477b827758d1f0a2168e1 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Thu, 10 Nov 2022 14:48:38 +0100 Subject: [PATCH 115/161] Add tooltip in WorkspaceDialog over the printer selection drop down. CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 4 +- plugins/3MFReader/WorkspaceSection.qml | 98 +++++++++++++++++--------- 2 files changed, 64 insertions(+), 38 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 23f9231230..7417a58126 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -101,7 +101,7 @@ UM.Dialog } comboboxTitle: catalog.i18nc("@action:label", "Open With") - comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the machine be resolved?") + comboboxTooltipText: catalog.i18nc("@info:tooltip", "Printer settings will be updated to match the settings saved with the project.") comboboxVisible: workspaceDialog.visible && manager.updatableMachinesModel.count > 1 combobox: Cura.MachineSelector { @@ -188,7 +188,6 @@ UM.Dialog } } - comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the profile be resolved?") comboboxVisible: manager.qualityChangesConflict combobox: Cura.ComboBox { @@ -231,7 +230,6 @@ UM.Dialog } } - comboboxTooltipText: catalog.i18nc("@info:tooltip", "How should the conflict in the material be resolved?") comboboxVisible: manager.materialConflict combobox: Cura.ComboBox diff --git a/plugins/3MFReader/WorkspaceSection.qml b/plugins/3MFReader/WorkspaceSection.qml index 211d8776f3..b11cc04cd7 100644 --- a/plugins/3MFReader/WorkspaceSection.qml +++ b/plugins/3MFReader/WorkspaceSection.qml @@ -23,41 +23,6 @@ Item height: childrenRect.height anchors.leftMargin: UM.Theme.getSize("default_margin").width - UM.TooltipArea - { - id: comboboxTooltip - width: (parent.width / 2.5) | 0 - height: visible ? UM.Theme.getSize("default_margin").height : 0 - anchors.top: parent.top - anchors.right: parent.right - anchors.rightMargin: UM.Theme.getSize("default_margin").width - - text: comboboxTooltipText - visible: comboboxVisible - - UM.Label - { - id: comboboxLabel - anchors.top: parent.top - anchors.left: parent.left - anchors.topMargin: UM.Theme.getSize("default_margin").height - visible: comboboxVisible && text != "" - text: "" - font: UM.Theme.getFont("default_bold") - } - - Loader - { - id: comboboxLoader - width: parent.width - height: UM.Theme.getSize("button").height - anchors.top: comboboxLabel.bottom - anchors.topMargin: UM.Theme.getSize("default_margin").height - anchors.left: parent.left - sourceComponent: combobox - } - } - Row { id: sectionTitleRow @@ -82,6 +47,69 @@ Item } } + Item + { + id: comboboxTooltip + width: (parent.width / 2.5) | 0 + height: visible ? UM.Theme.getSize("default_margin").height : 0 + anchors.top: parent.top + anchors.right: parent.right + anchors.rightMargin: UM.Theme.getSize("default_margin").width + visible: comboboxVisible + + UM.Label + { + id: comboboxLabel + anchors.top: parent.top + anchors.left: parent.left + anchors.topMargin: UM.Theme.getSize("default_margin").height + visible: comboboxVisible && text != "" + text: "" + font: UM.Theme.getFont("default_bold") + } + + Loader + { + id: comboboxLoader + width: parent.width + height: UM.Theme.getSize("button").height + anchors.top: comboboxLabel.bottom + anchors.topMargin: UM.Theme.getSize("default_margin").height + anchors.left: parent.left + sourceComponent: combobox + } + + MouseArea + { + id: helpIconMouseArea + anchors.right: parent.right + anchors.verticalCenter: comboboxLabel.verticalCenter + width: childrenRect.width + height: childrenRect.height + hoverEnabled: true + + UM.ColorImage + { + width: UM.Theme.getSize("section_icon").width + height: width + + visible: comboboxTooltipText != "" + source: UM.Theme.getIcon("Help") + + UM.ToolTip + { + text: comboboxTooltipText + visible: helpIconMouseArea.containsMouse + targetPoint: Qt.point(parent.x + Math.round(parent.width / 2), parent.y) + x: 0 + y: parent.y + parent.height + UM.Theme.getSize("default_margin").height + width: UM.Theme.getSize("tooltip").width + } + } + } + } + + Loader { width: parent.width From 57c6a228aadf094330f92b75acf382fe906eb0e0 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Fri, 11 Nov 2022 11:02:05 +0100 Subject: [PATCH 116/161] Expose per-model retraction settings. Related engine PR made it possible to do this. No PR was made to expose these to the front-end as far as I can see, so (since this was a PRwe where very behind on -- like 10 months or so) I choose to do it myself instead of asking the original author. part of CURA-9876 --- resources/definitions/fdmprinter.def.json | 32 +++++++++++------------ 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 08a895c9fa..a1daeaaccc 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -4015,7 +4015,7 @@ "maximum_value": "machine_max_feedrate_e if retraction_enable else float('inf')", "maximum_value_warning": "70", "enabled": "retraction_enable and machine_gcode_flavor != \"UltiGCode\"", - "settable_per_mesh": false, + "settable_per_mesh": true, "settable_per_extruder": true, "children": { @@ -4032,7 +4032,7 @@ "maximum_value_warning": "70", "enabled": "retraction_enable and machine_gcode_flavor != \"UltiGCode\"", "value": "retraction_speed", - "settable_per_mesh": false, + "settable_per_mesh": true, "settable_per_extruder": true }, "retraction_prime_speed": @@ -4048,7 +4048,7 @@ "maximum_value_warning": "70", "enabled": "retraction_enable and machine_gcode_flavor != \"UltiGCode\"", "value": "retraction_speed", - "settable_per_mesh": false, + "settable_per_mesh": true, "settable_per_extruder": true } } @@ -4063,7 +4063,7 @@ "minimum_value_warning": "-0.0001", "maximum_value_warning": "5.0", "enabled": "retraction_enable", - "settable_per_mesh": false, + "settable_per_mesh": true, "settable_per_extruder": true }, "retraction_min_travel": @@ -4077,7 +4077,7 @@ "minimum_value": "0", "minimum_value_warning": "line_width * 1.5", "maximum_value_warning": "10", - "settable_per_mesh": false, + "settable_per_mesh": true, "settable_per_extruder": true }, "retraction_count_max": @@ -4232,7 +4232,7 @@ "type": "bool", "default_value": false, "enabled": "retraction_enable and retraction_hop_enabled and travel_avoid_other_parts", - "settable_per_mesh": false, + "settable_per_mesh": true, "settable_per_extruder": true }, "retraction_hop": { @@ -4244,7 +4244,7 @@ "minimum_value_warning": "0", "maximum_value_warning": "10", "enabled": "retraction_enable and retraction_hop_enabled", - "settable_per_mesh": false, + "settable_per_mesh": true, "settable_per_extruder": true }, "retraction_hop_after_extruder_switch": { @@ -7861,7 +7861,7 @@ "minimum_value_warning": "-0.0001", "maximum_value_warning": "10.0", "enabled": "wipe_retraction_enable and clean_between_layers", - "settable_per_mesh": false, + "settable_per_mesh": true, "settable_per_extruder": true, "settable_per_meshgroup": false }, @@ -7876,7 +7876,7 @@ "minimum_value_warning": "-0.0001", "maximum_value_warning": "10.0", "enabled": "wipe_retraction_enable and clean_between_layers", - "settable_per_mesh": false, + "settable_per_mesh": true, "settable_per_extruder": true }, "wipe_retraction_speed": @@ -7909,7 +7909,7 @@ "maximum_value_warning": "70", "enabled": "wipe_retraction_enable and clean_between_layers", "value": "wipe_retraction_speed", - "settable_per_mesh": false, + "settable_per_mesh": true, "settable_per_extruder": true }, "wipe_retraction_prime_speed": @@ -7925,7 +7925,7 @@ "maximum_value_warning": "70", "enabled": "wipe_retraction_enable and clean_between_layers", "value": "wipe_retraction_speed", - "settable_per_mesh": false, + "settable_per_mesh": true, "settable_per_extruder": true } } @@ -7939,7 +7939,7 @@ "default_value": 0, "minimum_value": "0", "enabled": "clean_between_layers", - "settable_per_mesh": false, + "settable_per_mesh": true, "settable_per_extruder": true, "settable_per_meshgroup": false }, @@ -7964,7 +7964,7 @@ "default_value": 1, "value": "retraction_hop", "enabled": "wipe_hop_enable and clean_between_layers", - "settable_per_mesh": false, + "settable_per_mesh": true, "settable_per_extruder": true, "settable_per_meshgroup": false }, @@ -7979,7 +7979,7 @@ "minimum_value": "0", "minimum_value_warning": "1", "enabled": "wipe_hop_enable and clean_between_layers", - "settable_per_mesh": false, + "settable_per_mesh": true, "settable_per_extruder": true, "settable_per_meshgroup": false }, @@ -8004,7 +8004,7 @@ "minimum_value": "0", "default_value": 5, "enabled": "clean_between_layers", - "settable_per_mesh": false, + "settable_per_mesh": true, "settable_per_extruder": true, "settable_per_meshgroup": false }, @@ -8016,7 +8016,7 @@ "type": "float", "default_value": 20, "enabled": "clean_between_layers", - "settable_per_mesh": false, + "settable_per_mesh": true, "settable_per_extruder": true, "settable_per_meshgroup": false }, From bbadc9c8877e24ce6c1c797946e331e0577749cb Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Fri, 11 Nov 2022 13:44:37 +0100 Subject: [PATCH 117/161] Apply suggestions from code review Co-authored-by: Jelle Spijker --- cura/Machines/Models/MachineListModel.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/Machines/Models/MachineListModel.py b/cura/Machines/Models/MachineListModel.py index 82b889ac4b..b9ed51ac10 100644 --- a/cura/Machines/Models/MachineListModel.py +++ b/cura/Machines/Models/MachineListModel.py @@ -79,7 +79,7 @@ class MachineListModel(ListModel): self._change_timer.start() def _getMachineStacks(self) -> List[ContainerStack]: - return CuraContainerRegistry.getInstance().findContainerStacks(type="machine") + return CuraContainerRegistry.getInstance().findContainerStacks(type = "machine") def _getAbstractMachineStacks(self) -> List[ContainerStack]: return CuraContainerRegistry.getInstance().findContainerStacks(is_abstract_machine = "True") From 1d34cd01c1f9c9b3e747a9819f7d843019cd0c49 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Fri, 11 Nov 2022 16:34:08 +0100 Subject: [PATCH 118/161] Removed unused UpdatableMachinesModel.py CURA-9424 --- plugins/3MFReader/UpdatableMachinesModel.py | 43 --------------------- 1 file changed, 43 deletions(-) delete mode 100644 plugins/3MFReader/UpdatableMachinesModel.py diff --git a/plugins/3MFReader/UpdatableMachinesModel.py b/plugins/3MFReader/UpdatableMachinesModel.py deleted file mode 100644 index 9d6eee6c3e..0000000000 --- a/plugins/3MFReader/UpdatableMachinesModel.py +++ /dev/null @@ -1,43 +0,0 @@ -# Copyright (c) 2020 Ultimaker B.V. -# Cura is released under the terms of the LGPLv3 or higher. - -from typing import Dict, List - -from PyQt6.QtCore import Qt - -from UM.Qt.ListModel import ListModel -from cura.Settings.GlobalStack import GlobalStack - -create_new_list_item = { - "id": "new", - "name": "Create new", - "displayName": "Create new", - "type": "default_option" # to make sure we are not mixing the "Create new" option with a printer with id "new" -} # type: Dict[str, str] - - -class UpdatableMachinesModel(ListModel): - """Model that holds cura packages. - - By setting the filter property the instances held by this model can be changed. - """ - - def __init__(self, parent = None) -> None: - super().__init__(parent) - - self.addRoleName(Qt.ItemDataRole.UserRole + 1, "id") - self.addRoleName(Qt.ItemDataRole.UserRole + 2, "name") - self.addRoleName(Qt.ItemDataRole.UserRole + 3, "displayName") - self.addRoleName(Qt.ItemDataRole.UserRole + 4, "type") # Either "default_option" or "machine" - - def update(self, machines: List[GlobalStack]) -> None: - items = [create_new_list_item] # type: List[Dict[str, str]] - - for machine in sorted(machines, key = lambda printer: printer.name): - items.append({ - "id": machine.id, - "name": machine.name, - "displayName": "Update " + machine.name, - "type": "machine" - }) - self.setItems(items) From 44d9df57e499eb3cb4489f06cb706c3128fa2e6c Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Fri, 11 Nov 2022 16:34:22 +0100 Subject: [PATCH 119/161] Update drop down to show correct printer icons in header CURA-9424 --- plugins/3MFReader/WorkspaceDialog.py | 22 ++++++++++++++++++++++ plugins/3MFReader/WorkspaceDialog.qml | 10 ++++++---- 2 files changed, 28 insertions(+), 4 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.py b/plugins/3MFReader/WorkspaceDialog.py index da7b8737e3..ebf389b396 100644 --- a/plugins/3MFReader/WorkspaceDialog.py +++ b/plugins/3MFReader/WorkspaceDialog.py @@ -66,6 +66,8 @@ class WorkspaceDialog(QObject): self._missing_package_metadata: List[Dict[str, str]] = [] self._plugin_registry: PluginRegistry = CuraApplication.getInstance().getPluginRegistry() self._install_missing_package_dialog: Optional[QObject] = None + self._is_abstract_machine = False + self._is_online_machine = False machineConflictChanged = pyqtSignal() qualityChangesConflictChanged = pyqtSignal() @@ -79,6 +81,8 @@ class WorkspaceDialog(QObject): intentNameChanged = pyqtSignal() machineNameChanged = pyqtSignal() updatableMachinesChanged = pyqtSignal() + isAbstractMachineChanged = pyqtSignal() + isOnlineChanged = pyqtSignal() materialLabelsChanged = pyqtSignal() objectsOnPlateChanged = pyqtSignal() numUserSettingsChanged = pyqtSignal() @@ -167,6 +171,24 @@ class WorkspaceDialog(QObject): self._updatable_machines_model.set_machines_filter(updatable_machines) self.updatableMachinesChanged.emit() + @pyqtProperty(bool, notify = isAbstractMachineChanged) + def isAbstractMachine(self) -> bool: + return self._is_abstract_machine + + @pyqtSlot(bool) + def setIsAbstractMachine(self, is_abstract_machine: bool) -> None: + self._is_abstract_machine = is_abstract_machine + self.isAbstractMachineChanged.emit() + + @pyqtProperty(bool, notify = isOnlineChanged) + def isOnline(self) -> bool: + return self._is_online_machine + + @pyqtSlot(bool) + def setIsNetworkedMachine(self, is_online_machine: bool) -> None: + self._is_online_machine = is_online_machine + self.isOnlineChanged.emit() + @pyqtProperty(str, notify=qualityTypeChanged) def qualityType(self) -> str: return self._quality_type diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 7417a58126..3d22e18874 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -112,10 +112,10 @@ UM.Dialog machineListModel: manager.updatableMachinesModel machineName: manager.machineName - isNetworkPrinter: false isConnectedCloudPrinter: false isCloudRegistered: false - isGroup: false + isNetworkPrinter: manager.isOnline + isGroup: manager.isAbstractMachine minDropDownWidth: machineSelector.width @@ -129,10 +129,10 @@ UM.Dialog onClicked: { machineSelector.machineName = catalog.i18nc("@button", "Create new") - machineSelector.isNetworkPrinter = false + manager.setIsAbstractMachine(false) + manager.setIsNetworkedMachine(false) machineSelector.isConnectedCloudPrinter = false machineSelector.isCloudRegistered = false - machineSelector.isGroup = false toggleContent() manager.setResolveStrategy("machine", "new") @@ -145,6 +145,8 @@ UM.Dialog toggleContent(); manager.setResolveStrategy("machine", "override") manager.setMachineToOverride(machine.id) + manager.setIsAbstractMachine(machine.isAbstractMachine) + manager.setIsNetworkedMachine(machine.isOnline) machineSelector.machineName = machine.name } } From 62274c4dacd2a938cac4ef477b502776d32c4686 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Fri, 11 Nov 2022 17:04:39 +0100 Subject: [PATCH 120/161] Revert Some of "Fix show/hide button in WorkSpaceDialog printer selector" This reverts commit 0c79ec73 --- cura/Machines/Models/MachineListModel.py | 11 ++++++----- plugins/3MFReader/WorkspaceDialog.py | 4 ++-- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/cura/Machines/Models/MachineListModel.py b/cura/Machines/Models/MachineListModel.py index b9ed51ac10..d1aa22cfcd 100644 --- a/cura/Machines/Models/MachineListModel.py +++ b/cura/Machines/Models/MachineListModel.py @@ -29,7 +29,7 @@ class MachineListModel(ListModel): IsAbstractMachineRole = Qt.ItemDataRole.UserRole + 7 ComponentTypeRole = Qt.ItemDataRole.UserRole + 8 - def __init__(self, parent: Optional[QObject] = None, machines_filter: Optional[List[GlobalStack]] = None) -> None: + def __init__(self, parent: Optional[QObject] = None, machines_filter: List[GlobalStack] = None, listenToChanges: bool = True) -> None: super().__init__(parent) self._show_cloud_printers = False @@ -51,10 +51,11 @@ class MachineListModel(ListModel): self._change_timer.setSingleShot(True) self._change_timer.timeout.connect(self._update) - CuraContainerRegistry.getInstance().containerAdded.connect(self._onContainerChanged) - CuraContainerRegistry.getInstance().containerMetaDataChanged.connect(self._onContainerChanged) - CuraContainerRegistry.getInstance().containerRemoved.connect(self._onContainerChanged) - self._updateDelayed() + if listenToChanges: + CuraContainerRegistry.getInstance().containerAdded.connect(self._onContainerChanged) + CuraContainerRegistry.getInstance().containerMetaDataChanged.connect(self._onContainerChanged) + CuraContainerRegistry.getInstance().containerRemoved.connect(self._onContainerChanged) + self._updateDelayed() showCloudPrintersChanged = pyqtSignal(bool) diff --git a/plugins/3MFReader/WorkspaceDialog.py b/plugins/3MFReader/WorkspaceDialog.py index ebf389b396..1cc134b5e5 100644 --- a/plugins/3MFReader/WorkspaceDialog.py +++ b/plugins/3MFReader/WorkspaceDialog.py @@ -62,7 +62,7 @@ class WorkspaceDialog(QObject): self._extruders = [] self._objects_on_plate = False self._is_printer_group = False - self._updatable_machines_model = MachineListModel(self) + self._updatable_machines_model = MachineListModel(self, listenToChanges=False) self._missing_package_metadata: List[Dict[str, str]] = [] self._plugin_registry: PluginRegistry = CuraApplication.getInstance().getPluginRegistry() self._install_missing_package_dialog: Optional[QObject] = None @@ -168,7 +168,7 @@ class WorkspaceDialog(QObject): return cast(MachineListModel, self._updatable_machines_model) def setUpdatableMachines(self, updatable_machines: List[GlobalStack]) -> None: - self._updatable_machines_model.set_machines_filter(updatable_machines) + self._updatable_machines_model.update(updatable_machines) self.updatableMachinesChanged.emit() @pyqtProperty(bool, notify = isAbstractMachineChanged) From 57e1c7a4ce854460675a681e5b6f0eca60a065df Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Fri, 11 Nov 2022 17:08:45 +0100 Subject: [PATCH 121/161] Commit suggestion by Jelle CURA-9424 --- cura/Machines/Models/MachineListModel.py | 23 +++++++---------------- 1 file changed, 7 insertions(+), 16 deletions(-) diff --git a/cura/Machines/Models/MachineListModel.py b/cura/Machines/Models/MachineListModel.py index d1aa22cfcd..03c3fbdcaa 100644 --- a/cura/Machines/Models/MachineListModel.py +++ b/cura/Machines/Models/MachineListModel.py @@ -129,22 +129,13 @@ class MachineListModel(ListModel): other_machine_stacks.remove(stack) if len(abstract_machine_stacks) > 0: - if self._show_cloud_printers: - self.appendItem({ - "componentType": "HIDE_BUTTON", - "isOnline": True, - "isAbstractMachine": False, - "machineCount": 0, - "catergory": "connected", - }) - else: - self.appendItem({ - "componentType": "SHOW_BUTTON", - "isOnline": True, - "isAbstractMachine": False, - "machineCount": 0, - "catergory": "connected", - }) + self.appendItem({ + "componentType": "HIDE_BUTTON" if self._show_cloud_printers else "SHOW_BUTTON", + "isOnline": True, + "isAbstractMachine": False, + "machineCount": 0, + "catergory": "connected", + }) for stack in other_machine_stacks: self.addItem(stack, False) From 9d690da9d5c254225981efa4e200b504e9abb40b Mon Sep 17 00:00:00 2001 From: jspijker Date: Sun, 13 Nov 2022 10:29:25 +0100 Subject: [PATCH 122/161] Fix buildinfo.json generation --- .github/workflows/conan-package-create.yml | 14 +++++++++++--- .github/workflows/conan-package.yml | 4 +++- .github/workflows/conan-recipe-version.yml | 4 ++++ 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/.github/workflows/conan-package-create.yml b/.github/workflows/conan-package-create.yml index 5f781dfb00..673212f488 100644 --- a/.github/workflows/conan-package-create.yml +++ b/.github/workflows/conan-package-create.yml @@ -11,6 +11,14 @@ on: required: true type: number + recipe_user: + required: true + type: string + + recipe_channel: + required: true + type: string + recipe_id_full: required: true type: string @@ -140,12 +148,12 @@ jobs: if: ${{ inputs.conan_config_branch == '' }} run: conan config install https://github.com/Ultimaker/conan-config.git - - name: Create the Packages + - name: Create the Packages and the buildinfo.json if: ${{ !inputs.create_from_source }} run: | conan_build_info --v2 start ${{ inputs.project_name }} ${{ github.run_number }}000${{ inputs.build_id }} - conan lock create --reference ${{ inputs.recipe_id_full }} --build=missing --update - conan install ${{ inputs.recipe_id_full }} --build=missing --update --lockfile=conan.lock + conan lock create --reference ${{ inputs.recipe_id_full }} --user=${{ inputs.recipe_user }} --channel=${{ inputs.recipe_channel }} --lockfile-out=conan.lock + conan install ${{ inputs.recipe_id_full }} --build=missing --update --lockfile=conan.lock --lockfile-out=conan.lock conan_build_info --v2 create buildinfo.json --lockfile conan.lock --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} conan_build_info --v2 publish buildinfo.json --url https://ultimaker.jfrog.io/artifactory --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} conan_build_info --v2 stop diff --git a/.github/workflows/conan-package.yml b/.github/workflows/conan-package.yml index 0a3d4447c1..9dd0d7cfe2 100644 --- a/.github/workflows/conan-package.yml +++ b/.github/workflows/conan-package.yml @@ -81,8 +81,10 @@ jobs: uses: ultimaker/cura/.github/workflows/conan-package-create.yml@main with: - project_name: cura + project_name: ${{ needs.conan-recipe-version.outputs.recipe_projectname }} build_id: 1 + recipe_user: ${{ needs.conan-recipe-version.outputs.recipe_user }} + recipe_channel: ${{ needs.conan-recipe-version.outputs.recipe_channel }} recipe_id_full: ${{ needs.conan-recipe-version.outputs.recipe_id_full }} runs_on: 'ubuntu-20.04' python_version: '3.10.x' diff --git a/.github/workflows/conan-recipe-version.yml b/.github/workflows/conan-recipe-version.yml index eb1824c8f7..b832b94784 100644 --- a/.github/workflows/conan-recipe-version.yml +++ b/.github/workflows/conan-recipe-version.yml @@ -37,6 +37,10 @@ on: description: "The conan channel" value: ${{ jobs.get-semver.outputs.channel }} + recipe_projectname: + description: "The conan projectname" + value: ${{ inputs.project_name }} + jobs: get-semver: From 2e0619d6472cf9b2064ce3eb9e38fb37a84176ba Mon Sep 17 00:00:00 2001 From: jspijker Date: Sun, 13 Nov 2022 10:47:03 +0100 Subject: [PATCH 123/161] Fix buildinfo.json generation --- .github/workflows/conan-package-create.yml | 53 ++++++---------------- .github/workflows/conan-package.yml | 4 +- .github/workflows/conan-recipe-version.yml | 6 +-- 3 files changed, 19 insertions(+), 44 deletions(-) diff --git a/.github/workflows/conan-package-create.yml b/.github/workflows/conan-package-create.yml index 673212f488..d1df4842e8 100644 --- a/.github/workflows/conan-package-create.yml +++ b/.github/workflows/conan-package-create.yml @@ -7,22 +7,14 @@ on: required: true type: string - build_id: - required: true - type: number - - recipe_user: - required: true - type: string - - recipe_channel: - required: true - type: string - recipe_id_full: required: true type: string + build_id: + required: true + type: number + recipe_id_latest: required: false type: string @@ -53,11 +45,6 @@ on: default: true type: boolean - create_from_source: - required: false - default: false - type: boolean - env: CONAN_LOGIN_USERNAME_CURA: ${{ secrets.CONAN_USER }} CONAN_PASSWORD_CURA: ${{ secrets.CONAN_PASS }} @@ -148,33 +135,23 @@ jobs: if: ${{ inputs.conan_config_branch == '' }} run: conan config install https://github.com/Ultimaker/conan-config.git - - name: Create the Packages and the buildinfo.json - if: ${{ !inputs.create_from_source }} + - name: Create the lock file run: | conan_build_info --v2 start ${{ inputs.project_name }} ${{ github.run_number }}000${{ inputs.build_id }} - conan lock create --reference ${{ inputs.recipe_id_full }} --user=${{ inputs.recipe_user }} --channel=${{ inputs.recipe_channel }} --lockfile-out=conan.lock - conan install ${{ inputs.recipe_id_full }} --build=missing --update --lockfile=conan.lock --lockfile-out=conan.lock - conan_build_info --v2 create buildinfo.json --lockfile conan.lock --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} - conan_build_info --v2 publish buildinfo.json --url https://ultimaker.jfrog.io/artifactory --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} - conan_build_info --v2 stop + conan lock create --reference ${{ inputs.recipe_id_full }} --lockfile-out=conan.lock - - name: Create the Packages (from source) - if: ${{ inputs.create_from_source }} - run: conan create . ${{ inputs.recipe_id_full }} --build=missing --update + - name: Create the Packages and the build info + run: conan install ${{ inputs.recipe_id_full }} --build=missing --update --lockfile=conan.lock --lockfile-out=conan.lock - - name: Remove the latest alias - if: ${{ inputs.create_from_source && inputs.recipe_id_latest != '' && runner.os == 'Linux' }} - run: | - conan remove ${{ inputs.recipe_id_latest }} -r cura -f || true - conan remove ${{ inputs.recipe_id_latest }} -r cura-ce -f || true + - name: Create the build info + run: conan_build_info --v2 create buildinfo.json --lockfile conan.lock --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} - - name: Create the latest alias - if: ${{ inputs.create_from_source && inputs.recipe_id_latest != '' && always() }} - run: conan alias ${{ inputs.recipe_id_latest }} ${{ inputs.recipe_id_full }} - - - name: Upload the Package(s) + - name: Upload the Package(s) and build info if: always() - run: conan upload "*" -r cura --all -c + run: | + conan upload "*" -r cura --all -c + conan_build_info --v2 publish buildinfo.json --url https://ultimaker.jfrog.io/artifactory --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }}conan_build_info --v2 publish buildinfo.json --url https://ultimaker.jfrog.io/artifactory --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} + conan_build_info --v2 stop - name: Upload the Package(s) community if: ${{ always() && inputs.conan_upload_community == true }} diff --git a/.github/workflows/conan-package.yml b/.github/workflows/conan-package.yml index 9dd0d7cfe2..8fa56c8375 100644 --- a/.github/workflows/conan-package.yml +++ b/.github/workflows/conan-package.yml @@ -82,10 +82,8 @@ jobs: uses: ultimaker/cura/.github/workflows/conan-package-create.yml@main with: project_name: ${{ needs.conan-recipe-version.outputs.recipe_projectname }} - build_id: 1 - recipe_user: ${{ needs.conan-recipe-version.outputs.recipe_user }} - recipe_channel: ${{ needs.conan-recipe-version.outputs.recipe_channel }} recipe_id_full: ${{ needs.conan-recipe-version.outputs.recipe_id_full }} + build_id: 1 runs_on: 'ubuntu-20.04' python_version: '3.10.x' conan_logging_level: 'info' diff --git a/.github/workflows/conan-recipe-version.yml b/.github/workflows/conan-recipe-version.yml index b832b94784..e5b1af54f5 100644 --- a/.github/workflows/conan-recipe-version.yml +++ b/.github/workflows/conan-recipe-version.yml @@ -29,15 +29,15 @@ on: description: "is current branch a release branch?" value: ${{ jobs.get-semver.outputs.release_branch }} - recipe_user: + user: description: "The conan user" value: ${{ jobs.get-semver.outputs.user }} - recipe_channel: + channel: description: "The conan channel" value: ${{ jobs.get-semver.outputs.channel }} - recipe_projectname: + project_name: description: "The conan projectname" value: ${{ inputs.project_name }} From 76be83434f5fb4bd4af56461529afb64d30cb844 Mon Sep 17 00:00:00 2001 From: jspijker Date: Sun, 13 Nov 2022 10:55:27 +0100 Subject: [PATCH 124/161] Use the correct project_name --- .github/workflows/conan-package.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/conan-package.yml b/.github/workflows/conan-package.yml index 8fa56c8375..f88f815139 100644 --- a/.github/workflows/conan-package.yml +++ b/.github/workflows/conan-package.yml @@ -81,7 +81,7 @@ jobs: uses: ultimaker/cura/.github/workflows/conan-package-create.yml@main with: - project_name: ${{ needs.conan-recipe-version.outputs.recipe_projectname }} + project_name: ${{ needs.conan-recipe-version.outputs.project_name }} recipe_id_full: ${{ needs.conan-recipe-version.outputs.recipe_id_full }} build_id: 1 runs_on: 'ubuntu-20.04' From d85786c829bbcff20cf83874f4fa926725dd6cf8 Mon Sep 17 00:00:00 2001 From: jspijker Date: Sun, 13 Nov 2022 11:05:35 +0100 Subject: [PATCH 125/161] fix uploading buildinfo step --- .github/workflows/conan-package-create.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/conan-package-create.yml b/.github/workflows/conan-package-create.yml index d1df4842e8..042b21627a 100644 --- a/.github/workflows/conan-package-create.yml +++ b/.github/workflows/conan-package-create.yml @@ -146,11 +146,13 @@ jobs: - name: Create the build info run: conan_build_info --v2 create buildinfo.json --lockfile conan.lock --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} - - name: Upload the Package(s) and build info + - name: Upload the Package(s) if: always() + run: conan upload "*" -r cura --all -c + + - name: Upload the build info run: | - conan upload "*" -r cura --all -c - conan_build_info --v2 publish buildinfo.json --url https://ultimaker.jfrog.io/artifactory --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }}conan_build_info --v2 publish buildinfo.json --url https://ultimaker.jfrog.io/artifactory --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} + conan_build_info --v2 publish buildinfo.json --url https://ultimaker.jfrog.io/artifactory --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} conan_build_info --v2 stop - name: Upload the Package(s) community From fab0430966cc35b18e8b54103c94254070a255ab Mon Sep 17 00:00:00 2001 From: jspijker Date: Sun, 13 Nov 2022 13:13:36 +0100 Subject: [PATCH 126/161] use runs_on as cache key --- .github/workflows/conan-package-create.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/conan-package-create.yml b/.github/workflows/conan-package-create.yml index 042b21627a..4b96782278 100644 --- a/.github/workflows/conan-package-create.yml +++ b/.github/workflows/conan-package-create.yml @@ -87,7 +87,7 @@ jobs: path: | $HOME/.conan/data $HOME/.conan/conan_download_cache - key: conan-${{ runner.os }}-${{ runner.arch }}-create-cache + key: conan-${{ inputs.runs_on }}-${{ runner.arch }}-create-cache - name: Cache Conan local repository packages (Powershell) uses: actions/cache@v3 @@ -97,7 +97,7 @@ jobs: C:\Users\runneradmin\.conan\data C:\.conan C:\Users\runneradmin\.conan\conan_download_cache - key: conan-${{ runner.os }}-${{ runner.arch }}-create-cache + key: conan-${{ inputs.runs_on }}-${{ runner.arch }}-create-cache - name: Install MacOS system requirements if: ${{ runner.os == 'Macos' }} From b161a8ed941ab51e5c14683fbff2c79cb92d0729 Mon Sep 17 00:00:00 2001 From: jspijker Date: Sun, 13 Nov 2022 13:34:23 +0100 Subject: [PATCH 127/161] install bison and flex on ubuntu --- .github/workflows/conan-package-create.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/conan-package-create.yml b/.github/workflows/conan-package-create.yml index 4b96782278..4a100029ec 100644 --- a/.github/workflows/conan-package-create.yml +++ b/.github/workflows/conan-package-create.yml @@ -109,7 +109,7 @@ jobs: sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y sudo apt update sudo apt upgrade - sudo apt install build-essential checkinstall libegl-dev zlib1g-dev libssl-dev ninja-build autoconf libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev xtrans-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev xkb-data libxcb-dri3-dev uuid-dev libxcb-util-dev libxkbcommon-x11-dev pkg-config -y + sudo apt install build-essential checkinstall libegl-dev zlib1g-dev libssl-dev ninja-build autoconf libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev xtrans-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev xkb-data libxcb-dri3-dev uuid-dev libxcb-util-dev libxkbcommon-x11-dev pkg-config flex bison -y - name: Install GCC-12 on ubuntu-22.04 if: ${{ startsWith(inputs.runs_on, 'ubuntu-22.04') }} From 00f83dd3f8b95a93b65ce862c433300835473a17 Mon Sep 17 00:00:00 2001 From: jspijker Date: Sun, 13 Nov 2022 13:48:46 +0100 Subject: [PATCH 128/161] Store the log and build artifacts --- .github/workflows/conan-package-create.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/.github/workflows/conan-package-create.yml b/.github/workflows/conan-package-create.yml index 4a100029ec..459d65c8e3 100644 --- a/.github/workflows/conan-package-create.yml +++ b/.github/workflows/conan-package-create.yml @@ -158,3 +158,17 @@ jobs: - name: Upload the Package(s) community if: ${{ always() && inputs.conan_upload_community == true }} run: conan upload "*" -r cura-ce -c + + - name: Upload the log and build artifacts + if: always() + uses: actions/upload-artifact@v3 + with: + name: log-${{ inputs.runs_on }}-${{ runner.arch }} + path: | + buildinfo.json + conan.lock + conanbuildinfo.txt + conaninfo.txt + graph_info.json + build/** + retention-days: 1 From d83f11f42a8b105a4ee720ee26b8614147a91a4a Mon Sep 17 00:00:00 2001 From: Jelle Spijker Date: Mon, 14 Nov 2022 12:46:51 +0100 Subject: [PATCH 129/161] Make usage of lockfile conditionally --- .github/workflows/conan-package-create.yml | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/.github/workflows/conan-package-create.yml b/.github/workflows/conan-package-create.yml index 459d65c8e3..1837150dae 100644 --- a/.github/workflows/conan-package-create.yml +++ b/.github/workflows/conan-package-create.yml @@ -15,6 +15,11 @@ on: required: true type: number + build_info: + required: false + default: true + type: boolean + recipe_id_latest: required: false type: string @@ -136,14 +141,21 @@ jobs: run: conan config install https://github.com/Ultimaker/conan-config.git - name: Create the lock file + if: ${{ inputs.build_info }} run: | conan_build_info --v2 start ${{ inputs.project_name }} ${{ github.run_number }}000${{ inputs.build_id }} conan lock create --reference ${{ inputs.recipe_id_full }} --lockfile-out=conan.lock - - name: Create the Packages and the build info + - name: Create the Packages using lockfile + if: ${{ inputs.build_info }} run: conan install ${{ inputs.recipe_id_full }} --build=missing --update --lockfile=conan.lock --lockfile-out=conan.lock + - name: Create the Packages + if: ${{ ! inputs.build_info }} + run: conan install ${{ inputs.recipe_id_full }} --build=missing --update + - name: Create the build info + if: ${{ inputs.build_info }} run: conan_build_info --v2 create buildinfo.json --lockfile conan.lock --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} - name: Upload the Package(s) @@ -151,6 +163,7 @@ jobs: run: conan upload "*" -r cura --all -c - name: Upload the build info + if: ${{ inputs.build_info }} run: | conan_build_info --v2 publish buildinfo.json --url https://ultimaker.jfrog.io/artifactory --user ${{ secrets.CONAN_USER }} --password ${{ secrets.CONAN_PASS }} conan_build_info --v2 stop From d6cab972c6b889b6ab55b97440cf831160b0908b Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Mon, 14 Nov 2022 12:57:38 +0100 Subject: [PATCH 130/161] Fix call to incorrect function after revert. CURA-9424 --- plugins/3MFReader/WorkspaceDialog.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/3MFReader/WorkspaceDialog.py b/plugins/3MFReader/WorkspaceDialog.py index 1cc134b5e5..7d5590a92c 100644 --- a/plugins/3MFReader/WorkspaceDialog.py +++ b/plugins/3MFReader/WorkspaceDialog.py @@ -168,7 +168,7 @@ class WorkspaceDialog(QObject): return cast(MachineListModel, self._updatable_machines_model) def setUpdatableMachines(self, updatable_machines: List[GlobalStack]) -> None: - self._updatable_machines_model.update(updatable_machines) + self._updatable_machines_model.set_machines_filter(updatable_machines) self.updatableMachinesChanged.emit() @pyqtProperty(bool, notify = isAbstractMachineChanged) From 959c42d96a259428fbdaaa87a612a93f7b87069f Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Mon, 14 Nov 2022 13:34:46 +0100 Subject: [PATCH 131/161] The printer to override was not being set initially, causing file loading to fail when not selecting a printer in the MachineSelector. Fix is to set it on initialization from the WorkspaceReader CURA-9424 --- plugins/3MFReader/ThreeMFWorkspaceReader.py | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/3MFReader/ThreeMFWorkspaceReader.py b/plugins/3MFReader/ThreeMFWorkspaceReader.py index bec50b5660..f810ff58e5 100755 --- a/plugins/3MFReader/ThreeMFWorkspaceReader.py +++ b/plugins/3MFReader/ThreeMFWorkspaceReader.py @@ -600,6 +600,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader): self._dialog.setActiveMode(active_mode) self._dialog.setUpdatableMachines(updatable_machines) self._dialog.setMachineName(machine_name) + self._dialog.setMachineToOverride(global_stack_id) self._dialog.setMaterialLabels(material_labels) self._dialog.setMachineType(machine_type) self._dialog.setExtruders(extruders) From 7f9c183072a3ec9246be5251787ff26f862f6b49 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Mon, 14 Nov 2022 13:35:03 +0100 Subject: [PATCH 132/161] Remove redundant assignments CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 2 -- 1 file changed, 2 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 3d22e18874..8b93b7f633 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -131,8 +131,6 @@ UM.Dialog machineSelector.machineName = catalog.i18nc("@button", "Create new") manager.setIsAbstractMachine(false) manager.setIsNetworkedMachine(false) - machineSelector.isConnectedCloudPrinter = false - machineSelector.isCloudRegistered = false toggleContent() manager.setResolveStrategy("machine", "new") From 90ce031b275b4a8e42f3851045ed8949917d8432 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Tue, 15 Nov 2022 13:49:02 +0100 Subject: [PATCH 133/161] Add default case CURA-9424 --- resources/qml/PrinterSelector/MachineSelectorList.qml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/resources/qml/PrinterSelector/MachineSelectorList.qml b/resources/qml/PrinterSelector/MachineSelectorList.qml index b3a65da7da..ddf9586065 100644 --- a/resources/qml/PrinterSelector/MachineSelectorList.qml +++ b/resources/qml/PrinterSelector/MachineSelectorList.qml @@ -28,6 +28,8 @@ ListView return catalog.i18nc("@label", "Connected printers"); case "other": return catalog.i18nc("@label", "Other printers"); + default: + return catalog.i18nc("@label", "Other printers"); } } height: UM.Theme.getSize("action_button").height From cac9d67352ae0613fe3ddadad76230c46666d042 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Tue, 15 Nov 2022 13:49:55 +0100 Subject: [PATCH 134/161] Apply suggestions from code review Co-authored-by: Casper Lamboo --- plugins/3MFReader/WorkspaceRow.qml | 4 ++-- plugins/3MFReader/WorkspaceSection.qml | 2 +- plugins/PrepareStage/PrepareMenu.qml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/plugins/3MFReader/WorkspaceRow.qml b/plugins/3MFReader/WorkspaceRow.qml index 72cea7b5bd..8d9f1f25b3 100644 --- a/plugins/3MFReader/WorkspaceRow.qml +++ b/plugins/3MFReader/WorkspaceRow.qml @@ -21,14 +21,14 @@ Row { id: leftLabel text: catalog.i18nc("@action:label", "Type") - width: (parent.width / 4) | 0 + width: Math.round(parent.width / 4) wrapMode: Text.WordWrap } UM.Label { id: rightLabel text: manager.machineType - width: (parent.width / 3) | 0 + width: Math.round(parent.width / 3) wrapMode: Text.WordWrap } } \ No newline at end of file diff --git a/plugins/3MFReader/WorkspaceSection.qml b/plugins/3MFReader/WorkspaceSection.qml index b11cc04cd7..6eb8f50bdf 100644 --- a/plugins/3MFReader/WorkspaceSection.qml +++ b/plugins/3MFReader/WorkspaceSection.qml @@ -50,7 +50,7 @@ Item Item { id: comboboxTooltip - width: (parent.width / 2.5) | 0 + width: Math.round(parent.width / 2.5) height: visible ? UM.Theme.getSize("default_margin").height : 0 anchors.top: parent.top anchors.right: parent.right diff --git a/plugins/PrepareStage/PrepareMenu.qml b/plugins/PrepareStage/PrepareMenu.qml index 12db91635b..ab9b9b1b3d 100644 --- a/plugins/PrepareStage/PrepareMenu.qml +++ b/plugins/PrepareStage/PrepareMenu.qml @@ -91,7 +91,7 @@ Item fixedWidthMode: true // The maximum width of the button is half of the total space, minus the padding of the parent, the right // padding of the component and half the spacing because of the space between buttons. - width: parent.width / 2 - rightPadding * 1.5 + width: Math.round(parent.width / 2 - rightPadding * 1.5) onClicked: { machineSelection.toggleContent() From e4ad9cb48cf7418604626f820f8cbf73ae8de33f Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Tue, 15 Nov 2022 14:08:47 +0100 Subject: [PATCH 135/161] Move base hovered logic out of ComboBox.qml since base is undefined in most places the component is used. CURA-9424 --- plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml | 1 + resources/qml/Settings/SettingComboBox.qml | 1 + resources/qml/Settings/SettingExtruder.qml | 2 ++ resources/qml/Settings/SettingOptionalExtruder.qml | 1 + resources/qml/Widgets/ComboBox.qml | 3 ++- 5 files changed, 7 insertions(+), 1 deletion(-) diff --git a/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml b/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml index 2d4b3e01e5..be7aebcf7a 100644 --- a/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml +++ b/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml @@ -150,6 +150,7 @@ Item width: parent.width / 2 - UM.Theme.getSize("default_margin").width height: UM.Theme.getSize("setting_control").height textRole: "text" + forceHighlight: base.hovered model: ListModel { diff --git a/resources/qml/Settings/SettingComboBox.qml b/resources/qml/Settings/SettingComboBox.qml index cbabb3ffd4..c57c0a1548 100644 --- a/resources/qml/Settings/SettingComboBox.qml +++ b/resources/qml/Settings/SettingComboBox.qml @@ -18,6 +18,7 @@ SettingItem model: definition.options textRole: "value" + forceHighlight: base.hovered anchors.fill: parent diff --git a/resources/qml/Settings/SettingExtruder.qml b/resources/qml/Settings/SettingExtruder.qml index 567161b8f6..63413aa9bd 100644 --- a/resources/qml/Settings/SettingExtruder.qml +++ b/resources/qml/Settings/SettingExtruder.qml @@ -17,6 +17,8 @@ SettingItem id: control anchors.fill: parent + forceHighlight: base.hovered + property var extrudersModel: CuraApplication.getExtrudersModel() model: extrudersModel diff --git a/resources/qml/Settings/SettingOptionalExtruder.qml b/resources/qml/Settings/SettingOptionalExtruder.qml index 22f03d44a2..a9fdc626b9 100644 --- a/resources/qml/Settings/SettingOptionalExtruder.qml +++ b/resources/qml/Settings/SettingOptionalExtruder.qml @@ -23,6 +23,7 @@ SettingItem { id: control anchors.fill: parent + forceHighlight: base.hovered model: base.extrudersWithOptionalModel diff --git a/resources/qml/Widgets/ComboBox.qml b/resources/qml/Widgets/ComboBox.qml index a7eeb33f6a..06ac2425bb 100644 --- a/resources/qml/Widgets/ComboBox.qml +++ b/resources/qml/Widgets/ComboBox.qml @@ -19,6 +19,7 @@ ComboBox property var defaultTextOnEmptyIndex: "" // Text displayed in the combobox when the model has items but no item is selected property alias textFormat: contentLabel.textFormat property alias backgroundColor: background.color + property bool forceHighlight: false enabled: delegateModel.count > 0 @@ -46,7 +47,7 @@ ComboBox State { name: "highlighted" - when: ((base != undefined && base.hovered) || control.hovered) && !control.activeFocus + when: (control.hovered && !control.activeFocus) || forceHighlight PropertyChanges { target: background From dd0411f1713fb3590dfec0d3232d2d6a314f1353 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Tue, 15 Nov 2022 14:56:25 +0100 Subject: [PATCH 136/161] isOnline was incorrectly being used instead of isNetworked. This caused offline printers not to show an Icon. Fixed CURA-9424 --- cura/Machines/Models/MachineListModel.py | 5 ++++- plugins/3MFReader/WorkspaceDialog.py | 8 ++++---- plugins/3MFReader/WorkspaceDialog.qml | 4 ++-- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/cura/Machines/Models/MachineListModel.py b/cura/Machines/Models/MachineListModel.py index 03c3fbdcaa..b84dc26f0a 100644 --- a/cura/Machines/Models/MachineListModel.py +++ b/cura/Machines/Models/MachineListModel.py @@ -5,7 +5,7 @@ # online cloud connected printers are represented within this ListModel. Additional information such as the number of # connected printers for each printer type is gathered. -from typing import Optional, List +from typing import Optional, List, cast from PyQt6.QtCore import Qt, QTimer, QObject, pyqtSlot, pyqtProperty, pyqtSignal @@ -28,6 +28,7 @@ class MachineListModel(ListModel): MachineCountRole = Qt.ItemDataRole.UserRole + 6 IsAbstractMachineRole = Qt.ItemDataRole.UserRole + 7 ComponentTypeRole = Qt.ItemDataRole.UserRole + 8 + IsNetworkedMachineRole = Qt.ItemDataRole.UserRole + 9 def __init__(self, parent: Optional[QObject] = None, machines_filter: List[GlobalStack] = None, listenToChanges: bool = True) -> None: super().__init__(parent) @@ -45,6 +46,7 @@ class MachineListModel(ListModel): self.addRoleName(self.MachineCountRole, "machineCount") self.addRoleName(self.IsAbstractMachineRole, "isAbstractMachine") self.addRoleName(self.ComponentTypeRole, "componentType") + self.addRoleName(self.IsNetworkedMachineRole, "isNetworked") self._change_timer = QTimer() self._change_timer.setInterval(200) @@ -151,6 +153,7 @@ class MachineListModel(ListModel): "metadata": container_stack.getMetaData().copy(), "isOnline": is_online, "isAbstractMachine": parseBool(container_stack.getMetaDataEntry("is_abstract_machine", False)), + "isNetworked": cast(GlobalStack, container_stack).hasNetworkedConnection() if isinstance(container_stack, GlobalStack) else False, "machineCount": machine_count, "catergory": "connected" if is_online else "other", }) diff --git a/plugins/3MFReader/WorkspaceDialog.py b/plugins/3MFReader/WorkspaceDialog.py index 7d5590a92c..15650b5164 100644 --- a/plugins/3MFReader/WorkspaceDialog.py +++ b/plugins/3MFReader/WorkspaceDialog.py @@ -82,7 +82,7 @@ class WorkspaceDialog(QObject): machineNameChanged = pyqtSignal() updatableMachinesChanged = pyqtSignal() isAbstractMachineChanged = pyqtSignal() - isOnlineChanged = pyqtSignal() + isNetworkedChanged = pyqtSignal() materialLabelsChanged = pyqtSignal() objectsOnPlateChanged = pyqtSignal() numUserSettingsChanged = pyqtSignal() @@ -180,14 +180,14 @@ class WorkspaceDialog(QObject): self._is_abstract_machine = is_abstract_machine self.isAbstractMachineChanged.emit() - @pyqtProperty(bool, notify = isOnlineChanged) - def isOnline(self) -> bool: + @pyqtProperty(bool, notify = isNetworkedChanged) + def isNetworked(self) -> bool: return self._is_online_machine @pyqtSlot(bool) def setIsNetworkedMachine(self, is_online_machine: bool) -> None: self._is_online_machine = is_online_machine - self.isOnlineChanged.emit() + self.isNetworkedChanged.emit() @pyqtProperty(str, notify=qualityTypeChanged) def qualityType(self) -> str: diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 8b93b7f633..2d9a7eba2d 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -114,7 +114,7 @@ UM.Dialog isConnectedCloudPrinter: false isCloudRegistered: false - isNetworkPrinter: manager.isOnline + isNetworkPrinter: manager.isNetworked isGroup: manager.isAbstractMachine minDropDownWidth: machineSelector.width @@ -144,7 +144,7 @@ UM.Dialog manager.setResolveStrategy("machine", "override") manager.setMachineToOverride(machine.id) manager.setIsAbstractMachine(machine.isAbstractMachine) - manager.setIsNetworkedMachine(machine.isOnline) + manager.setIsNetworkedMachine(machine.isNetworked) machineSelector.machineName = machine.name } } From cd07647b2476ae714ab6fdf2c0442adde534ee91 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Tue, 15 Nov 2022 14:57:39 +0100 Subject: [PATCH 137/161] Change misleading variable names CURA-9424 --- plugins/3MFReader/WorkspaceDialog.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.py b/plugins/3MFReader/WorkspaceDialog.py index 15650b5164..afa1deecfd 100644 --- a/plugins/3MFReader/WorkspaceDialog.py +++ b/plugins/3MFReader/WorkspaceDialog.py @@ -67,7 +67,7 @@ class WorkspaceDialog(QObject): self._plugin_registry: PluginRegistry = CuraApplication.getInstance().getPluginRegistry() self._install_missing_package_dialog: Optional[QObject] = None self._is_abstract_machine = False - self._is_online_machine = False + self._is_networked_machine = False machineConflictChanged = pyqtSignal() qualityChangesConflictChanged = pyqtSignal() @@ -182,11 +182,11 @@ class WorkspaceDialog(QObject): @pyqtProperty(bool, notify = isNetworkedChanged) def isNetworked(self) -> bool: - return self._is_online_machine + return self._is_networked_machine @pyqtSlot(bool) - def setIsNetworkedMachine(self, is_online_machine: bool) -> None: - self._is_online_machine = is_online_machine + def setIsNetworkedMachine(self, is_networked_machine: bool) -> None: + self._is_networked_machine = is_networked_machine self.isNetworkedChanged.emit() @pyqtProperty(str, notify=qualityTypeChanged) From 28862c89e58b7a45f710b5931ab8ce283ba7dfe0 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Tue, 15 Nov 2022 15:03:23 +0100 Subject: [PATCH 138/161] Show online badge and printer icon when initially loading machine selector CURA-9424 --- plugins/3MFReader/ThreeMFWorkspaceReader.py | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/3MFReader/ThreeMFWorkspaceReader.py b/plugins/3MFReader/ThreeMFWorkspaceReader.py index f810ff58e5..8db6334552 100755 --- a/plugins/3MFReader/ThreeMFWorkspaceReader.py +++ b/plugins/3MFReader/ThreeMFWorkspaceReader.py @@ -600,6 +600,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader): self._dialog.setActiveMode(active_mode) self._dialog.setUpdatableMachines(updatable_machines) self._dialog.setMachineName(machine_name) + self._dialog.setIsNetworkedMachine(existing_global_stack.hasNetworkedConnection()) self._dialog.setMachineToOverride(global_stack_id) self._dialog.setMaterialLabels(material_labels) self._dialog.setMachineType(machine_type) From a30fbf5a8f9367c10e4fe905b2c790d078fdda7f Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Tue, 15 Nov 2022 15:10:44 +0100 Subject: [PATCH 139/161] Disable connection status icon for drop down in WorkspaceDialog. It is not possible to display the correct status for LAN printers without making them the active printer anyway. CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 1 + resources/qml/PrinterSelector/MachineSelector.qml | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 2d9a7eba2d..8dcf1e8454 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -116,6 +116,7 @@ UM.Dialog isCloudRegistered: false isNetworkPrinter: manager.isNetworked isGroup: manager.isAbstractMachine + connectionStatus: "" minDropDownWidth: machineSelector.width diff --git a/resources/qml/PrinterSelector/MachineSelector.qml b/resources/qml/PrinterSelector/MachineSelector.qml index b8bacc8f36..b8b27049f6 100644 --- a/resources/qml/PrinterSelector/MachineSelector.qml +++ b/resources/qml/PrinterSelector/MachineSelector.qml @@ -33,7 +33,7 @@ Cura.ExpandablePopup property list buttons - readonly property string connectionStatus: { + property string connectionStatus: { if (isNetworkPrinter) { return "printer_connected" @@ -148,7 +148,7 @@ Cura.ExpandablePopup color: connectionStatus == "printer_cloud_not_available" ? UM.Theme.getColor("cloud_unavailable") : UM.Theme.getColor("primary") - visible: isNetworkPrinter || isCloudRegistered + visible: (isNetworkPrinter || isCloudRegistered) && source != "" // Make a themable circle in the background so we can change it in other themes Rectangle From dc65e801d09217ac1b1cb485e509a9eae35587c4 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Tue, 15 Nov 2022 15:35:16 +0100 Subject: [PATCH 140/161] Set machine `isAbractMachine` in workspace dialog initialisation --- plugins/3MFReader/ThreeMFWorkspaceReader.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/plugins/3MFReader/ThreeMFWorkspaceReader.py b/plugins/3MFReader/ThreeMFWorkspaceReader.py index 8db6334552..0163877e3a 100755 --- a/plugins/3MFReader/ThreeMFWorkspaceReader.py +++ b/plugins/3MFReader/ThreeMFWorkspaceReader.py @@ -9,6 +9,7 @@ from typing import cast, Dict, List, Optional, Tuple, Any, Set import xml.etree.ElementTree as ET +from UM.Util import parseBool from UM.Workspace.WorkspaceReader import WorkspaceReader from UM.Application import Application @@ -601,6 +602,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader): self._dialog.setUpdatableMachines(updatable_machines) self._dialog.setMachineName(machine_name) self._dialog.setIsNetworkedMachine(existing_global_stack.hasNetworkedConnection()) + self._dialog.setIsAbstractMachine(parseBool(existing_global_stack.getMetaDataEntry("is_abstract_machine", False))) self._dialog.setMachineToOverride(global_stack_id) self._dialog.setMaterialLabels(material_labels) self._dialog.setMachineType(machine_type) From 156004cb17eea83ba5c8ab9e24798b1bfa36b9af Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Wed, 16 Nov 2022 16:11:19 +0100 Subject: [PATCH 141/161] Move logic for deciding the initially selected printer that was inside WorkspaceDialog.qml before into WorkspaceDialog.py. A block of code is run after dialog.show() and most of the dialog assignment. This is because dialog.show() resets the _result dictionary, we want to update the values in _result afterwards. CURA-9424 --- plugins/3MFReader/ThreeMFWorkspaceReader.py | 32 ++++++++++++++++++--- plugins/3MFReader/WorkspaceDialog.qml | 7 ++--- 2 files changed, 31 insertions(+), 8 deletions(-) diff --git a/plugins/3MFReader/ThreeMFWorkspaceReader.py b/plugins/3MFReader/ThreeMFWorkspaceReader.py index 0163877e3a..20bb7c8e2e 100755 --- a/plugins/3MFReader/ThreeMFWorkspaceReader.py +++ b/plugins/3MFReader/ThreeMFWorkspaceReader.py @@ -600,9 +600,6 @@ class ThreeMFWorkspaceReader(WorkspaceReader): self._dialog.setNumUserSettings(num_user_settings) self._dialog.setActiveMode(active_mode) self._dialog.setUpdatableMachines(updatable_machines) - self._dialog.setMachineName(machine_name) - self._dialog.setIsNetworkedMachine(existing_global_stack.hasNetworkedConnection()) - self._dialog.setIsAbstractMachine(parseBool(existing_global_stack.getMetaDataEntry("is_abstract_machine", False))) self._dialog.setMachineToOverride(global_stack_id) self._dialog.setMaterialLabels(material_labels) self._dialog.setMachineType(machine_type) @@ -612,6 +609,33 @@ class ThreeMFWorkspaceReader(WorkspaceReader): self._dialog.setMissingPackagesMetadata(missing_package_metadata) self._dialog.show() + # Choosing the initially selected printer in MachineSelector + is_networked_machine = False + is_abstract_machine = False + if global_stack and isinstance(global_stack, GlobalStack): + # The machine included in the project file exists locally already, no need to change selected printers. + is_networked_machine = global_stack.hasNetworkedConnection() + is_abstract_machine = parseBool(existing_global_stack.getMetaDataEntry("is_abstract_machine", False)) + elif self._dialog.updatableMachinesModel.count > 0: + # The machine included in the project file does not exist. There is another machine of the same type. + # This will always default to an abstract machine first. + machine = self._dialog.updatableMachinesModel.getItem(0) + machine_name = machine["name"] + is_networked_machine = machine["isNetworked"] + is_abstract_machine = machine["isAbstractMachine"] + self._dialog.setResolveStrategy("machine", "override") + self._dialog.setMachineToOverride(machine["id"]) + else: + # The machine included in the project file does not exist. There are no other printers of the same type. Default to "Create New". + machine_name = i18n_catalog.i18nc("@button", "Create new") + self._dialog.setIsAbstractMachine(False) + self._dialog.setIsNetworkedMachine(False) + self._dialog.setResolveStrategy("machine", "new") + + self._dialog.setIsNetworkedMachine(is_networked_machine) + self._dialog.setIsAbstractMachine(is_abstract_machine) + self._dialog.setMachineName(machine_name) + # Block until the dialog is closed. self._dialog.waitForClose() @@ -674,7 +698,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader): temp_preferences = Preferences() try: serialized = archive.open("Cura/preferences.cfg").read().decode("utf-8") - except KeyError: + except KeyError as e: # If there is no preferences file, it's not a workspace, so notify user of failure. Logger.log("w", "File %s is not a valid workspace.", file_name) message = Message(i18n_catalog.i18nc("@info:error Don't translate the XML tags or !", diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 8dcf1e8454..221696a571 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -129,12 +129,11 @@ UM.Dialog width: parent.width - leftPadding * 1.5 onClicked: { + toggleContent() + manager.setResolveStrategy("machine", "new") machineSelector.machineName = catalog.i18nc("@button", "Create new") manager.setIsAbstractMachine(false) manager.setIsNetworkedMachine(false) - - toggleContent() - manager.setResolveStrategy("machine", "new") } } ] @@ -142,11 +141,11 @@ UM.Dialog onSelectPrinter: function(machine) { toggleContent(); + machineSelector.machineName = machine.name manager.setResolveStrategy("machine", "override") manager.setMachineToOverride(machine.id) manager.setIsAbstractMachine(machine.isAbstractMachine) manager.setIsNetworkedMachine(machine.isNetworked) - machineSelector.machineName = machine.name } } } From 957c25973b0fe57dde7bb16e960a7205e80407f4 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Wed, 16 Nov 2022 16:39:14 +0100 Subject: [PATCH 142/161] Specify to build installer per-OS. Exclusion happens _before_ additional includes unfortunaltely, so the matrix is back to being a plain list if OS's. This also means that, if we don't want to build each OS x OS_id, we have to put that information somewhere else. OS_id didn't really belong in the matrix anyway, since it's a derivative value. It's now replaced with a named environment variable. The way to exclude and select the 'name' used in the filename for each OS seems a little cumbersome, but I didn't find any better way so far. (should) implement the 'easy', 'lite' version of CURA-9880 --- .github/workflows/conan-package.yml | 3 ++ .github/workflows/cura-installer.yml | 43 +++++++++++++++++++++------- 2 files changed, 35 insertions(+), 11 deletions(-) diff --git a/.github/workflows/conan-package.yml b/.github/workflows/conan-package.yml index f88f815139..11809f65d4 100644 --- a/.github/workflows/conan-package.yml +++ b/.github/workflows/conan-package.yml @@ -12,14 +12,17 @@ on: create_binaries_windows: required: true default: false + type: boolean description: 'create binaries Windows' create_binaries_linux: required: true default: false + type: boolean description: 'create binaries Linux' create_binaries_macos: required: true default: false + type: boolean description: 'create binaries Macos' push: diff --git a/.github/workflows/cura-installer.yml b/.github/workflows/cura-installer.yml index d0f9fb895e..b1a021b40c 100644 --- a/.github/workflows/cura-installer.yml +++ b/.github/workflows/cura-installer.yml @@ -31,6 +31,21 @@ on: required: true default: true type: boolean + create_binaries_windows: + description: 'Installer for Windows' + required: true + default: true + type: boolean + create_binaries_linux: + description: 'Installer for Linux' + required: true + default: true + type: boolean + create_binaries_macos: + description: 'Installer for MacOs' + required: true + default: true + type: boolean # Run the nightly at 3:25 UTC on working days #FIXME: Provide the same default values as the workflow dispatch @@ -56,6 +71,7 @@ env: CURA_CONAN_VERSION: ${{ inputs.cura_conan_version }} ENTERPRISE: ${{ inputs.enterprise }} STAGING: ${{ inputs.staging }} + OS_NAME: 'unknown-os' jobs: cura-installer-create: @@ -64,16 +80,21 @@ jobs: strategy: fail-fast: false matrix: - include: - - { os: macos-11, os_id: 'mac' } - - { os: windows-2022, os_id: 'win64' } - - { os: ubuntu-20.04, os_id: 'linux' } - - { os: ubuntu-22.04, os_id: 'linux-modern' } + os: [macos-11, windows-2022, ubuntu-20.04, ubuntu-22.04] + exclude: + - os: ${{ inputs.create_binaries_macos && '' || 'macos-11' }} + - os: ${{ inputs.create_binaries_windows && '' || 'windows-2022' }} + - os: ${{ inputs.create_binaries_linux && '' || 'ubuntu-20.04' }} + - os: ${{ inputs.create_binaries_linux && '' || 'ubuntu-22.04' }} steps: - name: Checkout uses: actions/checkout@v3 + - name: Get OS-id String + run: | + echo "OS_NAME=${{ (matrix.os == 'macos-11' && 'mac') || (matrix.os == 'windows-2022' && 'win64') || (matrix.os == 'ubuntu-20.04' && 'linux') || (matrix.os == 'ubuntu-22.04' && 'linux-modern') || matrix.os }}" >> $GITHUB_ENV + - name: Setup Python and pip uses: actions/setup-python@v4 with: @@ -217,34 +238,34 @@ jobs: - name: Archive the artifacts (bash) if: ${{ github.event.inputs.installer == 'false' && runner.os != 'Windows' }} - run: tar -zcf "./Ultimaker-Cura-$CURA_VERSION_FULL-${{ matrix.os_id }}.tar.gz" "./Ultimaker-Cura/" + run: tar -zcf "./Ultimaker-Cura-$CURA_VERSION_FULL-${{ env.OS_NAME }}.tar.gz" "./Ultimaker-Cura/" working-directory: dist - name: Archive the artifacts (Powershell) if: ${{ github.event.inputs.installer == 'false' && runner.os == 'Windows' }} - run: Compress-Archive -Path ".\Ultimaker-Cura" -DestinationPath ".\Ultimaker-Cura-$Env:CURA_VERSION_FULL-${{ matrix.os_id }}.zip" + run: Compress-Archive -Path ".\Ultimaker-Cura" -DestinationPath ".\Ultimaker-Cura-$Env:CURA_VERSION_FULL-${{ env.OS_NAME }}.zip" working-directory: dist - name: Create the Windows exe installer (Powershell) if: ${{ github.event.inputs.installer == 'true' && runner.os == 'Windows' }} run: | - python ..\cura_inst\packaging\NSIS\create_windows_installer.py ../cura_inst . "Ultimaker-Cura-$Env:CURA_VERSION_FULL-${{ matrix.os_id }}.exe" + python ..\cura_inst\packaging\NSIS\create_windows_installer.py ../cura_inst . "Ultimaker-Cura-$Env:CURA_VERSION_FULL-${{ env.OS_NAME }}.exe" working-directory: dist - name: Create the Linux AppImage (Bash) if: ${{ github.event.inputs.installer == 'true' && runner.os == 'Linux' }} - run: python ../cura_inst/packaging/AppImage/create_appimage.py ./Ultimaker-Cura $CURA_VERSION_FULL "Ultimaker-Cura-$CURA_VERSION_FULL-${{ matrix.os_id }}.AppImage" + run: python ../cura_inst/packaging/AppImage/create_appimage.py ./Ultimaker-Cura $CURA_VERSION_FULL "Ultimaker-Cura-$CURA_VERSION_FULL-${{ env.OS_NAME }}.AppImage" working-directory: dist - name: Create the MacOS dmg (Bash) if: ${{ github.event.inputs.installer == 'true' && runner.os == 'Macos' }} - run: python ../cura_inst/packaging/dmg/dmg_sign_noterize.py ../cura_inst . "Ultimaker-Cura-$CURA_VERSION_FULL-${{ matrix.os_id }}.dmg" + run: python ../cura_inst/packaging/dmg/dmg_sign_noterize.py ../cura_inst . "Ultimaker-Cura-$CURA_VERSION_FULL-${{ env.OS_NAME }}.dmg" working-directory: dist - name: Upload the artifacts uses: actions/upload-artifact@v3 with: - name: Ultimaker-Cura-${{ env.CURA_VERSION_FULL }}-${{ matrix.os_id }} + name: Ultimaker-Cura-${{ env.CURA_VERSION_FULL }}-${{ env.OS_NAME }} path: | dist/*.tar.gz dist/*.zip From b0160b2d86effc6d7f119c62d676fef01c3a520a Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Wed, 16 Nov 2022 19:36:26 +0100 Subject: [PATCH 143/161] Revert "Specify to build installer per-OS." This reverts commit 957c25973b0fe57dde7bb16e960a7205e80407f4. --- .github/workflows/conan-package.yml | 3 -- .github/workflows/cura-installer.yml | 43 +++++++--------------------- 2 files changed, 11 insertions(+), 35 deletions(-) diff --git a/.github/workflows/conan-package.yml b/.github/workflows/conan-package.yml index 11809f65d4..f88f815139 100644 --- a/.github/workflows/conan-package.yml +++ b/.github/workflows/conan-package.yml @@ -12,17 +12,14 @@ on: create_binaries_windows: required: true default: false - type: boolean description: 'create binaries Windows' create_binaries_linux: required: true default: false - type: boolean description: 'create binaries Linux' create_binaries_macos: required: true default: false - type: boolean description: 'create binaries Macos' push: diff --git a/.github/workflows/cura-installer.yml b/.github/workflows/cura-installer.yml index b1a021b40c..d0f9fb895e 100644 --- a/.github/workflows/cura-installer.yml +++ b/.github/workflows/cura-installer.yml @@ -31,21 +31,6 @@ on: required: true default: true type: boolean - create_binaries_windows: - description: 'Installer for Windows' - required: true - default: true - type: boolean - create_binaries_linux: - description: 'Installer for Linux' - required: true - default: true - type: boolean - create_binaries_macos: - description: 'Installer for MacOs' - required: true - default: true - type: boolean # Run the nightly at 3:25 UTC on working days #FIXME: Provide the same default values as the workflow dispatch @@ -71,7 +56,6 @@ env: CURA_CONAN_VERSION: ${{ inputs.cura_conan_version }} ENTERPRISE: ${{ inputs.enterprise }} STAGING: ${{ inputs.staging }} - OS_NAME: 'unknown-os' jobs: cura-installer-create: @@ -80,21 +64,16 @@ jobs: strategy: fail-fast: false matrix: - os: [macos-11, windows-2022, ubuntu-20.04, ubuntu-22.04] - exclude: - - os: ${{ inputs.create_binaries_macos && '' || 'macos-11' }} - - os: ${{ inputs.create_binaries_windows && '' || 'windows-2022' }} - - os: ${{ inputs.create_binaries_linux && '' || 'ubuntu-20.04' }} - - os: ${{ inputs.create_binaries_linux && '' || 'ubuntu-22.04' }} + include: + - { os: macos-11, os_id: 'mac' } + - { os: windows-2022, os_id: 'win64' } + - { os: ubuntu-20.04, os_id: 'linux' } + - { os: ubuntu-22.04, os_id: 'linux-modern' } steps: - name: Checkout uses: actions/checkout@v3 - - name: Get OS-id String - run: | - echo "OS_NAME=${{ (matrix.os == 'macos-11' && 'mac') || (matrix.os == 'windows-2022' && 'win64') || (matrix.os == 'ubuntu-20.04' && 'linux') || (matrix.os == 'ubuntu-22.04' && 'linux-modern') || matrix.os }}" >> $GITHUB_ENV - - name: Setup Python and pip uses: actions/setup-python@v4 with: @@ -238,34 +217,34 @@ jobs: - name: Archive the artifacts (bash) if: ${{ github.event.inputs.installer == 'false' && runner.os != 'Windows' }} - run: tar -zcf "./Ultimaker-Cura-$CURA_VERSION_FULL-${{ env.OS_NAME }}.tar.gz" "./Ultimaker-Cura/" + run: tar -zcf "./Ultimaker-Cura-$CURA_VERSION_FULL-${{ matrix.os_id }}.tar.gz" "./Ultimaker-Cura/" working-directory: dist - name: Archive the artifacts (Powershell) if: ${{ github.event.inputs.installer == 'false' && runner.os == 'Windows' }} - run: Compress-Archive -Path ".\Ultimaker-Cura" -DestinationPath ".\Ultimaker-Cura-$Env:CURA_VERSION_FULL-${{ env.OS_NAME }}.zip" + run: Compress-Archive -Path ".\Ultimaker-Cura" -DestinationPath ".\Ultimaker-Cura-$Env:CURA_VERSION_FULL-${{ matrix.os_id }}.zip" working-directory: dist - name: Create the Windows exe installer (Powershell) if: ${{ github.event.inputs.installer == 'true' && runner.os == 'Windows' }} run: | - python ..\cura_inst\packaging\NSIS\create_windows_installer.py ../cura_inst . "Ultimaker-Cura-$Env:CURA_VERSION_FULL-${{ env.OS_NAME }}.exe" + python ..\cura_inst\packaging\NSIS\create_windows_installer.py ../cura_inst . "Ultimaker-Cura-$Env:CURA_VERSION_FULL-${{ matrix.os_id }}.exe" working-directory: dist - name: Create the Linux AppImage (Bash) if: ${{ github.event.inputs.installer == 'true' && runner.os == 'Linux' }} - run: python ../cura_inst/packaging/AppImage/create_appimage.py ./Ultimaker-Cura $CURA_VERSION_FULL "Ultimaker-Cura-$CURA_VERSION_FULL-${{ env.OS_NAME }}.AppImage" + run: python ../cura_inst/packaging/AppImage/create_appimage.py ./Ultimaker-Cura $CURA_VERSION_FULL "Ultimaker-Cura-$CURA_VERSION_FULL-${{ matrix.os_id }}.AppImage" working-directory: dist - name: Create the MacOS dmg (Bash) if: ${{ github.event.inputs.installer == 'true' && runner.os == 'Macos' }} - run: python ../cura_inst/packaging/dmg/dmg_sign_noterize.py ../cura_inst . "Ultimaker-Cura-$CURA_VERSION_FULL-${{ env.OS_NAME }}.dmg" + run: python ../cura_inst/packaging/dmg/dmg_sign_noterize.py ../cura_inst . "Ultimaker-Cura-$CURA_VERSION_FULL-${{ matrix.os_id }}.dmg" working-directory: dist - name: Upload the artifacts uses: actions/upload-artifact@v3 with: - name: Ultimaker-Cura-${{ env.CURA_VERSION_FULL }}-${{ env.OS_NAME }} + name: Ultimaker-Cura-${{ env.CURA_VERSION_FULL }}-${{ matrix.os_id }} path: | dist/*.tar.gz dist/*.zip From 70f7f68a517dfaa2878cf5ae6e0f76b027eebf3f Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Thu, 17 Nov 2022 13:01:20 +0100 Subject: [PATCH 144/161] Color icons in workspace dialog so they are themed correctly in dark mode. Don't show name when defaulting to create new printer. CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 2 +- plugins/3MFReader/WorkspaceSection.qml | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 221696a571..c0128ab4de 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -96,7 +96,7 @@ UM.Dialog WorkspaceRow { leftLabelText: catalog.i18nc("@action:label", manager.isPrinterGroup ? "Printer Group" : "Printer Name") - rightLabelText: manager.machineName + rightLabelText: manager.machineName == "Create new" ? "" : manager.machineName } } diff --git a/plugins/3MFReader/WorkspaceSection.qml b/plugins/3MFReader/WorkspaceSection.qml index 6eb8f50bdf..0c94ab5d6a 100644 --- a/plugins/3MFReader/WorkspaceSection.qml +++ b/plugins/3MFReader/WorkspaceSection.qml @@ -36,6 +36,7 @@ Item anchors.verticalCenter: parent.verticalCenter source: "" height: UM.Theme.getSize("medium_button_icon").height + color: UM.Theme.getColor("text") width: height } UM.Label @@ -95,6 +96,7 @@ Item visible: comboboxTooltipText != "" source: UM.Theme.getIcon("Help") + color: UM.Theme.getColor("text") UM.ToolTip { From 9774349cb7ed638777ced098565312c41ce6a052 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Thu, 17 Nov 2022 13:03:17 +0100 Subject: [PATCH 145/161] Make add printer component more responsive For some displays/screen resolutions the cut is expended beyond the borders of the window. By making the component more responsive this should be fixed. CURA-9894 --- .../qml/WelcomePages/AddUltimakerPrinter.qml | 33 +++++++++++-------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/resources/qml/WelcomePages/AddUltimakerPrinter.qml b/resources/qml/WelcomePages/AddUltimakerPrinter.qml index f175942e06..d3e29dca8a 100644 --- a/resources/qml/WelcomePages/AddUltimakerPrinter.qml +++ b/resources/qml/WelcomePages/AddUltimakerPrinter.qml @@ -26,6 +26,7 @@ Control contentItem: ColumnLayout { + Layout.fillWidth: true UM.Label { Layout.fillWidth: true @@ -36,24 +37,33 @@ Control RowLayout { Layout.alignment: Qt.AlignHCenter + Layout.fillWidth: true - Image + Item { - source: UM.Theme.getImage("add_printer") - Layout.preferredWidth: 200 * screenScaleFactor - Layout.preferredHeight: 200 * screenScaleFactor + Layout.fillWidth: true + Layout.minimumWidth: childrenRect.width + Layout.preferredHeight: childrenRect.height + + Image + { + anchors.right: parent.right + source: UM.Theme.getImage("add_printer") + Layout.preferredWidth: 200 * screenScaleFactor + Layout.preferredHeight: 200 * screenScaleFactor + } } ColumnLayout { Layout.fillHeight: true - Layout.fillWidth: false + Layout.fillWidth: true Layout.alignment: Qt.AlignVCenter spacing: UM.Theme.getSize("default_margin").height UM.Label { - Layout.fillWidth: false + Layout.fillWidth: true Layout.alignment: Qt.AlignTop wrapMode: Text.WordWrap font: UM.Theme.getFont("default_bold") @@ -63,12 +73,7 @@ Control ColumnLayout { spacing: 0 - - FontMetrics - { - id: fontMetrics - font: UM.Theme.getFont("default") - } + Layout.fillWidth: true Repeater { model: [ @@ -79,8 +84,8 @@ Control UM.Label { Layout.alignment: Qt.AlignTop - font: fontMetrics.font - Layout.preferredHeight: fontMetrics.height + Layout.fillWidth: true + wrapMode: Text.WordWrap text: `${index + 1}. ${modelData}` } } From da71983891cc6756da85ef757d3fdd1a949d9b48 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Thu, 17 Nov 2022 14:41:14 +0100 Subject: [PATCH 146/161] Make combobox font and padding customizable. Style WorkspaceDialog comboboxes similar to MachineSelector CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 22 ++++++++++++++++++++++ resources/qml/RoundedRectangle.qml | 1 + resources/qml/Widgets/ComboBox.qml | 8 ++++++-- 3 files changed, 29 insertions(+), 2 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index c0128ab4de..cb93aec37e 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -195,6 +195,17 @@ UM.Dialog model: resolveStrategiesModel textRole: "label" visible: manager.qualityChangesConflict + contentLeftPadding: UM.Theme.getSize("default_margin").width + textFont: UM.Theme.getFont("medium") + + background: Cura.RoundedRectangle + { + border.width: UM.Theme.getSize("default_lining").width + border.color: UM.Theme.getColor("lining") + color: qualityChangesResolveComboBox.hovered ? UM.Theme.getColor("expandable_hover") : UM.Theme.getColor("action_button") + cornerSide: Cura.RoundedRectangle.Direction.All + radius: UM.Theme.getSize("default_radius").width + } // This is a hack. This will trigger onCurrentIndexChanged and set the index when this component in loaded currentIndex: @@ -238,6 +249,17 @@ UM.Dialog model: resolveStrategiesModel textRole: "label" visible: manager.materialConflict + contentLeftPadding: UM.Theme.getSize("default_margin").width + textFont: UM.Theme.getFont("medium") + + background: Cura.RoundedRectangle + { + border.width: UM.Theme.getSize("default_lining").width + border.color: UM.Theme.getColor("lining") + color: materialResolveComboBox.hovered ? UM.Theme.getColor("expandable_hover") : UM.Theme.getColor("action_button") + cornerSide: Cura.RoundedRectangle.Direction.All + radius: UM.Theme.getSize("default_radius").width + } // This is a hack. This will trigger onCurrentIndexChanged and set the index when this component in loaded currentIndex: diff --git a/resources/qml/RoundedRectangle.qml b/resources/qml/RoundedRectangle.qml index 3ca05e2125..86f7214654 100644 --- a/resources/qml/RoundedRectangle.qml +++ b/resources/qml/RoundedRectangle.qml @@ -1,3 +1,4 @@ + import QtQuick 2.7 import UM 1.2 as UM diff --git a/resources/qml/Widgets/ComboBox.qml b/resources/qml/Widgets/ComboBox.qml index 06ac2425bb..efe14497bc 100644 --- a/resources/qml/Widgets/ComboBox.qml +++ b/resources/qml/Widgets/ComboBox.qml @@ -20,6 +20,8 @@ ComboBox property alias textFormat: contentLabel.textFormat property alias backgroundColor: background.color property bool forceHighlight: false + property int contentLeftPadding: UM.Theme.getSize("setting_unit_margin").width + property var textFont: UM.Theme.getFont("default") enabled: delegateModel.count > 0 @@ -104,9 +106,10 @@ ComboBox contentItem: UM.Label { id: contentLabel - leftPadding: UM.Theme.getSize("setting_unit_margin").width + UM.Theme.getSize("default_margin").width + leftPadding: contentLeftPadding + UM.Theme.getSize("default_margin").width anchors.right: downArrow.left wrapMode: Text.NoWrap + font: textFont text: { if (control.delegateModel.count == 0) @@ -176,11 +179,12 @@ ComboBox id: delegateLabel // FIXME: Somehow the top/bottom anchoring is not correct on Linux and it results in invisible texts. anchors.fill: parent - anchors.leftMargin: UM.Theme.getSize("setting_unit_margin").width + anchors.leftMargin: contentLeftPadding anchors.rightMargin: UM.Theme.getSize("setting_unit_margin").width text: delegateItem.text textFormat: control.textFormat + font: textFont color: UM.Theme.getColor("setting_control_text") elide: Text.ElideRight wrapMode: Text.NoWrap From 4d2f6b9655dd4cecf9eef0f1f808b05e3b500d28 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Thu, 17 Nov 2022 16:21:57 +0100 Subject: [PATCH 147/161] Previously there would always be one item in the updateableMachinesModel ("Create new"). This was moved to a button instead of being part of the model. This fixes new machines being incorrectly created when a machine already exists. CURA-9424 --- plugins/3MFReader/ThreeMFWorkspaceReader.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/plugins/3MFReader/ThreeMFWorkspaceReader.py b/plugins/3MFReader/ThreeMFWorkspaceReader.py index 20bb7c8e2e..de3274efff 100755 --- a/plugins/3MFReader/ThreeMFWorkspaceReader.py +++ b/plugins/3MFReader/ThreeMFWorkspaceReader.py @@ -616,6 +616,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader): # The machine included in the project file exists locally already, no need to change selected printers. is_networked_machine = global_stack.hasNetworkedConnection() is_abstract_machine = parseBool(existing_global_stack.getMetaDataEntry("is_abstract_machine", False)) + self._dialog.setMachineToOverride(global_stack.getId()) elif self._dialog.updatableMachinesModel.count > 0: # The machine included in the project file does not exist. There is another machine of the same type. # This will always default to an abstract machine first. @@ -630,6 +631,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader): machine_name = i18n_catalog.i18nc("@button", "Create new") self._dialog.setIsAbstractMachine(False) self._dialog.setIsNetworkedMachine(False) + self._dialog.setMachineToOverride(None) self._dialog.setResolveStrategy("machine", "new") self._dialog.setIsNetworkedMachine(is_networked_machine) @@ -730,7 +732,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader): application.expandedCategoriesChanged.emit() # Notify the GUI of the change # If there are no machines of the same type, create a new machine. - if self._resolve_strategies["machine"] != "override" or self._dialog.updatableMachinesModel.count <= 1: + if self._resolve_strategies["machine"] != "override" or self._dialog.updatableMachinesModel.count == 0: # We need to create a new machine machine_name = self._container_registry.uniqueName(self._machine_info.name) From ff61097f13036044f407c6fd68405938697ebee0 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Thu, 17 Nov 2022 16:37:14 +0100 Subject: [PATCH 148/161] Update resources/qml/RoundedRectangle.qml Co-authored-by: Casper Lamboo --- resources/qml/RoundedRectangle.qml | 1 - 1 file changed, 1 deletion(-) diff --git a/resources/qml/RoundedRectangle.qml b/resources/qml/RoundedRectangle.qml index 86f7214654..3ca05e2125 100644 --- a/resources/qml/RoundedRectangle.qml +++ b/resources/qml/RoundedRectangle.qml @@ -1,4 +1,3 @@ - import QtQuick 2.7 import UM 1.2 as UM From d286f50fe9428f247e4bae420a7747aa21b80029 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Thu, 17 Nov 2022 16:39:59 +0100 Subject: [PATCH 149/161] Check for translated string CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index cb93aec37e..0dfa7d4e8c 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -96,7 +96,7 @@ UM.Dialog WorkspaceRow { leftLabelText: catalog.i18nc("@action:label", manager.isPrinterGroup ? "Printer Group" : "Printer Name") - rightLabelText: manager.machineName == "Create new" ? "" : manager.machineName + rightLabelText: manager.machineName == catalog.i18nc("@button", "Create new") ? "" : manager.machineName } } From dd510a5dfcfbaa41e2311bdb22a860712d3bed5e Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Thu, 17 Nov 2022 16:58:16 +0100 Subject: [PATCH 150/161] Cleanup CURA-9424 --- plugins/3MFReader/ThreeMFWorkspaceReader.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/plugins/3MFReader/ThreeMFWorkspaceReader.py b/plugins/3MFReader/ThreeMFWorkspaceReader.py index de3274efff..554309d648 100755 --- a/plugins/3MFReader/ThreeMFWorkspaceReader.py +++ b/plugins/3MFReader/ThreeMFWorkspaceReader.py @@ -600,7 +600,6 @@ class ThreeMFWorkspaceReader(WorkspaceReader): self._dialog.setNumUserSettings(num_user_settings) self._dialog.setActiveMode(active_mode) self._dialog.setUpdatableMachines(updatable_machines) - self._dialog.setMachineToOverride(global_stack_id) self._dialog.setMaterialLabels(material_labels) self._dialog.setMachineType(machine_type) self._dialog.setExtruders(extruders) @@ -617,6 +616,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader): is_networked_machine = global_stack.hasNetworkedConnection() is_abstract_machine = parseBool(existing_global_stack.getMetaDataEntry("is_abstract_machine", False)) self._dialog.setMachineToOverride(global_stack.getId()) + self._dialog.setResolveStrategy("machine", "override") elif self._dialog.updatableMachinesModel.count > 0: # The machine included in the project file does not exist. There is another machine of the same type. # This will always default to an abstract machine first. @@ -624,13 +624,13 @@ class ThreeMFWorkspaceReader(WorkspaceReader): machine_name = machine["name"] is_networked_machine = machine["isNetworked"] is_abstract_machine = machine["isAbstractMachine"] - self._dialog.setResolveStrategy("machine", "override") self._dialog.setMachineToOverride(machine["id"]) + self._dialog.setResolveStrategy("machine", "override") else: # The machine included in the project file does not exist. There are no other printers of the same type. Default to "Create New". machine_name = i18n_catalog.i18nc("@button", "Create new") - self._dialog.setIsAbstractMachine(False) - self._dialog.setIsNetworkedMachine(False) + is_networked_machine = False + is_abstract_machine = False self._dialog.setMachineToOverride(None) self._dialog.setResolveStrategy("machine", "new") @@ -732,6 +732,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader): application.expandedCategoriesChanged.emit() # Notify the GUI of the change # If there are no machines of the same type, create a new machine. + print(self._resolve_strategies) if self._resolve_strategies["machine"] != "override" or self._dialog.updatableMachinesModel.count == 0: # We need to create a new machine machine_name = self._container_registry.uniqueName(self._machine_info.name) @@ -742,6 +743,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader): # the other extruders. machine_extruder_count = self._getMachineExtruderCount() # type: Optional[int] global_stack = CuraStackBuilder.createMachine(machine_name, self._machine_info.definition_id, machine_extruder_count) + print(f"Created Global Stack: {global_stack}") if global_stack: # Only switch if creating the machine was successful. extruder_stack_dict = {str(position): extruder for position, extruder in enumerate(global_stack.extruderList)} From 1d1800e440bcc726d5fecf0cfc3fa646c281f54b Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Thu, 17 Nov 2022 17:03:05 +0100 Subject: [PATCH 151/161] Remove print statements CURA-9424 --- plugins/3MFReader/ThreeMFWorkspaceReader.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/plugins/3MFReader/ThreeMFWorkspaceReader.py b/plugins/3MFReader/ThreeMFWorkspaceReader.py index 554309d648..c839c46e7c 100755 --- a/plugins/3MFReader/ThreeMFWorkspaceReader.py +++ b/plugins/3MFReader/ThreeMFWorkspaceReader.py @@ -732,7 +732,6 @@ class ThreeMFWorkspaceReader(WorkspaceReader): application.expandedCategoriesChanged.emit() # Notify the GUI of the change # If there are no machines of the same type, create a new machine. - print(self._resolve_strategies) if self._resolve_strategies["machine"] != "override" or self._dialog.updatableMachinesModel.count == 0: # We need to create a new machine machine_name = self._container_registry.uniqueName(self._machine_info.name) @@ -743,7 +742,6 @@ class ThreeMFWorkspaceReader(WorkspaceReader): # the other extruders. machine_extruder_count = self._getMachineExtruderCount() # type: Optional[int] global_stack = CuraStackBuilder.createMachine(machine_name, self._machine_info.definition_id, machine_extruder_count) - print(f"Created Global Stack: {global_stack}") if global_stack: # Only switch if creating the machine was successful. extruder_stack_dict = {str(position): extruder for position, extruder in enumerate(global_stack.extruderList)} From 6d810ccb9d18c3346ee2562cfa5386649c3440c6 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Thu, 17 Nov 2022 17:52:48 +0100 Subject: [PATCH 152/161] Split up installer workflow per OS. This requires a separate action to be run per OS, as there is no real way to have conditional lists within YML. The idea is that the installer can be build per OS (and also, another intent of this change is to make it so that people don't have to wait for all artifacts to be ready to download a single one). part of CURA-9880 --- .github/workflows/cura-all-installers.yml | 105 ++++++++++++++++++++++ .github/workflows/cura-installer.yml | 40 ++++----- 2 files changed, 122 insertions(+), 23 deletions(-) create mode 100644 .github/workflows/cura-all-installers.yml diff --git a/.github/workflows/cura-all-installers.yml b/.github/workflows/cura-all-installers.yml new file mode 100644 index 0000000000..a0c716d123 --- /dev/null +++ b/.github/workflows/cura-all-installers.yml @@ -0,0 +1,105 @@ +name: Cura All Installers +run-name: ${{ inputs.cura_conan_version }} by @${{ github.actor }} + +on: + workflow_dispatch: + inputs: + cura_conan_version: + description: 'Cura Conan Version' + default: 'cura/latest@ultimaker/testing' + required: true + conan_args: + description: 'Conan args: eq.: --require-override' + default: '' + required: false + conan_config: + description: 'Conan config branch to use' + default: '' + required: false + enterprise: + description: 'Build Cura as an Enterprise edition' + required: true + default: false + type: boolean + staging: + description: 'Use staging API' + required: true + default: false + type: boolean + installer: + description: 'Create the installer' + required: true + default: true + type: boolean + build_windows: + description: 'Build for Windows' + required: true + default: true + type: boolean + build_linux: + description: 'Build for Linux' + required: true + default: true + type: boolean + build_macos: + description: 'Build for MacOs' + required: true + default: true + type: boolean + + # Run the nightly at 3:25 UTC on working days + schedule: + - cron: '25 3 * * 1-5' + +jobs: + windows-installer-create: + if: ${{ inputs.build_windows }} + uses: ./.github/workflows/cura-installer.yml + with: + platform: 'windows-2022' + os_name: 'win64' + cura_conan_version: ${{ inputs.cura_conan_version }} + conan_args: ${{ inputs.conan_args }} + conan_config: ${{ inputs.conan_config }} + enterprise: ${{ inputs.enterprise }} + staging: ${{ inputs.staging }} + installer: ${{ inputs.installer }} + + linux-installer-create: + if: ${{ inputs.build_linux }} + uses: ./.github/workflows/cura-installer.yml + with: + platform: 'ubuntu-20.04' + os_name: 'linux' + cura_conan_version: ${{ inputs.cura_conan_version }} + conan_args: ${{ inputs.conan_args }} + conan_config: ${{ inputs.conan_config }} + enterprise: ${{ inputs.enterprise }} + staging: ${{ inputs.staging }} + installer: ${{ inputs.installer }} + + linux-modern-installer-create: + if: ${{ inputs.build_linux }} + uses: ./.github/workflows/cura-installer.yml + with: + platform: 'ubuntu-22.04' + os_name: 'linux-modern' + cura_conan_version: ${{ inputs.cura_conan_version }} + conan_args: ${{ inputs.conan_args }} + conan_config: ${{ inputs.conan_config }} + enterprise: ${{ inputs.enterprise }} + staging: ${{ inputs.staging }} + installer: ${{ inputs.installer }} + + macos-installer-create: + if: ${{ inputs.build_macos }} + uses: ./.github/workflows/cura-installer.yml + with: + platform: 'macos-11' + os_name: 'mac' + cura_conan_version: ${{ inputs.cura_conan_version }} + conan_args: ${{ inputs.conan_args }} + conan_config: ${{ inputs.conan_config }} + enterprise: ${{ inputs.enterprise }} + staging: ${{ inputs.staging }} + installer: ${{ inputs.installer }} diff --git a/.github/workflows/cura-installer.yml b/.github/workflows/cura-installer.yml index d0f9fb895e..9ad4a6d971 100644 --- a/.github/workflows/cura-installer.yml +++ b/.github/workflows/cura-installer.yml @@ -1,9 +1,17 @@ name: Cura Installer -run-name: ${{ inputs.cura_conan_version }} by @${{ github.actor }} +run-name: ${{ inputs.cura_conan_version }} for ${{ inputs.platform }} by @${{ github.actor }} on: - workflow_dispatch: + workflow_call: inputs: + platform: + description: 'Selected Installer OS' + default: 'ubuntu-20.04' + required: true + os_name: + description: 'OS Friendly Name' + default: 'linux' + required: true cura_conan_version: description: 'Cura Conan Version' default: 'cura/latest@ultimaker/testing' @@ -32,11 +40,6 @@ on: default: true type: boolean - # Run the nightly at 3:25 UTC on working days - #FIXME: Provide the same default values as the workflow dispatch - schedule: - - cron: '25 3 * * 1-5' - env: CONAN_LOGIN_USERNAME_CURA: ${{ secrets.CONAN_USER }} CONAN_PASSWORD_CURA: ${{ secrets.CONAN_PASS }} @@ -59,16 +62,7 @@ env: jobs: cura-installer-create: - runs-on: ${{ matrix.os }} - - strategy: - fail-fast: false - matrix: - include: - - { os: macos-11, os_id: 'mac' } - - { os: windows-2022, os_id: 'win64' } - - { os: ubuntu-20.04, os_id: 'linux' } - - { os: ubuntu-22.04, os_id: 'linux-modern' } + runs-on: ${{ inputs.platform }} steps: - name: Checkout @@ -217,34 +211,34 @@ jobs: - name: Archive the artifacts (bash) if: ${{ github.event.inputs.installer == 'false' && runner.os != 'Windows' }} - run: tar -zcf "./Ultimaker-Cura-$CURA_VERSION_FULL-${{ matrix.os_id }}.tar.gz" "./Ultimaker-Cura/" + run: tar -zcf "./Ultimaker-Cura-$CURA_VERSION_FULL-${{ inputs.os_name }}.tar.gz" "./Ultimaker-Cura/" working-directory: dist - name: Archive the artifacts (Powershell) if: ${{ github.event.inputs.installer == 'false' && runner.os == 'Windows' }} - run: Compress-Archive -Path ".\Ultimaker-Cura" -DestinationPath ".\Ultimaker-Cura-$Env:CURA_VERSION_FULL-${{ matrix.os_id }}.zip" + run: Compress-Archive -Path ".\Ultimaker-Cura" -DestinationPath ".\Ultimaker-Cura-$Env:CURA_VERSION_FULL-${{ inputs.os_name }}.zip" working-directory: dist - name: Create the Windows exe installer (Powershell) if: ${{ github.event.inputs.installer == 'true' && runner.os == 'Windows' }} run: | - python ..\cura_inst\packaging\NSIS\create_windows_installer.py ../cura_inst . "Ultimaker-Cura-$Env:CURA_VERSION_FULL-${{ matrix.os_id }}.exe" + python ..\cura_inst\packaging\NSIS\create_windows_installer.py ../cura_inst . "Ultimaker-Cura-$Env:CURA_VERSION_FULL-${{ inputs.os_name }}.exe" working-directory: dist - name: Create the Linux AppImage (Bash) if: ${{ github.event.inputs.installer == 'true' && runner.os == 'Linux' }} - run: python ../cura_inst/packaging/AppImage/create_appimage.py ./Ultimaker-Cura $CURA_VERSION_FULL "Ultimaker-Cura-$CURA_VERSION_FULL-${{ matrix.os_id }}.AppImage" + run: python ../cura_inst/packaging/AppImage/create_appimage.py ./Ultimaker-Cura $CURA_VERSION_FULL "Ultimaker-Cura-$CURA_VERSION_FULL-${{ inputs.os_name }}.AppImage" working-directory: dist - name: Create the MacOS dmg (Bash) if: ${{ github.event.inputs.installer == 'true' && runner.os == 'Macos' }} - run: python ../cura_inst/packaging/dmg/dmg_sign_noterize.py ../cura_inst . "Ultimaker-Cura-$CURA_VERSION_FULL-${{ matrix.os_id }}.dmg" + run: python ../cura_inst/packaging/dmg/dmg_sign_noterize.py ../cura_inst . "Ultimaker-Cura-$CURA_VERSION_FULL-${{ inputs.os_name }}.dmg" working-directory: dist - name: Upload the artifacts uses: actions/upload-artifact@v3 with: - name: Ultimaker-Cura-${{ env.CURA_VERSION_FULL }}-${{ matrix.os_id }} + name: Ultimaker-Cura-${{ env.CURA_VERSION_FULL }}-${{ inputs.os_name }} path: | dist/*.tar.gz dist/*.zip From ccdc67712ab82ef90d4831505a2654aa7e4e2972 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Thu, 17 Nov 2022 18:04:25 +0100 Subject: [PATCH 153/161] Suddenly 'type' is required while previously it wasn't. Also attempt to standardize the ordering somewhat (description, default, required, type). part of CURA-9880 --- .github/workflows/cura-all-installers.yml | 15 +++++++++------ .github/workflows/cura-installer.yml | 11 ++++++++--- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/.github/workflows/cura-all-installers.yml b/.github/workflows/cura-all-installers.yml index a0c716d123..0347f72eaa 100644 --- a/.github/workflows/cura-all-installers.yml +++ b/.github/workflows/cura-all-installers.yml @@ -8,43 +8,46 @@ on: description: 'Cura Conan Version' default: 'cura/latest@ultimaker/testing' required: true + type: string conan_args: description: 'Conan args: eq.: --require-override' default: '' required: false + type: string conan_config: description: 'Conan config branch to use' default: '' required: false + type: string enterprise: description: 'Build Cura as an Enterprise edition' - required: true default: false + required: true type: boolean staging: description: 'Use staging API' - required: true default: false + required: true type: boolean installer: description: 'Create the installer' - required: true default: true + required: true type: boolean build_windows: description: 'Build for Windows' - required: true default: true + required: true type: boolean build_linux: description: 'Build for Linux' - required: true default: true + required: true type: boolean build_macos: description: 'Build for MacOs' - required: true default: true + required: true type: boolean # Run the nightly at 3:25 UTC on working days diff --git a/.github/workflows/cura-installer.yml b/.github/workflows/cura-installer.yml index 9ad4a6d971..8b1ea6e390 100644 --- a/.github/workflows/cura-installer.yml +++ b/.github/workflows/cura-installer.yml @@ -8,36 +8,41 @@ on: description: 'Selected Installer OS' default: 'ubuntu-20.04' required: true + type: string os_name: description: 'OS Friendly Name' default: 'linux' required: true + type: string cura_conan_version: description: 'Cura Conan Version' default: 'cura/latest@ultimaker/testing' required: true + type: string conan_args: description: 'Conan args: eq.: --require-override' default: '' required: false + type: string conan_config: description: 'Conan config branch to use' default: '' required: false + type: string enterprise: description: 'Build Cura as an Enterprise edition' - required: true default: false + required: true type: boolean staging: description: 'Use staging API' - required: true default: false + required: true type: boolean installer: description: 'Create the installer' - required: true default: true + required: true type: boolean env: From 3761f03ceaf875ac4fd8d677e2df206535a6639e Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Thu, 17 Nov 2022 18:26:45 +0100 Subject: [PATCH 154/161] Called workflow needs to inherit more information to run. part of CURA-9880 --- .github/workflows/cura-all-installers.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/cura-all-installers.yml b/.github/workflows/cura-all-installers.yml index 0347f72eaa..25f56063af 100644 --- a/.github/workflows/cura-all-installers.yml +++ b/.github/workflows/cura-all-installers.yml @@ -67,6 +67,7 @@ jobs: enterprise: ${{ inputs.enterprise }} staging: ${{ inputs.staging }} installer: ${{ inputs.installer }} + secrets: inherit linux-installer-create: if: ${{ inputs.build_linux }} @@ -80,6 +81,7 @@ jobs: enterprise: ${{ inputs.enterprise }} staging: ${{ inputs.staging }} installer: ${{ inputs.installer }} + secrets: inherit linux-modern-installer-create: if: ${{ inputs.build_linux }} @@ -93,6 +95,7 @@ jobs: enterprise: ${{ inputs.enterprise }} staging: ${{ inputs.staging }} installer: ${{ inputs.installer }} + secrets: inherit macos-installer-create: if: ${{ inputs.build_macos }} @@ -106,3 +109,4 @@ jobs: enterprise: ${{ inputs.enterprise }} staging: ${{ inputs.staging }} installer: ${{ inputs.installer }} + secrets: inherit From 73ac7fa7168b8ea6770ed7a277211fd68d6b8c94 Mon Sep 17 00:00:00 2001 From: jspijker Date: Fri, 18 Nov 2022 11:27:41 +0100 Subject: [PATCH 155/161] Fix get version form PR's --- .github/workflows/conan-recipe-version.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/conan-recipe-version.yml b/.github/workflows/conan-recipe-version.yml index e5b1af54f5..a0ea09c0f3 100644 --- a/.github/workflows/conan-recipe-version.yml +++ b/.github/workflows/conan-recipe-version.yml @@ -67,8 +67,7 @@ jobs: if: ${{ github.event.pull_request.head.repo.full_name != github.repository }} with: fetch-depth: 0 - ref: ${{ github.event.pull_request.head.ref }} - repository: ${{ github.event.pull_request.head.repo.full_name }} + ref: ${{ github.base_ref }} - name: Setup Python and pip uses: actions/setup-python@v4 From f60463a23776f4a88237936940df6faa10ea6bb8 Mon Sep 17 00:00:00 2001 From: Joey de l'Arago Date: Fri, 18 Nov 2022 11:33:00 +0100 Subject: [PATCH 156/161] Add left padding CURA-9424 --- plugins/3MFReader/WorkspaceDialog.qml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml index 0dfa7d4e8c..d1a000bae4 100644 --- a/plugins/3MFReader/WorkspaceDialog.qml +++ b/plugins/3MFReader/WorkspaceDialog.qml @@ -195,7 +195,7 @@ UM.Dialog model: resolveStrategiesModel textRole: "label" visible: manager.qualityChangesConflict - contentLeftPadding: UM.Theme.getSize("default_margin").width + contentLeftPadding: UM.Theme.getSize("default_margin").width + UM.Theme.getSize("narrow_margin").width textFont: UM.Theme.getFont("medium") background: Cura.RoundedRectangle @@ -249,7 +249,7 @@ UM.Dialog model: resolveStrategiesModel textRole: "label" visible: manager.materialConflict - contentLeftPadding: UM.Theme.getSize("default_margin").width + contentLeftPadding: UM.Theme.getSize("default_margin").width + UM.Theme.getSize("narrow_margin").width textFont: UM.Theme.getFont("medium") background: Cura.RoundedRectangle From cc36da86b10bbbd6d71cf6db2d66bea3953b3447 Mon Sep 17 00:00:00 2001 From: jspijker Date: Fri, 18 Nov 2022 11:44:57 +0100 Subject: [PATCH 157/161] Fix channel when people use - instead of _ in their branch name --- .github/workflows/conan-recipe-version.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/conan-recipe-version.yml b/.github/workflows/conan-recipe-version.yml index a0ea09c0f3..ffa0b97e10 100644 --- a/.github/workflows/conan-recipe-version.yml +++ b/.github/workflows/conan-recipe-version.yml @@ -118,7 +118,7 @@ jobs: elif ref_name in ("main", "master"): channel = 'testing' else: - channel = repo.active_branch.name.split("_")[0].replace("-", "_").lower() + channel = "_".join(repo.active_branch.name.replace("-", "_").split("_")[:2]).lower() if "pull_request" in event_name: channel = f"pr_{issue_number}" From 55040a7040b28481ce943f024eef8ccb1935f1a2 Mon Sep 17 00:00:00 2001 From: jspijker Date: Fri, 18 Nov 2022 11:50:10 +0100 Subject: [PATCH 158/161] Use Env file for workflow output --- .github/workflows/conan-recipe-version.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/conan-recipe-version.yml b/.github/workflows/conan-recipe-version.yml index ffa0b97e10..e376ec7648 100644 --- a/.github/workflows/conan-recipe-version.yml +++ b/.github/workflows/conan-recipe-version.yml @@ -171,19 +171,19 @@ jobs: actual_version = f"{latest_branch_version.major}.{bump_up_minor}.{reset_patch}-alpha+{buildmetadata}{channel_metadata}" # %% print to output - cmd_name = ["echo", f"::set-output name=name::{project_name}"] + cmd_name = ["echo", f"name={project_name} >> $GITHUB_OUTPUT"] subprocess.call(cmd_name) - cmd_version = ["echo", f"::set-output name=version::{actual_version}"] + cmd_version = ["echo", f"version={actual_version} >> $GITHUB_OUTPUT"] subprocess.call(cmd_version) - cmd_channel = ["echo", f"::set-output name=channel::{channel}"] + cmd_channel = ["echo", f"channel={channel} >> $GITHUB_OUTPUT"] subprocess.call(cmd_channel) - cmd_id_full= ["echo", f"::set-output name=recipe_id_full::{project_name}/{actual_version}@{user}/{channel}"] + cmd_id_full= ["echo", f"recipe_id_full={project_name}/{actual_version}@{user}/{channel} >> $GITHUB_OUTPUT"] subprocess.call(cmd_id_full) - cmd_id_latest = ["echo", f"::set-output name=recipe_id_latest::{project_name}/latest@{user}/{channel}"] + cmd_id_latest = ["echo", f"recipe_id_latest={project_name}/latest@{user}/{channel} >> $GITHUB_OUTPUT"] subprocess.call(cmd_id_latest) - cmd_semver_full = ["echo", f"::set-output name=semver_full::{actual_version}"] + cmd_semver_full = ["echo", f"semver_full={actual_version} >> $GITHUB_OUTPUT"] subprocess.call(cmd_semver_full) - cmd_is_release_branch = ["echo", f"::set-output name=is_release_branch::{str(is_release_branch).lower()}"] + cmd_is_release_branch = ["echo", f"is_release_branch={str(is_release_branch).lower()} >> $GITHUB_OUTPUT"] subprocess.call(cmd_is_release_branch) print("::group::Conan Recipe Information") @@ -191,7 +191,7 @@ jobs: print(f"version = {actual_version}") print(f"user = {user}") print(f"channel = {channel}") - print(f"= {project_name}/{actual_version}@{user}/{channel}") + print(f"recipe_id_full = {project_name}/{actual_version}@{user}/{channel}") print(f"recipe_id_latest = {project_name}/latest@{user}/{channel}") print(f"semver_full = {actual_version}") print(f"is_release_branch = {str(is_release_branch).lower()}") From be0b2b15c7a60ace7094c981caf6d7f9a1997626 Mon Sep 17 00:00:00 2001 From: jspijker Date: Fri, 18 Nov 2022 11:59:36 +0100 Subject: [PATCH 159/161] Use quotes for output to env files --- .github/workflows/conan-recipe-version.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/conan-recipe-version.yml b/.github/workflows/conan-recipe-version.yml index e376ec7648..8e9b0de547 100644 --- a/.github/workflows/conan-recipe-version.yml +++ b/.github/workflows/conan-recipe-version.yml @@ -171,19 +171,19 @@ jobs: actual_version = f"{latest_branch_version.major}.{bump_up_minor}.{reset_patch}-alpha+{buildmetadata}{channel_metadata}" # %% print to output - cmd_name = ["echo", f"name={project_name} >> $GITHUB_OUTPUT"] + cmd_name = ["echo", f"\"name={project_name}\" >> $GITHUB_OUTPUT"] subprocess.call(cmd_name) - cmd_version = ["echo", f"version={actual_version} >> $GITHUB_OUTPUT"] + cmd_version = ["echo", f"\"version={actual_version}\" >> $GITHUB_OUTPUT"] subprocess.call(cmd_version) - cmd_channel = ["echo", f"channel={channel} >> $GITHUB_OUTPUT"] + cmd_channel = ["echo", f"\"channel={channel}\" >> $GITHUB_OUTPUT"] subprocess.call(cmd_channel) - cmd_id_full= ["echo", f"recipe_id_full={project_name}/{actual_version}@{user}/{channel} >> $GITHUB_OUTPUT"] + cmd_id_full= ["echo", f"\"recipe_id_full={project_name}/{actual_version}@{user}/{channel}\" >> $GITHUB_OUTPUT"] subprocess.call(cmd_id_full) - cmd_id_latest = ["echo", f"recipe_id_latest={project_name}/latest@{user}/{channel} >> $GITHUB_OUTPUT"] + cmd_id_latest = ["echo", f"\"recipe_id_latest={project_name}/latest@{user}/{channel}\" >> $GITHUB_OUTPUT"] subprocess.call(cmd_id_latest) - cmd_semver_full = ["echo", f"semver_full={actual_version} >> $GITHUB_OUTPUT"] + cmd_semver_full = ["echo", f"\"semver_full={actual_version}\" >> $GITHUB_OUTPUT"] subprocess.call(cmd_semver_full) - cmd_is_release_branch = ["echo", f"is_release_branch={str(is_release_branch).lower()} >> $GITHUB_OUTPUT"] + cmd_is_release_branch = ["echo", f"\"is_release_branch={str(is_release_branch).lower()}\" >> $GITHUB_OUTPUT"] subprocess.call(cmd_is_release_branch) print("::group::Conan Recipe Information") From 87cea8f8f4d65ffbed5064c84db8a1a1c2d867c0 Mon Sep 17 00:00:00 2001 From: jspijker Date: Fri, 18 Nov 2022 13:02:04 +0100 Subject: [PATCH 160/161] write directly to the env file --- .github/workflows/conan-recipe-version.yml | 32 ++++++++++++---------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/.github/workflows/conan-recipe-version.yml b/.github/workflows/conan-recipe-version.yml index 8e9b0de547..82ceb74595 100644 --- a/.github/workflows/conan-recipe-version.yml +++ b/.github/workflows/conan-recipe-version.yml @@ -85,6 +85,7 @@ jobs: name: Get Conan broadcast data run: | import subprocess + import os from conans import tools from conans.errors import ConanException from git import Repo @@ -170,21 +171,22 @@ jobs: reset_patch = 0 actual_version = f"{latest_branch_version.major}.{bump_up_minor}.{reset_patch}-alpha+{buildmetadata}{channel_metadata}" - # %% print to output - cmd_name = ["echo", f"\"name={project_name}\" >> $GITHUB_OUTPUT"] - subprocess.call(cmd_name) - cmd_version = ["echo", f"\"version={actual_version}\" >> $GITHUB_OUTPUT"] - subprocess.call(cmd_version) - cmd_channel = ["echo", f"\"channel={channel}\" >> $GITHUB_OUTPUT"] - subprocess.call(cmd_channel) - cmd_id_full= ["echo", f"\"recipe_id_full={project_name}/{actual_version}@{user}/{channel}\" >> $GITHUB_OUTPUT"] - subprocess.call(cmd_id_full) - cmd_id_latest = ["echo", f"\"recipe_id_latest={project_name}/latest@{user}/{channel}\" >> $GITHUB_OUTPUT"] - subprocess.call(cmd_id_latest) - cmd_semver_full = ["echo", f"\"semver_full={actual_version}\" >> $GITHUB_OUTPUT"] - subprocess.call(cmd_semver_full) - cmd_is_release_branch = ["echo", f"\"is_release_branch={str(is_release_branch).lower()}\" >> $GITHUB_OUTPUT"] - subprocess.call(cmd_is_release_branch) + # %% Set the environment output + output_env = os.environ["GITHUB_OUTPUT"] + content = "" + if os.path.exist(output_env): + with open(output_env, "r") as f: + content = f.read() + + with open(output_env, "w") as f: + f.write(content) + f.writelines(f"name={project_name}\n") + f.writelines(f"version={actual_version}\n") + f.writelines(f"channel={channel}\n") + f.writelines(f"recipe_id_full={project_name}/{actual_version}@{user}/{channel}\n") + f.writelines(f"recipe_id_latest={project_name}/latest@{user}/{channel}\n") + f.writelines(f"semver_full={actual_version}\n") + f.writelines(f"is_release_branch={str(is_release_branch).lower()}\n") print("::group::Conan Recipe Information") print(f"name = {project_name}") From fb69cff5115ba23c5461ddf64fada7afd1f9b741 Mon Sep 17 00:00:00 2001 From: jspijker Date: Fri, 18 Nov 2022 13:04:38 +0100 Subject: [PATCH 161/161] fix typo --- .github/workflows/conan-recipe-version.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/conan-recipe-version.yml b/.github/workflows/conan-recipe-version.yml index 82ceb74595..345fad2220 100644 --- a/.github/workflows/conan-recipe-version.yml +++ b/.github/workflows/conan-recipe-version.yml @@ -174,7 +174,7 @@ jobs: # %% Set the environment output output_env = os.environ["GITHUB_OUTPUT"] content = "" - if os.path.exist(output_env): + if os.path.exists(output_env): with open(output_env, "r") as f: content = f.read()