/sys/doc/ Documentation archive



ROFF(I)                      11/4/74                      ROFF(I)



NAME
     roff  -  format text

SYNOPSIS
     roff [ +n ] [ -n ] [ -s ] [ -h ] file ...

DESCRIPTION
     Roff formats text according to control lines embedded in the
     text in the given files.  Encountering  a  nonexistent  file
     terminates  printing.   Incoming  interconsole  messages are
     turned off during printing.   The  optional  flag  arguments
     mean:

     +n   Start printing at the first page with number n.

     -n   Stop printing at the first page numbered higher than n.

     -s   Stop before each page (including the  first)  to  allow
          paper  manipulation;  resume on receipt of an interrupt
          signal.

     -h   Insert tabs in the  output  stream  to  replace  spaces
          whenever appropriate.

     Input  consists  of intermixed text lines, which contain in-
     formation to be formatted, and request lines, which  contain
     instructions  about  how  to format it.  Request lines begin
     with a distinguished control character, normally a period.

     Output lines may be filled as nearly as possible with  words
     without  regard  to  input  lineation.   Line  breaks may be
     caused at specified places by certain commands,  or  by  the
     appearance of an empty input line or an input line beginning
     with a space.

     The capabilities of roff are specified in the  attached  Re-
     quest  Summary.   Numerical values are denoted there by n or
     +n, titles by t, and single characters by c.  Numbers denot-
     ed +n may be signed + or -, in which case they signify rela-
     tive changes to a quantity, otherwise they signify an  abso-
     lute resetting.  Missing n fields are ordinarily taken to be
     1, missing t fields to be empty, and c fields  to  shut  off
     the appropriate special interpretation.

     Running  titles  usually  appear  at top and bottom of every
     page.  They are set by requests like

               .he 'part1'part2'part3'

     Part1 is left justified, part2 is  centered,  and  part3  is
     right  justified  on the page.  Any % sign in a title is re-
     placed by the current page number.  Any nonblank  may  serve
     as a quote.

     ASCII tab characters are replaced in the input by a replace-


                              - 1 -




ROFF(I) 11/4/74 ROFF(I)


     ment character, normally a space, according  to  the  column
     settings  given  by a .ta command.  (See .tr for how to con-
     vert this character on output.)

     Automatic hyphenation of filled output is done under control
     of .hy.  When a word contains a designated hyphenation char-
     acter, that character disappears from the output and hyphens
     can be introduced into the word at the marked places only.

FILES
     /usr/lib/suftab suffix hyphenation tables
     /tmp/rtm?       temporary

SEE ALSO
     nroff(I), troff(I)

BUGS
     Roff  is the simplest of the runoff programs, but is utterly
     frozen.







































                              - 2 -




ROFF(I)                      11/4/74                      ROFF(I)


                         REQUEST SUMMARY

Request Break Initial Meaning
.ad      yes     yes     Begin adjusting right margins.
.ar      no      arabic  Arabic page numbers.
.br      yes     -       Causes a line break - the filling of the
                        current line is stopped.
.bl n    yes     -       Insert of n blank lines, on new page if
                        necessary.
.bp +n   yes     n=1     Begin new page and number it n; no n
                        means `+1'.
.cc c    no      c=.     Control character becomes `c'.
.ce n    yes     -       Center the next n input lines, without
                        filling.
.de xx   no      -       Define parameterless macro to be invoked
                        by request `.xx' (definition ends on line
                        beginning `..').
.ds      yes     no      Double space; same as `.ls 2'.
.ef t    no      t=''''  Even foot title becomes t.
.eh t    no      t=''''  Even head title becomes t.
.fi      yes     yes     Begin filling output lines.
.fo      no      t=''''  All foot titles are t.
.hc c    no      none    Hyphenation character becomes `c'.
.he t    no      t=''''  All head titles are t.
.hx      no      -       Title lines are suppressed.
.hy n    no      n=1     Hyphenation is done, if n=1; and is not
                        done, if n=0.
.ig      no      -       Ignore input lines through a line begin-
                        ning with `..'.
.in +n   yes     -       Indent n spaces from left margin.
.ix +n   no      -       Same as `.in' but without break.
.li n    no      -       Literal, treat next n lines as text.
.ll +n   no      n=65    Line length including indent is n char-
                        acters.
.ls +n   yes     n=1     Line spacing set to n lines per output
                        line.
.m1 n    no      n=2     Put n blank lines between the top of
                        page and head title.
.m2 n    no      n=2     n blank lines put between head title and
                        beginning of text on page.
.m3 n    no      n=1     n blank lines put between end of text
                        and foot title.
.m4 n    no      n=3     n blank lines put between the foot title
                        and the bottom of page.
.na      yes     no      Stop adjusting the right margin.
.ne n    no      -       Begin new page, if n output lines cannot
                        fit on present page.
.nn +n   no      -       The next n output lines are not num-
                        bered.
.n1      no      no      Add 5 to page offset; number lines in
                        margin from 1 on each page.
.n2 n    no      no      Add 5 to page offset; number lines from
                        n; stop if n=0.
.ni +n   no      n=0     Line numbers are indented n.
.nf      yes     no      Stop filling output lines.
.nx filename     -               Change to input file `filename'.


                              - 3 -




ROFF(I)                      11/4/74                      ROFF(I)


.of t    no      t=''''  Odd foot title becomes t.
.oh t    no      t=''''  Odd head title becomes t.
.pa +n   yes     n=1     Same as `.bp'.
.pl +n   no      n=66    Total paper length taken to be n lines.
.po +n   no      n=0     Page offset.  All lines are preceded by
                        n spaces.
.ro      no      arabic  Roman page numbers.
.sk n    no      -       Produce n blank pages starting next
                        page.
.sp n    yes     -       Insert block of n blank lines, except at
                        top of page.
.ss      yes     yes     Single space output lines, equivalent to
                        `.ls 1'.
.ta n n..                -       Pseudotab settings.  Initial tab
                        settings are columns 9 17 25 ...
.tc c    no      space   Tab replacement character becomes `c'.
.ti +n   yes     -       Temporarily indent next output line n
                        spaces.
.tr cdef..       no      -       Translate c into d, e into f,
                        etc.
.ul n    no      -       Underline the letters and numbers in the
                        next n input lines.




































                              - 4 -