Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add
the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
troff [-a] [-f] [-Fdir] [-i] [-mname] [-nN] [-olist] [-raN] [-sN] [-Tdest] [-uN] [-z] [filename]...
troff formats text in the filenames for typesetting or laser printing. Input to troff is expected to consist of text interspersed with formatting requests and macros. If no filename argument is present, troff reads standard input. A minus sign (-) as a filename indicates that standard input should be read at that point in the list of input files.
The output of troff is usually piped through dpost(1) to create a printable postscript file (see EXAMPLES).
The following options are supported. They may appear in any order, but all must appear before the first filename. -a
Send an ASCII approximation of formatted output to standard output. (Note: a rough ASCII version can also be printed out on ordinary terminals with an old and rarely used command, /usr/bin/ta.)
Do not print a trailer after the final page of output or cause the postprocessor to relinquish control of the device.
Search directory dir for font width or terminal tables instead of the system default directory.
Read standard input after all input files are exhausted.
Prepend the macro file /usr/share/lib/tmac/name to the input filenames. Note: most references to macro packages include the leading m as part of the name; for example, the man(5) macros reside in /usr/share/lib/tmac/an. The macro directory can be changed by setting the TROFFMACS environment variable to a specific path. Be certain to include the trailing '\|/\|' (slash) at the end of the path.
Number the first generated page N.
Print only pages whose page numbers appear in the comma-separated list of numbers and ranges. A range N-M means pages N through M; an initial -N means from the beginning to page N; and a final N- means from N to the end.
Quiet mode in nroff; ignored in troff.
Set register a (one-character names only) to N.
Stop the phototypesetter every N pages. On some devices, troff produces a trailer so you can change cassettes; resume by pressing the typesetter's start button.
Prepare output for typesetter dest. The following values can be supplied for dest: post
A PostScript printer; this is the default value. The output of the -T option must go through dpost(1) before it is sent to a PostScript printer to obtain the proper output.
Set the emboldening factor for the font mounted in position 3 to N. If N is missing, then set the emboldening factor to 0.
Suppress formatted output. Only diagnostic messages and messages output using the .tm request are output.
The following operand is supported: filename
The file containing text to be processed by troff.
Example 1 Using troff
The following example shows how to print an input text file mytext, coded with formatting requests and macros. The input file contains equations and tables and must go through the tbl(1) and eqn(1) preprocessors before it is formatted by troff with ms macros, processed by dpost(1), and printed by lp(1):
tbl mytext | eqn | troff -ms | dpost | lp
temporary file
standard macro files
font width tables for alternate mounted troff fonts
terminal driving tables for nroff
checknr(1), col(1), dpost(1), eqn(1), lp(1), man(1), nroff(1), tbl(1), attributes(5), man(5), me(5), ms(5)
troff is not 8-bit clean because it is by design based on 7-bit ASCII.
Previous documentation incorrectly described the numeric register yr as being the Last two digits of current year. yr is in actuality the number of years since 1900. To correctly obtain the last two digits of the current year through the year 2099, the definition given below of string register yy may be included in a document and subsequently used to display a two-digit year. Note that any other available one- or two-character register name may be substituted for yy.
.\e" definition of new string register yy--last two digits of year .\e" use yr (# of years since 1900) if it is < 100 .ie \en(yr<100 .ds yy \en(yr .el \e{ .\e" else, subtract 100 from yr, store in ny .nr ny \en(yr-100 .ie \en(ny>9 \e{ .\e" use ny if it is two digits .ds yy \en(ny .\e" remove temporary number register ny .rr ny \e} .el \e{.ds yy 0 .\e" if ny is one digit, append it to 0 .as yy \en(ny .rr ny \e} \e}