- Package:
- groff-base
- Source:
- groff
- Description:
- GNU troff text-formatting system (base system components)
- Submitter:
- David Schmitt
- Date:
- 2023-07-21 13:45:04 UTC
- Severity:
- normal
- Tags:
Dear X-Team! The matrices and formulae in the gl* manpages are broken to the point of being unusable. Perhaps this is a groff problem, but the gl* manpages are the only broken ones I know of. For examples look at gluPerspective(3) and gluProject(3). Thank you for your time and work. Regards, David
I don't see anything wrong with gluPerspective(3x), but gluProject(3x) throws "eqn:/tmp/zmanA7ACTF:80:fatal error: nested .EQ", which won't help. In one of the equations in the description section, there's a .EN that's been accidentally joined to the end of the previous line rather than being on a line by itself; I don't have time to work up a patch right now but it'll be obvious at a glance. Maybe you could elaborate on what other problems you're seeing?
Sorry for the meager explanation, but I thought it was obvious when
viewing the manpages. Matrices are displayed with _huge_ vertical space:
From gluPerspective(3x):
Given f defined as follows:
f=cotangent(fo2y)
The generated matrix is
aspect 0 0 0
0 f 0 0
.... and so on.
For the records, I am running unstable with groff-base 1.18.1-9.
Regards, David
Bizarrely, I can't reproduce this with man but can when I run the exact same commands executed by man by hand. I'm now confused and will try to figure out what on earth's going on. Thanks,
By default, man passes the -s option to pager, which (normally) squeezes multiple blank lines into one. This is (generally) the Right Thing(tm). David: you might want to look into what's wrong with your pager (check the $PAGER env variable and the /etc/alternatives/pager link), and stick to something that supports -s. Colin: you might want to try postscript output (man -Tps) and see how the page looks that way; as far as I'm concerned, that's the real test of a man page. cheers
Good call, I'd forgotten about that. There's almost certainly nothing wrong with his pager. man only sets -s for its default pager, not for random stuff in the $PAGER variable (which I had unset). I should add -s to the default $LESS set by man, I think. However, there is still a clear bug in eqn's output, forgetting about the pager issues. I don't yet know whether it's a bug in the input or in the output. It's not quite as bad, but the matrix could easily be squeezed onto the first page and isn't, so there's probably a spacing issue there, and the brackets around the matrix are set too high. Cheers,
reassign 192144 groff thanks Per ongoing discussions, I'm reassigning this bug to groff. If there really is something hideously wrong with the Mesa manpages, I'll welcome a reassignment back to me once that problem has been identified. A patch would be most appreciated.
Indeed, I had set PAGER=less and unsetting it sqeezed the matrices into readable dimensions. That would at least solve the thing for people who have $PAGER set to less. Thank you all for your time and work again! Regards, David
Hi, The attached file, extracted from XFree86's gluPerspective(3x) man page, formats very poorly with 'groff -e -Tascii'; the rows of the matrix are far too widely spaced. I know very little about eqn, though. Can anyone tell me whether eqn, troff, or the man page is at fault? Thanks,
Hi Colin,
Isn't groff's eqn meant to cope poorly with ASCII output? If it helps
decide, here's AIX 3.2.5's output, i.e. troff not groff.
$ eqn <k | nroff | col -b | cat -S
( )
| 0 0 |
| ______ 0 0 |
| aspect f 0 ____________ |
| 0 0 __________ zNear-zFar |
| 0 zNear-zFar 0 |
| 0 0 -1 |
( )
So it seems like it isn't the man page that's the problem.
Cheers,
Ralph.
Right.
Well, this isn't correct either since the top of each fraction is
missing. I strongly suggest that the author of gluPerspective(3x)
uses `.ie t \{...\} .el \{...\}' to provide a hand-tuned TTY version
of the matrix if it is essential to the man page.
Werner
.. and the rows are broken. eg the second row should read ( 0 f 0 0 ). Even as a user, I wouldn't say, that it is essential for the man page. One can use the gluPerspective() function without knowing the mathematical background. But there are some special use cases, where one needs deep matrix magic and where is the information then? And why provide a facility which is broken to the point of being not only unusable, but also producing dangerously misleading output? Regards, David
Sehr geehrte/r Arbeitsuchender, folgendes Arbeitsangebot ist für alle geeignet, da diese Arbeit ohne besondere Anforderungen auch von zu Hause zu bewerkstelligen ist. Der Arbeitnehmer hat keine Ausgaben und muss keine besonderen Kenntnisse mitbringen. Die benötigte technische Ausrüstung wird von uns kostenlos zur Verfügung gestellt. Zu Ihrem Arbeitsfeld gehört die Betreuung von Onlinebibliotheken, das Digitalisieren von Buchwerken, die Koordinierung, das Erstellen von Mediatheken und die Vorbereitung der Dokumentenbearbeitung. Wir bieten eine attraktive Vergütung in Höhe von 20€ die Stunde Brutto. Unser Betrieb verfügt über internationale Nebenstellen auf der ganzen Welt und wir arbeiten im Bereich der Mediendigitalisierung. Im Moment sind wir auf der Suche nach neuen Mitarbeitern. Was Sie mitbringen sollten: Sie verfügen über ein Paar Stunden Zeit am Tag, Sie besitzen Flexibilität, Sie arbeiten gern von zu Hause, Sie besitzen eine teamorientierte Arbeitsweise, Grundkenntnisse von MS-Office sind von Vorteil und sie verfügen über ein Paar Stunden Zeit am Tag. Haben wir Ihr Interesse geweckt? Dann freuen wir uns über Ihre Bewerbung! Senden Sie Ihre kompletten Bewerbungsbögen an: LacyCroucht@gmx.com Wir freuen uns auf Ihre Bewerbung. Beste Grüße Topl GmbH
package groff groff-base forwarded 192144 https://savannah.gnu.org/bugs/?62298 thanks I've opened a ticket for this upstream. In reproducing it, I found diagnostics that no one ever commented on before which suggest that eqn could be improved, even if it doesn't ultimately make the input useful in this case (that remains to be seen). Thanks for Colin for the simple reproducer. Regards, Branden