Package: texlive-extra-utils Version: 2024.20241115-1 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? an.tmac:<stdin>:1: style: .TH missing fourth argument; consider package/project name and version (e.g., "groff 1.23.0") an.tmac:<stdin>:1: style: .TH missing fifth argument and second argument '1' not a recognized manual section; specify its title troff:<stdin>:11: warning: trailing space in the line troff:<stdin>:13: warning: trailing space in the line troff:<stdin>:27: warning: trailing space in the line troff:<stdin>:30: warning: trailing space in the line troff:<stdin>:32: warning: trailing space in the line troff:<stdin>:33: warning: trailing space in the line troff:<stdin>:41: warning: trailing space in the line troff:<stdin>:49: 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-extra-utils depends on: ii libfile-homedir-perl 1.006-2 ii libunicode-linebreak-perl 0.0.20190101-1+b8 ii libyaml-tiny-perl 1.76-1 ii python3 3.12.8-1 ii tex-common 6.18 ii texlive-base 2024.20241115-1 ii texlive-binaries 2024.20240313.70630+ds-5+b1 ii texlive-latex-base 2024.20241115-1 ii texlive-luatex 2024.20241115-1 ii texlive-plain-generic 2024.20241115-1 Versions of packages texlive-extra-utils recommends: ii ghostscript 10.04.0~dfsg-2+b1 pn liblog-log4perl-perl <none> ii ruby 1:3.1+nmu1 ii texlive-latex-recommended 2024.20241115-1 Versions of packages texlive-extra-utils suggests: pn chktex <none> pn default-jre-headless <none> pn dvidvi <none> pn dvipng <none> pn fragmaster <none> pn lacheck <none> pn latexdiff <none> pn latexmk <none> pn purifyeps <none> pn xindy <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-extra-utils is related to: ii tex-common 6.18 ii texlive-binaries 2024.20240313.70630+ds-5+b1 -- no debconf information
Input file is pdfjam.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 pdfjam.1": (shortened list) 2 input text line longer than 80 bytes 13 skipping paragraph macro 26 whitespace at end of input line -.-. Output from "test-groff -mandoc -t -ww -z pdfjam.1": (shortened list) 8 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 18 -.-. Change two HYPHEN-MINUSES (code 0x2D) to an em-dash (\(em), if one is intended. " \(em " creates a too big gap in the text (in "troff"). An en-dash is usually surrounded by a space, while an em-dash is used without spaces. "man" (1 byte characters in input) transforms an en-dash (\(en) to one HYPHEN-MINUS, and an em-dash to two HYPHEN-MINUSES without considering the space around it. If "--" are two single "-" (begin of an option or end of options) then use "\-\-". pdfjam.1:13:"pdfjam --help", and also in the web page mentioned below \&. pdfjam.1:44:Please report bugs! --- either at GitHub or by email, see -.-. Change -- in x--y to \(em (em-dash), or, if an option, to \-\- 13:"pdfjam --help", and also in the web page mentioned below \&. -.-. 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 final abbreviation point as such by suffixing it with "\&". 44:Please report bugs! --- either at GitHub or by email, see -.-. 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. Line 18, length 104 The pdfjam script is distributed as (the main) part of the pdfjam package. The homepage of pdfjam is at Line 53, length 81 The pdfjam package was written by David Firth and is maintained by Reuben Thomas. -.-. 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. pdfjam.1:11:"pdfpages" package (by Andreas Matthias) of pdflatex. -.-. No need for "\&" to be in front of a period (.), if there is a character in front of it 6:pdfjam [OPTION [OPTION] \&.\&.\&.] [SRC [PAGESPEC] [SRC [PAGESPEC]] \&.\&.\&.] 13:"pdfjam --help", and also in the web page mentioned below \&. -.-. Output from "test-groff -mandoc -t -K utf8 -rF0 -rHY=0 -rCHECKSTYLE=10 -ww -z ": an.tmac:<stdin>:1: style: .TH missing fourth argument; consider package/project name and version (e.g., "groff 1.23.0") an.tmac:<stdin>:1: style: .TH missing fifth argument and second argument '1' not a recognized manual section; specify its title troff:<stdin>:11: warning: trailing space in the line troff:<stdin>:13: warning: trailing space in the line troff:<stdin>:27: warning: trailing space in the line troff:<stdin>:30: warning: trailing space in the line troff:<stdin>:32: warning: trailing space in the line troff:<stdin>:33: warning: trailing space in the line troff:<stdin>:41: warning: trailing space in the line troff:<stdin>:49: 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!
--- pdfjam.1 2024-12-31 10:40:12.358550332 +0000 +++ pdfjam.1.new 2024-12-31 11:09:24.538866078 +0000 @@ -1,53 +1,49 @@ -.TH "pdfjam" "1" "18 November 2020" "" "" -.SH "NAME" +.TH pdfjam 1 "18 November 2020" "" "" +.SH "NAME" pdfjam \- A shell script for manipulating PDF files -.SH "SYNOPSIS" -.PP -pdfjam [OPTION [OPTION] \&.\&.\&.] [SRC [PAGESPEC] [SRC [PAGESPEC]] \&.\&.\&.] -.PP -.SH "DESCRIPTION" -.PP +.SH "SYNOPSIS" +pdfjam [OPTION [OPTION] ...\&] [SRC [PAGESPEC] [SRC [PAGESPEC]] ...] +.SH "DESCRIPTION" pdfjam provides a front end to most capabilities of the -"pdfpages" package (by Andreas Matthias) of pdflatex. +"pdfpages" package +(by Andreas Matthias) +of pdflatex. Detailed information can be found via -"pdfjam --help", and also in the web page mentioned below \&. -.PP -A working installation of pdflatex, with -the pdfpages package, is required\&. -.PP -The pdfjam script is distributed as (the main) part of the pdfjam package. The homepage of pdfjam is at -https://github.com/rrthomas/pdfjam \&. -.PP -.SH "SETUP" +"pdfjam \-\-help", +and also in the web page mentioned below. .PP +A working installation of pdflatex, +with the pdfpages package, +is required. +.PP +The pdfjam script is distributed as +(the main) +part of the pdfjam package. +The homepage of pdfjam is at "https://github.com/rrthomas/pdfjam". +.SH "SETUP" See https://github.com/rrthomas/pdfjam -.PP .SH "CONFIGURATION FILES" -.PP -Configuration of the PDFjam utilities +Configuration of the PDFjam utilities involves specifying the location of pdflatex, -the location of temporary files, specification of default page size, -etc. This is done in a block of lines near the top of the pdfjam script; +the location of temporary files, +specification of default page size, +etc. This is done in a block of lines near the top of the pdfjam script; settings made there are over-ridden by any that -are found at a site-wide configuration file -(at /etc/pdfjam.conf, -/usr/share/etc/pdfjam.conf, /usr/local/share/pdfjam.conf, or -/usr/local/etc/pdfjam.conf), which -in turn are over-ridden by any that are found in a user-defaults -file at ~/.pdfjam.conf\&. -.PP -.SH "LIMITATIONS AND BUGS" -.PP -pdfjam does not work with encrypted PDF files, and does not -preserve hyperlinks. -.PP -Please report bugs! --- either at GitHub or by email, see -https://github.com/rrthomas/pdfjam \&. -.PP -.SH "LICENSE" -.PP -pdfjam is distributed under the GNU public license. -.PP -.SH "AUTHOR" -.PP -The pdfjam package was written by David Firth and is maintained by Reuben Thomas. +are found at a site-wide configuration file +(at /etc/pdfjam.conf, +/usr/share/etc/pdfjam.conf, +/usr/local/share/pdfjam.conf, +or /usr/local/etc/pdfjam.conf), +which in turn are over-ridden by any +that are found in a user-defaults file at ~/.pdfjam.conf. +.SH "LIMITATIONS AND BUGS" +pdfjam does not work with encrypted PDF files, +and does not preserve hyperlinks. +.PP +Please report bugs!\& \(em either at GitHub or by email, +see "https://github.com/rrthomas/pdfjam". +.SH "LICENSE" +pdfjam is distributed under the GNU public license. +.SH "AUTHOR" +The pdfjam package was written by David Firth +and is maintained by Reuben Thomas.