man - macros to format Reference Manual pages
nroff -man filename...
troff -man filename...
These macros are used to lay out the reference pages in this manual. If filename contains format input for a preprocessor, the commands shown above must be piped through the appropriate preprocessor. This is handled automatically by the man(1) command. See the Conventions section.
Any text argument t may be zero to six words. Quotes may be used to include SPACE characters in a “word”. If text is empty, the special treatment is applied to the next input line with text to be printed. In this way .I may be used to italicize a whole line, or .SB may be used to make small bold letters.
A prevailing indent distance is remembered between successive indented paragraphs, and is reset to default value upon reaching a non-indented paragraph. Default units for indents i are ens.
Type font and size are reset to default values before each paragraph, and after processing font and size setting macros.
These strings are predefined by –man:
`®', `(Reg)' in nroff.
Change to default type size.
* n.t.l. = next text line; p.i. = prevailing indent
When formatting a manual page, man examines the first line to determine whether it requires special processing. For example a first line consisting of:
indicates that the manual page must be run through the tbl(1) preprocessor.
A typical manual page for a command or function is laid out as follows:
The name of the command or function, which serves as the title of the manual page. This is followed by the number of the section in which it appears.
The name, or list of names, by which the command is called, followed by a dash and then a one-line summary of the action performed. All in roman font, this section contains no troff(1) commands or escapes, and no macro requests.
The syntax of the command and its arguments, as typed on the command line. When in boldface, a word must be typed exactly as printed. When in italics, a word can be replaced with an argument that you supply. References to bold or italicized items are not capitalized in other sections, even when they begin a sentence.
Syntactic symbols appear in roman face:
An argument, when surrounded by brackets is optional.
Arguments separated by a vertical bar are exclusive. You can supply only one item from such a list.
Arguments followed by an ellipsis can be repeated. When an ellipsis follows a bracketed set, the expression within the brackets can be repeated.
If required, the data declaration, or #include directive, is shown first, followed by the function declaration. Otherwise, the function declaration is shown.
A narrative overview of the command or function's external behavior. This includes how it interacts with files or data, and how it handles the standard input, standard output and standard error. Internals and implementation details are normally omitted. This section attempts to provide a succinct overview in answer to the question, what does it do?
Literal text from the synopsis appears in constant width, as do literal filenames and references to items that appear elsewhere in the reference manuals. Arguments are italicized.
If a command interprets either subcommands or an input grammar, its command interface or input grammar is normally described in a USAGE section, which follows the OPTIONS section. The DESCRIPTION section only describes the behavior of the command itself, not that of subcommands.
The list of options along with a description of how each affects the command's operation.
A list of the values the library routine returns to the calling program and the conditions that cause these values to be returned.
A list of the values the utility returns to the calling program or shell, and the conditions that cause these values to be returned.
A list of files associated with the command or function.
A comma-separated list of related manual pages, followed by references to other published materials.
A list of diagnostic messages and an explanation of each.
A description of limitations, known defects, and possible problems associated with the command or function.
SMF service svc:/application/man-index is used to generate the index files for –f, –k, and –K options of man(1). The SMF service is online by default. The index files for the options are generated during package/system installation if the FMRI is specified as an restart_fmri actuator. Any man page delivering packages that use the FMRI as restart_fmri actuator for its file actions must deliver a unique symbolic link to their man page directory at the following directory:
The unique symbolic link names should be of package FMRI without scheme, slash character (/) replaced with "%2F", and optionally have some or all sequences of numbers of version. For instance, for the following package FMRI:
could supply one of the symbolic link names such as:
The method of the SMF service, upon requested to generate index files using restart_fmri during package install, checks the symbolic links. Based on the newness of the installed files, index files are generated only as necessary.
Unless used in an IPS package as restart_fmri, by default, it generates index files in /usr/share/man/ and /usr/gnu/share/man/. When used in and IPS package as restart_fmri, it generates and places index files in the same directory as the man page source directory of the package.
Directory to save symbolic links to man page directories needing index files for –f, –k, and –K queries.
Table of Contents and keyword database.
Generated files include:
Dale Dougherty and Tim O'Reilly, Unix Text Processing