summaryrefslogtreecommitdiffstats
path: root/doc/webpage.ms
diff options
context:
space:
mode:
Diffstat (limited to 'doc/webpage.ms')
-rw-r--r--doc/webpage.ms2580
1 files changed, 2580 insertions, 0 deletions
diff --git a/doc/webpage.ms b/doc/webpage.ms
new file mode 100644
index 0000000..c5697d6
--- /dev/null
+++ b/doc/webpage.ms
@@ -0,0 +1,2580 @@
+.\" This file gives a small example how a web page could look like if
+.\" created with groff.
+.\"
+.\"
+.\" To make it work with other output devices also, we include
+.\" www.tmac directly.
+.\"
+.am pspic*error-hook
+. ab \\n[.F]:\\n[.c]: fatal error: PSPIC failed to include '\\$1'
+..
+.
+.nr PS 10
+.nr VS 12
+.if '\*[.T]'html' .nr LL 10i
+.if r ps4html .nr LL 10i
+.
+.mso www.tmac
+.
+.HEAD "<link rel=""stylesheet"" type=""text/css"" href=""groff.css"" >"
+.\" .HEAD "<link rel=""icon"" type=""image/png"" href=""http://www.gnu.org/graphics/gnu-mini.png"" >"
+.
+.ALN "#eeeeee" 30
+.
+.de blm-macro
+. nr tmp \\n[.i]
+. LP
+. in \\n[tmp]u
+..
+.blm blm-macro
+.
+.HX 1
+.
+.defcolor mydarkred rgb 0.65f 0.1f 0.2f
+.defcolor mydarkgreen rgb 0.1f 0.5f 0.2f
+.defcolor mydarkblue rgb 0.1f 0.2f 0.6f
+.
+.ds GNU \m[mydarkred]G\m[]\m[mydarkgreen]N\m[]\m[mydarkblue]U\m[]
+.
+.NHR
+.HTL
+.
+Home of Groff (GNU Troff).
+.
+.HTML-IMAGE-LEFT
+.PSPIC -L gnu.eps 2i 2i
+.ie r ps4html \{\
+. ll 10i
+. br
+. nop \v'-0.66i'\h'2.0i'\s[80]\*[GNU] Troff\s0
+. ll
+.\}
+.el \
+. nop \v'-0.66i'\h'2.0i'\s[60]\*[GNU] Troff\s0
+.HTML-IMAGE-END
+.
+.HR
+.
+.LNS
+.
+.DC T HIS mydarkred
+is the home page for groff (\c
+.URL http://\:www.gnu.org/ GNU
+Troff), which is a software typesetting package
+that reads plain text mixed with formatting commands
+and produces formatted output.
+.
+Output may be PostScript or PDF, html,
+or ASCII/UTF8 for display at the terminal.
+.
+Formatting commands may be either low-level typesetting requests
+(\[lq]primitives\[rq]) or macros from a supplied set.
+.
+Users may also write their own macros.
+.
+All three may be combined.
+
+Present on most Unix systems owing to its long association
+with Unix manuals (man pages),
+groff is capable of producing typographically sophisticated documents
+while consuming only minimal system resources.
+
+The source code of the currently released versions of groff is
+available at the
+.URL "http://\:ftp.gnu.org/\:gnu/\:groff/" "GNU host"
+and its mirrors;
+the current development version is available from a
+.URL "https://\:savannah.gnu.org/\:git/\:?group=groff" "git repository" .
+.
+The current version is 1.23.0 (March 2023).
+
+To view the git repository in your browser, use
+.URL "http://\:git.savannah.gnu.org/\:cgit/\:groff.git" \
+ "Savannah's cgit interface" .
+
+Additional contributions can be found
+.URL "http://\:groff.ffii.org/\:groff/\:contrib/" here .
+
+For a special version of groff on the Microsoft operating systems, see
+.URL "https://\:sf.net/\:projects/\:ezwinports/\:files/" \
+ "Groff for Windows"
+(version 1.21).
+
+Groff was originally written and maintained by James Clark; it
+is now maintained by the team at
+.MTO groff@\:gnu.org "" .
+.
+.HR
+.
+\s[-2]\f[I]This document was produced using
+.URL http://\:www.gnu.org/\:software/\:groff groff\~\n[.x].\n[.y].\n[.Y] .
+.br
+The image at the top has been contributed by Imogen Mulley,
+based on a similar picture found on the
+.URL http://\:www.gnu.org "GNU server" .
+.
+.
+.SH
+License
+.LP
+GNU troff is released under the
+.URL http://\:www.gnu.org/\:copyleft/\:gpl.html "GNU Copyright License" .
+The documentation is released under the
+.URL http://\:www.gnu.org/\:copyleft/\:fdl.html "Free Documentation License" .
+.
+.
+.SH
+README
+.LP
+This is the GNU groff document formatting system.
+The version number is given in the file VERSION.
+
+Included in this release are implementations of `troff', `pic', `eqn',
+`tbl', `grn', `refer', `\-man', `\-mdoc', `\-mom', and `\-ms' macros, and
+drivers for `PostScript', `PDF', `TeX DVI' format, `HP LaserJet\~4'
+printers, `Canon CaPSL' printers, `HTML' and `XHTML' formats (beta status),
+and typewriter-like devices.
+Also included is a modified version of the Berkeley `\-me' macros, the
+enhanced version `gxditview' of the X11 `xditview' previewer, and an
+implementation of the `\-mm' macros contributed by J\[:o]rgen H\[:a]gg.
+
+See the file `INSTALL' for installation instructions on how to install from
+a release.
+You require a C++ compiler.
+
+The file `INSTALL.REPO' contains supplementary instructions for building
+directly from a clone of the repository.
+
+The file `NEWS' describes recent user-visible changes to `groff'.
+
+`groff' is free software.
+See the file `COPYING' for copying permission.
+
+The file `PROBLEMS' describes various problems that have been encountered in
+compiling, installing, and running `groff'.
+
+The file `MORE.STUFF' contains information about add-on packages useful for
+`groff'.
+.
+.
+.SH
+Repository and FTP access
+.LP
+The most recent released version of `groff' is always available by
+.URL "ftp://\:ftp.gnu.org/\:gnu/\:groff" "anonymous ftp" .
+
+The current development version of `groff' is available from a
+.URL http://\:savannah.gnu.org/\:git/\:?group=groff "git repository" .
+
+To view the git repository in your browser, go to its
+.URL http://\:git.savannah.gnu.org/\:cgit/\:groff.git "browser interface" .
+.
+.
+.SH
+Groff dependencies
+.LP
+Depending on your requirements, you may need at least some of the
+following tools to build `groff' directly from its source:
+
+.in 2m
+.nf
+perl \[>=] v5.6.1 (see macro GROFF_PERL in file `m4/groff.m4')
+ghostscript
+the psutils package
+the netpbm package
+texinfo 5.0
+bison \[>=] 1.875b or byacc
+.fi
+.in
+
+Note that `texinfo' and `bison' or `byacc' are required only for building
+from repository sources (a checked-out working copy).
+They are not required for building from a stable release tarball.
+Also note that the version numbers stated are the minimum supported.
+No version of `texinfo' < 5.0 works, and the original release of `bison'
+1.875 is known not to work; you \fImay\fP find that `bison' releases < 1.875
+work, but in case of difficulty, please update to a later version
+\fIbefore\fP posting a bug report.
+For \fIall\fP sources, you need `ghostscript' for creation of either `PDF'
+or `HTML' output; the `netpbm' and `psutils' packages are required only for
+`HTML' output.
+If you don't intend to produce output in either of these formats, then
+these packages are unnecessary.
+
+Additionally, producing `PDF' output directly with the `gropdf' device needs
+a working installation of `perl'.
+The same is true for some other preprocessors like `chem'.
+
+The `groff' configure script searches for the X11 headers and libraries
+`Xaw' and `Xmu'.
+So the corresponding developer packages of your system must be installed,
+otherwise `groff' does not install `gxditview' and the `\-TX*' devices.
+In Debian, the developer packages are `libxaw7\-dev' and `libxmu\-dev'.
+.
+.
+.SH
+Bug reports
+.LP
+Please report bugs using the project's
+.URL https://\:savannah.gnu.org/\:projects/\:groff "bug tracker" .
+
+You may use the form in the file `BUG\-REPORT'; the idea of this is to
+make sure that FSF has all the information it needs to fix the bug.
+At the very least, read the `BUG\-REPORT' form and make sure that you supply
+all the information that it asks for.
+Even if you are not sure that something is a bug, report it:
+this enables us to determine whether it really is a bug.
+.
+.
+.SH
+Mailing lists
+.LP
+Three mailing lists are available:
+
+.ULS
+.LI
+.MTO bug\-groff@\:gnu.org
+for following bug reports;
+
+.LI
+.MTO groff@\:gnu.org
+for general discussion of groff; and
+
+.LI
+.MTO groff\-commit@\:gnu.org "" ,
+a read-only list showing commits to the git repository.
+.ULE
+
+To subscribe, send a mail to \[la]list\[ra]\-request@\[la]domain\[ra]
+(example:
+.MTO groff\-request@\:gnu.org
+for the `groff' list) with the word `subscribe' in either the
+subject or body of the e-mail (don't include the quotes).
+Alternatively, you may subscribe by visiting the web pages at
+
+.in 2m
+.nf
+.URL http://lists.gnu.org/mailman/listinfo/bug\-groff
+.URL http://lists.gnu.org/mailman/listinfo/groff
+.URL http://lists.gnu.org/mailman/listinfo/groff\-commit
+.fi
+.in
+
+Each of these web pages also provides a link to a browseable archive of
+postings to the corresponding mailing list.
+.
+.
+.SH
+NEWS VERSION 1.22.3
+.LP
+.SH 2
+gxditview
+
+.ULS
+.LI
+X11 resources for gxditview, which were previously installed in
+/usr/X11/lib/X11/app\-defaults no matter which `prefix' was set, are
+now installed in appresdir=$prefix/lib/X11/app\-defaults.
+If `appresdir' is not a standard X11 resource directory, the environment
+variable XFILESEARCHPATH should be set to this path.
+The standard default directories depends on the system `libXt'.
+Common directories include:
+
+.in 2m
+.nf
+/usr/lib/X11/app\-defaults
+/usr/share/X11/app\-defaults
+/etc/X11/app\-defaults
+.fi
+.in
+
+Note that if the option `\-\-with\-appresdir' is passed to `configure', the
+`prefix' will not be added to `appresdir'.
+.ULE
+.
+.
+.SH 2
+glilypond
+
+.ULS
+.LI
+This new preprocessor (contributed by Bernd Warken) allows embedding of code
+for
+.URL http://\:www.lilypond.org "GNU LilyPond" ,
+a music typesetter.
+The data gets automatically processed and embedded as EPS images.
+.ULE
+.
+.
+.SH 2
+gperl
+
+.ULS
+.LI
+Bernd Warken contributed a new preprocessor to handle Perl code that can be
+evaluated and then processed by groff.
+.ULE
+.
+.
+.SH 2
+gpinyin
+
+.ULS
+.LI
+Another preprocessor from Bernd Warken to pretty-print Pinyin syllables like
+`guo2wang2' as `gu\['o]w\['a]ng'.
+.ULE
+.
+.
+.SH 2
+pdfroff
+
+.ULS
+.LI
+The pdfroff utility script now activates its `\-\-no\-toc\-relocation'
+option by default, unless a request similar to:
+
+.in 2m
+.nf
+\&.if !\en[PHASE] .tm pdfroff\-option:set toc_relocation=enabled
+.fi
+.in
+
+is invoked during input file processing; (`.if !\en[PHASE] \&.\|.\|.\&'
+ensures that the effect of the `.tm' request is restricted to the
+document setup phase of processing, as pdfroff sets it to 1 or\~2 in the
+output phase, but leaves it unset in the setup phase).
+
+The bundled `spdf.tmac' macro package, which implicitly activates
+`\-mpdfmark' for `ms' macro users, ensures that TOC relocation is
+appropriately enabled, when the `.TC' macro is invoked.
+.ULE
+.
+.
+.SH 2
+macro packages
+
+.ULS
+.LI
+The \-mom macro package now has full support for eqn, pic, and tbl, as well
+as captioning and labelling of pdf images and preprocessor output.
+Lists of Figures, Equations, and Tables can now be autogenerated.
+PDF_IMAGE has a new FRAME option.
+
+.LI
+A French introduction to the \-me macro package has been added (file
+`meintro_fr.me').
+
+.LI
+In \-mdoc, command %C is now available, providing a city or place reference.
+.ULE
+.
+.
+.SH
+NEWS VERSION 1.22.2
+.LP
+.SH 2
+tbl
+
+.ULS
+.LI
+The character `#' can now be used as an eqn delimiter within tables.
+.ULE
+.
+.
+.SH 2
+eqn
+
+.ULS
+.LI
+A GNU extension
+
+.in 2m
+.nf
+.ft C
+delim on
+.ft P
+.fi
+.in
+
+has been added to reactivate delimiters which have been disabled with
+`delim off'.
+.ULE
+.
+.
+.SH
+NEWS VERSION 1.22.1
+.LP
+(There was no release 1.22.)
+.LP
+.SH 2
+groff
+
+.ULS
+.LI
+A new option `\-j' has been added to call the `chem' preprocessor.
+.ULE
+.
+.
+.SH 2
+tbl
+
+.ULS
+.LI
+Improved line numbering support.
+.ULE
+.
+.
+.SH 2
+macro packages
+
+.ULS
+.LI
+Support for the `refer' preprocessor has been added to the \-mm macro
+package.
+
+.LI
+In \-me, the `TH' macro was changed for compatibility with line number
+support in tables.
+
+`bl' now works inside of blocks.
+
+The behaviour of centered blocks has been improved.
+
+Line numbering support has been improved.
+
+.LI
+The \-mom macro package has reached version 2.0, focusing on PDF output
+with gropdf (using the new `pdfmom' wrapper script).
+See the file `version\-2.html' of the \-mom documentation for a list of the
+many changes.
+
+.LI
+Some generic Unicode fallback characters (mainly Roman numerals) have been
+added.
+.ULE
+.
+.
+.SH 2
+tbl
+
+.ULS
+.LI
+Added numbered line support in tables.
+.ULE
+.
+.
+.SH 2
+gropdf
+
+.ULS
+.LI
+A new driver for generating PDF output directly, contributed by
+.MTO deri@\:chuzzlewit.myzen.co.uk "Deri James" .
+
+Note that this driver is written in Perl; you need a working Perl
+installation to run this output device.
+.ULE
+.
+.
+.SH 2
+pdfmom
+
+.ULS
+.LI
+A new wrapper around groff that facilitates the production of PDF documents
+from files formatted with the \-mom macros.
+.ULE
+.
+.
+.SH
+NEWS VERSION 1.21
+.LP
+.SH 2
+troff
+
+.ULS
+.LI
+The new `lsm' request specifies a macro to be invoked when leading
+spaces in an input line are encountered (which are removed then).
+Number registers `lsn' and `lss' hold the number of removed leading
+spaces and the corresponding horizontal space, respectively.
+
+.LI
+There is a new warning category `file', enabled by default.
+The `mso' request emits warnings in this category when the requested
+macro file does not exist.
+
+.LI
+The new `class' request assigns a short name to a set of characters
+which can be referred to in the `cflags' request.
+This is especially useful to control line-breaking and hyphenation
+rules in CJK languages.
+
+.LI
+Three new values for the `cflags' request have been added, which are
+needed for proper CJK support.
+
+.in 2m
+128 prohibit before but allow break after character
+.br
+256 prohibit after but allow break before character
+.br
+512 allow break before and after character
+.in
+.ULE
+.
+.
+.SH 2
+tbl
+
+.ULS
+.LI
+A new global option `nowarn' suppresses warnings if tables are longer
+than the current line width.
+.ULE
+.
+.
+.SH 2
+afmtodit
+
+.ULS
+.LI
+New option `\-o' to specify the name of the output file.
+.ULE
+.
+.
+.SH 2
+macro packages
+
+.ULS
+.LI
+A new macro `%U' has been added to the mdoc package to indicate a URL
+reference within an \&.Rs/.Re environment.
+
+.LI
+Rudimentary support for the Japanese script has been added, most
+suitable for man page handling as output by grotty.
+The file `ja.tmac' contains the necessary setup to allow line breaks
+before and after CJK characters (with proper exceptions).
+Note, however, that no inter-character spacing is implemented yet \[en]
+this usually causes many warnings about bad line breaks.
+.ULE
+.
+.
+.SH
+NEWS VERSION 1.20.1
+.LP
+A packaging error made it necessary to publish this release.
+No user-visible changes.
+.
+.
+.SH
+NEWS VERSION 1.20
+.LP
+.SH 2
+groff
+
+.ULS
+.LI
+XHTML support has been added to grohtml and can be specified by
+\-Txhtml.
+This option also utilizes the MathML capability of
+eqn and combines the outputs of both in the final XHTML file.
+Users can also specify the `\-P\-V' option together with `\-Txhtml'
+in groff.
+This has the effect of creating an XHTML validator
+button at the bottom of each page.
+
+.LI
+Some options have been added to control a new preprocessor,
+`preconv' (see below): `\-k' activates it, `\-K' sets the input
+encoding, and `\-D' sets the default encoding.
+
+.LI
+A new environment variable `GROFF_ENCODING' sets the encoding
+of input files; it implies command option `\-k'.
+.ULE
+.
+.
+.SH 2
+troff
+
+.ULS
+.LI
+Two new requests `device' and `devicem' have been added which are
+equivalents to the \eX and \eY escapes, respectively.
+
+.LI
+A new read-only number register `.br' is available which is set to\~1
+if a macro is called as \&.foo and to\~0 if called as \&'foo.
+This allows reliable modification of requests.
+
+.in 2m
+.nf
+.ft C
+\&.als bp@orig bp
+\&.de bp
+\&.\& tm before bp
+\&.\& ie \e\en[.br] .bp@orig
+\&.\& el \[aq]bp@orig
+\&.\& tm after bp
+\&..
+.ft P
+.fi
+.in
+
+.LI
+A new request `fzoom' has been added to adjust the optical size of a
+font in relation to the others.
+The zoom factor is given in integer multiples of 1/1000th.
+In the following example, the CR font is magnified by 10% (the zoom
+factor is 1.1).
+
+.in 2m
+.nf
+.ft C
+\&.fam P
+\&.fzoom CR 1100
+\&.ps 12
+\&Palatino and \ef[CR]Courier\ef[]
+.ft P
+.fi
+.in
+
+The new number register `.zoom' holds the zoom value of the current font,
+in multiples of 1/1000th.
+
+.LI
+The `cflags' request has been extended with a new flag value 64, to be
+used in combination with values\~2 (break before character) and\~4 (break
+after character).
+If set, the hyphenation codes of the surrounding characters are ignored.
+
+.LI
+A new debugging request, `pev', has been added to print all of the current
+known environments to stderr.
+It first prints the state of the current environment, then iterates
+through all of the known environments, printing each except the one that
+is current.
+
+.LI
+A new escape `\e$^' has been added.
+It represents the parameters of a macro as if they were an argument to
+the `ds' request.
+This is used by `trace.tmac'.
+
+.LI
+A new read-only number register `.O' is available which returns the
+current suppression level as set by the `\eO' escape.
+
+.LI
+The space width emitted by the `\e|' and `\e^' escape sequences can be
+controlled on a per-font basis.
+If there is a glyph named `\e|' or `\e^', respectively (note the leading
+backslash), defined in the current font file, use this glyph's width
+instead of the default value.
+
+This behaviour is not new, but hasn't been documented before.
+.ULE
+.
+.
+.SH 2
+nroff
+
+.ULS
+.LI
+Two new command-line options `\-w' and `\-W' are accepted and passed to
+groff to enable and disable warning messages, respectively.
+.ULE
+.
+.
+.SH 2
+preconv
+
+.ULS
+.LI
+This is a new preprocessor to convert various input encodings to something
+groff understands (this is, ASCII and \e[uXXXX] entities, with `XXXX' a
+hexadecimal number with 4 to 6 digits, representing a Unicode input code).
+Normally, preconv should be invoked with options `\-k' and `\-K' of groff.
+See the preconv man page for details.
+.ULE
+.
+.
+.SH 2
+pic
+
+.ULS
+.LI
+int(x) now really behaves as documented: It truncates the non-integer part
+of\~x, this is, it rounds towards zero and not towards the next integer
+less than or equal to\~x.
+
+.LI
+Pic now supports up to 32 macro arguments (and up to 16 on EBCDIC
+platforms).
+
+.LI
+Heinz-J\[:u]rgen \[:O]rtel contributed code for two new keywords,
+`xslanted' and `yslanted', which can change the shape of boxes into
+arbitrary parallelograms.
+.ULE
+.
+.
+.SH 2
+tbl
+
+.ULS
+.LI
+Latest versions of DWB tbl introduced an `x' column specifier for a single
+column expanded to the line width.
+GNU tbl has now been extended to support even multiple `x' specifiers
+within a table.
+
+.LI
+To avoid collision with the new `x' specifier, a block formatting macro
+must now be selected with specifier letter `m'.
+.ULE
+.
+.
+.SH 2
+eqn
+
+.ULS
+.LI
+Eric S.\& Raymond has added a new device type to eqn, MathML.
+When \-TMathML is enabled, eqn now emits MathML formula markup rather than
+groff commands.
+The new groff \-Txhtml device uses this.
+.ULE
+.
+.
+.SH 2
+chem
+
+.ULS
+.LI
+The preprocessor `chem' was added.
+`chem' is a roff language to generate chemical structure diagrams.
+It generates `pic' output.
+.ULE
+.
+.
+.SH 2
+grops
+
+.ULS
+.LI
+The PS font definition files have been regenerated with newer AFM versions
+from Adobe's 35 core fonts as present in most Level\~2 PS printers.
+The changes are minor (most notably, the addition of the `Euro' glyph and an
+extended set of kerning values).
+
+For backwards compatibility, the old set of font definition files is still
+available; for details please read the man page of grops.
+.ULE
+.
+.
+.SH 2
+grotty
+
+.ULS
+.LI
+\eD'p.\|.\|.\&' is now supported if the polygon consists entirely of
+horizontal and vertical lines.
+.ULE
+.
+.
+.SH 2
+grohtml
+
+.ULS
+.LI
+XHTML support has been added.
+
+.LI
+New command-line option `\-V' (to be used in XHTML mode) to produce an
+XHTML validator button.
+
+.LI
+New command-line option `\-y' to produce a right-justified groff signature
+at the end of the document (in combination with option `\-V').
+.ULE
+.
+.
+.SH 2
+gxditview
+
+.ULS
+.LI
+Support for keyboard navigation has been improved.
+
+.LI
+Similar to other X11 applications, there are now two resource files,
+`GXditview' and `GXditview\-color'.
+.ULE
+.
+.
+.SH 2
+groffer
+
+.ULS
+.LI
+`groffer' version 1.* exists now in a shell and a Perl version.
+.ULE
+.
+.
+.SH 2
+afmtodit
+
+.ULS
+.LI
+New option `\-c' to output more font information as comments.
+
+.LI
+New option `\-k' to suppress output of kerning data.
+
+.LI
+New option `\-f NAME' to set the internal name of the groff font.
+.ULE
+.
+.
+.SH 2
+macro packages
+
+.ULS
+.LI
+Joachim Walsdorff contributed the `hdtbl' package for the generation of
+tables, using a syntax very similar to the HTML table model.
+For example, a table with two cells and two rows looks like this:
+
+.in 2m
+.nf
+.ft C
+\&.TBL cols=2
+\&.\& TR .TD 1*1 .TD 1*2
+\&.\& TR .TD 2*1 .TD 2*2
+\&.ETB
+.ft P
+.fi
+.in
+
+Here the same table using a more expanded syntax:
+
+
+.in 2m
+.nf
+.ft C
+\&.TBL cols=2
+\&.\& TR
+\&.\& TD 1*1
+\&.\& TD 1*2
+\&.\& TR
+\&.\& TD 2*1
+\&.\& TD 2*2
+\&.ETB
+.ft P
+.fi
+.in
+
+Tables can be nested; `hdtbl' works without a preprocessor so that the
+full capability of groff's macro engine is available.
+
+This package currently works with `\-Tps' only.
+
+.LI
+\-mandoc now supports multiple man pages (in either man or mdoc format).
+
+.LI
+Fabrice M\['e]nard contributed locales support.
+In particular, it is now possible to get French localization of the main
+macro packages (\-ms, \-mm, \-me, and \-mom, but not \-man and \-mdoc
+which are localized differently) by appending `\-mfr' to the list of macro
+packages.
+Example:
+
+.in 2m
+.ft C
+.nf
+groff \-ms \-mfr foo > foo.ps
+.fi
+.ft P
+.in
+
+Note that latin-9 input encoding is used for French (to support the `oe'
+ligature).
+
+.LI
+Swedish macro localization (with `\-msv') has been added.
+
+.LI
+German macro localization (with `\-mde' and `\-mden' for traditional and
+new orthography, respectively) has been added.
+
+.LI
+Czech macro localization (with `\-mcs') has been added.
+
+Note that latin-2 input encoding is used for Czech.
+
+.LI
+A new macro `Dx' has been added to the mdoc package which identifies the
+DragonFly OS.
+
+.LI
+If mdoc is used to print multiple man pages (together with the \-rcR=0
+command-line option), each man page now starts a new page.
+
+.LI
+\-mtrace has been considerably improved, now showing number and string
+register assignments, among other things.
+See the groff_trace man page for details.
+
+.LI
+The PSPIC macro now works with all devices (producing a hollow
+rectangle on devices which don't support inclusion of PS images) and
+is loaded in troffrc at start-up.
+
+.LI
+A new auxiliary macro package `62bit' has been added which provides some
+macros for adding, multiplying, and dividing signed 62-bit integers (mainly
+to handle normal groff number operations without risking overflow errors).
+
+.LI
+For \-ms, Eric S.\& Raymond contributed support for ancient Bell Labs
+localisms `.SC', `.UC', `.P1', and `.P2'.
+The latter three are enabled only after \&.SC is called.
+
+.LI
+A new string, `SN-STYLE', has been added to the ms macros, controlling
+the formatting of section numbers in headings defined by `.NH'.
+
+.LI
+The new macro package `ptx' provides a template definition for the `.xx'
+macro as needed by GNU ptx (for creating permuted indices).
+.ULE
+.
+.
+.SH
+NEWS VERSION 1.19.2
+.LP
+.SH 2
+troff
+
+.ULS
+.LI
+Analogously to the \&.ft and \ef pair, two new requests `gcolor' and
+`fcolor' (which pair with \em and \eM, respectively) have been added to
+set the glyph and background colours.
+
+.LI
+A new read-only, string-valued register `.sty' returns the name of the
+current style.
+
+.LI
+Two new conditional operators `F\~\[la]name\[ra]' and `S\~\[la]name\[ra]'
+have been added.
+`F' is true if a font \[la]name\[ra] exists.
+`S' is true if a style \[la]name\[ra] has been registered.
+
+.LI
+Cyrillic characters have been added to the `utf8' and `html' output
+devices.
+.ULE
+.
+.
+.SH 2
+pic
+
+.ULS
+.LI
+The `by' argument in a `for' loop can now be negative if it is additive.
+For the multiplicative case, it must be greater than zero.
+.ULE
+.
+.
+.SH 2
+eqn
+
+.ULS
+.LI
+The following keywords aren't new but haven't been documented previously:
+
+.in 2m
+.B undef
+.I name
+(to undefine a macro)
+.br
+.B
+copy
+.I file \[dq] \[dq]
+.R
+a synonym for `include')
+.br
+.B space
+.I n
+(to modify the vertical spacing before and after an equation)
+.in
+
+.LI
+The following macros aren't new but haven't been documented previously:
+
+.in 2m
+.B Alpha ,
+\&\.\.\.,
+.B Omega
+(the same as
+.B ALPHA ,
+\&\.\.\.,
+.B OMEGA )
+.br
+\fBldots\fP (three dots on the baseline)
+.br
+\fBdollar\fP (a dollar glyph)
+.in
+
+.LI
+The following keywords have been extended.
+Again, this isn't new but hasn't been documented previously:
+
+.in 2m
+.B col
+.I n
+.B {
+\&\.\.\.\&
+.B }
+.br
+.B lcol
+.I n
+.B {
+\&\.\.\.\&
+.B }
+.br
+.B rcol
+.I n
+.B {
+\&\.\.\.\&
+.B }
+.br
+.B ccol
+.I n
+.B {
+\&\.\.\.\&
+.B }
+.br
+.B pile
+.I n
+.B {
+\&\.\.\.\&
+.B }
+.br
+.B lpile
+.I n
+.B {
+\&\.\.\.\&
+.B }
+.br
+.B rpile
+.I n
+.B {
+\&\.\.\.\&
+.B }
+.br
+.B cpile
+.I n
+.B {
+\&\.\.\.\&
+.B }
+.br
+The above all set the vertical spacing between rows to\~\c
+.I n ).
+.ULE
+.
+.
+.SH 2
+grohtml
+
+.ULS
+.LI
+This device driver has been raised to beta stage; its set of tags should
+be stable now.
+
+.LI
+New command-line option `\-s' to set the base point size.
+
+.LI
+New command-line option `\-S' to set the split level while generating
+multiple files.
+.ULE
+.
+.
+.SH 2
+grotty
+
+.ULS
+.LI
+Experimental support for zero-width and double-width characters.
+.ULE
+.
+.
+.SH 2
+gxditview
+
+.ULS
+.LI
+On platforms which have the X\~Window System this program is now built and
+installed automatically.
+.ULE
+.
+.
+.SH 2
+xtotroff
+
+.ULS
+.LI
+This program to create font definition files for xditview isn't new but
+hasn't been installed previously.
+.ULE
+.
+.
+.SH 2
+groffer
+
+.ULS
+.LI
+A security problem (reported as CAN-2004-0969) has been fixed.
+.ULE
+.
+.
+.SH 2
+gdiffmk
+
+.ULS
+.LI
+A new script contributed by Mike Bianchi.
+It compares two groff, nroff, or troff documents and creates an output with
+added margin characters (using `.mc') to indicate the differences.
+.ULE
+.
+.
+.SH 2
+pdfroff
+
+.ULS
+.LI
+A new wrapper script contributed by Keith Marshall to easily create PDF
+documents with groff.
+.ULE
+.
+.
+.SH 2
+macro packages
+
+.ULS
+.LI
+ms.tmac
+
+.ULS
+.LI
+Support for fractional point sizes: A value for the `PS', `VS', `FPS',
+and `VPS' register larger than or equal to 1000 is always divided by 1000.
+For example, `.nr\~PS\~10250' sets the document's font size to 10.25 points.
+
+.LI
+The `Ds' and `De' macros provided in ms since groff version 1.19 have
+been removed; the equivalent `DS' and `DE' macros should be used instead.
+X11 documents which actually use `Ds' and `De' always load a
+specific macro file from the X11 distribution (`macros.t') which
+provides proper definitions for the two macros.
+
+.LI
+The following registers have been added for improving layout control:
+
+.IP PORPHANS
+Defines number of lines following `LP', `PP', `QP', `IP' or `XP' which
+must be kept together, before any automatic page break.
+
+.IP HORPHANS
+Sets number of lines of following paragraph which must be kept with a
+heading, defined by `NH' or `SH', before any automatic page break.
+
+.IP GROWPS
+Sets the first level of heading (set with `NH') which keeps the
+same point size as body text.
+
+.IP PSINCR
+Sets the point size increment for each level of heading (set with
+`NH'), below the threshold level set by `GROWPS'; e.g., if
+\en[PS]\~=\~10, \en[GROWPS]\~=\~3 and \en[PSINCR]\~=\~2.0p, then `.NH\~1'
+produces 14-point headings, `.NH\~2' produces 12-point,
+and all other levels
+remain at 10\~points (because \en[PS]\~=\~10).
+
+.LI
+The `SH' macro now accepts a numeric argument, to make heading size
+match that of `NH' with same argument value when the `GROWPS'/`PSINCR'
+feature is enabled.
+.ULE
+
+Please refer to the documentation of the ms package for other, minor
+improvements.
+
+.LI
+me.tmac
+
+The section type set with the `++' request is available in the `_M'
+register.
+This isn't new but hasn't been documented before.
+
+.LI
+www.tmac
+
+The `HR' macro no longer causes an empty line for non-HTML devices.
+
+A new macro `HEAD' has been added to directly add data to the
+<head>.\|.\|.</head> block.
+
+New macros `OLS' and `OLE' to start and end an ordered list.
+
+New macros `DLS' and `DLE' to start and end a definition list.
+.ULE
+.
+.
+.SH 2
+pdfmark
+
+.ULS
+.LI
+A new macro package contributed by Keith Marshall which implements PDF
+marks.
+This is in alpha stage currently.
+.ULE
+.
+.
+.SH 2
+miscellaneous
+
+.ULS
+.LI
+Two new keywords to the DESC file have been added which are needed for
+grohtml: `image_generator' and `unscaled_charwidths'.
+The former gives the name of the program which creates PNG images,
+and the latter makes troff always use unscaled character widths.
+.ULE
+.
+.
+.SH
+NEWS VERSION 1.19.1
+.LP
+.SH 2
+groff
+
+.ULS
+.LI
+The argument of the command-line option `\-I' is now also passed to troff
+and grops, specifying a directory to search for files on the command line,
+files named in `so' and `psbb' requests, and files named in \eX'ps:\~file'
+and \eX'ps:\~import' escapes.
+
+.LI
+If option `\-V' is used more than once, the commands are both printed
+on standard error and run.
+.ULE
+.
+.
+.SH 2
+troff
+
+.ULS
+.LI
+Two new read-only, string-valued registers `.m' and `.M' return the
+name of the current drawing and background color, respectively.
+
+.LI
+New read-only register `.U' which is set to\~1 if in unsafe mode and
+0\~otherwise.
+
+.LI
+An input encoding file for \%latin-5 (a.k.a.\& ISO \%8859-9) has been
+added.
+Example use:
+
+.in 2m
+.ft C
+groff \-Tdvi \-mlatin5 my_file > my_file.dvi
+.ft R
+.in
+
+Note that some output devices don't support all glyphs of this encoding.
+
+.LI
+If the `return' request is called with an argument, it exits twice,
+namely the current macro and the macro one level higher.
+This is used to define a wrapper macro for `return' in trace.tmac.
+
+.LI
+For completeness, two new requests have been added: `dei1' and `ami1'.
+They are equivalent to `dei' and `ami', respectively, but the macros
+are executed with compatibility mode off (similar to `de1' and `am1').
+
+.LI
+New command-line option `\-I' to specify a directory for files (both
+those on the command line and those named in `psbb' requests).
+This is also handled by the groff wrapper program.
+
+.LI
+Since version 1.19 you can say `.vs\~0'.
+Older versions emit a warning and convert this to `.vs\~\en[.V]'.
+
+This hasn't been documented properly.
+Note that `.vs\~0' isn't saved in a diversion since it doesn't result
+in vertical motion.
+.ULE
+.
+.
+.SH 2
+pic
+
+.ULS
+.LI
+Dashed and dotted ellipses have been implemented.
+.ULE
+.
+.
+.SH 2
+tbl
+
+.ULS
+.LI
+New key character `x' to make tbl call a user-defined macro on a table
+cell.
+Patch by
+.MTO hj.oertel@\:surfeu.de "Heinz-J\[:u]rgen Oertel" .
+.ULE
+.
+.
+.SH 2
+grap2graph
+
+.ULS
+.LI
+A new script contributed by
+.MTO esr@\:thyrsus.com "Eric S.\& Raymond" .
+It converts a grap diagram into a cropped image.
+Since it uses gs and the PNM library, virtually all graphics formats
+are available for output.
+[Note that the grap program itself isn't part of the groff package;
+see the file MORE.STUFF how to obtain grap.]
+.ULE
+.
+.
+.SH 2
+grohtml
+
+.ULS
+.LI
+New option `\-j' to emit output split into multiple files.
+.ULE
+.
+.
+.SH 2
+grops
+
+.ULS
+.LI
+New command-line option `\-I' to specify a directory to search for files
+on the command line and files named in \eX'ps:\~import' and \eX'ps:\~file'
+escapes.
+This is also handled by the groff wrapper program.
+
+.LI
+The default value for the `broken' keyword in the DESC file is now\~0.
+.ULE
+.
+.
+.SH 2
+grolj4
+
+.ULS
+.LI
+A new man page
+.I lj4_font (5)
+documents how fonts are accessed with
+grolj4.
+
+.LI
+The built-in fonts for LJ4 and newer PCL\~5 devices have been completely
+revised, mainly to access as much glyphs as possible.
+The provided metric files should be compatible with recent PCL\~5 printers
+also.
+Additionally, font description files have been added for the Arial and
+Times New Roman family, the MS symbol, and Wingdings fonts.
+.ULE
+.
+.
+.SH 2
+afmtodit
+
+.ULS
+.LI
+New option `\-x' to prevent use of built-in Adobe Glyph List.
+.ULE
+.
+.
+.SH 2
+hpftodit
+
+.ULS
+.LI
+Completely revised to handle HP TrueType metric files also.
+See the hpftodit manual page for more details.
+.ULE
+.
+.
+.SH 2
+groffer
+
+.ULS
+.LI
+This version is a rewrite of groffer in many parts, but it is kept in
+the old single script style.
+
+.ULS
+.LI
+New options: \-\-text (\-\-mode\~text), \-\-tty\-viewer, \-\-X (\-\-mode\~X),
+\-\-X\-viewer, \-\-html (\-\-mode\~html), \-\-html\-view, \-\-apropos\-data,
+\-\-apropos\-devel, \-\-apropos\-progs.
+
+.LI
+New documentation file README_SH.
+
+.LI
+Enhancement of the configuration files and the `apropos' handling.
+.ULE
+.ULE
+.
+.
+.SH 2
+macro packages
+
+.ULS
+.LI
+www.tmac: New macro `JOBNAME' to split output into multiple files.
+
+.LI
+In mdoc, multiple calls to `.Lb' are now supported in the LIBRARY
+section.
+.ULE
+.
+.
+.SH
+NEWS VERSION 1.19
+.LP
+.SH 2
+troff
+
+.ULS
+.LI
+Input encoding files for \%latin-9 (a.k.a.\& \%latin-0 and ISO \%8859-15)
+and \%latin-2 (ISO \%8859-2) have been added.
+Example use:
+
+.in 2m
+.ft C
+groff \-Tdvi \-mlatin9 my_file > my_file.dvi
+.ft P
+.in
+
+You still need proper fonts with the necessary glyphs.
+Out of the box, the groff package supports \%latin-9 only for \-Tps,
+\-Tdvi, and \-Tutf8, and \%latin-2 only for \-Tdvi and \-Tutf8.
+
+.LI
+Composite glyphs are now supported.
+To do this, a subset of the Adobe Glyph List (AGL) Algorithm as described in
+.URL http://\:partners.adobe.com/\:public/\:developer/\:opentype/\:index_glyph.html \
+ http://\:partners.adobe.com/\:public/\:developer/\:opentype/\:index_glyph.html
+is used to construct glyph names based on Unicode character codes.
+The existing groff glyph names are frozen; no glyph names which can't be
+constructed algorithmically will be added in the future.
+
+The \e[.\|.\|.\&] escape sequence has been extended to specify multiple
+glyph components.
+Example:
+
+.in 2m
+.ft C
+\e[A ho]
+.ft R
+.in
+
+this accesses a glyph with the name `u0041_0328'.
+
+Some groff glyphs which are useful as composites map to `wrong' Unicode
+code points.
+For example, `ho' maps to U+02DB which is a spacing ogonek, whereas a
+non-spacing ogonek U+0328 is needed for composite glyphs.
+The new request
+
+.in 2m
+.ft C
+\&.composite from to
+.ft R
+.in
+
+changes the mapping while a composite glyph name is constructed.
+To make \e[A\~ho] yield the expected result,
+
+.in 2m
+.ft C
+\&.composite ho u0328
+.ft R
+.in
+
+is needed.
+[The new file `composite.tmac' loaded at start-up already
+contains proper calls to `.composite'.]
+
+Please refer to the info pages of groff and to the groff_char man page
+for more details.
+
+.LI
+A new request `fschar' has been added to define font-specific fallback
+characters.
+They are searched after the list of fonts declared with the
+`fspecial' request but before the list of fonts declared with `special'.
+
+.LI
+Fallback characters defined with `fschar' can be removed with the
+new `rfschar' request.
+
+.LI
+A new request `schar' has been added to define global fallback
+characters.
+They are searched after the list of fonts declared with the
+`special' request but before the already mounted special fonts.
+
+.LI
+In groff versions 1.18 and 1.18.1, \eD'f\~.\|.\|.\&' didn't move the
+current point horizontally.
+Despite of being silly, this change has been reverted for backwards
+compatibility.
+Consequently, the intermediate output command `Df' also moves the
+position horizontally again.
+
+\eD'f\~.\|.\|.\&' is deprecated since it depends on the horizontal
+motion quanum of the output device (given with the `hor' parameter in
+the DESC file).
+Use the new \eD'Fg\~.\|.\|.\&' escape instead.
+
+.LI
+For orthogonality, new \eD subcommands to change the fill color are
+available:
+
+.in 2m
+.ft C
+\eD\[aq]Fr \&.\|.\|.\&\[aq] \f[R](rgb)\f[]
+.br
+\eD\[aq]Fc \&.\|.\|.\&\[aq] \f[R](cmy)\f[]
+.br
+\eD\[aq]Fg \&.\|.\|.\&\[aq] \f[R](gray)\f[]
+.br
+\eD\[aq]Fk \&.\|.\|.\&\[aq] \f[R](cmyk)\f[]
+.br
+\eD\[aq]Fd\[aq] \f[R](default color)\f[]
+.ft R
+.in
+
+The arguments are the same as with the `defcolor' request.
+The current position is \f[I]not\f[] changed.
+
+.LI
+The values set with \eH and \eS are now available in number registers
+\en[.height] and \en[.slant], respectively.
+
+.LI
+The `.pe' number register isn't new but hasn't been documented before.
+It is set to\~1 during a page ejection caused by the `bp' request.
+
+.LI
+The new glyph symbol `tno' is a textual variant of `no'.
+
+.LI
+The new glyph symbol `+e' represents U+03F5, GREEK LUNATE EPSILON SYMBOL.
+(Well, it is not really new since it has been previously supported by
+grolj4.)
+The mapping for both the dvi and lj4 symbol font has been
+changed accordingly so that Greek small letter epsilon, `*e', has the
+same glyph shape as with other devices.
+.ULE
+.
+.
+.SH 2
+grops
+
+.ULS
+.LI
+The font `freeeuro.pfa' has been added to provide various default glyph
+shapes for `eu' and `Eu'.
+
+.LI
+It is now possible to access all glyphs in a Type\~1 font, not only 256
+(provided the font file created by afmtodit has proper entries).
+grops constructs additional encoding vectors on the fly if necessary.
+
+.LI
+The paper size is now emitted via the %%DocumentMedia and PageSize
+mechanisms so that it is no longer required to tell `gv' or `ps2pdf'
+about the paper size.
+The `broken' flag value\~16 omits this feature
+(the used PostScript command `setpagedevice' is a LanguageLevel\~2
+extension).
+Patch by
+.MTO egil@\:kvaleberg.no "Egil Kvaleberg" .
+
+.LI
+Non-slanted PostScript metrics have been changed again; they no longer
+contain negative left italic correction values.
+This assures correct spacing with eqn.
+.ULE
+.
+.
+.SH 2
+grodvi
+
+.ULS
+.LI
+The font cmtex10 has been added as the special font `SC' to the DVI fonts.
+It is used as a font-specific special font for CW and CWI.
+
+.LI
+New options \-l and \-p to set landscape orientation and the paper size.
+grodvi now emits a `papersize' special which is understood by DVI drivers
+like dvips.
+
+Consequently, the DESC file should contain a `papersize' keyword.
+
+.LI
+The glyph shapes for \e[*f] and \e[*e] have been exchanged with \e[+f] and
+\e[+e], respectively, to be in sync with all other devices.
+
+.LI
+Glyphs \e[HE] and \e[DI] have been replaced with \e[u2662] and \e[u2661],
+respectively, since the former two glyphs have a black (filled) shape
+which grodvi doesn't provide by default (it never has actually).
+.ULE
+.
+.
+.SH 2
+grolj4
+
+.ULS
+.LI
+The glyphs \e[*e] and \e[+e] have been exchanged to be in sync with
+all other devices.
+
+.LI
+The glyph \e[\[ti]=] is now called \e[|=].
+Similar to other devices,
+\e[\[ti]=] is now another name for glyph \e[\[ti]\[ti]].
+.ULE
+.
+.
+.SH 2
+grotty
+
+.ULS
+.LI
+New option `\-r'.
+It is similar to the \-i option except it tells grotty to
+use the `reverse video' attribute to render italic fonts.
+.ULE
+.
+.
+.SH 2
+pic
+
+.ULS
+.LI
+New command `figname' to set the name of a picture's output box in TeX
+mode.
+.ULE
+.
+.
+.SH 2
+refer
+
+.ULS
+.LI
+The environment variable `REFER' to override the name of the default
+database isn't new but hasn't been documented before.
+.ULE
+.
+.
+.SH 2
+soelim
+
+.ULS
+.LI
+New option `\-r' to avoid emission of `.lf' lines.
+
+.LI
+New option `\-t' to emit TeX comment lines (giving current file and the
+line number) instead of `.lf' lines.
+.ULE
+.
+.
+.SH 2
+afmtodit
+
+.ULS
+.LI
+Unencoded glyphs in an AFM file are output also (since grops can now emit
+multiple encoding vectors for a single font).
+
+.LI
+New option `\-m' to prevent negative left italic correction values.
+
+.LI
+The mapping and encoding file together with file `DESC' are now searched
+in the default font directory also.
+Please refer to the man page of afmtodit for more details.
+.ULE
+.
+.
+.SH 2
+macro packages
+
+.ULS
+.LI
+.MTO kollar@\:alltel.net "Larry Kollar"
+and others made the man macros more customizable.
+
+.ULS
+.LI
+New command-line options \-rFT, \-rIN, and \-rSN to set the vertical
+location of the footer line, the body text indentation, and the
+sub-subheading indentation.
+
+.LI
+New command-line option \-rHY (similar to the ms macros) to control
+hyphenation.
+
+.LI
+New macros `.PT' and `.BT' to print the header and footer strings.
+They can be replaced with a customized version in `man.local'.
+
+.LI
+The string `HF' now holds the typeface to print headings and
+subheadings.
+
+.LI
+Similar to the ms macros, the LT register now defaults to LL if not
+explicitly specified on the command line.
+.ULE
+
+.LI
+troff's start-up file `troffrc' now includes `papersize.tmac' to set
+the paper size with the command-line option `\-dpaper=<size>'.
+
+Possible values for `<size>' are the same as the predefined `papersize'
+values in the DESC file (only lowercase; see the groff_font man page)
+except \%a7\[en]d7.
+An appended `l' (ell) character denotes landscape orientation.
+Examples: `a4l', `c3l', `letterl'.
+
+Most output drivers need additional command-line switches `\-p' and
+`\-l' to override the default paper length and orientation as set in
+the driver specific DESC file.
+
+For example, use the following for PS output on A4 paper in landscape
+orientation:
+
+.in 2m
+.ft C
+groff \-Tps \-dpaper=a4l \-P\-pa4 \-P\-l \-ms foo.ms > foo.ps
+.ft R
+.in
+.ULE
+.
+.
+.SH
+NEWS VERSION 1.18.1
+.LP
+.SH 2
+troff
+
+.ULS
+.LI
+The non-slanted PostScript font definition files have been regenerated to
+include left and right italic correction values.
+Applying those to a glyph (this is, prepending the glyph with `\e,' and
+appending `\e/' to the glyph) sets the glyph width to the real value given
+by the horizontal bounding box values.
+Without those escapes, the advance width for the particular glyph is used
+(which can differ considerably).
+
+Most users will neither need this feature nor notice a difference in
+existing documents (provided \e, and \e/ is used as advertised, namely for
+italic fonts only); its main goal is to improve image generation with
+grohtml.
+
+This is an experimental change, and feedback is welcome.
+.ULE
+.
+.SH 2
+tbl
+
+.ULS
+.LI
+Added global option `nospaces' to ignore leading and trailing spaces in data
+items.
+.ULE
+.
+.SH 2
+grolbp
+
+.ULS
+.LI
+The option \-w (\-\-linewidth) has been added (similar to other device
+drivers) to set the default line width.
+.ULE
+.
+.SH 2
+grn
+
+.ULS
+.LI
+Support for b-spline and Bezier curves has been added.
+.ULE
+.
+.SH 2
+groffer
+
+.ULS
+.LI
+New option \-\-shell to select the shell under which groffer shall run.
+.ULE
+.
+.SH 2
+Macro Packages
+
+.ULS
+.LI
+The string `Am' (producing an ampersand) has been added to mdoc for
+compatibility with NetBSD.
+
+.LI
+`.IX' is now deprecated for mom; you should use `.IQ' (Indent Quit)
+instead.
+
+.LI
+In mom, new inlines `FWD', `BCK', `UP', and `DOWN' deal with horizontal
+and vertical movements; please refer to contrib/mom/NEWS for more
+details.
+
+.LI
+New macro ENDNOTES_HDRFTR_CENTER for mom to better control headers.
+.ULE
+.
+.SH 2
+Miscellaneous
+
+.ULS
+.LI
+The `papersize' keyword in the DESC file now accepts multiple arguments.
+It is scanned from left to the right, and the first valid argument is used.
+This makes it possible to provide a fallback paper size.
+
+Example:
+
+.in 2m
+.ft C
+papersize /etc/papersize a4
+.ft P
+.in
+
+.LI
+A local font directory has been prepended to the default font path; it
+defaults to /usr/local/share/groff/site\-font.
+Similar to the normal font searching process, files must be placed into
+a \%dev\c
+.I XXX
+subdirectory, e.g.,
+
+.in 2m
+.ft C
+/usr/local/share/groff/site\-font/devps/FOO
+.ft P
+.in
+
+for a PostScript font definition file FOO.
+.ULE
+.
+.
+.SH
+NEWS VERSION 1.18
+.LP
+This section describes recent user-visible changes in groff.
+Bug fixes are not described.
+There are more details in the man pages.
+
+.ad c
+\s[+5]\m[red]\
+Please read the changes below regarding
+.ie '\*[.T]'html' \
+. URL #grotty grotty ,
+.el \
+. nop grotty,
+groff's tty frontend.\
+\m[]\s[0]
+.br
+.ad n
+.
+.SH 2
+Troff
+
+.ULS
+.LI
+Color support has been added to troff and pic (and to the device drivers
+grops, grodvi, grotty, and grohtml \[en] other preprocessors and drivers will
+follow).
+A new function `defcolor' defines colors; the escape sequence `\em' sets the
+drawing color, the escape sequence `\eM' specifies the background color for
+closed objects created with \eD'.\|.\|.\&' commands.
+`\em[]' and `\eM[]' switch back to the previous color.
+`\em' and `\eM' correspond to the new troff output command sets starting
+with `m' and `DF'.
+The device-specific default color is called `default' and can't be
+redefined.
+
+Use the `color' request to toggle the usage of colors (default is on); the
+read-only register `.color' is\~0 if colors are not active, and non-zero
+otherwise.
+
+The old `Df' output command is mapped onto `DFg'; all color output
+commands don't change the current font position (consequently, `Df'
+doesn't either).
+
+Outputting color can be disabled in troff and groff with the option\~\-c
+(it is always disabled in compatibility mode).
+See the section on grotty for the
+.ie '\*[.T]'html' \
+. URL #GROFF_NO_SGR GROFF_NO_SGR
+.el \
+. nop GROFF_NO_SGR
+environment variable also.
+
+For defining color components as fractions between 0 and\~1, a new
+scaling unit `f' has been defined: 1f\~=\~65536u.
+For testing whether a color is defined (with \&.if and \&.ie), a new
+conditional operator `m' is available.
+
+More details can be found in the groff_diff.7 manual page and in
+groff.texinfo.
+
+.LI
+Similar to \em and \eM, \ef[] switches back to the previous font.
+\efP (and \ef[P]) is still valid for backwards compatibility.
+
+.LI
+The new escape \eF is the same as `.fam'; \eF[] switches back to previous
+family \[en] \eF[P] selects family `P'.
+
+.LI
+Two new glyph symbols are available: `eu' is the official Euro symbol;
+`Eu' is a font-specific glyph variant.
+
+.LI
+The new glyph symbols `t+\-', `tdi', and `tmu' are textual variants of
+`+\-', `di', and `mu', respectively.
+
+.LI
+Latin-1 character 181 (PS name `mu', Unicode name U+00B5 MICRO SIGN) has
+got the troff glyph name `mc'.
+
+.LI
+\-Tutf8 is now available on EBCDIC hosts.
+
+.LI
+Strings can take arguments, using this syntax: \e*[foo\~arg1\~arg2\~.\|.\|.].
+Example:
+
+.in 2m
+.nf
+.ft C
+\&.ds xxx This is a \e\e$1 test.
+\e*[xxx nice]
+.ft P
+.fi
+.in
+
+.LI
+It is now possible to have whitespace between the first and second dot (or
+the name of the ending macro) to end a macro definition.
+Example:
+
+.in 2m
+.nf
+.ft C
+\&.de !
+\&..
+\&.
+\&.de foo
+\&.\& nop Hello, I\[aq]m \[aq]foo\[aq].
+\&.\& nop I will now define \[aq]bar\[aq].
+\&.\& de bar !
+\&.\& nop Hello, I\[aq]m \[aq]bar\[aq].
+\&.\& !
+\&..
+.ft P
+.fi
+.in
+
+.LI
+`.fn' is a new string-valued register which returns the (internal) real
+font name; styles and families are properly concatenated.
+
+.LI
+Three new read/write registers `seconds', `minutes', and `hours' contain
+the current time, set at start-up of troff.
+Use the `af' request to control their output format.
+
+.LI
+The new request `fchar' can be used to provide fallback characters.
+It has the same syntax as the `char' request; the only difference is that
+a character defined with `.char' hides the glyph with the same name in the
+current font, whereas a character defined with `.fchar' is checked only if
+the particular glyph isn't found in the current font.
+This test happens before checking special fonts.
+
+.LI
+In analogy to the `tmc' request, `.writec' is the same as `.write' but
+doesn't emit a final newline.
+
+.LI
+The new request `itc' is a variant of `.it' for which a line interrupted
+with \ec counts as one input line.
+
+.LI
+Two new requests `ds1' and `as1' which are similar to `ds' and `as' but
+with compatibility mode disabled during expansion of strings defined by
+them.
+
+.LI
+The syntax of the `substring' request has been changed:
+The first character in a string now has index\~0, the last character
+has index\~\-1.
+Note that this is an incompatible change.
+
+.LI
+To emit strings directly to the intermediate output, a new `output'
+request has been added; it is similar to `\e!' used at the top level.
+
+.LI
+`.hpf' has been extended.
+It can now handle most TeX hyphenation pattern files without
+modification.
+To do that, the commands \epatterns, \ehyphenation, and \eendinput are
+recognized.
+Please refer to groff_diff.7 for more information.
+
+.LI
+`hpfcode' is a new request to provide an input encoding mapping for the
+`hpf' request.
+
+.LI
+The new request `hpfa' appends hyphenation patterns (`hpf' replaces
+already existing patterns).
+
+.LI
+A new request `ami' (append macro indirect) has been added.
+The first and second parameter of `ami' are taken from string registers
+rather than directly; this very special request is needed to make
+`trace.tmac' independent from the escape character (which might even
+be disabled).
+
+.LI
+The new request `sizes' is similar to the `sizes' command in DESC files.
+It expects the same syntax; the data must be on a single line, and the
+final `0' can be omitted.
+
+.LI
+`trin' (translate input) is a new request which is similar to `tr' with
+the exception that the `asciify' request uses the character code (if
+any) before the character translation.
+Example:
+
+.in 2m
+.nf
+.ft C
+\&.trin ax
+\&.di xxx
+a
+\&.br
+\&.di
+\&.xxx
+\&.trin aa
+\&.asciify xxx
+\&.xxx
+.ft P
+.fi
+.in
+
+The result is `x\~a'.
+Using `tr', the result would be `x\~x'.
+
+.LI
+The request `pvs' isn't new, but hasn't been documented before.
+It adds vertical space after a line has been output.
+This makes it an alternative to the `ls' request to produce
+double-spaced documents.
+The read-only register `.pvs' holds the current amount of the
+post-vertical line space.
+
+.LI
+For compatibility with plan 9's troff, multiple `pi' requests are
+supported:
+
+.in 2m
+.nf
+.ft C
+\&.pi foo
+\&.pi bar
+.ft P
+.fi
+.in
+
+is now equivalent to
+
+.in 2m
+.ft C
+\&.pi foo | bar
+.ft P
+.in
+
+.LI
+A new escape sequence `\eO' is available to disable and enable glyph
+output.
+Please see groff_diff.man and groff.texinfo for more details.
+
+.LI
+The escapes `\e%', `\e&', `\e)', and `\e:' no longer cause an error in \eX;
+they are ignored now.
+Additionally `\e\~' (space) and `\e\[ti]' are converted to single space
+characters.
+
+.LI
+The default tab distance in nroff mode is now 0.8i\~(inches) to be compatible
+with Unix troff.
+
+.LI
+Using the latin-1 input character 0xAD (soft hyphen) for the `shc'
+request was a bad idea.
+Instead, it is now translated to `\e%', and the default hyphenation
+character is again \e[hy].
+Note that the glyph \e[shc] is not useful for typographic purposes;
+it only exists to have glyph names for all latin-1 characters.
+.ULE
+.
+.SH 2
+Macro Packages
+
+.ULS
+.LI
+.MTO df191@\:ncf.ca "Peter Schaffter"
+has contributed a new major macro package called `mom', mainly for
+non-scientific writers, which takes care of many typographic issues.
+It comes with a complete reference (in HTML format) and some examples.
+`mom' has been designed to format documents for PostScript output only.
+
+.LI
+Two macros `AT' (AT&T) and `UC' (Univ.\& of California) have been added to
+the man macros for compatibility with older BSD releases.
+
+.LI
+Both the man and mdoc macro packages now use the LL and LT registers for
+setting the line and title length, respectively (similar to those
+registers in the ms macro package).
+If not set on the command line or in a macro file loaded before the macro
+package itself, they default to 78n\~(ens) in nroff mode and
+6.5i\~(inches) in troff mode.
+
+.LI
+The `\-xwidth' specifier in the mdoc macro package has been removed.
+Its functionality is now integrated directly into `\-width'.
+Similarly, `\-column' has been extended to has this functionality also.
+
+.LI
+A new macro `Ex' has been added to the mdoc macro package to document an
+exit status.
+
+.LI
+`troff.man' has been split.
+Differences to Unix troff are now documented in the new man page
+`groff_diff.man'.
+
+.LI
+The PSPIC macro has been extended to work with DVI output (`pspic.tmac' is
+now automatically loaded for \-Tdvi), using a dvips special to load the EPS
+file.
+
+.LI
+The trace.tmac package now traces calls to `am' also.
+Additionally, it works in compatibility mode.
+
+.LI
+`troff.1' has been split.
+Differences to Unix troff are now documented in the new man page
+`groff_diff.7'.
+
+.LI
+`groff_mwww.7' has been renamed to `groff_www.7'.
+The file mwww.tmac has been removed.
+
+.LI
+`groff_ms.7' has been completely rewritten.
+It now contains a complete reference to the ms macros.
+
+.LI
+`groff_trace.7' documents the trace macro package.
+
+.LI
+Changes in www.tmac
+
+Note that HTML support is still in alpha change, so it is rather likely
+that both macro names and macro syntax will change.
+Some of the macros mentioned below aren't really new but haven't been
+documented properly before.
+
+.ULS
+.LI
+The following macros have been renamed:
+
+.in 2m
+.nf
+MAILTO \-> MTO
+IMAGE \-> IMG
+LINE \-> HR
+.fi
+.in
+
+.LI
+For consistency, the macros `URL', `FTL', and `MTO' now all have the
+address as the first parameter followed by the description.
+
+.LI
+By default, grohtml generates links to all section headings at the top
+of the document.
+Use the new `LK' macro to specify a different place.
+
+.LI
+For specifying the background color and a background image, use the
+new macros `BCL' and `BGIMG', respectively.
+
+.LI
+The macro `NHR' has been added; it suppresses the generation of top and
+bottom rules which grohtml emits by default.
+
+.LI
+The new macro `HX' determines the cut-off point for automatic link
+generation to headings.
+
+.LI
+The image position parameter names in `IMG' have been changed to `\-L',
+`\-R', and `\-C'.
+
+.LI
+New macro `PIMG' for inclusion of a PNG image (it automatically
+converts it into an EPS file if not \-Thtml is used).
+
+.LI
+New macro `MPIMG' for putting a PNG image into the left or right margin
+(it automatically converts it into an EPS file if not \-Thtml is used).
+
+.LI
+New macros `HnS', `HnE' to start and end a header line block.
+
+.LI
+New macro `DC' to produce dropcap characters.
+
+.LI
+New macro `HTL' to generate an HTML title line only but no H1 heading.
+
+.LI
+New macros `ULS' and `ULE' to start and end an unordered list.
+The new macro `LI' inserts a list item.
+.ULE
+.ULE
+.
+.
+.SH 2
+groff
+
+.ULS
+.LI
+The new command-line option `\-c' disables color output (which is always
+disabled in compatibility mode).
+.ULE
+.
+.
+.SH 2
+Nroff
+
+.ULS
+.LI
+Two new command-line options `\-c' and `\-C'; the former passes `\-c' to
+grotty (switching to the old output scheme); the latter passes `\-C' to
+groff (enabling compatibility mode).
+.ULE
+.
+.
+.SH 2
+pic
+
+.ULS
+.LI
+New keywords `color' (or `colour', `colored', `coloured'), `outline' (or
+`outlined'), and `shaded' are available.
+`outline' sets the color of the outline, `shaded' the fill color, and
+`color' sets both.
+Example:
+
+.in 2m
+.ft C
+circle shaded "green" outline "black" ;
+.ft P
+.in
+
+Filled arrows always use the outline color for filling.
+
+Color support for TeX output is not implemented yet.
+.ULE
+.
+.
+.SH 2
+Pic2graph
+
+.ULS
+.LI
+A new script contributed by
+.MTO esr@\:thyrsus.com "Eric S.\& Raymond" .
+It converts a PIC diagram into a cropped image.
+Since it uses gs and the PNM library, virtually all graphics formats
+are available for output.
+.ULE
+.
+.
+.SH 2
+Eqn2graph
+
+.ULS
+.LI
+A new script contributed by
+.MTO esr@\:thyrsus.com "Eric S.\& Raymond" .
+It converts an EQN diagram into a cropped image.
+Since it uses gs and the PNM library, virtually all graphics formats
+are available for output.
+.ULE
+.
+.
+.SH 2
+Groffer
+
+.ULS
+.LI
+A new script contributed by
+.MTO groff\-bernd.warken\-72@web.de "Bernd Warken" .
+It displays groff files and man pages on X and tty, taking care of most
+parameters automatically.
+.ULE
+.
+.
+.SH 2
+Grog
+
+.ULS
+.LI
+Documents using the mom macro package are recognized.
+.ULE
+.
+.
+.SH 2
+grops
+
+.ULS
+.LI
+Color support has been added.
+
+.LI
+A new option `\-p' is available to select the output paper size.
+It has the same syntax as the new `papersize' keyword in the DESC file.
+.ULE
+.
+.
+.SH 2
+Grodvi
+
+.ULS
+.LI
+By default,
+font sizes are now available in the range 5\[en]10000p\~(points),
+similar to PS fonts.
+If you want the old behaviour (i.e., font sizes at discrete values only),
+insert the following at the start of your document:
+
+.in 2m
+.nf
+.ft C
+\&.if \[aq]\e*[.T]\[aq]dvi\[aq] \e
+\&.\& sizes 500 600 700 800 900 1000 1095 1200 1400 1440 1600 \e
+\& 1728 1800 2000 2074 2200 2400 2488 2800 3600
+.ft P
+.fi
+.in
+
+.LI
+A new font file HBI (using cmssbxo10; this is slanted sans serif bold
+extended) has been added.
+
+.LI
+Two font families are now available: `T' and `H'.
+
+.LI
+EC and TC fonts have been integrated.
+Use `\-mec' (calling the file ec.tmac) to switch to them.
+Those fonts give a much better coverage of the symbols defined by groff
+than the CM fonts.
+
+Note that ec.tmac must be called before any language-specific files; it
+doesn't take care of hcode values.
+
+.LI
+Color support has been added.
+For drawing commands, colors are translated to gray values currently.
+.ULE
+.
+.
+.TAG grotty
+.SH 2
+Grotty
+
+.ULS
+.LI
+Color support has been added, using the SGR (ISO\~6429, sometimes called
+ANSI color) escape sequences.
+
+.LI
+SGR escape sequences are now used by default for underlining and bold
+printing also, no longer using the backspace character trick.
+To revert to the old behaviour, use the `\-c' switch.
+
+Note that you have to use the `\-R' option of `less' to make SGR escapes
+display correctly.
+On the other hand, terminal programs and consoles like `xterm' which
+support SGR sequences natively can directly display the output of grotty.
+Consequently, the options `\-b', `\-B', `\-u', and `\-U' work only in
+combination with `\-c' and are ignored silently otherwise.
+
+For the `man' program, it may be necessary to add the `\-R' option of
+`less' to the $PAGER environment variable (or $MANPAGER, depending on the
+used version of `man'); alternatively, you can use `man's `\-P' option (or
+adapt its configuration file accordingly).
+See
+.I man (1)
+for more details.
+
+.TAG GROFF_NO_SGR
+.LI
+If the environment variable GROFF_NO_SGR is set, SGR output is disabled,
+reverting to the old behaviour.
+
+.LI
+A new special \eX'tty:\~sgr\~n' has been added; if n is non-zero or missing,
+enable SGR output (the default).
+
+.LI
+If the new option `\-i' is used (only in SGR mode), grotty sends escape
+sequences to set the italic font attribute instead of the underline
+attribute for italic fonts.
+Note that many terminals don't have support for this (including xterm).
+.ULE
+.
+.
+.SH 2
+grohtml
+
+.ULS
+.LI
+Color support for glyphs has been added.
+
+.LI
+New option `\-h' to select the style of headings in HTML output.
+
+.LI
+New option `\-b' to set the background colour to white.
+
+.LI
+New options `\-a' and `\-g' to control the number of bits for anti-aliasing
+used for text and graphics, respectively.
+Default value is\~4; 0\~means no anti-aliasing.
+
+.LI
+groff character/glyph entities now map onto HTML\~4 character entities.
+.ULE
+.
+.
+.SH 2
+Grolbp
+
+.ULS
+.LI
+Valid paper sizes are now specified as with the new `papersize' keyword
+in the DESC file.
+Specifically, the old custom paper type format `custAAAxBBB' is no longer
+supported.
+.ULE
+.
+.
+.SH 2
+Miscellaneous
+
+.ULS
+.LI
+A new manual page `ditroff.7' is available.
+
+.LI
+The groff texinfo manual is now installed, together with a bunch
+of examples.
+
+.LI
+A new keyword `papersize' has been added to the DESC file format.
+Its argument is either
+
+.ULS
+.LI
+a predefined paper format (e.g., `A4' or `letter')
+
+.LI
+a file name pointing to a file which must contain a paper size
+specification in its first line (e.g., `/etc/papersize')
+
+.LI
+a custom paper size definition like `35c,4i'
+.ULE
+
+See
+.I groff_font (5)
+for more details.
+This keyword only affects the physical dimensions of the output medium;
+grops, grolj4, and grolbp use it currently.
+troff completely ignores it.
+.ULE
+.
+.LNE
+.
+.\" EOF
+.\" Local Variables:
+.\" mode: nroff
+.\" End:
+.\" vim: filetype=groff: