]> git.cameronkatri.com Git - mandoc.git/blobdiff - tbl.7
When a file is given on the command line, actually exists, and its name
[mandoc.git] / tbl.7
diff --git a/tbl.7 b/tbl.7
index bfe6bec5cfe5a5b407df87fcf680b4db9c7d6c5d..04f5b47f8c5d843b9b4cc3d184995a2f544c493c 100644 (file)
--- a/tbl.7
+++ b/tbl.7
@@ -1,6 +1,7 @@
-.\"    $Id: tbl.7,v 1.2 2011/01/05 09:31:10 kristaps Exp $
+.\"    $Id: tbl.7,v 1.21 2014/11/26 17:51:55 schwarze Exp $
 .\"
-.\" Copyright (c) 2010 Kristaps Dzonsons <kristaps@bsd.lv>
+.\" Copyright (c) 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
+.\" Copyright (c) 2014 Ingo Schwarze <schwarze@openbsd.org>
 .\"
 .\" Permission to use, copy, modify, and distribute this software for any
 .\" purpose with or without fee is hereby granted, provided that the above
@@ -14,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: January 5 2011 $
+.Dd $Mdocdate: November 26 2014 $
 .Dt TBL 7
 .Os
 .Sh NAME
@@ -49,7 +50,7 @@ macro tags, whose precise syntax is documented in
 Tables consist of a series of options on a single line, followed by the
 table layout, followed by data.
 .Pp
-For example, the following creates a boxed table with digits centered in
+For example, the following creates a boxed table with digits centred in
 the cells.
 .Bd -literal -offset indent
 \&.TS
@@ -98,7 +99,7 @@ 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 
+This allows data rows to be interspersed by arbitrary
 .Xr roff 7 ,
 .Xr mdoc 7 ,
 and
@@ -134,11 +135,12 @@ in the case of
 .Ss Options
 The first line of a table consists of space-separated option keys and
 modifiers terminated by a semicolon.
+For GNU compatibility, option keys can also be separated by commas.
 If the first line does not have a terminating semicolon, it is assumed
 that no options are specified and instead a
 .Sx Layout
 is processed.
-Some options accept arguments enclosed by paranthesis.
+Some options accept arguments enclosed by parenthesis.
 The following case-insensitive options are available:
 .Bl -tag -width Ds
 .It Cm center
@@ -166,7 +168,7 @@ 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
+This character is used as a delimiter between data cells, which otherwise
 defaults to the tab character.
 .It Cm linesize
 Accepts a natural number (all digits).
@@ -180,8 +182,6 @@ 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 .
@@ -197,7 +197,7 @@ 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
+.Bl -tag -width 2n
 .It Cm c
 Centre a literal string within its column.
 .It Cm r
@@ -205,18 +205,29 @@ 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.
+Justify a number around its last decimal point.
 If the decimal point is not found on the number, it's assumed to trail
 the number.
 .It Cm s
+Horizontally span columns from the last
+.No non- Ns Cm s
+data cell.
+It is an error if spanning columns follow a
+.Cm \-
+or
+.Cm \(ba
+cell, or come first.
 This option is not supported by
 .Xr mandoc 1 .
 .It Cm a
-This option is not supported by
-.Xr mandoc 1 .
+Left-justify a literal string and pad with one space.
 .It Cm ^
-This option is not supported by
-.Xr mandoc 1 .
+Vertically span rows from the last
+.No non- Ns Cm ^
+data cell.
+It is an error to invoke a vertical span on the first layout row.
+Unlike a horizontal spanner, you must specify an empty cell (if it not
+empty, the data is discarded) in the corresponding data cell.
 .It Cm \-
 Replace the data cell (its contents will be lost) with a single
 horizontal line.
@@ -231,30 +242,49 @@ Emit a vertical bar instead of data.
 Emit a double-vertical bar instead of data.
 .El
 .Pp
-For example, following layout specifies a centre-justified column of
-minimum width 10, followed by vertical bar, followed by a left-justified
-column of minimum width 10, another vertical bar, then a column
-justified about the decimal point in numbers:
-.Pp
-.Dl c10 | l10 | n
-.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 minimum width of a column.
 The following case-insensitive modifier keys are available:
-.Cm z ,
-.Cm u ,
-.Cm e ,
-.Cm t ,
+.Bl -tag -width 2n
+.It Cm b
+Use a bold font for the contents of this column.
+.It Cm e
+Make this column wider to match the maximum width
+of any other column also having the
+.Cm e
+modifier.
+.It Cm f
+The next character selects the font to use for this column.
+See the
+.Xr roff 7
+manual for supported one-character font names.
+.It Cm i
+Use an italic font for the contents of this column.
+.It Cm x
+After determining the width of all other columns, distribute the
+rest of the line length among all columns having the
+.Cm x
+modifier.
+.It Cm z
+Do not use this cell for determining the width of this column.
+.El
+.Pp
+The modifiers
 .Cm d ,
-.Cm f ,
-.Cm b ,
-.Cm i ,
-.Cm b ,
+.Cm t ,
+.Cm u ,
 and
-.Cm i .
-All of these are ignored by
+.Cm w
+are ignored by
 .Xr mandoc 1 .
+.Pp
+For example, the following layout specifies a centre-justified column of
+minimum width 10, followed by vertical bar, followed by a left-justified
+column of minimum width 10, another vertical bar, then a column using
+bold font justified about the decimal point in numbers:
+.Pp
+.Dl c10 | l10 | nfB
 .Ss Data
 The data section follows the last layout row.
 By default, cells in a data section are delimited by a tab.
@@ -271,13 +301,16 @@ If
 .Cm \e-
 or
 .Cm \e=
-is specified, a line is drawn within the data field (i.e., terminating
+is specified, a line is drawn within the data field (i.e. terminating
 within the cell and not draw to the border).
 If the last cell of a line is
 .Cm T{ ,
 all subsequent lines are included as part of the cell until
 .Cm T}
-is specified on its own line.
+is specified as its own data cell.
+It may then be followed by a tab
+.Pq or as designated by Cm tab
+or an end-of-line to terminate the row.
 .Sh COMPATIBILITY
 This section documents compatibility between mandoc and other
 .Nm
@@ -293,10 +326,10 @@ implementation allows them.
 .El
 .Sh SEE ALSO
 .Xr mandoc 1 ,
-.Xr mandoc_char 7 ,
-.Xr roff 7 ,
 .Xr man 7 ,
-.Xr mdoc 7
+.Xr mandoc_char 7 ,
+.Xr mdoc 7 ,
+.Xr roff 7
 .Rs
 .%A M. E. Lesk
 .%T Tbl\(emA Program to Format Tables
@@ -313,7 +346,7 @@ This formed the basis of the implementation that is part of the
 .Xr mandoc 1
 utility.
 .Sh AUTHORS
-This partial
+This
 .Nm
 reference was written by
-.An Kristaps Dzonsons Aq kristaps@bsd.lv .
+.An Kristaps Dzonsons Aq Mt kristaps@bsd.lv .