You are on page 1of 62

# 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 <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-06-22 22:41+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"

#: Updates.py:47
msgid "Installed Version:"
msgstr ""

#: Updates.py:52
msgid "Running version of bCNC"
msgstr ""

#: Updates.py:54
msgid "Latest Github Version:"
msgstr ""

#: Updates.py:60
msgid "Latest release version on on github"
msgstr ""

#: Updates.py:61
msgid "Published at:"
msgstr ""

#: Updates.py:67
msgid "Published date of the latest github release"
msgstr ""

#: Updates.py:72
msgid "Check Interval"
msgstr ""

#: Updates.py:75
msgid "Last Check:"
msgstr ""

#: Updates.py:87
msgid "Date of last checking"
msgstr ""

#: Updates.py:89
msgid "Interval (days):"
msgstr ""
#: Updates.py:100
msgid "Days-interval to remind again for checking"
msgstr ""

#: Updates.py:105 Utils.py:460 FilePage.py:201 bCNC.py:859 bCNC.py:1065


#: bCNC.py:2057
msgid "Close"
msgstr ""

#: Updates.py:111
msgid "Check Now"
msgstr ""

#: Updates.py:117
msgid "Check the web site for new versions of bCNC"
msgstr ""

#: Updates.py:149
msgid "Download"
msgstr ""

#: Updates.py:152
msgid "Open web browser to download bCNC"
msgstr ""

#: Updates.py:157
#, python-format
msgid "Error %d in connection"
msgstr ""

#: Sender.py:96
msgid "bCNC is currently sending a gcode program to Grbl"
msgstr ""

#: Sender.py:97
msgid "Grbl is in idle state and waiting for user commands"
msgstr ""

#: Sender.py:98
msgid "Grbl is on hold state. Click on resume (pause) to continue"
msgstr ""

#: Sender.py:99
msgid ""
"Alarm is an emergency state. Something has gone terribly wrong when these "
"occur. Typically, they are caused by limit error when the machine has moved "
"or wants to move outside the machine space and crash into something. They "
"also report problems if Grbl is lost and can't guarantee positioning or a "
"probe command has failed. Once in alarm-mode, Grbl will lock out and shut "
"down everything until the user issues a reset. Even after a reset, Grbl will "
"remain in alarm-mode, block all G-code from being executed, but allows the "
"user to override the alarm manually. This is to ensure the user knows and "
"acknowledges the problem and has taken steps to fix or account for it."
msgstr ""

#: Sender.py:100
msgid "Grbl is not connected. Please specify the correct port and click Open."
msgstr ""
#: Sender.py:101
msgid "Connection is established with Grbl"
msgstr ""

#: Sender.py:103
msgid ""
"All is good! Everything in the last line was understood by Grbl and was "
"successfully processed and executed."
msgstr ""

#: Sender.py:105
msgid "G-code words consist of a letter and a value. Letter was not found."
msgstr ""

#: Sender.py:106
msgid "Numeric value format is not valid or missing an expected value."
msgstr ""

#: Sender.py:107
msgid "Grbl '$' system command was not recognized or supported."
msgstr ""

#: Sender.py:108
msgid "Negative value received for an expected positive value."
msgstr ""

#: Sender.py:109
msgid "Homing cycle is not enabled via settings."
msgstr ""

#: Sender.py:110
msgid "Minimum step pulse time must be greater than 3usec"
msgstr ""

#: Sender.py:111
msgid "EEPROM read failed. Reset and restored to default values."
msgstr ""

#: Sender.py:112
msgid ""
"Grbl '$' command cannot be used unless Grbl is IDLE. Ensures smooth "
"operation during a job."
msgstr ""

#: Sender.py:113
msgid "G-code locked out during alarm or jog state"
msgstr ""

#: Sender.py:114
msgid "Soft limits cannot be enabled without homing also enabled."
msgstr ""

#: Sender.py:115
msgid "Max characters per line exceeded. Line was not processed and executed."
msgstr ""

#: Sender.py:116
msgid ""
"(Compile Option) Grbl '$' setting value exceeds the maximum step rate "
"supported."
msgstr ""

#: Sender.py:117
msgid "Safety door detected as opened and door state initiated."
msgstr ""

#: Sender.py:118
msgid ""
"(Grbl-Mega Only) Build info or startup line exceeded EEPROM line length "
"limit."
msgstr ""

#: Sender.py:119
msgid "Jog target exceeds machine travel. Command ignored."
msgstr ""

#: Sender.py:120
msgid "Jog command with no '=' or contains prohibited g-code."
msgstr ""

#: Sender.py:121
msgid "Laser mode requires PWM output."
msgstr ""

#: Sender.py:122
msgid "Unsupported or invalid g-code command found in block."
msgstr ""

#: Sender.py:123
msgid "More than one g-code command from same modal group found in block."
msgstr ""

#: Sender.py:124
msgid "Feed rate has not yet been set or is undefined."
msgstr ""

#: Sender.py:125
msgid "G-code command in block requires an integer value."
msgstr ""

#: Sender.py:126
msgid ""
"Two G-code commands that both require the use of the XYZ axis words were "
"detected in the block."
msgstr ""

#: Sender.py:127
msgid "A G-code word was repeated in the block."
msgstr ""

#: Sender.py:128
msgid ""
"A G-code command implicitly or explicitly requires XYZ axis words in the "
"block, but none were detected."
msgstr ""

#: Sender.py:129
msgid "N line number value is not within the valid range of 1 - 9,999,999."
msgstr ""

#: Sender.py:130
msgid ""
"A G-code command was sent, but is missing some required P or L value words "
"in the line."
msgstr ""

#: Sender.py:131
msgid ""
"Grbl supports six work coordinate systems G54-G59. G59.1, G59.2, and G59.3 "
"are not supported."
msgstr ""

#: Sender.py:132
msgid ""
"The G53 G-code command requires either a G0 seek or G1 feed motion mode to "
"be active. A different motion was active."
msgstr ""

#: Sender.py:133
msgid ""
"There are unused axis words in the block and G80 motion mode cancel is "
"active."
msgstr ""

#: Sender.py:134
msgid ""
"A G2 or G3 arc was commanded but there are no XYZ axis words in the selected "
"plane to trace the arc."
msgstr ""

#: Sender.py:135
msgid ""
"The motion command has an invalid target. G2, G3, and G38.2 generates this "
"error, if the arc is impossible to generate or if the probe target is the "
"current position."
msgstr ""

#: Sender.py:136
msgid ""
"A G2 or G3 arc, traced with the radius definition, had a mathematical error "
"when computing the arc geometry. Try either breaking up the arc into semi-"
"circles or quadrants, or redefine them with the arc offset definition."
msgstr ""

#: Sender.py:137
msgid ""
"A G2 or G3 arc, traced with the offset definition, is missing the IJK offset "
"word in the selected plane to trace the arc."
msgstr ""

#: Sender.py:138
msgid ""
"There are unused, leftover G-code words that aren't used by any command in "
"the block."
msgstr ""

#: Sender.py:139
msgid ""
"The G43.1 dynamic tool length offset command cannot apply an offset to an "
"axis other than its configured axis. The Grbl default axis is the Z-axis."
msgstr ""

#: Sender.py:141
msgid ""
"Hard limit triggered. Machine position is likely lost due to sudden and "
"immediate halt. Re-homing is highly recommended."
msgstr ""

#: Sender.py:142
msgid ""
"G-code motion target exceeds machine travel. Machine position safely "
"retained. Alarm may be unlocked."
msgstr ""

#: Sender.py:143
msgid ""
"Reset while in motion. Grbl cannot guarantee position. Lost steps are "
"likely. Re-homing is highly recommended."
msgstr ""

#: Sender.py:144
msgid ""
"Probe fail. The probe is not in the expected initial state before starting "
"probe cycle, where G38.2 and G38.3 is not triggered and G38.4 and G38.5 is "
"triggered."
msgstr ""

#: Sender.py:145
msgid ""
"Probe fail. Probe did not contact the workpiece within the programmed travel "
"for G38.2 and G38.4."
msgstr ""

#: Sender.py:146
msgid "Homing fail. Reset during active homing cycle."
msgstr ""

#: Sender.py:147
msgid "Homing fail. Safety door was opened during active homing cycle."
msgstr ""

#: Sender.py:148
msgid ""
"Homing fail. Cycle failed to clear limit switch when pulling off. Try "
"increasing pull-off setting or check wiring."
msgstr ""

#: Sender.py:149
msgid ""
"Homing fail. Could not find limit switch within search distance. Defined as "
"1.5 * max_travel on search and 5 * pulloff on locate phases."
msgstr ""

#: Sender.py:151
msgid "Hold complete. Ready to resume."
msgstr ""
#: Sender.py:152
msgid "Hold in-progress. Reset will throw an alarm."
msgstr ""

#: Sender.py:153
msgid "Door closed. Ready to resume."
msgstr ""

#: Sender.py:154
msgid "Machine stopped. Door still ajar. Can't resume until closed."
msgstr ""

#: Sender.py:155
msgid ""
"Door opened. Hold (or parking retract) in-progress. Reset will throw an "
"alarm."
msgstr ""

#: Sender.py:156
msgid ""
"Door closed and resuming. Restoring from park, if applicable. Reset will "
"throw an alarm."
msgstr ""

#: Sender.py:439
msgid "unknown command"
msgstr ""

#: Sender.py:439
#, python-format
msgid "Invalid command %s"
msgstr ""

#: Sender.py:716 ControlPage.py:407
#, python-format
msgid "Set workspace %s to %s"
msgstr ""

#: Sender.py:790
msgid "Run ended"
msgstr ""

#: ToolsPage.py:492
msgid "Align Camera"
msgstr ""

#: ToolsPage.py:493
msgid "Align Camera Width"
msgstr ""

#: ToolsPage.py:494
msgid "Align Camera Height"
msgstr ""

#: ToolsPage.py:495
msgid "Align Camera Angle"
msgstr ""
#: ToolsPage.py:496
msgid "Web Camera"
msgstr ""

#: ToolsPage.py:497
msgid "Web Camera Width"
msgstr ""

#: ToolsPage.py:498
msgid "Web Camera Height"
msgstr ""

#: ToolsPage.py:499
msgid "Web Camera Angle"
msgstr ""

#: ToolsPage.py:510
msgid "Units (inches)"
msgstr ""

#: ToolsPage.py:511
msgid "Lasercutter"
msgstr ""

#: ToolsPage.py:512
msgid "Double Size Icon"
msgstr ""

#: ToolsPage.py:513
msgid "Acceleration x"
msgstr ""

#: ToolsPage.py:514
msgid "Acceleration y"
msgstr ""

#: ToolsPage.py:515
msgid "Acceleration z"
msgstr ""

#: ToolsPage.py:516
msgid "Feed max x"
msgstr ""

#: ToolsPage.py:517
msgid "Feed max y"
msgstr ""

#: ToolsPage.py:518
msgid "Feed max z"
msgstr ""

#: ToolsPage.py:519
msgid "Travel x"
msgstr ""

#: ToolsPage.py:520
msgid "Travel y"
msgstr ""
#: ToolsPage.py:521
msgid "Travel z"
msgstr ""

#: ToolsPage.py:522
msgid "Decimal digits"
msgstr ""

#: ToolsPage.py:523
msgid "Plotting Arc accuracy"
msgstr ""

#: ToolsPage.py:524
msgid "Start up"
msgstr ""

#: ToolsPage.py:525
msgid "Spindle min (RPM)"
msgstr ""

#: ToolsPage.py:526
msgid "Spindle max (RPM)"
msgstr ""

#: ToolsPage.py:527
msgid "DRO Zero padding"
msgstr ""

#: ToolsPage.py:528
msgid "Header gcode"
msgstr ""

#: ToolsPage.py:529
msgid "Footer gcode"
msgstr ""

#: ToolsPage.py:551 ToolsPage.py:577 ToolsPage.py:606 ToolsPage.py:632


#: ToolsPage.py:662 ToolsPage.py:694 ToolsPage.py:719 ToolsPage.py:740
#: ToolsPage.py:1407 lib/bFileDialog.py:272 plugins/sketch.py:41
#: plugins/pyrograph.py:38 plugins/heightmap.py:48 plugins/midi2cnc.py:49
#: plugins/hilbert.py:87 plugins/gear.py:163 plugins/flatten.py:255
#: plugins/driller.py:38 plugins/tile.py:34 plugins/spirograph.py:101
#: plugins/bowl.py:107 plugins/zigzag.py:94 plugins/halftone.py:40
#: plugins/box.py:305 plugins/text.py:36
msgid "Name"
msgstr ""

#: ToolsPage.py:552 ToolsPage.py:578 ToolsPage.py:607 EditorPage.py:233


msgid "Comment"
msgstr ""

#: ToolsPage.py:553 ToolsPage.py:636
msgid "Feed"
msgstr ""

#: ToolsPage.py:554 ToolsPage.py:637
msgid "Plunge Feed"
msgstr ""
#: ToolsPage.py:555 ToolsPage.py:635
msgid "Depth Increment"
msgstr ""

#: ToolsPage.py:579 lib/bFileDialog.py:273
msgid "Type"
msgstr ""

#: ToolsPage.py:580
msgid "Shape"
msgstr ""

#: ToolsPage.py:581 ToolsPage.py:608 ToolsPage.py:989


msgid "Material"
msgstr ""

#: ToolsPage.py:582
msgid "Coating"
msgstr ""

#: ToolsPage.py:583 plugins/bowl.py:108
msgid "Diameter"
msgstr ""

#: ToolsPage.py:584
msgid "Mount Axis"
msgstr ""

#: ToolsPage.py:585
msgid "Flutes"
msgstr ""

#: ToolsPage.py:586
msgid "Length"
msgstr ""

#: ToolsPage.py:587
msgid "Angle"
msgstr ""

#: ToolsPage.py:588
msgid "Stepover %"
msgstr ""

#: ToolsPage.py:609
msgid "Safe Z"
msgstr ""

#: ToolsPage.py:610 ToolsPage.py:633
msgid "Surface Z"
msgstr ""

#: ToolsPage.py:611
msgid "Thickness"
msgstr ""

#: ToolsPage.py:634 ToolsPage.py:663 plugins/driller.py:40


#: plugins/spirograph.py:105
msgid "Target Depth"
msgstr ""

#: ToolsPage.py:638
msgid "First cut at surface height"
msgstr ""

#: ToolsPage.py:653
msgid "CUT selected paths"
msgstr ""

#: ToolsPage.py:664
msgid "Peck depth"
msgstr ""

#: ToolsPage.py:665
msgid "Dwell (s)"
msgstr ""

#: ToolsPage.py:666
msgid "Distance (mm)"
msgstr ""

#: ToolsPage.py:667
msgid "Number"
msgstr ""

#: ToolsPage.py:685
msgid "DRILL selected points"
msgstr ""

#: ToolsPage.py:695 ToolsPage.py:720 ToolsPage.py:1003


msgid "End Mill"
msgstr ""

#: ToolsPage.py:696 plugins/pyrograph.py:44
msgid "Direction"
msgstr ""

#: ToolsPage.py:697
msgid "Additional offset distance"
msgstr ""

#: ToolsPage.py:698 plugins/box.py:314
msgid "Overcut"
msgstr ""

#: ToolsPage.py:710
msgid "Generate profile path"
msgstr ""

#: ToolsPage.py:731
msgid "Generate pocket path"
msgstr ""

#: ToolsPage.py:741
msgid "Number of tabs"
msgstr ""
#: ToolsPage.py:742
msgid "Min. Distance of tabs"
msgstr ""

#: ToolsPage.py:745
msgid "Height"
msgstr ""

#: ToolsPage.py:765
msgid "Tabs error"
msgstr ""

#: ToolsPage.py:766
msgid "You cannot have both the number of tabs or distance equal to zero"
msgstr ""

#: ToolsPage.py:769
msgid "Create tabs on blocks"
msgstr ""

#: ToolsPage.py:779
msgid "$0 Step pulse time [us]"
msgstr ""

#: ToolsPage.py:780
msgid "$1 Step idle delay [ms]"
msgstr ""

#: ToolsPage.py:781
msgid "$2 Step port invert [mask]"
msgstr ""

#: ToolsPage.py:782
msgid "$3 Direction port invert [mask]"
msgstr ""

#: ToolsPage.py:783
msgid "$4 Step enable invert"
msgstr ""

#: ToolsPage.py:784
msgid "$5 Limit pins invert"
msgstr ""

#: ToolsPage.py:785
msgid "$6 Probe pin invert"
msgstr ""

#: ToolsPage.py:786
msgid "$10 Status report [mask]"
msgstr ""

#: ToolsPage.py:787
msgid "$11 Junction deviation [mm]"
msgstr ""

#: ToolsPage.py:788
msgid "$12 Arc tolerance [mm]"
msgstr ""
#: ToolsPage.py:789
msgid "$13 Report inches"
msgstr ""

#: ToolsPage.py:790
msgid "$20 Soft limits"
msgstr ""

#: ToolsPage.py:791
msgid "$21 Hard limits"
msgstr ""

#: ToolsPage.py:792
msgid "$22 Homing cycle"
msgstr ""

#: ToolsPage.py:793
msgid "$23 Homing direction invert [mask]"
msgstr ""

#: ToolsPage.py:794
msgid "$24 Homing feed [mm/min]"
msgstr ""

#: ToolsPage.py:795
msgid "$25 Homing seek [mm/min]"
msgstr ""

#: ToolsPage.py:796
msgid "$26 Homing debounce [ms]"
msgstr ""

#: ToolsPage.py:797
msgid "$27 Homing pull-off [mm]"
msgstr ""

#: ToolsPage.py:798
msgid "$30 Max spindle speed [RPM]"
msgstr ""

#: ToolsPage.py:799
msgid "$31 Min spindle speed [RPM]"
msgstr ""

#: ToolsPage.py:800
msgid "$32 Laser mode enable"
msgstr ""

#: ToolsPage.py:801
msgid "$100 X steps/mm"
msgstr ""

#: ToolsPage.py:802
msgid "$101 Y steps/mm"
msgstr ""

#: ToolsPage.py:803
msgid "$102 Z steps/mm"
msgstr ""

#: ToolsPage.py:804
msgid "$110 X max rate [mm/min]"
msgstr ""

#: ToolsPage.py:805
msgid "$111 Y max rate [mm/min]"
msgstr ""

#: ToolsPage.py:806
msgid "$112 Z max rate [mm/min]"
msgstr ""

#: ToolsPage.py:807
msgid "$120 X acceleration [mm/sec^2]"
msgstr ""

#: ToolsPage.py:808
msgid "$121 Y acceleration [mm/sec^2]"
msgstr ""

#: ToolsPage.py:809
msgid "$122 Z acceleration [mm/sec^2]"
msgstr ""

#: ToolsPage.py:810
msgid "$130 X max travel [mm]"
msgstr ""

#: ToolsPage.py:811
msgid "$131 Y max travel [mm]"
msgstr ""

#: ToolsPage.py:812
msgid "$132 Z max travel [mm]"
msgstr ""

#: ToolsPage.py:968
msgid "Database"
msgstr ""

#: ToolsPage.py:975
msgid "Stock"
msgstr ""

#: ToolsPage.py:982
msgid "Stock material currently on machine"
msgstr ""

#: ToolsPage.py:996
msgid "Editable database of material properties"
msgstr ""

#: ToolsPage.py:1010
msgid "Editable database of EndMills properties"
msgstr ""

#: ToolsPage.py:1017
msgid "Rename"
msgstr ""

#: ToolsPage.py:1022
msgid "Edit name of current operation/object"
msgstr ""

#: ToolsPage.py:1030 EditorPage.py:159 ProbePage.py:437


msgid "Add"
msgstr ""

#: ToolsPage.py:1035
msgid "Add a new operation/object"
msgstr ""

#: ToolsPage.py:1043 EditorPage.py:171
msgid "Clone"
msgstr ""

#: ToolsPage.py:1048
msgid "Clone selected operation/object"
msgstr ""

#: ToolsPage.py:1056 EditorPage.py:183 ProbePage.py:471


msgid "Delete"
msgstr ""

#: ToolsPage.py:1061
msgid "Delete selected operation/object"
msgstr ""

#: ToolsPage.py:1070
msgid "CAM"
msgstr ""

#: ToolsPage.py:1077 EditorPage.py:46 plugins/box.py:315


msgid "Cut"
msgstr ""

#: ToolsPage.py:1084
msgid "Cut for the full stock thickness selected code"
msgstr ""

#: ToolsPage.py:1091 plugins/box.py:313
msgid "Profile"
msgstr ""

#: ToolsPage.py:1098
msgid "Perform a profile operation on selected code"
msgstr ""

#: ToolsPage.py:1105
msgid "Pocket"
msgstr ""

#: ToolsPage.py:1112
msgid "Perform a pocket operation on selected code"
msgstr ""
#: ToolsPage.py:1119
msgid "Drill"
msgstr ""

#: ToolsPage.py:1126
msgid "Insert a drill cycle on current objects/location"
msgstr ""

#: ToolsPage.py:1133
msgid "Tabs"
msgstr ""

#: ToolsPage.py:1140
msgid "Insert holding tabs"
msgstr ""

#: ToolsPage.py:1236 ToolsPage.py:1288
msgid "Config"
msgstr ""

#: ToolsPage.py:1251
msgid "Change program language restart is required"
msgstr ""

#: ToolsPage.py:1260 ProbePage.py:104 ProbePage.py:1155


msgid "Camera"
msgstr ""

#: ToolsPage.py:1267
msgid "Camera Configuration"
msgstr ""

#: ToolsPage.py:1274
msgid "Colors"
msgstr ""

#: ToolsPage.py:1281
msgid "Color configuration"
msgstr ""

#: ToolsPage.py:1295
msgid "Machine configuration for bCNC"
msgstr ""

#: ToolsPage.py:1302
msgid "Controller"
msgstr ""

#: ToolsPage.py:1309
msgid "Controller (GRBL) configuration"
msgstr ""

#: ToolsPage.py:1316
msgid "Fonts"
msgstr ""

#: ToolsPage.py:1323
msgid "Font configuration"
msgstr ""
#: ToolsPage.py:1330
msgid "Shortcuts"
msgstr ""

#: ToolsPage.py:1337
msgid "Shortcuts configuration"
msgstr ""

#: ToolsPage.py:1368
msgid "Language change"
msgstr ""

#: ToolsPage.py:1369
msgid "Please restart the program."
msgstr ""

#: ToolsPage.py:1377
msgid "Events"
msgstr ""

#: ToolsPage.py:1382
msgid "User File"
msgstr ""

#: ToolsPage.py:1395
msgid "Execute"
msgstr ""

#: ToolsPage.py:1408
msgid "Value"
msgstr ""

#: ToolsPage.py:1476
msgid "GCode manipulation tools and user plugins"
msgstr ""

#: ToolsPage.py:1477
msgid "Tools"
msgstr ""

#: Utils.py:422
msgid "Error Reporting"
msgstr ""

#: Utils.py:425 FilePage.py:134
msgid "Report"
msgstr ""

#: Utils.py:428
#, python-format
msgid "The following report is about to be send to the author of %s"
msgstr ""

#: Utils.py:443
msgid "Your email"
msgstr ""

#: Utils.py:452
msgid "Automatic error reporting"
msgstr ""

#: Utils.py:464
msgid "Send report"
msgstr ""

#: Utils.py:530 Utils.py:540
msgid "Error sending report"
msgstr ""

#: Utils.py:531
msgid "There was a problem connecting to the web site"
msgstr ""

#: Utils.py:535
msgid "Report successfully send"
msgstr ""

#: Utils.py:536
msgid "Report was successfully uploaded to web site"
msgstr ""

#: Utils.py:541
#, python-format
msgid ""
"There was an error sending the report\n"
"Code=%d %s"
msgstr ""

#: Utils.py:648
msgid "User configurable button"
msgstr ""

#: Utils.py:654
msgid "Name:"
msgstr ""

#: Utils.py:658
msgid "Name to appear on button"
msgstr ""

#: Utils.py:662
msgid "Icon:"
msgstr ""

#: Utils.py:674
msgid "Icon to appear on button"
msgstr ""

#: Utils.py:678
msgid "Tool Tip:"
msgstr ""

#: Utils.py:682
msgid "Tooltip for button"
msgstr ""

#: Utils.py:686 bCNC.py:157
msgid "Command:"
msgstr ""

#: Utils.py:698 lib/bFileDialog.py:323
msgid "Cancel"
msgstr ""

#: Utils.py:699
msgid "Ok"
msgstr ""

#: FilePage.py:57 FilePage.py:304
msgid "File"
msgstr ""

#: FilePage.py:64
msgid "New"
msgstr ""

#: FilePage.py:68
msgid "New gcode/dxf file"
msgstr ""

#: FilePage.py:77
msgid "Open existing gcode/dxf file [Ctrl-O]"
msgstr ""

#: FilePage.py:82 FilePage.py:279 bCNC.py:2049 lib/bFileDialog.py:299


#: lib/bFileDialog.py:850 lib/bFileDialog.py:954
msgid "Open"
msgstr ""

#: FilePage.py:87
msgid "Open recent file"
msgstr ""

#: FilePage.py:97
msgid "Save gcode/dxf file [Ctrl-S]"
msgstr ""

#: FilePage.py:102 lib/bFileDialog.py:884
msgid "Save"
msgstr ""

#: FilePage.py:107
msgid "Save gcode/dxf AS"
msgstr ""

#: FilePage.py:115
msgid "Options"
msgstr ""

#: FilePage.py:141
msgid "Send Error Report"
msgstr ""

#: FilePage.py:146
msgid "Updates"
msgstr ""
#: FilePage.py:153
msgid "Check Updates"
msgstr ""

#: FilePage.py:157
msgid "About"
msgstr ""

#: FilePage.py:164
msgid "About the program"
msgstr ""

#: FilePage.py:171 bCNC.py:2200 bCNC.py:2204 bCNC.py:2217


msgid "Pendant"
msgstr ""

#: FilePage.py:176 ControlPage.py:108
msgid "Start"
msgstr ""

#: FilePage.py:183
msgid "Start pendant"
msgstr ""

#: FilePage.py:187 ControlPage.py:125
msgid "Stop"
msgstr ""

#: FilePage.py:194
msgid "Stop pendant"
msgstr ""

#: FilePage.py:205
msgid "Exit"
msgstr ""

#: FilePage.py:212
msgid "Close program [Ctrl-Q]"
msgstr ""

#: FilePage.py:225
msgid "Port:"
msgstr ""

#: FilePage.py:231
msgid "Select (or manual enter) port to connect"
msgstr ""

#: FilePage.py:240
msgid "Baud:"
msgstr ""

#: FilePage.py:245
msgid "Select connection baud rate"
msgstr ""

#: FilePage.py:252
msgid "Controller:"
msgstr ""

#: FilePage.py:259
msgid "Select controller board"
msgstr ""

#: FilePage.py:266
msgid "Connect on startup"
msgstr ""

#: FilePage.py:269
msgid "Connect to serial on startup of the program"
msgstr ""

#: FilePage.py:284
msgid "Open/Close serial port"
msgstr ""

#: FilePage.py:303
msgid "File I/O and configuration"
msgstr ""

#: Ribbon.py:483
msgid "New file"
msgstr ""

#: Ribbon.py:489
msgid "Open file [Ctrl-O]"
msgstr ""

#: Ribbon.py:495
msgid "Save all [Ctrl-S]"
msgstr ""

#: Ribbon.py:501
msgid "Undo [Ctrl-Z]"
msgstr ""

#: Ribbon.py:514
msgid "Redo [Ctrl-Y]"
msgstr ""

#: Ribbon.py:525
msgid "Help [F1]"
msgstr ""

#: EditorPage.py:29
msgid "Clipboard"
msgstr ""

#: EditorPage.py:35
msgid "Paste"
msgstr ""

#: EditorPage.py:40
msgid "Paste [Ctrl-V]"
msgstr ""

#: EditorPage.py:51
msgid "Cut [Ctrl-X]"
msgstr ""

#: EditorPage.py:58
msgid "Copy"
msgstr ""

#: EditorPage.py:63
msgid "Copy [Ctrl-C]"
msgstr ""

#: EditorPage.py:72
msgid "Select"
msgstr ""

#: EditorPage.py:79 bCNC.py:95
msgid "All"
msgstr ""

#: EditorPage.py:84
msgid "Select all blocks [Ctrl-A]"
msgstr ""

#: EditorPage.py:91
msgid "None"
msgstr ""

#: EditorPage.py:96
msgid "Unselect all blocks [Ctrl-Shift-A]"
msgstr ""

#: EditorPage.py:103 EditorPage.py:335 plugins/heightmap.py:56


msgid "Invert"
msgstr ""

#: EditorPage.py:108
msgid "Invert selection [Ctrl-I]"
msgstr ""

#: EditorPage.py:115
msgid "Layer"
msgstr ""

#: EditorPage.py:120
msgid "Select all blocks from current layer"
msgstr ""

#: EditorPage.py:131
msgid "Filter blocks"
msgstr ""

#: EditorPage.py:146
msgid "Edit"
msgstr ""

#: EditorPage.py:147 ProbePage.py:92 ProbePage.py:806


msgid "Autolevel"
msgstr ""
#: EditorPage.py:148 CNCList.py:663
msgid "Color"
msgstr ""

#: EditorPage.py:149
msgid "Import"
msgstr ""

#: EditorPage.py:150
msgid "Inkscape"
msgstr ""

#: EditorPage.py:151
msgid "Round"
msgstr ""

#: EditorPage.py:164
msgid "Insert a new block or line of code [Ins or Ctrl-Enter]"
msgstr ""

#: EditorPage.py:176
msgid "Clone selected lines or blocks [Ctrl-D]"
msgstr ""

#: EditorPage.py:188
msgid "Delete selected lines or blocks [Del]"
msgstr ""

#: EditorPage.py:200
msgid "Toggle enable/disable block of g-code [Ctrl-L]"
msgstr ""

#: EditorPage.py:203
msgid "Enable"
msgstr ""

#: EditorPage.py:205
msgid "Disable"
msgstr ""

#: EditorPage.py:208
msgid "Active"
msgstr ""

#: EditorPage.py:214
msgid "Enable or disable blocks of gcode"
msgstr ""

#: EditorPage.py:221
msgid "Expand"
msgstr ""

#: EditorPage.py:226
msgid "Toggle expand/collapse blocks of gcode [Ctrl-E]"
msgstr ""

#: EditorPage.py:239
msgid "(Un)Comment selected lines"
msgstr ""
#: EditorPage.py:247 EditorPage.py:254
msgid "Move"
msgstr ""

#: EditorPage.py:262
msgid "Move objects [M]"
msgstr ""

#: EditorPage.py:269
msgid "Origin"
msgstr ""

#: EditorPage.py:277
msgid "Move all gcode such as origin is on mouse location [O]"
msgstr ""

#: EditorPage.py:283
msgid "Top-Left"
msgstr ""

#: EditorPage.py:284
msgid "Left"
msgstr ""

#: EditorPage.py:285
msgid "Bottom-Left"
msgstr ""

#: EditorPage.py:286
msgid "Top"
msgstr ""

#: EditorPage.py:287 ProbePage.py:393 ProbePage.py:405


msgid "Center"
msgstr ""

#: EditorPage.py:288
msgid "Bottom"
msgstr ""

#: EditorPage.py:289
msgid "Top-Right"
msgstr ""

#: EditorPage.py:290
msgid "Right"
msgstr ""

#: EditorPage.py:291
msgid "Bottom-Right"
msgstr ""

#: EditorPage.py:302 plugins/hilbert.py:89
msgid "Order"
msgstr ""

#: EditorPage.py:303 bCNC.py:1460
msgid "Optimize"
msgstr ""

#: EditorPage.py:311
msgid "Up"
msgstr ""

#: EditorPage.py:316
msgid "Move selected g-code up [Ctrl-Up, Ctrl-PgUp]"
msgstr ""

#: EditorPage.py:323
msgid "Down"
msgstr ""

#: EditorPage.py:328
msgid "Move selected g-code down [Ctrl-Down, Ctrl-PgDn]"
msgstr ""

#: EditorPage.py:340
msgid "Invert cutting order of selected blocks"
msgstr ""

#: EditorPage.py:348
msgid "Transform"
msgstr ""

#: EditorPage.py:355
msgid "CW"
msgstr ""

#: EditorPage.py:361
msgid "Rotate selected gcode clock-wise (-90deg)"
msgstr ""

#: EditorPage.py:368
msgid "Flip"
msgstr ""

#: EditorPage.py:374
msgid "Rotate selected gcode by 180deg"
msgstr ""

#: EditorPage.py:381
msgid "CCW"
msgstr ""

#: EditorPage.py:387
msgid "Rotate selected gcode counter-clock-wise (90deg)"
msgstr ""

#: EditorPage.py:394
msgid "Horizontal"
msgstr ""

#: EditorPage.py:400
msgid "Mirror horizontally X=-X selected gcode"
msgstr ""

#: EditorPage.py:407
msgid "Vertical"
msgstr ""

#: EditorPage.py:413
msgid "Mirror vertically Y=-Y selected gcode"
msgstr ""

#: EditorPage.py:424
msgid "Route"
msgstr ""

#: EditorPage.py:431
msgid "Conventional"
msgstr ""

#: EditorPage.py:437
msgid "Change cut direction to conventional for selected gcode blocks"
msgstr ""

#: EditorPage.py:444
msgid "Climb"
msgstr ""

#: EditorPage.py:450
msgid "Change cut direction to climb for selected gcode blocks"
msgstr ""

#: EditorPage.py:457
msgid "Reverse"
msgstr ""

#: EditorPage.py:463
msgid "Reverse cut direction for selected gcode blocks"
msgstr ""

#: EditorPage.py:471 EditorPage.py:491
msgid "Info"
msgstr ""

#: EditorPage.py:478 bCNC.py:905
msgid "Statistics"
msgstr ""

#: EditorPage.py:484
msgid "Show statistics for enabled gcode"
msgstr ""

#: EditorPage.py:497
msgid "Show cutting information on selected blocks [Ctrl-n]"
msgstr ""

#: EditorPage.py:521
msgid "GCode editor"
msgstr ""

#: EditorPage.py:522
msgid "Editor"
msgstr ""
#: ProbePage.py:28
msgid "G38.2 stop on contact else error"
msgstr ""

#: ProbePage.py:29
msgid "G38.3 stop on contact"
msgstr ""

#: ProbePage.py:30
msgid "G38.4 stop on loss contact else error"
msgstr ""

#: ProbePage.py:31
msgid "G38.5 stop on loss contact"
msgstr ""

#: ProbePage.py:34
msgid "Send M6 commands"
msgstr ""

#: ProbePage.py:35
msgid "Ignore M6 commands"
msgstr ""

#: ProbePage.py:36
msgid "Manual Tool Change (WCS)"
msgstr ""

#: ProbePage.py:37
msgid "Manual Tool Change (TLO)"
msgstr ""

#: ProbePage.py:38
msgid "Manual Tool Change (NoProbe)"
msgstr ""

#: ProbePage.py:41
msgid "ONLY before probing"
msgstr ""

#: ProbePage.py:42
msgid "BEFORE & AFTER probing"
msgstr ""

#: ProbePage.py:73 ProbePage.py:80 ProbePage.py:319 ProbePage.py:376 bCNC.py:92


msgid "Probe"
msgstr ""

#: ProbePage.py:86
msgid "Simple probing along a direction"
msgstr ""

#: ProbePage.py:98
msgid "Autolevel Z surface"
msgstr ""

#: ProbePage.py:110
msgid "Work surface camera view and alignment"
msgstr ""
#: ProbePage.py:117
msgid "Tool"
msgstr ""

#: ProbePage.py:123
msgid "Setup probing for manual tool change"
msgstr ""

#: ProbePage.py:140
msgid "Margins"
msgstr ""

#: ProbePage.py:145
msgid "Get margins from gcode file"
msgstr ""

#: ProbePage.py:152
msgid "Zero"
msgstr ""

#: ProbePage.py:157
msgid "Set current location as Z-zero for leveling"
msgstr ""

#: ProbePage.py:164 ProbePage.py:504 TerminalPage.py:29


msgid "Clear"
msgstr ""

#: ProbePage.py:169
msgid "Clear probe data"
msgstr ""

#: ProbePage.py:176 plugins/heightmap.py:51
msgid "Scan"
msgstr ""

#: ProbePage.py:183
msgid "Scan probed area for level information on Z plane"
msgstr ""

#: ProbePage.py:196
msgid "Common"
msgstr ""

#: ProbePage.py:206
msgid "Fast Probe Feed:"
msgstr ""

#: ProbePage.py:210
msgid "Set initial probe feed rate for tool change and calibration"
msgstr ""

#: ProbePage.py:217
msgid "Probe Feed:"
msgstr ""

#: ProbePage.py:221
msgid "Set probe feed rate"
msgstr ""

#: ProbePage.py:228
msgid "TLO"
msgstr ""

#: ProbePage.py:232
msgid "Set tool offset for probing"
msgstr ""

#: ProbePage.py:238 ControlPage.py:877 ControlPage.py:912


msgid "set"
msgstr ""

#: ProbePage.py:248
msgid "Probe Command"
msgstr ""

#: ProbePage.py:323 ProbePage.py:1467
msgid "Probe:"
msgstr ""

#: ProbePage.py:341
msgid "Goto"
msgstr ""

#: ProbePage.py:348
msgid "Rapid goto to last probe location"
msgstr ""

#: ProbePage.py:352
msgid "Pos:"
msgstr ""

#: ProbePage.py:357
msgid "Probe along X direction"
msgstr ""

#: ProbePage.py:363
msgid "Probe along Y direction"
msgstr ""

#: ProbePage.py:369
msgid "Probe along Z direction"
msgstr ""

#: ProbePage.py:383
msgid "Perform a single probe cycle"
msgstr ""

#: ProbePage.py:396
msgid "Diameter:"
msgstr ""

#: ProbePage.py:399
msgid "Probing ring internal diameter"
msgstr ""

#: ProbePage.py:412
msgid "Center probing using a ring"
msgstr ""

#: ProbePage.py:417 ProbePage.py:525 bCNC.py:93


msgid "Orient"
msgstr ""

#: ProbePage.py:423
msgid "Markers:"
msgstr ""

#: ProbePage.py:433
msgid "Select orientation marker"
msgstr ""

#: ProbePage.py:445
msgid ""
"Add an orientation marker. Jog first the machine to the marker position and "
"then click on canvas to add the marker."
msgstr ""

#: ProbePage.py:452
msgid "Gcode:"
msgstr ""

#: ProbePage.py:459
msgid "GCode X coordinate of orientation point"
msgstr ""

#: ProbePage.py:467
msgid "GCode Y coordinate of orientation point"
msgstr ""

#: ProbePage.py:479
msgid "Delete current marker"
msgstr ""

#: ProbePage.py:492
msgid "Machine X coordinate of orientation point"
msgstr ""

#: ProbePage.py:500
msgid "Machine Y coordinate of orientation point"
msgstr ""

#: ProbePage.py:512 ProbePage.py:720
msgid "Delete all markers"
msgstr ""

#: ProbePage.py:517
msgid "Angle:"
msgstr ""

#: ProbePage.py:533
msgid "Align GCode with the machine markers"
msgstr ""

#: ProbePage.py:538 ProbePage.py:1195
msgid "Offset:"
msgstr ""

#: ProbePage.py:551
msgid "Error:"
msgstr ""

#: ProbePage.py:591
msgid "Probe connected?"
msgstr ""

#: ProbePage.py:592
msgid ""
"Please verify that the probe is connected.\n"
"\n"
"Show this message again?"
msgstr ""

#: ProbePage.py:603 ProbePage.py:634 ProbePage.py:972 ProbePage.py:979


#: ProbePage.py:992 ProbePage.py:999 ProbePage.py:1009 ProbePage.py:1016
#: ProbePage.py:1023
msgid "Probe Error"
msgstr ""

#: ProbePage.py:604 ProbePage.py:1024
msgid "Invalid probe feed rate"
msgstr ""

#: ProbePage.py:635
msgid "At least one probe direction should be specified"
msgstr ""

#: ProbePage.py:660
msgid "Probe Center Error"
msgstr ""

#: ProbePage.py:661
msgid "Invalid diameter entered"
msgstr ""

#: ProbePage.py:721
msgid "Do you want to delete all orientation markers?"
msgstr ""

#: ProbePage.py:812
msgid "Min"
msgstr ""

#: ProbePage.py:814
msgid "Max"
msgstr ""

#: ProbePage.py:816
msgid "Step"
msgstr ""

#: ProbePage.py:827
msgid "X minimum"
msgstr ""
#: ProbePage.py:833
msgid "X maximum"
msgstr ""

#: ProbePage.py:840
msgid "X step"
msgstr ""

#: ProbePage.py:849
msgid "X bins"
msgstr ""

#: ProbePage.py:859
msgid "Y minimum"
msgstr ""

#: ProbePage.py:865
msgid "Y maximum"
msgstr ""

#: ProbePage.py:872
msgid "Y step"
msgstr ""

#: ProbePage.py:881
msgid "Y bins"
msgstr ""

#: ProbePage.py:892
msgid "Z Minimum depth to scan"
msgstr ""

#: ProbePage.py:898
msgid "Z safe to move"
msgstr ""

#: ProbePage.py:973
msgid "Invalid X probing region"
msgstr ""

#: ProbePage.py:980
msgid "Invalid X range [xmin>=xmax]"
msgstr ""

#: ProbePage.py:993
msgid "Invalid Y probing region"
msgstr ""

#: ProbePage.py:1000
msgid "Invalid Y range [ymin>=ymax]"
msgstr ""

#: ProbePage.py:1010
msgid "Invalid Z probing region"
msgstr ""

#: ProbePage.py:1017
msgid "Invalid Z range [zmin>=zmax]"
msgstr ""
#: ProbePage.py:1044
msgid "Delete autolevel information"
msgstr ""

#: ProbePage.py:1045
msgid "Do you want to delete all autolevel in formation?"
msgstr ""

#: ProbePage.py:1077
msgid "Switch To"
msgstr ""

#: ProbePage.py:1083
msgid "Switch between camera and spindle"
msgstr ""

#: ProbePage.py:1089
msgid "Edge Detection"
msgstr ""

#: ProbePage.py:1096
msgid "Turn on/off edge detection"
msgstr ""

#: ProbePage.py:1102
msgid "Freeze"
msgstr ""

#: ProbePage.py:1109
msgid "Turn on/off freeze image"
msgstr ""

#: ProbePage.py:1160
msgid "Location:"
msgstr ""

#: ProbePage.py:1167
msgid "Camera location inside canvas"
msgstr ""

#: ProbePage.py:1171
msgid "Scale:"
msgstr ""

#: ProbePage.py:1177
msgid "Camera scale [pixels / unit]"
msgstr ""

#: ProbePage.py:1181
msgid "Crosshair:"
msgstr ""

#: ProbePage.py:1187
msgid "Camera cross hair diameter [units]"
msgstr ""

#: ProbePage.py:1189
msgid "Get"
msgstr ""

#: ProbePage.py:1191
msgid "Get diameter from active endmill"
msgstr ""

#: ProbePage.py:1201 ProbePage.py:1208
msgid "Camera offset from gantry"
msgstr ""

#: ProbePage.py:1215
msgid "Spindle Z position when camera was registered"
msgstr ""

#: ProbePage.py:1218
msgid "Register:"
msgstr ""

#: ProbePage.py:1219
msgid "1. Spindle"
msgstr ""

#: ProbePage.py:1223
msgid "Mark spindle position for calculating offset"
msgstr ""

#: ProbePage.py:1225
msgid "2. Camera"
msgstr ""

#: ProbePage.py:1229
msgid "Mark camera position for calculating offset"
msgstr ""

#: ProbePage.py:1296
msgid "Spindle position is registered"
msgstr ""

#: ProbePage.py:1303
msgid "Spindle position is not registered"
msgstr ""

#: ProbePage.py:1304
msgid "Spindle position must be registered before camera"
msgstr ""

#: ProbePage.py:1310
msgid "Camera offset is updated"
msgstr ""

#: ProbePage.py:1369 ProbePage.py:1516
msgid "Calibrate"
msgstr ""

#: ProbePage.py:1375
msgid "Perform a single a tool change cycle to set the calibration field"
msgstr ""

#: ProbePage.py:1379
msgid "Change"
msgstr ""

#: ProbePage.py:1385
msgid "Perform a tool change cycle"
msgstr ""

#: ProbePage.py:1394
msgid "Manual Tool Change"
msgstr ""

#: ProbePage.py:1399
msgid "Policy:"
msgstr ""

#: ProbePage.py:1408
msgid "Tool change policy"
msgstr ""

#: ProbePage.py:1414
msgid "Pause:"
msgstr ""

#: ProbePage.py:1437
msgid "Change:"
msgstr ""

#: ProbePage.py:1441
msgid "Manual tool change Machine X location"
msgstr ""

#: ProbePage.py:1447
msgid "Manual tool change Machine Y location"
msgstr ""

#: ProbePage.py:1453
msgid "Manual tool change Machine Z location"
msgstr ""

#: ProbePage.py:1457 ProbePage.py:1487
msgid "get"
msgstr ""

#: ProbePage.py:1461
msgid "Get current gantry position as machine tool change location"
msgstr ""

#: ProbePage.py:1471
msgid "Manual tool change Probing MX location"
msgstr ""

#: ProbePage.py:1477
msgid "Manual tool change Probing MY location"
msgstr ""

#: ProbePage.py:1483
msgid "Manual tool change Probing MZ location"
msgstr ""
#: ProbePage.py:1491
msgid "Get current gantry position as machine tool probe location"
msgstr ""

#: ProbePage.py:1497 ControlPage.py:835
msgid "Distance:"
msgstr ""

#: ProbePage.py:1502
msgid "After a tool change distance to scan starting from ProbeZ"
msgstr ""

#: ProbePage.py:1508
msgid "Calibration:"
msgstr ""

#: ProbePage.py:1512
msgid "Tool probe height"
msgstr ""

#: ProbePage.py:1520
msgid "Perform a calibration probing to determine the height"
msgstr ""

#: ProbePage.py:1571 ProbePage.py:1581 ProbePage.py:1589 ProbePage.py:1597


#: ProbePage.py:1605
msgid "Probe Tool Change Error"
msgstr ""

#: ProbePage.py:1572
msgid "Invalid tool change position"
msgstr ""

#: ProbePage.py:1582
msgid "Invalid tool probe location"
msgstr ""

#: ProbePage.py:1590 ProbePage.py:1606
msgid "Invalid tool scanning distance entered"
msgstr ""

#: ProbePage.py:1598
msgid "Invalid tool height or not calibrated"
msgstr ""

#: ProbePage.py:1701
msgid "Probe configuration and probing"
msgstr ""

#: CNCCanvas.py:357
msgid "Select objects with mouse"
msgstr ""

#: CNCCanvas.py:362
msgid "Pan viewport"
msgstr ""

#: CNCCanvas.py:367
msgid "Click to set the origin (zero)"
msgstr ""

#: CNCCanvas.py:372
msgid "Move graphically objects"
msgstr ""

#: CNCCanvas.py:378
msgid "Move CNC gantry to mouse location"
msgstr ""

#: CNCCanvas.py:384
msgid "Set mouse location as current machine position (X/Y only)"
msgstr ""

#: CNCCanvas.py:389
msgid "Drag a ruler to measure distances"
msgstr ""

#: CNCCanvas.py:394
msgid "Add an orientation marker"
msgstr ""

#: CNCCanvas.py:455
msgid "ERROR: Cannot set X-Y marker with the current view"
msgstr ""

#: CNCCanvas.py:541
#, python-format
msgid "origin %g %g %g"
msgstr ""

#: CNCCanvas.py:604
#, python-format
msgid "dx=%g dy=%g dz=%g length=%g angle=%g"
msgstr ""

#: CNCCanvas.py:683
#, python-format
msgid "Move by %g, %g, %g"
msgstr ""

#: CNCCanvas.py:1767
#, python-format
msgid ">>> ERROR: %s\n"
msgstr ""

#: CNCCanvas.py:1768
#, python-format
msgid " line: %s\n"
msgstr ""

#: CNCCanvas.py:1994
msgid "Change viewing angle"
msgstr ""

#: CNCCanvas.py:1998
msgid "Zoom In [Ctrl-=]"
msgstr ""
#: CNCCanvas.py:2003
msgid "Zoom Out [Ctrl--]"
msgstr ""

#: CNCCanvas.py:2008
msgid "Fit to screen [F]"
msgstr ""

#: CNCCanvas.py:2011 ControlPage.py:868
msgid "Tool:"
msgstr ""

#: CNCCanvas.py:2022
msgid "Select tool [S]"
msgstr ""

#: CNCCanvas.py:2031
msgid "Pan viewport [X]"
msgstr ""

#: CNCCanvas.py:2057
msgid "Ruler [R]"
msgstr ""

#: CNCCanvas.py:2063
msgid "Draw:"
msgstr ""

#: CNCCanvas.py:2072
msgid "Toggle display of axes"
msgstr ""

#: CNCCanvas.py:2080
msgid "Toggle display of grid lines"
msgstr ""

#: CNCCanvas.py:2088
msgid "Toggle display of margins"
msgstr ""

#: CNCCanvas.py:2097
msgid "Toggle display of probe"
msgstr ""

#: CNCCanvas.py:2105
msgid "Toggle display of paths (G1,G2,G3)"
msgstr ""

#: CNCCanvas.py:2113
msgid "Toggle display of rapid motion (G0)"
msgstr ""

#: CNCCanvas.py:2121
msgid "Toggle display of workarea"
msgstr ""

#: CNCCanvas.py:2129
msgid "Toggle display of camera"
msgstr ""
#: CNCCanvas.py:2136
msgid "Redraw display [Ctrl-R]"
msgstr ""

#: CNCCanvas.py:2144
msgid "Draw timeout in seconds"
msgstr ""

#: bCNC.py:87
msgid "All accepted"
msgstr ""

#: bCNC.py:88 bCNC.py:2003
msgid "G-Code"
msgstr ""

#: bCNC.py:89
msgid "G-Code clean"
msgstr ""

#: bCNC.py:144
msgid "Controller buffer fill"
msgstr ""

#: bCNC.py:171
msgid ""
"MDI Command line: Accept g-code commands or macro commands (RESET/HOME...) "
"or editor commands (move,inkscape, round...) [Space or Ctrl-Space]"
msgstr ""

#: bCNC.py:511
msgid "Running"
msgstr ""

#: bCNC.py:512
msgid "CNC is currently running, please stop it before."
msgstr ""

#: bCNC.py:713
#, python-format
msgid "About %s"
msgstr ""

#: bCNC.py:748
msgid ""
"bCNC/\tAn advanced fully featured\n"
"\tg-code sender for GRBL."
msgstr ""

#: bCNC.py:925
msgid "Enabled GCode"
msgstr ""

#: bCNC.py:930 bCNC.py:1003
msgid "Margins X:"
msgstr ""

#: bCNC.py:963 bCNC.py:1036
msgid "# Blocks:"
msgstr ""

#: bCNC.py:971 bCNC.py:1043
msgid "Length:"
msgstr ""

#: bCNC.py:979
msgid "Rapid:"
msgstr ""

#: bCNC.py:987 bCNC.py:1051
msgid "Time:"
msgstr ""

#: bCNC.py:998
msgid "All GCode"
msgstr ""

#: bCNC.py:1219
msgid "Evaluation error"
msgstr ""

#: bCNC.py:1297
msgid "Direction command error"
msgstr ""

#: bCNC.py:1298
#, python-format
msgid "Invalid direction %s specified"
msgstr ""

#: bCNC.py:1461
msgid "Please select the blocks of gcode you want to optimize."
msgstr ""

#: bCNC.py:1604
#, python-format
msgid "EndMill: %s %g"
msgstr ""

#: bCNC.py:1629
#, python-format
msgid "Invalid user command %s"
msgstr ""

#: bCNC.py:1665
msgid "Nothing to do"
msgstr ""

#: bCNC.py:1666
#, python-format
msgid "Operation %s requires some gcode to be selected"
msgstr ""

#: bCNC.py:1710
msgid "Operation error"
msgstr ""
#: bCNC.py:1751
#, python-format
msgid "Profile block distance=%g"
msgstr ""

#: bCNC.py:1764
msgid "Open paths"
msgstr ""

#: bCNC.py:1765
#, python-format
msgid "WARNING: %s"
msgstr ""

#: bCNC.py:1886
msgid "Open file"
msgstr ""

#: bCNC.py:1902
msgid "Save file"
msgstr ""

#: bCNC.py:1911
msgid "File modified"
msgstr ""

#: bCNC.py:1912
msgid "Gcode was modified do you want to save it first?"
msgstr ""

#: bCNC.py:1921
msgid "Probe File modified"
msgstr ""

#: bCNC.py:1922
msgid "Probe was modified do you want to save it first?"
msgstr ""

#: bCNC.py:1945
msgid "Existing Autolevel"
msgstr ""

#: bCNC.py:1946
msgid ""
"Autolevel/probe information already exists.\n"
"Delete it?"
msgstr ""

#: bCNC.py:1951
#, python-format
msgid "Loading: %s ..."
msgstr ""

#: bCNC.py:1972
#, python-format
msgid "'%s' reloaded at '%s'"
msgstr ""

#: bCNC.py:1974
#, python-format
msgid "'%s' loaded"
msgstr ""

#: bCNC.py:1980
#, python-format
msgid "'%s' saved"
msgstr ""

#: bCNC.py:1999
msgid "Import Gcode/DXF file"
msgstr ""

#: bCNC.py:2033
msgid "Warning"
msgstr ""

#: bCNC.py:2034
#, python-format
msgid ""
"Gcode file %s was changed since editing started\n"
"Reload new version?"
msgstr ""

#: bCNC.py:2069
msgid "Error opening serial"
msgstr ""

#: bCNC.py:2099
msgid "Serial Error"
msgstr ""

#: bCNC.py:2100
msgid "Serial is not connected"
msgstr ""

#: bCNC.py:2107
msgid "Already running"
msgstr ""

#: bCNC.py:2108
msgid "Please stop before"
msgstr ""

#: bCNC.py:2154
msgid "Empty gcode"
msgstr ""

#: bCNC.py:2155
msgid "Not gcode file was loaded"
msgstr ""

#: bCNC.py:2183
msgid "Running..."
msgstr ""

#: bCNC.py:2201
msgid "Pendant started:\n"
msgstr ""
#: bCNC.py:2205
msgid "Pendant already started:\n"
msgstr ""

#: bCNC.py:2207
msgid ""
"\n"
"Would you like open it locally?"
msgstr ""

#: bCNC.py:2217
msgid "Pendant stopped"
msgstr ""

#: bCNC.py:2525
msgid "python serial missing"
msgstr ""

#: bCNC.py:2526
msgid ""
"ERROR: Please install the python pyserial module\n"
"Windows:\n"
"\tC:\\PythonXX\\Scripts\\easy_install pyserial\n"
"Mac:\tpip install pyserial\n"
"Linux:\tsudo apt-get install python-serial\n"
"\tor yum install python-serial\n"
"\tor dnf install python-pyserial"
msgstr ""

#: ControlPage.py:40
msgid "Connection"
msgstr ""

#: ControlPage.py:41
msgid "Hard Reset"
msgstr ""

#: ControlPage.py:48
msgid "Home"
msgstr ""

#: ControlPage.py:54
msgid "Perform a homing cycle [$H]"
msgstr ""

#: ControlPage.py:61
msgid "Unlock"
msgstr ""

#: ControlPage.py:67
msgid "Unlock controller [$X]"
msgstr ""

#: ControlPage.py:73
msgid "Reset"
msgstr ""

#: ControlPage.py:79
msgid "Software reset of controller [ctrl-x]"
msgstr ""

#: ControlPage.py:112
msgid "Run g-code commands from editor to controller"
msgstr ""

#: ControlPage.py:117
msgid "Pause"
msgstr ""

#: ControlPage.py:121
msgid "Pause running program. Sends either FEED_HOLD ! or CYCLE_START ~"
msgstr ""

#: ControlPage.py:129
msgid "Pause running program and soft reset controller to empty the buffer."
msgstr ""

#: ControlPage.py:148
msgid "Status:"
msgstr ""

#: ControlPage.py:159
msgid ""
"Show current state of the machine\n"
"Click to see details\n"
"Right-Click to clear alarm/errors"
msgstr ""

#: ControlPage.py:167
msgid "WPos:"
msgstr ""

#: ControlPage.py:177
msgid "X work position (click to set)"
msgstr ""

#: ControlPage.py:190
msgid "Y work position (click to set)"
msgstr ""

#: ControlPage.py:203
msgid "Z work position (click to set)"
msgstr ""

#: ControlPage.py:211
msgid "MPos:"
msgstr ""

#: ControlPage.py:234
msgid "Set X coordinate to zero (or to typed coordinate in WPos)"
msgstr ""

#: ControlPage.py:243
msgid "Set Y coordinate to zero (or to typed coordinate in WPos)"
msgstr ""

#: ControlPage.py:252
msgid "Set Z coordinate to zero (or to typed coordinate in WPos)"
msgstr ""

#: ControlPage.py:261
msgid "Set WPOS"
msgstr ""

#: ControlPage.py:268
msgid "Set WPOS to mouse location"
msgstr ""

#: ControlPage.py:272
msgid "Move Gantry"
msgstr ""

#: ControlPage.py:280
msgid "Move gantry to mouse location [g]"
msgstr ""

#: ControlPage.py:291
msgid "Show Info"
msgstr ""

#: ControlPage.py:293
msgid "Clear Message"
msgstr ""

#: ControlPage.py:297
msgid "Feed hold"
msgstr ""

#: ControlPage.py:299
msgid "Resume"
msgstr ""

#: ControlPage.py:415
#, python-format
msgid "Last error: %s\n"
msgstr ""

#: ControlPage.py:421
msgid ""
"No info available.\n"
"Please contact the author."
msgstr ""

#: ControlPage.py:422
#, python-format
msgid "State: %s"
msgstr ""

#: ControlPage.py:449
msgid "Move +Z"
msgstr ""

#: ControlPage.py:459
msgid "Move -X +Y"
msgstr ""
#: ControlPage.py:468
msgid "Move +Y"
msgstr ""

#: ControlPage.py:477
msgid "Move +X +Y"
msgstr ""

#: ControlPage.py:486
msgid "Multiply step by 10"
msgstr ""

#: ControlPage.py:495
msgid "Increase step by 1 unit"
msgstr ""

#: ControlPage.py:510
msgid "Move -X"
msgstr ""

#: ControlPage.py:519
msgid ""
"Move to Origin.\n"
"User configurable button.\n"
"Right click to configure."
msgstr ""

#: ControlPage.py:528
msgid "Move +X"
msgstr ""

#: ControlPage.py:540
msgid "Step for every move operation"
msgstr ""

#: ControlPage.py:550
msgid "Step for Z move operation"
msgstr ""

#: ControlPage.py:580
msgid "Move -Z"
msgstr ""

#: ControlPage.py:589
msgid "Move -X -Y"
msgstr ""

#: ControlPage.py:598
msgid "Move -Y"
msgstr ""

#: ControlPage.py:607
msgid "Move +X -Y"
msgstr ""

#: ControlPage.py:615
msgid "Divide step by 10"
msgstr ""
#: ControlPage.py:623
msgid "Decrease step by 1 unit"
msgstr ""

#: ControlPage.py:700
#, python-format
msgid "Step: %g"
msgstr ""

#: ControlPage.py:705
#, python-format
msgid "Step: %g Zstep:%g "
msgstr ""

#: ControlPage.py:829
#, python-format
msgid "Switch to workspace %s"
msgstr ""

#: ControlPage.py:843
msgid "Distance Mode [G90,G91]"
msgstr ""

#: ControlPage.py:853
msgid "Units:"
msgstr ""

#: ControlPage.py:861
msgid "Units [G20, G21]"
msgstr ""

#: ControlPage.py:873
msgid "Tool number [T#]"
msgstr ""

#: ControlPage.py:885
msgid "Plane:"
msgstr ""

#: ControlPage.py:893
msgid "Plane [G17,G18,G19]"
msgstr ""

#: ControlPage.py:901
msgid "Feed:"
msgstr ""

#: ControlPage.py:908
msgid "Feed Rate [F#]"
msgstr ""

#: ControlPage.py:919
msgid "Mode:"
msgstr ""

#: ControlPage.py:928
msgid "Feed Mode [G93, G94, G95]"
msgstr ""
#: ControlPage.py:949
msgid "Select override type."
msgstr ""

#: ControlPage.py:953
msgid "Reset override to 100%"
msgstr ""

#: ControlPage.py:967
msgid "Set Feed/Rapid/Spindle Override. Right or Double click to reset."
msgstr ""

#: ControlPage.py:974
msgid "Spindle"
msgstr ""

#: ControlPage.py:982
msgid "Start/Stop spindle (M3/M5)"
msgstr ""

#: ControlPage.py:993
msgid "Set spindle RPM"
msgstr ""

#: ControlPage.py:1111
msgid "CNC communication and control"
msgstr ""

#: ControlPage.py:1112
msgid "Control"
msgstr ""

#: TerminalPage.py:25 TerminalPage.py:146
msgid "Terminal"
msgstr ""

#: TerminalPage.py:33
msgid "Clear terminal"
msgstr ""

#: TerminalPage.py:40
msgid "Commands"
msgstr ""

#: TerminalPage.py:41
msgid "Restore Settings"
msgstr ""

#: TerminalPage.py:42
msgid "Restore Workspace"
msgstr ""

#: TerminalPage.py:43
msgid "Restore All"
msgstr ""

#: TerminalPage.py:54
msgid "Settings"
msgstr ""
#: TerminalPage.py:61
msgid "$$ Display settings of Grbl"
msgstr ""

#: TerminalPage.py:67
msgid "Parameters"
msgstr ""

#: TerminalPage.py:73
msgid "$# Display parameters of Grbl"
msgstr ""

#: TerminalPage.py:79
msgid "State"
msgstr ""

#: TerminalPage.py:85
msgid "$G Display state of Grbl"
msgstr ""

#: TerminalPage.py:93
msgid "Build"
msgstr ""

#: TerminalPage.py:99
msgid "$I Display build information of Grbl"
msgstr ""

#: TerminalPage.py:105
msgid "Startup"
msgstr ""

#: TerminalPage.py:112
msgid "$N Display startup configuration of Grbl"
msgstr ""

#: TerminalPage.py:119
msgid "Check gcode"
msgstr ""

#: TerminalPage.py:126
msgid "$C Enable/Disable checking of gcode"
msgstr ""

#: TerminalPage.py:134
msgid "Help"
msgstr ""

#: TerminalPage.py:140
msgid "$ Display build information of Grbl"
msgstr ""

#: TerminalPage.py:159
msgid "Terminal communication with controller"
msgstr ""

#: TerminalPage.py:170
msgid "Buffered commands"
msgstr ""

#: TerminalPage.py:194
msgid "Serial Terminal"
msgstr ""

#: lib/bFileDialog.py:248
msgid "Directory:"
msgstr ""

#: lib/bFileDialog.py:274 plugins/hilbert.py:88
msgid "Size"
msgstr ""

#: lib/bFileDialog.py:275
msgid "Date"
msgstr ""

#: lib/bFileDialog.py:295
msgid "File name:"
msgstr ""

#: lib/bFileDialog.py:302
msgid "Files of type:"
msgstr ""

#: lib/bFileDialog.py:532 lib/bFileDialog.py:590 lib/bFileDialog.py:797


#: lib/bFileDialog.py:821 lib/bFileDialog.py:843
msgid "Error"
msgstr ""

#: lib/bFileDialog.py:533
#, python-format
msgid "Cannot access path \"%s\""
msgstr ""

#: lib/bFileDialog.py:591
#, python-format
msgid "Error listing folder \"%s\""
msgstr ""

#: lib/bFileDialog.py:785
msgid "NewFolder"
msgstr ""

#: lib/bFileDialog.py:798
#, python-format
msgid "Error creating folder \"%s\""
msgstr ""

#: lib/bFileDialog.py:822
#, python-format
msgid "Error renaming \"%s\" to \"%s\""
msgstr ""

#: lib/bFileDialog.py:844
#, python-format
msgid "Error deleting file \"%s\""
msgstr ""
#: lib/bFileDialog.py:861 lib/bFileDialog.py:870
msgid "File does not exist"
msgstr ""

#: lib/bFileDialog.py:862 lib/bFileDialog.py:871
#, python-format
msgid "File \"%s\" does not exist"
msgstr ""

#: lib/bFileDialog.py:879
msgid "Save As"
msgstr ""

#: lib/bFileDialog.py:890
msgid "File already exists"
msgstr ""

#: lib/bFileDialog.py:891
#, python-format
msgid "Overwrite existing file %r?"
msgstr ""

#: lib/bFileDialog.py:902
msgid "Choose Directory"
msgstr ""

#: plugins/sketch.py:13
msgid "Sketch"
msgstr ""

#: plugins/sketch.py:34
msgid "Create sketch based on picture brightness"
msgstr ""

#: plugins/sketch.py:42
msgid "Grundgy, search radius"
msgstr ""

#: plugins/sketch.py:43 plugins/pyrograph.py:40 plugins/heightmap.py:49


#: plugins/halftone.py:50 plugins/text.py:38
msgid "Working Depth"
msgstr ""

#: plugins/sketch.py:44 plugins/pyrograph.py:41 plugins/heightmap.py:50


msgid "Maximum size"
msgstr ""

#: plugins/sketch.py:45
msgid "Squiggle total count"
msgstr ""

#: plugins/sketch.py:46
msgid "Squiggle Length"
msgstr ""

#: plugins/sketch.py:47 plugins/pyrograph.py:45 plugins/halftone.py:49


msgid "Draw border"
msgstr ""
#: plugins/sketch.py:48 plugins/pyrograph.py:46 plugins/heightmap.py:58
#: plugins/halftone.py:41
msgid "Image to process"
msgstr ""

#: plugins/sketch.py:49 plugins/halftone.py:42
msgid "Channel to analyze"
msgstr ""

#: plugins/sketch.py:141
msgid "Sketch abort: This plugin requires PIL/Pillow to read image data"
msgstr ""

#: plugins/sketch.py:168
msgid "Sketch abort: Too small to draw anything!"
msgstr ""

#: plugins/sketch.py:172
msgid "Sketch abort: Please let me draw at least 1 squiggle"
msgstr ""

#: plugins/sketch.py:176
msgid "Sketch abort: Squiggle Length must be > 0"
msgstr ""

#: plugins/sketch.py:183
msgid "Sketch abort: Can't read image file"
msgstr ""

#: plugins/sketch.py:274
#, python-format
msgid "Generated Sketch size W=%d x H=%d x distance=%d, Total length:%d"
msgstr ""

#: plugins/pyrograph.py:11
msgid "Pyrograph"
msgstr ""

#: plugins/pyrograph.py:31
msgid "Create a variable feed path based upon image brightness"
msgstr ""

#: plugins/pyrograph.py:39
msgid "Pyrograph tip size"
msgstr ""

#: plugins/pyrograph.py:42
msgid "Minimum feed"
msgstr ""

#: plugins/pyrograph.py:43
msgid "Maximum feed"
msgstr ""

#: plugins/pyrograph.py:55
msgid "Pyrograph abort: This plugin requires PIL/Pillow"
msgstr ""
#: plugins/pyrograph.py:72
msgid "Pyrograph abort: please define a scan Direction"
msgstr ""

#: plugins/pyrograph.py:76
msgid "Pyrograph abort: Tool Size must be > 0"
msgstr ""

#: plugins/pyrograph.py:80
msgid "Pyrograph abort: Please check feed rate parameters"
msgstr ""

#: plugins/pyrograph.py:91
msgid "Pyrograph abort: Can't read image file"
msgstr ""

#: plugins/pyrograph.py:201
#, python-format
msgid "Generated Pyrograph W=%g x H=%g x D=%g"
msgstr ""

#: plugins/heightmap.py:17
msgid "Heightmap"
msgstr ""

#: plugins/heightmap.py:41
msgid "Use a brightess map to create a variable Z path"
msgstr ""

#: plugins/heightmap.py:53
msgid "ScanDir"
msgstr ""

#: plugins/heightmap.py:54
msgid "Cut Top"
msgstr ""

#: plugins/heightmap.py:55
msgid "Cut Border"
msgstr ""

#: plugins/heightmap.py:57
msgid "Single pass"
msgstr ""

#: plugins/heightmap.py:68
msgid "Heightmap abort: This plugin requires PIL/Pillow"
msgstr ""

#: plugins/heightmap.py:77
msgid "Heightmap abort: Can't read image file"
msgstr ""

#: plugins/heightmap.py:81
msgid "Heightmap abort: depth must be < 0"
msgstr ""

#: plugins/heightmap.py:152
msgid "Heightmap abort: angle not defined for selected End Mill"
msgstr ""

#: plugins/heightmap.py:367
#, python-format
msgid "Generated Heightmap %d x %d x %d "
msgstr ""

#: plugins/midi2cnc.py:33
msgid "Sound your machine from a midi file"
msgstr ""

#: plugins/midi2cnc.py:50
msgid "Pulse per unit for X"
msgstr ""

#: plugins/midi2cnc.py:51
msgid "Pulse per unit for Y"
msgstr ""

#: plugins/midi2cnc.py:52
msgid "Pulse per unit for Z"
msgstr ""

#: plugins/midi2cnc.py:53
msgid "Maximum X travel"
msgstr ""

#: plugins/midi2cnc.py:54
msgid "Maximum Y travel"
msgstr ""

#: plugins/midi2cnc.py:55
msgid "Maximum Z travel"
msgstr ""

#: plugins/midi2cnc.py:56
msgid "Axis to be used"
msgstr ""

#: plugins/midi2cnc.py:57
msgid "Midi to process"
msgstr ""

#: plugins/midi2cnc.py:99
msgid "Error: This plugin requires midiparser.py"
msgstr ""

#: plugins/midi2cnc.py:137
msgid "Error: Sorry can't parse the Midi file."
msgstr ""

#: plugins/midi2cnc.py:295
msgid "Generated Midi2CNC, ready to play?"
msgstr ""

#: plugins/hilbert.py:12
msgid "Hilbert"
msgstr ""
#: plugins/hilbert.py:81
msgid "Create a Hilbert path"
msgstr ""

#: plugins/hilbert.py:90 plugins/zigzag.py:100
msgid "Depth"
msgstr ""

#: plugins/hilbert.py:106
msgid "Hilbert abort: verify the size"
msgstr ""

#: plugins/hilbert.py:110
msgid "Hilbert abort: depth must be minor or equal to zero"
msgstr ""

#: plugins/hilbert.py:119
msgid "Generated: Hilbert"
msgstr ""

#: plugins/gear.py:11
msgid "Gear"
msgstr ""

#: plugins/gear.py:157
msgid "Generate a spur gear"
msgstr ""

#: plugins/gear.py:164
msgid "No of teeth"
msgstr ""

#: plugins/gear.py:165
msgid "Pressure angle"
msgstr ""

#: plugins/gear.py:166
msgid "Circular Pitch"
msgstr ""

#: plugins/gear.py:178
msgid "Create Spur GEAR"
msgstr ""

#: plugins/gear.py:180
msgid "Generated: Spur GEAR"
msgstr ""

#: plugins/flatten.py:11
msgid "Flatten"
msgstr ""

#: plugins/flatten.py:34
msgid "Flatten abort: Cut Direction is undefined"
msgstr ""

#: plugins/flatten.py:38
msgid "Flatten abort: Pocket Type is undefined"
msgstr ""
#: plugins/flatten.py:42
msgid "Flatten abort: Flatten Area dimensions must be > 0"
msgstr ""

#: plugins/flatten.py:46
msgid "Flatten abort: Hey this is only for subtractive machine! Check depth!"
msgstr ""

#: plugins/flatten.py:83
msgid "Flatten abort: Flatten area is too small for this End Mill."
msgstr ""

#: plugins/flatten.py:249
msgid "Flatten an area in different ways"
msgstr ""

#: plugins/flatten.py:256
msgid "X start"
msgstr ""

#: plugins/flatten.py:257
msgid "Y start"
msgstr ""

#: plugins/flatten.py:258
msgid "Width to flatten"
msgstr ""

#: plugins/flatten.py:259
msgid "Height to flatten"
msgstr ""

#: plugins/flatten.py:260
msgid "Depth to flatten"
msgstr ""

#: plugins/flatten.py:261
msgid "Raster border"
msgstr ""

#: plugins/flatten.py:262
msgid "Cut Direction"
msgstr ""

#: plugins/flatten.py:263
msgid "Pocket type"
msgstr ""

#: plugins/flatten.py:289
msgid "Flatten: Generated flatten surface"
msgstr ""

#: plugins/driller.py:12
msgid "Driller"
msgstr ""

#: plugins/driller.py:31
msgid "Create holes along selected blocks"
msgstr ""

#: plugins/driller.py:39
msgid "Distance between holes"
msgstr ""

#: plugins/driller.py:41
msgid "Peck, 0 meas None"
msgstr ""

#: plugins/driller.py:42
msgid "Dwell time, 0 means None"
msgstr ""

#: plugins/driller.py:114
msgid "Driller abort: Distance must be > 0"
msgstr ""

#: plugins/driller.py:118
msgid "Driller abort: Peck must be >= 0"
msgstr ""

#: plugins/driller.py:122
msgid "Driller abort: Dwell time >= 0, here time runs only forward!"
msgstr ""

#: plugins/driller.py:132
msgid "Driller abort: Please select some path"
msgstr ""

#: plugins/driller.py:222
#, python-format
msgid "Generated Driller: %d holes"
msgstr ""

#: plugins/tile.py:11
msgid "Tile"
msgstr ""

#: plugins/tile.py:28
msgid "Generate replicas of selected code"
msgstr ""

#: plugins/tile.py:51
msgid "Tile error"
msgstr ""

#: plugins/tile.py:52
msgid "No g-code blocks selected"
msgstr ""

#: plugins/tile.py:93
msgid "Tiled selected blocks"
msgstr ""

#: plugins/spirograph.py:12
msgid "Spirograph"
msgstr ""
#: plugins/spirograph.py:95
msgid "Create a spirograph path"
msgstr ""

#: plugins/spirograph.py:102
msgid "External Radius"
msgstr ""

#: plugins/spirograph.py:103
msgid "Internal Radius"
msgstr ""

#: plugins/spirograph.py:104
msgid "Offset radius"
msgstr ""

#: plugins/spirograph.py:124
msgid "Generated: Spirograph"
msgstr ""

#: plugins/bowl.py:10
msgid "Bowl"
msgstr ""

#: plugins/bowl.py:101
msgid "Generate a bowl cavity"
msgstr ""

#: plugins/bowl.py:109
msgid "Resolution (degrees)"
msgstr ""

#: plugins/bowl.py:110
msgid "Progressive"
msgstr ""

#: plugins/bowl.py:125
msgid "Generated: BOWL"
msgstr ""

#: plugins/bowl.py:127
msgid "Error: Check the Bowl and End Mill parameters"
msgstr ""

#: plugins/zigzag.py:11
msgid "Zig-Zag"
msgstr ""

#: plugins/zigzag.py:88
msgid "Create a Zig-Zag path"
msgstr ""

#: plugins/zigzag.py:95
msgid "Number of lines"
msgstr ""

#: plugins/zigzag.py:96
msgid "Line length"
msgstr ""
#: plugins/zigzag.py:97
msgid "Additional length at start/end"
msgstr ""

#: plugins/zigzag.py:98
msgid "Step distance"
msgstr ""

#: plugins/zigzag.py:99
msgid "Corner resolution"
msgstr ""

#: plugins/zigzag.py:119
msgid "Zig-Zag abort: verify Nlines > 0"
msgstr ""

#: plugins/zigzag.py:123
msgid "Zig-Zag abort: verify LineLen > 0"
msgstr ""

#: plugins/zigzag.py:127
msgid "Zig-Zag abort: verify Step > 0"
msgstr ""

#: plugins/zigzag.py:131
msgid "Zig-Zag abort: verify CornerRes >= 0"
msgstr ""

#: plugins/zigzag.py:135
msgid "Zig-Zag abort: depth must be minor or equal to zero"
msgstr ""

#: plugins/zigzag.py:144
msgid "Generated: Zig-Zag"
msgstr ""

#: plugins/halftone.py:11
msgid "Halftone"
msgstr ""

#: plugins/halftone.py:33
msgid "Create halftone pattern from a picture"
msgstr ""

#: plugins/halftone.py:43
msgid "Invert Colors"
msgstr ""

#: plugins/halftone.py:44
msgid "Max draw size (Width or Height)"
msgstr ""

#: plugins/halftone.py:45
msgid "Cell size"
msgstr ""

#: plugins/halftone.py:46
msgid "Max diameter, cap limit"
msgstr ""

#: plugins/halftone.py:47
msgid "Min diameter, cut off"
msgstr ""

#: plugins/halftone.py:48
msgid "Image rotation angle"
msgstr ""

#: plugins/halftone.py:51
msgid "Generate for conical end mill"
msgstr ""

#: plugins/halftone.py:95
msgid "Halftone abort: This plugin requires PIL/Pillow to read image data"
msgstr ""

#: plugins/halftone.py:115
msgid "Halftone abort: Size too small to draw anything!"
msgstr ""

#: plugins/halftone.py:119
msgid "Halftone abort: Minimum diameter must be minor then Maximum"
msgstr ""

#: plugins/halftone.py:123
msgid "Halftone abort: Maximum diameter too small"
msgstr ""

#: plugins/halftone.py:127
msgid "Halftone abort: Cell size too small"
msgstr ""

#: plugins/halftone.py:137
msgid "Halftone abort: Angle in V-Cutting end mill is missing"
msgstr ""

#: plugins/halftone.py:140
msgid "Halftone abort: Conical path need V-Cutting end mill"
msgstr ""

#: plugins/halftone.py:148
msgid "Halftone abort: Can't read image file"
msgstr ""

#: plugins/halftone.py:242
#, python-format
msgid "Generated Halftone size W=%d x H=%d x D=%d ,Total points:%i"
msgstr ""

#: plugins/box.py:11
msgid "Box"
msgstr ""

#: plugins/box.py:299
msgid "Generate a finger box"
msgstr ""
#: plugins/box.py:306
msgid "Internal Dimensions"
msgstr ""

#: plugins/box.py:307
msgid "Width Dx"
msgstr ""

#: plugins/box.py:308
msgid "Depth Dy"
msgstr ""

#: plugins/box.py:309
msgid "Height Dz"
msgstr ""

#: plugins/box.py:310
msgid "Fingers Nx"
msgstr ""

#: plugins/box.py:311
msgid "Fingers Ny"
msgstr ""

#: plugins/box.py:312
msgid "Fingers Nz"
msgstr ""

#: plugins/box.py:350
msgid "Create finger BOX"
msgstr ""

#: plugins/box.py:352
msgid "Generated: BOX with fingers"
msgstr ""

#: plugins/text.py:30
msgid "Create text using a ttf font"
msgstr ""

#: plugins/text.py:37
msgid "Text to generate"
msgstr ""

#: plugins/text.py:39
msgid "Font size"
msgstr ""

#: plugins/text.py:40
msgid "Font file"
msgstr ""

#: plugins/text.py:41
msgid "Image to Ascii"
msgstr ""

#: plugins/text.py:42
msgid "Image chars width"
msgstr ""
#: plugins/text.py:58
msgid "Text abort: please input a Font size > 0"
msgstr ""

#: plugins/text.py:61
msgid "Text abort: please select a font file"
msgstr ""

#: plugins/text.py:88
msgid "Text abort: That embarrassing, I can't read this font file!"
msgstr ""

You might also like