mirror of
https://github.com/freebsd/freebsd-src.git
synced 2024-12-01 21:33:04 +00:00
1263 lines
40 KiB
Plaintext
1263 lines
40 KiB
Plaintext
This file describes recent user-visible changes in groff. Bug fixes are not
|
|
described. There are more details in the man pages.
|
|
|
|
VERSION 1.17.2
|
|
==============
|
|
|
|
This is major bug-fixing release which should replace 1.17.1.
|
|
|
|
Troff
|
|
-----
|
|
|
|
o The `IMAGE' macro in www.tmac has changed: Now the optional 2nd parameter
|
|
gives the horizontal image location (left, centered, or right), and the
|
|
optional 3rd and 4th parameter the image dimensions.
|
|
|
|
VERSION 1.17.1
|
|
==============
|
|
|
|
This is mainly a bug-fixing release.
|
|
|
|
Troff
|
|
-----
|
|
|
|
o Two new requests `de1' and `am1' which are similar to `de' and `am' but
|
|
with compatibility mode disabled during expansion of macros defined by
|
|
them.
|
|
|
|
o Added request `brp'. This is the same as `\p'.
|
|
|
|
o Similar to other versions of troff, `.ns' now works in all diversions,
|
|
not only in the top-level one.
|
|
|
|
o New read-only number register `.ns'. Returns 1 if in no-space mode,
|
|
0 otherwise.
|
|
|
|
Nroff
|
|
-----
|
|
|
|
o Options -p (pic) and -t (tbl) added.
|
|
|
|
o The environment variable GROFF_BIN_PATH is now checked before PATH for
|
|
finding groff.
|
|
|
|
Grohtml
|
|
-------
|
|
|
|
o New option `-D dir' to specify a directory in which all images are placed.
|
|
|
|
o New option `-I stem' to specify an image name stame. If not given,
|
|
`grohtml-XXX' is used (`XXX' is the process ID).
|
|
|
|
VERSION 1.17
|
|
============
|
|
|
|
Groff
|
|
-----
|
|
|
|
o `-mFOO' now searches first for `FOO.tmac' and then for `tmac.FOO'. The
|
|
old behaviour has been changed to overcome problems with platforms which
|
|
have an 8+3 file name limit, and platforms which have other versions of
|
|
troff installed also. Additionally, all macro files have been renamed
|
|
using the latter scheme to avoid 8+3 name clashes.
|
|
|
|
o The new environment variable GROFF_BIN_PATH is checked for programs groff
|
|
is calling (preprocessors, troff, and output devices) before PATH. If not
|
|
set, it defaults to the directory where the groff binary is located.
|
|
Previously, it was PATH only. The nroff script only uses GROFF_BIN_PATH
|
|
to find the groff binary but passes both the GROFF_BIN_PATH and PATH
|
|
environment variable to groff.
|
|
|
|
Troff
|
|
-----
|
|
|
|
o The mdoc package has been completely rewritten, using the full power of
|
|
GNU troff to remove limitations of Unix troff (which is no longer
|
|
supported). Most important changes are:
|
|
|
|
. No argument limit.
|
|
. Almost all macros are parsed and callable (if it makes sense).
|
|
. `.Lb': prints library names
|
|
. `.Nm <punctuation>' now works as expected; `.Nm "" <punctuation>' has
|
|
been withdrawn.
|
|
. Updated `.St' command
|
|
. `.Fx': prints FreeBSD
|
|
. `.Ox': prints OpenBSD
|
|
. `.Bsx': prints BSD/OS
|
|
. `.Brq', `.Bro', `.Brc': brace enclosure macros
|
|
. `.Bd -centered': center lines
|
|
. `.Bl -xwidth <string>': interpret <string> and use the resulting width
|
|
. support for double-sided printing (-rD1 command line switch)
|
|
. support for 11pt and 12pt document sizes (-rS11, -rS12 command line
|
|
switches)
|
|
|
|
`groff_mdoc.man' replaces `groff_mdoc.samples.man'; it now completely
|
|
documents the mdoc package.
|
|
|
|
Great care has been taken to assure backwards compatibility. If you
|
|
encounter any abnormal results, please report them to bug-groff@gnu.org.
|
|
|
|
o A new command line option for the `man' macros (similar to the `mdoc'
|
|
package has been implemented: `-rcR=1' (now the default in nroff mode)
|
|
produces one single, very long page instead of multiple pages. `-rcR=0'
|
|
deactivates it.
|
|
|
|
o The `return' request has been added to return immediately from a macro.
|
|
|
|
o A new request `nop' (no operation) has been added which is similar to
|
|
`if 1'. For example,
|
|
|
|
.if t \{\
|
|
Hallo!
|
|
.\}
|
|
|
|
can now be written as
|
|
|
|
.if t \{\
|
|
. nop Hallo!
|
|
.\}
|
|
|
|
o `box' and `boxa' are two new requests which behave similarly to `di' and
|
|
`da' but don't include a partially filled line (which is restored after
|
|
ending the diversion).
|
|
|
|
o The `asciify' request has been extended to `unformat' space characters
|
|
and some other escape sequences also.
|
|
|
|
`\ ' is no longer unformatted as a space but remains an unpaddable,
|
|
unbreakable space character.
|
|
|
|
o The new `unformat' request is similar to `asciify' but only handles space
|
|
characters and tabs specially if the diversion is reread, retaining font
|
|
information. This makes it possible to reformat diversions; for example
|
|
the following
|
|
|
|
.ll 3i
|
|
.
|
|
a01 a02 a03 a04 a05 a06 a07 a08 a09 a10.
|
|
.
|
|
.box box1
|
|
.ev 1
|
|
.nf
|
|
\f[B]b01 b02 b03 b04 b05 b06 b07 b08 b09 b10.\f[P]
|
|
.br
|
|
.ev
|
|
.box
|
|
.
|
|
c01 c02 c03 c04 c05 c06 c07 c08 c09 c10.
|
|
.
|
|
.unformat box1
|
|
.box1
|
|
|
|
gives
|
|
|
|
a01 a02 a03 a04 a05 a06 a07
|
|
a08 a09 a10. c01 c02 c03 c04
|
|
c05 c06 c07 c08 c09 c10. b01
|
|
b02 b03 b04 b05 b06 b07 b08
|
|
b09 b10.
|
|
|
|
Without the `unformat' request, space characters are converted to word
|
|
space nodes which are no longer stretchable, and the result would be
|
|
|
|
a01 a02 a03 a04 a05 a06 a07
|
|
a08 a09 a10. c01 c02 c03 c04
|
|
c05 c06 c07 c08 c09 c10. b01
|
|
b02 b03 b04 b05 b06 b07 b08
|
|
b09 b10.
|
|
|
|
o The new request `linetabs' controls the `line-tabs' mode. In line-tabs
|
|
mode, tab distances are computed relative to the (current) output line.
|
|
Otherwise they are taken relative to the input line. For example, the
|
|
following
|
|
|
|
.ds x a\t\c
|
|
.ds y b\t\c
|
|
.ds z c
|
|
.ta 1i 3i
|
|
\*x
|
|
\*y
|
|
\*z
|
|
|
|
yields
|
|
|
|
a b c
|
|
|
|
In line-tabs mode, the same code gives
|
|
|
|
a b c
|
|
|
|
The new read-only number register `.linetabs' returns 1 if in line-tabs
|
|
mode, and 0 otherwise.
|
|
|
|
o Two new requests `tm1' and `tmc' have been added to improve writing
|
|
messages to the terminal. `tm1' is similar to `tm' but allows leading
|
|
whitespace. `tmc' is similar to `tm1' but doesn't emit a final newline.
|
|
|
|
o A new request `dei' (define indirect) has been added. The first and
|
|
second parameter of `dei' 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).
|
|
|
|
o It is now possible to save and restore the escape character with two new
|
|
requests `ecs' and `ecr'.
|
|
|
|
o The new escape sequence \B'...' is an analogon to `\A': If the string
|
|
within the delimiters is a valid numeric expression, return character `1',
|
|
and `0' otherwise.
|
|
|
|
o The new escape sequence `\:' inserts a zero-width break point. This is
|
|
similar to `\%' but without a soft hyphen character.
|
|
|
|
o The `tr' request can now map characters onto `\~'.
|
|
|
|
o Calling the `fam' request without an argument switches back to the
|
|
previous font family.
|
|
|
|
o The new read-only register `.int' is set to a positive value if the last
|
|
output line is interrupted (i.e., if the input line contains `\c').
|
|
|
|
o The `writem' request is not new, but hasn't been documented before. This
|
|
is similar to `write' but instead of a string the contents of a given
|
|
macro or string is written to a stream.
|
|
|
|
o The read/write number register `hp' to get/set the current horizontal
|
|
position relative to the input line isn't new but hasn't been documented
|
|
properly before.
|
|
|
|
o `\X' and `\Y' are now transparent for end-of-sentence recognition.
|
|
|
|
o The `cu' request in nroff mode now works as documented (i.e., it
|
|
underlines spaces also).
|
|
|
|
Grog
|
|
----
|
|
|
|
o The grog script now works in non-compatibility mode also (which is the
|
|
default). As usual, use the `-C' option to activate compatibility mode.
|
|
|
|
Grops
|
|
-----
|
|
|
|
A new option `-P' resp. a new environment variable `GROPS_PROLOGUE' has been
|
|
added to select a different prologue file.
|
|
|
|
The effect of the former `-mpsnew' option to access more Type 1 characters
|
|
is now the default and no longer available. To get the old behaviour (i.e.,
|
|
emulation of some glyphs by composition) use `-mpsold'.
|
|
|
|
Miscellaneous
|
|
-------------
|
|
|
|
o For security reasons the following changes have been done:
|
|
|
|
. The tmac.safer file has been replaced with a built-in solution; .open,
|
|
.opena, .pso, .sy, and .pi are completely disabled in safer mode (which
|
|
is the default); to enable these requests the `-U' command line flag
|
|
must be used.
|
|
|
|
. Files specified with the .mso request or given with the `-m' command
|
|
line option, and hyphenation patterns loaded with `.hpf' are no longer
|
|
searched in the current directory by default (besides the usual tmac
|
|
path). Instead, the home directory is used. To add the current
|
|
directory, either use the `-U' or `-M' command line option or set the
|
|
GROFF_TMAC_PATH environment variable to an appropriate value.
|
|
|
|
. troffrc, troffrc-end, and eqnrc are neither searched in the current nor
|
|
in the home directory (even if -U is given). Use -M or GROFF_TMAC_PATH
|
|
to change that.
|
|
|
|
. Similarly, the current directory is no longer part of the font path.
|
|
Use the `-F' command line option or the GROFF_FONT_PATH environment
|
|
variable if you really need the current directory.
|
|
|
|
o groff now installs its data files into /usr/local/share/groff/<version> by
|
|
default, following the GNU standard. Additionally, a local tmac directory
|
|
(by default /usr/local/share/groff/site-tmac) is scanned before the
|
|
standard tmac directory. Wrapper files for system-specific macro packages
|
|
(if necessary) are put into /usr/local/lib/groff/site-tmac; this directory
|
|
is searched before the local tmac directory.
|
|
|
|
o All programs now have option `-v' to show the version number; they exit
|
|
immediately afterwards, following the GNU standards. Additionally,
|
|
`--version' and `--help' have been added, doing the obvious actions.
|
|
|
|
VERSION 1.16.1
|
|
==============
|
|
|
|
Bug fixes only; no user-visible changes.
|
|
|
|
VERSION 1.16
|
|
============
|
|
|
|
Groff
|
|
-----
|
|
|
|
The anachronism of calling the man macro package with `-man' has been fixed;
|
|
now you can say `-m man' also. The same is true for `ms', `me', `markup',
|
|
`mandoc', and `mdoc'.
|
|
|
|
A new switch `-g' for calling `grn' is available.
|
|
|
|
A new switch `-G' for calling `grap' is available.
|
|
|
|
EBCDIC support for tty devices has been added. On such hosts, IBM code page
|
|
1047 is available with -Tcp1047 instead of -Tascii and -Tlatin1 (and, for
|
|
the moment, -Tutf8). Note that non-tty devices are not yet supported (but
|
|
installed).
|
|
|
|
Troff
|
|
-----
|
|
|
|
A new command line option to the `man' macros is available: `-rSxx' (with
|
|
`xx' either 10, 11, or 12) to set the base document font size to `xx'
|
|
points. Additionally, `.SH' now produces larger headings than `.SS'.
|
|
|
|
To solve a problem with the .PSPIC macro which needs the `-U' switch of
|
|
troff to access an external program (psbb), a new request .psbb is now
|
|
available to get the bounding box of a PostScript image file. The values
|
|
(in PostScript units) are returned in the new read-only number registers
|
|
`llx', `lly', `urx', and `ury'. Consequently, .PSPIC has been adapted to
|
|
use the new request, and the psbb program has been removed.
|
|
|
|
A new predefined writable number register, `year', has been added. It
|
|
contains the current year.
|
|
|
|
A new read-only register, `.Y', has been added. It contains the revision
|
|
number of the groff package.
|
|
|
|
`\fP' now behaves as expected in situations like the following where the
|
|
font `foo' is undefined:
|
|
|
|
.B bold text
|
|
normal text \f[foo]bar\fP normal text
|
|
|
|
Previously, the text after \fP appeared as bold.
|
|
|
|
The `substring' request is not new, but hasn't been documented before.
|
|
|
|
The predefined `.T' string register (which holds the current output device)
|
|
is not new, but hasn't been documented before.
|
|
|
|
A new request `length' computes the length of a string and returns it in
|
|
a number register.
|
|
|
|
The macro files `tmac.a4' (for specifying A4 paper format) and `tmac.trace'
|
|
(a debugging aid) are now installed also.
|
|
|
|
A new resource file, `troffrc-end', is now available. It is invoked after
|
|
all user-specified macros. Currently used by the html device to include
|
|
tmac.html; thus no need for users to specify -mhtml anymore.
|
|
|
|
The soft hyphen character now has a glyph name: `shc'.
|
|
|
|
The latin-1 character 173 (PS name `periodcentered') has got the troff glyph
|
|
name `pc' and is no longer intermixed with the symbol character `md' (PS
|
|
name `mathdot').
|
|
|
|
ASCII character 34 (PS name `quotedbl') has got the troff glyph name `dq'
|
|
(which is an alias to character `"').
|
|
|
|
ASCII character 39 (PS name `quoteright') has got the troff glyph name `cq'
|
|
(which is an alias to character "'").
|
|
|
|
Some additions to the font description files have been implemented for
|
|
better support of HTML output:
|
|
|
|
The new format of lines in the `charset' subsection of font description
|
|
files is
|
|
|
|
name metrics type code [entity_name] [-- comment]
|
|
|
|
Currently, only the font description files in devhtml use the optional
|
|
entity_name string to define glyph entities in HTML. Everything after the
|
|
entity_name field is ignored; in case this field isn't used, two hyphen
|
|
characters are now necessary to start a comment.
|
|
|
|
Two new requests are available in DESC files (currently used only with
|
|
grohtml):
|
|
|
|
use_charnames_in_special
|
|
This command indicates that troff should encode named characters
|
|
inside special commands.
|
|
|
|
pass_filenames
|
|
requests that troff tells the driver the source file name being
|
|
processed. This is achieved by another tcommand: `F filename'.
|
|
|
|
Grotty
|
|
------
|
|
|
|
Bruno Haible <haible@clisp.cons.org> contributed support for UTF8 output.
|
|
|
|
Grohtml
|
|
-------
|
|
|
|
Added .LINE macro to tmac.arkup.
|
|
|
|
The obsolete `.LINK' macro has been removed.
|
|
|
|
.URL, .FTP, and .MAILTO macros now accept an optional third argument which
|
|
will be immediately appended to the second argument (to be used with
|
|
punctuation, for example).
|
|
|
|
Grodvi
|
|
------
|
|
|
|
The font size 11pt has been changed to 10.95pt (as used in LaTeX 2e).
|
|
|
|
A new font file CWI (using cmitt10; this is typewriter italic) has been
|
|
added.
|
|
|
|
Grolbp
|
|
------
|
|
|
|
A new driver for Canon CAPSL printers (LBP-4 and LBP-8 series laser
|
|
printers). This code has been contributed by Francisco Andres Verdu
|
|
<pandres@dragonet.es>.
|
|
|
|
Grn
|
|
---
|
|
|
|
A new preprocessor to process gremlin pictures. It is based on the
|
|
original Berkeley implementation of grn, written by David Slattengren
|
|
and Barry Roitblat, and has been adapted to groff by Daniel Senderowicz
|
|
<daniel@synchrods.com> and Werner Lemberg <wl@gnu.org>.
|
|
|
|
Pic
|
|
---
|
|
|
|
Added the `srand' command to set the seed for a new sequence of
|
|
pseudo-random numbers to be returned by `rand'.
|
|
|
|
Gxditview
|
|
---------
|
|
|
|
Simplified installation: The Imakefile will now be configured (by groff's
|
|
configure script).
|
|
|
|
Documentation
|
|
-------------
|
|
|
|
Three new man pages are available: groff_tmac.5 (documenting how troff macros
|
|
are accessed and where they are found), groff.7 (a short reference of the GNU
|
|
roff language), and roff.7 (a general survey on GNU troff).
|
|
|
|
Miscellaneous
|
|
-------------
|
|
|
|
A port to win32 (for use with Microsoft Visual C++ 6.0) is now part of the
|
|
distribution. It has been contributed by Blake McBride
|
|
<blake@florida-software.com>.
|
|
|
|
More information about programs, macros, documentation, etc., which is
|
|
related to groff has been collected in the file `MORE.STUFF'.
|
|
|
|
VERSION 1.13, 1.14, 1.15
|
|
========================
|
|
|
|
Bug fixes only; no user-visible changes.
|
|
|
|
VERSION 1.12
|
|
============
|
|
|
|
Finally, there are new maintainers for groff. Mailing lists and a CVS
|
|
repository are available also. See the file README for details. Not
|
|
all reported bug could be fixed, so please send mails again if
|
|
something is still not working.
|
|
|
|
Most of the installation problems should have vanished now (most
|
|
notably the $(tmac_wrap) bug).
|
|
|
|
There is now a man page called groff_man.man which documents the
|
|
basics of the -man macros. It has been originally written by Susan
|
|
G. Kleinmann <sgk@debian.org>.
|
|
|
|
A (still incomplete) groff reference manual in texinfo format
|
|
originally contributed by Trent A. Fisher <trent@gnurd.portland.or.us>.
|
|
|
|
me.man and msafer.man have been renamed to groff_me.man
|
|
resp. groff_msafer.man for consistency.
|
|
|
|
Default strings for macros in doc-common resp. tmac.an no longer
|
|
contain the word `UNIX'.
|
|
|
|
groff should now be Y2k safe (fixes contributed by Paul Eggert
|
|
<eggert@twinsun.com>).
|
|
|
|
Following the GNU standards, groff will now use the prefix
|
|
`/usr/local/' as the default instead of replacing an existent groff
|
|
binary.
|
|
|
|
groff, troff, nroff, and pic now support the -U flag to activate unsafe
|
|
behaviour (without -msafer); the -S flag for using the -msafer macros
|
|
is now the default.
|
|
|
|
Grohtml
|
|
-------
|
|
|
|
This is a new output device for producing HTML output contributed by
|
|
Gaius Mulley <gaius@glam.ac.uk>. It is still very alpha but has been
|
|
included into the distribution so that a lot of people have a chance
|
|
to test it. Bug reports are highly welcome.
|
|
|
|
Grolj4
|
|
------
|
|
|
|
Duplex printing support has been contributed by Jeffrey Copeland
|
|
<jeff@opennt.com>.
|
|
|
|
Soelim
|
|
------
|
|
|
|
Added -I option for defining include paths (patch contributed by Peter
|
|
Miller <peterm@jna.com.au>).
|
|
|
|
Gxditview
|
|
---------
|
|
|
|
Fallback resources added (patch contributed by Larry Jones
|
|
<larry.jones@sdrc.com>).
|
|
|
|
Will now support 8 gray levels.
|
|
|
|
mm
|
|
--
|
|
|
|
New version 1.32 (contributed by Joergen Haegg <jh@axis.com>).
|
|
|
|
VERSION 1.11
|
|
============
|
|
|
|
Complete documentation for pic is now in the file doc/pic.ms. It was
|
|
contributed by Eric S. Raymond, <esr@thyrsus.com>, who is emphatically
|
|
*not* volunteering to take over groff as he is way overworked with
|
|
half a dozen other projects.
|
|
|
|
VERSION 1.10
|
|
============
|
|
|
|
The directory where data files are installed has been changed from
|
|
/usr/local/lib/groff to /usr/local/share/groff to comply with the
|
|
latest GNU coding standards.
|
|
|
|
By default groff programs with Unix equivalents are installed with a
|
|
"g" prefix unless there is an existing (non-groff) troff installation.
|
|
|
|
A new approach is used to make system macro packages available to
|
|
groff. Instead of simply including /usr/lib/tmac in the list of
|
|
directories searched by groff, the installation process creates for
|
|
each system macro package a wrapper macro package in the groff macro
|
|
directory that references the system macro package. The groff macro
|
|
packages are now installed with a leading "g" prefix if there is a
|
|
system version of the same macro package, and otherwise without the
|
|
"g" prefix, with the exception that the groff version of -me which is
|
|
always installed as -me.
|
|
|
|
There is a new device, lj4, for the HP LaserJet 4 (and PCL5
|
|
compatibles).
|
|
|
|
Groff
|
|
-----
|
|
|
|
groff has a -S option that prevents the use of unsafe features in pic
|
|
and troff. This uses a new -S option of pic and the -msafer macros
|
|
for troff.
|
|
|
|
Troff
|
|
-----
|
|
|
|
The `blm' request specifies a macro to be invoked when a blank line is
|
|
encountered.
|
|
|
|
Pic
|
|
---
|
|
|
|
A -S (safer) option disables the sh command.
|
|
|
|
Grops
|
|
-----
|
|
|
|
The -m option enables manual feed.
|
|
|
|
VERSION 1.09
|
|
============
|
|
|
|
\(rn will now produce a character that has the traditional metrics,
|
|
and will form corners with \(ul and \(br. This means that it will not
|
|
align properly with \(sr. Instead there's a new character
|
|
\[radicalex] which aligns with \(sr; this is used by eqn for doing
|
|
square roots.
|
|
|
|
Troff
|
|
-----
|
|
|
|
The `pso' request allows you to read from the standard output of a
|
|
command.
|
|
|
|
Grops
|
|
-----
|
|
|
|
The PSPIC macro has options to allow the horizontal alignment of the
|
|
graphic to be specified.
|
|
|
|
VERSION 1.08
|
|
============
|
|
|
|
Troff
|
|
-----
|
|
|
|
The escape sequence \V[xxx] will interpolate the value of the
|
|
environment variable xxx.
|
|
|
|
Tbl
|
|
---
|
|
|
|
The decimalpoint option can be used to specify the character to be
|
|
recognized as the decimal point character in place of the default
|
|
period.
|
|
|
|
VERSION 1.07
|
|
============
|
|
|
|
Groff
|
|
-----
|
|
|
|
The environment variable GROFF_COMMAND_PREFIX can be used to control
|
|
whether groff looks for `gtroff' or `troff' (similarily for the
|
|
preprocessors.)
|
|
|
|
Troff
|
|
-----
|
|
|
|
Multilingual hyphenation is supported by new `hpf' and `hla' requests,
|
|
and by a `\n[.hla]' number register. The -H option has been removed.
|
|
Files of hyphenation patterns can have comments.
|
|
|
|
When a font cannot be found, troff gives a warning (of type `font',
|
|
enabled by default) instead of an error.
|
|
|
|
There's a new request `trnt' that's like `tr' except that it doesn't
|
|
apply to text transparently throughput into a diversion with \!.
|
|
|
|
Tbl
|
|
---
|
|
|
|
There is a `nokeep' option which tells tbl not to use diversions to
|
|
try to keep the table on one page.
|
|
|
|
Eqn
|
|
---
|
|
|
|
Setting the parameter `nroff' to a non-zero value causes `ndefine' to
|
|
behave like `define' and `tdefine' to be ignored. This is done by
|
|
eqnrc when the current device is ascii or latin1. There's a `neqn'
|
|
script that just does `eqn -Tascii'.
|
|
|
|
Grotty
|
|
------
|
|
|
|
grotty uses whatever page length was specified using the `pl' request
|
|
rather than using the paperlength command in the DESC file. The
|
|
paperwidth command in the DESC file is also ignored.
|
|
|
|
VERSION 1.06
|
|
============
|
|
|
|
The programs in groff that have Unix counterparts can now be installed
|
|
without a leading `g' prefix. See the `g' variable in the Makefile.
|
|
|
|
The g?nroff script simulates the nroff command using groff.
|
|
|
|
New special characters \(+h, \(+f, \(+p, \(Fn, \(Bq, \(bq, \(aq, \(lz,
|
|
\(an. See groff_char(7).
|
|
|
|
^L is now a legal input character.
|
|
|
|
Groff
|
|
-----
|
|
|
|
The Xps pseudo-device has disappeared. Instead there is a new -X
|
|
option that tells groff to use gxditview instead of the usual
|
|
postprocessor. (So instead of -TXps, use -XTps or just -X if your
|
|
default device is ps.)
|
|
|
|
The postprocessor to be used for a particular device is now specified
|
|
by a `postpro' command in the DESC file rather than being compiled
|
|
into groff. Similarly the command to be used for printing (with the
|
|
-l option) is now specified by a `print' command in the DESC file.
|
|
|
|
The groff command no longer specifies eqnchar as an input file for
|
|
eqn. Instead eqn automatically loads a file `eqnrc'. The groff
|
|
command no longer passes the -D option to eqn. Instead eqnrc sets the
|
|
draw_lines parameter.
|
|
|
|
The groff command no longer tells troff to load a device-specific
|
|
macro file. This is handled instead by the `troffrc' file, which is
|
|
always loaded by troff.
|
|
|
|
The shell script version of groff has been removed.
|
|
|
|
Troff
|
|
-----
|
|
|
|
The `rchar' request removes a character definition established with `char'.
|
|
|
|
Compatibility mode is disabled and the escape character is set to `\'
|
|
while a character definition is being processed.
|
|
|
|
The `\#' escape sequence is like `\"' except that the terminating
|
|
newline is ignored.
|
|
|
|
The `shc' request tells troff which character to insert (instead of
|
|
the default \(hy) when a word is hyphenated at a line break.
|
|
|
|
A font name of 0 (zero) in the DESC file will cause no font to be
|
|
mounted on the corresponding font position. This is useful for
|
|
arranging that special fonts are mounted on positions on which users
|
|
are not likely explicitly to mount fonts. All groff devices now avoid
|
|
initially mounting fonts on positions 5-9.
|
|
|
|
The `do' request allows a single request or macro to be interpreted
|
|
with compatibility mode disabled.
|
|
|
|
troff automatically loads a file `troffrc' before any other input file.
|
|
This can be prevented with the -R option. This file is responsible
|
|
for loading the device-specific macros.
|
|
|
|
Pic
|
|
---
|
|
|
|
The -x option has been removed and a -n option has been added. By
|
|
default, pic now assumes that the postprocessor supports groff
|
|
extensions. The -n option tells pic to generate output that works
|
|
with ditroff drivers. The -z option now applies only to TeX mode.
|
|
|
|
The -p option has been removed. Instead if the -n option is not
|
|
specified, pic generates output that uses \X'ps: ...' if the \n(0p
|
|
register is non-zero and tmac.ps sets this register to 1.
|
|
|
|
In places where you could 1st or 5th you can now say `i'th or `i+1'th
|
|
(the quotes are required).
|
|
|
|
Eqn
|
|
---
|
|
|
|
Eqn now automatically reads a file `eqnrc' from the macro directory.
|
|
This performs the same role that the eqnchar files used to. This can
|
|
be prevented by the -R option.
|
|
|
|
Setting the draw_lines parameter to a non-zero value causes lines to
|
|
be drawn using \D rather than \l. The -D option is now obsolete.
|
|
|
|
`uparrow', `downarrow' and `updownarrow' can be used with `left' and
|
|
`right'.
|
|
|
|
The amount of extra space added before and after lines containing
|
|
equations can be controlled using the `body_height' and `body_depth'
|
|
parameters.
|
|
|
|
Grops
|
|
-----
|
|
|
|
Font description files have been regenerated from newer AFM files.
|
|
You can get access to the additional characters present in the text
|
|
fonts in newer PostScript printers by using -mpsnew.
|
|
|
|
The default value of the -b option is specified by a `broken' command
|
|
in the DESC file.
|
|
|
|
With the -g option, grops will generate PostScript code that guesses
|
|
the page height. This allows documents to be printed on both letter
|
|
(8.5x11) and A4 paper without change.
|
|
|
|
Grodvi
|
|
------
|
|
|
|
ISO Latin-1 characters are available with -Tdvi. Format groff_char(7)
|
|
with groff -Tdvi for more information.
|
|
|
|
Grotty
|
|
------
|
|
|
|
The -mtty-char macros contain additional character definitions for
|
|
use with grotty.
|
|
|
|
Macros
|
|
------
|
|
|
|
In previous releases the groff -me macros treated the $r and $R number
|
|
registers in a way that was incompatible with the BSD -me macros. The
|
|
reason for this was that the approach used by the BSD -me macros does
|
|
not work with low resolution devices such as -TX75 and -TX100.
|
|
However, this caused problems with existing -me documents. In this
|
|
release, the vertical spacing is controlled by the $v and $V registers
|
|
which have the same meaning as $r and $R in earlier groff releases.
|
|
In addition, if the $r or $R register is set to a value that would be
|
|
correct for for the BSD -me macros and a low resolution device is not
|
|
being used, then an appropriate value for the $v or $V register will
|
|
be derived from the $r or $R register.
|
|
|
|
The groff -me macros work with -C and (I think) with Unix troff.
|
|
|
|
For backward compatibility with BSD -me, the \*{ and \*} strings are
|
|
also available as \*[ and \*]. Of course, \*[ will only be usable
|
|
with -C.
|
|
|
|
The \*T string has been deleted. Use \*(Tm instead.
|
|
|
|
Xditview
|
|
--------
|
|
|
|
The `n', Space and Return keys are bound to the Next Page action. The
|
|
`p', BackSpace and Delete keys are bound to the Previous Page action.
|
|
The `q' key is bound to the Quit action.
|
|
|
|
The `r' key is bound to a rerasterize action that reruns groff, and
|
|
redisplays the current page.
|
|
|
|
VERSION 1.05
|
|
============
|
|
|
|
Pic
|
|
---
|
|
|
|
There is a alternative assignment operator `:=' which interacts
|
|
differently with blocks.
|
|
|
|
There is a new command `command', which allows the values of variables
|
|
to be passed through to troff or TeX.
|
|
|
|
The `print' command now accepts multiple arguments.
|
|
|
|
String comparison expressions (using `==' or `!=') are allowed in more
|
|
contexts.
|
|
|
|
Grotty
|
|
------
|
|
|
|
Horizontal and vertical lines drawn with \D'l ...' will be rendered
|
|
using -, | and + characters. This is intended to give reasonable
|
|
results with boxed tables. It won't work well with pic.
|
|
|
|
Macros
|
|
------
|
|
|
|
The -mdoc macros have been upgraded to the version in the second
|
|
Berkeley networking release. This version is not completely
|
|
compatible with earlier versions; the old version is still available
|
|
as -mdoc.old. The grog script has been enhanced so that it can
|
|
usually determine whether a document requires the old or new versions.
|
|
|
|
With -TX75, -TX100 and -TXps, the PSPIC macro will produce a box
|
|
around where the picture would appear with -Tps.
|
|
|
|
VERSION 1.04
|
|
============
|
|
|
|
An implementation of the -mm macros is included.
|
|
|
|
The directory in which temporary files are created can be controlled
|
|
by setting the GROFF_TMPDIR or TMPDIR environment variables.
|
|
|
|
Pic
|
|
---
|
|
|
|
Some MS-DOS support (see pic/make-dos-dist).
|
|
|
|
Grops
|
|
-----
|
|
|
|
There are two new \X commands (\X'ps: invis' and \X'ps: endinvis')
|
|
which make it possible to have substitute characters that are
|
|
displayed when previewing with -TXps but ignored when printing with
|
|
grops.
|
|
|
|
Xditview
|
|
--------
|
|
|
|
Support for scalable fonts.
|
|
|
|
VERSION 1.03
|
|
============
|
|
|
|
No changes other than bug fixes.
|
|
|
|
VERSION 1.02
|
|
============
|
|
|
|
There is an implementation of refer and associated programs. groff -R
|
|
preprocesses with grefer; no mechanism is provided for passing
|
|
arguments to grefer because most grefer options have equivalent
|
|
commands which can be included in the file. grog also supports refer.
|
|
|
|
There is an alternative perl implementation of the grog script.
|
|
|
|
The code field in lines in the charset section of font description
|
|
files is now allowed to contain an arbitrary integer (previously it
|
|
was required to lie between 0 and 255). Currently grops and grodvi
|
|
use only the low order 8 bits of the value. Grodvi will use the
|
|
complete value; however, this is unlikely to be useful with
|
|
traditional TeX tools (.tfm files only allow 8 bit character codes.)
|
|
|
|
Left and right double quotes can be obtained with \(lq and \(rq
|
|
respectively.
|
|
|
|
There is a new program called pfbtops which translates PostScript
|
|
fonts in pfb format to ASCII.
|
|
|
|
A slightly modified version of the Berkeley tmac.doc is included.
|
|
|
|
Troff
|
|
-----
|
|
|
|
In long escape names the closing ] is now required to be at the same
|
|
input level as the opening [.
|
|
|
|
The \A'S' escape sequence returns 1 or 0 according as S is or is not
|
|
suitable for use as a name.
|
|
|
|
\~ produces an unbreakable space that can be stretched when the line
|
|
is adjusted.
|
|
|
|
The `mso' request is like the `so' request except that it searches for
|
|
the file in the same directories in which tmac.X is searched for when
|
|
the -mX option is given.
|
|
|
|
The escape sequence `\R' is similar to the `nr' request.
|
|
|
|
Eqn
|
|
---
|
|
|
|
A new `special' primitive allows you to add new types of unary
|
|
constructs by writing a troff macro.
|
|
|
|
Pic
|
|
---
|
|
|
|
The implementation no longer uses gperf.
|
|
|
|
Grops
|
|
-----
|
|
|
|
The compile-time -DBROKEN_SPOOLER option has been replaced by a
|
|
BROKEN_SPOOLER_FLAGS option. This allows more precise control over
|
|
how grops should workaround broken spoolers and previewers. There is
|
|
a new -b option that can change this at run-time.
|
|
|
|
Grops now generates PostScript that complies with version 3.0 of the
|
|
Document Structuring Convention.
|
|
|
|
The resource management component of grops (the part that deals with
|
|
imported documents and downloadable fonts) has been rewritten and now
|
|
supports version 3.0 of the Document Structuring Conventions. The
|
|
%%DocumentFonts comment is no longer supported; you must use the
|
|
%%Document{Needed,Supplied}{Fonts,Resources} comments instead
|
|
(or as well.)
|
|
|
|
tmac.psatk contains some macros that support the mechanism used by the
|
|
Andrew Toolkit for including PostScript graphics in troff documents.
|
|
|
|
Xditview
|
|
--------
|
|
|
|
Parts of xditview have been rewritten so that it can be used with the
|
|
output of gtroff -Tps. groff -TXps will run gtroff -Tps with
|
|
gxditview.
|
|
|
|
There is a new menu entry `Print' which brings up a dialog box for
|
|
specifying a command with which the file being previewed should be
|
|
printed.
|
|
|
|
Xditview now uses imake.
|
|
|
|
VERSION 1.01
|
|
============
|
|
|
|
The groff command now understands the gtroff `-a' and `-i' options.
|
|
|
|
With the `m' and `n' scale indicators, the scale factor is rounded
|
|
horizontally before being applied. This makes (almost) no difference
|
|
for devices with `hor' equal to 1, but it makes groff with -Tascii or
|
|
-Tlatin1 behave more like nroff in its treatment of these scale
|
|
indicators. Accordingly tmac.tty now calls the `nroff' request so
|
|
that the `n' condition will be true.
|
|
|
|
The device-specific macros (tmac.ps, tmac.dvi, tmac.tty and tmac.X)
|
|
have been made to work at least somewhat with -C. In particular the
|
|
special characters defined by these macros now work with -C.
|
|
|
|
groff -Tdvi -p will now pass pic the -x flag; this will enable filling
|
|
of arrowheads and boxes, provided that your dvi driver supports the
|
|
latest version of the tpic specials.
|
|
|
|
Eqn
|
|
---
|
|
|
|
There is a new `-N' option that tells eqn not to allow newlines in
|
|
delimiters. This allows eqn to recover better from missing closing
|
|
delimiters. The groff command will pass on a `-N' option to eqn.
|
|
|
|
Grops
|
|
-----
|
|
|
|
You can now use psfig with grops. See the file ps/psfig.diff. I do
|
|
not recommend using psfig for new documents.
|
|
|
|
The command \X'ps: file F' is similar to \X'ps: exec ...' except that
|
|
the PostScript code is read from the file F instead of being contained
|
|
within the \X command. This was added to support psfig.
|
|
|
|
Grodvi
|
|
------
|
|
|
|
There are font files HB and HI corresponding to cmsssbx10 and cmssi10.
|
|
|
|
Macros
|
|
------
|
|
|
|
The groff -me macros now work with the -C option. As a result, they
|
|
may also work with Unix nroff/troff.
|
|
|
|
In -me, the $r and $R number registers now contain the line spacing as
|
|
a percentage of the pointsize expressed in units (normally about 120).
|
|
The previous definition was useless with low resolution devices such
|
|
as X75 and X100.
|
|
|
|
VERSION 1.00
|
|
============
|
|
|
|
A -ms-like macro-package is now included.
|
|
|
|
The name for the Icelandic lowercase eth character has been changed
|
|
from \(-d to \(Sd.
|
|
|
|
Troff
|
|
-----
|
|
|
|
There is a new request `nroff', which makes the `n' built-in condition
|
|
true and the `t' built-in condition false; also a new request `troff'
|
|
which undoes the effect of the `nroff' request. This is intended only
|
|
for backward compatibility: it is usually better to test \n(.H or
|
|
\n(.V or to use the `c' built-in condition.
|
|
|
|
The \R escape sequence has been deleted. Use \E instead.
|
|
|
|
There are `break' and `continue' requests for use with the `while'
|
|
request.
|
|
|
|
There is a request `hym' that can ensure that when the current
|
|
adjustment mode is not `b' a line will not be hyphenated if it is no
|
|
more than a given amount short, and a request `hys' that can ensure
|
|
that when the current adjustment mode is `b' a line will not be
|
|
hyphenated if it can be justified by adding no more than a given
|
|
amount of extra space to each word space.
|
|
|
|
There is a request `rj' similar to `ce' that right justifies lines.
|
|
|
|
A warning of type `space' will be given when a call is made to an
|
|
undefined request or macro with a name longer than two characters, and
|
|
the first two characters of the name make a name that is defined.
|
|
This is intended to find places where a space has been omitted been a
|
|
request or macro and its argument. This type of warning is enabled by
|
|
default.
|
|
|
|
Pic
|
|
---
|
|
|
|
A comma is permitted between the arguments to the `reset' command.
|
|
|
|
For use with TeX, there is a new `-c' option that makes gpic treat
|
|
lines beginning with `.' in a way that is more compatible with tpic
|
|
(but ugly).
|
|
|
|
Eqn
|
|
---
|
|
|
|
It is no longer necessary to add `space 0' at the beginning of
|
|
complicated equations inside pictures.
|
|
|
|
`prime' is now treated as an ordinary character, as in Unix eqn. The
|
|
previous behaviour of `prime' as an operator can now be obtained using
|
|
`opprime'.
|
|
|
|
Xditview
|
|
--------
|
|
|
|
There are two new devices X75-12 and X100-12 which are the same as X75
|
|
and X100 except that they are optimized for documents that use mostly
|
|
12 point text.
|
|
|
|
VERSION 0.6
|
|
===========
|
|
|
|
The installation process has been refined to make it easy for you to
|
|
share groff with someone who has the same type of machine as you but
|
|
does not have a C++ compiler. See the end of the INSTALL file for
|
|
details.
|
|
|
|
There is a man page for the tfmtodit program which explains how to use
|
|
your own fonts with groff -Tdvi.
|
|
|
|
There is a man page for afmtodit which explains how to use your own
|
|
PostScript fonts with groff -Tps.
|
|
|
|
The \N escape sequence is now fully supported. It can now be used to
|
|
access any character in a font by its output code, even if it doesn't
|
|
have a groff name. This is made possible by a convention in the font
|
|
files that a character name of `---' refers to an unnamed character.
|
|
The drivers now all support the `N' command required for this. The font
|
|
description files have been updated to include unnamed characters.
|
|
|
|
The `x' command in font description files has been removed: instead
|
|
any unknown commands are automatically made available to the drivers.
|
|
If you constructed your own font files with an earlier version of
|
|
tfmtodit or afmtodit, you must construct them again using the current
|
|
version.
|
|
|
|
Characters between 0200 and 0237 octal are no longer legal input
|
|
characters. Note that these are not used in ISO 8859.
|
|
|
|
A command called `grog' has been added, similar to the `doctype'
|
|
command described in Kernighan and Pike.
|
|
|
|
Groff
|
|
-----
|
|
|
|
The groff command has some new options: -V prints the pipeline
|
|
instead of executing it; -P passes an argument to the postprocessor,
|
|
-L passes an argument to the spooler.
|
|
|
|
There is a C++ implementation of the groff command. This handles some
|
|
things slightly better than the shell script. In particular, it can
|
|
correctly handle arguments containing characters that have a special
|
|
meaning to the shell; it can give an error message when child
|
|
processes other than the last in the pipeline terminate abnormally;
|
|
its exit status can take account of the exit statuses of all its child
|
|
processes; it is a little more efficient; when geqn is used, it
|
|
searches for the eqnchar file in the same way that font metric files
|
|
are searched for, rather than expecting to find it in one particular
|
|
directory.
|
|
|
|
Gtroff
|
|
------
|
|
|
|
There is font translation feature: For example, you can tell gtroff to
|
|
use font `HR' whenever font `H' is requested with the line
|
|
.ftr H HR
|
|
This would be useful for a document that uses `H' to refer to
|
|
Helvetica.
|
|
|
|
There are some new number registers: `.kern' contains the current kern
|
|
mode, `.lg' the current ligature mode, `.x' the major version number,
|
|
`.y' the minor version number, `.ce' the number of lines to be
|
|
centered in the current environment, `.trunc' the amount of vertical
|
|
space truncated by the most recently sprung vertical position trap,
|
|
`.ne' the amount of vertical space needed in the last `ne' request
|
|
that caused a vertical position trap to be sprung.
|
|
|
|
The `cf' request now behaves sensibly in a diversion. If used in a
|
|
diversion, it will now arrange for the file to be copied to the output
|
|
when the diversion is reread.
|
|
|
|
There is a new request `trf' (transparent file) similar to `cf', but
|
|
more like `\!'.
|
|
|
|
There is a new escape sequence `\Y[xxx]', roughly equivalent to
|
|
`\X'\*[xxx]'', except that the contents of string or macro xxx are not
|
|
interpreted, and xxx may contain newlines. This requires an output
|
|
format extension; the drivers have been modified to understand this.
|
|
Grops has also been modified to cope with newlines in the arguments to
|
|
\X commands; grops has a new \X command mdef, which is like def except
|
|
that it has a first argument giving the number of definitions.
|
|
|
|
There is a new warning category `escape' which warns about unknown
|
|
escape sequences.
|
|
|
|
The `fp' request now takes an optional third argument giving the external
|
|
name of the font.
|
|
|
|
The `\_' character is now automatically translated to `\(ul' as in troff.
|
|
|
|
The environment variable `GROFF_HYPHEN' gives the name of the file
|
|
containing the hyphenation patterns.
|
|
|
|
There is a `\C'xxx'' escape sequence equivalent to `\[xxx]'.
|
|
|
|
Characters ", ', ), ], *, \(dg are now initially transparent for the purposes
|
|
of end of sentence recognition.
|
|
|
|
There is an anti-recursion feature in the `char' request, so you can
|
|
say `.char \(bu \s+2\(bu\s-2'.
|
|
|
|
The limit on the number of font positions has been removed.
|
|
Accordingly `\n[.fp]' never returns 0.
|
|
|
|
The restriction on the number of numbered environments has been removed.
|
|
|
|
There is a new escape sequence `\E' that makes it possible to
|
|
guarantee that an escape sequence won't get interpreted in copy-mode.
|
|
The `\R' escape sequence is accordingly now deprecated.
|
|
|
|
Gpic
|
|
----
|
|
|
|
Arguments of the form `X anything X' (in the `copy thru', `sh', `for',
|
|
`if' and `define' constructs) can now be of the form `{ anything }'.
|
|
|
|
If the `linethick' variable is negative (as it now is initially),
|
|
lines will be drawn with a thickness proportional to the current point
|
|
size.
|
|
|
|
The `rand' function now takes no arguments and returns a number between
|
|
0 and 1. The old syntax is still supported.
|
|
|
|
`^' can be used in expressions to indicate exponentiation.
|
|
|
|
In the `for' construct the argument to the by clause can be prefixed
|
|
by `*' to indicate that the increment is multiplicative.
|
|
|
|
A bare expression may be used as an attribute. If the current
|
|
direction is `dir', then an attribute `expr' is equivalent to
|
|
`dir expr'
|
|
|
|
There is a `sprintf' construct that allows numbers to be formatted and used
|
|
wherever a quoted string can be used.
|
|
|
|
The height of a text object without an explicit height attribute is
|
|
the number of text strings associated with the object times the value
|
|
of the `textht' variable.
|
|
|
|
The maximum height and width of a picture is controlled by the
|
|
`maxpswid' and `maxpsht' variables.
|
|
|
|
Gtbl
|
|
----
|
|
|
|
Gtbl can now handle gracefully the situation where the `ce' request
|
|
has been applied to a table.
|
|
|
|
Geqn
|
|
----
|
|
|
|
The `ifdef' primitive has been generalized.
|
|
|
|
A tilde accent can be put underneath a box using `utilde'. This
|
|
defined using a general `uaccent' primitive.
|
|
|
|
Grops
|
|
-----
|
|
|
|
There is a new PostScript font downloading scheme which handles font
|
|
downloading for imported illustrations. Previously, the name of the
|
|
file containing the font was given in the `x download' line in the
|
|
groff font metric file. Now, there is a `download' file which says
|
|
for each PostScript font name which file contains that font. Grops
|
|
can also now handle inter-font dependencies, where one downloadable
|
|
font depends on some other (possibly downloadable) font.
|
|
|
|
The `T' font has been removed. The characters it used to provide are
|
|
now provided by `char' definitions in tmac.ps. TSymbol.ps has also
|
|
been removed, and the tweaks it provided are now provided by `char'
|
|
definitions.
|