Bug#1086693: expect_multixterm.1: Some remarks and editorial changes for this man page
Package: xterm
Version: 395-1
Severity: minor
Tags: patch
* What led up to the situation?
Checking for defects with
test-[g|n]roff -mandoc -t -K utf8 -rF0 -rHY=0 -ww -b -z < "man page"
[Use "groff -e ' $' <file>" to find trailing spaces.]
["test-groff" is a script in the repository for "groff"; is not shipped]
(local copy and "troff" slightly changed by me).
[The fate of "test-nroff" was decided in groff bug #55941.]
* What was the outcome of this action?
troff: backtrace: file '<stdin>':245
troff:<stdin>:245: warning: trailing space in the line
* What outcome did you expect instead?
No output (no warnings).
-.-
General remarks and further material, if a diff-file exist, are in the
attachments.
-- System Information:
Debian Release: trixie/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: amd64 (x86_64)
Kernel: Linux 6.11.4-amd64 (SMP w/2 CPU threads; PREEMPT)
Locale: LANG=is_IS.iso88591, LC_CTYPE=is_IS.iso88591 (charmap=ISO-8859-1), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: sysvinit (via /sbin/init)
Versions of packages xterm depends on:
ii libc6 2.40-3
ii libfontconfig1 2.15.0-1.1+b1
ii libfreetype6 2.13.3+dfsg-1
ii libice6 2:1.0.10-1+b2
ii libtinfo6 6.5-2+b1
ii libutempter0 1.2.1-3+b2
ii libx11-6 2:1.8.7-1+b2
ii libxaw7 2:1.0.14-1+b3
ii libxext6 2:1.3.4-1+b2
ii libxft2 2.3.6-1+b2
ii libxinerama1 2:1.1.4-3+b2
ii libxmu6 2:1.1.3-3+b3
ii libxpm4 1:3.5.17-1+b2
ii libxt6t64 1:1.2.1-1.2+b1
ii xbitmaps 1.1.1-2.2
Versions of packages xterm recommends:
ii x11-utils 7.7+7
Versions of packages xterm suggests:
pn xfonts-cyrillic <none>
-- no debconf information
Any program (person), that produces man pages, should check the output
for defects by using (both groff and nroff)
[gn]roff -mandoc -t -ww -b -z -K utf8 <man page>
The same goes for man pages that are used as an input.
For a style guide use
mandoc -T lint
-.-
So any 'generator' should check its products with the above mentioned
'groff', 'mandoc', and additionally with 'nroff ...'.
This is just a simple quality control measure.
The 'generator' may have to be corrected to get a better man page,
the source file may, and any additional file may.
Common defects:
Input text line longer than 80 bytes.
Not removing trailing spaces (in in- and output).
The reason for these trailing spaces should be found and eliminated.
Not beginning each input sentence on a new line.
Lines should thus be shorter.
See man-pages(7), item 'semantic newline'.
-.-
The difference between the formatted output of the original and patched file
can be seen with:
nroff -mandoc <file1> > <out1>
nroff -mandoc <file2> > <out2>
diff -u <out1> <out2>
and for groff, using
"printf '%s\n%s\n' '.kern 0' '.ss 12 0' | groff -mandoc -Z - "
instead of 'nroff -mandoc'
Add the option '-t', if the file contains a table.
Read the output of 'diff -u' with 'less -R' or similar.
-.-.
If 'man' (man-db) is used to check the manual for warnings,
the following must be set:
The option "-warnings=w"
The environmental variable:
export MAN_KEEP_STDERR=yes (or any non-empty value)
or
(produce only warnings):
export MANROFFOPT="-ww -b -z"
export MAN_KEEP_STDERR=yes (or any non-empty value)
-.-.
Output from "mandoc -T lint expect_multixterm.1": (possibly shortened list)
mandoc: expect_multixterm.1:135:150: STYLE: input text line longer than 80 bytes: in the argv variable...
mandoc: expect_multixterm.1:245:45: STYLE: whitespace at end of input line
-.-.
Remove space characters at the end of lines.
Use "git apply ... --whitespace=fix" to fix extra space issues, or use
global configuration "core.whitespace".
245:most other window system related functions.
-.-.
Change a HYPHEN-MINUS (code 0x2D) to a minus(-dash) (\-),
if it
is in front of a name for an option,
is a symbol for standard input,
is a single character used to indicate an option,
or is in the NAME section (man-pages(7)).
N.B. - (0x2D), processed as a UTF-8 file, is changed to a hyphen
(0x2010, groff \[u2010] or \[hy]) in the output.
35:-xa
40:-xc
46:-xd
52:-xf
57:-xn
63:-xv
181: set ::xtermArgs "-geometry 80x12+$xPos+$yPos \-font 6x10"
202: set ::xtermArgs "-geometry 80x12+$xPos+0 \-font 6x10"
254:created (i.e., "-geometry 80x20").
-.-.
Split lines longer than 80 characters into two or more lines.
Appropriate break points are the end of a sentence and a subordinate
clause; after punctuation marks.
N.B.
The number of lines affected can be too large to be in a patch.
Line 135, length 150
in the argv variable. If argv is non-empty when .multixtermrc returns, it is assigned to xtermNames unless xtermNames is non-empty in which case, the
-.-.
Use a character "\(->" instead of plain "->"
95:File->Open. Any filename is acceptable but the File->Open
260:files. To show all the files, use File->Open.
-.-.
Output from "test-groff -mandoc -t -K utf8 -rF0 -rHY=0 -ww -b -z ":
troff: backtrace: file '<stdin>':245
troff:<stdin>:245: warning: trailing space in the line
--- expect_multixterm.1 2024-11-03 23:37:16.407575653 +0000
+++ expect_multixterm.1.new 2024-11-03 23:46:17.051914248 +0000
@@ -32,35 +32,35 @@ This provides support for programs such
.SH ARGUMENTS
.RS
.TP 4
--xa
+\-xa
The optional \-xa argument indicates arguments to pass to
xterm.
.TP
--xc
+\-xc
The optional \-xc argument indicates a command to be run in
each named xterm (see \-xn). With no \-xc argument, the command
is the current shell.
.TP 4
--xd
+\-xd
The optional \-xd argument indicates a directory to search for
files that will appear in the Files menu. By default, the
directory is: ~/lib/multixterm
.TP 4
--xf
+\-xf
The optional \-xf argument indicates a file to be read at
startup. See FILES below for more info.
.TP 4
--xn
+\-xn
The optional \-xn argument indicates a name for each xterm.
This name will also be substituted for any %n in the command
argument (see \-xc).
.TP 4
--xv
+\-xv
The optional \-xv flag puts multixterm into a verbose mode
where it will describe some of the things it is doing
internally. The verbose output is not intended to be
@@ -92,7 +92,7 @@ Command files may be used to drive or in
The File menu may be used to invoke other files. If files
exist in the command file directory (see \-xd above), they will
appear in the File menu. Files may also be loaded by using
-File->Open. Any filename is acceptable but the File->Open
+File\(->Open. Any filename is acceptable but the File\(->Open
browser defaults to files with a .mxt suffix.
Files are written in Tcl and may change any variables or
@@ -132,8 +132,10 @@ Then multixterm could be called simply:
If any command-line argument does not match a multixterm flag,
the remainder of the command line is made available to .multixtermrc
-in the argv variable. If argv is non-empty when .multixtermrc returns, it is assigned to xtermNames unless xtermNames is non-empty in which case, the
-content of argv is ignored.
+in the argv variable.
+If argv is non-empty when .multixtermrc returns,
+it is assigned to xtermNames unless xtermNames is non-empty in which case,
+the content of argv is ignored.
Commands from multixterm are evaluated early in the
initialization of multixterm. Anything that must be done late
@@ -178,7 +180,7 @@ large numbers of xterms.
proc traceArgs {args} {
global xPos yPos
- set ::xtermArgs "-geometry 80x12+$xPos+$yPos \-font 6x10"
+ set ::xtermArgs "\-geometry 80x12+$xPos+$yPos \-font 6x10"
if {$xPos} {
set xPos 0
incr yPos 145
@@ -199,7 +201,7 @@ horizontally:
set xPos 0
foreach name {bud dexter hotdog} {
- set ::xtermArgs "-geometry 80x12+$xPos+0 \-font 6x10"
+ set ::xtermArgs "\-geometry 80x12+$xPos+0 \-font 6x10"
set ::xtermNames $name
xtermStartAll
incr xPos 300
@@ -242,7 +244,7 @@ the same process to each xterm.
.SH LIMITATIONS
Multixterm provides no way to remotely control scrollbars, resize, and
-most other window system related functions.
+most other window system related functions.
Because xterm has no mechanism for propagating size information to
external processes, particularly for character graphic applications
@@ -251,13 +253,13 @@ process behind each xterm has the correc
create or set the xterm to a size, you may have to send an explicit
stty command with the correct size to the spawned process(es).
Alternatively, you can add the correct size argument when an xterm is
-created (i.e., "-geometry 80x20").
+created (i.e., "\-geometry 80x20").
Multixterm can only control new xterms that multixterm itself has
started.
As a convenience, the File menu shows a limited number of
-files. To show all the files, use File->Open.
+files. To show all the files, use File\(->Open.
.SH FILES
$DOTDIR/.multixtermrc initial command file
Reply to: