=================================================================== RCS file: /cvs/mandoc/roff.7,v retrieving revision 1.17 retrieving revision 1.20 diff -u -p -r1.17 -r1.20 --- mandoc/roff.7 2010/12/18 19:32:08 1.17 +++ mandoc/roff.7 2011/01/03 16:04:41 1.20 @@ -1,4 +1,4 @@ -.\" $Id: roff.7,v 1.17 2010/12/18 19:32:08 schwarze Exp $ +.\" $Id: roff.7,v 1.20 2011/01/03 16:04:41 kristaps Exp $ .\" .\" Copyright (c) 2010 Kristaps Dzonsons .\" Copyright (c) 2010 Ingo Schwarze @@ -15,7 +15,7 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd $Mdocdate: December 18 2010 $ +.Dd $Mdocdate: January 3 2011 $ .Dt ROFF 7 .Os .Sh NAME @@ -535,6 +535,180 @@ This request is intended to have one argument, consisting of an even number of characters. Currently, it is ignored including its arguments, and the number of arguments is not checked. +.Ss \&T& +Re-start a table layout, retaining the options of the prior table +invocation. +See +.Sx \&TS . +.Ss \&TE +End a table context. +See +.Sx \&TS . +.Ss \&TS +Begin a table, which formats input in aligned rows and columns. +A table consists of an optional single line of table options terminated +by a semicolon, followed by one or more lines of layout specification +terminated by a period, then table data. +A table block may also include +.Nm , +.Xr mdoc 7 , +or +.Xr man 7 +macros. +Example: +.Bd -literal -offset indent +\&.TS +box tab(:); \e" Table-wide options. +c | c \e" Layout for first line. +| c | c. \e" Layout for all subsequent lines. +1:2 \e" Data... +3:4 +\&.TE +.Ed +.Pp +Table data is +.Em pre-processed , +that is, data rows are parsed then inserted into the underlying stream +of input data. +This allows data rows to be interspersed by arbitrary macros, such as +.Bd -literal -offset indent +\&.TS +tab(:); +c c c. +1:2:3 +\&.Ao +3:2:1 +\&.Ac +\&.TE +.Ed +.Pp +in the case of +.Xr mdoc 7 +or +.Bd -literal -offset indent +\&.TS +tab(:); +c c c. +\&.ds ab 2 +1:\e*(ab:3 +\&.I +3:2:1 +\&.TE +.Ed +.Pp +in the case of +.Xr man 7 . +.Pp +The first line of a table consists of its options, which consists of +space-separated keys and modifiers terminated by a semicolon. +If the first line does not have a terminating semicolon, it is assumed +that no options are specified and instead a layout is processed. +Some options accept arguments enclosed by paranthesis. +The following case-insensitive options are available: +.Bl -tag -width Ds +.It Cm center +This option is not supported by +.Xr mandoc 1 . +This may also be invoked with +.Cm centre . +.It Cm delim +Accepts a two-character argument. +This option is not supported by +.Xr mandoc 1 . +.It Cm expand +This option is not supported by +.Xr mandoc 1 . +.It Cm box +Draw a single-line box around the table. +This may also be invoked with +.Cm frame . +.It Cm doublebox +Draw a double-line box around the table. +This may also be invoked with +.Cm doubleframe . +.It Cm allbox +This option is not supported by +.Xr mandoc 1 . +.It Cm tab +Accepts a single-character argument. +This character is used a delimiter between data cells, which otherwise +defaults to the tab character. +.It Cm linesize +Accepts a natural number (all digits). +This option is not supported by +.Xr mandoc 1 . +.It Cm nokeep +This option is not supported by +.Xr mandoc 1 . +.It Cm decimalpoint +Accepts a single-character argument. +This character will be used as the decimal point with the +.Cm n +layout key. +This option is not supported by +.Xr mandoc 1 . +.It Cm nospaces +This option is not supported by +.Xr mandoc 1 . +.El +.Pp +The table layout follows table options, except in the case of +.Sx \&T& , +where it immediately procedes invocation. +Layout specifies how data rows are displayed on output. +Each layout line corresponds to a line of data; the last layout line +applies to all remaining data lines. +Layout lines may also be separated by a comma. +Each layout cell consists of one of the following case-insensitive keys: +.Bl -tag -width Ds +.It Cm c +Centre a literal string within its column. +.It Cm r +Right-justify a literal string within its column. +.It Cm l +Left-justify a literal string within its column. +.It Cm n +Justify a number around its decimal point. +If the decimal point is not found on the number, it's assumed to trail +the number. +.It Cm s +This option is not supported by +.Xr mandoc 1 . +.It Cm a +This option is not supported by +.Xr mandoc 1 . +.It Cm ^ +This option is not supported by +.Xr mandoc 1 . +.It Cm \- +This may also be invoked with +.Cm _ . +.It Cm = +.It Cm \(ba +Emit a vertical bar instead of data. +.It Cm \(ba\(ba +Emit a double-vertical bar instead of data. +.El +.Pp +Keys may be followed by a set of modifiers. +A modifier is either a modifier key or a natural number for specifying +spacing. +The following case-insensitive modifier keys are available: +.Bl -tag -width Ds +.It Cm z +.It Cm u +.It Cm e +.It Cm t +.It Cm d +.It Cm f +Must be followed by a case-insensitive font style: +.Cm b +for bold or +.Cm i +for italic. +.It Cm b +.It Cm i +.El .Sh COMPATIBILITY This section documents compatibility between mandoc and other other .Nm @@ -566,6 +740,12 @@ using the next-line syntax. .Xr man 7 , .Xr mandoc_char 7 , .Xr mdoc 7 +.\" .Rs +.\" .%A M. E. Lesk +.\" .%T Tbl\(emA Program to Format Tables +.\" .%D June 11, 1976 +.\" .%U http://www.kohala.com/start/troff/v7/man/tbl/tbl.ps +.\" .Re .Rs .%A Joseph F. Ossanna .%A Brian W. Kernighan