[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1091615: outocp.1: Some remarks and a patch with editorial changes for this man page



Package: texlive-binaries
Version: 2024.20240313.70630+ds-5+b1
Severity: minor
Tags: patch

   * What led up to the situation?

     Checking for defects with a new version

test-[g|n]roff -mandoc -t -K utf8 -rF0 -rHY=0 -rCHECKSTYLE=10 -ww -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:<stdin>:12: 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.12.6-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 texlive-binaries depends on:
ii  libc6            2.40-4
ii  libcairo2        1.18.2-2
ii  libfontconfig1   2.15.0-1.1+b1
ii  libfreetype6     2.13.3+dfsg-1
ii  libgcc-s1        14.2.0-8
ii  libgraphite2-3   1.3.14-2+b1
ii  libharfbuzz0b    10.1.0-1
ii  libicu72         72.1-5+b1
ii  libkpathsea6     2024.20240313.70630+ds-5+b1
ii  libmpfi0         1.5.4+ds-4
ii  libmpfr6         4.2.1-1+b2
ii  libpaper2        2.2.5-0.3
ii  libpixman-1-0    0.44.0-3
ii  libpng16-16t64   1.6.44-3
ii  libpotrace0      1.16-2+b2
ii  libptexenc1      2024.20240313.70630+ds-5+b1
ii  libstdc++6       14.2.0-8
ii  libsynctex2      2024.20240313.70630+ds-5+b1
ii  libteckit0       2.5.12+ds1-1+b1
ii  libtexlua53-5    2024.20240313.70630+ds-5+b1
ii  libx11-6         2:1.8.10-2
ii  libxaw7          2:1.0.16-1
ii  libxi6           2:1.8.2-1
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  libzzip-0-13t64  0.13.72+dfsg.1-1.2+b1
ii  perl             5.40.0-8
ii  t1utils          1.41-4
ii  tex-common       6.18
ii  zlib1g           1:1.3.dfsg+really1.3.1-1+b1

Versions of packages texlive-binaries recommends:
pn  dvisvgm       <none>
ii  texlive-base  2024.20241115-1

Versions of packages texlive-binaries suggests:
pn  hintview               <none>
pn  texlive-binaries-sse2  <none>

Versions of packages tex-common depends on:
ii  ucf  3.0046

Versions of packages tex-common suggests:
pn  debhelper  <none>

Versions of packages texlive-binaries is related to:
ii  tex-common    6.18
ii  texlive-base  2024.20241115-1

-- no debconf information
Input file is outocp.1

  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  outocp.1": (shortened list)

      8 skipping paragraph macro
     17 whitespace at end of input line

-.-.

Output from "test-groff -mandoc -t -ww -z outocp.1": (shortened list)

      1 trailing space in the line

-.-.

Remove space characters (whitespace) at the end of lines.
Use "git apply ... --whitespace=fix" to fix extra space issues, or use
global configuration "core.whitespace".

Number of lines affected is

11

-.-.

Wrong distance between sentences in the input file.

  Separate the sentences and subordinate clauses; each begins on a new
line.  See man-pages(7) ("Conventions for source file layout") and
"info groff" ("Input Conventions").

  The best procedure is to always start a new sentence on a new line,
at least, if you are typing on a computer.

Remember coding: Only one command ("sentence") on each (logical) line.

E-mail: Easier to quote exactly the relevant lines.

Generally: Easier to edit the sentence.

Patches: Less unaffected text.

Search for two adjacent words is easier, when they belong to the same line,
and the same phrase.

  The amount of space between sentences in the output can then be
controlled with the ".ss" request.

Mark a abbreviation point as such by suffixing them with "\&".


33:This manual page was written by C\&.M\&. Connelly for the Debian
34:GNU/Linux system\&. It is now maintained as part of TeX Live.

-.-.

Put a parenthetical sentence, phrase on a separate line,
if not part of a code.
See man-pages(7), item "semantic newline".
Not considered in a patch, too many lines.


outocp.1:21:Email bug reports to <https://lists.tug.org/tex-k> (public mailing list).

-.-.

No need for "\&" to be in front of a period (.) if not at the beginning of
a line.

11:(OCP) files\&.  It generates some statistics about the OCP file, and
12:then runs through the states that the file defines\&. 
16:context-sensitive variants\&.  OTPs could also be used to change the
33:This manual page was written by C\&.M\&. Connelly for the Debian
34:GNU/Linux system\&. It is now maintained as part of TeX Live.

-.-.

Output from "test-groff  -mandoc -t -K utf8 -rF0 -rHY=0 -rCHECKSTYLE=10 -ww -z ":

troff:<stdin>:12: warning: trailing space in the line

-.-.

  Additionally (general):

  Abbreviations get a '\&' added after their final full stop (.) to mark them
as such and not as an end of a sentence.

  There is no need to add a '\&' before a full stop (.) if it has a character
before it!
--- outocp.1	2024-12-28 11:57:50.142350196 +0000
+++ outocp.1.new	2024-12-28 11:54:48.602327432 +0000
@@ -1,34 +1,27 @@
 .TH "outocp" "1" "8 March 2022" "TeX Live"
-.PP 
-.SH "NAME" 
+.SH "NAME"
 outocp \- debug an OCP file
-.SH "SYNOPSIS" 
+.SH "SYNOPSIS"
 .B outocp
 .IR OCPFILE [ \fB.ocp\fP ]
-.SH "DESCRIPTION" 
-.PP 
+.SH "DESCRIPTION"
 \fBoutocp\fP is used for debugging Omega Compiled Translation Process
-(OCP) files\&.  It generates some statistics about the OCP file, and
-then runs through the states that the file defines\&. 
-.PP 
+(OCP) files.  It generates some statistics about the OCP file, and
+then runs through the states that the file defines.
+.PP
 Omega Translation Processes are rules used to translate one character
 set to another and to choose between characters with one or more
-context-sensitive variants\&.  OTPs could also be used to change the
-case or hyphenation of text\&.
-.PP 
-.SH "BUGS" 
-.PP 
+context-sensitive variants.  OTPs could also be used to change the
+case or hyphenation of text.
+.SH "BUGS"
 Email bug reports to <https://lists.tug.org/tex-k> (public mailing list).
-.PP 
-.SH "SEE ALSO" 
-.PP 
-\fBocp2otp\fP(1), \fBotp2ocp\fP(1), \fBomega\fP(1)\&.
+.SH "SEE ALSO"
+\fBocp2otp\fP(1), \fBotp2ocp\fP(1), \fBomega\fP(1),
 <https://ctan.org/pkg/omega>
-.PP 
-.SH "AUTHOR" 
-.PP 
-\fBmkocp\fP is part of Omega\&.  The primary authors of Omega are John Plaice
-and Yannis Haralambous\&.
-.PP 
-This manual page was written by C\&.M\&. Connelly for the Debian
-GNU/Linux system\&. It is now maintained as part of TeX Live.
+.SH "AUTHOR"
+\fBmkocp\fP is part of Omega.
+The primary authors of Omega are John Plaice and Yannis Haralambous.
+.PP
+This manual page was written by C.M.\& Connelly for the Debian
+GNU/Linux system.
+It is now maintained as part of TeX Live.

Reply to: