Skip to content

Commit 007d053

Browse files
authored
Merge pull request #3576 from smoe/docs_fixes_20250812
Presumed final translation-associated weirdnesses (smoe:docs_fixes_20250812)
2 parents 4ff35bb + 0423e44 commit 007d053

21 files changed

Lines changed: 231 additions & 317 deletions

docs/src/config/core-components.adoc

Lines changed: 18 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,7 @@ unlock_joints_mask=0x38 selects joints 3,4,5
9595
[[sec:motion-pins]]
9696
=== Pins(((motion:HAL pins)))
9797

98-
These pins, parameters, and functions are created by the realtime 'motmod'
99-
module.
98+
These pins, parameters, and functions are created by the realtime 'motmod' module.
10099

101100
* 'motion.adaptive-feed' - (float, in) When adaptive feed is enabled with 'M52 P1' , the
102101
commanded velocity is multiplied by this value. This effect is
@@ -109,13 +108,10 @@ module.
109108
controlled by M67 or M68.
110109
* 'motion.coord-error' - (bit, out) TRUE when motion has encountered an error, such as
111110
exceeding a soft limit
112-
* 'motion.coord-mode' - (bit, out) TRUE when motion is in 'coordinated mode', as opposed to
113-
'teleop mode'
111+
* 'motion.coord-mode' - (bit, out) TRUE when motion is in 'coordinated mode', as opposed to 'teleop mode'
114112
* 'motion.current-vel' - (float, out) The current tool velocity in user units per second.
115-
* 'motion.digital-in-00' - (bit, in) These pins (00, 01, 02, 03 or more if configured) are
116-
controlled by M62-65.
117-
* 'motion.digital-out-00' - (bit, out) These pins (00, 01, 02, 03 or more if configured) are
118-
controlled by the 'M62-65'.
113+
* 'motion.digital-in-00' - (bit, in) These pins (00, 01, 02, 03 or more if configured) are controlled by M62-65.
114+
* 'motion.digital-out-00' - (bit, out) These pins (00, 01, 02, 03 or more if configured) are controlled by the 'M62-65'.
119115
* 'motion.distance-to-go' - (float,out) The distance remaining in the current move.
120116
* 'motion.enable' - (bit, in) If this bit is driven FALSE, motion stops, the machine is
121117
placed in the 'machine off' state, and a message is displayed for the
@@ -147,32 +143,18 @@ module.
147143
* 'motion.teleop-mode' - (bit, out) TRUE when motion is in 'teleop mode', as opposed to 'coordinated mode'
148144
* 'motion.tooloffset.x ... motion.tooloffset.w' - (float, out, one per axis) shows the tool offset in effect;
149145
it could come from the tool table ('G43' active), or it could come from the G-code ('G43.1' active)
150-
151-
* 'motion.on-soft-limit' -
152-
(bit, out) TRUE when the machine is on a soft limit.
153-
* 'motion.probe-input' -
154-
(bit, in) 'G38.n' uses the value on this pin to determine when the
155-
probe has made contact.
146+
* 'motion.on-soft-limit' - (bit, out) TRUE when the machine is on a soft limit.
147+
* 'motion.probe-input' - (bit, in) 'G38.n' uses the value on this pin to determine when the probe has made contact.
156148
TRUE for probe contact closed (touching),
157149
FALSE for probe contact open.
158-
* 'motion.program-line' -
159-
(s32, out) The current program line while executing. Zero if not
160-
running or between lines while single stepping.
161-
* 'motion.requested-vel' -
162-
(float, out) The current requested velocity in user units per
163-
second. This value is the F-word setting from the G-code file,
164-
possibly reduced to accommodate machine velocity and acceleration
165-
limits. The value on this pin does not reflect the feed override or
166-
any other adjustments.
167-
168-
* 'motion.teleop-mode' -
169-
(bit, out) TRUE when motion is in 'teleop mode', as opposed to
170-
'coordinated mode'
171-
172-
* 'motion.tooloffset.x ... motion.tooloffset.w' -
173-
(float, out, one per axis) shows the tool offset in effect;
174-
it could come from the tool table ('G43' active), or it could
175-
come from the G-code ('G43.1' active)
150+
* 'motion.program-line' - (s32, out) The current program line while executing.
151+
Zero if not running or between lines while single stepping.
152+
* 'motion.requested-vel' - (float, out) The current requested velocity in user units per second.
153+
This value is the F-word setting from the G-code file, possibly reduced to accommodate machine velocity and acceleration limits.
154+
The value on this pin does not reflect the feed override or any other adjustments.
155+
* 'motion.teleop-mode' - (bit, out) TRUE when motion is in 'teleop mode', as opposed to 'coordinated mode'
156+
* 'motion.tooloffset.x ... motion.tooloffset.w' - (float, out, one per axis) shows the tool offset in effect;
157+
it could come from the tool table ('G43' active), or it could come from the G-code ('G43.1' active)
176158

177159
=== Parameters
178160

@@ -191,10 +173,9 @@ change or removal at any time.
191173
* 'motion.debug-float-3' - (float, RO) This is used for debugging purposes.
192174
* 'motion.debug-s32-0' - (s32, RO) This is used for debugging purposes.
193175
* 'motion.debug-s32-1' - (s32, RO) This is used for debugging purposes.
194-
* 'motion.servo.last-period' - (u32, RO) The number of CPU cycles between invocations of the servo
195-
thread. Typically, this number divided by the CPU speed gives the time
196-
in seconds, and can be used to determine whether the realtime motion
197-
controller is meeting its timing constraints
176+
* 'motion.servo.last-period' - (u32, RO) The number of CPU cycles between invocations of the servo thread.
177+
Typically, this number divided by the CPU speed gives the time in seconds,
178+
and can be used to determine whether the realtime motion controller is meeting its timing constraints
198179
* 'motion.servo.last-period-ns' - (float, RO)
199180

200181
=== Functions
@@ -316,7 +297,7 @@ See the motion man page 'motion(9)' for details on the pins and parameters.
316297

317298
== iocontrol
318299

319-
iocontrol - accepts non-realtime I/O commands via NML, interacts with HAL .
300+
iocontrol - accepts non-realtime I/O commands via NML, interacts with HAL.
320301

321302
iocontrol's HAL pins are turned on and off in non-realtime context. If you have strict timing requirements or simply need more I/O, consider using the realtime synchronized I/O provided by <<sec:motion,motion>> instead.
322303

docs/src/config/python-interface.adoc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -321,7 +321,8 @@ see <<python:reading-ini-values,ReadingINI file values>> for an example.
321321
*settings*:: '(returns tuple of floats)' -
322322
current interpreter settings: +
323323
settings[0] = sequence number, +
324-
settings[1] = feed rate, settings[2] = speed, +
324+
settings[1] = feed rate, +
325+
settings[2] = speed, +
325326
settings[3] = `G64 P` blend tolerance, +
326327
settings[4] = `G64 Q` naive CAM tolerance.
327328

docs/src/gcode/coordinates.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ command would not have been modal and any commands issued after it would
148148
have returned to using the G55 offsets because that coordinate system
149149
would still be in effect.
150150

151-
[source,{ngc}]
151+
[source,{ngc}](((G54)))(((G55)))(((G56)))(((G57)))(((G58)))(((G59)))(((G59.1)))(((G59.2)))(((G59.3)))
152152
----
153153
G54 uses parameters of coordinate system 1
154154
G55 uses parameters of coordinate system 2

docs/src/gui/gui-dev-reference.adoc

Lines changed: 20 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -12,18 +12,17 @@
1212
:css: {basebackend@docbook:'':css}
1313

1414
This document attempts to be a 'best practices' reference for general use screen development. +
15-
While it's possible to program just about anything to work with linuxcnc, using common frame work,
16-
language and configuration requirements allows easier transition between screens and more developers
17-
to maintain them. +
15+
While it is possible to program just about anything to work with LinuxCNC, using a common frame work,
16+
language and configuration requirements allows easier transition between screens and more developers to maintain them. +
1817
That said, nothing in this document is written in stone.
1918

2019
== Language
21-
Python is currently the preferred language of linuxcnc's screen code. +
20+
Python is currently the preferred language of LinuxCNC's screen code. +
2221
Python has a low entry bar for new users to modify the screens to suit them. +
23-
Python has a rich array of documentation, tutorials and libraries to pull from. +
24-
It is already used and integrated into linuxcnc's system requirements. +
22+
Python has a rich array of documentation, tutorials and libraries to pull from. +
23+
It is already used and integrated into LinuxCNC's system requirements. +
2524
While C or C\++ could be used, it severely limits who can maintain and develop them. +
26-
It would be better to extend python with C/C++ modules for whatever function that requires it.
25+
It would be better to extend Python with C/C++ modules for whatever function that requires it.
2726

2827
== Localization of float numbers in GUIs
2928
Different locales use different decimal separators and thousands separators. Locale-specific
@@ -37,16 +36,16 @@ are suggested if parsing float to string and vice-versa:
3736

3837
== Basic Configuration
3938
Currently, most screens use a combination of INI file and preference file entries to configure their functions. +
40-
INi text files are usually used for the common machine controller settings, while text based preference files
39+
INI text files are usually used for the common machine controller settings, while text based preference files
4140
are used for more GUI related properties (such as sounds, size, colors). +
42-
There can be other files used for translations, stylizing and function customization. These are highly dependent
41+
There can be other files used for translations, stylizing and function customization. These are highly dependent
4342
on the underlying widget toolkit.
4443

4544
=== INI [DISPLAY]
4645
The *[DISPLAY]* section of the INI is for specifying screen related settings. +
4746

4847
==== Display
49-
The most important of is specifying the name of the screen that the linuxcnc script will use to load. +
48+
The most important of is specifying the name of the screen that the LinuxCNC script will use to load. +
5049
The screen program usually recognizes switches such as to set full screen. +
5150
Title is for the window title and icon is used for iconizing the window.
5251

@@ -93,7 +92,7 @@ ANGULAR_INCREMENTS = continuous, .5, 1, 45, 90, 360
9392
----
9493

9594
==== Machine Type Hint
96-
The screen often needs to be adjusted based on machine type. Lathes have different controls and display DROs
95+
The screen often needs to be adjusted based on machine type. Lathes have different controls and display DROs
9796
differently. Foam machine display the plot differently. +
9897
The old way to do this was adding switches LATHE = 1, FOAM = 1 etc
9998

@@ -124,15 +123,15 @@ DEFAULT_LINEAR_VELOCITY =
124123
MIN_LINEAR_VELOCITY =
125124
MAX_LINEAR_VELOCITY =
126125
127-
DEFAULT_ANGULAR_VELOCITY =
128-
MIN_ANGULAR_VELOCITY =
129-
MAX_ANGULAR_VELOCITY =
126+
DEFAULT_ANGULAR_VELOCITY =
127+
MIN_ANGULAR_VELOCITY =
128+
MAX_ANGULAR_VELOCITY =
130129
----
131130

132131
==== Spindle Manual Controls
133132
Manual controls for spindle control could be, (or a combinations of) buttons, sliders or dials +
134133
You can set limits that are less then the what the machine controller can utilize by setting these entries. +
135-
If your screen is capable of running multiple spindles, then should accept entries higher then the shown '_0_'
134+
If your screen is capable of running multiple spindles, then should accept entries higher then the shown '_0_'.
136135

137136
[source,{ini}]
138137
----
@@ -156,8 +155,8 @@ MDI_COMMAND_MACRO1 = G53 G0 Z0;G53 G0 X0 Y0,Goto\nMachn\nZero
156155
----
157156

158157
=== INI [FILTER]
159-
This section allows setting of what files are shown in the file chooser and
160-
what filter programs will preprocess its output before sending it to linuxcnc. +
158+
This section allows setting of what files are shown in the file chooser and
159+
what filter programs will preprocess its output before sending it to LinuxCNC. +
161160
The extensions follow this pattern: +
162161
PROGRAM_EXTENSION = .extension,.extension2[space]Description of extensions +
163162
The filter program definitions are such: +
@@ -179,7 +178,7 @@ py = python3
179178
----
180179

181180
=== INI [HAL]
182-
Most screens will need some HAL pins. They need to be connected after the screen creates them.+
181+
Most screens will need some HAL pins. They need to be connected after the screen creates them.
183182

184183
==== Postgui Halfile
185184
These files should be run one after another in order, after all the GUI HAL pins have been made.
@@ -204,8 +203,8 @@ POSTGUI_HALCMD = loadusr halmeter
204203
== Extended Configuration
205204

206205
=== Embedding GUI Elements
207-
Allowing users to build small panels independently, that can be embedded into the main screen
208-
is a common and very useful customization. Some screens allow embedding of 3rd party foreign programs,
206+
Allowing users to build small panels independently, that can be embedded into the main screen
207+
is a common and very useful customization. Some screens allow embedding of 3rd party foreign programs,
209208
others only the native widget toolkit based panels. +
210209
Usually these are embedded in tabs or side panel widgets. +
211210
This is how to describe the optional title, loading command and location widget name: +
@@ -233,7 +232,7 @@ MESSAGE_ICON = INFO
233232
----
234233

235234
This style gives multiple messages defined by a number. +
236-
This example shows 3 possible messages based around a VFD error nuumber.
235+
This example shows 3 possible messages based around a VFD error number.
237236

238237
[source,{ini}]
239238
----

docs/src/gui/qtvcp-libraries.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -652,7 +652,7 @@ as the widgets get a reference to the `MainWindow` from the `_hal_init()` functi
652652
from qtvcp.qt_makegui import VCPWindow
653653
----
654654

655-
* *Instantiate `VCPWindow` module*+
655+
* *Instantiate `VCPWindow` module* +
656656
Add this Python code to your instantiate section:
657657
+
658658
[source,python]

docs/src/gui/qtvcp-vismach.adoc

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -309,7 +309,7 @@ Either by adding the component object as the first variable and substituting the
309309
by substituting the full component/pinname string for a coordinate. +
310310

311311
This example creates a _rectangular prism with opposite corners_ at the specified positions and edges parallel to the XYZ axes. +
312-
the Z start coordinate will be controlled by the HAL pin 'Zstart'
312+
The Z start coordinate will be controlled by the HAL pin 'Zstart'.
313313

314314
[source,python]
315315
----
@@ -409,7 +409,7 @@ Sets the _display color of the part based on a designated HAL bit pin state_. +
409409
`hal_comp`;; The _HAL component Object_ or None. +
410410
In QtVCP if you are reading _system pins_ directly, then the component argument is set to `None`. +
411411
`hal_pin`;; The _name of the BIT HAL IN pin_ that will change the color. +
412-
if hal_comp is 'None' then this must be the full name of a system pin other wise this is the pin name excluding the component name
412+
if hal_comp is 'None' then this must be the full name of a system pin other wise this is the pin name excluding the component name.
413413

414414
=== HALColorRGB
415415
Sets the _display color of the part based on a designated HAL U32 pin value_. +
@@ -424,7 +424,7 @@ combined as 0xXXBBGGRR +
424424
`hal_comp`;; The _HAL component Object_ or None. +
425425
In QtVCP if you are reading _system pins_ directly, then the component argument is set to `None`. +
426426
`hal_pin`;; The _name of the U32 HAL IN pin_ that will change the color. +
427-
if hal_comp is 'None' then this must be the full name of a system pin other wise this is the pin name excluding the component name +
427+
if hal_comp is 'None' then this must be the full name of a system pin other wise this is the pin name excluding the component name. +
428428
`alpha=`;; Sets the opacity. (0-1.0)
429429

430430
=== Heads Up Display
@@ -477,11 +477,10 @@ chuckassembly = HideCollection([chuckassembly],comp,'hide-chuck')
477477
chuckassembly = HideCollection([chuckassembly],None,'myvismach.hide-chuck')
478478
----
479479

480-
=== Plot Color Based on Mtotion Type
481-
If you wish to plot different colors for different motions you need to add some more python code. +
480+
=== Plot Color Based on Motion Type
481+
If you wish to plot different colors for different motions you need to add some more Python code.
482482

483-
484-
add this at the top of the file:
483+
Add this at the top of the file:
485484

486485
[source,python]
487486
----
@@ -499,7 +498,8 @@ and this to the Window class:
499498
#v.setColorsAttribute('FEED',(0,1,0))
500499
#print(v.colors)
501500
----
502-
You can set DEFAULT, FEED, TRAVERSE, ARC, PROBE, ROTARYINDEX, TOOLCHANGE colors with setColorsAttribute()
501+
502+
You can set DEFAULT, FEED, TRAVERSE, ARC, PROBE, ROTARYINDEX, TOOLCHANGE colors with setColorsAttribute().
503503

504504
=== Capture
505505
This sets the current position in the model.
@@ -603,7 +603,7 @@ class Window(QWidget):
603603
604604
# uncomment to change feed color
605605
#v.setColorsAttribute('FEED',(0,1,0))
606-
# and to see all colors printed to the terminal
606+
# and to see all colors printed to the terminal
607607
#print(v.colors)
608608
609609
v.model = Collection([model, world])

docs/src/gui/qtvcp-widgets.adoc

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -457,7 +457,7 @@ Allows one to *adjust a HAL pin value using a sliding pointer*.
457457

458458
[[sub:qtvcp:widgets:tabwidget]]
459459
=== `TabWidget` - Tab Widget
460-
This widget allows the tab height to be adjusted with stylesheets
460+
This widget allows the tab height to be adjusted with stylesheets.
461461

462462
The `TabWidget` properties can be defined in a _stylesheet_ with the following code added to the `.qss` file. +
463463
`name_of_tab` being the widget name defined in Qt Designer's editor. +
@@ -719,22 +719,22 @@ usually this is selected from the screenOptions widget.
719719
*`halpin_option`*::
720720
Will set a HAL pin true when the axis is selected.
721721
*`joint_number`*::
722-
Should be set to the appropriate joint number
722+
Should be set to the appropriate joint number.
723723
*`axis_letter`*::
724-
Should be set to the appropriate axis letter
724+
Should be set to the appropriate axis letter.
725725

726726
These are the click-and-hold menu properties: +
727727

728728
*`showLast`*::
729-
show the 'Set to last' action
729+
Show the 'Set to last' action.
730730
*`showDivide`*::
731-
show the 'Divide by 2' action
731+
Show the 'Divide by 2' action.
732732
*`showGotoOrigin`*::
733-
show the 'Go to G53/G5x origin' action
733+
Show the 'Go to G53/G5x origin' action.
734734
*`showZeroOrigin`*::
735-
show the 'Zero Origin' action
735+
Show the 'Zero Origin' action.
736736
*`showSetOrigin`*::
737-
show the 'Set Origin' action
737+
Show the 'Set Origin' action.
738738
*`dialog_code_string`*::
739739
Sets which dialog will pop up with numerical entry,
740740
i.e. 'ENTRY' or 'CALCULATOR' to call a typing only entry dialog or a touch/typing calculator type entry dialog.
@@ -811,15 +811,15 @@ You can also click on the label and see a list of actions. +
811811
These are the click-on-menu options:
812812

813813
*`showLast`*::
814-
show the 'Set to last' action
814+
Show the 'Set to last' action.
815815
*`showDivide`*::
816-
show the 'Divide by 2' action
816+
Show the 'Divide by 2' action.
817817
*`showGotoOrigin`*::
818-
show the 'Go to G53/G5x origin' action
818+
Show the 'Go to G53/G5x origin' action.
819819
*`showZeroOrigin`*::
820-
show the 'Zero Origin' action
820+
Show the 'Zero Origin' action.
821821
*`showSetOrigin`*::
822-
show the 'Set Origin' action
822+
Show the 'Set Origin' action.
823823
*`dialogName`*::
824824
Sets which dialog window will pop up with numerical entry, i.e. ENTRY or CALCULATOR.
825825

docs/src/gui/qtvcp.adoc

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -233,7 +233,7 @@ Subclassing just means our handler file first loads the original handler file an
233233
This is useful for changing/adding behaviour while still retaining standard handler updates from LinuxCNC repositories.
234234

235235
You may still need to use the handler copy dialog to copy the original handler file to decide how to patch it.
236-
See 'custom handler file'
236+
See 'custom handler file'.
237237

238238
There should be a folder in the config folder; for screens: named '<CONFIG FOLDER>/qtvcp/screens/<SCREEN NAME>/' +
239239
add the handle patch file there, named like so <ORIGINAL SCREEN NAME>_handler.py, +
@@ -304,8 +304,8 @@ This file will be read and executed as Python code in the *handler file context*
304304
*Only local functions and local attributes* can be referenced. +
305305
Global libraries defined in the screen's handler file can be referenced by importing the handler file. +
306306
These are usually seen as all capital words with no preceding self. +
307-
'self' references the window class functions +
308-
'self.w' typically references the widgets
307+
'self' references the window class functions. +
308+
'self.w' typically references the widgets.
309309

310310
What can be used can vary by screen and development cycle.
311311

@@ -974,8 +974,8 @@ If QtVCP finds these it will call them, if not it will silently ignore them.
974974
_Class patching_, also known as _monkey patching_, allows to *override function calls in an imported module*. +
975975
Class patching must be done _before the module is instantiated_, and it _modifies all instances_ made after that. +
976976
An example might be patching button calls from the G-code editor to call functions in the handler file instead. +
977-
Class patching function redefined here, will be called with the HandlerClass instance as 'self' rather then +
978-
the patched class instance. This can make access to the patched class function/variables more difficult. +
977+
Class patching function redefined here, will be called with the HandlerClass instance as 'self' rather than the patched class instance.
978+
This can make access to the patched class function/variables more difficult. +
979979
When class patching outside of the HandlerClass class, the function call will use the patched class instance as 'self'.
980980

981981
*`initialized__(self):`*::

0 commit comments

Comments
 (0)