NAME
fixman - check a man page and report (sometimes fix) problems
SYNOPSIS
fixman [-BIdnv] pages
DESCRIPTION
fixman looks over a man page, checks for a variety of problems,
and announces any found. Some problems are fixed, others require
manual intervention. The input file may be modified (unless
the -n option is specified); the original file is then renamed
to
name-.
Processing and Checking
-
Reformats the .TH line
-
reformats the NAME section
-
processes the SYNOPSIS section, figuring out function and
parameter names, and appropriately emboldening or italicizing them.
-
emboldens or italicizes appropriate names in other sections,
including DESCRIPTION, PARAMETER FILE, RETURN VALUES, DIAGNOSTICS
and BUGS AND CAVEATS.
-
suggests using italics in place of double quotes
-
checks for required sections in required order.
-
looks for balanced parentheses, curly braces and square braces, and
an even number of double quotes and back quotes.
-
looks for peculiar constructions
-
checks for spelling problems
-
checks that functions declared in SYNOPSIS occur in NAME section
(and vice versa), and that those same functions are mentioned
in the DESCRIPTION.
-
Adds a leading blank to lines (apparently) mistakenly beginning with . or '
-
replaces tabs with spaces (except in tables). Otherwise
lines don't line up properly.
-
eliminates empty sections, which are just eyesores.
-
makes sure the first line is proper if there are eqn or tbl expressions.
-
warns of lines which are too long in preformatted sections (between .nf and .fi).
-
adds commands in preformatted sections to keep groups of lines without blank
lines together, to indent the section slightly, and to use an monospaced font.
-
Fixes any unescaped backslashes (as for example, in the format section of printf statement).
-
ensures that .nf and .fi are matched.
-
remove extra blank lines, but generally add blank lines to make text easier to
read, but with no change in the formatted result.
-
Tries to fill in AUTHOR section if not present.
-
tries to add #include line if not present
-
Tries to correctly specify the LIBRARY section; replaces current contents.
-
trims trailing blanks from every line.
-
runs checknr(1) on the output man page.
OPTIONS
-
-B
Don't emphasize function names
-
-d
Show changes.
-
-I
Don't emphasize parameters
-
-n
Rather than replacing the existent man page, show what
would be changed.
-
-v
Show more detail (mostly for debugging).
SEE ALSO
template(1)
manpage(1)
BUGS AND CAVEATS
The emphasis of function and parameter names is done blindly
free of the context, which can lead to a lot of emphasis when
the names are common words.
Single quotes aren't counted because of the possessive usage.
Counting right parentheses can be hazardous because of numbered lists 1), 2), 3) ...
Fairly specific to our man page dialect.
Just a reminder that you can use nroff to view the manpage:
% nroff -man yourmanpage.1 | more
AUTHOR
Daniel Quinlan