On Sat, Apr 22, 2023 at 10:22:35AM -0400, Carlos wrote: > On Sat, Apr 22, 2023 at 05:37:24AM -0500, G. Branden Robinson wrote: > > Hi Carlos, > > > > I'll resequence your mail to put the issue you wanted to set aside last. > > > > At 2023-04-22T05:26:37-0400, Carlos wrote: > > > Currently running > > > > > > the called subprograms: > > > > > > GNU grops (groff) version 1.22.4 > > > GNU troff (groff) version 1.22.4 > > > > Just to establish some common ground, this is indeed the latest release, > > from December 2018. We are working hard to try to get groff 1.23.0 > > out--we are currently at release candidate 4. The forthcoming release > > fixes literally hundreds of bugs and bears literally thousands of > > changes. > > > > https://lists.gnu.org/archive/html/platform-testers/2023-04/msg00004.html > > > > You are not obliged to try out this release candidate in any way, but I > > thought I'd mention it. > > I woudn't mind. As a matter of fact I tried it out, save the program > 'pnmtops' can't handle > -nosetpage option; can't generate doc/gnu.eps sentence from the > subject line above which prevented the whole thing > from compiling > > > > > > and whether it's running -man or -mandoc, it injects a blank unwanted > > > page in the very beginning of the document. > > > > This does not sound like a known bug in groff 1.22.4. But it does have > > a familiar ring. > > > > > It doesn't matter whether it's a postscript file or a pdf afterwards, > > > groff inserts the blank page regardless > > > > > > I'm not familiarized with groff but it seems as if a macro, in this > > > particular case, .TH, that is normally in the beginning of the page, > > > causes it, or it's indirectly involved in this blank page. Doesn't > > > matter. If i were to focus enough on the page and say open sesame > > > it woudn't do anything. But if I were to type an .ig and two dots > > > in between that pesky `.TH` macro, the blank page disappears. So in > > > that sense, open sesame worked because ;) because the unwanted page > > > is no longer there. The formatting of the page is gone, and that's > > > more than an obvious Copernicus, but who cares, really? > > > > > > The question is: what it's causing this unwanted blank page? Are > > > locales somehow responsible for it? > > > > > > Now. The interesting part is that `man -T ps <manpage> ` works without > > > an issue, but groff , or more precisely both -man and -mandoc don't > > > and still injects the blank page > > > > It sounds to me like someone or something has modified a macro file and > > permitted a blank line to creep into it. Your experiment with '.ig' was > > a good idea, but it is not clear to me _exactly_ where you put it. > > Perhaps you could email this list your an-old.tmac file. > > > > Unfortunately, it is possible that the blank line crept into _any_ macro > > file that troff reads when starting up, and there can be quite a few of > > those. Including localization macro files, but those aren't the first > > place I'd look, especially in groff 1.22.4. > > > > Here is a simple experiment you can try, and my results with it. > > > > $ echo '.TH foobar 1 baz qux' | nroff -man | cat -n > > 1 foobar(1) General Commands Manual > > foobar(1) > > 2 > > 3 > > 4 > > 5 qux baz > > foobar(1) > > > > If your output differs, we'll want to know. > > > > 1 > 2 foobar(|) > foobar(|) > 3 > 4 > 5 > 6 qux baz > foobar(|) > > That's my result from the teletype. And xterm confirms the same pretty > much > > > > Here's a way to look for blank lines in macro files, with the results > > from my system. > > > > $ grep -l '^\s*$' /usr/share/groff/1.22.4/tmac/{*.tmac,mdoc/*} > > /usr/share/groff/1.22.4/tmac/devtag.tmac > > /usr/share/groff/1.22.4/tmac/hdmisc.tmac > > /usr/share/groff/1.22.4/tmac/hdtbl.tmac > > /usr/share/groff/1.22.4/tmac/m.tmac > > /usr/share/groff/1.22.4/tmac/mse.tmac > > /usr/share/groff/1.22.4/tmac/om.tmac > > /usr/share/groff/1.22.4/tmac/pdf.tmac > > /usr/share/groff/1.22.4/tmac/pdfmark.tmac > > /usr/share/groff/1.22.4/tmac/s.tmac > > /usr/share/groff/1.22.4/tmac/spdf.tmac > > /usr/share/groff/1.22.4/tmac/www.tmac > > > > These aren't necessarily a problem--as you noted, the `ig` request can > > make blank lines harmless. But because they're so troublesome, we've > > arranged for groff 1.23.0 to have fewer. > > > > $ git describe > > 1.23.0.rc4-83-g0dbc3f6c4 > > $ grep -l '^\s*$' tmac/{*.tmac,mdoc/*} > > tmac/devtag.tmac > > tmac/pdf.tmac > > tmac/psfig.tmac > > tmac/s.tmac > > > > (Maybe we can kill the rest off for groff 1.24...) > > > > Let us know what you find. > > so far > > $ grep -l '^\s*$' /usr/share/groff/1.22.4/tmac/{*.tmac,mdoc/*} > /usr/share/groff/1.22.4/tmac/devtag.tmac > /usr/share/groff/1.22.4/tmac/hdmisc.tmac > /usr/share/groff/1.22.4/tmac/hdtbl.tmac > /usr/share/groff/1.22.4/tmac/m.tmac > /usr/share/groff/1.22.4/tmac/mse.tmac > /usr/share/groff/1.22.4/tmac/om.tmac > /usr/share/groff/1.22.4/tmac/pdf.tmac > /usr/share/groff/1.22.4/tmac/pdfmark.tmac > /usr/share/groff/1.22.4/tmac/s.tmac > /usr/share/groff/1.22.4/tmac/spdf.tmac > /usr/share/groff/1.22.4/tmac/www.tmac > > > /usr/share/groff/1.22.4$ grep -l '^\s*$' tmac/{*.tmac,mdoc/*} > tmac/devtag.tmac > tmac/hdmisc.tmac > tmac/hdtbl.tmac > tmac/m.tmac > tmac/mse.tmac > tmac/om.tmac > tmac/pdf.tmac > tmac/pdfmark.tmac > tmac/s.tmac > tmac/spdf.tmac > tmac/www.tmac > > > but makes no difference on stdout unfortunately
I wanted to revert to 1.22.4 and see a few things Let me just add some useless information for whatever's worth: but with only devtag.tmac and pdf.tmac holding `.ig`in place, the blank page is still there, just so you know. And processing a file I currently have, either through -man or -mandoc (makes no difference as I've said before) into postscript it would inject the blank page: The same thing happens with a pdf of course. Branden and Ralph: you know the following already, but you can find the file latex.1 through any TeX source that provides it. This is the output %!PS-Adobe-3.0 %%Creator: groff version 1.22.4 %%CreationDate: Sat Apr 22 14:37:11 2023 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic %%DocumentSuppliedResources: procset grops 1.22 4 %%Pages: 2 %%PageOrder: Ascend %%DocumentMedia: Default 612 792 0 () () %%Orientation: Portrait %%EndComments %%BeginDefaults %%PageMedia: Default %%EndDefaults %%BeginProlog %%BeginResource: procset grops 1.22 4 %!PS-Adobe-3.0 Resource-ProcSet /setpacking where{ pop currentpacking true setpacking }if /grops 120 dict dup begin /SC 32 def /A/show load def /B{0 SC 3 -1 roll widthshow}bind def /C{0 exch ashow}bind def /D{0 exch 0 SC 5 2 roll awidthshow}bind def /E{0 rmoveto show}bind def /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def /G{0 rmoveto 0 exch ashow}bind def /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /I{0 exch rmoveto show}bind def /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def /K{0 exch rmoveto 0 exch ashow}bind def /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /M{rmoveto show}bind def /N{rmoveto 0 SC 3 -1 roll widthshow}bind def /O{rmoveto 0 exch ashow}bind def /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def /Q{moveto show}bind def /R{moveto 0 SC 3 -1 roll widthshow}bind def /S{moveto 0 exch ashow}bind def /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def /SF{ findfont exch [exch dup 0 exch 0 exch neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /MF{ findfont [5 2 roll 0 3 1 roll neg 0 0]makefont dup setfont [exch/setfont cvx]cvx bind def }bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def /MANUAL{ statusdict begin/manualfeed true store end }bind def /PLG{ gsave newpath clippath pathbbox grestore exch pop add exch pop }bind def /BP{ /level0 save def 1 setlinecap 1 setlinejoin DEFS/BPhook known{DEFS begin BPhook end}if 72 RES div dup scale LS{ 90 rotate }{ 0 PL translate }ifelse 1 -1 scale }bind def /EP{ level0 restore showpage }def /DA{ newpath arcn stroke }bind def /SN{ transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform }bind def /DL{ SN moveto SN lineto stroke }bind def /DC{ newpath 0 360 arc closepath }bind def /TM matrix def /DE{ TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix }bind def /RC/rcurveto load def /RL/rlineto load def /ST/stroke load def /MT/moveto load def /CL/closepath load def /Fr{ setrgbcolor fill }bind def /setcmykcolor where{ pop /Fk{ setcmykcolor fill }bind def }if /Fg{ setgray fill }bind def /FL/fill load def /LW/setlinewidth load def /Cr/setrgbcolor load def /setcmykcolor where{ pop /Ck/setcmykcolor load def }if /Cg/setgray load def /RE{ findfont dup maxlength 1 index/FontName known not{1 add}if dict begin { 1 index/FID ne 2 index/UniqueID ne and {def}{pop pop}ifelse }forall /Encoding exch def dup/FontName exch def currentdict end definefont pop }bind def /DEFS 0 def /EBEGIN{ moveto DEFS begin }bind def /EEND/end load def /CNT 0 def /level1 0 def /PBEGIN{ /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit []0 setdash /setstrokeadjust where{ pop false setstrokeadjust }if /setoverprint where{ pop false setoverprint }if newpath /CNT countdictstack def userdict begin /showpage{}def /setpagedevice{}def mark }bind def /PEND{ cleartomark countdictstack CNT sub{end}repeat level1 restore }bind def end def /setpacking where{ pop setpacking }if %%EndResource %%EndProlog %%BeginSetup %%BeginFeature: *PageSize Default << /PageSize [ 612 792 ] /ImagingBBox null >> setpagedevice %%EndFeature %%IncludeResource: font Times-Roman %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron /scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent /ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen /period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon /semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O /P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y /z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl /endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen /brokenbar/section/dieresis/copyright/ordfeminine/guilsinglleft /logicalnot/minus/registered/macron/degree/plusminus/twosuperior /threesuperior/acute/mu/paragraph/periodcentered/cedilla/onesuperior /ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE /Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex /Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn /germandbls/agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla /egrave/eacute/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis /eth/ntilde/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash /ugrave/uacute/ucircumflex/udieresis/yacute/thorn/ydieresis]def /Times-Italic@0 ENC0/Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE /Times-Roman@0 ENC0/Times-Roman RE %%EndSetup %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF(1)535 768 Q 0 Cg EP %%Page: 1 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF(LA)72 48 Q 131.8(TEX\(1\) General)-1.11 F (Commands Manual)2.5 E(LA)134.3 E(TEX\(1\))-1.11 E/F1 10.95/Times-Bold@0 SF -.219(NA)72 84 S(ME).219 E F0(late)108 96 Q 1.391(x, pd\215ate)-.15 F 1.391(x, x)-.15 F(elate)-.15 E 1.391(x, lualate)-.15 F 1.391 (x, dvilualate)-.15 F 1.391(x, cslate)-.15 F 1.391(x, pdfcslate)-.15 F 1.391(x, plate)-.15 F 1.391(x, uplate)-.15 F 1.391 (x, lamed \255 structured te)-.15 F(xt)-.15 E (formatting and typesetting)108 108 Q F1(SYNOPSIS)72 124.8 Q/F2 10 /Times-Bold@0 SF(latex)108 136.8 Q F0([)2.5 E/F3 10/Times-Italic@0 SF <8c72>1.91 E(st-line)-.1 E F0(]).18 E F1(DESCRIPTION)72 153.6 Q F0 (This manual page is a mere sk)108 165.6 Q(eleton.)-.1 E 1.169(The L)108 182.4 R/F4 8/Times-Roman@0 SF(A)-3.6 -1.8 M F0(T)-1.5 1.8 M(E)-1.667 2.4 M 3.669(Xl)-1.25 -2.4 O 1.169(anguage is described in the book L)-3.669 F F4(A)-3.6 -1.8 M F0(T)-1.5 1.8 M(E)-1.667 2.4 M(X)-1.25 -2.4 M F3 -6.168 3.669(\255A D)3.669 H 1.17(ocument Pr)-3.669 F(epar)-.37 E 1.17 (ation System)-.15 F F0 6.17(.L).32 G F4(A)-9.77 -1.8 M F0(T)-1.5 1.8 M (E)-1.667 2.4 M 3.67(Xi)-1.25 -2.4 O 3.67(saT)-3.67 G(E)-5.337 2.4 M(X) -1.25 -2.4 M .181(macro package, not a modi\214cation to the T)108 194.4 R(E)-1.667 2.4 M 2.68(Xs)-1.25 -2.4 O .18 (ource program, so all the capabilities described in)-2.68 F F2(tex)2.68 E F0 .18(\(1\) are)B(present.)108 206.4 Q .999(The L)108 223.2 R F4(A) -3.6 -1.8 M F0(T)-1.5 1.8 M(E)-1.667 2.4 M 3.499(Xm)-1.25 -2.4 O .999(a\ cros encourage writers to think about the content of their documents, r\ ather than the form.)-3.499 F .08(The ideal, v)108 235.2 R .08(ery dif) -.15 F .08(\214cult to realize, is to ha)-.25 F .38 -.15(ve n)-.2 H 2.58 (of).15 G .08(ormatting commands \(lik)-2.58 F 2.58(e`)-.1 G .08 (`switch to italic')-3.32 F 2.58('o)-.74 G 2.58(r`)-2.58 G .08 (`skip 2 pi-)-3.32 F(cas')108 247.2 Q 1.366 ('\) in the document at all; instead, e)-.74 F -.15(ve)-.25 G 1.367 (rything is done by speci\214c markup instructions: `).15 F(`emphasize') -.74 E(',)-.74 E -.74(``)108 259.2 S(start a section').74 E('.)-.74 E (The primary source of documentation for L)108 276 Q F4(A)-3.6 -1.8 M F0 (T)-1.5 1.8 M(E)-1.667 2.4 M 2.5(Xi)-1.25 -2.4 O 2.5(st)-2.5 G(he L)-2.5 E F4(A)-3.6 -1.8 M F0(T)-1.5 1.8 M(E)-1.667 2.4 M 2.5(Xm)-1.25 -2.4 O (anual referenced belo)-2.5 E -.65(w.)-.25 G F2(lualatex)108 292.8 Q F0 (,)A F2(pd\215atex)2.816 E F0(,)A F2(pdfcslatex)2.815 E F0(,)A F2 (xelatex)2.815 E F0 .315(are L)2.815 F F4(A)-3.6 -1.8 M F0(T)-1.5 1.8 M (E)-1.667 2.4 M 2.815(Xf)-1.25 -2.4 O .315(ormats based on the respecti) -2.815 F .615 -.15(ve e)-.25 H 2.815(ngines. All).15 F .315(output PDF) 2.815 F(by def)108 304.8 Q(ault.)-.1 E F2(platex)108 316.8 Q F0(,)A F2 (uplatex)2.5 E F0(are Japanese L)2.5 E F4(A)-3.6 -1.8 M F0(T)-1.5 1.8 M (E)-1.667 2.4 M 2.5(Xf)-1.25 -2.4 O(ormats based on e-pT)-2.5 E (eX and e-upT)-.7 E(eX \(D)-.7 E(VI output\).)-.4 E F2(lamed)108 328.8 Q F0(is the Aleph-based L)2.5 E F4(A)-3.6 -1.8 M F0(T)-1.5 1.8 M(E)-1.667 2.4 M 2.5(Xf)-1.25 -2.4 O(ormat \(D)-2.5 E(VI output\).)-.4 E F2 (dvilualatex)108 340.8 Q F0(is LuaT)2.5 E(eX-based and outputs D)-.7 E (VI.)-.4 E F2(cslatex)108 352.8 Q F0(is csT)2.5 E(eX-based \(primiti)-.7 E -.15(ve)-.25 G 2.5(si).15 G(nte)-2.5 E(grated into pdfT)-.15 E (eX\) and outputs D)-.7 E(VI.)-.4 E .426(On some systems)108 369.6 R F2 (latex209)2.926 E F0(and)2.926 E F2(slitex)2.926 E F0 .426 (may still be a)2.926 F -.25(va)-.2 G .427 (ilable for compatibility with older v).25 F .427(ersions of L)-.15 F F4 (A)-3.6 -1.8 M F0(T)-1.5 1.8 M(E)-1.667 2.4 M(X.)-1.25 -2.4 M (These should not be used for ne)108 381.6 Q 2.5(wt)-.25 G -.15(ex)-2.5 G(ts.).15 E F1(SEE ALSO)72 398.4 Q F2(amstex)108 410.4 Q F0(\(1\),)A F2 (luatex)2.5 E F0(\(1\),)A F2(pdftex)2.5 E F0(\(1\),)A F2(ptex)2.5 E F0 (\(1\),)A F2(tex)2.5 E F0(\(1\),)A F2(xetex)2.5 E F0(\(1\).)A (Leslie Lamport, L)108 427.2 Q F4(A)-3.6 -1.8 M F0(T)-1.5 1.8 M(E)-1.667 2.4 M(X)-1.25 -2.4 M F3 2.5(\255AD)2.5 G(ocument Pr)-2.5 E(epar)-.37 E (ation System)-.15 E F0 2.5(,A).32 G(ddison-W)-2.5 E(esle)-.8 E 1.3 -.65 (y, 1)-.15 H(985, ISBN 020115790X.).65 E .325 (Frank Mittelbach, Michel Goossens, Johannes Braams, Da)108 444 R .325 (vid Carlisle, and Chris Ro)-.2 F(wle)-.25 E -.65(y,)-.15 G F3(LaT)4.055 E .325(eX Compan-)-.92 F(ion)108 456 Q F0 2.5(,A).24 G(ddison-W)-2.5 E (esle)-.8 E 1.3 -.65(y, 2)-.15 H(004, ISBN 0201362996 \(2nd edition\).) .65 E(The L)108 472.8 Q F4(A)-3.6 -1.8 M F0(T)-1.5 1.8 M(E)-1.667 2.4 M 2.5(Xh)-1.25 -2.4 O(ome page is http://late)-2.5 E(x-project.or)-.15 E (g.)-.18 E 2.5(Al)108 484.8 S(ist of some L)-2.5 E F4(A)-3.6 -1.8 M F0 (T)-1.5 1.8 M(E)-1.667 2.4 M 2.5(Xt)-1.25 -2.4 O (utorials is at http://www)-2.5 E(.te)-.65 E(x.ac.uk/cgi-bin/te)-.15 E (xf)-.15 E(aq2html?label=man-late)-.1 E(x.)-.15 E(An unof)108 496.8 Q (\214cial reference manual for L)-.25 E F4(A)-3.6 -1.8 M F0(T)-1.5 1.8 M (E)-1.667 2.4 M 2.5(Xi)-1.25 -2.4 O 2.5(sa)-2.5 G 2.5(th)-2.5 G (ttps://ctan.or)-2.5 E(g/pkg/late)-.18 E(x2e-help-te)-.15 E(xinfo.)-.15 E -.8(We)72 768 S(b2C 2023).8 E(30 April 2018)153.695 E(1)200.945 E 0 Cg EP %%Trailer end %%EOF > > > > > > > > First about the error `program 'pnmtops' can't handle -nosetpage > > > option; can't generate doc/gnu.eps` > > > can't go past this very particular cvs compilation after > > > who-knows-how-many-tries so far with this `program 'pnmtops' can't > > > handle -nosetpage option; can't generate doc/gnu.eps` error > > > > > > program 'pnmtops' can't handle -nosetpage option; can't generate > > > doc/gnu.eps > > > make[1]: *** [Makefile:14627: doc/gnu.eps] Error 1 > > > > > > But anyhow. I just wanted to compile from cvs > > > > Wow, where did you dig up a live CVS repository of groff? > > > > The project switched to Git at least ten years ago. > > > > The Autoconf test for pnmtops might be a little misleading. I notice > > that the one in groff 1.22.4 doesn't `AC_REQUIRE` the > > `GROFF_HTML_PROGRAMS` Autoconf test that checks for pnmtops in general. > > > > (Let me see if groff Git HEAD still has that problem... > > > > ...no. We (I) renamed some of the tests, but the substantive > > functionality is still needed and still checked for. An AC_REQUIRE is > > now present.) > > > > So I would make sure you have the "netpbm" package installed on your > > system. On a Debian-based one, this can be done with "apt install > > netpbm". We've had this check since 2006 or earlier, so it's really > > hard to believe there's a version of netpbm still in the wild that lacks > > the '-nosetpage' option flag. > > > > > rather than from the tarball. In the end I found out I had the latest > > > released version, so I gave up. > > > > > > And this issue can be tackle later on really. Let's put it aside for > > > now. > > > > Regards, > > Branden > > > > -- > Trying to be happy is like trying to build a machine for which the only > specification is that it should run noiselessly. > > > -- Your computer account is overdrawn. Please reauthorize.