Re: Man page titles, identifers, capitalization, and hyphens therein

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

 



Hi Alex,

Thanks for clarifying a couple of points.  I have...

...counter-clarifications!  :P

At 2025-01-14T16:33:37+0100, Alejandro Colomar wrote:
> On Tue, Jan 14, 2025 at 09:15:04AM -0600, G. Branden Robinson wrote:
> > At 2025-01-14T14:19:49+0100, Alejandro Colomar wrote:
> > > > @@ -95,8 +95,8 @@ .SS Title line
> > > >  The arguments of the command are as follows:
> > > >  .TP
> > > >  .I title
> > > > -The title of the man page, written in all caps (e.g.,
> > > > -.IR MAN-PAGES ).
> > > > +The title of the man page, written in lowercase (e.g.,
> > > > +.IR man-pages ).
> > To try to bring order to the chaos and confusion surrounding this
> > subject, I use the term "identifier".
> 
> For consistency with "TH" (title heading?), I think I prefer "title".

Except in *roff(7), "titles" are the term given to headers and footers
collectively; the content of these is precisely what the `TH` macro
configures; and arguments beyond its first are just determinative of
"title" content.

Thus:

$ echo '.TH foo 1 2025-01-14 "groff test suite"' | nroff -rLL=72n -man
foo(1)                   General Commands Manual                  foo(1)

groff test suite               2025‐01‐14                         foo(1)

> > I don't understand how the "name" is distinct from the "title" in
> > your usage.
> 
> Name is "SH Name";

Okay.  There's no collision in our usages here, since I avoid that term
for any other purpose in man page anatomy (except where qualified to
clarify it, as with "file name").

> title is TH's $1;

I followed this convention for my first few years as a groff developer
but ran into problems telling unlike things apart.  That is why I
distinguish titles from identifiers, as the quoted material in my
previous reply explained.

> filename is the file name.

No disagreement here.  I would say that "filename" is an excellent C
identifier, but it is not English.  Novice man page authors have a
terrible habit of porting C identifiers into English prose as if they
were the same language.  Possibly this practice arises from a feeling
of greater confidence and a self-assessment of more experience
expressing themselves in C than in English.

> > > if the name is something like UTF-8,
> > 
> > (by which you mean "uses code points outside the Basic Latin range")
> 
> Nope.  I meant UTF-8(7):

Oh, ha!  I'd have quoted it in that case -- use/mention distinction. ;-)

> 	$ find man/ | grep -i utf-8 | xargs grep -A1 -e ^.SH.N -e ^.TH
> 	.TH UTF-8 7 (date) "Linux man-pages (unreleased)"
> 	.SH NAME
> 	UTF-8 \- an ASCII compatible multibyte Unicode encoding

Yes.  On my system, I see both

	/usr/share/man/man7/utf-8.7.gz
	/usr/share/man/man7/utf8.7.gz

installed.  They (and "iso_8859-1.7.gz" and friends) are examples of why
there might be a case distinction between the man page identifier and
the file name.  The proper way to spell "UTF-8" is in fact in caps.

...but at the same time we're all children of Ken Thompson, and at a
shell prompt we experience great horror at the prospect of employing the
shift key.  (Thompson carries this abhorrence over to emails as well.)

Regards,
Branden

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Kernel Documentation]     [Netdev]     [Linux Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux