Update Translations

This commit is contained in:
Seth Hillbrand 2022-02-14 09:25:42 -08:00
parent 2a327d6179
commit 6f2a7db369
34 changed files with 30102 additions and 27959 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: KiCad\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-02-07 17:47-0800\n"
"POT-Creation-Date: 2022-02-14 09:25-0800\n"
"PO-Revision-Date: 2018-07-15 17:07+0200\n"
"Last-Translator: Simon Richter <Simon.Richter@hogyros.de>\n"
"Language-Team: Simon Richter <Simon.Richter@hogyros.de>\n"
@ -4314,6 +4314,9 @@ msgstr "Eagle XML schematic files"
msgid "Eagle XML files"
msgstr "Eagle XML files"
msgid "OrcadPCB2 netlist files"
msgstr "OrcadPCB2 netlist files"
msgid "KiCad netlist files"
msgstr "KiCad netlist files"
@ -9748,6 +9751,14 @@ msgstr ""
msgid "Could not find '%s' in the imported library."
msgstr "Could not find '%s' in the imported library."
#, c-format
msgid "Library file '%s' not found."
msgstr "Library file '%s' not found."
#, c-format
msgid "library %s does not contain a symbol named %s"
msgstr "library %s does not contain a symbol named %s"
msgid "Invalid symbol name"
msgstr "Invalid symbol name"
@ -9831,14 +9842,6 @@ msgstr "Invalid symbol library name"
msgid "Invalid symbol library ID"
msgstr "Invalid symbol library ID"
#, c-format
msgid "Library file '%s' not found."
msgstr "Library file '%s' not found."
#, c-format
msgid "library %s does not contain a symbol named %s"
msgstr "library %s does not contain a symbol named %s"
#, c-format
msgid "Symbol library '%s' already exists."
msgstr "Symbol library '%s' already exists."
@ -15723,8 +15726,9 @@ msgstr ""
msgid "Reannotate anyway?"
msgstr "Reannotate anyway?"
msgid "Duplicate instances of "
msgstr "Duplicate instances of "
#, c-format
msgid "Duplicate instances of %s"
msgstr "Duplicate instances of %s"
msgid "Aborted: too many errors"
msgstr "Aborted: too many errors"
@ -16214,6 +16218,9 @@ msgstr "Hatched"
msgid "Fully hatched"
msgstr "Fully hatched"
msgid "Outline hatch pitch:"
msgstr "Outline hatch pitch:"
msgid "Corner smoothing:"
msgstr "Corner smoothing:"
@ -16757,12 +16764,20 @@ msgid "Test for parity between PCB and schematic"
msgstr "Test for parity between PCB and schematic"
#, c-format
msgid "Unconnected Items (%d)"
msgstr "Unconnected Items (%d)"
msgid "Violations (%s)"
msgstr "Violations (%s)"
#, c-format
msgid "Schematic Parity (%d)"
msgstr "Schematic Parity (%d)"
msgid "Unconnected Items (%s)"
msgstr "Unconnected Items (%s)"
#, c-format
msgid "Schematic Parity (%s)"
msgstr "Schematic Parity (%s)"
#, c-format
msgid "Ignored Tests (%s)"
msgstr "Ignored Tests (%s)"
msgid "Design Rules Checker"
msgstr "Design Rules Checker"
@ -18160,6 +18175,9 @@ msgstr "Create Report…"
msgid "Net Inspector"
msgstr "Net Inspector"
msgid "Load and Test Netlist"
msgstr "Load and Test Netlist"
msgid "Select Netlist"
msgstr "Select Netlist"
@ -19380,6 +19398,12 @@ msgstr "No layers selected."
msgid "Layers:"
msgstr "Layers:"
msgid "Area name:"
msgstr "Area name:"
msgid "A unique name for this rule area for use in DRC rules"
msgstr "A unique name for this rule area for use in DRC rules"
msgid "Basic rules:"
msgstr "Basic rules:"
@ -19413,12 +19437,6 @@ msgstr "Keep out footprints"
msgid "Raise a DRC error if a footprint courtyard overlaps this area"
msgstr "Raise a DRC error if a footprint courtyard overlaps this area"
msgid "Area name:"
msgstr "Area name:"
msgid "A unique name for this rule area for use in DRC rules"
msgstr "A unique name for this rule area for use in DRC rules"
msgid "Constrain outline to H, V and 45 deg"
msgstr "Constrain outline to H, V and 45 deg"
@ -19998,26 +20016,6 @@ msgstr "Note: zone filling can be slow when < %s."
msgid "Zone fill strategy"
msgstr "Zone fill strategy"
msgid "Mimic legacy behavior"
msgstr "Mimic legacy behavior"
msgid ""
"Produces a slightly smoother outline at the expense of performance, some "
"export fidelity issues, and overly aggressive higher-priority zone knockouts."
msgstr ""
"Produces a slightly smoother outline at the expense of performance, some "
"export fidelity issues, and overly aggressive higher-priority zone knockouts."
msgid "Smoothed polygons (best performance)"
msgstr "Smoothed polygons (best performance)"
msgid ""
"Better performance, exact export fidelity, and more complete filling near "
"higher-priority zones."
msgstr ""
"Better performance, exact export fidelity, and more complete filling near "
"higher-priority zones."
msgid "Allow fillets outside zone outline"
msgstr "Allow fillets outside zone outline"
@ -20763,8 +20761,8 @@ msgid ""
" A.inDiffPair('<net_name>')\n"
"True if `A` has net that is part of the specified differential pair.\n"
"`<net_name>` is the base name of the differential pair. For example, "
"`inDiffPair('CLK')`\n"
"matches items in the `CLK_P` and `CLK_N` nets.\n"
"`inDiffPair('/CLK')`\n"
"matches items in the `/CLK_P` and `/CLK_N` nets.\n"
"<br><br>\n"
"\n"
" AB.isCoupledDiffPair()\n"
@ -20841,7 +20839,7 @@ msgid ""
" # Specify an optimal gap for a particular diff-pair\n"
" (rule \"dp clock gap\"\n"
" (constraint diff_pair_gap (opt \"0.8mm\"))\n"
" (condition \"A.inDiffPair('CLK') && AB.isCoupledDiffPair()\"))\n"
" (condition \"A.inDiffPair('/CLK')\"))\n"
"\n"
" # Specify a larger clearance around any diff-pair\n"
" (rule \"dp clearance\"\n"
@ -20878,7 +20876,7 @@ msgid ""
" # Disallow solder mask margin overrides\n"
" (rule \"disallow solder mask margin overrides\"\n"
" (constraint assertion \"A.Soldermask_Margin_Override == 0mm\")\n"
" (condition \"A.Type == 'Pad'\"))"
" (condition \"A.Type == 'Pad'\"))\n"
msgstr ""
"### Top-level Clauses\n"
"\n"
@ -21038,8 +21036,8 @@ msgstr ""
" A.inDiffPair('<net_name>')\n"
"True if `A` has net that is part of the specified differential pair.\n"
"`<net_name>` is the base name of the differential pair. For example, "
"`inDiffPair('CLK')`\n"
"matches items in the `CLK_P` and `CLK_N` nets.\n"
"`inDiffPair('/CLK')`\n"
"matches items in the `/CLK_P` and `/CLK_N` nets.\n"
"<br><br>\n"
"\n"
" AB.isCoupledDiffPair()\n"
@ -21116,7 +21114,7 @@ msgstr ""
" # Specify an optimal gap for a particular diff-pair\n"
" (rule \"dp clock gap\"\n"
" (constraint diff_pair_gap (opt \"0.8mm\"))\n"
" (condition \"A.inDiffPair('CLK') && AB.isCoupledDiffPair()\"))\n"
" (condition \"A.inDiffPair('/CLK')\"))\n"
"\n"
" # Specify a larger clearance around any diff-pair\n"
" (rule \"dp clearance\"\n"
@ -21153,7 +21151,7 @@ msgstr ""
" # Disallow solder mask margin overrides\n"
" (rule \"disallow solder mask margin overrides\"\n"
" (constraint assertion \"A.Soldermask_Margin_Override == 0mm\")\n"
" (condition \"A.Type == 'Pad'\"))"
" (condition \"A.Type == 'Pad'\"))\n"
msgid "Default properties for new dimension objects:"
msgstr "Default properties for new dimension objects:"
@ -21886,6 +21884,9 @@ msgstr "(%s min height %s; actual %s)"
msgid "(%s max height %s; actual %s)"
msgstr "(%s max height %s; actual %s)"
msgid "(TrueType font characters with insufficient stroke weight)"
msgstr "(TrueType font characters with insufficient stroke weight)"
#, c-format
msgid "(%s min thickness %s; actual %s)"
msgstr "(%s min thickness %s; actual %s)"
@ -22085,6 +22086,12 @@ msgstr "Error saving footprint %s to project specific library."
msgid "Error saving project specific footprint library table."
msgstr "Error saving project specific footprint library table."
msgid "Converting zone fills"
msgstr "Converting zone fills"
msgid "Convert Zone(s)"
msgstr "Convert Zone(s)"
#, c-format
msgid "Insufficient permissions to write file '%s'."
msgstr "Insufficient permissions to write file '%s'."
@ -24188,6 +24195,16 @@ msgstr "Layer '%s' in file '%s' at line %d is not in fixed layer hash."
msgid "%d is not a valid layer count"
msgstr "%d is not a valid layer count"
msgid ""
"The legacy zone fill strategy is no longer supported.\n"
"Convert zones to smoothed polygon fills?"
msgstr ""
"The legacy zone fill strategy is no longer supported.\n"
"Convert zones to smoothed polygon fills?"
msgid "Legacy Zone Warning"
msgstr "Legacy Zone Warning"
#, c-format
msgid "Duplicate NETCLASS name '%s' in file '%s' at line %d, offset %d."
msgstr "Duplicate NETCLASS name '%s' in file '%s' at line %d, offset %d."
@ -24195,12 +24212,12 @@ msgstr "Duplicate NETCLASS name '%s' in file '%s' at line %d, offset %d."
#, c-format
msgid ""
"Invalid footprint ID in\n"
"file: '%s'\n"
"file: %s\n"
"line: %d\n"
"offset: %d."
msgstr ""
"Invalid footprint ID in\n"
"file: '%s'\n"
"file: %s\n"
"line: %d\n"
"offset: %d."
@ -24228,6 +24245,18 @@ msgstr ""
"file: %s\n"
"line: %d offset: %d"
#, c-format
msgid ""
"Invalid net ID in\n"
"file: %s\n"
"line: %d\n"
"offset: %d."
msgstr ""
"Invalid net ID in\n"
"file: %s\n"
"line: %d\n"
"offset: %d."
#, c-format
msgid ""
"Invalid net ID in\n"
@ -24243,36 +24272,33 @@ msgstr ""
#, c-format
msgid ""
"Invalid net ID in\n"
"file: '%s'\n"
"file: %s\n"
"line: %d\n"
"offset: %d"
msgstr ""
"Invalid net ID in\n"
"file: '%s'\n"
"file: %s\n"
"line: %d\n"
"offset: %d"
#, c-format
msgid ""
"Invalid net ID in\n"
" file: '%s;\n"
"file: %s;\n"
"line: %d\n"
"offset: %d."
msgstr ""
"Invalid net ID in\n"
" file: '%s;\n"
"file: %s;\n"
"line: %d\n"
"offset: %d."
msgid ""
"The legacy segment fill mode is no longer supported.\n"
"Convert zones to polygon fills?"
"The segment zone fill mode is no longer supported.\n"
"Convert zones to smoothed polygon fills?"
msgstr ""
"The legacy segment fill mode is no longer supported.\n"
"Convert zones to polygon fills?"
msgid "Legacy Zone Warning"
msgstr "Legacy Zone Warning"
"The segment zone fill mode is no longer supported.\n"
"Convert zones to smoothed polygon fills?"
#, c-format
msgid "Cannot create footprint library '%s'."
@ -24286,6 +24312,9 @@ msgstr "Footprint library '%s' is read only."
msgid "Cannot rename temporary file '%s' to '%s'"
msgstr "Cannot rename temporary file '%s' to '%s'"
msgid "Internal Group Data Error"
msgstr "Internal Group Data Error"
#, c-format
msgid ""
"Please report this bug. Error validating group structure: %s\n"
@ -24296,9 +24325,6 @@ msgstr ""
"\n"
"Save anyway?"
msgid "Internal group data structure corrupt"
msgstr "Internal group data structure corrupt"
msgid "Save Anyway"
msgstr "Save Anyway"
@ -24376,6 +24402,13 @@ msgstr "Bad ZAux for CZONE_CONTAINER “%s”"
msgid "Bad ZSmoothing for CZONE_CONTAINER \"%s\""
msgstr "Bad ZSmoothing for CZONE_CONTAINER “%s”"
msgid ""
"The legacy segment fill mode is no longer supported.\n"
"Convert zones to smoothed polygon fills?"
msgstr ""
"The legacy segment fill mode is no longer supported.\n"
"Convert zones to smoothed polygon fills?"
#, c-format
msgid "Bad ZClearance padoption for CZONE_CONTAINER \"%s\""
msgstr "Bad ZClearance padoption for CZONE_CONTAINER “%s”"
@ -27415,6 +27448,640 @@ msgstr "KiCad Schematic"
msgid "KiCad Printed Circuit Board"
msgstr "KiCad Printed Circuit Board"
#~ msgid "Duplicate instances of "
#~ msgstr "Duplicate instances of "
#, c-format
#~ msgid "Unconnected Items (%d)"
#~ msgstr "Unconnected Items (%d)"
#, c-format
#~ msgid "Schematic Parity (%d)"
#~ msgstr "Schematic Parity (%d)"
#~ msgid "Mimic legacy behavior"
#~ msgstr "Mimic legacy behavior"
#~ msgid ""
#~ "Produces a slightly smoother outline at the expense of performance, some "
#~ "export fidelity issues, and overly aggressive higher-priority zone "
#~ "knockouts."
#~ msgstr ""
#~ "Produces a slightly smoother outline at the expense of performance, some "
#~ "export fidelity issues, and overly aggressive higher-priority zone "
#~ "knockouts."
#~ msgid "Smoothed polygons (best performance)"
#~ msgstr "Smoothed polygons (best performance)"
#~ msgid ""
#~ "Better performance, exact export fidelity, and more complete filling near "
#~ "higher-priority zones."
#~ msgstr ""
#~ "Better performance, exact export fidelity, and more complete filling near "
#~ "higher-priority zones."
#~ msgid ""
#~ "### Top-level Clauses\n"
#~ "\n"
#~ " (version <number>)\n"
#~ "\n"
#~ " (rule <rule_name> <rule_clause> ...)\n"
#~ "\n"
#~ "\n"
#~ "<br>\n"
#~ "\n"
#~ "### Rule Clauses\n"
#~ "\n"
#~ " (constraint <constraint_type> ...)\n"
#~ "\n"
#~ " (condition \"<expression>\")\n"
#~ "\n"
#~ " (layer \"<layer_name>\")\n"
#~ "\n"
#~ " (severity <severity_name>)\n"
#~ "\n"
#~ "\n"
#~ "<br>\n"
#~ "\n"
#~ "### Constraint Types\n"
#~ "\n"
#~ " * annular\\_width\n"
#~ " * clearance\n"
#~ " * courtyard_clearance\n"
#~ " * diff\\_pair\\_gap\n"
#~ " * diff\\_pair\\_uncoupled\n"
#~ " * disallow\n"
#~ " * edge\\_clearance\n"
#~ " * length\n"
#~ " * hole\\_clearance\n"
#~ " * hole\\_size\n"
#~ " * mechanical\\_clearance\n"
#~ " * mechanical\\_hole\\_clearance\n"
#~ " * min\\_resolved\\_spokes\n"
#~ " * silk\\_clearance\n"
#~ " * skew\n"
#~ " * text\\_height\n"
#~ " * text\\_thickness\n"
#~ " * thermal\\_relief\\_gap\n"
#~ " * thermal\\_spoke\\_width\n"
#~ " * track\\_width\n"
#~ " * via\\_count\n"
#~ " * via\\_diameter\n"
#~ " * zone\\_connection\n"
#~ "\n"
#~ "Note: `clearance` and `hole_clearance` rules are not run against items of "
#~ "the same net; `mechanical_clearance` and `mechanical_hole_clearance` "
#~ "rules are.\n"
#~ "<br>\n"
#~ "\n"
#~ "### Item Types\n"
#~ "\n"
#~ " * buried\\_via\n"
#~ " * graphic\n"
#~ " * hole\n"
#~ " * micro\\_via\n"
#~ " * pad\n"
#~ " * text\n"
#~ " * track\n"
#~ " * via\n"
#~ " * zone\n"
#~ "\n"
#~ "<br>\n"
#~ "\n"
#~ "### Zone Connections\n"
#~ "\n"
#~ " * solid\n"
#~ " * thermal\\_reliefs\n"
#~ " * none\n"
#~ "\n"
#~ "<br>\n"
#~ "\n"
#~ "### Severity Names\n"
#~ "\n"
#~ " * warning\n"
#~ " * error\n"
#~ " * exclusion\n"
#~ " * ignore\n"
#~ "\n"
#~ "<br>\n"
#~ "\n"
#~ "### Examples\n"
#~ "\n"
#~ " (version 1)\n"
#~ "\n"
#~ " (rule HV\n"
#~ " (constraint clearance (min 1.5mm))\n"
#~ " (condition \"A.NetClass == 'HV'\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule HV\n"
#~ " (layer outer)\n"
#~ " (constraint clearance (min 1.5mm))\n"
#~ " (condition \"A.NetClass == 'HV'\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule HV_HV\n"
#~ " # wider clearance between HV tracks\n"
#~ " (constraint clearance (min \"1.5mm + 2.0mm\"))\n"
#~ " (condition \"A.NetClass == 'HV' && B.NetClass == 'HV'\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule HV_unshielded\n"
#~ " (constraint clearance (min 2mm))\n"
#~ " (condition \"A.NetClass == 'HV' && !A.insideArea('Shield*')\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule heavy_thermals\n"
#~ " (constraint thermal_spoke_width (min 0.5mm))\n"
#~ " (condition \"A.NetClass == 'HV'\"))\n"
#~ "<br><br>\n"
#~ "\n"
#~ "### Notes\n"
#~ "\n"
#~ "Version clause must be the first clause. It indicates the syntax version "
#~ "of the file so that \n"
#~ "future rules parsers can perform automatic updates. It should be\n"
#~ "set to \"1\".\n"
#~ "\n"
#~ "Rules should be ordered by specificity. Later rules take\n"
#~ "precedence over earlier rules; once a matching rule is found\n"
#~ "no further rules will be checked.\n"
#~ "\n"
#~ "Use Ctrl+/ to comment or uncomment line(s).\n"
#~ "<br><br><br>\n"
#~ "\n"
#~ "### Expression functions\n"
#~ "\n"
#~ "All function parameters support simple wildcards (`*` and `?`).\n"
#~ "<br><br>\n"
#~ "\n"
#~ " A.insideCourtyard('<footprint_refdes>')\n"
#~ "True if any part of `A` lies within the given footprint's principal "
#~ "courtyard.\n"
#~ "<br><br>\n"
#~ "\n"
#~ " A.insideFrontCourtyard('<footprint_refdes>')\n"
#~ "True if any part of `A` lies within the given footprint's front "
#~ "courtyard.\n"
#~ "<br><br>\n"
#~ "\n"
#~ " A.insideBackCourtyard('<footprint_refdes>')\n"
#~ "True if any part of `A` lies within the given footprint's back "
#~ "courtyard.\n"
#~ "<br><br>\n"
#~ "\n"
#~ " A.insideArea('<zone_name>')\n"
#~ "True if any part of `A` lies within the given zone's outline.\n"
#~ "<br><br>\n"
#~ "\n"
#~ " A.isPlated()\n"
#~ "True if `A` has a hole which is plated.\n"
#~ "<br><br>\n"
#~ "\n"
#~ " A.inDiffPair('<net_name>')\n"
#~ "True if `A` has net that is part of the specified differential pair.\n"
#~ "`<net_name>` is the base name of the differential pair. For example, "
#~ "`inDiffPair('CLK')`\n"
#~ "matches items in the `CLK_P` and `CLK_N` nets.\n"
#~ "<br><br>\n"
#~ "\n"
#~ " AB.isCoupledDiffPair()\n"
#~ "True if `A` and `B` are members of the same diff pair.\n"
#~ "<br><br>\n"
#~ "\n"
#~ " A.memberOf('<group_name>')\n"
#~ "True if `A` is a member of the given group. Includes nested membership.\n"
#~ "<br><br>\n"
#~ "\n"
#~ " A.existsOnLayer('<layer_name>')\n"
#~ "True if `A` exists on the given layer. The layer name can be\n"
#~ "either the name assigned in Board Setup > Board Editor Layers or\n"
#~ "the canonical name (ie: `F.Cu`).\n"
#~ "\n"
#~ "NB: this returns true if `A` is on the given layer, independently\n"
#~ "of whether or not the rule is being evaluated for that layer.\n"
#~ "For the latter use a `(layer \"layer_name\")` clause in the rule.\n"
#~ "<br><br><br>\n"
#~ "\n"
#~ "### More Examples\n"
#~ "\n"
#~ " (rule \"copper keepout\"\n"
#~ " (constraint disallow track via zone)\n"
#~ " (condition \"A.insideArea('zone3')\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule \"BGA neckdown\"\n"
#~ " (constraint track_width (min 0.2mm) (opt 0.25mm))\n"
#~ " (constraint clearance (min 0.05mm) (opt 0.08mm))\n"
#~ " (condition \"A.insideCourtyard('U3')\"))\n"
#~ "\n"
#~ "\n"
#~ " # prevent silk over tented vias\n"
#~ " (rule silk_over_via\n"
#~ " (constraint silk_clearance (min 0.2mm))\n"
#~ " (condition \"A.Type == '*Text' && B.Type == 'Via'\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule \"Distance between Vias of Different Nets\" \n"
#~ " (constraint hole_to_hole (min 0.254mm))\n"
#~ " (condition \"A.Type == 'Via' && B.Type == 'Via' && A.Net != B.Net"
#~ "\"))\n"
#~ "\n"
#~ " (rule \"Clearance between Pads of Different Nets\" \n"
#~ " (constraint clearance (min 3.0mm))\n"
#~ " (condition \"A.Type == 'Pad' && B.Type == 'Pad' && A.Net != B.Net"
#~ "\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule \"Via Hole to Track Clearance\" \n"
#~ " (constraint hole_clearance (min 0.254mm))\n"
#~ " (condition \"A.Type == 'Via' && B.Type == 'Track'\"))\n"
#~ " \n"
#~ " (rule \"Pad to Track Clearance\" \n"
#~ " (constraint clearance (min 0.2mm))\n"
#~ " (condition \"A.Type == 'Pad' && B.Type == 'Track'\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule \"clearance-to-1mm-cutout\"\n"
#~ " (constraint clearance (min 0.8mm))\n"
#~ " (condition \"A.Layer == 'Edge.Cuts' && A.Thickness == 1.0mm\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule \"Max Drill Hole Size Mechanical\" \n"
#~ " (constraint hole_size (max 6.3mm))\n"
#~ " (condition \"A.Pad_Type == 'NPTH, mechanical'\"))\n"
#~ " \n"
#~ " (rule \"Max Drill Hole Size PTH\" \n"
#~ " (constraint hole_size (max 6.35mm))\n"
#~ " (condition \"A.Pad_Type == 'Through-hole'\"))\n"
#~ "\n"
#~ "\n"
#~ " # Specify an optimal gap for a particular diff-pair\n"
#~ " (rule \"dp clock gap\"\n"
#~ " (constraint diff_pair_gap (opt \"0.8mm\"))\n"
#~ " (condition \"A.inDiffPair('CLK') && AB.isCoupledDiffPair()\"))\n"
#~ "\n"
#~ " # Specify a larger clearance around any diff-pair\n"
#~ " (rule \"dp clearance\"\n"
#~ " (constraint clearance (min \"1.5mm\"))\n"
#~ " (condition \"A.inDiffPair('*') && !AB.isCoupledDiffPair()\"))\n"
#~ "\n"
#~ "\n"
#~ " # Don't use thermal reliefs on heatsink pads\n"
#~ " (rule heat_sink_pad\n"
#~ " (constraint zone_connection solid)\n"
#~ " (condition \"A.Fabrication_Property == 'Heatsink pad'\"))\n"
#~ "\n"
#~ " # Require all four thermal relief spokes to connect to parent zone\n"
#~ " (rule fully_spoked_pads\n"
#~ " (constraint min_resolved_spokes 4))\n"
#~ "\n"
#~ " # Set thermal relief gap & spoke width for all zones\n"
#~ " (rule defined_relief\n"
#~ " (constraint thermal_relief_gap (min 10mil))\n"
#~ " (constraint thermal_spoke_width (min 12mil)))\n"
#~ "\n"
#~ " # Override thermal relief gap & spoke width for GND and PWR zones\n"
#~ " (rule defined_relief_pwr\n"
#~ " (constraint thermal_relief_gap (min 10mil))\n"
#~ " (constraint thermal_spoke_width (min 12mil))\n"
#~ " (condition \"A.Name == 'zone_GND' || A.Name == 'zone_PWR'\"))\n"
#~ " \n"
#~ "\n"
#~ " # Prevent solder wicking from SMD pads\n"
#~ " (rule holes_in_pads\n"
#~ " (constraint mechanical_hole_clearance (min 0.2mm))\n"
#~ " (condition \"B.Pad_Type == 'SMD'\"))\n"
#~ "\n"
#~ " # Disallow solder mask margin overrides\n"
#~ " (rule \"disallow solder mask margin overrides\"\n"
#~ " (constraint assertion \"A.Soldermask_Margin_Override == 0mm\")\n"
#~ " (condition \"A.Type == 'Pad'\"))"
#~ msgstr ""
#~ "### Top-level Clauses\n"
#~ "\n"
#~ " (version <number>)\n"
#~ "\n"
#~ " (rule <rule_name> <rule_clause> ...)\n"
#~ "\n"
#~ "\n"
#~ "<br>\n"
#~ "\n"
#~ "### Rule Clauses\n"
#~ "\n"
#~ " (constraint <constraint_type> ...)\n"
#~ "\n"
#~ " (condition \"<expression>\")\n"
#~ "\n"
#~ " (layer \"<layer_name>\")\n"
#~ "\n"
#~ " (severity <severity_name>)\n"
#~ "\n"
#~ "\n"
#~ "<br>\n"
#~ "\n"
#~ "### Constraint Types\n"
#~ "\n"
#~ " * annular\\_width\n"
#~ " * clearance\n"
#~ " * courtyard_clearance\n"
#~ " * diff\\_pair\\_gap\n"
#~ " * diff\\_pair\\_uncoupled\n"
#~ " * disallow\n"
#~ " * edge\\_clearance\n"
#~ " * length\n"
#~ " * hole\\_clearance\n"
#~ " * hole\\_size\n"
#~ " * mechanical\\_clearance\n"
#~ " * mechanical\\_hole\\_clearance\n"
#~ " * min\\_resolved\\_spokes\n"
#~ " * silk\\_clearance\n"
#~ " * skew\n"
#~ " * text\\_height\n"
#~ " * text\\_thickness\n"
#~ " * thermal\\_relief\\_gap\n"
#~ " * thermal\\_spoke\\_width\n"
#~ " * track\\_width\n"
#~ " * via\\_count\n"
#~ " * via\\_diameter\n"
#~ " * zone\\_connection\n"
#~ "\n"
#~ "Note: `clearance` and `hole_clearance` rules are not run against items of "
#~ "the same net; `mechanical_clearance` and `mechanical_hole_clearance` "
#~ "rules are.\n"
#~ "<br>\n"
#~ "\n"
#~ "### Item Types\n"
#~ "\n"
#~ " * buried\\_via\n"
#~ " * graphic\n"
#~ " * hole\n"
#~ " * micro\\_via\n"
#~ " * pad\n"
#~ " * text\n"
#~ " * track\n"
#~ " * via\n"
#~ " * zone\n"
#~ "\n"
#~ "<br>\n"
#~ "\n"
#~ "### Zone Connections\n"
#~ "\n"
#~ " * solid\n"
#~ " * thermal\\_reliefs\n"
#~ " * none\n"
#~ "\n"
#~ "<br>\n"
#~ "\n"
#~ "### Severity Names\n"
#~ "\n"
#~ " * warning\n"
#~ " * error\n"
#~ " * exclusion\n"
#~ " * ignore\n"
#~ "\n"
#~ "<br>\n"
#~ "\n"
#~ "### Examples\n"
#~ "\n"
#~ " (version 1)\n"
#~ "\n"
#~ " (rule HV\n"
#~ " (constraint clearance (min 1.5mm))\n"
#~ " (condition \"A.NetClass == 'HV'\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule HV\n"
#~ " (layer outer)\n"
#~ " (constraint clearance (min 1.5mm))\n"
#~ " (condition \"A.NetClass == 'HV'\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule HV_HV\n"
#~ " # wider clearance between HV tracks\n"
#~ " (constraint clearance (min \"1.5mm + 2.0mm\"))\n"
#~ " (condition \"A.NetClass == 'HV' && B.NetClass == 'HV'\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule HV_unshielded\n"
#~ " (constraint clearance (min 2mm))\n"
#~ " (condition \"A.NetClass == 'HV' && !A.insideArea('Shield*')\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule heavy_thermals\n"
#~ " (constraint thermal_spoke_width (min 0.5mm))\n"
#~ " (condition \"A.NetClass == 'HV'\"))\n"
#~ "<br><br>\n"
#~ "\n"
#~ "### Notes\n"
#~ "\n"
#~ "Version clause must be the first clause. It indicates the syntax version "
#~ "of the file so that \n"
#~ "future rules parsers can perform automatic updates. It should be\n"
#~ "set to \"1\".\n"
#~ "\n"
#~ "Rules should be ordered by specificity. Later rules take\n"
#~ "precedence over earlier rules; once a matching rule is found\n"
#~ "no further rules will be checked.\n"
#~ "\n"
#~ "Use Ctrl+/ to comment or uncomment line(s).\n"
#~ "<br><br><br>\n"
#~ "\n"
#~ "### Expression functions\n"
#~ "\n"
#~ "All function parameters support simple wildcards (`*` and `?`).\n"
#~ "<br><br>\n"
#~ "\n"
#~ " A.insideCourtyard('<footprint_refdes>')\n"
#~ "True if any part of `A` lies within the given footprint's principal "
#~ "courtyard.\n"
#~ "<br><br>\n"
#~ "\n"
#~ " A.insideFrontCourtyard('<footprint_refdes>')\n"
#~ "True if any part of `A` lies within the given footprint's front "
#~ "courtyard.\n"
#~ "<br><br>\n"
#~ "\n"
#~ " A.insideBackCourtyard('<footprint_refdes>')\n"
#~ "True if any part of `A` lies within the given footprint's back "
#~ "courtyard.\n"
#~ "<br><br>\n"
#~ "\n"
#~ " A.insideArea('<zone_name>')\n"
#~ "True if any part of `A` lies within the given zone's outline.\n"
#~ "<br><br>\n"
#~ "\n"
#~ " A.isPlated()\n"
#~ "True if `A` has a hole which is plated.\n"
#~ "<br><br>\n"
#~ "\n"
#~ " A.inDiffPair('<net_name>')\n"
#~ "True if `A` has net that is part of the specified differential pair.\n"
#~ "`<net_name>` is the base name of the differential pair. For example, "
#~ "`inDiffPair('CLK')`\n"
#~ "matches items in the `CLK_P` and `CLK_N` nets.\n"
#~ "<br><br>\n"
#~ "\n"
#~ " AB.isCoupledDiffPair()\n"
#~ "True if `A` and `B` are members of the same diff pair.\n"
#~ "<br><br>\n"
#~ "\n"
#~ " A.memberOf('<group_name>')\n"
#~ "True if `A` is a member of the given group. Includes nested membership.\n"
#~ "<br><br>\n"
#~ "\n"
#~ " A.existsOnLayer('<layer_name>')\n"
#~ "True if `A` exists on the given layer. The layer name can be\n"
#~ "either the name assigned in Board Setup > Board Editor Layers or\n"
#~ "the canonical name (ie: `F.Cu`).\n"
#~ "\n"
#~ "NB: this returns true if `A` is on the given layer, independently\n"
#~ "of whether or not the rule is being evaluated for that layer.\n"
#~ "For the latter use a `(layer \"layer_name\")` clause in the rule.\n"
#~ "<br><br><br>\n"
#~ "\n"
#~ "### More Examples\n"
#~ "\n"
#~ " (rule \"copper keepout\"\n"
#~ " (constraint disallow track via zone)\n"
#~ " (condition \"A.insideArea('zone3')\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule \"BGA neckdown\"\n"
#~ " (constraint track_width (min 0.2mm) (opt 0.25mm))\n"
#~ " (constraint clearance (min 0.05mm) (opt 0.08mm))\n"
#~ " (condition \"A.insideCourtyard('U3')\"))\n"
#~ "\n"
#~ "\n"
#~ " # prevent silk over tented vias\n"
#~ " (rule silk_over_via\n"
#~ " (constraint silk_clearance (min 0.2mm))\n"
#~ " (condition \"A.Type == '*Text' && B.Type == 'Via'\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule \"Distance between Vias of Different Nets\" \n"
#~ " (constraint hole_to_hole (min 0.254mm))\n"
#~ " (condition \"A.Type == 'Via' && B.Type == 'Via' && A.Net != B.Net"
#~ "\"))\n"
#~ "\n"
#~ " (rule \"Clearance between Pads of Different Nets\" \n"
#~ " (constraint clearance (min 3.0mm))\n"
#~ " (condition \"A.Type == 'Pad' && B.Type == 'Pad' && A.Net != B.Net"
#~ "\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule \"Via Hole to Track Clearance\" \n"
#~ " (constraint hole_clearance (min 0.254mm))\n"
#~ " (condition \"A.Type == 'Via' && B.Type == 'Track'\"))\n"
#~ " \n"
#~ " (rule \"Pad to Track Clearance\" \n"
#~ " (constraint clearance (min 0.2mm))\n"
#~ " (condition \"A.Type == 'Pad' && B.Type == 'Track'\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule \"clearance-to-1mm-cutout\"\n"
#~ " (constraint clearance (min 0.8mm))\n"
#~ " (condition \"A.Layer == 'Edge.Cuts' && A.Thickness == 1.0mm\"))\n"
#~ "\n"
#~ "\n"
#~ " (rule \"Max Drill Hole Size Mechanical\" \n"
#~ " (constraint hole_size (max 6.3mm))\n"
#~ " (condition \"A.Pad_Type == 'NPTH, mechanical'\"))\n"
#~ " \n"
#~ " (rule \"Max Drill Hole Size PTH\" \n"
#~ " (constraint hole_size (max 6.35mm))\n"
#~ " (condition \"A.Pad_Type == 'Through-hole'\"))\n"
#~ "\n"
#~ "\n"
#~ " # Specify an optimal gap for a particular diff-pair\n"
#~ " (rule \"dp clock gap\"\n"
#~ " (constraint diff_pair_gap (opt \"0.8mm\"))\n"
#~ " (condition \"A.inDiffPair('CLK') && AB.isCoupledDiffPair()\"))\n"
#~ "\n"
#~ " # Specify a larger clearance around any diff-pair\n"
#~ " (rule \"dp clearance\"\n"
#~ " (constraint clearance (min \"1.5mm\"))\n"
#~ " (condition \"A.inDiffPair('*') && !AB.isCoupledDiffPair()\"))\n"
#~ "\n"
#~ "\n"
#~ " # Don't use thermal reliefs on heatsink pads\n"
#~ " (rule heat_sink_pad\n"
#~ " (constraint zone_connection solid)\n"
#~ " (condition \"A.Fabrication_Property == 'Heatsink pad'\"))\n"
#~ "\n"
#~ " # Require all four thermal relief spokes to connect to parent zone\n"
#~ " (rule fully_spoked_pads\n"
#~ " (constraint min_resolved_spokes 4))\n"
#~ "\n"
#~ " # Set thermal relief gap & spoke width for all zones\n"
#~ " (rule defined_relief\n"
#~ " (constraint thermal_relief_gap (min 10mil))\n"
#~ " (constraint thermal_spoke_width (min 12mil)))\n"
#~ "\n"
#~ " # Override thermal relief gap & spoke width for GND and PWR zones\n"
#~ " (rule defined_relief_pwr\n"
#~ " (constraint thermal_relief_gap (min 10mil))\n"
#~ " (constraint thermal_spoke_width (min 12mil))\n"
#~ " (condition \"A.Name == 'zone_GND' || A.Name == 'zone_PWR'\"))\n"
#~ " \n"
#~ "\n"
#~ " # Prevent solder wicking from SMD pads\n"
#~ " (rule holes_in_pads\n"
#~ " (constraint mechanical_hole_clearance (min 0.2mm))\n"
#~ " (condition \"B.Pad_Type == 'SMD'\"))\n"
#~ "\n"
#~ " # Disallow solder mask margin overrides\n"
#~ " (rule \"disallow solder mask margin overrides\"\n"
#~ " (constraint assertion \"A.Soldermask_Margin_Override == 0mm\")\n"
#~ " (condition \"A.Type == 'Pad'\"))"
#, c-format
#~ msgid ""
#~ "Invalid footprint ID in\n"
#~ "file: '%s'\n"
#~ "line: %d\n"
#~ "offset: %d."
#~ msgstr ""
#~ "Invalid footprint ID in\n"
#~ "file: '%s'\n"
#~ "line: %d\n"
#~ "offset: %d."
#, c-format
#~ msgid ""
#~ "Invalid net ID in\n"
#~ "file: '%s'\n"
#~ "line: %d\n"
#~ "offset: %d"
#~ msgstr ""
#~ "Invalid net ID in\n"
#~ "file: '%s'\n"
#~ "line: %d\n"
#~ "offset: %d"
#, c-format
#~ msgid ""
#~ "Invalid net ID in\n"
#~ " file: '%s;\n"
#~ "line: %d\n"
#~ "offset: %d."
#~ msgstr ""
#~ "Invalid net ID in\n"
#~ " file: '%s;\n"
#~ "line: %d\n"
#~ "offset: %d."
#~ msgid ""
#~ "The legacy segment fill mode is no longer supported.\n"
#~ "Convert zones to polygon fills?"
#~ msgstr ""
#~ "The legacy segment fill mode is no longer supported.\n"
#~ "Convert zones to polygon fills?"
#~ msgid "Internal group data structure corrupt"
#~ msgstr "Internal group data structure corrupt"
#~ msgid "Units are not interchangeable"
#~ msgstr "Units are not interchangeable"

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff