summaryrefslogtreecommitdiffstats
path: root/contrib/groff/man
diff options
context:
space:
mode:
authorru <ru@FreeBSD.org>2005-10-20 10:45:19 +0000
committerru <ru@FreeBSD.org>2005-10-20 10:45:19 +0000
commit353ac0b339df3493d1950b6527988b77b76bd197 (patch)
tree8a188846a3f5bd2f2b8cb869cba64e3c470a2b26 /contrib/groff/man
parentc40093b1f1b43dc237b9d272697cdd0842ec64ec (diff)
downloadFreeBSD-src-353ac0b339df3493d1950b6527988b77b76bd197.zip
FreeBSD-src-353ac0b339df3493d1950b6527988b77b76bd197.tar.gz
Virgin import of FSF groff v1.19.2
Diffstat (limited to 'contrib/groff/man')
-rw-r--r--contrib/groff/man/ditroff.man10
-rw-r--r--contrib/groff/man/groff.man118
-rw-r--r--contrib/groff/man/groff_char.man17
-rw-r--r--contrib/groff/man/groff_diff.man204
-rw-r--r--contrib/groff/man/groff_font.man48
-rw-r--r--contrib/groff/man/groff_out.man559
-rw-r--r--contrib/groff/man/groff_tmac.man44
-rw-r--r--contrib/groff/man/roff.man16
8 files changed, 734 insertions, 282 deletions
diff --git a/contrib/groff/man/ditroff.man b/contrib/groff/man/ditroff.man
index 0867f3d0..ea3bb86 100644
--- a/contrib/groff/man/ditroff.man
+++ b/contrib/groff/man/ditroff.man
@@ -1,11 +1,11 @@
.ig
ditroff.man
-Last update: 4 Jan 2002
+Last update: 2 Jul 2004
This file is part of groff, the GNU roff type-setting system.
-Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
written by Bernd Warken <bwarken@mayn.de>
maintained by Werner Lemberg <wl@gnu.org>
@@ -85,7 +85,9 @@ today.
In order to distinguish it from Osanna's original mono-device version,
it was called
.I ditroff
-.RI ( d\/ evice\~ i\/ ndependent\~ troff\/ )
+(\c
+.IR d\/ evice\~ i\/ ndependent\~ troff\/\c
+)
on some systems, though this naming isn't mentioned in the classical
documentation.
.
@@ -169,7 +171,7 @@ multi-devicing.
.SH "AUTHORS"
.\" --------------------------------------------------------------------
.
-Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
.
.P
This document is distributed under the terms of the FDL (GNU Free
diff --git a/contrib/groff/man/groff.man b/contrib/groff/man/groff.man
index 8238717..2e0bfc7 100644
--- a/contrib/groff/man/groff.man
+++ b/contrib/groff/man/groff.man
@@ -2,11 +2,12 @@
.ig
groff.man
-Last update: 13 Feb 2003
+Last update: 17 Feb 2005
This file is part of groff, the GNU roff type-setting system.
-Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005
+ Free Software Foundation, Inc.
written by Bernd Warken <bwarken@mayn.de>
maintained by Werner Lemberg <wl@gnu.org>
@@ -24,6 +25,9 @@ FDL in the main directory of the groff source package.
.\" Setup
.\" --------------------------------------------------------------------
.
+.do nr groff_C \n[.C]
+.cp 0
+.
.mso www.tmac
.
.if n \{\
@@ -1012,6 +1016,17 @@ True if there is a register named
Formatter is
.BR troff .
.
+.TPx
+.BI F font
+True if there exists a font named
+.IR font .
+.
+.TPx
+.BI S style
+True if a style named
+.I style
+has been registered.
+.
.RE
.PD
.
@@ -1165,6 +1180,16 @@ until
.request .end
is called.
.
+.REQ .am1 macro
+Same as
+.request .am
+but with compatibility mode switched off during macro expansion.
+.
+.REQ .am1 macro end
+Same as
+.request .am
+but with compatibility mode switched off during macro expansion.
+.
.REQ .ami macro
Append to a macro whose name is contained in the string register
.I macro
@@ -1180,14 +1205,14 @@ and
are string registers whose contents are interpolated for the macro name
and the end macro, respectively.
.
-.REQ .am1 macro
+.REQ .ami1 macro
Same as
-.request .am
+.request .ami
but with compatibility mode switched off during macro expansion.
.
-.REQ .am1 macro end
+.REQ .ami1 macro end
Same as
-.request .am
+.request .ami
but with compatibility mode switched off during macro expansion.
.
.REQ .as stringvar anything
@@ -1196,15 +1221,15 @@ Append
to
.IR stringvar .
.
-.REQ .asciify diversion
-Unformat ASCII characters, spaces, and some escape sequences in
-.IR diversion .
-.
.REQ .as1 stringvar anything
Same as
.request .as
but with compatibility mode switched off during string expansion.
.
+.REQ .asciify diversion
+Unformat ASCII characters, spaces, and some escape sequences in
+.IR diversion .
+.
.REQ .backtrace
Print a backtrace of the input on stderr.
.
@@ -1429,6 +1454,16 @@ and
are string registers whose contents are interpolated for the macro name
and the end macro, respectively.
.
+.REQ .dei1 macro
+Same as
+.request .dei
+but with compatibility mode switched off during macro expansion.
+.
+.REQ .dei1 macro end
+Same as
+.request .dei
+but with compatibility mode switched off during macro expansion.
+.
.REQ .di
End current diversion.
.
@@ -1530,6 +1565,13 @@ Define fallback character
as string
.IR anything .
.
+.REQ .fcolor
+Set fill color to previous fill color.
+.
+.REQ .fcolor c
+Set fill color to
+.IR c .
+.
.REQ .fi
Fill output lines.
.
@@ -1592,6 +1634,13 @@ Translate
to
.IR font2 .
.
+.REQ .gcolor
+Set glyph color to previous glyph color.
+.
+.REQ .gcolor c
+Set glyph color to
+.IR c .
+.
.REQ .hc
Remove additional hyphenation indicator character.
.
@@ -1963,6 +2012,10 @@ Read insertion.
.REQ .return
Return from a macro.
.
+.REQ .return anything
+Return twice, namely from the macro at the current level and from the macro
+one level higher.
+.
.REQ .rfschar f c1 c2 .\|.\|.\&
Remove the definitions of characters
.IR c1 ,
@@ -3041,7 +3094,7 @@ The skew of a character is how far to the right of the center of a character
the center of an accent over that character should be placed.
.
.REG .d
-Current vertical place in current diversion; equal to register
+Current vertical place in current diversion; equal to
.register nl .
.
.REG .ev
@@ -3137,6 +3190,12 @@ The title length (as set by the
.request lt
request).
.
+.REG .m
+The current drawing color (string-valued).
+.
+.REG .M
+The current background color (string-valued).
+.
.REG .n
Length of text portion on previous output line.
.
@@ -3188,6 +3247,19 @@ The slant of the current font as set with
The last requested pointsize in points as a decimal fraction
(string-valued).
.
+.REG .ss
+The value of the parameters set by the first argument of the
+.request ss
+request.
+.
+.REG .sss
+The value of the parameters set by the second argument of the
+.request ss
+request.
+.
+.REG .sty
+The current font style (string-valued).
+.
.REG .t
Distance to the next trap.
.
@@ -3215,21 +3287,13 @@ the difference of what the vertical position would have been but for
the trap, and what the vertical position actually is.
.
Useful in conjunction with the
-.register .ne
-register.
-.
-.REG .ss
-The value of the parameters set by the first argument of the
-.request ss
-request.
-.
-.REG .sss
-The value of the parameters set by the second argument of the
-.request ss
-request.
+.register .ne .
.
.REG .u
-Equal to 1 bin fill mode and 0 in nofill mode.
+Equal to 1 in fill mode and 0 in nofill mode.
+.
+.REG .U
+Equal to 1 in safer mode and 0 in unsafe mode.
.
.REG .v
Current vertical line spacing.
@@ -3387,7 +3451,7 @@ The current year (year 2000 compliant).
.REG yr
Current year minus 1900.
.
-For Y2K compliance use register
+For Y2K compliance use
.register year
instead.
.
@@ -3424,7 +3488,8 @@ be reproduced, and say which version of groff you are using.
.SH AUTHORS
.\" --------------------------------------------------------------------
.
-Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005
+Free Software Foundation, Inc.
.
.P
This document is distributed under the terms of the FDL (GNU Free
@@ -3488,6 +3553,7 @@ pointers to further documentation.
"Nroff/\:Troff User's Manual by Osanna & Kernighan"
\[em] the bible for classical troff.
.
+.cp \n[groff_C]
.
.\" --------------------------------------------------------------------
.\" Emacs Setup
diff --git a/contrib/groff/man/groff_char.man b/contrib/groff/man/groff_char.man
index ed078e5..c386900 100644
--- a/contrib/groff/man/groff_char.man
+++ b/contrib/groff/man/groff_char.man
@@ -8,7 +8,7 @@ groff_char \- groff glyph names
.
.
.\" --------------------------------------------------------------------
-.\" Legalize
+.\" Legal terms
.\" --------------------------------------------------------------------
.
.ig
@@ -17,9 +17,9 @@ groff_char(7)
This file is part of groff (GNU roff).
File position: <groff_src_top>/man/groff_char.man
-Last update: 24 Feb 2003
+Last update: 05 Dec 2004
-Copyright (C) 1989-2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+Copyright (C) 1989-2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
written by Werner Lemberg <wl@gnu.org>
with additions by Bernd Warken <bwarken@mayn.de>
@@ -37,6 +37,9 @@ FDL in the main directory of the groff source package.
.\" Setup Part 1
.\" --------------------------------------------------------------------
.
+.do nr groff_char_C \n[.C]
+.cp 0
+.
.\" groff only
.if \n(.g .mso www.tmac
.\".if \n(.g .ne 2v
@@ -1127,7 +1130,7 @@ square root sign.
.2e OK a19 u2713 "check mark, tick"
.
.Pa
-.I Legalize
+.I Legal Symbols
.P
.2s co copyright u00A9 "+"
.C2 rg registered u00AE "+"
@@ -1235,6 +1238,7 @@ square root sign.
.CN integral integral u222B "***"
.CN sum summation u2211 "***"
.CN product product u220F "***"
+.CN coproduct uni2210 u2210 "***"
.C2 gr gradient u2207 "+"
.C2 sr radical u221A "square root +"
.CN sqrt radical u221A "***"
@@ -1353,7 +1357,8 @@ phi, and `\f(CW\e[+f]\fP' the curly variant.
.SH "AUTHOR"
.\" --------------------------------------------------------------------
.
-Copyright \(co 1989-2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+Copyright \(co 1989-2000, 2001, 2002, 2003,
+2004 Free Software Foundation, Inc.
.
.P
This document is distributed under the terms of the FDL (GNU Free
@@ -1407,6 +1412,8 @@ No. 2, Summer 1989
.ie \n(.g .URL http://\:www.unicode.org "The Unicode Standard"
.el The Unicode Standard <http://www.unicode.org>
.
+.cp \n[groff_char_C]
+.
.\" --------------------------------------------------------------------
.\" Emacs settings
.\" --------------------------------------------------------------------
diff --git a/contrib/groff/man/groff_diff.man b/contrib/groff/man/groff_diff.man
index eb00b44..94873dd 100644
--- a/contrib/groff/man/groff_diff.man
+++ b/contrib/groff/man/groff_diff.man
@@ -3,12 +3,12 @@
.ig
groff_diff.man
-Last update : 1 Mar 2003
+Last update : 26 Jul 2004
This file is part of groff, the GNU roff type-setting system.
It is the source of the man-page groff_diff(7).
-Copyright (C) 1989, 2001, 2002, 2003 Free Software Foundation, Inc.
+Copyright (C) 1989, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
written by James Clark
modified by Werner Lemberg <wl@gnu.org>
@@ -28,6 +28,9 @@ FDL in the main directory of the groff source package.
.\" Setup
.\" --------------------------------------------------------------------
.
+.do nr groff_diff_C \n[.C]
+.cp 0
+.
.mso www.tmac
.
.if n \{\
@@ -878,14 +881,6 @@ or string diversion is currently undefined or if it is defined to be a
request; normally they modify the value of an existing object.
.
.TP
-.BI .ami\ xx\ yy
-Append to macro indirectly.
-.
-See the
-.B dei
-request below for more information.
-.
-.TP
.BI .am1\ xx\ yy
Similar to
.BR .am ,
@@ -908,6 +903,41 @@ and
.BR .ds1 .
.
.TP
+.BI .ami\ xx\ yy
+Append to macro indirectly.
+.
+See the
+.B dei
+request below for more information.
+.
+.TP
+.BI .ami1\ xx\ yy
+Same as the
+.B ami
+request but compatibility mode is switched off during execution.
+.
+.TP
+.BI .as1\ xx\ yy
+Similar to
+.BR .as ,
+but compatibility mode is switched off during expansion.
+.
+To be more precise, a `compatibility save' token is inserted at the
+beginning of the string, and a `compatibility restore' token at the end.
+.
+As a consequence, the requests
+.BR as ,
+.BR as1 ,
+.BR ds ,
+and
+.B ds1
+can be intermixed freely since the compatibility save/\:restore tokens
+only affect the (sub)strings defined by
+.B as1
+and
+.BR ds1 .
+.
+.TP
.BI .asciify\ xx
This request `unformats' the diversion
.I xx
@@ -953,27 +983,6 @@ use
instead.
.
.TP
-.BI .as1\ xx\ yy
-Similar to
-.BR .as ,
-but compatibility mode is switched off during expansion.
-.
-To be more precise, a `compatibility save' token is inserted at the
-beginning of the string, and a `compatibility restore' token at the end.
-.
-As a consequence, the requests
-.BR as ,
-.BR as1 ,
-.BR ds ,
-and
-.B ds1
-can be intermixed freely since the compatibility save/\:restore tokens
-only affect the (sub)strings defined by
-.B as1
-and
-.BR ds1 .
-.
-.TP
.B .backtrace
Print a backtrace of the input stack on stderr.
.
@@ -1244,6 +1253,14 @@ and
is not the same.
.
.TP
+.BI .de1\ xx\ yy
+Similar to
+.BR .de ,
+but compatibility mode is switched off during execution.
+.
+On entry, the current compatibility mode is saved and restored at exit.
+.
+.TP
.BI .dei\ xx\ yy
Define macro indirectly.
.
@@ -1273,12 +1290,10 @@ is equivalent to
.RE
.
.TP
-.BI .de1\ xx\ yy
-Similar to
-.BR .de ,
-but compatibility mode is switched off during execution.
-.
-On entry, the current compatibility mode is saved and restored at exit.
+.BI .dei1\ xx\ yy
+Similar to the
+.B dei
+request but compatibility mode is switched off during execution.
.
.TP
.BI .do\ xxx
@@ -1379,6 +1394,15 @@ is checked only if the particular glyph isn't found in the current font.
This test happens before checking special fonts.
.
.TP
+.BI .fcolor\ c
+Set the fill color to
+.IR c .
+If
+.I c
+is missing,
+switch to the previous fill color.
+.
+.TP
.BI .fschar\ f\ c\ string
Define fallback glyph
.I c
@@ -1425,7 +1449,11 @@ Whenever a font named
.I f
is referred to in an
.B \[rs]f
-escape sequence, or in the
+escape sequence, in the
+.B F
+and
+.B S
+conditional operators, or in the
.BR ft ,
.BR ul ,
.BR bd ,
@@ -1448,6 +1476,15 @@ then font
will not be translated.
.
.TP
+.BI .gcolor\ c
+Set the glyph color to
+.IR c .
+If
+.I c
+is missing,
+switch to the previous glyph color.
+.
+.TP
.BI .hcode \ c1\ code1\ c2\ code2\|.\|.\|.\&
Set the hyphenation code of character
.I c1
@@ -1890,6 +1927,9 @@ request.
.B .return
Within a macro, return immediately.
.
+If called with an argument, return twice, namely from the current macro and
+from the macro one level higher.
+.
No effect otherwise.
.
.TP
@@ -2449,6 +2489,24 @@ there is a current diversion; this behaviour is so anomalous that it
must be considered a bug.
.
.TP
+.BI .de\ xx\ yy
+.TQ
+.BI .am\ xx\ yy
+.TQ
+.BI .ds\ xx\ yy
+.TQ
+.BI .as\ xx\ yy
+In compatibility mode, these requests behaves similar to
+.BR .de1 ,
+.BR .am1 ,
+.BR .ds1 ,
+and
+.BR .as1 ,
+respectively: A `compatibility save' token is inserted at the
+beginning, and a `compatibility restore' token at the end, with
+compatibility mode switched on during execution.
+.
+.TP
.BI .ev\ xx
If
.I xx
@@ -2675,6 +2733,18 @@ The title length as set by the
request.
.
.TP
+.B \[rs]n[.m]
+The name of the current drawing color.
+.
+This is a string-valued register.
+.
+.TP
+.B \[rs]n[.M]
+The name of the current background color.
+.
+This is a string-valued register.
+.
+.TP
.B \[rs]n[.ne]
The amount of space that was needed in the last
.B ne
@@ -2741,6 +2811,12 @@ arguments of the
request.
.
.TP
+.B \[rs]n[.sty]
+The current font style.
+.
+This is a string-valued register.
+.
+.TP
.B \[rs]n[.tabs]
A string representation of the current tab settings suitable for use
as an argument to the
@@ -2765,6 +2841,12 @@ Useful in conjunction with the
register.
.
.TP
+.B \[rs]n[.U]
+Set to 1 if in safer mode and to 0 if in unsafe mode (as given with the
+.B \-U
+command line option).
+.
+.TP
.B \[rs]n[.vpt]
1\~if vertical position traps are enabled, 0\~otherwise.
.
@@ -2902,7 +2984,7 @@ is the current year minus 1900.
predefines a single (read/write) string-based register,
.BR \[rs]*(.T ,
which contains the argument given to the
-.B -T
+.B \-T
command line option, namely the current output device (for example,
.I latin1
or
@@ -2912,7 +2994,7 @@ Note that this is not the same as the (read-only) number register
which is defined to be\~1 if
.B troff
is called with the
-.B -T
+.B \-T
command line option, and zero otherwise.
.
This behaviour is different to UNIX troff.
@@ -3037,6 +3119,26 @@ has been defined by the
.B char
request.
.
+.TP
+.BI .if\ F f
+True if font
+.I f
+exists.
+.
+.B f
+is handled as if it was opened with the
+.B ft
+request (this is, font translation and styles are applied), without
+actually mounting it.
+.
+.TP
+.BI .if\ S s
+True if style
+.I s
+has been registered.
+.
+Font translation is applied.
+.
.P
The
.B tr
@@ -3053,16 +3155,11 @@ Example:
.ne 6v+\n(.Vu
.ft CB
.nf
-.Text .de foo
-.Text . nop Hello, I'm `foo'.
-.Text . nop I will now define `bar'.
+.Text .if t \[rs]{\[rs]
.Text . de bar
.Text . nop Hello, I'm `bar'.
.Text . .
-.Text . nop Done.
-.Text ..
-.Text .foo
-.Text .bar
+.Text .\[rs]}
.fi
.
.
@@ -3425,7 +3522,7 @@ for groff.
provides a
.B compatibility mode
that allows to process roff code written for classical
-.troff
+.B troff
or for other implementations of roff in a consistent way.
.
.P
@@ -3539,8 +3636,8 @@ pointsize will be set to 10\~scaled points.
.
.P
In
-.I groff
-mode, there is a fundamental difference between unformatted input
+.IR groff ,
+there is a fundamental difference between unformatted input
characters, and formatted output characters (glyphs).
.
Everything that affects how a glyph will be output is
@@ -3590,8 +3687,8 @@ The following example will make things clearer.
.RE
.
.P
-In
-.I GNU mode
+With
+.I GNU troff
this will be printed as
.esc \[rs] .
So each pair of input backslashes
@@ -3662,7 +3759,7 @@ classical "device-independent" troff did.
.SH AUTHORS
.\" --------------------------------------------------------------------
.
-Copyright (C) 1989, 2001, 2002, 2003 Free Software Foundation, Inc.
+Copyright (C) 1989, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
.
.P
This document is distributed under the terms of the FDL (GNU Free
@@ -3740,6 +3837,7 @@ of 1992, being the
.URL http://\:cm.bell-labs.com/\:cm/\:cs/\:cstr/\:54.ps.gz \
"classical troff documentation" .
.
+.cp \n[groff_diff_C]
.
.\" --------------------------------------------------------------------
.\" Emacs variables
diff --git a/contrib/groff/man/groff_font.man b/contrib/groff/man/groff_font.man
index 462baeb..b806aac 100644
--- a/contrib/groff/man/groff_font.man
+++ b/contrib/groff/man/groff_font.man
@@ -1,5 +1,5 @@
.ig
-Copyright (C) 1989-1995, 2001, 2002, 2003 Free Software Foundation, Inc.
+Copyright (C) 1989-1995, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
@@ -17,17 +17,20 @@ translations approved by the Free Software Foundation instead of in
the original English.
..
.
+.do nr groff_font_C \n[.C]
+.cp 0
+.
.de TQ
-.br
-.ns
-.TP \\$1
+. br
+. ns
+. TP \\$1
..
.
.\" Like TP, but if specified indent is more than half
.\" the current line-length - indent, use the default indent.
.de Tp
-.ie \\n(.$=0:((0\\$1)*2u>(\\n(.lu-\\n(.iu)) .TP
-.el .TP "\\$1"
+. ie \\n(.$=0:((0\\$1)*2u>(\\n(.lu-\\n(.iu)) .TP
+. el .TP "\\$1"
..
.
.
@@ -45,7 +48,8 @@ font format.
The font files for device
.I name
are stored in a directory
-.BI dev name.
+.BI dev name\c
+\&.
.
There are two types of file: a
device description file called
@@ -100,7 +104,18 @@ The horizontal resolution is
machine units.
.
.TP
-.BI paperheight\ n
+.BI image_generator\ string
+Needed for
+.B grohtml
+only.
+It specifies the program to generate PNG images from
+PostScript input.
+Under GNU/Linux this is usually
+.I gs
+but under other systems (notably cygwin) it might be set to another name.
+.
+.TP
+.BI paperlength\ n
The physical vertical dimension of the output medium in machine units.
.
This isn't used by
@@ -273,6 +288,13 @@ for fonts whose point size is
scaled points.
.
.TP
+.B unscaled_charwidths
+Make the font handling module always return unscaled character widths.
+Needed for the
+.B grohtml
+device.
+.
+.TP
.B use_charnames_in_special
This command indicates that troff should encode named characters inside
special commands.
@@ -519,9 +541,13 @@ field has the form (in one line; it is broken here for the sake of
readability):
.
.IP
-.IR width [\fB, height [\fB, depth [\fB, italic-correction
+.I width\c
+.RI [\fB, height\c
+.RI [\fB, depth\c
+.RI [\fB, italic-correction
.br
-.RI [\fB, left-italic-correction [\fB, subscript-correction ]]]]]
+.RI [\fB, left-italic-correction\c
+.RI [\fB, subscript-correction ]]]]]
.
.LP
There must not be any spaces between these subfields.
@@ -627,6 +653,8 @@ of device
.BR groff_out (@MAN5EXT@),
.BR @g@troff (@MAN1EXT@).
.
+.cp \n[groff_font_C]
+.
.\" Local Variables:
.\" mode: nroff
.\" End:
diff --git a/contrib/groff/man/groff_out.man b/contrib/groff/man/groff_out.man
index b45e82f..4469985 100644
--- a/contrib/groff/man/groff_out.man
+++ b/contrib/groff/man/groff_out.man
@@ -3,11 +3,12 @@
.ig
groff_out.5
-Last update: 13 Apr 2003
+Last update: 2 Jul 2005
This file is part of groff, the GNU roff type-setting system.
-Copyright (C) 1989, 2001, 2002, 2003 Free Software Foundation, Inc.
+Copyright (C) 1989, 2001, 2002, 2003, 2004, 2005
+Free Software Foundation, Inc.
rewritten from scrach 2001 by Bernd Warken <bwarken@mayn.de>
Permission is granted to copy, distribute and/or modify this document
@@ -24,6 +25,9 @@ FDL in the main directory of the groff source package.
.\" Setup
.\" --------------------------------------------------------------------
.
+.do nr groff_out_C \n[.C]
+.cp 0
+.
.mso www.tmac
.
.if n \{\
@@ -252,18 +256,29 @@ groff_out \- groff intermediate output format
.SH DESCRIPTION
.\" --------------------------------------------------------------------
.
-This manual page describes the intermediate output format of the GNU
+This manual page describes the
+.I intermediate output
+format of the GNU
.BR roff (@MAN7EXT@)
-text processing system.
+text processing system
+.BR groff (@MAN1EXT@).
.
This output is produced by a run of the GNU
-.BR troff (@MAN1EXT@)
-program before it is fed into a device postprocessor program.
+.BR @g@troff (@MAN1EXT@)
+program.
+.
+It contains already all device-specific information, but it is not yet
+fed into a device postprocessor program.
+.
.
.P
-As the GNU roff processor
+As the GNU
+.I roff
+processor
.BR groff (@MAN1EXT@)
-is a wrapper program around troff that automatically calls a
+is a wrapper program around
+.B @g@troff
+that automatically calls a
postprocessor, this output does not show up normally.
.
This is why it is called
@@ -276,15 +291,19 @@ The
.B groff
program provides the option
.B -Z
-to inhibit postprocessing, such that the produced intermediate output
+to inhibit postprocessing, such that the produced
+.I intermediate output
is sent to standard output just like calling
-.B troff
+.B @g@troff
manually.
.
+.
.P
In this document, the term
-.I troff output
-describes what is output by the GNU troff program, while
+.I @g@troff output
+describes what is output by the GNU
+.B @g@troff
+program, while
.I intermediate output
refers to the language that is accepted by the parser that prepares
this output for the postprocessors.
@@ -292,14 +311,15 @@ this output for the postprocessors.
This parser is smarter on whitespace and implements obsolete elements
for compatibility, otherwise both formats are the same.
.
-The pre-groff roff versions are denoted as
-.I classical
-.IR troff .
+Both formats can be viewed directly with
+.BR \%gxditview (@MAN1EXT@).
+.
.
.P
-The main purpose of the intermediate output concept is to facilitate
-the development of postprocessors by providing a common programming
-interface for all devices.
+The main purpose of the
+.I intermediate output
+concept is to facilitate the development of postprocessors by
+providing a common programming interface for all devices.
.
It has a language of its own that is completely different from the
.BR groff (@MAN7EXT@)
@@ -308,18 +328,28 @@ language.
While the
.I groff
language is a high-level programming language for text processing, the
-intermediate output language is a kind of low-level assembler language
-by specifying all positions on the page for writing and drawing.
+.I intermediate output
+language is a kind of low-level assembler language by specifying all
+positions on the page for writing and drawing.
+.
.
.P
-The intermediate output produced by
-.I groff
+The
+.RI pre- groff
+.I roff
+versions are denoted as
+.I classical
+.IR troff .
+The
+.I intermediate output
+produced by
+.B groff
is fairly readable, while
.I classical troff
output was hard to understand because of strange habits that are
still supported, but not used any longer by
.I GNU
-.IR troff .
+.IR @g@troff .
.
.
.\" --------------------------------------------------------------------
@@ -327,17 +357,23 @@ still supported, but not used any longer by
.\" --------------------------------------------------------------------
.
During the run of
-.BR troff ,
-the roff input is cracked down to the information on what has to be
-printed at what position on the intended device.
+.BR @g@troff ,
+the
+.I roff
+input is cracked down to the information on what has to be printed at
+what position on the intended device.
.
-So the language of the intermediate output format can be quite small.
+So the language of the
+.I intermediate output
+format can be quite small.
.
Its only elements are commands with or without arguments.
.
-In this document, the term "command" always refers to the intermediate
-output language, never to the roff language used for document
-formatting.
+In this document, the term "command" always refers to the
+.I intermediate output
+language, never to the
+.I roff
+language used for document formatting.
.
There are commands for positioning and text writing, for drawing, and
for device controlling.
@@ -351,11 +387,11 @@ for device controlling.
had strange requirements on whitespace.
.
The
-.I groff
+.B groff
output parser, however, is smart about whitespace by making it
maximally optional.
.
-The whitespace characters, i.e.\& the
+The whitespace characters, i.e., the
.IR tab ,
.IR space ,
and
@@ -365,14 +401,15 @@ characters, always have a syntactical meaning.
They are never printable because spacing within the output is always
done by positioning commands.
.
+.
.P
Any sequence of
.I space
or
.I tab
characters is treated as a single
-.B syntactical
-.BR space .
+.I syntactical
+.IR space .
.
It separates commands and arguments, but is only required when there
would occur a clashing between the command code and the arguments
@@ -382,7 +419,10 @@ Most often, this happens when variable length command names,
arguments, argument lists, or command clusters meet.
.
Commands and arguments with a known, fixed length need not be
-separated by syntactical space.
+separated by
+.I syntactical
+.IR space .
+.
.
.P
A line break is a syntactical element, too.
@@ -391,18 +431,22 @@ Every command argument can be followed by whitespace, a comment, or a
newline character.
.
Thus a
-.B syntactical line break
-is defined to consist of optional syntactical space that is optionally
-followed by a comment, and a newline character.
+.I syntactical line break
+is defined to consist of optional
+.I syntactical space
+that is optionally followed by a comment, and a newline character.
+.
.
.P
The normal commands, those for positioning and text, consist of a
single letter taking a fixed number of arguments.
.
For historical reasons, the parser allows to stack such commands on
-the same line, but fortunately, in groff intermediate output, every
-command with at least one argument is followed by a line break, thus
-providing excellent readability.
+the same line, but fortunately, in
+.I groff intermediate
+.IR output ,
+every command with at least one argument is followed by a line break,
+thus providing excellent readability.
.
.P
The other commands \[em] those for drawing and device controlling \[em]
@@ -421,10 +465,10 @@ Only one command,
.RB ` x\ X '
has an argument that can stretch over several lines, all other
commands must have all of their arguments on the same line as the
-command, i.e.\& the arguments may not be splitted by a line break.
+command, i.e., the arguments may not be splitted by a line break.
.
.P
-Empty lines, i.e.\& lines containing only space and/or a comment, can
+Empty lines, i.e., lines containing only space and/or a comment, can
occur everywhere.
.
They are just ignored.
@@ -439,7 +483,9 @@ values in a measurement unit, but the letter for the corresponding
.I scale indicator
is not written with the output command arguments; see
.BR groff (@MAN7EXT@)
-and the groff info file for more on this topic.
+and the
+.I groff info file
+for more on this topic.
.
Most commands assume the scale indicator\~\c
.unit u ,
@@ -457,6 +503,7 @@ They are defined by the parameters specified in the device's
file; see
.BR groff_font (@MAN5EXT@).
.
+.
.P
Note that single characters can have the eighth bit set, as can the
names of fonts and special characters.
@@ -465,6 +512,7 @@ The names of characters and fonts can be of arbitrary length.
.
A character that is to be printed will always be in the current font.
.
+.
.P
A string argument is always terminated by the next whitespace
character (space, tab, or newline); an embedded
@@ -480,8 +528,12 @@ argument or command.
.\" --------------------------------------------------------------------
.SS "Document Parts"
.\" --------------------------------------------------------------------
-A correct intermediate output document consists of two parts, the
-prologue and the body.
+A correct
+.I intermediate output
+document consists of two parts, the
+.I prologue
+and the
+.IR body .
.
.P
The task of the
@@ -506,8 +558,10 @@ is guaranteed to consist of the following three lines (in that order):
with the arguments set as outlined in the section
.BR "Device Control Commands" .
.
-But the parser for the intermediate output format is able to swallow
-additional whitespace and comments as well.
+But the parser for the
+.I intermediate output
+format is able to swallow additional whitespace and comments as well.
+.
.
.P
The
@@ -515,15 +569,20 @@ The
is the main section for processing the document data.
.
Syntactically, it is a sequence of any commands different from the
-ones used in the prologue.
+ones used in the
+.IR prologue .
.
Processing is terminated as soon as the first
.B x\ stop
-command is encountered; the last line of any groff intermediate output
+command is encountered; the last line of any
+.I groff intermediate output
always contains such a command.
.
+.
.P
-Semantically, the body is page oriented.
+Semantically, the
+.I body
+is page oriented.
.
A new page is started by a
.BR p \~command.
@@ -544,8 +603,9 @@ is done relative to the current location within this page.
.SH "COMMAND REFERENCE"
.\" --------------------------------------------------------------------
.
-This section describes all intermediate output commands, the classical
-commands as well as the
+This section describes all
+.I intermediate output
+commands, the classical commands as well as the
.I groff
extensions.
.
@@ -563,8 +623,9 @@ Ignore any characters from the
character up to the next newline character.
.
.P
-This command is the only possibility for commenting in the intermediate
-output.
+This command is the only possibility for commenting in the
+.I intermediate
+.IR output .
.
Each comment can be preceded by arbitrary
.I syntactical
@@ -592,9 +653,10 @@ All of these commands are stackable, i.e., they can be preceded by
other simple commands or followed by arbitrary other commands on the
same line.
.
-A separating syntactical space is only necessary when two integer
-arguments would clash or if the preceding argument ends with a string
-argument.
+A separating
+.I syntactical space
+is only necessary when two integer arguments would clash or if the
+preceding argument ends with a string argument.
.
.
.if (\n[@USE_ENV_STACK] == 1) \{\
@@ -619,11 +681,14 @@ stack as the actual device configuration data.
Print a special groff character named
.argument xxx .
.
-The trailing syntactical space or line break is necessary to allow
-character names of arbitrary length.
+The trailing
+.I syntactical space
+or
+.I line break
+is necessary to allow character names of arbitrary length.
.
-The character is printed at the current print position;
-the character's size is read from the font file.
+The character is printed at the current print position; the
+character's size is read from the font file.
.
The print position is not changed.
.
@@ -658,7 +723,7 @@ Move
.unit u
horizontally to the right.
.
-.I [54]
+.I [CSTR\~#54]
allows negative values for
.I n
also, but
@@ -678,12 +743,16 @@ The color components are specified as integer arguments between 0 and
The number of color components and their meaning vary for the
different color schemes.
.
-These commands are generated by the groff escape sequence
+These commands are generated by the
+.I groff
+escape sequence
.BR \*[@backslash]m .
.
No position changing.
.
-These commands are a groff extension.
+These commands are a
+.I groff
+extension.
.
.
.RS
@@ -732,23 +801,31 @@ For example,
.B N\~-193
represents an unbreakable space which has a width of 193u.
.
-This command is a groff extension.
+This command is a
+.I groff
+extension.
.
.
.command n b\ a
Inform the device about a line break, but no positioning is done by
this command.
.
-In classical troff, the integer arguments
+In
+.I classical
+.IR troff ,
+the integer arguments
.argument b
and\~\c
.argument a
informed about the space before and after the current line to
-make the intermediate output more human readable without performing
-any action.
+make the
+.I intermediate output
+more human readable without performing any action.
.
-In groff, they are just ignored, but they must be provided for
-compatibility reasons.
+In
+.IR groff ,
+they are just ignored, but they must be provided for compatibility
+reasons.
.
.
.command p n
@@ -775,9 +852,10 @@ scaled points
(this is unit\~\c
.unit z
in GNU
-.BR troff ).
+.BR @g@troff ).
.
-Classical troff used the unit
+.I Classical troff
+used the unit
.I points
(\c
.unit p )
@@ -787,7 +865,7 @@ instead; see section
.
.command t xxx \[la]white_space\[ra]
.command+ t "xxx dummy_arg" \[la]white_space\[ra]
-Print a word, i.e.\& a sequence of characters
+Print a word, i.e., a sequence of characters
.argument xxx
terminated by a space character or a line break; an optional second
integer argument is ignored (this allows the formatter to generate
@@ -805,7 +883,9 @@ Special characters cannot be printed using this command (use the
.B C
command for named characters).
.
-This command is a groff extension; it is only used for devices whose
+This command is a
+.I groff
+extension; it is only used for devices whose
.I DESC
file contains the
.B tcommand
@@ -825,7 +905,9 @@ character and\~\c
(an integer in
basic units\~\c
.unit u ).
-This command is a groff extension; it is only used for devices whose
+This command is a
+.I groff
+extension; it is only used for devices whose
.I DESC
file contains the
.B tcommand
@@ -850,7 +932,7 @@ down
.RI ( n
is a non-negative integer).
.
-.I [54]
+.I [CSTR\~#54]
allows negative values for
.I n
also, but
@@ -868,22 +950,28 @@ The spacing itself must be performed explicitly by a move command.
.SS "Graphics Commands"
.\" --------------------------------------------------------------------
.
-Each graphics or drawing command in the intermediate output starts
-with the letter\~\c
+Each graphics or drawing command in the
+.I intermediate output
+starts with the letter\~\c
.B D
followed by one or two characters that specify a subcommand; this
is followed by a fixed or variable number of integer arguments that
are separated by a single space character.
.
A
-.BR D \ command
-may not be followed by another command on the same line
-(apart from a comment), so each
-.BR D \ command
-is terminated by a syntactical line break.
+.B D\c
+\~command
+may not be followed by another command on the same line (apart from a
+comment), so each
+.B D\c
+\~command
+is terminated by a
+.I syntactical line
+.IR break .
+.
.
.P
-.I troff
+.B @g@troff
output follows the classical spacing rules (no space between command
and subcommand, all arguments are preceded by a single space
character), but the parser allows optional space between the command
@@ -891,6 +979,7 @@ letters and makes the space before the first argument optional.
.
As usual, each space can be any sequence of tab and space characters.
.
+.
.P
Some graphics commands can take a variable number of arguments.
.
@@ -909,6 +998,7 @@ stand for vertical distances where positive means down, negative up.
.
All these distances are offsets relative to the current location.
.
+.
.P
Unless indicated otherwise, each graphics command directly corresponds
to a similar
@@ -917,12 +1007,16 @@ to a similar
escape sequence; see
.BR groff (@MAN7EXT@).
.
+.
.P
-Unknown D\~commands are assumed to be device-specific.
+Unknown
+.B D\c
+\~commands are assumed to be device-specific.
.
Its arguments are parsed as strings; the whole information is then
sent to the postprocessor.
.
+.
.P
In the following command reference, the syntax element
.I \[la]line_break\[ra]
@@ -939,8 +1033,8 @@ then to offset
.indexed_offset h 2 v 2
if given, etc.\& up to
.indexed_offset h n v n .
-This command takes a variable number of argument pairs;
-the current position is moved to the terminal point of the drawn curve.
+This command takes a variable number of argument pairs; the current
+position is moved to the terminal point of the drawn curve.
.
.
.Da-command
@@ -964,7 +1058,9 @@ position to the rightmost point of the circle.
An optional second integer argument is ignored (this allows to the
formatter to generate an even number of arguments).
.
-This command is a groff extension.
+This command is a
+.I groff
+extension.
.
.
.D-command c d
@@ -987,7 +1083,9 @@ and a vertical diameter of\~\c
with the leftmost point at the current position; then move to the
rightmost point of the ellipse.
.
-This command is a groff extension.
+This command is a
+.I groff
+extension.
.
.
.D-command e "h v"
@@ -1013,7 +1111,9 @@ The color components are specified as integer arguments between 0 and
The number of color components and their meaning vary for the
different color schemes.
.
-These commands are generated by the groff escape sequences
+These commands are generated by the
+.I groff
+escape sequences
.B \*[@backslash]D'F\ .\|.\|.'
and
.B \*[@backslash]M
@@ -1021,7 +1121,9 @@ and
.
No position changing.
.
-This command is a groff extension.
+This command is a
+.I groff
+extension.
.
.
.RS
@@ -1088,10 +1190,13 @@ Df -1
sets all colors to blue.
.RE
.
+.
.P
No position changing.
.
-This command is a groff extension.
+This command is a
+.I groff
+extension.
.
.RE
.
@@ -1126,7 +1231,9 @@ As the polygon is closed, the end of drawing is the starting point, so
the position doesn't change.
\}
.
-This command is a groff extension.
+This command is a
+.I groff
+extension.
.
.
.D-multiarg P
@@ -1142,7 +1249,9 @@ The position is changed in the same way as with
.el \
No position changing.
.
-This command is a groff extension.
+This command is a
+.I groff
+extension.
.
.
.D-command t n
@@ -1172,7 +1281,9 @@ Although this doesn't make sense it is kept for compatibility.
.el \
No position changing.
.
-This command is a groff extension.
+This command is a
+.I groff
+extension.
.
.
.\" --------------------------------------------------------------------
@@ -1182,8 +1293,11 @@ This command is a groff extension.
Each device control command starts with the letter
.B x
followed by a space character (optional or arbitrary space/\:tab in
-groff) and a subcommand letter or word; each argument (if any) must be
-preceded by a syntactical space.
+.IR groff )
+and a subcommand letter or word; each argument (if any) must be
+preceded by a
+.I syntactical
+.IR space .
.
All
.B x
@@ -1194,13 +1308,13 @@ line (except a comment).
.
.P
The subcommand is basically a single letter, but to increase
-readability, it can be written as a word, i.e.\& an arbitrary sequence
+readability, it can be written as a word, i.e., an arbitrary sequence
of characters terminated by the next tab, space, or newline character.
.
All characters of the subcommand word but the first are simply ignored.
.
For example,
-.I troff
+.B @g@troff
outputs the initialization command
.B x\ i
as
@@ -1230,12 +1344,15 @@ Use
.argument name
as the intended name for the current file in error reports.
.
-This is useful for remembering the original file name when groff uses
-an internal piping mechanism.
+This is useful for remembering the original file name when
+.B groff
+uses an internal piping mechanism.
.
The input file is not changed by this command.
.
-This command is a groff extension.
+This command is a
+.I groff
+extension.
.
.
.x-command f "n\ s"
@@ -1256,8 +1373,8 @@ Set character height to\~\c
(a positive integer in scaled points\~\c
.unit z ).
.
-Classical troff used the unit
-points (\c
+.I Classical troff
+used the unit points (\c
.unit p )
instead; see section
.BR COMPATIBILITY .
@@ -1267,7 +1384,8 @@ instead; see section
.xsub init
Initialize device.
.
-This is the third command of the prologue.
+This is the third command of the
+.IR prologue .
.
.
.x-command p
@@ -1292,7 +1410,8 @@ are positive integers in basic units\~\c
.unit u
per inch.
.
-This is the second command of the prologue.
+This is the second command of the
+.IR prologue .
.
.
.x-command S n
@@ -1306,7 +1425,9 @@ degrees (an integer in basic units\~\c
.x-command s
.xsub stop
Terminates the processing of the current file; issued as the last
-command of any intermediate troff output.
+command of any
+.I intermediate @g@troff
+.IR output .
.
.
.x-command t
@@ -1314,7 +1435,7 @@ command of any intermediate troff output.
Generate trailer information, if any.
.
In
-.IR groff ,
+.BR groff ,
this is actually just ignored.
.
.
@@ -1328,7 +1449,8 @@ The possible device names coincide with those from the groff
.B -T
option.
.
-This is the first command of the prologue.
+This is the first command of the
+.IR prologue .
.
.
.x-command u n
@@ -1345,10 +1467,12 @@ is\~0, stop underlining of spaces.
This is needed for the
.B cu
request in
-.I nroff
+.B @g@nroff
mode and is ignored otherwise.
.
-This command is a groff extension.
+This command is a
+.I groff
+extension.
.
.
.x-command X anything
@@ -1377,7 +1501,9 @@ This command is generated by the
escape sequence
.BR \*[@backslash]X .
.
-The line-continuing feature is a groff extension.
+The line-continuing feature is a
+.I groff
+extension.
.
.
.\" --------------------------------------------------------------------
@@ -1402,10 +1528,14 @@ Move right
then print character\~\c
.argument c .
.
+.
.RS
.P
-In groff, arbitrary syntactical space around and within this command
-is allowed to be added.
+In
+.IR groff ,
+arbitrary
+.I syntactical space
+around and within this command is allowed to be added.
.
Only when a preceding command on the same line ends with an argument
of variable length a separating space is obligatory.
@@ -1418,12 +1548,15 @@ spaces; this made such output almost unreadable.
.
.RE
.
+.
.P
For modern high-resolution devices, this command does not make sense
because the width of the characters can become much larger than two
decimal digits.
.
-In groff, this is only used for the devices
+In
+.BR groff ,
+this is only used for the devices
.BR X75 ,
.BR X75-12 ,
.BR X100 ,
@@ -1445,7 +1578,8 @@ provide a better functionality.
The
.I roff
postprocessors are programs that have the task to translate the
-intermediate output into actions that are sent to a device.
+.I intermediate output
+into actions that are sent to a device.
.
A device can be some piece of hardware such as a printer, or a software
file format suitable for graphical or text processing.
@@ -1455,9 +1589,10 @@ The
system provides powerful means that make the programming of such
postprocessors an easy task.
.P
-There is a library function that parses the intermediate output and
-sends the information obtained to the device via methods of a class
-with a common interface for each device.
+There is a library function that parses the
+.I intermediate output
+and sends the information obtained to the device via methods of a
+class with a common interface for each device.
.
So a
.I groff
@@ -1471,22 +1606,27 @@ For details, see the reference in section
.SH "EXAMPLES"
.\" --------------------------------------------------------------------
.
-This section presents the intermediate output generated from the same
-input for three different devices.
+This section presents the
+.I intermediate output
+generated from the same input for three different devices.
.
The input is the sentence
.I hell world
-fed into groff on the command line.
+fed into
+.B groff
+on the command line.
+.
.
.Topic
High-resolution device
.I ps
.
-.RS
.
+.RS
.P
.ShellCommand echo "hell world" | groff -Z -T ps
.
+.
.P
.nf
.ft CB
@@ -1512,6 +1652,7 @@ x stop
.fi
.RE
.
+.
.P
This output can be fed into the postprocessor
.BR grops (@MAN1EXT@)
@@ -1522,8 +1663,8 @@ to get its representation as a PostScript file.
Low-resolution device
.I latin1
.
-.RS
.
+.RS
.P
This is similar to the high-resolution device except that the
positioning is done at a minor scale.
@@ -1533,41 +1674,43 @@ Some comments (lines starting with
were added for clarification; they were not generated by the
formatter.
.
+.
.P
.ShellCommand echo "hell world" | groff -Z -T latin1
.
+.
.P
.nf
-.I # prologue
+.I "# prologue"
.ft CB
x T latin1
x res 240 24 40
x init
-.I # begin a new page
+.I "# begin a new page"
.ft CB
p1
-.I # font setup
+.I "# font setup"
.ft CB
x font 1 R
f1
s10
-.I # initial positioning on the page
+.I "# initial positioning on the page"
.ft CB
V40
H0
-.I # write text `hell'
+.I "# write text `hell'"
.ft CB
thell
-.I # inform about a space, and do it by a horizontal jump
+.I "# inform about a space, and do it by a horizontal jump"
.ft CB
wh24
-.I # write text `world'
+.I "# write text `world'"
.ft CB
tworld
-.I # announce line break, but do nothing because ...
+.I "# announce line break, but do nothing because ..."
.ft CB
n40 0
-.I # ... the end of the document has been reached
+.I "# ... the end of the document has been reached"
.ft CB
x trailer
V2640
@@ -1576,6 +1719,7 @@ x stop
.fi
.RE
.
+.
.P
This output can be fed into the postprocessor
.BR grotty (@MAN1EXT@)
@@ -1585,16 +1729,20 @@ to get a formatted text document.
.Topic
Classical style output
.
-.RS
.
+.RS
.P
As a computer monitor has a very low resolution compared to modern
-printers the intermediate output for the X\~devices can use the
-jump-and-write command with its 2-digit displacements.
+printers the
+.I intermediate output
+for the X\~devices can use the jump-and-write command with its 2-digit
+displacements.
+.
.
.P
.ShellCommand echo "hell world" | groff -Z -T X100
.
+.
.P
.nf
.ft CB
@@ -1607,7 +1755,7 @@ f5
s10
V16
H100
-.I # write text with old-style jump-and-write command
+.I "# write text with old-style jump-and-write command"
.ft CB
ch07e07l03lw06w11o07r05l03dh7
n16 0
@@ -1618,13 +1766,15 @@ x stop
.fi
.RE
.
+.
.P
This output can be fed into the postprocessor
-.BR xditview (1x)
+.BR \%xditview (1x)
or
-.BR gxditview (@MAN1EXT@)
+.BR \%gxditview (@MAN1EXT@)
for displaying in\~X.
.
+.
.P
Due to the obsolete jump-and-write command, the text clusters in the
classical output are almost unreadable.
@@ -1634,41 +1784,55 @@ classical output are almost unreadable.
.SH "COMPATIBILITY"
.\" --------------------------------------------------------------------
.
-The intermediate output language of the
+The
+.I intermediate output
+language of the
.I classical troff
was first documented in
-.IR [97] .
+.IR [CSTR\~#97] .
.
The
-.I groff
-intermediate output format is compatible with this specification
-except for the following features.
+.I groff intermediate output
+format is compatible with this specification except for the following
+features.
+.
+.
.Topic
The classical quasi device independence is not yet implemented.
.
+.
.Topic
The old hardware was very different from what we use today.
.
-So the groff devices are also fundamentally different from the ones in
-classical troff.
+So the
+.I groff
+devices are also fundamentally different from the ones in
+.I classical
+.IR troff .
.
For example, the classical PostScript device was called
.I post
and had a resolution of 720 units per inch,
-while groff's
+while
+.IR groff 's
.I ps
device has a resolution of 72000 units per inch.
.
Maybe, by implementing some rescaling mechanism similar to the
classical quasi device independence, these could be integrated into
-modern groff.
+modern
+.IR groff .
+.
.
.Topic
The B-spline command
.B D~
-is correctly handled by the intermediate output parser, but the
-drawing routines aren't implemented in some of the postprocessor
-programs.
+is correctly handled by the
+.I intermediate output
+parser, but the drawing routines aren't implemented in some of the
+postprocessor programs.
+.
+.
.Topic
The argument of the commands
.B s
@@ -1676,20 +1840,28 @@ and
.B x H
has the implicit unit scaled point\~\c
.unit z
-in groff, while classical troff had point (\c
+in
+.IR groff ,
+while
+.I classical troff
+had point (\c
.unit p ).
.
-This isn't an incompatibility, but a compatible extension,
-for both units coincide for all devices without a
+This isn't an incompatibility, but a compatible extension, for both
+units coincide for all devices without a
.I sizescale
-parameter, including all classical and the groff text devices.
+parameter, including all classical and the
+.I groff
+text devices.
.
-The few groff devices with a sizescale parameter either did
-not exist, had a different name, or seem to have had a different
-resolution.
+The few
+.I groff
+devices with a sizescale parameter either did not exist, had a
+different name, or seem to have had a different resolution.
.
So conflicts with classical devices are very unlikely.
.
+.
.ie (\n[@STUPID_DRAWING_POSITIONING] == 1) \{\
.Topic
The position changing after the commands
@@ -1704,24 +1876,34 @@ kept for compatibility reasons.
.Topic
Temporarily, there existed some confusion on the positioning after the
.B D
-commands that are groff extensions.
+commands that are
+.I groff
+extensions.
.
This has been clarified by establishing the classical rule for all
groff drawing commands:
.
+.
.RS
.P
-.I The position after a graphic object has been drawn is at its end;
-.I for circles and ellipses, the "end" is at the right side.
+.ft I
+The position after a graphic object has been drawn is at its end;
+for circles and ellipses, the "end" is at the right side.
+.ft
.RE
.
+.
.P
From this, the positionings specified for the drawing commands above
follow quite naturally.
.\} \" @STUPID_DRAWING_POSITIONING
.
.P
-The differences between groff and classical troff are documented in
+The differences between
+.I groff
+and
+.I classical troff
+are documented in
.BR groff_diff (@MAN7EXT@).
.
.
@@ -1736,7 +1918,9 @@ Device description file for device
.
.TP
.IB \[la]groff_source_dir\[ra] /src/libs/libdriver/input.cpp
-Defines the parser and postprocessor for the intermediate output.
+Defines the parser and postprocessor for the
+.I intermediate
+.IR output .
.
It is located relative to the top directory of the
.I groff
@@ -1744,8 +1928,8 @@ source tree, e.g.
.IR @GROFFSRCDIR@ .
.
This parser is the definitive specification of the
-.I groff
-intermediate output format.
+.I groff intermediate output
+format.
.
.
.\" --------------------------------------------------------------------
@@ -1755,7 +1939,7 @@ intermediate output format.
A reference like
.BR groff (@MAN7EXT@)
refers to a manual page; here
-.I groff
+.B groff
in section\~\c
.I @MAN7EXT@
of the man-page documentation system.
@@ -1763,46 +1947,62 @@ of the man-page documentation system.
To read the example, look up section\~@MAN7EXT@ in your desktop help
system or call from the shell prompt
.
+.
.RS
.P
.ShellCommand man @MAN7EXT@ groff
.RE
.
+.
.P
For more details, see
.BR man (1).
.
+.
.TP
.BR groff (@MAN1EXT@)
option
.B -Z
and further readings on groff.
.
+.
.TP
.BR groff (@MAN7EXT@)
for details of the
.I groff
language such as numerical units and escape sequences.
.
+.
.TP
.BR groff_font (@MAN5EXT@)
for details on the device scaling parameters of the
.B DESC
file.
.
+.
.TP
-.BR troff (@MAN1EXT@)
+.BR @g@troff (@MAN1EXT@)
generates the device-independent intermediate output.
.
+.
.TP
.BR roff (@MAN7EXT@)
for historical aspects and the general structure of roff systems.
.
+.
.TP
.BR groff_diff (@MAN7EXT@)
The differences between the intermediate output in groff and classical
troff.
.
+.
+.TP
+.BR gxditview (@MAN1EXT@)
+Viewer for the
+.I intermediate
+.IR output .
+.
+.
.P
.BR \%grodvi (@MAN1EXT@),
.BR \%grohtml (@MAN1EXT@),
@@ -1815,6 +2015,7 @@ troff.
the groff postprocessor programs.
.RE
.
+.
.P
For a treatment of all aspects of the groff system within a single
document, see the
@@ -1829,6 +2030,7 @@ or from the shell prompt by
.ShellCommand info groff
.RE
.
+.
.P
The
.I classical troff output language
@@ -1836,6 +2038,7 @@ is described in two AT&T Bell Labs CSTR documents available on-line at
.URL http://\:cm.bell-labs.com/\:cm/\:cs/\:cstr.html \
"Bell Labs CSTR site" .
.
+.
.TP
.I [CSTR #97]
.I A Typesetter-independent TROFF
@@ -1845,6 +2048,7 @@ is the original and most concise documentation on the output language;
see
.URL http://\:cm.bell-labs.com/\:cm/\:cs/\:cstr/\:97.ps.gz CSTR\~#97 .
.
+.
.TP
.I [CSTR\~#54]
The 1992 revision of the
@@ -1855,8 +2059,7 @@ and
.I Brian Kernighan
isn't as concise as
.I [CSTR\~#97]
-regarding the output language;
-see
+regarding the output language; see
.URL http://\:cm.bell-labs.com/\:cm/\:cs/\:cstr/\:54.ps.gz CSTR\~#54 .
.
.
@@ -1864,7 +2067,9 @@ see
.SH "AUTHORS"
.\" --------------------------------------------------------------------
.
-Copyright (C) 1989, 2001, 2002, 2003 Free Software Foundation, Inc.
+Copyright (C) 1989, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+.
+.
.P
This document is distributed under the terms of the FDL (GNU Free
Documentation License) version 1.1 or later.
@@ -1873,21 +2078,25 @@ You should have received a copy of the FDL with this package; it is also
available on-line at the
.URL http://\:www.gnu.org/\:copyleft/\:fdl.html "GNU copyleft site" .
.
+.
.P
This document is part of
.IR groff ,
-the GNU roff distribution.
+the GNU
+.I roff
+distribution.
.
It is based on a former version \- published under the GPL \- that
described only parts of the
.I groff
extensions of the output language.
.
-It has been rewritten 2002 by
-.MTO bwarken@mayn.de "Bernd Warken"
-and is maintained by
+It has been rewritten 2002 by \m[blue]Bernd Warken\m[] and is
+maintained by
.MTO wl@gnu.org "Werner Lemberg" .
.
+.cp \n[groff_out_C]
+.
.\" --------------------------------------------------------------------
.\" Emacs settings
.\" --------------------------------------------------------------------
diff --git a/contrib/groff/man/groff_tmac.man b/contrib/groff/man/groff_tmac.man
index c1d8006..030e739f 100644
--- a/contrib/groff/man/groff_tmac.man
+++ b/contrib/groff/man/groff_tmac.man
@@ -14,11 +14,11 @@ groff_tmac.5
File position: <groff-source>/man/groff_tmac.man
-Last update: 13 Mar 2003
+Last update: 27 Jul 2004
This file is part of groff, the GNU roff type-setting system.
-Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
written by Bernd Warken <bwarken@mayn.de> and Werner Lemberg
<wl@gnu.org>
@@ -36,6 +36,9 @@ FDL in the main directory of the groff source package.
.\" Setup
.\" --------------------------------------------------------------------
.
+.do nr groff_tmac_C \n[.C]
+.cp 0
+.
.mso www.tmac
.
.if n \{\
@@ -339,6 +342,7 @@ This is the classical macro package for UNIX manual pages
(man\~pages); it is quite handy and easy to use; see
.BR groff_man (@MAN7EXT@).
.
+.
.TP
.B doc
.TP+
@@ -450,6 +454,22 @@ orientation:
.
.
.TP
+.B pic
+This file provides proper definitions for the macros
+.B PS
+and
+.BR PE ,
+needed for the
+.BR @g@pic (@MAN1EXT@)
+preprocessor.
+.
+They will center each picture.
+.
+Use it only if your macro package doesn't provide proper definitions
+for those two macros (actually, most of them already have).
+.
+.
+.TP
.B pspic
A single macro is provided in this file,
.BR PSPIC ,
@@ -509,6 +529,17 @@ option causes the graphic to be indented by\~\c
(default scaling indicator is\~\c
.BR m ).
.
+.
+.TP
+.B trace
+Use this for tracing macro calls.
+.
+It is only useful for debugging.
+.
+See
+.BR groff_trace (@MAN7EXT@) .
+.
+.
.TP
.B tty-char
Overrides the definition of standard troff characters and some groff
@@ -1180,7 +1211,7 @@ See the previous section for a detailed description.
.SH AUTHOR
.\" --------------------------------------------------------------------
.
-Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
.
.P
This document is distributed under the terms of the FDL (GNU Free
@@ -1210,10 +1241,12 @@ groff
.BR info (1)
file.
.
+.
.TP
.BR groff (@MAN1EXT@)
an overview of the groff system.
.
+.
.TP
.BR groff_man (@MAN7EXT@),
.TP+
@@ -1227,9 +1260,12 @@ an overview of the groff system.
.TP+
.BR groff_ms (@MAN7EXT@),
.TP+
+.BR groff_trace (@MAN7EXT@),
+.TP+
.BR groff_www (@MAN7EXT@).
the groff tmac macro packages.
.
+.
.TP
.BR groff (@MAN7EXT@)
the groff language.
@@ -1239,6 +1275,8 @@ the groff language.
The Filesystem Hierarchy Standard is available at the
.URL http://\:www.pathname.com/\:fhs/ "FHS web site" .
.
+.cp \n[groff_tmac_C]
+.
.\" Local Variables:
.\" mode: nroff
.\" End:
diff --git a/contrib/groff/man/roff.man b/contrib/groff/man/roff.man
index 621b362..50cde7b 100644
--- a/contrib/groff/man/roff.man
+++ b/contrib/groff/man/roff.man
@@ -1,11 +1,11 @@
.ig
roff.man
-Last update: 3 Apr 2003
+Last update: 1 Jun 2004
This file is part of groff, the GNU roff type-setting system.
-Copyright (C) 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
written by Bernd Warken <bwarken@mayn.de>
maintained by Werner Lemberg <wl@gnu.org>
@@ -23,6 +23,9 @@ FDL in the main directory of the groff source package.
.\" Setup
.\" --------------------------------------------------------------------
.
+.do nr roff_C \n[.C]
+.cp 0
+.
.mso www.tmac
.
.if n \{\
@@ -470,7 +473,7 @@ Labs tried to launch a rescue project with their
operating system.
.
It is freely available for non-commercial use, even the source code,
-but has a proprietary license that empedes the free development.
+but has a proprietary license that impedes the free development.
.
This concept is outdated, so Plan\~9 was not accepted as a platform to
bundle the main-stream development.
@@ -520,7 +523,7 @@ When you read a system manual page (man page) roff is working in the
background.
.
Roff documents can be viewed with a native viewer called
-.BR xditview (1x),
+.BR \%xditview (1x),
a standard program of the X window distribution, see
.BR X (7x).
.
@@ -1166,7 +1169,7 @@ provides the free roff implementation groff, the actual standard roff.
.\" --------------------------------------------------------------------
.
Many classical
-.troff
+.B troff
documents are still available on-line.
.
The two main manuals of the troff language are
@@ -1244,7 +1247,7 @@ might be a good starting point.
.SH AUTHORS
.\" --------------------------------------------------------------------
.
-Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
+Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
.
.P
This document is distributed under the terms of the FDL (GNU Free
@@ -1264,6 +1267,7 @@ It was written by
it is maintained by
.MTO wl@gnu.org "Werner Lemberg".
.
+.cp \n[roff_C]
.
.\" --------------------------------------------------------------------
.\" Emacs setup
OpenPOWER on IntegriCloud