groff
[Top][All Lists]
Advanced

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

Re: the Courier font family and nroff history (was: mandoc(1)'s man page


From: G. Branden Robinson
Subject: Re: the Courier font family and nroff history (was: mandoc(1)'s man pages, groffed, and Project KIC)
Date: Fri, 22 Mar 2024 18:11:16 -0500

Hi Lennart,

At 2024-03-22T21:12:08+0000, Lennart Jablonka wrote:
> Quoth G. Branden Robinson:
> > At 2024-03-19T19:59:58+0000, Lennart Jablonka wrote:
> > > Right.  We can emulate the nonsense typewriter /emulators/ do.  I do
> > > think that we shouldn’t do that, either.
> > 
> > I would not describe character-cell video terminals as "typewriter
> > emulators" precisely because they don't emulate typewriters well in
> > certain respects.  The most obvious of these is that CCVTs, if you
> > will, don't overstrike.
> 
> Right.  Not typewriter emulators, then, but typewriter emulator
> emulators.  I don’t think we need to emulate typewriter emulator
> emulators.

That's a good argument against grotty(1) emitting overstriking
sequences, at least by default, and yet that the people swiftest
to anger on this subject argue _for_ it.

I'll defer to the real typographers on this list, but again I think your
case against Courier is overstated.  I don't think Adobe standardized it
for PostScript (and then PDF) for the _sole_ purpose of simulating
terminal emulator, or even typewriter, output.

And I don't think many people hate monospaced fonts as much as you do.
I won't change the default but I will do my best to ensure that you can
perform the font substitutions you desire.  In fact I think I have.

Here's a recipe that works with groff 1.23.0 and Git HEAD.

$ git di tmac/
diff --git a/tmac/man.local b/tmac/man.local
index 8f75330bf..491bda1ee 100644
--- a/tmac/man.local
+++ b/tmac/man.local
@@ -21,6 +21,12 @@
 .\"   4: x-man-doc://1/groff   -- ManOpen (Mac OS X pre-2005)
 .\" Set this register to configure which the `MR` macro uses.
 .\" .nr an*MR-URL-format 1
+.
+.ftr CR AR
+.ftr CB AB
+.ftr CI AI
+.ftr CBI ABI
+.ds an*example-family A\"
 .\"
 .\" Local Variables:
 .\" mode: nroff

(The `ftr` requests are necessary to snag "manual" font selections with
`ft` requests or, more likely, `\f` escape sequences, and to handle
tbl(1) tables using those font names.)

Apply the foregoing patch to wherever your man.local is installed.  The
"Files" section of groff_man(7) in groff 1.23.0 (or Git) should tell you
where it is.

$ groff -t -man ./tmac/man.local ./build/man/groff_char.7 \
  >| groff_char-Palatinized.7.ps

Result attached.

> While I never used a hardware Blit, I have used both Plan 9 and its
> device multiplexer rio(1), whose interface is very similar to mpx/mux,
> and 9front’s Blit-emulator with an 8th Edition VM.  Coming from the
> Plan 9 world, it’s always fun to read how much of what we think of
> special of Plan 9 appeared in Research Unix’s last three editions.

I agree.  From what I grasped of it, the Labs pushed the Unix kernel as
far as they could get it to go.

> Beside the other stuff there.
> 
> Late Research Unix had both troff and TeX in use, but did you know
> about its own new typesetting program, monk?

I did.  But I never looked at that paper before.  Not sure what I think.
Not sure my opinion matters.  😅

> Not to worry: While I do wish for upstream grotty to use terminfo
> soon, I also enjoy reading your emails like that one.

I'm very glad to hear it.

> … backslashes?  You might mean backspaces.

I did, yes.  Looks like a need a bottle of Beano for Brains...

> Or perhaps reverse line feeds.

Those matter too, and are the raison d'etre of col(1).

> If you mean backspaces: No, I think man pages are readable enough even
> without emboldening and underlining.  I feel like defending Plan 9,
> you understand.  Its nroff does emit reverse line feeds for occasions
> like two-column output, but it does not emit backspaces for bold and
> underlined text, as far as I can tell.  When using the man(1) script
> to view man pages using nroff, you aren’t gonna get any font changes
> in your rio layer.

Not sure what I make of this.  I want data points from more users.  :)

> With which we’re back at the Jerq/Blit and its heritage: While nroff
> did not gain terminfo support in 1127 because they had a graphics
> system that, being superior to glass typewriter emulators, did not
> understand ACME-48-esque escape sequences.

If it's good enough for Wile E. Coyote, it's good enough for me!

> But even with that graphics system—that sure had proof(9)—they chose
> to read man pages on-line without bold and underlined text.

I need more evidence before I can subscribe to this claim.  I have
doubt.

> I’m afraid I’m not intimately familiar with the man page-reading
> process at 1127.  I don’t know how many dead tree volumes were flying
> around or how much they used man -T.

The Third Edition manual (the last before troff) suggests that at that
time, the denizens of 1127 were just fine reading man pages in _two_
"faces": roman and underlined.  Attached.

Regards,
Branden

Attachment: groff_char-Palatinized.7.ps
Description: groff_char-Palatinized.7.ps

Attachment: Unix Time-Sharing System Programmer's Manual Third Edition.pdf
Description: Unix Time-Sharing System Programmer's Manual Third Edition.pdf

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]