9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: lyndon@orthanc.ca (Lyndon Nerenberg (VE6BBM/VE7TFX))
Subject: [9fans] troff macros for typesetting books/longer texts
Date: Tue, 22 Mar 2011 13:51:53 -0800	[thread overview]
Message-ID: <d14b3073c789fd74ed93e692dccb78d5@gandalf.orthanc.ca> (raw)
In-Reply-To: <AANLkTimhoGFD54C31_fgVDwND3Mbv2q8Abz+C32=K+HM@mail.gmail.com>

> Just now I am reading "Unix Text Processing" by Dale Dougherty and Tim
> O'Reilly, a freely available book (pmartin proposes it as well). There
> are several chapters on the topic, so perhaps I'll get what I want in
> the end.

I was going to mention that one, but I figured it was so long out of
print as to be unobtainable.  I should know better, though.
abebooks.com has found me a wealth of long out-of-print UNIX material.

My moment of truly understanding troff was when I stopped thinking of
it as a typesetting program, and instead recognized it as a
programming language.  After that little epiphany, much of the smoke
cleared.  If you re-read the troff paper in that light, a syntax that
initially appears to be line noise magically transforms itself into a
concise and elegantly consistent language.  There's no denying it's
cryptic, though.  But once you recognize the consistency of the
syntax, it's a marvel to behold.

There's no denying it has its warts.  Number registers that are strings
still offends my sensibilities, but as with irregular verbs, pretty
soon you just learn to accept them and carry.  But the one bit of troff
black magic I still can't get my head around, even after 25 years, is
how the hell .wh page-bottom traps are supposed to work :-P


As for indexes, the me macro package provides macros for
generating index entries: .(x and .)x.  You can look in
/sys/lib/tmac/tmac.e to see how they are defined.  Plan 9 doesn't
seem to provide any documentation for the me macros, though.  I'm
pretty sure Stevens talked about index creation on his web site, and
you might want to check Brian Kernighan's web pages as well.

--lyndon




  parent reply	other threads:[~2011-03-22 21:51 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-22 17:10 Rudolf Sykora
2011-03-22 17:30 ` Lyndon Nerenberg
2011-03-22 17:44   ` Rudolf Sykora
2011-03-22 18:21     ` Lyndon Nerenberg
2011-03-22 18:46       ` tlaronde at polynum.com
2011-03-22 18:48         ` tlaronde at polynum.com
2011-03-22 18:48           ` erik quanstrom
2011-03-22 18:59             ` tlaronde at polynum.com
2011-03-22 19:23               ` erik quanstrom
2011-03-22 21:00             ` Rudolf Sykora
2011-03-22 21:35               ` tlaronde at polynum.com
2011-03-22 21:50                 ` Rudolf Sykora
2011-03-22 21:51               ` Lyndon Nerenberg (VE6BBM/VE7TFX) [this message]
2011-03-22 22:06                 ` Rudolf Sykora
2011-03-22 22:09               ` Brian L. Stuart
2011-03-22 22:31                 ` Rudolf Sykora
2011-03-22 22:55                   ` Lyndon Nerenberg (VE6BBM/VE7TFX)
2011-03-22 23:42                   ` Steve Simon
2011-03-22 23:47                     ` erik quanstrom
2011-03-22 19:08         ` Bakul Shah
2011-03-22 19:22           ` tlaronde at polynum.com
2011-03-22 19:50         ` Jacob Todd
2011-03-22 20:08           ` Anthony Sorace
2011-03-22 21:23           ` Steve Simon
2011-03-22 20:26 ` pmarin
2011-03-23 21:38 ` Stanley Lieber
2011-03-24  6:18 Allan Heim
2011-03-24 13:16 ` hiro
2011-03-24 13:55   ` Gabriel Diaz
2011-03-25 11:50     ` Aharon Robbins
2011-03-25 12:25       ` erik quanstrom
2011-03-25 12:37         ` Lucio De Re
2011-03-25 15:10         ` pmarin
2011-03-25 15:23           ` dexen deVries
2011-03-25 15:32           ` John Floren
2011-03-25 15:41             ` John Floren
2011-03-25 20:21             ` Michael Kerpan
2011-03-25 16:48         ` Bakul Shah

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=d14b3073c789fd74ed93e692dccb78d5@gandalf.orthanc.ca \
    --to=lyndon@orthanc.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).