Use: nroff -mdoc2html input_file...
Or, for the completely general case,
Use: groff -P-b -P-u -P-o -Tascii -ww -mdoc2html input_file ...
This was originally intended for just the new distrib/notes and other
non-man-page project documentation, but in fact it can get almost all of
the man pages right at this point.
In many cases, I would suggest that original documentation not be written
in HTML or ASCII any more. A good example would be "supported devices".
It's presently duplicated, in the install notes, the web pages, and the
man pages. If written in -mdoc, it can automatically be a man page, a www
page feature, and a printable, downloadable file. We can generate PostScript
and the "unix enhanced text" format used by more(1), as well as plain old
ascii, and all using in-tree tools.
TNF Copyright.
.Os to NetBSD 1.4 instead of "4.4 BSD"
Note.. many of the undocumented macros in here are broken, like the .Px,
and .As macros. Someone with more clue should fix them.
D1 (dee-one) has two bogus-looking lines that are not in Dl (dee-ell); and
what they do is delete the first parameter unless it is a callable macro.
This may have something to do with the reason why dee-ell is used 418 times
in /usr/share/man vs only 6 times for the crippled dee-one.
* Don't print the `et' in an itty bitty point size just because we want
small caps for the rest of `NetBSD'.
* Define an Nx number register so the macro becomes sort-of callable. It
does punctuation wrong, looking at argument count rather than argument
type, so this will need fixing before it is truly `parsed and callable'.
of what the documentation claimed) with a new one that is parsed and
callable, and far simplyer -- it turns ".Nx FOO ." into "NetBSD FOO."
without needing to have version numbers hard coded in.
Add a .Fx macro that is a copy of the .Nx macro except that it prints
"FreeBSD" instead of "NetBSD" -- this should make any future "HISTORY"
sections which credit FreeBSD easier, and will not require that we
constantly track their macro versions.
===
.Nm foo
...
The following options are supported by
.Nm "" :
===
It could be smarter, but it works :)
Thanks to Christoph Badura <bad@ora.de> for providing this!
.Dd and .TH macros (after loading the right sets of macros). Both were
being called with a different number of macros than they were actually
called with, and that was screwing up Dd's processing of its arguments.
This fix is groff-specific. It's apparently possible to do this is a
non-groff-specific way, but relatively hard, and my roff skills just aren't
up to it (and I have no intention of changing that 8-). I've marked the
lines that are groff-specific, at least.
1.2A and 1.2B, respectively). clean up the strings resulting from
other Nx uses slightly. (previously, 1.0A would be printed as 1.0a, etc.
Now it's printed correctly.)
I would have prefered the "Kernel Internals Manual", but some man pages
in the kernel section have names too long to make that possible without
messing up the title lines. (Sigh.) Also designated "KM" to indicate
"NetBSD Kernel Manual" for completeness.
ownership and permissions.
Use `:', rather than `.' to separate user and group in chown commands
in case we ever decide to remove the support for the (obsolete) `.'
separator.
When the -mandoc macros encounter a .TH, it loads the old -man macros,
slices up a new .TH, and hands off.
But the .TH arguments are not quoted in the new .TH invokation.
Dates, section names, etc., are split up and scattered across the
headers and footers of the manpage.
Very ugly.
Fix:
The following patch to /usr/share/tmac/tmac.andoc quotes the arguments
before they are (re)interpreted by .TH.