groff
[Top][All Lists]
Advanced

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

Re: [Groff] overview of man(1) and groff(1) command line options


From: Steffen Nurpmeso
Subject: Re: [Groff] overview of man(1) and groff(1) command line options
Date: Thu, 02 Feb 2017 22:44:29 +0100
User-agent: s-nail v14.9.0-pre3

Ingo Schwarze <address@hidden> wrote:
 |i just assembled an overview of all the command line options of
 |man(1), groff(1), and closely related utilities:
 |
 |  http://mdocml.bsd.lv/man/man.options.1.html
 |  http://mdocml.bsd.lv/cgi-bin/cvsweb/man.options.1

Good sleuthing, it seems to me.
I felt the immediate desire to include it, but then again that
wouldn't really make sense. ^.^

 |That may hopefully be useful for people who are forced to add a
 |command line option to one of these tools or to a similar one in
 |the future - of course, if you can avoid adding an option, please
 |refrain from doing so, but sometimes that's just not possible.
 |
 |I figure that, if such a list had been available earlier, it would
 |contain less clashes.  I admit to being responsible for some of the
 |clashes myself, but when i implemented those options years ago, i
 |simply didn't find all the needed information.
 |
 |If you see any errors or omissions, you are welcome to point me to
 |sources of information.
 ...
 |P.S.
 |One curiosity is that the oldest information i could find about
 |groff comes from Kirk McKusick's Berkeley CSRG archive CDs, and not
 |from the official groff git repository.  The oldest BSD release i'm
 |aware of that contained groff is 4.3BSD-Net/2 released on August
 |20, 1991 (or maybe up to two months earlier, sources are contradictory).
 |It contained groff-1.01, released on March 13, 1991, and the complete
 |source code is available.  The first groff release contained in git
 |is groff-1.02, released June 2, 1991.  I wasn't aware of that when
 |Eric S. Raymond assembled the git repo, or of course i would have
 |spoken up.  Even now, i couldn't find sources of groff 0.4 (July
 |14, 1990), 0.5 (August 21, 1990), 0.6 (October 22, 1990), 0.7
 |(December 18, 1990), or 1.0 (January 6, 1991) either, or any
 |information about anything that predates groff-0.4.

This is interesting.  I have only the csrg.git of Jonathan Gray,
not the unix-history.git of Diomidis Spinellis (unfortunately),
and even though that csrg.git mentions groff quite often, it is
only because of necessary macro adjustments, no source code
around.  I didn't know this.

 |P.P.S.
 |Maybe you want to rebase?  ...  Oh, just kidding.  :)

Hmm.  This shouldn't be that hard, the repo only has about two
dozen tags!  I have made this terrible mistake with the mailer
i maintain, and now the timeline branch is practically "sealed"
with a hole from 1980 to 1996, thus requiring an additional or
replacing "history" branch later on.  Better care next time would
be nice, and less follow-up work.

 |P.P.S.
 |The reason for doing this research right now is that i may be forced
 |to add a completely new option to mandoc(1), but i'm still unsure
 |about various details, i'm still pondering.  The rough goal is to
 |help a tool that does bulk conversions, but in a context where
 |catman(8) is probably not ideal; again, it's not a good time to
 |discuss the details of that yet, much is still unclear, i'm only
 |mentioning it such that you can understand the motivation, if you
 |wonder about it.

I am all in favour of those nice double-minus self-describing long
options, which can't be mistreated.  I could donate a small long
option parser that should be just fine.  (It is about 6KB .cc and
12KB .h; C++ plus but easy to convert to C.  And that includes
a long-option validity checker, for development checks.  From
2003, last touched 2005, at that time i was a pretty good
programmer i think.)

--steffen



reply via email to

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