diff options
author | Richard Maw <richard.maw@codethink.co.uk> | 2012-02-20 17:27:43 +0000 |
---|---|---|
committer | Richard Maw <richard.maw@codethink.co.uk> | 2012-02-20 17:30:17 +0000 |
commit | 766d6b1afab82d786741434fcc80431c3db7690e (patch) | |
tree | 28795c1bf6038fb4bab07e3ac1e4270c4a78c150 /ChangeLog | |
parent | 4281275ada31523b07d0c19f70cff2871774603c (diff) | |
download | groff-766d6b1afab82d786741434fcc80431c3db7690e.tar.gz |
Revert back to groff-1_21
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 8689 |
1 files changed, 8273 insertions, 416 deletions
@@ -1,418 +1,9 @@ -2012-01-10 Bruno Haible <bruno@clisp.org> - - Fix handling of MAKEFLAGS variable. - - * Makefile.in (MAKE_K_FLAGS): Improved definition, - as explained and discussed in - - http://lists.gnu.org/archive/html/groff/2012-01/msg00039.html - -2012-01-03 Ingo Schwarze <schwarze@usta.de> - - Improve parallel builds. - - Some hdtbl and mom examples want PostScript formatting which - requires the `DESC' file to be ready; however, the top-level - `Makefile.in' doesn't currently enforce the proper order of building - of `font/dev' before `contrib/hdtbl', `contrib/mom', and so on. - - Given that `font/dev' and the contrib examples are in different - child processes of the recursive make system, it doesn't seem - possible to solve this using clean Makefile dependencies. We now - enforce the order by splitting the shell command invoking recursive - make in the top level `Makefile.in'. - - * Makefile.in (ALLDIRS): Remove `OTHERDIRS'. - (dodirs): Updated. - (`$(TARGETS)'): Handle `OTHERDIRS' separately. - -2012-01-03 Kristaps Dzonsons <kristaps@bsd.lv> - - [mdoc] Add `-isoC-2011'. - - * tmac/doc-syms (doc-str-St--isoC-2011): Add it. - * tmac/groff_mdoc.man: Document it. - -2011-12-26 Deri James <deri@chuzzlewit.demon.co.uk> - - * font/devpdf/Makefile.sub: Only build fonts on first `make'. - -2011-12-08 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo (.tl): Improve documentation. - Wording suggested by Keith Marshall - <keithmarshall@users.sourceforge.net>. - -2011-12-01 Werner LEMBERG <wl@gnu.org> - - [me] Fix behaviour of centered block. - Problem and possible fix reported in thread starting at - - http://lists.gnu.org/archive/html/groff/2011-11/msg00002.html - - * tmac/e.tmac (`(c'): Always start with a new line. - -2011-12-01 Ingo Schwarze <schwarze@usta.de> - - [man] Print volume headers like mdoc. - - * tmac/an-old.tmac (an-init): Add default volume name if fifth - argument to `.TH' is missing. - -2011-11-22 Werner LEMBERG <wl@gnu.org> - - * tmac/groff_man.man: Minor documentation improvements. - Suggested by Jeff Conrad <jeff_conrad@msn.com>. - -2011-11-14 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Improve doc for calling undefined identifiers. - -2011-11-14 Werner LEMBERG <wl@gnu.org> - - * src/preproc/tbl/tbl.man: Improve documentation of `_' and friends. - -2011-10-31 Werner LEMBERG <wl@gnu.org> - - Fix compiler warnings. - - * src/preproc/eqn/main.cpp (do_file), src/roff/troff/env.cpp - (environment::print_env), src/roff/troff/mtsm.cpp - (statem::display_state): Add syntactical sugar. - - * src/utils/tfmtodit/tfmtodit.cpp (char_info_word): Use `unsigned - char' for all members. - - * src/devices/grohtml/html-text.cpp (html_text::remove_def): Remove - unused variable `q'. - * src/devices/grohtml/post-html.cpp - (html_printer::lookahead_for_tables): Remove unused variable `left' - and `seen_text'. - -2011-10-23 Ingo Schwarze <schwarze@openbsd.org> - - [mdoc] Synchronize string tables with the mandoc(1) utility. - - * tmac/doc-common: Add many architecture names used in NetBSD and - OpenBSD (and "arm" from FreeBSD) and remove the duplicate OS version - entry for Darwin-10.6.0. - - * tmac/doc-syms: Add many library names used in NetBSD and FreeBSD. - - * tmac/groff_mdoc.man: Document all supported architecture names, OS - versions, and library names. - -2011-09-11 Joseph Koshy <jkoshy@users.sourceforge.net> - - [mdoc] Add some library strings. - - * tmac/doc-syms: Add `libdwarf' and `libelf'. - * tmac/groff_mdoc.man: Document them. - -2011-08-14 Deri James <deri@chuzzlewit.demon.co.uk> - - [gropdf] More minor fixes. - - * font/devpdf/Makefile.sub (MOSTLYCLEANADD): Don't attempt to - install 'util/BuildFoundries', only used in 'make'. - - * src/devices/gropdf/gropdf.pl (<top>, GetType1): Make STDOUT and - any font files read to be accessed in binary rather than text mode. - Prevents errors when running on systems set up for UTF-8. - -2011-08-10 Deri James <deri@chuzzlewit.demon.co.uk> - - [gropdf] Minor updates and fixes. - - * src/devices/gropdf/gropdf.pl: Change command line option `-fy' to - `-y' for consistency. - Better support for Windows platform. - (do_x): Handle keywords `pagename' and `switchtopage'. - - * doc/groff.texinfo, src/devices/gropdf/gropdf.man: Updated. - - * font/devpdf/Foundry: Renamed to... - * font/devpdf/Foundry.in: This. - Add default alias font names. - - * font/devpdf/util/BuildFoundries.pl: This is now an installation - helper script and gets not longer installed. - Support alternative font file names (separated with `!'). - - * font/devpdf/Makefile.sub: Fixes to work with a separate build - directory. - Font files are now build at `make' time; this makes `test-groff' - work with -Tpdf. - - * font/devpdf/util/Makefile.sub: Removed. - - * Makefile.in (DEVDIRS, OTHERDIRS, EXTRADIRS): Handle devpdf - specially. - -2011-07-29 Daiki Ueno <ueno@unixuser.org> - - Fix cross building. - Problem reported by Christophe Jarry <christophe.jarry@ouvaton.org>. - - * Makefile.in ($GNULIBDIRS): Pass original config arguments to - src/libs/gnulib/configure. - -2011-06-25 Deri James <deri@chuzzlewit.demon.co.uk> - - Add new output device `gropdf'. - - * font/devpdf/*: New device files for gropdf. - * src/devices/gropdf/*: New device. - - * Makefile.comm (install_dev, uninstall_dev): Handle more - subdirectories. - * Makefile.in (DEVDIRS, OTHERDIRS, EXTRADIRS): Add directories - related to gropdf. - * MANIFEST: Updated. - * test-groff.in (GROFF_BIN_PATH): Updated. - - * tmac/Makefile.sub (NORMALFILES): Updated. - * tmac/pdf.tmac: New file. - * tmac/troffrc: Updated. - - * doc/groff.texinfo: Document it. - * doc/Makefile.in, doc/Makefile.sub (groff_bin_dirs): Udpated. - * doc/pic.ms: Updated. - - * man/groff_out.man, src/devices/grops/grops.man, - src/preproc/pic/pic.man, src/roff/groff/groff.man, - src/utils/afmtodit/afmtodit.man, src/utils/pfbtops/pfbtops.man: - Updated. - - * contrib/pdfmark/pdfmark.ms: Updated. - -2011-07-20 George HELFFRICH <ghfbsd@gmail.com> - - Improve line numbering support in tbl and with me macros. - - * tmac/e.tmac (n1, n2, TH, PS): Implement it. - (@h, @n, @o, @t, @k, )b, (c, (q, )q, (l, )l, (f, @q, PE): Updated. - * doc/meref.me: Document changes. - - * src/preproc/tbl/table.cpp (ROW_START_LINE_REG, ROW_SAVE_LINE_REG, - ROW_MAX_LINE_REG, REPEATED_NM_SET_MACRO, REPEATED_NM_SUS_MACRO): New - macros. - (table::init_output): Define REPEATED_NM_SET_MACRO and - REPEATED_NM_SUS_MACRO. - (table::print_single_hline, table::print_double_hline, - table::define_bottom_macro, table::do_row, table::do_top, - table::do_bottom): Updated. - - * doc/webpage.ms: Updated. - -2011-07-12 Ted Harding <ted.harding@wlandres.net> - Werner LEMBERG <wl@gnu.org> - - * src/preproc/tbl/tbl.man: Mention trick to get abutting rules. - -2011-07-03 Ben Laurie <benl@FreeBSD.org> - - Fix clang warnings. - - * src/libs/libdriver/input.cpp (odd): Use parentheses. - - * src/roff/troff/mtsm.cpp (state_set::is_in): Fix parentheses; - previous code always tested for bit 0. - -2011-07-03 Guillem Jover <guillem@debian.org> - - mdoc: Update more OS versions strings. - - * tmac/doc-common: Add versions strings for NetBSD, OpenBSD, - FreeBSD, and DragonFly. - -2011-04-08 Michail Vidiassov <master@iaas.msu.ru> - - mdoc: Update various strings related to Mac OS X and FreeBSD. - - * tmac/doc-common: Add strings for FreeBSD 8.2 and Darwin 9.7-11.0. - * tmac/doc-syms: Add strings -lbsm and -lSystem. - -2011-03-29 Christian Weisgerber <naddy@mips.inka.de> - - Fix compilation issues with gcc 2.95. - - * src/roff/troff/input.cpp (my_input_iterator): Define as an alias - for `input_iterator' which is predefined by an old libstdc++. - -2011-03-29 Ingo Schwarze <schwarze@usta.de> - - Add another POSIX standard. - - * tmac/doc-syms: Add POSIX 1003.1b. - -2011-03-29 Christian Weisgerber <naddy@mips.inka.de> - - Fix build with non-GNU make. - - * Makefile.in ($TARGETS): We must not pass `$MDEFINES' recursively - down to the sub-makes started in src/libs/gnulib, because that - directory has its own values for `$top_srcdir' etc., and overriding - those from the command line will cause the build to fail. - Currently, `$MAKEOVERRIDES' will prevent the recursive passing of - those overrides with GNU make, but not with other make(1) - implementations. It looks like all targets that require `$MDEFINES' - set them explicitly anyway, so we shouldn't need to set `$MDEFINES' - on the top level. - -2011-03-21 Jan Vcelak <jvcelak@redhat.com> - Bernd Warken - - [groffer] Remove hardcoded path to 'libdir/groff/groffer' directory. - - * configure.ac: add GROFFERDIR variables. - - * Makefile.in: add and handle variable groffer_dir - - * m4/groff.m4: set up the --with-grofferdir command line option. - -2011-03-18 Werner LEMBERG <wl@gnu.org> - - [troff] Improve error message. - - * src/roff/troff/input.cc (token::delimiter): Improve error message. - Suggested by Doug McIlroy <doug@cs.dartmouth.edu>. - -2011-03-04 Werner LEMBERG <wl@gnu.org> - - [mdoc] Within .An, .Aq, .Ao, and .Ac now use `<' and `>'. - Problem reported by Ulrich Spörlein <uqs@spoerlein.net> - - * tmac/doc.tmac (Aq, Ao, Ac): Implement it to follow RFC 822 and RFC - 2822. - -2011-02-14 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Add another example for .em request - Based on a patch from Anton Shepelev <anton.txt@gmail.com>. - -2011-01-31 Werner LEMBERG <wl@gnu.org> - - More fixes for Savannah bug #32301. - - * src/devices/grops/Makefile.sub (XLIBS), - src/devices/grodvi/Makefile.sub, src/devices/grolj4/Makefile.sub, - src/devices/grohtml/Makefile.sub, src/devices/grolbp/Makefile.sub: - Add $(LIBGNU). - -2011-01-31 Werner LEMBERG <wl@gnu.org> - - Fix Savannah bug #32301. - - * src/roff/groff/Makefile.sub (XLIBS), src/preproc/grn/Makefile.sub, - src/preproc/html/Makefile.sub: Add $(LIBGNU). - -2011-01-29 Krzysztof Å»elechowski <giecrilj@stegny.2a.pl> - - * doc/groff.texinfo: Complete documentation on output devices. - -2011-01-28 Werner LEMBERG <wl@gnu.org> - - Handle `refer*.tmac'. - - * tmac/Makefile.sub (NORMALFILES): Add `refer*.tmac'. - * tmac/refer-mm.tmac: Moved to contrib/mm. - -2011-01-28 Werner LEMBERG <wl@gnu.org> - - Improve `refer' support of -me. - - * tmac/refer.tmac, tmac/refer-me.tmac, tmac/refer-ms.tmac, - tmac/refer-mm.tmac: New files. The code in refer.tmac is - based on the old code from `s.tmac'. - - * tmac/s.tmac: Remove direct refer support and include - `refer-ms.tmac' instead. - * tmac/e.tmac: Remove direct refer support and include - `refer-me.tmac' instead. - - * NEWS: Updated. - -2011-01-22 Werner LEMBERG <wl@gnu.org> - - [groff.texinfo]: Updates. - - * doc/groff.texinfo: Document groff's `-j' option. - Add dummy section for `chem' preprocessor. - -2011-01-22 Werner LEMBERG <wl@gnu.org> - - Update `grog'. - - * src/roff/grog/{groff.sh,groff.pl}: `groff' now calls `pic' - automatically if `grap' or `chem' is used. - `chem' has been folded into `groff'. - * src/roff/grog/grog.man: Updated. - -2011-01-22 Werner LEMBERG <wl@gnu.org> - - Make `groff -G' imply `-p'. - - * src/roff/groff/groff.cpp (main): Implement it. - * src/roff/groff/groff.man: Updated. - -2011-01-22 Werner LEMBERG <wl@gnu.org> - - Integrate `chem' into `groff' (new option -j). - - * src/roff/groff/groff.cpp (CHEM_INDEX): New constant. - (main) ['j']: Add `chem'. - (synopsis, help): Updated. - * src/roff/troff/pipeline.h (MAX_COMMANDS): Increase to 14. - - * src/roff/groff/groff.man: Document new command line option. - * NEWS: Updated. - -2011-01-22 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: `chem' is now part of groff. - -2011-01-22 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Improve description of `.de'. - - Based on suggestions by Ted Harding and Deri James. - -2011-01-20 Colin Watson <cjwatson@debian.org> - - Fix handling of wide characters in no-SGR mode. - - * src/devices/grotty/tty.cpp (tty_printer::make_underline): Only - emit a single backspace in no-SGR mode. less (at least) backspaces - over a character at a time. - (tty_printer::make_bold): Likewise. - -2011-01-19 Werner LEMBERG <wl@gnu.org> - - * src/preproc/pic/pic.man: Add pic manual to `SEE ALSO' section. - -2011-01-14 Werner LEMBERG <wl@gnu.org> - - Split ChangeLog. - - * ChangeLog: Split off older entries into... - * ChangeLog.119, ChangeLog.120: these new files. - -2011-01-15 Colin Watson <cjwatson@debian.org> - - * Makefile.comm (INCLUDES): Fix typo. - -2011-01-05 Werner LEMBERG <wl@gnu.org> - - * doc/webpage.ms: Fix rendering of title image. - 2010-12-31 Werner LEMBERG <wl@gnu.org> Version 1.21 released ===================== - * NEWS, REVISION, VERSION, doc/groff.texinfo, doc/webpage.ms: - Updated. + * NEWS, REVISION, VERSION, doc/groff.texinfo, doc/webpage.ms: Updated. * aclocal.m4, configure: Regenerated. 2010-12-31 Werner LEMBERG <wl@gnu.org> @@ -716,7 +307,7 @@ Version 1.21 released data consists of spaces only and thus reduces to nothing, set `sz' to 0. -2010-11-02 Ulrich Spörlein <uqs@spoerlein.net> +2010-11-02 Ulrich Spörlein <uqs@spoerlein.net> [mdoc]: Complete previous patch and document OpenBSD releases. @@ -731,7 +322,7 @@ Version 1.21 released * tmac/groff_mdoc.man: Document OpenBSD releases. Add DragonFly release 2.8. -2010-11-02 Ulrich Spörlein <uqs@spoerlein.net> +2010-11-02 Ulrich Spörlein <uqs@spoerlein.net> [mdoc]: Improve man page. @@ -899,7 +490,7 @@ Version 1.21 released Add new FreeBSD and Posix versions. * tmac/doc-common: Add FreeBSD versions 7.2, 7.3, and 8.0 - * tmac/doc-syms: Add Posix 2008. + * tmac/doc-syms: Add Posix 2008 * tmac/groff_mdoc.man: Document it. 2010-02-16 Larry Kollar <kollar@windstream.net> @@ -996,7 +587,7 @@ Version 1.21 released * tmac/doc-common (Dx): Define register. -2009-10-26 Jörg Sonnenberger <joerg@britannica.bec.de> +2009-10-26 Jörg Sonnenberger <joerg@britannica.bec.de> Implement `%U' in mdoc for URL references. @@ -1182,7 +773,8273 @@ Version 1.21 released before doing a PS special and flush buffer. Update called functions. -Copyright 2009-2012 +2009-01-09 Werner LEMBERG <wl@gnu.org> + +Version 1.20.1 released +======================= + + `gnu.png' isn't needed any more. + + * doc/Makefile.in: Don't handle or create `gnu.png'. + Update all affected targets. + + * doc/Makefile.sub: Don't handle or create `gnu.png'. + Update alll affected targets. + + + `gnu.eps' was missing in the tarball. + Problem reported by Patrik Gräser. + + (PROCESSEDEXAMPLEFILES): Remove `gnu.eps'. + (MOSTLYCLEANNOTSRCDIRADD): Fix names of info files. + (install_data): Handle `gnu.eps' specially. + + * MORE.STUFF: Mention texi2html's troff backend. + Mention http://groff.ffii.org/groff/contrib. + + * README: Mention `MORE.STUFF'. + + * NEWS, doc/webpage.ms, doc/groff.texinfo: Updated. + +2009-01-08 Werner LEMBERG <wl@gnu.org> + + * */Makefile.* (CLEANADD, CLEANNOTSRCDIRADD, CLEANDIRADD): Renamed + to... + (MOSTLYCLEANADD, MOSTLYCLEANNOTSRCDIRADD, MOSTLYCLEANDIRADD): This. + +2009-01-06 Werner LEMBERG <wl@gnu.org> + + Remove heuristics for LIBEXT. + + * configure.ac: Provide LIBEXT. + * Makefile.in: Use it. + + * configure: Regenerated. + +2009-01-05 Werner LEMBERG <wl@gnu.org> + +Version 1.20 released +===================== + +2009-01-05 Werner LEMBERG <wl@gnu.org> + + * */*: Update FDL 1.1 to FDL 1.3. + +2009-01-05 Werner LEMBERG <wl@gnu.org> + + * */*: Update copyright year. + +2009-01-05 Werner LEMBERG <wl@gnu.org> + + * MANIFEST: Updated. + +2009-01-05 Werner LEMBERG <wl@gnu.org> + + * doc/texinfo.tex (\key): Fix excessive whitespace. + (\texinfoversion): Tag file as patched. + +2009-01-05 Werner LEMBERG <wl@gnu.org> + + * tmac/s.tmac (@TS, TE, @EQ, @EN), tmac/an-old.tmac (TS, TE, EQ, + EN), tmac/e.tmac (TS, TE, EQ, EN): Set line length to a large value + if processed with -Thtml. + +2009-01-04 Werner LEMBERG <wl@gnu.org> + + * tmac/www.tmac (TS, TE, EQ, EN): Set line length to a large value + if processed with -Thtml to avoid warning messages (from code + inserted by tbl, for example). + +2009-01-04 Gunnar Florus <http://florus.no> + + * */*: Update GPL2 to GPL3. + +2009-01-04 Werner LEMBERG <wl@gnu.org> + + * Makefile.in (dist): Don't use soft links but copy files to + preserve the file's time stamps. + * Makefile.sub (configure): Remove `autom4te.cache'. + +2009-01-04 Werner LEMBERG <wl@gnu.org> + + * tmac/de.tmac: Fix German date strings. Reported by Axel Kielhorn. + +2009-01-04 Werner LEMBERG <wl@gnu.org> + + * doc/texinfo.tex: Updated from `texinfo' CVS repository. + * doc/txi-en.tex: New file from `texinfo' CVS repository. + +2009-01-04 Werner LEMBERG <wl@gnu.org> + + * font/make-Rproto: Moved to... + * font/util/make-Rproto: Here. + + * Makefile.in (NOMAKEDIRS): Add `m4', `font/devps/old', and + `font/util'. + +2009-01-04 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/TODO: Mention local variables. + +2009-01-03 Werner LEMBERG <wl@gnu.org> + + * contrib/hdtbl/examples/col_rowspan_colors.roff, + contrib/hdtbl/examples/color_boxes.roff, + contrib/hdtbl/examples/color_nested_tables.roff, + contrib/hdtbl/examples/color_table_cells.roff, + contrib/hdtbl/examples/color_transitions.roff, + contrib/hdtbl/examples/short_reference.roff: Minor improvements. + +2009-01-03 Werner LEMBERG <wl@gnu.org> + + * doc/webpage.ms: Updated. + +2009-01-03 Werner LEMBERG <wl@gnu.org> + + * NEWS, doc/groff.texinfo, font/devps/*, VERSION, REVISION: Prepare + for version 1.20. + +2009-01-03 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/table.cpp (table::compute_expand_width, + table::compute_separation_factor): In warning messages, don't refer + to pages but to input line numbers. + +2009-01-03 Werner LEMBERG <wl@gnu.org> + + * tmac/groff_ms.man: Improve formatting of tables. + +2009-01-03 Werner LEMBERG <wl@gnu.org> + + * tmac/www.tmac (www->): Handle XHTML. + (HTML</p>): Handle non-HTML devices. + (www:url_check_tag): Avoid warnings. + +2009-01-03 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac, tmac/doc.tmac: For -Tutf8, map \-, -, ', and ` + conservatively to ASCII for the sake of easy cut and paste. + +2009-01-03 Werner LEMBERG <wl@gnu.org> + + * NEWS: Mention hdtbl. + +2009-01-02 Werner LEMBERG <wl@gnu.org> + + * tmac/groff_mdoc.man: Update OS version string listing. + +2009-01-02 Werner LEMBERG <wl@gnu.org> + + * config.rpath, m4/codeset.m4, m4/glibc21.m4, m4/iconv.m4, + m4/lib-link.m4, m4/lib-prefix.m4, src/include/localcharset.h, + src/libs/libgroff/config.charset, src/libs/libgroff/localcharset.c, + src/libs/libgroff/ref-add.sin, src/libs/libgroff/ref-del.sin: + Updated from `gnulib' git repository. + + * configure: Regenerated. + +2009-01-02 Werner LEMBERG <wl@gnu.org> + + * tmac/ptx.tmac: New file. + + * NEWS, man/groff_tmac: man: Document it. + +2008-12-30 Werner LEMBERG <wl@gnu.org> + + Fix more quoting issues. + + * tmac/www.tmac (BCL, BGIMG, PIMG, MPIMG, LNS): For the sake of + XHTML, quote more arguments. + (IMG): Fix quoting. + +2008-12-30 Werner LEMBERG <wl@gnu.org> + + Fix quoting issues in www.tmac. + + * tmac/www.tmac (www:url_breaks_splitted): Renamed to... + (www:url_breaks_split): This. + (www->): New string to close tag singletons like <img> or <hr>. In + XHTML mode (not implemented yet), this has to be changed from `>' to + `/>'. + (IMG): Don't use </img> + Use www->. + (PIMG, MPIMG): Don't use </img> + Use www->. + Fix doublequote issues. + (HR): Don't use </hr>. + Use www->. + (LNS): Fix doublequote issues. + +2008-12-24 Michail Vidiassov <master@iaas.msu.ru> + + * tmac/doc-common: Add entries for Mac OS X and FreeBSD. + +2008-12-22 Alexey Gladkov <legion@altlinux.ru> + + * contrib/groffer/perl/roff2.pl: Fix syntax error. + +2008-12-15 Werner LEMBERG <wl@gnu.org> + + * NEWS: Mention `preconv'. + +2008-11-12 Werner LEMBERG <wl@gnu.org> + + Implement `x' specifier for expanded columns. Contrary to old DWB + tbl, more than a single `x' specifier can be used. At the same + time, remove most of the code from change 2007-02-09 which collides + with the new implementation. + + * src/preproc/tbl/main.cpp (format): Add `expand' array. + (format::format, format::~format): Updated. + (input_entry_format): Add `expand' field. + (input_entry_format::input_entry_format): Updated. + (input_entry_format::debug_print): Handle `expand'. + (process_format): Handle `x' specifier. + (process_data): Updated. + + * src/preproc/tbl/table.cpp (AVAILABLE_REG, COLCOUNT_REG): Remove. + (EXPAND_REG): New macro. + (table_entry::divert, block_entry::divert, + alphabetic_block_entry::divert): Add parameter to control whether + expanded columns shall be handled. + (block_entry::do_width): Remove. + (block_entry::do_divert): Add parameter to control whether expanded + columns shall be handled. + Treat expanded columns like columns with a minimum width. + Remove `experimental' code. + (table::table, table::~table, table::allocate): Updated. + (table::set_expand_column): New function. + (table::count_block_columns): Replace with... + (table::count_expand_columns): This function. + (table::divide_span): Handle expanded columns the same as equal + columns. + (table::sum_columns): Add parameter to control whether expanded + columns shall be handled. + (table::compute_available_block_width): Replace with... + (table::compute_expand_width): This function. + (table::compute_total_separation): New function, taking code from + `compute_separation_factor'. + (table::compute_separation_factor): Simpler code. The check for the + `EXPAND' flag has been moved to the caller. + (table::compute_widths): Add `top-level' changes to handle expanded + blocks. + + * src/preproc/tbl/table.h (table): New field `total_separation'. + Remove `blockflag' array. + Add `expand' array. + Update member function declarations. + + * src/preproc/tbl/tbl.man: Document `x' specifier. + Expand documentation to cover all aspects of Lesk's tbl reference. + + * NEWS: Document `x' specifier. + +2008-11-08 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/tbl.man: Restructuring. + Improve text block documentation. + +2008-11-07 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/table.cpp (table::compute_widths): Use default + scaling operator for minimum width. Without this fix, `lw3' (or + `lw(3)' would be handled as a column with a minimum width of 3u + instead of 3n. + +2008-11-05 Werner LEMBERG <wl@gnu.org> + + * tmac/doc-common (Dt): Start a new page if necessary and set up + headers. + + * tmac/andoc.tmac (reload-doc): Simplify due to change in + doc-common. + + * NEWS: Document it. + +2008-10-18 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/main.cpp (process_format): Rename `x' and `X' to + `m' and `M', respectively. + Sort entries in `switch' block. + * src/preproc/tbl/tbl.man: Updated. + Sort key entries; other minor improvements. + +2008-10-17 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/table.cpp (table::compute_available_block_width): + New function. + (table::compute_widths): Replace some code with new function + (shifted to a more appropriate place). + * src/preproc/tbl/table.h: Updated. + +2008-10-16 Werner LEMBERG <wl@gnu.org> + + * tmac/doc-common (doc-operating-system-*), tmac/groff_mdoc.man: Add + NetBSD 4.0.1. + +2008-10-13 Werner LEMBERG <wl@gnu.org> + + * tmac/groff_mdoc.man: Update documentation on BSD-like OS string + versions. + +2008-10-10 Werner LEMBERG <wl@gnu.org> + + * man/roff.man, doc/groff.texinfo: Improve the history part. This + is based on input from Tom Van Vleck <thvv@multicians.org>. + + + * src/preproc/eqn/sqrt.cpp (sqrt_box::compute_metrics): Assure that + value of `rst' register is not zero, as can happen for the HTML + output device. Otherwise, there are too many loops, and we get a + stack overflow because of recursion. + +2008-10-05 Stephen Gildea <http://www.gildea.com/stephen/> + + * src/preproc/ref/ref.cpp (reference::compute_sort_key): Do + not insert SORT_SEP before the first field, so that sort_key + has the same format as before the patch of 2003-08-23. + +2008-10-04 Werner LEMBERG <wl@gnu.org> + + * tmac/doc-common (doc-operating-system-*): Update releases. + + * tmac/an-old.tmac (an-extra1, an-extra2, an-extra3): Initialize. + + * tmac/andoc.tmac: Rewritten, based on a preliminary version from + Tadziu Hoffmann. It can now process multiple man pages with both + man and mdoc formats intermixed. + + * NEWS, tmac/groff_man.man, tmac/groff_mdoc.man, + man/groff_tmac.man: Document it. + +2008-10-04 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cpp (do_suppress): Make \O[3], \O[4], and + \O[5] non-transparent w.r.t. beginning-of-line recognition (similar + to the other \O variants). + + * tmac/www.tmac (TS, TE, EQ, EN): Don't use .als for setting up + default macros. This causes endless loops (at least for TE). + + * doc/groff.texinfo: Improve documentation of `.als'. + +2008-10-03 Werner LEMBERG <wl@gnu.org> + + * src/devices/grops/grops.man, src/roff/troff/troff.man, + src/preproc/soelim/soelim.man: Correct documentation of -I switch. + Reported by Larry Kollar. + Other minor formatting issues. + +2008-10-02 Werner LEMBERG <wl@gnu.org> + + * tmac/trace.tmac: Much improved. + (trace-full): New register to be set on the command line; it + controls whether number and string register assignments get traced + also. + (!!c): New macro for comments. + (rm): New traced macro. + (de, de1, am, am1): Use \\[xxx]\\ calling method to pass \$0 to + `!!xxx'; this makes doc.tmac completely traceable. + Trace call of .de and friends also. + + * tmac/groff_tmac.man, NEWS: Update. + +2008-09-30 Werner LEMBERG <wl@gnu.org> + + Restore behaviour of \$0 if a macro is called with string syntax + (problem caused by change on 2008-09-29). + + * src/roff/troff/input.cpp (input_iterator, input_stack, + macro_iterator): Add `get_macro_name' member function. + (interpolate_string): Use it. + +2008-09-29 Werner LEMBERG <wl@gnu.org> + + Make \\*[xxx]\\ within a macro (with `xxx' a macro too) work as + expected. Without the patch, + + .de aaa + \\*[bbb]\\ + . tm \\$* + .. + .de bbb + . shift + .. + .aaa 1 2 3 + + prints `2 3' instead of `1 2 3'. + + * src/roff/troff/input.cpp (input_iterator, input_stack, + macro_iterator): Add `get_arg_list' member function. + (macro): Add `is_a_string', `is_string', and `clear_string_flag' + members. + Update constructors and operators. + (arg_list): Add copy constructor. + (macro_iterator): Add optional argument to constructor to indicate + whether arguments shall be inherited from calling macro. + (interpolate_string): If string argument is a macro, push a macro + iterator on the stack. + (do_define_macro): Call clear_string_flag if macro data contains a + newline. + + * src/roff/troff/request.h: Updated. + +2008-09-29 Eric S. Raymond <esr@snark.thyrsus.com> + + * doc/pic.ms: Fold in documentation of pic2plot(1) capabilities. + Improve the documentation of text objects. + +2008-09-28 Eric S. Raymond <esr@snark.thyrsus.com> + + * contrib/pic2graph, contrib/pic2graph.man, contrib/eqn2graph, + contrib/eqn2graph.man: Tweak scripts to cope with incompatible + changes in ImageMagick crop options. Document the bugs. + +2008-09-28 Werner LEMBERG <wl@gnu.org> + + If a macro is called as a string, inherit value of \n[.br] from the + caller. This is useful for `trace.tmac'. + + * src/roff/troff/input.cpp (string_iterator): New members + `with_break' and `get_break_flag'. + (string_iterator::string_iterator): Updated. + + * doc/groff.texinfo: Improve documentation of \$0 and string syntax + calling of macros. + Document behaviour of \n[.br] within strings. + +2008-09-26 Werner LEMBERG <wl@gnu.org> + + * tmac/trace.tmac: Add copyright message. + Use `.de1' where possible to make source code more readable. + (so, mso, als, rn): Restore escape character before executing the + request. + (de, de1, am, am1): Trace `.foo' also if called as `\\[foo]'. + +2008-09-24 Werner LEMBERG <wl@gnu.org> + + Fix incompatibility between `.de1' and `.do'. Without this change, + the following snippet + + .de1 xx + . tm \\n(.C + .. + .cp 1 + .do xx + + prints 1 instead of 0. + + * src/roff/troff/input.cc (do_request): If a macro gets processed, + call tok.next(). + (interpolate_macro): Add optional argument. Update callers. + (request::invoke): Add optional argument. + (macro::invoke): Add optional argument to delay call of tok.next(). + + * src/roff/troff/request.h (request_or_macro): Add argument to + `invoke' member. Update all derived classes. + + * doc/groff.texinfo: Improve documentation of .do request. + +2008-09-09 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac (FT): Initialize properly. Reported by Tadziu + Hoffmann. + +2008-09-06 Werner LEMBERG <wl@gnu.org> + + * tmac/doc-common (Dd, Os, Dt): Reset `doc-command-name' to make + `.Nm' work properly if next manual page is printed. + +2008-08-20 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/tbl.man: Document computation of element widths. + +2008-08-20 Alexey Gladkov <legion@altlinux.ru> + Werner LEMBERG <wl@gnu.org> + + Add default encoding option -D to preconv and groff. + + * src/preproc/preconv/preconv.cpp (default_encoding): Make it an + array. + Update all users. + (main): Handle new option -D. + (usage): Updated. + * src/preproc/preconv/preconv.man: Updated. + + * src/roff/groff/groff.cpp (main): Handle new option -D. + (synopsis, help): Updated. + * src/roff/groff/groff.man: Updated. + +2008-07-26 Werner LEMBERG <wl@gnu.org> + + * tmac/eqnrc (.EQ, .EN): Provide default definitions. Reported + by Denis M. Wilson. + + * tmac/www.tmac (.EQ, .EN, .TS, .TE): Fix definitions. + +2008-07-24 Denis M. Wilson <dmw@oxytropis.plus.com> + + New options -f and -k for afmtodit. + + * src/afmtodit/afmtodit.pl: New options `-f NAME' sets the internal + name of the groff font. + New option `-k' disables output of kerning data. + * src/afmtodit/afmtodit.man, NEWS: Document new options. + +2008-07-18 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/table.cpp (table::compute_separation_factor): Emit + warning messages if table gets squeezed. + (table::compute_widths): Fix computation of AVAILABLE_REG. + Emit warning if table is wider than line length. + + * src/preproc/tbl/tbl.man: Minor improvements. + +2008-05-02 Larry Jones <lawrence.jones@siemens.com> + + * contrib/chem/Makefile.sub (README, examples/README): In makefiles, + the `$<' macro is only guaranteed to be defined in inference rules, + not in explicit target rules. Since there is only one input file in + the places where it is used, the `$?' macro (which is guaranteed to be + defined for both kinds of rules) is a suitable replacement. + + * hdtbl/examples/fonts_n.in, hdtbl/examples/fonts_n.in: Most + versions of ls don't have a `--color' option. + +2008-04-30 Larry Jones <lawrence.jones@siemens.com> + + * Makefile.comm (depend.temp): Add `EXTRA_CCFLAGS'. + +2008-04-29 Larry Jones <lawrence.jones@siemens.com> + + * src/eqn/script.cpp (script_box::output): Portability fix. + +2008-04-05 Dorai Sitaram <ds26gte@yahoo.com> + + Add better support for `.TAG #<label>' in non-HTML documents: In + case of a forward reference in a call to .URL, write `(see below)'. + In case of a backwards reference use the page number instead. The + reference gets stored in a string `TAG_<label>' and can be + overridden while calling `.TAG' with its new optional argument -- + this is useful for a second-pass system which resolves forward + references. + + * tmac/www.tmac (www:url_check_tag): New function. + (URL): Use it. + (TAG): Add optional argument to define string `TAG_<label>'. + +2008-03-24 Werner LEMBERG <wl@gnu.org> + + * tmac/trace.tmac (so, mso): Added. + + * tmac/www.tmac (PIMG): Replace `.ie' (without `.el') with `.if'. + If used with -mtrace, and this clause was active, the macro was + executed twice. + + * tmac/pspic.tmac (PSPIC): Accept option `-C' for orthogonality. + This makes `.PIMG -C <file>' (from www.tmac) work on non-HTML + devices. + * man/groff_tmac.man: Document it. + +2008-02-26 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cpp: s/safer_flag/unsafe_flag/. + Update all occurrences so that \n[.U] works as advertised. Bug + reported by Dorai Sitaram. + +2008-02-17 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Improve documentation of .cf request. + +2008-01-19 Werner LEMBERG <wl@gnu.org> + + * src/preproc/html/pre-html.cpp (usage): Don't describe options but + mention that it should never be called stand-alone. + + * tmac/groff_www.man, doc/groff.texinfo, man/groff_font.man, + man/groff_tmac.man, man/groff_out.man, README, README.MinGW, + src/roff/groff/groff.man: Mention -Txhtml. + + * man/groff_font.man, man/groff_tmac.man, man/roff.man: Revised. + +2008-01-16 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/font.cpp (font::contains, font::get_code): + Handle single-letter names correctly. + + * doc/groff.texinfo, man/groff_diff.man: Extend documentation of \^ + and \|. + * NEWS: Updated. + +2008-01-15 Werner LEMBERG <wl@gnu.org> + + * man/groff_font.man: Revised. + +2008-01-14 Werner LEMBERG <wl@gnu.org> + + * man/groff.man: Mention glyph and characters. + Minor other updates. + * man/groff_char.man: Minor updates. + * man/groff_diff.man: Better clarification between characters and + glyphs. + +2008-01-12 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Fix top-level structure to make it compilable + again with all texinfo modes. Reported by Jörg van den Hoff + <j.van_den_hoff@fzd.de>. + +2008-01-11 Werner LEMBERG <wl@gnu.org> + + * doc/pic.ms: Mention that compass points of line objects are + arbitrarily located. + +2008-01-06 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/node.cpp (left_italic_corrected_node::add_self): + Don't remove itself if there is no glyph associated with the node + yet. This happens, for example, in this situation: + + .ll 15000u + .ft I + x x + (\,f + +2008-01-05 Werner LEMBERG <wl@gnu.org> + + * man/groff_char.man, man/groff.man: Revised. + + * src/preproc/eqn/lex.cpp (troff_defs): Fix typo. + +2008-01-04 Werner LEMBERG <wl@gnu.org> + * */*: s/Osanna/Ossanna/. + + * */*.man: Replace .URL with .UR/.UE (except in groff_www.tmac). + Replace .MTO with .MT/.ME (except in groff_www.tmac). + Insert `\:' in URLs where appropriate. + Don't include www.tmac (except in groff_www.tmac). + + * man/groff.man (.ESC[]): Fix font of closing bracket. + (.ESCq): Fix font of closing quote character. + Many other improvements. + +2007-12-30 Bernhard Fisseni <bfi@ikp.uni-bonn.de> + + * src/devices/grohtml/post-html.cc + (html_printer::writeHeadMetaStyle): Fix CSS output. + +2007-12-29 Werner LEMBERG <wl@gnu.org> + + * tmac/ec.tmac: Add CM fonts to the .fspecial lines; those fonts + contain additional glyphs (like some uppercase Greek letters). + +2007-12-06 Werner LEMBERG <wl@gnu.org> + + * NEWS: Updated. + +2007-12-06 Colin Watson <cjwatson@debian.org> + + * src/roff/nroff/nroff.sh: Add options -w and -W. + * src/roff/nroff/nroff.man: Document them. + +2007-12-06 Karl Berry <karl@freefriends.org> + + * tmac/hyphenex.pl: Update header output. + +2007-11-29 Werner LEMBERG <wl@gnu.org> + + * src/devices/grotty/tty.cpp (tty_printer::line): Fix line lengths. + +2007-11-20 Werner LEMBERG <wl@gnu.org> + + * doc/pic.ms: Add Heinz-Jürgen's 3d boxes example. + +2007-11-17 Werner LEMBERG <wl@gnu.org> + + * src/roff/nroff/nroff.sh: Handle GROFF_TYPESETTER environment + variable. Problem reported by Michael G Schwern + <schwern@pobox.com>. + + * src/roff/nroff/nroff.man: Document it. + Other minor updates. + +2007-11-17 Heinz-Jürgen Oertel <hj.oertel@t-online.de> + + * src/groff/preproc/pic/lex.cpp (table): Add box attributes + `xslanted' and `yslanted'. + + * src/groff/preproc/pic/object.cpp (object_spec::object_spec): + Initialize `xslanted' and `yslanted'. + (graphic_object): Add methods `set_xlanted' and `set_yslanted'. + (closed_object): Ditto. + Add members `xslanted' and `yslanted'. + (box_object::print): Use them. + (object_spec::make_object): Handle slant values. + * src/groff/preproc/pic/object.h (IS_XSLANTED, IS_YSLANTED): New + constants. + (object_spec): Add members `xslanted' and `yslanted'. + * src/groff/preproc/pic/pic.y (XSLANTED, YSLANTED): New left-valued + tokens. + Add rules for them. + + * src/groff/preproc/pic/pic.man, NEWS, doc/pic.ms: Document above + changes. + +2007-11-16 Werner LEMBERG <wl@gnu.org> + + * tmac/hyphenex.pl: Generate copyright notice (this has been + approved by Barbara Beeton). + * tmac/hyphenex.us: Updated. + +2007-11-10 Michail Vidiassov <master@iaas.msu.ru> + + * tmac/doc-syms (doc-str-St--susv3): New string. + * tmac/groff_mdoc.man: Document it. + +2007-11-08 Werner LEMBERG <wl@gnu.org> + + * src/preproc/preconv/preconv.cpp (emacs_to_mime): Add `utf-16be', + `utf-16le', `utf-16be-with-signature', `utf-16le-with-signature'. + (is_comment_line): Handle '\" and '\# also. + + * src/preproc/preconv/preconv.man: Revise and make complete. + +2007-10-25 Werner LEMBERG <wl@gnu.org> + + * tmac/cs.tmac: New file holding Czech strings, contributed by + Marcela Maslanova <mmaslano@redhat.com>. + * tmac/hyphen.cs, tmac/hyphenex.cs: New hyphenation pattern files + for Czech, taken from CTAN. + * LICENSES: Updated. + * tmac/Makefile (NORMALFILES): Add Czech stuff. + * doc/groff_tmac.man: Mention cs.tmac. + +2007-10-21 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cpp (do_ps_file): Handle `%X' in header + comments correctly. Reported by Frank Jahnke + <jahnke@sonatabio.com>. + +2007-10-02 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc-common, tmac/groff_doc.man: Add FreeBSD 6.2, document + FreeBSD 5.5 and 7.0. + + * tmac/doc-syms: Give better names for System V releases. + +2007-09-25 Gaius Mulley <gaius@glam.ac.uk> + + * doc/Makefile.in, doc/Makefile.sub (.ms.html): Add -P-V switch to + the production of html files. + (pic.html): Ditto. + Remove background colour switch. + (.SUFFIXES, clean): Handle *.xhtml files. + + * src/devices/grohtml/grohtml.man: Document that -V option now + generates an HTML-4.01 validator or XHTML validator. + + * src/devices/grohtml/html-text.cpp (html_text::end_tag, + html_text::start_tag): Suppress <small>, <big>, and <color> tags if + we are inside a <pre> block. + + * src/devices/grohtml/post-html.cpp + (html_printer::handle_valid_flag): Add a parameter to indicate + whether it needs to generate a paragraph block. + (html_printer::write_navigation): Updated. + (html_printer::do_file_components): Generate an HTML-4.01 blue + validator button also. + +2007-09-23 Axel Kielhorn <A.Kielhorn@web.de> + + * man/groff.man: Fix URL of CSTR 54. + +2007-09-23 Werner LEMBERG <wl@gnu.org> + + * man/groff_char.man: Normalize character set names as defined + by IANA. Based on a patch from Axel Kielhorn. + + * src/preproc/refer/label.y: Undo change from 2007-09-19. + +2007-09-19 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cpp (interpolate_arg): Remove compiler + warning. + + * src/preproc/eqn/pile.cpp (pile_box::output, matrix_box::output): + Remove compiler warning. + + * src/preproc/refer/label.y: Remove compiler warning. + + * src/preproc/pic/pic.y: Remove doubled token entries. + +2007-09-19 Gaius Mulley <gaius@glam.ac.uk> + + * doc/groff.texinfo: Document new .O register and add cross + reference entries. + + * NEWS: Updated. + + * src/devices/grohtml/grohtml.man: Document new -V and -y options. + + * src/devices/grohtml/html-table.cpp: Add support for XHTML 1.1. + (html_table:: emit_colspan, html_table::emit_td): New methods. + (html_table::emit_col): Use html_table::emit_td. + (html_table::emit_table_header): Use html_table::emit_colspan if + dialect xhtml is specified. + (html_table::finish_row): Updated. + + * src/devices/grohtml/html-table.h (html_table): Declare + emit_colspan, emit_td. + + * src/devices/grohtml/html-text.cpp: Modified tags to comply with + xhtml if this dialect was requested. + + * src/devices/grohtml/html-text.h (html_dialect): New enumeration. + (html_text): Add new variable `dialect'. + + * src/devices/grohtml/post-html.cpp: Modify header tags to be XHTML + compliant. + (valid_flag, groff_sig, dialect): New global variables. + (html_printer::handle_valid_flag, html_printer::do_math, + html_printer::write_html_anchor, html_printer::write_xhtml_anchor, + html_printer::do_math, html_printer::handle_valid_flag): New + methods. + (html_printer::emit_line, html_printer::emit_raw, + html_printer::do_check_center, html_printer::write_title, + write_rule, html_printer::writeHeadMetaStyle, generate_img_src, + html_printer::begin_page): Altered to be XHTML compliant. + (html_printer::write_header): Updated. + (html_printer::troff_tag): Call do_math. + (html_printer::insert_split_file, html_printer::do_file_components, + html_printer::write_navigation): Create XHTML file components if + necessary and also produces a groff signature if requested. + (~html_printer): Call writeHeadMetaStyle at appropriate places + depending upon html_dialect. + (html_printer::special): Handle new tags `html<?p>' and `math<?p>'. + (main): Added options -x, -V, and -y. + (usage): Updated. + + * src/preproc/eqn/box.cpp: Create a distinction between + the MathML device and the XHTML device. + (do_text): Issue a newline at the end of the equation if XHTML was + specified. + (box::top_level): Prefix the output of an equation by the .MATHML + macro. + (output_string): Suppress \n if XHTML was specified. + + * src/preproc/eqn/main.cpp (xhtml): New global flag. + (inline_equation): Skip leading spaces after inline equation for + XHTML device. + (main): Set `xhtml' flag if `-Tmathml:xhtml' is specified. + + * src/preproc/eqn/eqn.h (xhtml): New external flag. + + * src/preproc/eqn/text.cpp (entity_table): Fix typo. + + * src/preproc/html/pre-html.cpp (html_dialect): New enumeration. + (dialect, eqn_flag): New global variables. + (html_system): Improve debugging support. + (alterDeviceTo): Test for -Txhtml when altering device to the image + device and reset to -Txhtml. + (addZ): Renamed to... + (addArg): This. + Introducea a general parameter. + (print_args): New debugging function. + (char_buffer::run_output_filter): Use print_args and addArg rather + than addZ. + (char_buffer::do_html, char_buffer::do_image): Add -rxhtml=1 command + line parameter as an argument to the html generation of text when + xhtml is needed. Include -e on the command line if mathml is + required. + (scanArguments): Allow -e, -V, -y and -x options. + -V, -y are handled by the back end. -e sets `eqn_flag'. + -x determines HTML dialect. + + * src/roff/groff/groff.cpp (possible_command): New method + `clear_name'. + (main): Set eflag if -e is present on command line. + Set is_xhtml if -Txhtml is present. + Pass `-x x' to the HTML pre and post processors. + Pass `-e' to the HTML pre processor if required. + Pass `-Tmathml:xhtml' to eqn if XHTML is requested. + + * src/roff/troff/input.cpp (init_input_requests): Introduce new + number register `\n[.O]'. + + * tmac/s.tmac: (LP): Use .nop for semantic sugar. + (cov*ab-init) reformat. + (@EQ): Use EQN-HTML-IMAGE and friends rather than HTML-IMAGE. + (CHECK-FOOTER-AND-KEEP): Define FS, FE such that they use + <cite></cite> for the html device rather than generate images for + footnotes. + + * tmac/troffrc-end: Define EQN-HTML-IMAGE, + EQN-HTML-IMAGE-END, EQN-HTML-IMAGE-RIGHT, + EQN-HTML-IMAGE-LEFT, EQN-HTML-IMAGE-INLINE, + EQN-HTML-DO-IMAGE, EQN-HTML-IMAGE-END as null strings. + + * tmac/www.tmac: (HTML<?p>): New macro. + (MATH<?p>): New macro. + (IMG, PIMG, MPIMG, HR): Use XHTML compliant syntax. + (www-emit-ltag): New macro. + (www-push-li): Updated. + (ULS): Ensure that tags are balanced in order by use of + www-emit-ltag. + (ULE): Likewise: Use www-emit-ltag and shut down paragraphs in + order. + (OLS, OLE, DLS, DLE): Ditto. + <global>: Define EQ and EN to EQN-HTML-IMAGE and EQN-HTML-IMAGE-END + respectively. + (www-li-ul, www-li-ol, www-li-dl): Updated. + (EQN-HTML-IMAGE, EQN-HTML-IMAGE-RIGHT, EQN-HTML-IMAGE-LEFT, + EQN-HTML-IMAGE-INLINE, EQN-HTML-DO-IMAGE, EQN-HTML-IMAGE-END, + MATHML): New macros. + +2007-09-17 Werner LEMBERG <wl@gnu.org> + + * man/groff_font.man: Document `unicode' keyword. + * doc/groff.texinfo (DESC File Format): Synchronize with + groff_font.man. + +2007-09-15 Werner LEMBERG <wl@nu.org> + + * man/groff.man: Document `\_'. + * doc/groff.texinfo: Ditto. + Remove references to `\@' which isn't a valid escape sequence in + groff. + + + * tmac/unicode.tmac: Add ` and '. + * tmac/html.tmac: Load unicode.tmac. + +2007-09-14 Werner LEMBERG <wl@gnu.org> + + * tmac/unicode.tmac: Make `-' a pure input character by mapping it + to `hy'. + + * src/roff/troff/input.cpp (init_charset_table): Handle `hy'. + +2007-09-11 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/string.cpp (string::remove_spaces): Fix memory + allocation. + + * src/preproc/tbl/table.cpp (table::allocate): Initialize + `blockflag' array. + +2007-09-10 Keith Marshall <keith.d.marshall@ntlworld.com> + + * README.MinGW: Add warnings about use of MSYS-RXVT, and about + defective GnuWin32 versions of netpbm/libpng. + +2007-07-15 Keith Marshall <keith.d.marshall@ntlworld.com> + + * tmac/s.tmac (cov*first-page-init): Remove invoking trap, to avoid + possible recursion. + +2007-07-11 Werner LEMBERG <wl@gnu.org> + + * gendef.sh: Add shebang. + +2007-07-05 Werner LEMBERG <wl@gnu.org> + + * tmac/papersize.tmac: Fix dimensions of executive paper format. + Reported by John Rupley <rupley@u.arizona.edu>. + +2007-07-02 Keith Marshall <keith.d.marshall@ntlworld.com> + + * tmac/s.tmac (cov*first-page-init): Emit error message if not in + top-level environment. + +2007-06-12 Werner LEMBERG <wl@gnu.org> + + * src/devices/xditview/TODO, NEWS: Updated. + * src/devices/xditview/Makefile.sub (install_data, uninstall_sub): + Handle `GXditview-color'. + * src/devices/xditview/gxditview.man: Updated. + + * m4/groff.m4 (GROFF_APPRESDIR_CHECK): Updated. + * m4/codeset.m4, m4/glibc21.m4, m4/iconv.m4, m4/lib-link.m4: Updated + from `gnulib' git repository. + + * configure.ac: Updated. + * configure: Regenerated (using autoconf 2.61). + + * config.guess, config.sub: Updated from `config' CVS repository. + * config.rpath, install-sh, mkinstalldirs: Updated from `gnulib' git + repository. + +2007-06-12 Tadziu Hoffmann <hoffmann@usm.uni-muenchen.de> + + * src/devices/xditview/GXditview.ad: Split off color definitions + into... + * src/devices/xditview/GXditview-color.ad: This new file. + +2007-06-08 Fabrice Ménard <menard.fabrice@wanadoo.fr> + + * tmac/fr.tmac: Handle chapter system for `me'. + +2007-06-05 Tadziu Hoffmann <hoffmann@usm.uni-muenchen.de> + + * src/devices/xditview/xditview.c (main): Add support for + accelerators. + + * src/devices/xditview/GXditview.ad: Updated. + Make widget more colourful. + +2007-05-30 Werner LEMBERG <wl@gnu.org> + + * tmac/groff_mdoc.man: Convert `-' to `\-' where appropriate. + Recommend `tbl' instead of `-column' lists for more complicated + cases. + +2007-05-21 Werner LEMBERG <wl@gnu.org> + + * src/devices/grops/ps.cpp (ps_printer::set_char): Handle subfonts + correctly. + +2007-04-10 Werner LEMBERG <wl@gnu.org> + + In pic, make rounded boxes work with colors. Reported by Urs Eggli + <Urs.Eggli@zuerich.ch>. + + * src/preproc/pic/common.h (common_output), src/preproc/pix/output.h + (output): Add color parameter to `rounded_box' member function. + + * src/preproc/pic/common.cpp (common_output::rounded_box): Use it. + + * src/preproc/pic/object.cpp (box_object::print): Pass `color_fill' + to `out->rounded_box'. + +2007-04-09 Michail Vidiassov <master@iaas.msu.ru> + + * font/devps/generate/textmap: Add Greek letters and some more. + + * src/utils/afmtodit/afmtodit.tables: Change values of `Delta', + `Omega', and `mu' to the ones from aglfn.txt. + +2007-04-08 Keith Marshall <keith.d.marshall@ntlworld.com> + + * tmac/s.tmac (SN): Define unconditionally. + (SN-STYLE): New string; define. + + * NEWS, tmac/groff_ms.man, doc/groff.texinfo (SN-STYLE): Document it. + +2007-03-22 Werner LEMBERG <wl@gnu.org> + + * tmac/pspic.tmac: Fix harmless numeric overflow warning. Reported + by Jörg van den Hoff <j.van_den_hoff@fzd.de>. + +2007-03-20 Werner LEMBERG <wl@gnu.org> + + * tmac/trace.tmac (rn): Added. + (nr, ds, ds1, as, as1, substring): Restore escape character while + executing the macro. + (nr): Remove dead code. + + * src/preproc/eqn/box.cpp (box::top_level): Use \E in string + definitions to make them traceable. + +2007-03-19 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cpp (get_copy): Add third argument to control + whether \E shall be expanded. + (get_char_for_escape_name): Allow \E. + +2007-03-15 Werner LEMBERG <wl@gnu.org> + + * tmac/s.tmac (MO, CH, pg*OH, pg*EH, pg*OF, pg*EF, *, [., .], + par*define-font-macro, \[hooko]): Use \E to make it traceable. + + (ref*field): Add argument to control the space between previous and + current argument. + Update all callers. + (ref*add-N): Fix handling of opening parenthesis. Problem reported + by Jörg van den Hoff <j.van_den_hoff@fzd.de>. + +2007-03-14 Werner LEMBERG <wl@gnu.org> + + * tmac/trace.tmac (als): Added. + (de, de1, am, am1): Make traced macros aliased with .als work. + +2007-02-25 Werner LEMBERG <wl@gnu.org> + + * src/devices/xditview/TODO: Add some more items. + + * Makefile.comm (.man.n): Add @APPRESDIR@. + Sort entries. + + * src/devices/xditview/gxditview.man: Document GXditview resource + file. + Other documentation enhancements based on a patch from Jörg. + +2007-02-25 Tadziu Hoffmann <hoffmann@usm.uni-muenchen.de> + Joerg van den Hoff <j.van_den_hoff@fzd.de> + + * src/devices/xditview/GXditview.ad: Make all keys work regardless + of the current mouse position. + +2007-02-20 Werner LEMBERG <wl@gnu.org> + + * tmac/groff_man.man: Revised to improve visual appearance. + Reduce use of future tense. + + * tmac/groff_trace.man: Revosed to improve visual appearance. + +2007-02-19 Eric S. Raymond <esr@snark.thyrsus.com> + + Make groff.man viewer-portable. + + * tmac/groff.man: Eliminate use of .eo/.ec. + (.REQ): Surround args 2 through N with quotes. This will enable us + not to rely on the shift request, which is nonportable. + (ExecFF): Remove. The code is simpler without it. + +2007-02-18 Eric S. Raymond <esr@snark.thyrsus.com> + + * tmac/groff_www.man: Viewer-portability fixes. + +2007-02-16 Eric S. Raymond <esr@snark.thyrsus.com> + + * man/groff.man: Remove some unneeded code and a no-longer-used + inclusion of the www macros. + +2007-02-12 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/table.cpp (compute_span_width): Fix use of + AVAILABLE_REG. + (table::compute_widths): Simplify. + +2007-02-11 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/table.h: Don't include `stdbool.h'. + (table): Replace `bool' type with `char' for orthogonality. + Update all users. + + * src/preproc/tbl/table.cpp (block_entry::do_divert): Fix usage of + AVAILABLE_REG and COLCOUNT_REG. + (table::table): Fix order call of initializers. + (table::~table): Deallocate `blockflag'. + +2007-02-09 Eric S. Raymond <esr@snark.thyrsus.com> + + A try at the new rule for block column allocation is now enabled by + the new `experimental' global option: The horizontal space up to the + right margin which is not used by columns without text blocks is + evenly distributed to the columns with text blocks. + + It doesn't work right as yet; there appears to be some error in the + computation of `3avail', the available line length. The purpose of + this patch is (a) to make experimenting with other formulas easy, + and (b) leave the infrastructure for flag `experimental' in place + for future experiments. Do not document any behavior associated + with this flag! + + * src/preproc/tbl/table.h: Include `stdbool.h'. + (table): Make `flags' public. + Add `count_block_columns' function. + Add `blockflag' array. + Add `EXPERIMENTAL' enumeration value. + + * src/preproc/tbl/table.cpp (AVAILABLE_REG, COLCOUNT_REG): New + macros. + (table_entry): New member `parent' so that class and subclass + members can set a parent field. Update all users. + (block_entry::do_divert): Handle `EXPERIMENTAL' flag. + (block_entry::do_width): Set the parent's `blockflag'. + (table::allocate): Handle `blockflag'. + (table::count_block_columns): New function. + (compute_span_width): Adjust AVAILABLE_REG. + (table::compute_widths): Handle COLCOUNT_REG and AVAILABLE_REG. + + * src/preproc/tbl/main.cpp (process_options): Handle `experimental' + option. + +2007-02-08 Zhao, Yu (William) <yzhao2@alcatel-lucent.com> + + * src/devices/grodvi/dvi.cpp (draw_dvi_printer::draw) <'e'>: Set + line thickness. + +2007-02-08 Werner LEMBERG <wl@gnu.org> + + * man/groff_out.man (offset): Make it work reliably. + +2007-02-07 Eric S. Raymond <esr@snark.thyrsus.com> + + * man/groff_out.man: Simplify some font changes so \fP is less + likely to do something surprising. + + * man/groff_out.man: We can simplify the command macros still + further if we stop trying to hide structural requests inside them. + Also, fix some instances of \} at start of line without a dot, and + make some font changes explicit in strings. + + * man/groff_out.man: Cleanup -- remove now-unneeded uses of .do and + .cp. + + * man/groff_out.man: Final step: Reduce x-command, get rid of eo/ec + calls and fix macros to do without them. File should now be + viewer-portable. + + * man/groff_out.man: Fourth step: Eliminate use of eqn in favor of + micromotions that produce the same visual result and can be lifted + to XML-DocBook. + + * man/groff_out.man: Third step: Reduce Da-comand, fix a + call-sequence bug in the original. + + * man/groff_out.man: Second step: Reduce D-commmand and D-command+, + move font-change escapes to portable form. + + * man/groff_out.man: First step in macro simplification; eliminate + list1..n, simplify .offset and .index_offset so they no longer + require groff-specific features or eqn (instead, use troff + micromotions for subscripting). + +2007-02-06 Eric S. Raymond <esr@snark.thyrsus.com> + + * src/preproc/eqn/eqn.man: Minor corrections. + + * tmac/an-ext.tmac: Change .UR/.UE and .MT/.ME so the start macro no + longer takes a second argument that is pasted to the end of the + generated text. Instead, the end macro takes an argument that does + the same thing. + + * man/ditroff.man, man/groff_diff.man, man/groff.man, + man/groff_out.man, man/groff_tmac.man, man/roff.man, + src/roff/groff/groff.man, src/roff/grog/grog.man, + tmac/groff_man.man, tmac/groff_trace.man: Update accordingly. + + * src/roff/troff/troff.man: .SY and .YS are canned macros now, + so we can use them here. + +2007-02-05 Eric S. Raymond <esr@snark.thyrsus.com> + + * src/preproc/eqn/lex.cpp, src/preproc/eqn/eqn.man: + By popular demand, make ... set three lower dots again + and introduce a new predefined macro 'cdots' to set + three centered dots. + +2007-02-05 Werner LEMBERG <wl@gnu.org> + + * src/preproc/eqn/eqn.man: Revised. + + * src/preproc/eqn/text.cpp (map, special_char_boc::output): Use + `const'. + (spacing_type): Fix typo. + (special_to_entity): Use `const'. + Remove unused variable. + * src/preproc/eqn/other.cpp (font_box::output): Use `const'. + +2007-02-05 Eric S. Raymond <esr@snark.thyrsus.com> + + * src/devices/grotty/grotty.man: \m[] and \M[] aren't portable, + which is a shame as the effect was cute. + +2007-02-04 Eric S. Raymond <esr@snark.thyrsus.com> + + * man/groff_tmac.man, man/groff_diff.man: Portability conversion; + rip out over-elaborate macrology, use .EX/.EE and .UR/.UE where + possible, remove preamble declarations and macros that are no + longer needed. Conversion checked using the protocol described in + tmac/TESTING-HINTS. + +2007-02-03 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac (LP, IP, HP): Use .ns to suppress additional + vertical space. + +2007-02-03 Eric S. Raymond <esr@snark.thyrsus.com> + + * tmac/groff_man.man: Documented the extension macros, and + added portability advice. + + * MORE.STUFF: More-stuff entries for doclifter and pic2plot. + + + Add support for MathML output to eqn. + + The strategy used is very simple and relies on the fact that the box + models of eqn and Presentation MathML differ in only trivial ways. + It leaves the grammar and existing internal object structures + unchanged. A new global, `output_format', is defined as an + enumerated type with values {troff, mathml}. Most of the functions + and methods that emit actual output acquire a top-level conditional, + dispatching on this global, which has one arm for troff mode and one + for MathML mode. In most cases the MathML arm is drastically + simpler. + + (This strategy could be easily generalized to support other output + formats. TeX is a possibility that leaps to mind.) + + The only even moderately tricky changes are in the lexer. Some of + the predefined macros used constructs like `up', `down', `fwd', + `back', and `vcenter' that have no equivalents in MathML. I + attacked this problem in these ways: + + 1. I eliminated three uses of `back' to compose characters in favor + of using equivalent groff specials `\(<<', `\(>>', and `\(<>' + that did not exist when these macros were written. (This will be + a quality improvement for troff users.) + + 2. I eliminated one use of `vcenter' by using \\(md. (Likewise...) + + 3. I then split the table of pre-definitions in three; one large + common table and two small troff-specific and MathML-specific + tables. Use of troff-only operations (up, down, back, fwd, + vcenter) is now confined to the former. The latter now uses + `size big' and drops out the explicit positioning operations, + counting on MathML processors to do them. + + POTENTIAL TROUBLE SPOTS: + + Here are notes for reviewers on places I'm not 100% sure I've done + the right thing: + + * In the process of preparing the troff table, I translated three + definitions (dot_def, dotdot_def, and utilde def) that previously + used explicit \v escapes to use `up' and `down' instead. I + modeled the new definitions on the way `vec' and `dyad' work, but + it's possible I got something subtle wrong. + + * I'm not certain the MathML implementation of font_box::output() is + right, because I don't quite get what the switcheroo between + `current_roman_font' and `old_roman_font' is supposed to + accomplish. It does seem to generare good MathML, though. + + Finally, I made one purely cosmetic change in `text.cpp'; I replaced + with an enum some magic numbers for spacing types that I thought + were too ugly to live. + + REMAINING ISSUES: + + The entirety of eqn is translated when `-TMathML' is specified, + with the following exceptions... + + Limitations that cannot be fixed include non-support for special, + up/down/fwd/back, and vcenter. + + Limitations that might be fixable include non-support for mark and + lineup. I will investigate further, but if these can be implemented + at all it's going to be in a very complicated and nasty way. + + The way character boxes are output means that each digit of a + multi-digit number gets its own <mn></mn> tag pair in the MathHTML. + While this is not technically wrong for Presentation MathML, it is + ugly and inefficient. Fixing this will require implementing a + little state machine in the `text.cpp' output method. + + * src/preproc/eqn/box.cpp, src/preproc/eqn/delim.cpp, + src/preproc/eqn/eqn.h, src/preproc/eqn/eqn.man, + src/preproc/eqn/lex.cpp, src/preproc/eqn/limit.cpp, + src/preproc/eqn/list.cpp, src/preproc/eqn/main.cpp, + src/preproc/eqn/other.cpp, src/preproc/eqn/over.cpp, + src/preproc/eqn/pile.cpp, src/preproc/eqn/script.cpp, + src/preproc/eqn/sqrt.cpp, src/preproc/eqn/text.cpp, + src/preproc/eqn/eqn.man: MathML output mode. + + * NEWS: Document it. + +2007-02-02 Eric S. Raymond <esr@snark.thyrsus.com> + + * src/roff/groff/groff.man: Converted to use .SY/.OP/.YS + and for cross-viewer portability. Conversion checked + using the protocol described in tmac/TESTING-HINTS. + +2007-02-02 Werner LEMBERG <wl@gnu.org> + + * tmac/an-ext.tmac (ME): Don't use `\:'. + + * src/roff/grog/grog.man: Further refinements and normalizations. + +2007-02-02 Eric S. Raymond <esr@snark.thyrsus.com> + + * src/roff/grog/grog.man: Converted to use .SY/.OP/.YS and for + cross-viewer portability. Conversion checked using the protocol + described in tmac/TESTING-HINTS. + +2007-02-01 Eric S. Raymond <esr@thyrsus.com> + + * tmac/TESTING-HINTS: Added. + +2007-02-01 Eric S. Raymond <esr@thyrsus.com> + + Enable the support for Bell archaisms on .SC, so the `-r bell' + switch is no longer needed to format old AT&T papers like + the EQN user guide. + + * tmac/s.tmac (.SC, .UC, .P1, .P2): Updated. + + * tmac/groff_ms.man, doc/groff.texinfo, NEWS: Updated. + +2007-02-01 Eric S. Raymond <esr@thyrsus.com> + + Add some Bell labs extensions to the -ms macros. + + * tmac/s.tmac (.SC, .UC, .P1, .P2) [bell]: New macros. + + * tmac/groff_ms.man, doc/groff.texinfo, NEWS: Document `-r bell'. + +2007-01-30 Werner LEMBERG <wl@gnu.org> + + * tmac/an-ext.tmac (\n[EX]): Rename to \n[mX]. + (\n[mH]): New register (set if grohtml is used). + (\n[SY]): Rename to \n[mS]. + (\n[a]): Rename to \n[mA]. + (\n[i]): Rename to \n[mI]. + (mU): New auxiliary input trap macro. + (UR, UE): Replace stub with real definition. + (URL): Remove. + (MT, ME): New macros. + (MTO): Remove. + (EX, EE): Don't insert vertical space. + Use a register to store (and restore) the current font. + + * man/ditroff.man, man/groff_diff.man, man/roff.man: Revised, based + on patches from Eric Raymond. + Fix URL addresses. + +2007-01-22 Gaius Mulley <gaius@glam.ac.uk> + + * tmac/an-old.tmac (an-trap, HP): Make `HP' work as expected. + +2007-01-22 Werner LEMBERG <wl@gnu.org> + + * tmac/an-ext.tmac: Protect against being sourced twice. + (URL, EE): Use always two backslashes. + (MTO): New macro. + +2007-01-16 Werner LEMBERG <wl@gnu.org> + + * tmac/an-ext.tmac: Remove code for grodvi. + (SY): Fix typos. + Don't insert empty line. + (URL, TQ): Fix typos. + +2007-01-14 Werner LEMBERG <wl@gnu.org> + + * tmac/an-ext.tmac: New file, containing extension macros + for -man. See discussion on the groff mailing list for + background information. + * tmac/an-old.tmac: Load an-ext.tmac. + Decorate .ds and as with comment escapes where appropriate. + * tmac/Makefile.sub (NORMALFILES): Add an-ext.tmac. + +2007-01-05 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/tbl.man: Document .T# and \n[TW]. + +2007-01-04 Gaius Mulley <gaius@glam.ac.uk> + + Make -me macros ready for grohtml. + + * tmac/e.tmac: Load devtag.tmac. + (need_eo_h, need_eo_tl, need_tl): New registers. + (check_need_title, (x-html, )x-html, xp-html): New macros. + (@h, hl, ip, @p, sh, (b, (l, EQ, EN, TS, TE, PS, PE, GS, GE, r, i, + b, rb, bi, bx, (x, )x, xp): Adapt for use with grohtml. + (bp): Rename to @b only if output device is not html. + +2007-01-01 Werner LEMBERG <wl@gnu.org> + + * man/groff_font.man: Document empty lines. + + * src/utils/afmtodit/afmtodit.pl: Always print a header comment at + the very beginning of the output. + [!$opt_x]: Fix typo. + + * font/devps/*: Regenerate font definition files. + +2007-01-01 Werner LEMBERG <wl@gnu.org> + + * font/devps/generate/Makefile (AFMTODIT): Use -c flag. + + * font/devps/*: Regenerate font definition files. + +2006-12-31 Werner LEMBERG <wl@gnu.org> + + * Makefile.in (oldfontdir): New variable. + (MDEFINES): Add $(oldfontdir). + (uninstall_dirs): Remove `current' link. + Remove $(oldfontdir). + + * Makefile.comm (oldfontsubdir): New variable. + (install_dev): Install files collected in $(OLDDEVFILES) into + $(oldfontsubdir). + (uninstall_dev): Remove data in $(oldfontsubdir). + (.man.n): Handle @OLDFONTDIR@. + + * src/devices/grodvi/grodvi.man, src/devices/grohtml/grohtml.man, + src/devices/grolbp/grolbp.man, src/devices/grolj4/grolj4.man, + src/devices/grotty/grotty.man, src/devices/xditview/gxditview.man: + Document GROFF_FONT_PATH. + + * src/devices/grops/grops.man: Document GROFF_FONT_PATH and + old font description files. + + * font/devps/Makefile.sub (OLDDISTFILES, OLDDEVFILES): New + variables. + + * font/devps/old/*: New directory, holding the previous version + of the 35 Adobe core font description files. + + * font/devps/*: Regenerated the 35 Adobe core fonts, using the + Adobe-Core35_AFMs-229.tar.bz2 bundle from ftp.dante.de. + + * NEWS: Document font update. + +2006-12-31 Werner LEMBERG <wl@gnu.org> + + * font/devps/generate/Makefile (symbolsl.afm): Use $(srcdir). + + * Makefile.comm (fonts): New (empty) target. + * Makefile.in (TARGETS): Add `fonts'. + + * MANIFEST: Add `chem'. + + * doc/groff.texinfo (Changing Fonts): Font translations with .ftr + can't be chained. + +2006-12-26 Werner LEMBERG <wl@gnu.org> + + * src/preproc/grn/hdb.cpp: Include gprint.h later. From NetBSD. + +2006-12-19 Werner LEMBERG <wl@gnu.org> + + Add support for German. For activation, simply use -mde or -mden + (for traditional and new orthgraphy, respectively) as the last + macro package. + + * tmac/de.tmac, tmac/den.tmac, tmac/hyphen.det, tmac/hyphen.den, + tmac/hyphenex.det: New files, partly taken from CTAN. + * LICENSES: Updated list of hyphenation patterns. + * man/groff_tmac.man: Mention de.tmac and den.tmac. + * NEWS: Updated. + +2006-12-11 Werner LEMBERG <wl@gnu.org> + + Support up to 32 macro arguments in pic (and up to 16 on EBCDIC + hosts). + + * src/preproc/pic/lex.cpp (ARG1): Redefine. Update all users. + (MAX_ARG): New macro. Use it everywhere to replace hard-coded + limit of 9 arguments. + (process_body): Handle argument numbers with more than a single + digit. + (interpolate_macro_with_args): Protect against exceeding number of + arguments. + + * NEWS, src/preproc/pic/pic.man, doc/pic.ms: Document it. + +2006-12-10 Werner LEMBERG <wl@gnu.org> + + * Makefile.in (site.exp, docheck): Commented out. Not working + currently. + (check): Just emit dummy message. + +2006-12-08 Werner LEMBERG <wl@gnu.org> + + During installation, create soft link from <version> to `current' in + <datadir>/groff. + + * Makefile.comm (install): Renamed to... + (do_install): This. + (prefix_must_exist): Removed. Code moved to Makefile.in. + + * Makefile.in (TARGETS): Remove `install'. + + (install): New target which first creates the directory given by + --prefix, then calling `make' to do the installation, and finishing + with the creation of the soft link. + +2006-11-21 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile.sub (uninstall_sub): Fix names for info files. + +2006-11-18 Werner LEMBERG <wl@gnu.org> + + * man/roff.man, doc/groff.texinfo: Improve history of roff, based on + information from Tom Van Vleck <thvv@multicians.org>. + +2006-11-16 Werner LEMBERG <wl@gnu.org> + + * tmac/62bit.tmac: New macro package. + * tmac/Makefile.sub (NORMALFILES): Add it. + * NEWS: Document it. + + * tmac/trace.tmac: Protect against being loaded again. + (nr): Always show result. + + * doc/groff.texinfo (Input Encodings): Document latin-5. + + * man/grof_tmac.man: Document sv, latinX, cp1047, 60bit, ec. + +2006-11-13 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo (Page Location Traps) [.wh]: Give more details + on negative trap positions. + +2006-11-10 Werner LEMBERG <wl@gnu.org> + + * Makefile.comm (.man.n): Handle @DATASUBDIR@. + +2006-11-09 Werner LEMBERG <wl@gnu.org> + + * INSTALL: Move information about external installation from + INSTALL.gen into this file. + Updated. + + * INSTALL.gen: Update to new version (from texinfo CVS). + +2006-11-09 Bernd Warken + + * INSTALL.gen: Extend the file by information on `external + installation'. Reorder the installation instruction as `normal + installation'. + +2006-11-08 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile.sub (install_data): Take care of proper paths while + installing info files. Bug reported by Bernd Warken. + +2006-11-06 Bernd Warken + + * src/roff/grog/grog.pl: Rewrite. + - Call by `#! /usr/bin/env perl'. That isn't replaced. + - Rename usage() to version(). + - Use warnings. + - For `use strict', start all global variables with an upper case + character. Use `my' for all variables. Use several new variables. + - Add option `-h'. + - Add copyright to GPL and Emacs comment. + - Handle several `-m*' options. + - Fix handling of `-ms' and `-mm'. Add .TL and .NH. + - Allow options after file names. + - Allow only one `-' parameter (standard input). + - Add option abbreviations. + - Expand the usage information. + - Add `chem'. + - Add single quote "'" as additional first character and allow + arbitrary space after the first character. + + * src/roff/grog/grog.sh: Rewrite. + - Remove option `-e' of `sed'. + - Allow file names with space characters. + - Add option `-h'. + - Add copyright to GPL. + - Handle several `-m*' options. + - Fix handling of `-ms' and `-mm'. Add .TL and .NH. + - Allow options after file names. + - Allow only one `-' parameter (standard input). + - Add option abbreviations. + - Expand the usage information. + - Add `chem'. + - Add single quote "'" as additional first character and allow + arbitrary space after the first character. + + * src/roff/grog/Makefile.sub: + - Add copyright to GPL. + - Remove `grog:'. Move `grog.old:' to `grog:' in order to have a + fair chance to choose between the shell version and the Perl + version of `grog'. This is now again comparable to grog in groff + version 1.10. + + * src/roff/grog/grog.man: Rewrite. + - Move the license to GPL. + - New sections: OPTIONS, DETAILS, EXAMPLES, COPYING. + - Take over some setup and macros from `groffer'. + - Add information on options. + +2006-10-28 Werner LEMBERG <wl@gnu.org> + + * tmac/trace.tmac: Improve tracing of `.nr'. + Trace `.substring' also. + + * NEWS: Updated. + +2006-10-28 Bernd Warken + + * man/roff.man, src/roff/groff/groff.man: Add `chem', fix position + of groff development site, fix fonts. + + * News: Add information on `chem' and `groffer'. + +2006-10-26 Bernd Warken + + * Makefile.in (OTHERDIRS, NOMAKEDIRS): Add `chem' bundle. + +2006-10-26 Werner LEMBERG <wl@gnu.org> + + Add `\$^' escape to handle the parameters to a macro as a string + argument. + + * src/roff/troff/input.h (DOUBLE_QUOTE): New special character. + + * src/roff/troff/input.cpp (input_iterator, input_stack, + macro_iterator): Add `space_follows_arg' member function. + (macro_iterator::add_arg): Add parameter to set the `space_follows' + flag. + (arg_list): Add member `space_follows'. + Update constructor and all callers. + (decode_args): Store discarded double quotes. + (interpolate_args): Handle DOUBLE_QUOTE. + Add `\$^' escape. + (get_copy, token::next, composite_glyph_name): Handle DOUBLE_QUOTE. + + * tmac/trace.tmac: Trace .nr, .ds, .ds1, .as, .as1. + + * docs/groff.texinfo (Parameters), man/groff.man, + man/groff_diff.man, NEWS: Document it. + +2006-10-24 Bernd Warken + + * Makefile.in (NOMAKEDIRS): Add groffer subdirectories. + +2006-10-24 Werner LEMBERG <wl@gnu.org> + + * tmac/groff_trace.man: Mention problem with `\\\\'. + +2006-10-23 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo (Expressions): Improve documentation of `!'. + + * tmac/trace.tmac (return): Don't call `substring'. + +2006-09-10 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cpp (read_size): Revert previous change + w.r.t. `\s-[-...]'. + + * doc/groff.texinfo (Fractional Size Types): Clarify syntax of \s. + +2006-09-09 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cpp (read_size): Fix `\s[-\n[.s]]' so that it + behave the same as `\s-[\n[.s]]' (this is, emit a warning and set + point size to 1). Reported by Gunnar Ritter. + Also catch `\s-[-...]' and friends (causing an error). + +2006-09-06 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/env.cpp (environment::do_break): Insert zero-width + space only if there is no previous space. This fixes a bug which + caused unwanted filling of the last line in a paragraph. Thanks to + Gunnar Ritter for an analysis. + +2006-09-03 Werner LEMBERG <wl@gnu.org> + + * src/roff/groff/groff.cpp (main): Pass -U flag to pic also. + Reported by Jennifer Sayers <jenjen@isu.usyd.edu.au>. + +2006-09-01 Nick Stoughton <nick@msbit.com> + Werner LEMBERG <wl@gnu.org> + + Add a request `pev' to print environment information (similar to + `pnr' and `ptr' to print number registers and traps). + + * src/roff/troff/env.h (environment): Add member function print_env. + + * src/roff/troff/env.cpp: (environment::print_env): New function to + print a given environment state. + (print_env): New global function to iterate through the + environments, printing each one. + (init_env_requests): Register `pev'. + + * doc/groff.texinfo (Debugging), man/groff.man, man/groff_diff.man, + NEWS: Document `pev' request. + +2006-09-01 Bernd Warken + + * src/preproc/soelim/soelim.cpp (usage): Fix option argument of + `-I' to `dir'. + +2006-09-01 Werner LEMBERG <wl@gnu.org> + + * src/preproc/pic/main.cpp (usage): Add missing options. + +2006-08-25 Werner LEMBERG <wl@gnu.org> + + * src/preproc/soelim/soelim.man: Document how to insert `\' and ` ' + in file names. + +2006-08-19 Werner LEMBERG <wl@gnu.org> + + * configure: Regenerated. + +2006-08-18 Keith Marshall <keith.d.marshall@ntlworld.com> + + * m4/groff.m4 (GROFF_MAKEINFO): Correct `makeinfo version testing + logic; it previously caused an `expr' syntax error, if no version of + `makinfo' was present. Also, remove dependency on `makeinfo' in VPATH + builds, if an up to date `groff.info' is present in either `builddir' + or in `srcdir'. + +2006-08-12 Tadziu Hoffmann <hoffmann@usm.uni-muenchen.de> + + * font/devps/prologue.ps: Add BPhook. + + * src/devices/grops/grops.man: Document BPHook. + Reorder some sections for better readability. + +2006-08-12 Werner LEMBERG <wl@gnu.org> + + * src/include/lib.h (getlocale): New macro. + (setlocale, LC_ALL, LC_CTYPE) [!HAVE_SETLOCALE]: Define, as + suggested by Bruno. + + * src/preproc/preconv/preconv.cpp (main): Use getlocale. + +2006-08-11 Werner LEMBERG <wl@gnu.org> + + Add new flag to .cflags to enable hyphenation without looking at + hcode values. + + * src/roff/troff/charinfo.h (charinfo): New enumeration value + `IGNORE_HCODES'. + New member function `ignore_hcodes'. + + * src/roff/troff/node.cpp (break_char_node::add_self, + node::add_char): Updated. + + * doc/groff.texinfo, man/groff_diff.man, NEWS: Document it. + +2006-08-09 Werner LEMBERG <wl@gnu.org> + + Support composite Unicode characters again. Reported by Colin. + + * font/devhtml/R.proto: Renamed to... + * font/devhtml/R.in: This. + + * font/devutf8/R.proto: Renamed to... + * font/devutf8/R.in: This. + Add `charset' line. + + * font/make-Rproto: New script. + * font/devhtml/R.proto, font/devutf8/R.proto: Generated. + +2006-07-26 Werner LEMBERG <wl@gnu.org> + + * README: Fix description of CVS access. Reported by Joachim. + +2006-07-11 Werner LEMBERG <wl@gnu.org> + + Add a request `.fzoom' and a number register `.zoom' to magnify + fonts. + + * src/include/font.h (font): Add member variable `zoom'. + Add member functions `set_zoom' and `get_zoom'. + Remove `static' attribute from `scale' member function. + + * src/libs/libgroff/font.cpp (font::font): Updated. + (scale_round): New version with three parameters to handle zoom + factor. + (font::scale, font::get_width): Handle zoom factor. + (font::set_zoom, font::get_zoom): New functions. + (font::load): Handle `zoom' while computing `space_width'. + + * src/roff/troff/env.h: Declare `env_get_zoom'. + (environment): Add member function `get_zoom'. + + * src/roff/troff/env.cpp (environment::get_zoom): New function. + (init_env_requests): Initialize `.zoom' register. + + * src/roff/troff/node.cpp (font_info): New member functions + `set_zoom' and `get_zoom'. + (tfont): New member function `get_zoom'. + (env_get_zoom): New function. + (troff_output_file::set_font): Handle zoom factor. + (font_zoom_request): New function. + (init_node_requests): Initialize `fzoom' request. + + * docs/groff.texinfo (Changing Fonts), man/groff.man, + man/groff_diff.man, NEWS: Document `fzoom' request and `.zoom' + register. + + * src/roff/troff/TODO: Updated. + +2006-07-10 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo (Drawing Requests): Improve documentation of + \D'P ...'. + +2006-07-02 Werner LEMBERG <wl@gnu.org> + + * man/groff_tmac.man: Document usage of .PSPIC within diversions. + +2006-07-01 Werner LEMBERG <wl@gnu.org> + + * tmac/pspic.tmac: Make .PSPIC work for all devices. + Print image file name for devices which don't support PS image + inclusion. + Handle multiple inclusions. + Add lots of comments. + + * tmac/dvi.tmac, tmac/html.tmac, tmac/ps.tmac: Don't load + pspic.tmac. + + * tmac/troffrc: Load pspic.tmac. + + * man/groff_tmac.man: Update .PSPIC documentation. + + * NEWS: Updated. + +2006-06-29 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cpp (interpolate_macro): + s/probably/possibly/, as suggested by Keith. + +2006-06-28 Werner LEMBERG <wl@gnu.org> + + Add support for \D'p...' to grotty. + + * src/devices/grotty/grotty.cpp (tty_printer::draw): Move most of + its code to... + (tty_printer::line): This function. + (tty_printer::draw): Rewritten; just call either draw_line or + draw_polygon. + (tty_printer::draw_line, tty_printer::draw_polygon): New functions. + + * src/devices/grotty/grotty.man, NEWS: Document it. + +2006-06-27 Werner LEMBERG <wl@gnu.org> + + * src/preproc/refer/command.h (have_bibliography): New variable + declaration. + + * src/preproc/refer/command.cpp (bibliography_command): Set + `have_bibliography'. + + * src/preproc/refer/refer.cpp: Initialize `have_bibliography'. + (output_references): Emit warning only if `have_bibliography' is + set. + +2006-06-15 Michail Vidiassov <master@iaas.msu.ru> + + * font/devps/Makefile.sub (DISTFILES): Add freeeuro.afm. + * font/devps/generate/Makefile (clean): Don't remove symbolsl.afm + and zapfdr.afm. + +2006-06-15 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/tbl.man: Document limitations of .TS/.TE within a + macro (as suggested by Tadziu Hoffmann). + +2006-06-12 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/tbl.man: Add example for use of .TS/.TE within a + macro (as suggested by Tadziu Hoffmann). + +2006-06-05 Werner LEMBERG <wl@gnu.org> + + * tmac/strip.sed: Strip `\#' also. + + * doc/groff.texinfo (Operators in Conditionals): Document usage of + \? for string comparison. + +2006-06-04 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Add more index entries for copy-in mode. + (Changing Fonts) <.ft>: Document that a font definition file must + not be called `DESC'. + +2006-05-31 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cpp (token::next) <\N>: Catch negative values + here. + + * doc/Makefile.sub (EXAMPLEFILES): Move gnu.eps to... + (PROCESSEDEXAMPLEFILES): Here. + +2006-05-30 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/font.cpp (font::load): Reject fonts called + `DESC'. + Reduce number of false positives for `.if F ...' conditionals. + Improve warning messages. + +2006-05-29 Werner LEMBERG <wl@gnu.org> + + * tmac/Makefile.sub: Add copyright notice. + (NORMALFILES): Add man.tmac and ms.tmac. + (SPECIALFILES): Remove man.tmac and ms.tmac. + (CLEANADD): Remove man.tmac-sed and ms.tmac-sed. + (install_data, uninstall_sub): Don't handle man.tmac and ms.tmac + specially. + (stamp-sed): Don't handle man.tmac and ms.tmac. + Remove obsolete components in sed's regexp. + + * doc/Makefile.sub (EXAMPLEFILES): Add gnu.eps. + + * Makefile.in (OTHERDIRS, NOMAKEDIRS): Add hdtbl. + +2006-05-28 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo (History): Correct death circumstances of Joe + Ossanna. + +2006-05-27 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac (an-do-tag): Simplify. + +2006-05-26 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac (an-do-tag): Make margin characters work. + (an-header, an-p-footer): Use named environment. + + * src/roff/troff/env.cpp (environment::copy): Copy margin character + node. + +2006-05-21 Werner LEMBERG <wl@gnu.org> + + * tmac/trace.tmac (de1): Fix serious typo (.di -> .do) and minor + omissions. + +2006-05-11 Keith Marshall <keith.d.marshall@ntlworld.com> + + * src/roff/groff/groff.man: Remove superfluous word `intermediate'. + +2006-05-10 Keith Marshall <keith.d.marshall@ntlworld.com> + + * src/roff/groff/groff.man: Update copyright notice. + Improved wording to describe effect of `-Z' option. + +2006-05-06 Werner LEMBERG <wl@gnu.org> + + * tmac/www.tmac: Decorate `.ds' with trailing `\"' where missing. + Normalize handling of `"' in arguments. + (PIMG): Remove debug message. + Simplify code. + +2006-05-05 Werner LEMBERG <wl@gnu.org> + + * src/devices/grohtml/post-html.cpp (page::add_and_encode): Don't + swallow character immediately after `\[...]'. + Simplify code. + +2006-05-02 Gaius Mulley <gaius@glam.ac.uk> + + * tmac/www.tmac (PIMG): Fix the HTML device specific components. + +2006-05-02 Larry Kollar <kollar@alltel.net> + + * tmac/www.tmac (PIMG): Really default to `-C' if the alignment + option is missing. + +2006-04-30 Michail Vidiassov <master@iaas.msu.ru> + + * src/utils/afmtodit/afmtodit.pl: New option `-c' to add font + information as a comment in output. + * src/utils/afmtodit/afmtodit.man, NEWS: Document it. + +2006-04-26 Werner LEMBERG <wl@gnu.org> + + * src/devices/grohtml/post-html.cpp (html_printer::~html_printer): + Handle current_paragraph only if it is non-NULL. + + * src/libs/libdriver/input.cpp (parse_x_command <'F'>, do_file + <'F'>): Use `get_extended_arg' to behave as documented. Reported by + Bill Ward <william.a.ward.jr@erdc.usace.army.mil>. + + + Surround the (pseudo) file name for the .pso request with `<' and + `>'. + + * src/roff/troff/node.cpp (real_output_file, troff_output_file): Add + second parameter to `really_put_filename' and `put_filename'. + (troff_output_file::really_put_filename): Emit `<' and `>' around + filename if second argument is set. + * src/roff/troff/node.h: Updated. + + * src/roff/troff/input.cpp (file_iterator::file_iterator, + file_iterator::set_location): Update to changes in node.cpp. + +2006-04-25 Tetsurou Okazaki <okazaki@FreeBSD.org> + + * src/preproc/preconv/preconv.cpp (do_file): Fix conditional + preprocessor expression (I18N -> HAVE_ICONV). + (main): Fix handling of option `-h'. + Fix conditional preprocessor expression. + +2006-04-04 Werner LEMBERG <wl@gnu.org> + + Implement new number register `.br' which is set to 1 if a macro has + been called as .foo and to 0 if called as 'bar. This is useful for + -mtrace so that requests can be reliably traced too. + + * src/roff/troff/input.cpp (input_iterator): Add virtual function + `get_break_flag'. + (macro_iterator): Add `with_break' member and `get_break_flag' + function. + Update constructors. + (input_stack): Add function `get_break_flag'. + (break_flag_reg): New number register class. + (input_init_requests): Register `.br'. + + * src/roff/troff/TODO: Updated. + + * tmac/trace.tmac: s/!!sp/!!!sp/. + Modify definitions of `de', `de1', `am', and `am1' to use \n[.br]. + + * docs/groff.texinfo (Requests), man/groff.man, man/groff_diff.man, + NEWS: Document it. + +2006-03-29 Werner LEMBERG <wl@gnu.org> + + * src/devices/grops/ps.cpp: s/must not/should not/ in warning + messages where appropriate. + +2006-03-28 Werner LEMBERG <wl@gnu.org> + + * configure.ac: Call AC_PROG_EGREP. + * configure: Regenerated. + + * Makefile.in (EGREP): New variable. + (MDEFINES): Add $(EGREP). + + * src/roff/grog/grog.sh: Treat .TH between .TS and .TE properly + (bug reported by Robert Goulding <Goulding.2@nd.edu>). + Use @EGREP@. + + * src/roff/grog/Makefile.sub (grog, grog.old): Use $(EGREP). + +2006-03-27 Werner LEMBERG <wl@gnu.org> + + Add two requests `.device' and `.devicem' which are equivalent to + `\X' and `\Y', respectively. + + * src/roff/troff/input.cpp (device_request, device_macro_request): + New functions. + (init_input_requests): Register them. + + * doc/groff.texinfo (Postprocessor Access), man/groff_diff.man, + man/groff.man, NEWS: Document them. + +2006-03-27 Gaius Mulley <gaius@glam.ac.uk> + + * src/roff/troff/input.cpp (encode_char): Emit special characters + for -Thtml as `\[...]'. + * src/devices/grohtml/post-html.cpp (page::add_and_encode): Updated. + + * doc/groff.texinfo (Postprocessor Access) <\X>: Updated. + +2006-03-27 Werner LEMBERG <wl@gnu.org> + + * tmac/Makefile.sub (NORMALFILES, SPECIALFILES): Add various missing + files. + +2006-03-26 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo (Writing Macros): More documentation on + end-of-macro symbol of `.de'. + (Diversions): Minor addition to `.di' description. + + * src/devices/grops/grops.man: Some clarifications regarding + insertion of PostScript snippets. + +2006-03-25 Michail Vidiassov <master@iaas.msu.ru> + + Add rules to generate `symbolsl.afm'. + + * font/devps/generate/zapfdr.sed, + font/devps/generate/symbolsl.awk: New files. + + * font/devps/generate/Makefile (symbolfont, PRINTAFM): New + variables. + (SS, clean): Updated. + (freeeuro.afm): Use $(srcdir). + (symbolsl.afm): New rule. + (zapfdr.afm): Use zapfdr.sed. + +2006-03-22 Dwight Aplevich <aplevich@uwaterloo.ca> + + * src/preproc/pic/pic.y (expr <INT>): Fix code. + +2006-03-22 Jörgen Grahn <jgrahn@algonet.se> + + * tmac/sv.tmac: Add missing translations and activate support for + other macro packages. + +2006-03-21 Francis GUDIN <fgudin@nerim.net> + + * tmac/doc-syms (Dx): New macro to identify DragonFly. + (doc-str-St--ieee1275-94, doc-str-St--isoC-amd1, + doc-str-St--isoC-tcor1, doc-str-St--isoC-tcor2): New standard + strings. + (doc-operating-system-FreeBSD-5.5, doc-operating-system-FreeBSD-7.0, + doc-operating-system-NetBSD-1.6.3, doc-operating-system-NetBSD-4.0 + doc-operating-system-DragonFly-*): New operating system strings. + + * tmac/groff_mdoc.man, NEWS: Document `Dx'. + +2006-03-21 Werner LEMBERG <wl@gnu.org> + + * src/preproc/pic/pic.y (object_spec THEN): For compatibility with + both DWB pic and dpic, make + + right; + line then down; + + equal to + + right; + line right then down; + + instead of + + right; + line 0 then down; + + * doc/pic.ms: Document this. + +2006-03-20 Werner LEMBERG <wl@gnu.org> + + * doc/pic.ms: With permission of Eric Raymond, put it under the + GPL. + + * NEWS: Updated. + +2006-03-19 Werner LEMBERG <wl@gnu.org> + + * src/preproc/pic/pic.y (expr <INT>): Really return integer part. + + * src/preproc/pic/objects.cpp (object_spec::make_line): Handle `at' + attribute in combination with `with'. Bug reported by Jennifer + Sayers <jenjen@mail.usyd.edu.au>. + +2006-03-19 Miklos Somogyi <msom@netspace.net.au> + + * doc/groff.texinfo (Manipulating Spacing): Improve documentation of + `.sp'. + +2006-03-18 Werner LEMBERG <wl@gnu.org> + + * LICENSE: Renamed to... + * LICENSES: This. Collect all licensing information in this file. + * tmac/README, src/libs/snprintf/README: Removed. + + * src/devices/grops/grops.man: Add section how to install fonts. + + * src/utils/xtotroff/xtotroff.c: Add GPL. + +2006-03-17 Werner LEMBERG <wl@gnu.org> + + * Makefile.comm (.y.cpp): Fix #line arguments in output. + +2006-03-13 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/tbl.man: Mention default length of text blocks. + + * tmac/doc-common (Os): Add more Darwin versions. + * tmac/groff_mdoc.man: Document them. + + * doc/groff.texinfo (Operators in Conditionals): Mention that `c' + works with \N'...' also. + * man/groff_diff.man: Ditto. Remove use of future tense where + possible. + +2006-03-12 Michail Vidiassov <master@iaas.msu.ru> + + * font/devps/generate/make-zapfdr, font/devps/symbolsl.ps, + font/devps/zapfdr.ps: Add `%%EndComments' line. + +2006-03-10 Larry Kollar <kollar@alltel.net> + + * doc/groff.texinfo (Headers and footers): Document PT, HD, and BT. + +2006-03-10 Werner LEMBERG <wl@gnu.org> + + * src/devices/grops/ps.cpp (ps_printer::do_exec, ps_printer::do_def, + ps_printer::do_mdef): Overlong lines now cause a warning message, + not an error. + +2006-03-09 Werner LEMBERG <wl@gnu.org> + + * font/devps/generate/make-zapfdr: New script for generating + `zapfdr.ps'. + +2006-03-08 Werner LEMBERG <wl@gnu.org> + + * doc/groff.css (pre): Fix `background-color' value. + +2006-03-04 Larry Kollar <kollar@alltel.net> + + * tmac/groff_ms.man: Document PT, HD, and BT. + +2006-03-04 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/node.cpp (make_glyph_node): Improve warning message + for single-letter glyph names. + +2006-03-02 Werner LEMBERG <wl@gnu.org> + + * tmac/sv.tmac: New file; currently holding only the Swedish strings + for -mm. + * tmac/hyphen.sv: New hyphenation pattern file for Swedish, taken + from CTAN. + * tmac/README: Updated. + +2006-02-27 Werner LEMBERG <wl@gnu.org> + + * tmac/trans.tmac (Liec, Letdate, Letns!14): Add it (for -mm). + * tmac/fr.tmac: Add French translations. + + * tmac/composite.tmac: Add entry for `:'. + +2006-02-26 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile.sub (HTMLEXAMPLEFILESALL): New variable. + (CLEANADD): Use it. + (install_html, uninstall_sub): Updated. + +2006-02-26 Bruno Haible <bruno@clisp.org> + + Introduce Unicode fonts. + + * font/devhtml/DESC.proto: Mark as unicode. + * font/devhtml/R.proto: Remove all charset entries that are already + in glyphuni.cpp. + * font/devutf8/DESC.proto: Mark as unicode. + * font/devutf8/R.proto: Remove all charset entries. + * src/include/font.h (font): New static field `is_unicode'. + Change order of fields. + * src/libs/libgroff/font.cpp: Include unicode.h. + (font::font): Update for changed order of fields. + (font::contains, font::get_width, font::get_height, font::get_depth, + font::get_italic_correction, font::get_left_italic_correction, + font::get_subscript_correction, font::get_character_type, + font::get_code, font::get_special_device_encoding): Handle both the + explicitly enumerated glyphs and use general code for Unicode fonts. + (font::load): Make the charset section optional when the font is + declared unicode. + (font::load_desc): Recognize the `unicode' attribute. + * src/libs/libgroff/fontfile.cpp (font::is_unicode): New variable. + +2006-02-26 Claudio Fontana <claudio@gnu.org> + + * Makefile.in: Add comment about DESTDIR. + + * Makefile.sub: Add DESTDIR to install and uninstall targets + to support staged installations. + * Makefile.comm: Likewise. + * doc/Makefile.sub: Likewise. + * contrib/eqn2graph/Makefile.sub: Likewise. + * contrib/grap2graph/Makefile.sub: Likewise. + * contrib/pic2graph/Makefile.sub: Likewise. + * src/devices/xditview/Makefile.sub: Likewise. + * src/preproc/eqn/Makefile.sub: Likewise. + * src/roff/grog/Makefile.sub: Likewise. + * src/roff/nroff/Makefile.sub: Likewise. + * src/utils/afmtodit/Makefile.sub: Likewise. + * src/utils/indxbib/Makefile.sub: Likewise. + * tmac/Makefile.sub: Likewise. + +2006-02-24 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/glyphuni.cpp (glyph_to_unicode_list): Use entry + for \-. + Remove commented out entries for \' and \` (there are no such glyph + names). + + * src/libs/libgroff/uniglyph.cpp (unicode_to_glyph_list): Remove + commented out entries for \' and \`. + + + * */*: s/legal/valid/ where appropriate. + +2006-06-23 Werner LEMBERG <wl@gnu.org> + + * font/devhtml/R.proto, font/devutf8/R.proto: Remove incorrect \' + and \` entries. + +2006-02-22 Werner LEMBERG <wl@gnu.org> + + Remove all remaining traces from the `shc' glyph. + + * src/libs/libgroff/glyphuni.cpp (glyph_to_unicode_list), + src/libs/libgroff/uniglyph.cpp (unicode_to_glyph_list): Remove + entry for `shc'. + + * font/devlatin1/R.proto, font/devcp1046/R.proto: Replace `shc' + entry with unnamed glyph. + + * tmac/html/tmac: Remove `shc' entry from call to `.cflags'. + + * src/preproc/preconv/preconv.cpp (unicode_entity): Handle U+00AD + specially. + +2006-02-22 Bruno Haible <bruno@clisp.org> + + Concretize the `glyph' datatype. + + * src/include/font.h (glyph): Remove class. + (glyph): Renamed from struct `glyphinfo'. + (glyph_to_index): New inline function. + (glyph_to_name): Make extern, not inline. + (glyph_to_number): Update. + (font): Use `glyph *' instead of `glyph'. + + * src/libs/libgroff/nametoindex.cpp (charinfo): Inherit from class + `glyph'. Make `name' field public. + (character_indexer, number_to_glyph, name_to_glyph): Use `glyph *' + instead of `glyph'. + (glyph_to_name): Renamed from `glyph::glyph_name'. + + * src/roff/troff/charinfo.h (charinfo): Inherit from class `glyph'. + Use `glyph *' instead of `glyph'. + + * src/roff/troff/input.cpp (name_to_glyph, number_to_glyph): Use + `glyph *' instead of `glyph'. + (glyph_to_name): Renamed from `glyph::glyph_name'. + + * src/libs/libgroff/font.cpp: Use `glyph *' instead of `glyph', + and `glyph_to_index' instead of `glyph::glyph_index'. + + * src/include/printer.h (printer): Use `glyph *' instead of `glyph'. + * src/libs/libdriver/printer.cpp: Likewise. + * src/devices/grodvi/dvi.cpp: Likewise. + * src/devices/grohtml/post-html.cpp: Likewise. + * src/devices/grolbp/lbp.cpp: Likewise. + * src/devices/grolj4/lj4.cpp: Likewise. + * src/devices/grops/ps.cpp: Likewise. + * src/devices/grotty/tty.cpp: Likewise. + +2006-02-22 Werner LEMBERG <wl@gnu.org> + + * font/devdvi/generate/tc.map: Add `sr' glyph. + * font/devdvi/*TC: Regenerated. + + * src/libs/libgroff/glyphuni.cpp (glyph_to_unicode_list): Use entry + for `sqrt'. + +2006-02-21 Werner LEMBERG <wl@gnu.org> + + * man/groff_char.man: Explain `***' marker. + +2006-02-17 Bruno Haible <bruno@clisp.org> + + * src/libs/libgroff/nametoindex.cpp (character_indexer): Rename + methods and fields from *_index to *_glyph. + (character_indexer::named_char_glyph): Test for `charNNN' name + here... + (name_to_glyph): ... not here. + +2006-02-17 Bruno Haible <bruno@clisp.org> + + * src/include/font.h (name_to_glyph): Renamed from + font::name_to_index. + (number_to_glyph): Renamed from font::number_to_index. + (glyph_to_name): Renamed from font::index_to_name. + (glyph_to_number): Renamed from font::index_to_number. + * src/libs/libgroff/nametoindex.cpp: Likewise. + * src/roff/troff/charinfo.h (charinfo::as_glyph): Renamed from + charinfo::get_index. + + * src/roff/troff/input.cpp: All callers changed. + * src/roff/troff/node.cpp: Likewise. + * src/libs/libgroff/font.cpp: Likewise. + * src/devices/grops/ps.cpp: Likewise. + * src/devices/grohtml/post-html.cpp: Likewise. + * src/libs/libdriver/printer.cpp: Likewise. + +2006-02-17 Werner LEMBERG <wl@gnu.org> + + * src/include/ptable.h, src/include/itable.h + (NEXT_PTABLE_SIZE_DEFINED): Use it to avoid multiple declaration + of external symbol `next_ptable_size' (used by both header files). + +2006-02-15 Bruno Haible <bruno@clisp.org> + + * src/include/font.h (glyphinfo): New class. + (glyph): Change internal representation. + Change constructor signature. + New method glyph::glyph_number(). + (glyph::glyph, glyph glyph::undefined_glyph, glyph::glyph_index, + glyph::operator==, glyph::operator!=): Update. + (font::index_to_name, font::index_to_number): New functions. + + * src/include/itable.h: New file, based on src/include/ptable.h. + + * src/libs/libgroff/nametoindex.cpp: Include itable.h. + (class charinfo): New class. + (class character_indexer): Change table result type from `int' to + `class charinfo'. + Add table with integer key. + (character_indexer::character_indexer): Update. + (character_indexer::ascii_char_index): Update. + (character_indexer::numbered_char_index): Use NULL as name, not a + string starting with a space. + (character_indexer::named_char_index): Update. + (font::number_to_index, font::name_to_index): Remove no-op cast. + (glyph::glyph_name): New method. + * src/roff/troff/charinfo.h (class charinfo): Inherit from class + glyphinfo. + (NUMBERED): Remove flag bit. + (charinfo::numbered, charinfo::get_index): Update. + + * src/roff/troff/input.cpp (charinfo::charinfo): Update. + (charinfo::set_number, charinfo::get_number): Update. + (glyph::glyph_name): New method. + +2006-02-15 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/glyphuni.cpp (glyph_to_unicode_list): Fix + entries for `>>', `<<', `*f', and `+f'. Reported by Bruno. + +2006-02-13 Werner LEMBERG <wl@gnu.org> + + * font/devps/prologue.ps (RE): Check `UniqueID' also, similar to + dvips. + +2006-02-11 Werner LEMBERG <wl@gnu.org> + + * src/include/font.h: s/glyph_t/glyph/. + Update all callers. + + * src/devices/grotty/tty.cpp: s/glyph/tty_glyph/. + s/output_character_t/output_character/. + +2006-02-11 Bruno Haible <bruno@clisp.org> + + New accessor method glyph_t::glyph_name(). + + * src/include/ptable.h (declare_ptable): Add a return value to the + `define' method, and declare a `lookupassoc' method. + (implement_ptable): Return the stored key in `define'. Implement + lookupassoc. + * src/include/font.h (glyph_t): Add `name' field. Add an argument + to the constructor. + (glyph_t::glyph_name): New method. + + * src/libs/libgroff/nametoindex.cpp (character_indexer): Change + return type of methods and field member type to glyph_t. + (character_indexer::character_indexer): Update. + (character_indexer::ascii_char_index): Allocate a name for the + glyph. + Return a glyph_t with name. + (character_indexer::numbered_char_index): Return a glyph_t without a + name. + (character_indexer::named_char_index): Return a glyph_t with a name. + (font::number_to_index, font::name_to_index): Update. + + * src/roff/troff/input.cpp (charinfo::charinfo): Use the symbol as + the glyph's name. + +2006-02-11 Bruno Haible <bruno@clisp.org> + + * src/devices/grotty/tty.cpp (output_character_t): New type. + (tty_printer::make_bold, tty_printer::add_char, + tty_printer::put_char): Change argument type to output_character_t. + (crossings): Change element type to output_character_t. + +2006-02-11 Bruno Haible <bruno@clisp.org> + + Make the glyph data type abstract. + + * src/include/font.h (glyph_t): New class. + (name_to_index, number_to_index): Change return type to glyph_t. + (font::contains, font::get_width, font::get_height, font::get_depth, + font::get_character_type, font::get_kern, font::get_skew, + font::get_italic_correction, font::get_left_italic_correction, + font::get_subscript_correction, font::get_code, + font::get_special_device_encoding, font::add_entry, + font::copy_entry, font::add_kern, font::hash_kern): Change argument + type to glyph_t. + + * src/libs/libgroff/font.cpp (font_kern_list): Change members + type and constructor argument types to glyph_t. + (font::contains, font::get_width, font::get_height, font::get_depth, + font::get_character_type, font::get_kern, font::get_skew, + font::get_italic_correction, font::get_left_italic_correction, + font::get_subscript_correction, font::get_code, + font::get_special_device_encoding, font::add_entry, + font::copy_entry, font::add_kern, font::hash_kern): Change argument + type to glyph_t. + (font::load): Use glyph_t variables. + + * src/libs/libgroff/nametoindex.cpp (name_to_index, + number_to_index): Change return type to glyph_t. + + * src/roff/troff/charinfo.h (charinfo::index): Change type to + glyph_t. + (charinfo::get_index): Change return type to glyph_t. + + * src/roff/troff/env.cpp: Include font.h. + + * src/roff/troff/node.cpp: Include font.h before charinfo.h. + + * src/roff/troff/input.cpp: Include font.h before charinfo.h. + (charinfo::charinfo): Update. + (name_to_index, number_to_index): Change return type to glyph_t. + + * src/include/printer.h (printer::set_char_and_width): Change return + type to glyph_t. + + * src/libs/libdriver/printer.cpp (printer::set_char_and_width): + Change return type to glyph_t. + + * src/devices/grodvi/dvi.cpp (dvi_printer::set_char): Change + argument type to glyph_t. + + * src/devices/grohtml/post-html.cpp (page::add_and_encode): Update. + (html_printer::space_glyph): Renamed from space_char_index. + (html_printer::add_to_sbuf, html_printer::sbuf_continuation, + html_printer::overstrike, html_printer::set_char): Change argument + type to glyph_t. + (html_printer::set_char_and_width): Change return type to glyph_t. + + * src/devices/grolbp/lbp.cpp (lbp_printer::set_char): Change + argument type to glyph_t. + + * src/devices/grolj4/lj4.cpp (lj4_printer::set_char): Change + argument type to glyph_t. + + * src/devices/grops/ps.cpp (ps_printer::space_glyph): Renamed from + space_char_index. + (ps_printer::set_subencoding, ps_printer::set_char): Change argument + type to glyph_t. + + * src/devices/grotty/tty.cpp (tty_printer::set_char): Change + argument type to glyph_t. + +2006-02-11 Bruno Haible <bruno@clisp.org> + + * src/roff/troff/input.cpp (font::name_to_index): Never return a + negative value. + + * src/libs/libgroff/font.cpp (font::load): Remove failure tests for + font::name_to_index. + +2006-02-10 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo (Assigning Formats): Number registers are always + interpolated. + Apply some rephrasing, contributed by Michael Burt. + +2006-02-07 Werner LEMBERG <wl@gnu.org> + + * tmac/fr.tmac <ms>: Set `HY' register. + +2006-02-07 Werner LEMBERG <wl@gnu.org> + + Add framework for simple adaptation of the main macro packages (mm, + me, ms, mom) to different locales. In particular, add support for + French. For activation, simply use `-mfr' as the last macro + package. This feature has been contributed by Fabrice Ménard + <menard.fabrice@wanadoo.fr>. + + * tmac/fr.tmac, tmac/trans.tmac, tmac/hyphen.fr, tmac/LOCALIZATION: + New files. + * tmac/README: Mention hyphen.fr. + * man/groff_tmac.man: Mention fr.tmac. + * NEWS: Updated. + +2006-01-27 Werner LEMBERG <wl@gnu.org> + + * man/groff_font.man: Updated documentation of `entity_name' field. + Avoid future tense. + +2006-01-27 Bruno Haible <bruno@clisp.org> + + * font/devhtml/R.proto: Remove the entity names from the font's + special_encoding_encoding column. + * src/devices/grohtml/post-html.cpp (get_html_entity): New function, + handling the entity names here. + (get_html_translation): Use it. Change return type to `const + char *'. + (page::add_and_encode): Update, removing a useless cast. + +2006-01-26 Werner LEMBERG <wl@gnu.org> + + This change is based on a patch by Bruno Haible <bruno@clisp.org>. + + * src/include/device.h: Add comments. + * src/include/font.h: Add comments. + * src/include/unicode.h: Likewise. + * src/include/ptable.h, src/libs/libgroff/ptable.cpp: Likewise. + +2006-01-26 Keith Marshall <keith.d.marshall@ntlworld.com> + + Suppress `.st' request emission by `grn'. + + * src/preproc/grn/main.cpp (USE_ST_REQUEST): New macro. + (conv): Use it. + +2006-01-22 Werner LEMBERG <wl@gnu.org> + + * install-sh: New version; taken from texinfo CVS. + +2006-01-21 Werner LEMBERG <wl@gnu.org> + + * src/preproc/preconv/preconv.cpp (main): Set program_name. Bug + reported by Alexander E. Patrakov <patrakov@ums.usu.ru>. + +2006-01-19 Bruno Haible <bruno@clisp.org> + + Let `make -k install' install more files. + + * Makefile.in (MAKE_K_FLAG): New variable. Use it everywhere where + $(MAKE) and $(MDEFINES) are used. + (CPROGDIRS): Remove $(XPROGDIRS). Treat $(XPROGDIRS) like + $(CPROGDIRS) everywhere. + ($(DEVDIRS) $(XDEVDIRS) $(OTHERDEVDIRS) $(TTYDEVDIRS)): Don't depend + on $(XPROGDIRS). + ($(OTHERDIRS)): Likewise. + + + * src/devices/grohtml/post-html.cpp (get_html_translation): Remove + failure test for font::name_to_index -- it can never fail. + +2006-01-19 Werner LEMBERG <wl@gnu.org> + + * src/devices/grops/grops.man: Fix section on creating EPS files. + Don't use future time in manual. + Other minor fixes. + +2006-01-15 Gaius Mulley <gaius@glam.ac.uk> + + * tmac/www.tmac: New macro LINKSTYLE which allows users to set + various typographical URL attributes for non-HTML devices. + + * tmac/groff_www.man: Document LINKSTYLE. + +2006-01-11 Werner LEMBERG <wl@gnu.org> + + * configure.ac: Test for getc_unlocked (needed for localcharset). + * configure, src/include/config.hin: Regenerated. + + * src/libs/libgroff/Makefile.sub (EXTRA_CFLAGS): Define + ENABLE_RELOCATABLE. + + * src/libs/libgroff/relocatable.h: New dummy header file for + localcharset.c. + + * src/libs/libgroff/localcharset.c: Updated to (unchanged) CVS + gnulib version. + +2006-01-10 Bruno Haible <bruno@clisp.org> + + Work around unportability of nl_langinfo(CODESET). + + * m4/glibc21.m4: New file, from gnulib. + * Makefile.sub (M4MACROS): Add m4/glibc21.m4. + * configure.ac: Also test for stddef.h, and invoke jm_GLIBC21. + * Makefile.in (HOST, GLIBC21): New variables. + (MDEFINES): Pass them to subdirectories. + * src/include/relocate.h (relocatep): Define with C linkage. + * src/include/localcharset.h: New file, from gnulib. + * src/libs/libgroff/localcharset.c: New file, from gnulib with a + modification for relocate(). + * src/libs/libgroff/config.charset: New file, from gnulib. + * src/libs/libgroff/ref-add.sin: New file, from gnulib. + * src/libs/libgroff/ref-del.sin: New file, from gnulib. + * src/libs/libgroff/Makefile.sub (EXTRA_CFLAGS): Also define LIBDIR. + (OBJS): Add localcharset.o. + (CSRCS): Add localcharset.c. + (all): Add dependencies to charset.alias, ref-add.sed, ref-del.sed. + (charset.alias): New rule. + (PACKAGE): New variable. + (ref-add.sed, ref-del.sed): New rules. + (MKINSTALLDIRS): New variable. + (install_data): Depend on install_charset_data. + (install_charset_data): New rule for creating or updating + charset.alias. + (uninstall_sub): Depend on uninstall_charset_data. + (uninstall_charset_data): New rule for uninstalling or updating + charset.alias. + * src/preproc/preconv/preconv.cpp: Include localcharset.h instead + of <langinfo.h>. + (main): Initialize default_encoding from locale_charset() instead of + nl_langinfo(CODESET). + + * aclocal.m4, configure, src/include/config.hin: Regenerated. + +2006-01-10 Werner LEMBERG <wl@gnu.org> + + * src/preproc/preconv/preconv.cpp (conversion_iconv): Use + ICONV_CONST in call to iconv. Reported by Robert Goulding. + +2006-01-07 Werner LEMBERG <wl@gnu.org> + + * font/devps/generate/freeeuro.sfd: Run auto-hinter with recent + fontforge version. + Bump font version to 001.001. + + * font/devps/generate/Makefile (freeeuro.afm, freeeuro.pfa): + Call fontforge, not pfaedit. + + * font/devps/freeeuro.afm, font/devps/freeeuro.pfa: Regenerated. + +2006-01-05 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc-common: Add new FreeBSD and NetBSD versions. + * tmac/groff_mdoc.man: Updated. + +2006-01-05 Werner LEMBERG <wl@gnu.org> + + * src/preproc/preconv/preconv.cpp: s/debug/debug_flag/. + (raw_flag): New global variable. + (do_file): Use .lf to set file name (if `raw_flag' isn't set). + Don't pass BOM to `conversion_utf8'. + (usage): Updated. + (main): Handle `-r' command line switch to set `raw_flag'. + (get_BOM): Fix encodings in `BOM_table'. + + * src/preproc/preconv/preconv.man: New file. Not complete yet. + * src/preproc/proconv/Makefile.sub (MAN1): New variable. + +2006-01-04 Werner LEMBERG <wl@gnu.org> + + * src/preproc/preconv/preconv.cpp (emacs_to_mime): As suggested by + Bruno, comment out most encodings to support only a small set of + coding tags, thus reducing potential problems with legacy encodings + and character sets in the future. + Add many XEmacs coding tags (now commented out). + Add `cp1047'. + (check_encoding_tag): Renamed to... + (check_coding_tag): This. + (get_BOM): Return encoding as specified by BOM. + Test for UTF32-LE too. + (do_file): Don't check for coding tag if a BOM has been found. + +2006-01-03 Bruno Haible <bruno@clisp.org> + + * m4/groff.m4: Renamed from aclocal.m4. + * m4/codeset.m4: New file, from gnulib. + * m4/iconv.m4: New file, from gnulib. + * m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4: New files, from + gnulib. + * config.rpath: New file, from gnulib. + * config.guess, config.sub: New files, from gnulib. + * Makefile.sub (M4MACROS): New variable. + (configure): Fix typo. + (aclocal.m4): New rule. + (stamp-h.in): Depend on aclocal.m4. + * configure.ac: Invoke AM_ICONV and AM_LANGINFO_CODESET. + * Makefile.in (LIBICONV): New variable. + (MDEFINES): Pass it to recursive makes. + * src/preproc/preconv/preconv.cpp: Use HAVE_LANGINFO_CODESET and + HAVE_ICONV instead of I18N macro. + * src/preproc/preconv/Makefile.sub (EXTRA_LDFLAGS): New variable. + + * aclocal.m4, configure, src/include/config.hin: (Re)generated. + +2006-01-03 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile.in (webpage.html): Simplify. + * doc/Makefile.sub (webpage.html): Synchronize with doc/Makefile.in. + * doc/webpage.ms, tmac/groff_www.man, tmac/www.tmac: Minor updates. + +2006-01-01 Werner LEMBERG <wl@gnu.org> + + * tmac/doc-common (Os): Add some Darwin versions. + * tmac/groff_mdoc.man: Document them. + +2006-01-01 Bruno Haible <bruno@clisp.org> + + * src/preproc/preconv/preconv.cpp (emacs_to_mime): Various + corrections: + . Don't map ascii to latin-1. + . Don't use IBMxxx encodings but cpxxx for portability. + . Map cp932, cp936, cp949, cp950 to itself. + (emacs2mime): Protect calls to strcasecmp. + (conversion_iconv): Add missing call to iconv_close. + (do_file): Emit error message in case of unsupported encoding. + +2005-12-31 Werner LEMBERG <wl@gnu.org> + + Integrate preconv into the groff binary. Changes based on a patch + from Michail Vidiassov. + + * src/roff/groff/pipeline.h (MAX_COMMANDS): Increase by 1. + + * src/roff/groff/groff.cpp (PRECONV_INDEX): New macro. + (SOELIM_INDEX): Updated. + (help, synopsis): Updated. + (main): Add command line options `-k' and `-K enc' to select + encoding. + Add support for GROFF_ENCODING environment variable. + + * src/roff/groff/groff.man: Updated and revised. + + + Start with autoconf support for preconv. + + * configure.ac: Call AC_C_BIGENDIAN. + * configure, src/include/config.hin: Regenerated. + +2005-12-30 Werner LEMBERG <wl@gnu.org> + + New preprocessor `preconv' to convert input encodings to something + groff can understand. Not yet integrated within groff. Proper + autoconf stuff is missing too. + + Tomohiro Kubota has written a first draft of this program, and some + ideas have been reused (while almost no code has been taken + actually). + + * src/preproc/preconv/preconv.cpp. src/preproc/preconv/Makefile.sub: + New files. + + * MANIFEST, Makefile.in (CCPROGDIRS), test-groff.in + (GROFF_BIN_PATH): Add preconv. + +2005-12-12 Werner LEMBERG <wl@gnu.org> + + * aclocal.m4 (GROFF_MAKEINFO): Fix regexps to be POSIX conformant. + In particular, don't use `\+' since it is a GNU sed extension. + + * configure: Regenerated. + +2005-12-09 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/make-uniuni: New script to generate uniuni.cpp. + + * src/libs/libgroff/uniuni.cpp: Regenerated, using data from Unicode + 4.1.0. + + + * src/utils/afmtodit/make-afmtodit-tables: New script to generate + afmtodit.tables. + + * src/utils/afmtodit/afmtodit.tables: New file, representing Unicode + 4.1.0 data. + + * src/utils/afmtodit/afmtodit.pl (%unicode_decomposed, + %AGL_to_unicode): Removed. Replace it with a tag. + + * src/utils/afmtodit/Makefile.sub (afmtodit): Adjust sed expression + to replace tag with actual file contents. + +2005-12-08 Werner LEMBERG <wl@gnu.org> + + The change 2005-06-20 can indeed cause problems, so we follow the + advice by using marks. + + * font/devps/prologue.ps (PBEGIN): Use `mark'. + (PEND): Use `cleartomark'. + +2005-12-07 Michail Vidiassov <master@iaas.msu.ru> + + * src/utils/afmtodit.pl: Fix kerning output to avoid warnings for + glyphs which have kern values but aren't handled (glyph variants, + for example). + +2005-12-02 Werner LEMBERG <wl@gnu.org> + + * src/devices/grops/ps.cpp (ps_printer::get_subfont): Use correct + subfont index. Reported by Michail Vidiassov <master@iaas.msu.ru>. + +2005-11-28 Gaius Mulley <gaius@glam.ac.uk> + + * doc/Makefile.in: Separate rule for webpage.html so that extra + command line options can be passed to grohtml. + * doc/groff.css: Change all margins to 0%. + * doc/webpage.ms: Now use new macros ALN, LNS, and LNE so that left + navigation is exploited. Also update webpage to contain new + sections on licenses, mailing lists, cvs/ftp access, groff + dependencies, and bug reports. + * tmac/groff_www.man: Document the new macros ALN, LNS, and LNE. + * tmac/www.tmac: Implement the new macros ALN, LNS, and LNE. + +2005-11-25 Gaius Mulley <gaius@glam.ac.uk> + + * src/devices/grohtml/post-html.cpp + (html_printer::do_file_components): Add fputs calls to emit the + head contents and shut down the head tag whenever a new file + component is generated. + +2005-11-22 Gaius Mulley <gaius@glam.ac.uk> + + * src/devices/grohtml/post-html.cpp (html_printer::flush_page): Add + call to flush_text to flush any outstanding html tags on the + paragraph stack. + +2005-11-18 Werner LEMBERG <wl@gnu.org> + + * aclocal.m4 (GROFF_MAKEINFO): Use `groff.info' in tests. + Announce makeinfo version. + * configure: Regenerated. + +2005-11-18 Mike Frysinger <vapier@gentoo.org> + + * Makefile.in: Declare proper dependencies between make targets. + + * doc/Makefile.in: Rename groff info page to `groff.info'. + * doc/Makefile.sub: Likewise. + * doc/groff.texinfo: Likewise. + +2005-11-17 Peter O'Gorman <mlists@thewrittenword.com> + + * src/utils/pfbtops/pfbtops.c, src/utils/xtotroff/xtotroff.c: Move + definition of __GETOPT_PREFIX to the beginning of file to ensure + that it is defined even on platforms where getopt.h is already + included by other header files. + +2005-11-10 Gaius Mulley <gaius@glam.ac.uk> + + * src/devices/grohtml/post-html.cpp (html_printer::do_heading): + Reset font to NULL to ensure that a font block is recreated during + the next paragraph. + +2005-11-04 Werner LEMBERG <wl@gnu.org> + + * aclocal.m4 (GROFF_MAKEINFO): Fix sed expression. + * configure: Regenerated. + +2005-10-27 Werner LEMBERG <wl@gnu.org> + + * aclocal.m4 (GROFF_MAKEINFO): New function for checking whether + makeinfo 4.8 or newer is available. + * configure.ac: Call GROFF_MAKEINFO. + * configure: Regenerated. + + * Makefile.in (MAKEINFO): Use autoconf variable. + (MDEFINES): Add MAKEINFO. + + * doc/Makefile.in (MAKEINFO): Use autoconf variable. + * doc/Makefile.sub (MAKEINFO): Remove. + +2005-10-26 Werner LEMBERG <wl@gnu.org> + + * REVISION: Set to 3. + +2005-10-17 Werner LEMBERG <wl@gnu.org> + + Mention $MANPAGER variable used with some `man' systems. + + * doc/webpage.ms, src/devices/grotty/grotty.man, NEWS: Updated. + +2005-09-13 Werner LEMBERG <wl@gnu.org> + + * tmac/hyphenex.us: New version (`ushyphex.tex' from ftp.dante.de). + +2005-09-04 Werner LEMBERG <wl@gnu.org> + +Version 1.19.2 released +======================= + + * tmac/groff_ms.man, doc/groff.texinfo: Synchronize. + + * doc/webpage.ms: Updated. + + * install-sh, mkinstalldirs: New versions; taken from texinfo CVS. + +2005-09-04 Jörgen Grahn <jgrahn@algonet.se> + + * tmac/groff_ms.man: Document `PO' better. + +2005-09-03 Werner LEMBERG <wl@gnu.org> + + * NEWS: Document grotty changes. + +2005-09-01 Keith Marshall <keith.d.marshall@ntlworld.com> + + Backward compatibility support for `man' program. + + * tmac/an-old.tmac (LL): Initialize it to respect prior LL register + assignment, prior `.ll' request and then package defaults, in this + specified order of decreasing priority. + + * tmac/groff_man.man, doc/groff.texinfo (Man options): Document + altered `LL' register initialization priorities. + +2005-08-29 Gary W. Swearingen <garys@opusnet.com> + + * tmac/groff_mdoc.man: Go into more details how the `AUTHORS' + section should look like. + +2005-08-29 Werner LEMBERG <wl@gnu.org> + + * tmac/groff_mdoc.man: The month's name in a call to .Dd shouldn't + be abbreviated. + +2005-08-27 Bernd Warken + + * tmac/groff_man.man: Add man(7) too SEE ALSO and more minor + fixes. + +2005-08-11 Bernd Warken + + * tmac/www.tmac (URL, MTO): Handle empty \\$1 better. + +2005-08-09 Bernd Warken + + * tmac/www.tmac (URL, MTO): Use bold series if color support is + deactivated. + +2005-08-02 Bernd Warken + + * doc/Makefile.sub (uninstall_sub): Use --remove, not --delete + as argument to $(INSTALL_INFO). The latter isn't portable. + Remove $(HTMLEXAMPLEFILES) too. + + * Makefile.in (uninstall_dirs): Remove $(datadir)/doc/groff and + $(datadir)/doc too. + Suppress warning messages and return always true. + + * tmac/Makefile.sub (uninstall_sub): Remove www.tmac too. + +2005-07-02 Bernd Warken + + * src/devices/xditview/gxditview.man: Change many `.I' to `.B'. + * man/groff_out.man: More markup and minor improvements. + * src/roff/groff/groff.man: Minor improvements. + +2005-06-28 Werner LEMBERG <wl@gnu.org> + + * ChangeLog: Split off older entries into... + * ChangeLog.115 ChangeLog.116, ChangeLog.117, ChangeLog.118: New + files. + +2005-06-26 Bernd Warken + + * src/devices/xditview/gxditview.man: More minor fixes. + +2005-06-24 Werner LEMBERG <wl@gnu.org> + + * src/preproc/pic/troff.cpp (troff_output::set_fill, + troff_output::set_color, troff_output::reset_color): Use .bcolor and + .fcolor instead of \m and \M, respectively. + +2005-06-23 Bernd Warken + + * src/devices/xditview/gxditview.man: More minor fixes. + * README: Formatting issues. + Mention some problems with Debian. + +2005-06-23 Bernd Warken + + * src/devices/xditview/gxditview.man: Revised and improved. + +2005-06-22 Werner LEMBERG <wl@gnu.org> + + Another round in fixing getopt problems. Hopefully the last one! + This time we use the getopt stuff from gnulib and define a prefix + unconditionally so that there are no collisions with any other + getopt implementations. This is a slight waste of space in case + we already use a GNU getopt implementation, but on + the other hand it really simplifies life. + + * src/include/getopt.h: Use gnulib version. + + * src/include/getopt_int.h: Use gnulib version. + + * src/include/groff-getopt.h: Removed. Obsolete now. + + * src/include/lib.h: Regarding getopt, don't handle any platform + specially; just include getopt.h. + (__GETOPT_PREFIX): Define (before getopt.h). + + * src/include/Makefile.sub (HDRS): Updated. + + * src/libs/libgroff/getopt1.c, src/libs/libgroff/getopt.c: Use + gnulib version. + + * src/libs/libgroff/Makefile.sub (EXTRA_CFLAGS): Set + __GETOPT_PREFIX. + + * src/utils/pfbtops/pfbtops.c, src/utils/xtotroff/xtotroff.c + (__GETOPT_PREFIX): Define (before getopt.h). + +2005-06-21 Werner LEMBERG <wl@gnu.org> + + * src/include/lib.h: Provide a fix for Mac OS X to not include + groff-getopt.h. + +2005-06-20 Denis M. Wilson <dmw@oxytropis.plus.com> + + * font/devps/prologue.ps (EP): Dont' use `bind'. Reason: Using + `bind' to define a procedure which contains `showpage' means that an + invocation of `showpage' may execute wrongly (the exact effect + depending on the interpreter). Not usually a problem except under + transformations, such as combining pages. + (PEND): Don't call `clear'. Reason: Using `clear' in the definition + of /PEND means that stack underflow will occur if the stack is + deliberately non-empty before document inclusion. If included + files are found to be generally badly behaved, we could replace the + `clear' with `mark' in /PBEGIN and `cleartomark' in /PEND (I've + never found this necessary). + +2005-06-20 Jörgen Grahn <jgrahn@algonet.se> + + * src/preproc/soelim/soelim.cpp (do_file): Append trailing zero + earlier to get correct error message. + +2005-06-16 Bernd Warken + * src/roff/nroff/nroff.sh: Add support for iso-8859-15. + +2005-06-15 Werner LEMBERG <wl@gnu.org> + + Another try to update getopt files. This time we add a dummy + gettext.h file to satisfy the dependency. + + * src/include/getopt.h, src/libs/libgroff/getopt.c, + src/libs/libgroff/getopt1.c: Updated from GNU libc CVS. + + * src/include/getopt_int.h: New file (from GNU libc CVS). + + * src/include/gettext.h: Dummy file which just defines a gettext() + macro. + + * src/include/groff-getopt.h: Updated. + + * src/include/Makefile.sub (HDRS): Add getopt_int.h and gettext.h. + + + * src/libs/libdriver/input.cpp (IntArray): Remove superfluous + `const' keywords in return value. + + * src/preproc/html/pushback.cpp (pushBackBuffer::~pushBackBuffer): + Remove redundant variable `old'. + (pushBackBuffer::skipToNewline): Remove redundant variable `ch'. + + * src/preproc/tbl/main.cpp (process_table): Remove redundant + variable `c'. + + + Fix more friend name injection problems since modern C++ compilers + fail otherwise. We simply provide (global) declarations for all + functions declared as friends. This is not really necessary but + doesn't harm. + + * src/preproc/eqn/lex.cpp: Provide declarations for get_char, + peek_char, and get_location. + + * src/preproc/refer/ref.h: Provide declarations for + compare_reference, same_reference, same_year, same_date, + same_author_last_name, and same_author_name. + + * src/roff/troff/div.h: Provide declarations for do_divert and + page_offset. + + * src/roff/troff/env.h: Provide declarations for title_length, + space_size, fill, no_fill, adjust, no_adjust, center, right_justify, + vertical_spacing, post_vertical_spacing, line_spacing, line_length, + indent, temporary_indent, do_underline, do_input_trap, set_tabs, + margin_character, no_number, number_lines, leader_character, + tab_character, hyphenate_request, no_hyphenate, + hyphen_line_max_request, hyphenation_space_request, + hyphenation_margin_request, line_width, tabs_save, tabs_restore, + line_tabs_request, widow_control_request, and do_divert. + + * src/roff/troff/input.cpp: Provide declaration for chop_macro. + + * src/roff/troff/node.cpp: Provide declarations for class + tfont_spec. + Provide declaration for make_tfont. + +2005-05-29 Werner LEMBERG <wl@gnu.org> + + * doc/fdl.texi: Updated to version 1.2. Reported by Bernd Warken. + +2005-05-28 Werner LEMBERG <wl@gnu.org> + + * src/devices/grolbp/lbp.cpp, src/devices/grolbp/lbp.h: Remove + redundant semicolons. + + * src/preproc/eqn/Makefile.sub, src/preproc/html/Makefile.sub, + src/preproc/soelim/Makefile.sub, src/preproc/tbl/Makefile.sub: + Define `MLIB'. Some compilers need this for linking with libgroff. + +2005-05-27 Werner LEMBERG <wl@gnu.org> + + * MANIFEST, README, doc/webpage.ms: Updated. + +2005-05-26 Werner LEMBERG <wl@gnu.org> + + * All affected files: Update postal address of FSF. + +2005-05-25 Keith Marshall <keith.d.marshall@ntlworld.com> + Bernd Warken + + * README: More fixes. + + * README.CVS: Removed. Its contents is now part of the README file. + +2005-05-21 Werner LEMBERG <wl@gnu.org> + + * README: Updated. Based on a patch from Bernd Warken. + +2005-05-16 Keith Marshall <keith.d.marshall@ntlworld.com> + + Miscellaneous script portability enhancements. + + * aclocal.m4: (GROFF_CSH_HACK): Add space in shebang prototype for + generated conftest.sh script, conforming to portability + recommendation in autoconf docs. + * configure: Likewise, for code generated by GROFF_CSH_HACK. + * contrib/eqn2graph/eqn2graph.sh: Add space in shebang, conforming + to portability recommendation in autoconf docs. + * contrib/grap2graph/grap2graph.sh: Likewise. + * contrib/pic2graph/pic2graph.sh: Likewise. + * font/devps/generate/afmname: Likewise. + * src/devices/xditview/ad2c: Likewise. + * src/preproc/eqn/neqn.sh: Likewise. + * src/roff/grog/grog.pl: Likewise. + * src/roff/grog/grog.sh: Likewise. + * src/roff/nroff/nroff.sh: Likewise. + * PROBLEMS: Likewise, in embedded script examples. + +2005-05-16 Keith Marshall <keith.d.marshall@ntlworld.com> + + Improve portability of `pdfroff' shell script. + + * arch/misc/shdeps.sh: Add space in shebang, conforming to + portability guidelines in `autoconf' docs. + (PATH_SEARCH_SETUP): New substitution; emits PATH_SEPARATOR + initialization code. Used by contrib/pdfmark/pdfroff.sh's + `searchpath' function. + +2005-05-14 Werner LEMBERG <wl@gnu.org> + + * contrib/pic2graph/pic2graph.sh, contrib/graph2graph.sh, + contrib/eqn2graph.sh: Add option `-trim' to `convert' which is + needed for newer ImageMagick versions. + +2005-05-07 Werner LEMBERG <wl@gnu.org> + + * src/preproc/refer/refer.man: Many small typographic fixes. + +2005-05-06 Jeff Conrad <jeff_conrad@msn.com> + + * src/devices/grohtml/post-html.cpp (assert_state::~assert_state): + Use `char *' cast for a_delete. + +2005-05-03 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/maxpathname.cpp: Include stdlib.h. + src/libs/libgroff/relocate.cpp: Use path_name_max everywhere. + +2005-05-03 Jeff Conrad <jeff_conrad@msn.com> + + * src/devices/grohtml/post-html.cpp: Use casts to `char *' if using + `a_delete' for `const char *'. + +2005-05-03 Werner LEMBERG <wl@gnu.org> + + * src/devices/grohtml/post-html.cpp, + src/devices/grohtml/html-table.cpp, + src/devices/grohtml/html-text.cpp, src/devices/grohtml/output.cpp: + Replace malloc/free with new/delete/a_delete. + + * src/devices/grolbp/lbp.h: Remove superfluous semicolons which + are prohibited with ANSI C++. + (lbpprintf, vdmprintf): Remove useless `inline' keyword (since the + function has a variable number of arguments). + + * src/preproc/grn/main.cpp (doinput): Change return type to `int'. + Simplify function and update all callers. + +2005-05-02 Werner LEMBERG <wl@gnu.org> + + Undo getopt changes from 2005-04-30. We don't want a dependency + on gettext. + + * src/include/getopt_int.h: Removed. + + * src/include/getopt.h, src/include/groff-getopt.h, + src/include/Makefile.sub, src/libs/libgroff/getopt.c, + src/libs/libgroff/getopt1.c: Revert to previous version. + + + * src/include/nonposix.h (access) [_MSC_VER]: New macro. + + * src/include/posix.h (F_OK): Define conditionally. + + * src/devices/grotty/tty.cpp (tty_printer::make_underline): Use + different variable name in second `for' loop to avoid MSVC compiler + problem. + +2005-04-30 Werner LEMBERG <wl@gnu.org> + + AC_TYPE_SIGNAL from current autoconf can fail if CC=g++. + + * aclocal.m4 (GROFF_TYPE_SIGNAL): New function. + * configure.ac: Use GROFF_TYPE_SIGNAL, not AC_TYPE_SIGNAL. + * configure, src/include/config.hin: Regenerated. + + * PROBLEMS: Updated. + + + Update getopt files. + + * src/include/getopt.h, src/libs/libgroff/getopt.c, + src/libs/libgroff/getopt1.c: Updated from GNU libc CVS. + + * src/include/getopt_int.h: New file (from GNU libc CVS). + + * src/include/groff-getopt.h: Updated. + + * src/include/Makefile.sub (HDRS): Add getopt_int.h. + + + * font/devutf8/NOTES: Updated. + +2005-04-28 Werner LEMBERG <wl@gnu.org> + + Bug fix for Win32 relocatable code. Based on a patch from Keith + Marshall. + + * src/libs/libgroff/maxpathname.cpp (PATH_MAX): Test for `_MAX_PATH' + also. + + * src/libs/libgroff/relocate.c (DEBUG): Define it conditionally. + (searchpath) [_WIN32]: Use `_fullpath', not `realpath'. + +2005-04-28 Keith Marshall <keith.d.marshall@ntlworld.com> + + Correct `gnu.eps' handling for build from distribution tarball, with + separate source and build directories. + + * doc/Makefile.sub: (examples.stamp): New target; forces copy of + grnexmpl.g, groff.css and gnu.eps from source to build directory; + generate gnu.eps from gnu.xpm if required; touch examples.stamp. + (prepare_examples): Make it depend on examples.stamp. + (CLEANADD): Add examples.stamp. + +2005-04-27 Werner LEMBERG <wl@gnu.org> + + Implement the rule + + position: `(' position `)' + + in pic. + + * src/preproc/pic/pic.y (position, position_not_place): Handle + additional parentheses. + + * doc/pic.ms: Updated. + +2005-04-23 Larry Jones <lawrence.jones@ugs.com> + + * src/utils/xtotroff/xtotroff.c (MapFont): Fix variable declaration. + +2005-04-18 Werner LEMBERG <wl@gnu.org> + + * src/roff/groff/pipeline.c: Don't include ctype.h. + +2005-04-13 Werner LEMBERG <wl@gnu.org> + + * src/roff/nroff/nroff.man: Document option `-M'. + +2005-04-13 Bruce Lilly <blilly@erols.com> + + * src/roff/nroff/nroff.sh: Make the script accept option `-M'. + +2005-04-01 Kees Zeelenberg <kzlg@users.sourceforge.net> + Werner LEMBERG <wl@gnu.org> + + Add binary relocation support for Windows platforms. + + * src/include/Makefile.sub (defs.h): Add `INSTALLPATH'. + + * src/include/relocate.h, src/libs/libgroff/relocate.cpp: New files. + + * src/libs/libgroff/searchpath.cpp: Handle `relocate'. + (search_path::search_path, search_path::open_file_cautious): Use + `relocate'. + + * src/libs/libgroff/Makefile.sub (OBJS, CCSRCS), + src/include/Makefile.sub (HDRS): Updated. + +2005-04-01 Werner LEMBERG <wl@gnu.org> + + * src/devices/grohtml/post-html.cpp: Don't use strdup/free but + strsave/a_delete. + + * src/libs/libgroff/font.cpp: Replace strdup with strsave. + + * src/libs/libgroff/maxfilename.cpp: Don't include limits.h since + lib.h already does it. + + * src/libs/libgroff/maxpathname.cpp: New file, defining + path_name_max. + + * src/include/lib.h: Add prototype for path_name_max. + + * src/libs/libgroff/Makefile.sub (OBJS, CCSRCS): Updated. + + * src/include/nonposix.h (PATH_EXT): New macro. + +2005-03-28 Werner LEMBERG <wl@gnu.org> + + Add support for double- and zero-width characters in grotty. + + * src/devices/grotty/tty.cpp (glyph): Add width. + (tty_printer::make_underline, tty_printer::make_bold, + tty_printer::add_character): Add parameter to pass character width. + Update all callers. + (tty_printer::end_page): Increase hpos by actual character width. + + * font/devutf8/R.proto: Specify zero width for non-spacing + characters. + + * tmac/unicode.tmac: Remove definitions for non-spacing entities. + + * Makefile.comm (extraclean): Remove more junk files. + +2005-03-25 Werner LEMBERG <wl@gnu.org> + + * configure.ac: Undo change from 2005-03-24. + * configure: Regenerated. + +2005-03-24 Werner LEMBERG <wl@gnu.org> + + * Makefile.in (NOMAKEDIRS): Add contrib/gdiffmk/tests. + (dist): Search Makefile while descending into $(EXTRADIRS). + + * doc/Makefile.in (.PHONY): Add. + (clean): Don't remove *.png and *.eps. + Don't handle *.gif. + (realclean): Remove *.png and *.eps. + (extraclean): Depend on distclean. + + * configure.ac: Add copyright. + Handle contrib/pdfmark/Makefile. + + * configure: Regenerated. + +2005-03-18 Larry Kollar <kollar@alltel.net> + + Add numbered and definition lists to www.tmac. + + * tmac/www.tmac (www-ul-level1, www-ul-level2, www-ul-level3, + www-ol-level1, www-ol-level2, www-ol-level3, www-ol-tmp): New + auxiliary string registers. + (www-ul-level, www-ol-level, www-dl-level, www-ol-ctr1, www-ol-ctr2, + www-ol-ctr3, www-dl-shift): New auxiliary number registers. + (www-level): Removed. + (www-level1, www-level2, www-level3): Initialize to empty. + (www-level0, www-level4, www-level5, www-level6, www-level7, + www-level8, www-level9): New string registers. + (www-push-li, www-pop-li): New macros. + (www-push-level, www-pop-level): Renamed to... + (www-push-ul-level, www-pop-ul-level): This. + Updated. + (www-push-ol-level, www-pop-ol-level): New macros. + (ULS, ULE): Updated. + (OLS, OLE, DLS, DLE): New user macros. + (LI): Removed. It is aliased to one of... + (www-li-ul, www-li-ol, www-li-dl): New macros. + + * tmac/groff_www.man: Document new macros. + + * NEWS: Updated. + +2005-03-18 Werner LEMBERG <wl@gnu.org> + + * tmac/doc-common (doc-operating-system-NetBSD-2.0.1, + doc-operating-system-NetBSD-2.0.2): New strings. + + * tmac/groff_mdoc.man: Updated. + +2005-03-17 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile.sub (CLEANADD): Add `groff.html'. + +2005-03-17 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/hypot.c: Renamed to... + * src/libs/libgroff/hypot.cpp: This. Updated to C++. + + * src/libs/libgroff/Makefile.sub (CCSRCS, CSRCS): Updated. + + * src/include/lib.h: Updated. + +2005-03-16 Werner LEMBERG <wl@gnu.org> + + Add workaround for broken hypot() on Interix. + + * src/libs/libgroff/hypot.c: New wrapper file for `hypot'. + + * src/libs/libgroff/Makefile.sub (OBJS): Add `hypot.o'. + (CSRCS): Add `hypot.c'. + + * src/include/lib.h: Declare `groff_hypot'. + + * src/preproc/grn/hgraph.cpp: Don't declare `hypot'. + Use `groff_hypot'. + + * src/preproc/pic/pic.h: Don't declare `hypot'. + + * src/preproc/pic/object.cpp (hypot): Use `groff_hypot'. + +2005-03-15 Gaius Mulley <gaius@glam.ac.uk> + + * src/devices/grohtml/post-html.cpp + (html_printer::lookahead_for_tables): End .ce properly to avoid a + segfault. + +2005-03-15 Werner LEMBERG <wl@gnu.org> + + makeinfo 4.8 doesn't produce good HTML output from groff.texinfo. + + * doc/fixinfo.sh: New script to postprocess makeinfo's HTML output. + + * doc/Makefile.in (.texinfo.html): Call fixinfo.sh. + +2005-03-14 Werner LEMBERG <wl@gnu.org> + + Add Cyrillic support to devutf8 and devhtml. + + * font/devutf8/R.proto, font/devhtml/R.proto: Add Cyrillic blocks. + + * tmac/unicode.tmac: New file. + + * tmac/tty.tmac: Include unicode.tmac if device is utf8. + + * tmac/Makefile.sub (NORMALFILES): Add unicode.tmac. + + * NEWS: Updated. + +2005-03-02 Keith Marshall <keith.d.marshall@ntlworld.com> + + * src/libs/libdriver/printer.cpp (check_for_output_error): New + function. It has been introduced to catch peculiar error contexts + on MS-Windows platforms. + +2005-02-28 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cpp (string_iterator::fill): Protect against + null pointer. + + * tmac/papersize.tmac: Convert `paper' string contents to lowercase. + + * configure: Regenerated. + + * NEWS: Updated. + +2005-02-28 Keith Marshall <keith.d.marshall@ntlworld.com> + + Integrate `pdfmark' into normal groff build system; + install macro `pdfmark' packages, build and install `pdfroff', + and PDF format documentation. + + * Makefile.comm: Add PDFDOCDIR. + + * Makefile.in: (MDEFINES) ALT_AWK_PROGS, ALT_GHOSTSCRIPT_PROGS, + pdfdocdir, make_pdfdoc, make_install_pdfdoc: New variables. + (unstall_dirs): Add pdfdocdir. + + * aclocal.m4: (GROFF_GHOSTSCRIPT_PREFS): New function; support + `--with-alt-gs' option, set ALT_GHOSTSCRIPT_PROGS. + (GROFF_GHOSTSCRIPT_PATH): Support `--with-gs' option, force use of + GROFF_GHOSTSCRIPT_PREFS, set GHOSTSCRIPT. + (GROFF_HTML_PROGRAMS): Force use of GROFF_GHOSTSCRIPT_PATH; tidy up. + (GROFF_AWK_PREFS): New function; support `--with-alt-awk' option, + set ALT_AWK_PROGS. + (GROFF_AWK_PATH): New function; support `--with-awk' option, force + use of GROFF_AWK_PREFS. + (GROFF_PDFDOC_PROGRAMS): New function; force use of GROFF_AWK_PATH + and GROFF_GHOSTSCRIPT_PATH, set make_pdfdoc and make_install_pdfdoc. + + * configure.ac: Add AC_PREREQ(2.59), GROFF_PDFDOC_PROGRAMS. + Remove GROFF_GHOSTSCRIPT_PATH, (forced by GROFF_PDFDOC_PROGRAMS, and + also by modified GROFF_HTML_PROGRAMS). + +2005-02-27 Gaius Mulley <gaius@glam.ac.uk> + + * src/devices/grohtml/html-text.cpp (html_text::do_pre): Preserve + paragraph spacing. + (html_text::done_para): Unset `start_space'. + (html_text::remove_para_align): Call `retrieve_para_space' for the + spacing. + + * src/devices/grohtml/post-html.cpp (html_printer::emit_raw): Unset + `seen_space'. + (html_printer::do_check_center): Emit vertical space if necessary. + + * src/roff/troff/env.cpp (environment_switch): Preserve + `seen_space', `seen_eol', and `suppress_next_eol' while switching + environments. + + * src/roff/troff/node.cpp (suppress_node::suppress_node): Set + `is_special'. + +2005-02-20 Werner LEMBERG <wl@gnu.org> + + * src/preproc/eqn/eqn.man, NEWS: Document various extensions of + eqn. + +2005-02-17 Werner LEMBERG <wl@gnu.org> + + * doc/pic.ms, man/groff.man: Fix typos. + + * doc/groff.texinfo: Fix typos. + (\LEmacro): Get proper mathematical spacing. + +2005-02-16 Werner LEMBERG <wl@gnu.org> + + * aclocal.m4 (GROFF_APPRESDIR_CHECK): Improve warning message. + * configure: Regenerated with autoconf 2.59b. + +2005-02-16 Gaius Mulley <gaius@glam.ac.uk> + + * src/devices/grohtml/post-html.cpp (html_printer::is_line_start, + html_printer::start_font): Fix handling of preformatted text. + +2005-02-15 Gaius Mulley <gaius@glam.ac.uk> + + These patches modify the indentation implementation to use `<p + style=margin-left: n%>'. Many thanks to Peter and Larry for + suggesting this solution. Grohtml only uses tables for `.IP' and + related tags when the first operand has a short width. + + Similarly, they modify all vertical space code. By default, grohtml + sets up a style sheet which uses no vertical space between `table', + `pre', and `p' tags. It forces spaces when it needs them using + `style="margin-top: 1em"'. + + * src/devices/grohtml/html-table.cpp: Include `html-text.h'. + (html_table::emit_table_header, html_table::emit_new_row): + Rewritten. + (html_table::set_space): New function. + (html_indent::html_indent): Don't set `is_used'. + (html_indent::begin): Rewritten. + (html_indent::end): Remove code in function. + + * src/devices/grohtml/html-table.h: Updated. + (html_table): Make `out' public. + + * src/devices/grohtml/html-text.cpp (html_text::html_text): + Initialize `start_space' with FALSE. + (html_text::end_tag) <P_TAG, PRE_TAG>: Updated. + (html_text::issue_tag): Add argument to handle space style. + (html_text::start_tag) <P_TAG, PRE_TAG>: Updated. + (html_text::flush_text): Don't set `start_space'. + (html_text::push_para): Don't set `p->really_issued'. + (html_text::do_emittext): Updated. + (html_text::do_para): Add paremeter to handle space. + Update all callers. + (html_text::retrieve_para_space): New function. + + * src/devices/grohtml/html-text.h (STYLE_VERTICAL_SPACE): New macro. + (tag_definition): Remove `really_issued'. + (html_text): Updated. + + * src/devices/grohtml/post-html.cpp (html_printer): Add variables + `current_column' and `row_space'. + Update constructor. + (html_printer::emit_raw, html_printer::write_header, + html_printer::do_indent, html_printer::do_check_center, + html_printer::do_tab_ts): Handle vertical space. + (html_printer:do_tab_te, html_printer::do_end_para): Call + `remove_para_space'. + (html_printer::do_col): Rewritten. + (html_printer::flush_globs): Remove debugging code. + (html_printer::is_line_start): New function. + (html_printer::start_font): Use `is_line_start'. + (html_printer::writeHeadMetaStyle): New function. + (html_printer::do_file_components, html_printer::~html_printer): + Call `writeHeadMetaStyle'. + + * tmac/www.tmac (www-handle-percent): New macro. + (MPIMG): Handle percent values for width and height parameters. + (DC): Updated. + + * tmac/groff_www.man: Updated. + +2005-02-14 Werner LEMBERG <wl@gnu.org> + + * src/utils/afmtodit/afmtodit.pl: Remove an incorrect `my' from + $psname and $italic_angle. + Immediately restart file input loops if `split' returns an empty + array. + +2005-02-13 Michail Vidiassov <master@iaas.msu.ru> + Werner LEMBERG <wl@gnu.org> + + Update afmtodit to better support Unicode (Michail). + Update afmtodit to use Perl 5 syntax (Werner). + + * src/utils/afmtodit/afmtodit.pl: Don't use `getopts.pl' but + `Getopts::Std'. + Decorate variables with `my' where necessary. + Use `defined' where necessary to avoid warnings. + Don't use `do' for subroutine calls. + Other minor syntax updates. + Check for both `uXXXX[X[X]]' and `uniXXXX'. + Handle glyph variants properly. + (%unicode_decomposed, %AGL_to_unicode): Don't use `u' prefix in + strings. + + * src/utils/afmtodit/afmtodit.man: Updated. + +2005-02-13 Werner LEMBERG <wl@gnu.org> + + Make groff.texinfo work with texinfo 4.8. + + * doc/groff.texinfo (@Var): Use @r and @slanted. + (@defdummy, @Def*): Use @c to avoid empty lines. + (\angles): Replaced with... + (\Langlemacro, \Ranglemacro): New TeX macros. + (@Langlemacro, @Ranglemacro): New variables defined with @set. + (@angles): Use @Langlemacro and @Ranglemacro. + (\LE): Replaced with... + (\LEmacro): New TeX macro. + (@LEmacro): New variable defined with @set. + (@LE): Use @LEmacro. + (@Lparenmacro, @Rparenmacro, @Lbrackmacro, @Rbrackmacro): New + variables defined with @set. + (@lparen, @rparen, @lbrack, @rbrack): Replaced with... + (@Lparen, @Rparen, @Lbrack, @Rbrack): New macros. + Update all callers. + + Other minor updates. + + * doc/texinfo.tex: Update to texinfo version 4.8. + + * README.CVS: Updated. + +2005-02-09 Alejandro López-Valencia <palopez@etb.net.co> (tiny change) + + * doc/groff.texinfo (ms Document Control Registers): Document `HY' + and `FAM' registers. + +2005-02-05 Werner LEMBERG <wl@gnu.org> + + * tmac/groff_mdoc.man, tmac/doc-common, tmac/doc-ditroff, + tmac/doc-nroff, tmac/doc-old.tmac, tmac/doc-syms, tmac/doc.tmac: + Update BSD license. + +2005-02-01 Werner LEMBERG <wl@gnu.org> + + * src/roff/groff/groff.man: Add information about paper size. + +2005-01-25 Werner LEMBERG <wl@gnu.org> + + * src/roff/nroff/nroff.sh: Handle `*.ISO8859-1' in locale. From + NetBSD bin/29114. + +2005-01-22 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc.tmac (Sm): Improved. It didn't work properly in many + cases. + (Re): Emit a warning if called without `.Rs'. + (doc-finish-reference): Use parameter for decreasing + `doc-reference-count'. + (doc-print-reference): Pass specific count parameters to + `doc-finish-reference'. + +2005-01-21 Werner LEMBERG <wl@gnu.org> + + * src/libs/libdriver/input.cpp (delete_current_env, do_file): + Reset pointers to zero after deallocation. This fixes a crash + if a driver is called with multiple input files. Reported by + Ken Chilton <ken@chiltonfamily.org>. + + * src/devices/grops/grops.man: Add more info on DSC. + +2005-01-17 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc-common (Dd), tmac/doc-ditroff (gX, doc-setup-header): + Remove dead code. + +2005-01-17 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/div.cpp (top_level_diversion::space): Protect + against division by zero. + +2005-01-13 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc.tmac (Ef): Restore doc-curr-font and doc-curr-size. + +2004-12-19 Werner LEMBERG <wl@gnu.org> + + * install-sh: New version; taken from texinfo CVS. + +2004-12-17 Werner LEMBERG <wl@gnu.org> + + * tmac/devtag.tmac: Protect against loading twice. + Protect agains compatibility mode. + * tmac/www.tmac: Protect against loading twice. + Load `devtag.tmac' before switching off compatibility mode. + * tmac/an-old.tmac, tmac/s.tmac: Load `devtag.tmac'. + +2004-12-16 Mike Bianchi <mbianchi@Foveal.com> + + * configure.ac: Produce `contrib/gdiffmk/tests/runtests'. + * configure: Updated. + +2004-12-15 Thomas Klausner <wiz@netbsd.org> + + * tmac/doc-syms, tmac/groff_mdoc.man: Add `libpam' library. + +2004-12-15 Werner LEMBERG <wl@gnu.org> + + Make `test-groff' work again -- previously, wrong paths have been + used. Additionally, it can now be called from anywhere. + + * test-groff.in: Don't test for groff binary. This is no longer + necessary since the proper paths are determined by `configure'. + (EXEEXT): Removed. No longer used. + (srcdir, builddir): Use values provided by the configure script. + (XENVIRONMENT): Updated. + + * INSTALL: Updated. + +2004-12-14 Gaius Mulley <gaius@glam.ac.uk> + + Make .tag and .taga work for all devices (but only grohtml actually + handles them). + + * src/devices/grohtml/post-html.cpp: s/html-tag/devtag/. + (text_glob::is_br, page::add_tag, html_printer::troff_tag, + html_printer::handle_assertion): Don't use hard-coded string + lengths. + (html_printer::lookahead_for_table): Reset `tbl' properly if + necessary. + (html_printer::devtag): New function, handling `devtag'. + (html_printer::special): Don't handle `html-tag'. + + * src/include/printer.h, src/libs/libdriver/printer.cpp + (printer::devtag): New virtual function. + + * src/libs/libdriver/input.cpp (parse_x_command) <'X'>: Handle + `devtag'. + + * src/roff/troff/env.cpp, src/roff/troff/mtsm.cpp, + src/roff/troff/node.cpp: s/html-tag/devtag/. + + * src/roff/troff/input.cpp (tag, taga): Always call + curenv->add_node. + + * tmac/an-old.tmac, tmac/s.tmac, tmac/troffrc-end: Use DEVTAG* + macros instead of HTML-TAG*. + + * tmac/devtag.tmac: New file, defining the DEVTAG-* macros. + + * tmac/www.tmac: Load devtag.tmac. + Replace HTML-TAG* macros with DEVTAG* macros. + (HTML, HTML-NS): Changed definitions. + (URL): Use HTML-NS. + (HTML-TAG, HTML-TAG-NS, HTML-TAG-NEXT): Removed. + + * tmac/Makefile.sub (NORMALFILES): Add devtag.tmac. + +2004-12-10 Werner LEMBERG <wl@gnu.org> + + Import Mike's `gdiffmk' package. + + * contrib/gdiffmk/*: New files. + * Makefile.in (OTHERDIRS): Add contrib/gdiffmk. + * NEWS: Updated. + +2004-12-08 Werner LEMBERG <wl@gnu.org> + + Import Keith's `pdfmark' package. Integration is very preliminary. + + * contrib/pdfmark/*: New files. + * Makefile.in (OTHERDIRS): Add contrib/pdfmark. + * NEWS: Updated. + +2004-12-07 Gaius Mulley <gaius@glam.ac.uk> + + Fix a bug with title handling in HTML. + + * src/devices/grohtml/post-html.cpp (text_glob::is_nf, + text_glob::is_fi, text_glob::is_ce): Use strlen to compute string + length. + (html_printer::handle_tag_within_title): New function. + (html_printer::do_title): Use it. + + * tmac/s.tmac (TL): Don't set `need_eo_tl'. + (cov*tl-au-print): Emit `.eo.tl' tag. + +2004-12-05 Alejandro López-Valencia <dradul@etb.net.co> + + * man/groff_char.man: Minor imrovements. + +2004-12-04 Werner LEMBERG <wl@gnu.org> + + * src/preproc/eqn/eqn.man: Revised. + +2004-11-25 Werner LEMBERG <wl@gnu.org> + + * src/utils/xtotroff/xtotroff.c: Reformat to be similar to other + groff source files. + Include config.h. + Include limits.h. + Remove X_NOT_STDC_ENV conditional. + (Version_string, program_name): New global variables. + (groff_flag): Removed. + (MapFont): Updated. + (usage): Take a stream as argument. + Use `program_name'. + Update all callers. + (main): Add `long_options' array for `--help' and `--version'. + Make `-g' a dummy option. + Handle `-v' and unknown options. + Remove unused `position' variable. + + * src/utils/xtotroff/Makefile.sub (MAN1): Define. + (XLIBS): Add LIBGROFF. + + * src/utils/xtotroff/xtotroff.man, src/utils/xtotroff/Makefile.in: + New files. + + * src/devices/xditview/Dvi.c (default_font_map): Split into three + parts to avoid compiler warning. + (resources): Don't initialize with `default_font_map'. + (ClassInitialize): Initialize first element of `resources'. + + * src/devices/xditview/Makefile.sub (devdir, xtotroff, DPIS, fonts): + Removed. + + * src/utils/lkbib/lkbib.man, src/utils/lookbib/lookbib.man, + src/utils/pfbtops/pfbtops.man: Revised, updated. + + * configure.ac: Generate src/utils/xtotroff/Makefile. + * configure: Regenerated. + +2004-11-24 Werner LEMBERG <wl@gnu.org> + + First fixes to get produce HTML. + + * src/devices/grohtml/post-html.cpp (generate_img_src): Add `alt' + attribute. + + * tmac/www.tmac (IMG, PIMG, MPIMG): Add `alt' attribute. + (HR, LI): Use `HTML</p>', not `HTML'. + + * doc/webpage.ms: Minor updates. + +2004-11-23 Larry Kollar <kollar@alltel.net> + + Add option -S grohtml to determine the file split level. + + * src/devices/grohtml/post-html.cpp (split_level): New global + variable. + (html_header::determine_header_level): Use split_level. + (main): Handle `-S' command line option. + Sort options. + + * src/preproc/html/pre-html.cpp (scanArguments): Updated. + + * src/devices/grohtml/grohtml.man: Document it. + Sort options. + + * NEWS: Document it. + +2004-11-23 Y T <doarhop@hotmail.com> + + * tmac/s.tmac (ref*add-V, ref*add-N): New macros for handling + the volume and number refer entries. + +2004-11-22 Werner LEMBERG <wl@gnu.org> + + * src/devices/grohtml/html-table.cpp + (html_table::emit_table_header): Don't emit `cols' attribute which + doesn't exist in HTML 4.0 and is thus invalid. + + * NEWS: More minor fixes and updates. + +2004-11-18 Werner LEMBERG <wl@gnu.org> + + * tmac/www.tmac (HTML-NS, HTML-TAG-NS, HTML-TAG-NEXT): Simplified. + (HTML</p>): Minor clean-up. + + * tmac/groff_www.man: Updated. + + * src/devices/grohtml/grohtml.man: Revised and updated. + + * NEWS: Updated. + +2004-11-18 Gaius Mulley <gaius@glam.ac.uk> + + * src/devices/grohtml/post-html.cpp (html_printer::do_heading): + Fix space insertion. + (html_printer::do_links): Fix rules generation around automatic + heading links. + + * tmac/www.tmac (LK): Use HTML-TAG-NS. + (HR): Simplify. + No longer emit empty line for non-HTML devices. + +2004-11-17 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile.in (prepare_examples, webpage.html): Handle + `groff.css'. + + * doc/Makefile.sub (EXAMPLEFILES, CLEANNOTSRCDIRADD, + prepare_examples, webpage.html): Handle `groff.css'. + +2004-11-15 Werner LEMBERG <wl@gnu.org> + + * NEWS, README, doc/webpage.ms: Updated. + + * tmac/www.tmac (HTML, HTML-TAG): Minor clean-ups. + +2004-10-30 Gaius Mulley <gaius@glam.ac.uk> + + * src/include/printer.h (printer): Remove virtual function + `round_width'. + Update all source files. + + * src/devices/grohtml/post-html.cpp (html_printer): New member + function `round_width'. + +2004-10-20 Tadziu Hoffmann <hoffmann@usm.uni-muenchen.de> + + * src/preproc/tbl/table.cpp (table::do_row): Fix handling of the `d' + column key letter suffix. + +2004-10-14 Werner LEMBERG <wl@gnu.org> + + * Makefile.in (check): Depend on `site.exp' and `docheck'. + (docheck): Run dejagnu's `runtest' if it exists. + (site.exp): Create dejagnu configuration file. + + * Makefile.sub (DISTCLEANFILES): Add files related to dejagnu. + +2004-10-13 Werner LEMBERG <wl@gnu.org> + + * src/devices/grohtml/html-text.cpp (html_text_get_alignment), + src/devices/grohtml/post-html.cpp (make_val, + html_printer::handle_state_assertion): Fix compiler warnings. + + * src/roff/troff/div.cpp: Include `stringclass.h' and `mtsm.h'. + (diversion::diversion): Fix order of initializers. + + * src/roff/troff/div.h: Don't include `mtsm.h'. + + * src/roff/troff/env.cpp: Include `stringclass.h' and `mtsm.h'. + (environment::environment): Fix order of initializers. + (environment::make_tag, environment::construct_format_state): Fix + compiler warnings. + + * src/roff/troff/input.cpp: Include `stringclass.h' and `mtsm.h'. + (input_iterator::input_iterator, macro::macro): Fix order of + initializers. + + * src/roff/troff/mtsm.cpp: Include only necessary header files. + (state_set::add, state_set::val): Fix compiler warnings. + + * src/roff/troff/mtsm.h: Don't include `stringclass.h'. + (bool_value_state, int_value_state, units_value_state, + string_value_state): Remove comma after last element which causes + an error with g++ 3.3.3. + + * src/roff/troff/node.cpp: Include `stringclass.h'. + (hline_node::hline_node, vline_node::vline_node, + space_char_hmotion_node, left_italic_corrected_node): Fix compiler + warnings. + (zero_width_node::zero_width_node): Fix order of initializers. + + * src/roff/troff/node.h: Don't include `mtsm.h'. + (hmotion_node): Fix compiler warnings. + + * src/roff/troff/number.cpp: Include `stringclass.h' and `mtsm.h'. + +2004-10-12 Gaius Mulley <gaius@glam.ac.uk> + + * doc/groff.css: New file. + + * doc/webpage.ms: Use `groff.css'. + Other small fixes. + + * tmac/an-old.tmac (need_eo_h): New number register. + (TH): Emit `.eo.tl' tag after title. + (SH): Set `need_eo_h'. + (an-trap): Handle `need_eo_h'. + (an-do-tag): s/HTML-TAG-NS/HTML-TAG-NEXT/. + + * tmac/s.tmac (need_eo_h, need_eo_tl): New number registers. + (TL): Always start diversion. + Updated. + (@AI): Always call `par@reset'. + (@AB): Update code for -Thtml. + (cov*tl-au-print): Handle -Thtml. + (par@reset): Handle `need_eo_tl', `need_eo_h'. + (@IP): Simplified. + (@IT-html): Removed. + (@SH): Set `need_eo_h' for -Thtml. + (par@TL): s/HTML-TAG/HTMl-TAG-NS/. + Set `need_eo_tl'. + (@NH): s/HTML-TAG/HTMl-TAG-NS/. + Set `need_eo_h' for -Thtml. + (@EQ, @EN): Don't handle -Thtml specially. + (par@load-init): Don't handle -Thtml specially. + + * tmac/www.tmac (www:paraspace): New macro. + (HTML-NS, HTML-TAG-NS): Use new `tag' request. + (HTML</p>, HTML-TAG-NEXT): New macros. + (HnE): Emit tag `.eo.h' instead of break. + (HR): s/HTML-NS/HTML/. + (www-end-nowhere): End diversion only if `www-html' not set. + Emit `.eo.tl' tag. + (ULS, ULE): s|HTML|HTML</p>|. + (LI): Call `www:paraspace'. + (HEAD): New macro. + +2004-10-11 Gaius Mulley <gaius@glam.ac.uk> + + * src/roff/troff/request.h (macro): Make `p' public. + New variable `is_a_diversion'. + New member function `is_diversion'. + + + * src/devices/grohtml/html.h (simple_output): New member function + `force_nl'. + + * src/devices/grohtml/html-table.cpp (tabs::compatible): Fix + computation of `total'. + (tabs::check_init): New function. + (html_table::emit_table_header): Emit style data. + (html_table::insert_column): Improved. + + * src/devices/grohtml/html-table.h: Updated. + + * src/devices/grohtml/html-text.cpp (html_text::html_text): + Initialize `start_space' with TRUE. + (html_text::end_tag, html_start_tag): Fix `P_TAG' and `PRE_TAG' + cases. + (html_text::flush_text): Set `start_space' flag. + (html_text::uses_indent, html_text::remove_para_space, + html_text::get_alignment): New functions. + (html_text::push_para): Updated. + (html_text::do_para): Check for empty argument. + Don't set `space_emitted'. + (html_text::do_space, html_text::emit_space): Updated. + + * src/devices/grohtml/html-text.h (tag_definition): New variable + `really_issued'. + (html_text): New member function `uses_indent', `remove_para_space', + `get_alignment'. + + * src/devices/grohtml/output.cpp (simple_output::force_nl): New + function. + (simple_output:nl): Always emit `\n'. + + * src/devices/grohtml/post-html.cpp: Include `string.h'. + (BASE_POINT_SIZE): Removed. + (base_point_size, head_info): New global variables. + (text_glob): New member functions `is_ll', `is_tl', `is_eo_tl', + `is_eo_h'. + (text_glob::is_nf, text_glob::is_fi): Handle `.fi 0' and `.fi 1' + tags, respectively. + (page::add_and_encode): Pass additional parameter for tag flag. + (assert_pos): New structure. + (assert_state): New class. + (html_printer): Remove `indentation', `prev_indent'. + Add variables `troff_indent', `device_indent', `temp_indent'. + Add variables `seen_indent', `next_indent', `seen_pageoffset', + `next_pageoffset', `seen_linelenght', `next_linelength', + `seen_center', `next_center', `seen_space', `seen_break', `as'. + Add member functions `do_check_center', `do_space', `do_head', + `get_troff_indent', `restore_troff_indent', `handle_assertion', + `handle_state_assertion', `do_end_para', `set_char_and_width'. + Change argument to `do_fill' to `char *'. + Update constructor. + (html_printer::emit_raw): Call `shutdown_table'. + Use new functions. + (html_printer::do_center): Simplified. + (html_printer::do_title): Improved. + (html_printer::write_header): Emit one more newline. + Use new functions. + (html_printer::do_heading, html_printer::do_indent, + html_printer::do_eol, html_printer::do_tab_ts, + html_printer::do_tab, html_printer::do_tab0, + html_printer::calc_po_in, html_printer::next_horiz_pos, + html_printer::remove_courier_tabs, + html_printer::insert_tab0_foreach_tab, html_printer::begin_page): + Updated. + (html_printer::do_linelength, html_printer::do_pageoffset, + html_printer::do_indentation, html_printer::do_tempindent, + html_printer::do_tab_te): Simplified. + (html_printer::do_pointsize): Check whether point size is really + associated a `.tl' tag. + (html_printer::do_break): Rewritten. + (html_printer::troff_tag): Improved. + (html_printer::flush_globs): Updated. + (html_printer::lookahead_for_tables): Handle `is_br'. + Use new functions. + (html_printer::set_char): Check `sbuf_style.f'. + (html_printer::write_navigation): Use string comparison. + (html_printer::~html_printer): Emit `head_info'. + (html_printer::special): Rewritten. + (get_str, make_val): New functions. + (main): New option `s' to set the base point size. + + * src/preproc/html/pre-html.cpp (scanArguments): Handle option `s'. + +2004-10-10 Gaius Mulley <gaius@glam.ac.uk> + + * src/roff/troff/node.cpp: New extern `debug_state'. + Include `stringclass.h' and `mtsm.h'. + Implement new classes and class members from `node.h'. + (real_output_file): Make `fp' public. + (troff_output_file): New variables `cur_div_level' and `tag_list'. + Update constructors. + (troff_output_file::really_print_line): Check whether we should push + the current troff state and use the state at the start of the + invocation of this diversion. + (troff_output_file::add_to_tag_list): New member function. + (node::add_char): Handle `glyph_comp_np'. + + * src/roff/troff/node.h: Include `mtsm.h'. + (node): New variables `state', `push_state', `div_nest_level', + `is_special'. Update constructors, all descendants. + Pass additional argument to `add_char' member function. + New virtual member functions `is_tag', `debug_node', + `debug_node_list'. Update all descendants. + (tag_node): New class for handling tags. + (output_file): Add variable `state'. + +2004-10-09 Gaius Mulley <gaius@glam.ac.uk> + + * src/roff/troff/mtsm.cpp, src/roff/troff/mtsm.h: New files, + providing a minimal troff state machine to emit meta tags for the + post-grohtml device driver. + + * src/roff/troff/Makefile.sub (OBJS, CCSRCS, HDRS): Handle new + files. + +2004-10-09 Werner LEMBERG <wl@gnu.org> + + * tmac/trace.tmac: Fix handling of `am' and `am1' calls. + +2004-10-06 Gaius Mulley <gaius@glam.ac.uk> + + * src/roff/troff/column.cpp (vjustify_node::copy): Updated. + + * src/roff/troff/div.h: Include `mtsm.h'. + (diversion): New variables `any_chars_added', `needs_push', + `saved_seen_break', `saved_seen_space', `saved_seen_eol', + `saved_suppress_next_eol', `modified_tag'. + New virtual member function `is_diversion'. Update all descendants. + + * src/roff/troff/div.cpp (diversion::diversion, + macro_diversion::macro_diversion): Updated. + (do_divert): Handle `seen_break', `seen_space', `seen_eol', + `suppress_next_eol'. + (top_level_diversion::space): Handle `curenv->seen_space'. + (page_offset): Update tag handling. + (space_request, blank_line, flush_output): Don't call `add_html_tag'. + + * src/roff/troff/env.h (environment): Make `tabs' public. + Remove `ignore_next_eol', `emitted_node'. + Update `output_line', `output'. + New variables `seen_space', `seen_eol', `suppress_next_eol', + `seen_break'. + New member functions `construct_state', `make_tag', + `construct_format_state, `construct_new_line_state, + `dump_troff_state'. + Remove `add_html_tag', `make_html_tag'. + + * src/roff/troff/env.cpp: New externs `suppress_push', + `get_diversion_state', `global_diverted_space'. + (pending_output_line): New variable `was_centered'. + Update constructor and all callers. + (pending_output_line::output): Call `curenv->construct_format_state'. + (environment::environment, environment::copy): Updated. + (environment::output): Handle `was_centered'. + (environment::add_char): Handle construct and diversion state. + (environment::add_node): Handle construct state. + (environment::newline): Handle `was_centered'. + (environment::output_line): Updated. + (environment::possibly_break_line): Updated. + Update tag handling. + (environment::add_html_tag): Replaced with... + (environment::make_tag): New function. + (environment::add_html_tag_tabs, environment::make_html_tag): Removed. + (environment::dump_troff_state): New debugging function. + (environment::construct_state, environment::construct_format_state, + environment::construct_new_line_state): New functions. + (environment::do_break): Updated. + Handle `global_diverted_space'. + (environment::handle_tag): Update tag handling. + (point_size, fill, do_break_request): Don't call `add_html_tag'. + (no_fill): Don't call `add_html_tag'. + Set `suppress_next_eol'. + (center, right_justify, line_length, indent, temporary_indent, + set_tabs): + Update tag handling. + + * src/roff/troff/input.cpp: Don't include `stringclass.h'. + (input_iterator): New variables `is_diversion', `diversion_state'. + Update constructors. + (input_stack): New member functions `get_div_level', + `get_diversion_state', `check_end_diversion'. + New variables `div_level', `diversion_state'. Initialize them. + (suppress_push, global_diverted_space): New global variables. + (input_stack::finish_get, input_stack::finish_peek, + input_stack::remove_boundary, input_stack::end_file, + input_stack::clear, input_stack::pop_macro): Call + `check_end_diversion'. + (input_stack::push): Handle `div_level' and `diversion_state'. + (get_diversion_state): New function. + (diverted_space_node::reread): Handle `global_diverted_space'. + (macro::macro): Update constructors. + (macro::is_diversion): New function. + (macro::operator=): Set `is_a_diversion'. + (string_iterator): New member function `is_diversion'. + (string_iterator::string_iterator): Update constructors. + (string_iterator::fill): Set `div_nest_level'. + (macro_iterator): New member function `is_diversion'. + (do_if_request): Handle `suppress_push'. + (tag, taga): New functions. + (init_input_requests): Add `tag' and `taga' requests. + +2004-10-05 Gaius Mulley <gaius@glam.ac.uk> + + * src/include/font.h (font): New member function + `get_image_generator'. + New variables `unscaled_charwidths' and `image_generator'. + + * src/libs/libgroff/font.cpp (font::get_width): Always return the + character's unscaled width if `font::unscaled_charwidths' is set. + (font::get_image_generator): New function. + (font::load_desc): Check the `unscaled_charwidths' and + `image_generator' keywords. + + * src/libs/libgroff/fontfile.cpp: Initialize + `font::unscaled_charwidths' and `font::image_generator'. + + * font/devhtml/DESC.proto: s/html/unscaled_charwidths/. + + * font/devhtml/Makefile.sub (DESC): Set `image_generator' keyword. + + * man/groff_font.man: Document `unscaled_charwidths' and + `image_generator'. + + * src/preproc/html/pre-html.cpp: Include `device.h'. + (image_gen): New global variable. + (imageList::createPage): Use `image_gen'. + (main): Use `image_generator' keyword. + +2004-10-04 Gaius Mulley <gaius@glam.ac.uk> + + * tmac/html.tmac: Handle \[sqrtex]. + +2004-10-04 Gaius Mulley <gaius@glam.ac.uk> + + * src/include/printer.h (printer): New virtual method `round_width'. + + * src/devices/grodvi/dvi.cpp, src/devices/grolbp/lbp.cpp, + src/devices/grolj4/lj4.cpp, src/devices/grops/ps.cpp, + src/devices/grotty/tty.cpp (printer::round_width): New function + member. + + * src/devices/grohtml/post-html.cpp (printer::round_width): New + function member. + (html_printer::set_numbered_char): Use it. + +2004-10-03 Gaius Mulley <gaius@glam.ac.uk> + + * aclocal.m4 (GROFF_GHOSTSCRIPT_PATH): New macro. + + * configure.ac: Call GROFF_GHOSTSCRIPT_PATH. + + * configure: Regenerated. + + * Makefile.in (GHOSTSCRIPT): New variable. + (MDEFINES): Add GHOSTSCRIPT. + +2004-10-03 Werner LEMBERG <wl@gnu.org> + + * INSTALL.gen: Updated (taken from texinfo CVS). + +2004-09-28 Werner LEMBERG <wl@gnu.org> + + * NEWS: Updated. + +2004-09-28 Heinz-Jürgen Oertel <hj.oertel@surfeu.de> + + * tmac/groff_www.man: Revised and updated. + +2004-09-26 Werner LEMBERG <wl@gnu.org> + + Fix \$@ and \$* to handle any number of arguments. + + * src/roff/troff/input.h (BEGIN_QUOTE, END_QUOTE): New special + characters. + + * src/roff/troff/input.cpp (input_iterator::internal_level): + Removed. + (input_stack): New member functions `increase_level' and + `decrease_level'. + (input_stack::get_level): Don't use `internal_level'. + (get_copy, token::next): Handle BEGIN_QUOTE and END_QUOTE. + (end_quote_iterator): Completely removed. + (interpolate_arg): Build string for \$@ and \$* which is then + pushed onto the input stack. + +2004-09-23 Keith Marshall <keith.d.marshall@ntlworld.com> + + * tmac/groff_ms.man, doc/groff.texinfo (ms Document Control + Registers): Document changes from 2004-09-19. + +2004-09-23 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac (ne): Using default scaling operator. + +2004-09-19 Keith Marshall <keith.d.marshall@ntlworld.com> + + This change implements the following features: + + PORPHANS + New numeric register: Defines number of lines following LP, PP, + QP, IP or XP, which must be kept together, before any automatic + page break. If insufficient space remains on the current page, a + page break is forced before the new paragraph begins. + + HORPHANS + New numeric register: Sets number of lines of following paragraph + which must be kept with a heading, defined by NH or SH, before any + automatic page break. If insufficient space remains on the + current page, a page break is forced before the heading. + + GROWPS + (Thanks to Joerg van den Hoff, for this idea). + + New numeric register: Sets the first level of heading (set with + NH), which will keep the same point size as body text; e.g. if + GROWPS is set to 3, .NH 3, .NH 4, ... will produce headings at the + point size specified by \n[PS], but .NH 2 and .NH 1 will have + progressively larger point sizes, determined by \n[PSINCR] (see + below). + + PSINCR + New numeric register: Sets the point size increment for each level + of heading, (set with NH), below the threshold level set by + GROWPS; e.g. if \n[PS] = 10, \n[GROWPS] = 3 and \n[PSINCR] = 2.0p, + then .NH 1 will produce 14pt headings, .NH 2 will produce 12pt, + and all other levels will remain at 10pt, (because \n[PS] = 10). + + SH + Existing 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. + + SN-DOT + New string, set by NH macro, replaces the existing (undocumented) + use of SN, to represent the assigned section number. + + SN-NO-DOT + New string, set by NH macro, represents the assigned section + number, but omits the terminal period (periods at intermediate + levels are retained). + + SN + String set by NH macro, originally undocumented, now implemented + as an alias for SN-DOT (which reproduces original behaviour). + + * tmac/s.tmac (PORPHANS): New register. + (par*start): Use it. + (HORPHANS, GROWPS, PSINCR): New registers. + (SH-NO-TAG, @SH): Use them. + (@NH): Improved. + +2004-09-19 Keith Marshall <keith.d.marshall@ntlworld.com> + + * NEWS, doc/groff.texinfo (ms Display and Keeps), tmac/groff_ms.man: + Document the deletion of `Ds' and `De' macros. + +2004-09-10 Werner LEMBERG <wl@gnu.org> + + In tbl, handle \a as an interpreted leader character if in + compatibility mode. + + * src/preproc/tbl/table.h (PREFIX, PREFIX_CHAR, LEADER, + LEADER_CHAR): New macros. + (compatible_flag): New declaration. + + * src/preproc/tbl/main.cpp (table_input): Add LEADER_1, LEADER_2, + LEADER_3, and LEADER_4 to `state'. + (table_input::get): Handle `\a'. + + * src/preproc/tbl/table.cpp (PREFIX): Removed. + (LEADER_REG): New macro. + (table::init_output): Define LEADER_REG string register if in + compatibility mode. + + * src/preproc/tbl/tbl.man: Document it. + +2004-08-18 Werner LEMBERG <wl@gnu.org> + + * tmac/doc.tmac (An): Fix error message. + +2004-08-06 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/main.cpp (main): Call `fatal' not `error' if a + file can't be opened. UNIX tbl has the same behaviour. + +2004-08-05 Y T <doarhop@hotmail.com> + + * src/preproc/grn/hdb.cpp (compatibility_flag): Add declaration. + (DBRead): If in compatibility mode, take into account the text + when computing figure boundaries. + +2004-08-05 Werner LEMBERG <wl@gnu.org> + + * src/preproc/soelim/soelim.man: Improved. Based on suggestions + from Tadziu Hoffmann. + +2004-08-03 Werner LEMBERG <wl@gnu.org> + + * doc/meref.me: Document `_M' register. + +2004-08-03 Martin Husemann <martin@duskware.de> + + Make hpftodit work correctly on big-endian systems. + + * src/utils/hpftodit/hpftodit.cpp (File): New method + `get_uint32(char *)'. + (entry): New member `orig_value'. + (read_tags): Use new method. + (output_font_name, read_and_output_pcltypeface, dump_ascii): + Updated. + +2004-08-01 Werner LEMBERG <wl@gnu.org> + + * tmac/s.tmac: Undo change 2003-06-29. The proper macro definitions + are already in X11's `macros.t' file. + +2004-08-01 Jeff Conrad <jeff_conrad@msn.com> + + * src/utils/hpftodit/hfptodit.cpp (output_font_name, dump_ascii): + Fix casting bug. + (read_and_output_pcltypeface): Handle strings with length <= 4. + +2004-07-27 Egil Kvaleberg <egil@kvaleberg.no> + + * tmac/s.tmac (pg@top): Don't save `PO' register. + (pg*end-col, pg*end-page): Directly use `PO' register. + +2004-07-27 Werner LEMBERG <wl@gnu.org> + + * man/groff_tmac.man: Mention `trace' and `pic' macro packages. + + * src/preproc/refer/refer.cpp (output_references): Check for + empty hash table. + * src/preproc/refer/refer.man: Improve documentation of + `bibliography' command. + +2004-07-26 Werner LEMBERG <wl@gnu.org> + + Add requests `fcolor' and `gcolor'. + + * src/roff/troff/env.cpp (fill_color_change, glyph_color_change): + New functions. + (init_env_requests): Add `fcolor' and `gcolor'. + + * src/roff/troff/input.h: Export do_glyph_color and do_fill_color. + + * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo + (Colors): Document new requests. + +2004-07-24 Werner LEMBERG <wl@gnu.org> + + Add support for fractional point sizes in ms macros. A value for + PS, VS, FPS, and FVS greater than or equal to 1000 is always divided + by 1000. For example, `.nr PS 10250' sets the font size to 10.25p. + + * tmac/s.tmac (@AU, @AI, par@load-init, par@init, par@reset, NL, + PX): Handle fractional point sizes for PS, VS, FPS, and FVS. + + * tmac/groff_ms.man, docs/groff.texinfo (ms Document Control + Registers), NEWS: Document it. + +2004-07-19 Werner LEMBERG <wl@gnu.org> + + * src/preproc/pic/lex.cpp (for_input): Add member `from'. + Update constructor. + (do_for, for_input::get, for_input::peek): Handle negative `by'. + * src/preproc/pic/pic.man, doc/pic.ms, NEWS: Document it. + +2004-07-08 Thomas Klausner <wiz@netbsd.org> + + * tmac/doc-syms (doc-str-St--p1003.1-2004): New string. + * tmac/groff_mdoc.man: Updated. + +2004-07-05 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo (Manipulating Hyphenation): Further improve + documentation of `hcode'. + +2004-07-04 Sang Dae Yu <sdyu@bh.knu.ac.kr> + + Improve appearance of arrows in pic. + + * src/preproc/pic/object.cpp (draw_arrow): Make outline of filled + arrow head thin. + Use two line segments for drawing non-filled arrow head. + (line_object::print, spline_object::print): Shorten line length to + avoid arrow sticking. + (arc_object::print): Take arrow direction into account. + +2004-07-03 Heinz-Jürgen Oertel <hj.oertel@surfeu.de> + + * tmac/groff_www.man: Update documentation of .MPIMG. + +2004-07-03 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac (RI): Always start with font `R'. + (RI, IR): Properly end with font `R'. + +2004-07-02 Paul Eggert <eggert@cs.ucla.edu> + + * man/ditroff.man, man/groff_font.man, man/groff_out.man, + src/devices/grohtml/grohtml.man, src/preproc/grn/grn.man, + src/preproc/pic/pic.man, tmac/groff_man.man, tmac/groff_ms.man: + Don't pass more than six arguments to .R, .I, .B, etc., for + compatibility with traditional troff macros. + +2004-07-02 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.h: s/COMPATIBLE_SAVE/PUSH_GROFF_MODE/. + s/COMPATIBLE_RESTORE/POP_GROFFCOMP_MODE/. + Update all users. + (PUSH_COMP_MODE): New internal character constant. + Update all users. + + * src/roff/troff/input.cpp (get_copy): Handle PUSH_GROFF_MODE, + PUSH_COMP_MODE, and POP_GROFFCOMP_MODE. + (token::next, macro::append): Handle PUSH_COMP_MODE. + (decode_args): Add PUSH_GROFF_MODE or PUSH_COMP_MODE before and + POP_GROFFCOMP after each of the decoded arguments to make them + independent from the compatibility mode status. + (comp_mode): Add `COMP_ENABLE'. + (do_define_string, do_define_macro): Handle COMP_ENABLE. + (define_string, append_string, define_macro, define_indirect_macro, + append_macro, append_indirect_macro): Handle `compatible_flag'. + (chop_macro, substring_request, asciify): Handle PUSH_COMP_MODE. + + * man/groff_diff.man, doc/groff.texinfo: Updated. + +2004-07-01 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Improve documentation of `hcode'. + Use @documentencoding and convert document to latin-1; to do that + make latin characters active and assign proper macros (within a + @tex...@end tex environment). + * doc/Makefile.in (.texinfo.html, groff): Use --enable-encoding. + * doc/Makefile.sub (groff): Ditto. + +2004-06-29 Werner LEMBERG <wl@gnu.org> + + Implement two new conditional operators `F <name>' and `S <name>' + which check whether <name> is a valid font or style, respectively. + + * src/libs/libgroff/font.cpp (text_file): Add `silent' member. + (text_file::text_file): Updated. + (text_file::error): Don't emit message if `silent' is set. + (font::load_font): Add optional third argument (which is directly + passed to `load'. + (font::load): Add optional second argument to check the header of + a font only, without emitting warning or error messages. + * src/include/font.h (font): Updated. + + * src/roff/troff/input.cpp (do_if_request): Implement `S' and `F' + conditionals. + * src/roff/troff/node.cpp (mount_font_no_translate): Add optional + fourth argument to check a font without mounting. + (check_font, check_style): New functions. + * src/roff/troff/node.h: Updated. + + * man/groff_diff.man, man/groff.man, NEWS, doc/groff.texinfo: + Updated. + +2004-06-27 Werner LEMBERG <wl@gnu.org> + + Implement new string-valued register `.sty' to return the current + style name. + + * env.cpp (environment::get_style_name_string): New function. + (init_env_requests): Add `.sty' register. + * env.h (environment): Updated. + * node.cpp (font_info): Make `get_style_name' a friend. + (get_style_name): New function. + * node.h: Updated. + + * man/groff_diff.man, man/groff.man, NEWS, doc/groff.texinfo: + Updated. + +2004-06-15 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/main.cpp (process_data) <GOT_RIGHT_BRACE>: Handle + `nospaces' option. + +2004-06-10 Colin Percival <colin.percival@wadham.ox.ac.uk> + + * doc/meintro.me, doc/meref.me: Don't use \*[td], \n[dy], \*[mo], + and \n[mo] to avoid dependency on current date. + +2004-06-08 Werner LEMBERG <wl@gnu.org> + + * Makefile.sub (install_data): New target. + +2004-06-04 Werner LEMBERG <wl@gnu.org> + + * src/libs/libxutil/Makefile.sub (EXTRA_CFLAGS): Define. + +2004-06-03 Werner LEMBERG <wl@gnu.org> + + * src/devices/xditview/Makefile.sub (EXTRA_LDFLAGS): Fix typo and + order of libraries. + (install_data): Add $(srcdir). + + * src/utils/xtotroff/Makefile.sub (EXTRA_LDFLAGS): Fix order of + libraries. + +2004-06-02 Werner LEMBERG <wl@gnu.org> + + * aclocal.m4 (GROFF_X11): s/have_no_x/groff_no_x/. + Add X11 stuff to CFLAGS, LDFLAGS, and LIBS temporarily. + Add test for Xmu library. + (GROFF_APPRESDIR_OPTION, GROFF_APPRESDIR_CHECK, + GROFF_APPRESDIR_DEFAULT): New macros. + + * configure.ac: Call GROFF_APPRESDIR_OPTION, GROFF_APPRESDIR_CHECK, + and GROFF_APPRESDIR_DEFAULT. + + * configure: Regenerated. + + * Makefile.in (appresdir): New variable. + (MDEFINES): Add appresdir. + + * src/devices/xditview/Makefile.sub (EXTRA_LDFLAGS): Add -Xmu and + -Xt. + (install_data, uninstall_sub): New targets to handle GXditview.ad. + + * src/utils/indxbib/Makefiles.ub (install_data): Depend on + `$(srcdir)/eign', not `eign'. + + * MANIFEST, INSTALL, NEWS, PROBLEMS: Updated. + + * man/groff_out.man, man/roff.man, src/devices/grops/grops.man, + src/devices/xditview/gxditview.man, src/roff/groff/groff.man: + Protect (g)xditview with `\%' to avoid hyphenation. + Other minor formatting. + +2004-06-01 Werner LEMBERG <wl@gnu.org> + + Integrate gxditview into groff's standard directory hierarchy. + + * src/xditview/*: Moved to ... + * src/devices/xditview/*: Here. + Moved DviChar.h and XFontName.h to src/include. + Moved DviChar.c and XFontName.c to new directory src/libs/libxutil. + Split off `xmalloc' into new file src/libs/libxutil/xmalloc.c. + Moved xtotroff.c to new directory src/utils/xtotroff. + Provide proper Makefile.sub files (reusing the stuff from + Imakefile.in). + DESC renamed to DESC.in. + Removed GXDitview-ad.h, INSTALL, Imakefile.in. + Converted everything from K&R to ANSI C. + Decorated with const where appropriate. + Cast string constants with `String' and `char *' where appropriate. + Made it compile with C++ (used as a C compiler). + Removed other minor compiler warnings. + + * src/devices/xditview/device.c: Include config.h, string.h, and + defs.h. + Don't declare `exit', `strtok', `strchr', and `getenv'. + (FONTPATH): Remove. + + * src/devices/xditview/font.c: Don't declare `XParseFontName' and + `XFormatFontName'. + + * src/devices/xditview/xditview.c: Include config.h. + Include stdio.h earlier. + Protect declaration of `popen' and `pclose' with + NEED_DECLARATION_POPEN and NEED_DECLARATION_PCLOSE. + Replace `caddr_t' with `XtPointer'. + (MakePromptFunc): New typedef. + (DoPrint): Use RETSIGTYPE. + (promptfunction): Change type to MakePromptFunc. + (MakePrompt): Use MakePromptFunc for third argument. + (xmalloc): Removed. + + * src/devices/xditview/ad2c: Add casts to `String'. + + * src/include/XFontName.h (XFontNameString): Don't use array + notation. + Add prototypes for `XParseFontName', `XFormatFontName', + `XCompareFontName', and `XCopyFontName'. + + * src/include/Makefile.sub (HDRS): Add `DviChar.h' and + `XFontName.h'. + + * src/utils/xtotroff/xtotroff.c: Include getopt.h. + Don't declare `XParseFontName' and `XFormatFontName'. + (xmalloc): Removed. + (main): Remove `optind' and `optarg'. + + * Makefile.in (XDEVDIRS, XPROGDIRS, XLIBDIRS): New variables + (to select programs which need X). + Make XDEVIDIRS depend on `FORCE'. + (X_CFLAGS, X_LIBS, X_EXTRA_LIBS, X_PRE_LIBS): New variables (for + X support). + (MDEFINES): Updated. + (LIBDIRS): Use XLIBDIRS. + (CPROGDIRS): Use XPROGDIRS. + (DEVDIRS): Remove font directories for gxditview. + (ALLDIRS, DISTDIRS): Add XDEVDIRS. + (EXTRADIRS): Remove src/xditview. + + * Makefile.sub (DISCLEANFILES): Updated. + + * Makefile.comm (LIBXUTIL): New variable. + (.cpp.o, .cpp.obj): Handle EXTRA_CCFLAGS. + (.c.o, .c.obj, .y.o): Handle EXTRA_CFLAGS. + + * Makefile.cpg, Makefile.ccpg ($PROG): Handle EXTRA_LDFLAGS. + + * aclocal.m4 (GROFF_X11): New function. + + * configure.ac: Call GROFF_X11. + Don't create src/xditview/Imakefile. + Don't emit notice how to build gxditview. + + * configure: Regenerated. + + * test-groff.in (GROFF_BIN_PATH, XENVIRONMENT): Updated. + +2004-05-28 Akihiro Sagawa <sagawa@sohgoh.net> + + * Makefile.in (CPPFLAGS): Define. + (MDEFINES): Add CPPFLAGS. + +2004-05-27 Werner LEMBERG <wl@gnu.org> + + * arch/misc/Makefile.sub (shdeps.sed): Use $(srcdir). + +2004-05-26 Niklas Edmundsson <nikke@acc.umu.se> + + Fix problems with `friend name injections'. + + * src/preproc/eqn/box.h (make_mark_box, make_lineup_box, + make_script_box), src/roff/troff/div.h (end_diversions), + src/roff/troff/env.h (title), input.cpp (process_input_stack): Undo + change 2004-04-08. + +2004-05-25 Bernd Warken <bwarken@mayn.de> + + * src/preproc/pic/pic.man, doc/pic.ms: Add example for `command'. + +2004-05-25 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/cset.cpp, src/libs/libgroff/lf.cpp, + src/libs/libgroff/color.cpp: Include lib.h. + +2004-05-25 Paul Eggert <eggert@cs.ucla.edu> + + * PROBLEMS: Update documentation for problems with Sun C++ 5.0 + through Forte 6u1, and for how to get GNU make on Solaris. + +2004-05-24 Werner LEMBERG <wl@gnu.org> + + * PROBLEMS: Document problems with gcc 3.4.0 on Sun. Reported + by Paul Eggert. + +2004-05-15 Keith Marshall <keith.d.marshall@ntlworld.com> + + * arch/misc/Makefile.sub (shdeps.sed): Don't use `$<' in explicit + rule. + +2004-05-14 Werner LEMBERG <wl@gnu.org> + + * REVISION: Set to 2. + + * aclocal.m4 (GROFF_STDINT_H): Removed. + (GROFF_INTTYPES_H): Define HAVE_CC_INTTYPES_H. + + * configure.ac: Updated. + * configure, src/include/config.hin: Regenerated. + + * src/libs/libgroff/tmpname.cpp: Don't include stdint.h but + inttypes.h conditionally. + +2004-05-13 Werner LEMBERG <wl@gnu.org> + +Version 1.19.1 released +======================= + +2004-05-10 Stephen Gildea <http://www.gildea.com/stephen> + + * src/preproc/refer/label.y (same_author_last_name, + same_author_name): Handle empty sort keys. + +2004-05-10 Werner LEMBERG <wl@gnu.org> + + * NEWS, README, TODO, PROJECTS, PROBLEMS, MANIFEST, doc/webpage.ms, + tmac/TODO: Updated. + + * tmac/doc-syms (doc-str-Lb-libposix, doc-str-Lb-libpthread, + doc-str-Lb-librt): Reset font. + (Lb): Rename `doc-str-Lb' to `doc-str-Lb1'. + Provide `doc-str-Lb' to reset font. + * tmac/groff_mdoc.man: Updated. + +2004-05-08 Jan Schaumann <jschauma@netmeister.org> + + * src/preproc/html/pre-html.cpp (make_message): Make it work for + snprintf versions which don't conform to ANSI C 99 (this is, + counting the string's trailing null byte in the return value). + +2004-05-07 Keith Marshall <keith.d.marshall@ntlworld.com> + + * src/roff/troff/node.cpp (suppress_node::tprint): Don't expect + that all implementations of sprintf handle null pointers correctly. + +2004-05-04 Werner LEMBERG <wl@gnu.org> + + * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo: + Document `.U' register. + + * src/roff/troff/env.cpp (environment::mark_last_line) + [WIDOW_CONTROL]: Fix scope of `p' for new C++ compilers. + +2004-05-04 Larry Kollar <kollar@alltel.net> + + New read-only register `.U'; it returns 1 in safer mode and 0 + otherwise. + + * src/roff/troff/input.cpp (init_input_requests): Implement `.U' + register. + +2004-05-03 Werner LEMBERG <wl@gnu.org> + + * install-sh, mkinstalldirs: New versions; taken from texinfo CVS. + +2004-04-17 Werner LEMBERG <wl@gnu.org> + + * src/include/font.h (font): Use `int' for ch_index. + * src/libs/libgroff/font.cpp (font::alloc_ch_index, + font::compact): Updated. + + * src/roff/groff/pipeline.c (run_pipeline) [_WIN32]: Fix compiler + warnings. + + * src/roff/troff/div.cpp (begin_page), src/roff/troff/env.cpp + (hyphen_word): Fix compiler warnings. + * src/roff/troff/input.cpp (get_char_for_escape_name): Return + `char'. + Update all callers. + (get_delim_number, get_line_arg): Change second argument type to + `unsigned char'. + (macro_header::copy, token::next, do_define_string, + do_define_character, substring_request, asciify_macro, + unformat_macro, read_size, non_interpreted_node::interpret, + while_request, main: Fix compiler warnings. + (read_color_draw_node): Initialize `col'. + + * src/preproc/tbl/table.cpp (horizontal_span, table_entry): Make + `start_col' and `end_col' of type `int'. + (vertical_rule): Make `col' of type `int'. + + * src/preproc/grn/hdb.cpp (DBRead): Protect call to getc with check + for EOF. + + * src/preproc/refer/label.y (uppercase_array, lowercase_array): + New arrays. + (format_serial): Use them to remove dependency on ASCII. + + * src/devices/grops/ps.cpp (ps_printer::define_encoding): Fix + compiler warning. + * src/devices/grops/psrm.cpp (resource_manager::supply_resource): + Ditto. + + * src/devices/grotty/tty.cpp (tty_font::load_tty_font): Fix + compiler warnings. + (glyph): Change type of `hpos' to `int'. + + * src/devices/lbp/lbp.cpp (strsep): Removed. Unused. + * src/devices/lbp/lbp.h (splinerel): Fix compiler warnings. + + * src/utils/tfmtodit.cpp (gf::load): Fix compiler warnings. + + * src/utils/pfbtops/pfbtops.c (get_text): Fix compiler warning. + +2004-04-16 Werner LEMBERG <wl@gnu.org> + + * src/devices/grolbp/lbp.h, src/preproc/grn/gprint.h, + src/preproc/grn/hgraph.cpp, src/preproc/grn/hpoint.cpp, + src/preproc/html/pushback.cpp, src/preproc/html/pushback.h: Use + `double' instead of `float' everywhere. + * src/preproc/grn/main.cpp: Use `double' instead of `float' + everywhere. + (main): Add return value. + * src/preproc/grn/hdb.cpp: Use `double' instead of `float' + everywhere. + Update all user functions. + + * src/include/search.h, src/include/ptable.h, src/include/printer.h, + src/preproc/eqn/box.h, src/preproc/pic/object.h, + src/preproc/refer/refer.h, src/preproc/tbl/table.h, + src/preproc/tbl/table.cpp, src/roff/troff/env.h, + src/roff/troff/div.h, src/roff/troff/token.h, src/roff/troff/node.h, + src/roff/troff/input.cpp, src/roff/troff/request.h, + src/roff/troff/node.cpp: Don't mix `struct' and `class' in forward + declarations. + + * src/utils/indxbib/signal.c: Include stdlib.h. + +2004-04-14 Keith Marshall <keith.d.marshall@ntlworld.com> + + * tmac/s.tmac (@init, RP): Allow initialization of the PO register + before the first page. + +2004-04-14 Thomas Klausner <wiz@netbsd.org> + + * tmac/doc-common (doc-volume-as-*): Use lowercase names. + (doc-operating-system-*): Updated. + * tmac/doc-syms (doc-str-St-*): Various small fixes. + (doc-str-Lb-*): Add more library names. + +2004-04-10 Art Haas <ahaas@airmail.net> + + * src/utils/hpftodit/hpuni.cpp (hp_msl_to_unicode_list): Don't + use anonymous type. + +2004-04-09 Art Haas <ahaas@airmail.net> + + * src/utils/tfmtodit.cpp (lig_chars): Don't use anonymous type. + +2004-04-09 Keith Marshall <keith.d.marshall@ntlworld.com> + + * arch/misc/shdeps.sh: Generate better comment for sed script. + +2004-04-08 Art Haas <ahaas@airmail.net> + + * src/libs/libgroff/glyphuni.cpp (glyph_to_unicode_list), + src/libs/libgroff/uniglyph.cpp (unicode_to_glyph_list), + src/libs/libgroff/uniuni.cpp (unicode_decompose_list), + src/preproc/eqn/box.cpp (param_table), src/preproc/grn/hgraph.cpp + (polyfill), src/preproc/grn/main.cpp (polyfill), + src/preproc/refer/command.cpp (command_table), + src/utils/tfmtodit.cpp (lig_table): Don't use anonymous types (which + gcc 3.5 doesn't like). + +2004-04-08 Werner LEMBERG <wl@gnu.org> + + Removing many compiler warnings. groff should now compile with + a C++ compiler used for C files also. [Simple variable renamings + to avoid shadowing aren't logged in detail.] + + * src/devices/grodvi/dvi.cpp: Some local variable renamings. + (draw_dvi_printer::draw) ['c']: Enclose in block. + + * src/devices/grohtml/post-html.cpp: Some local variable renamings. + (page::add_line): Fix typos. + * src/devices/grohtml/html-text.cpp: Some local variable renamings. + + * src/devices/grolbp/lbp.cpp: Don't define _GNU_SOURCE. + Some local variable renamings. + * src/devices/grolbp/lbp.h: Some local variable renamings. + + * src/devices/grolj4/lj4.cpp, src/devices/grotty/tty.cpp: Some local + variable renamings. + + * src/libs/libbib/index.cpp (index_search_item_iterator::get_tag): + Remove redundant local variable declaration. + * src/libs/libbib/map.c (mapread, unmap): Don't use K&R style. + Don't use `caddr_t' but `void *'. + Enclose functions with `extern "C"' for C++. + + * src/libs/libdriver/input.cpp (remember_filename, + remember_source_filename): Use cast for string constant. + + * src/libs/libgroff/font.cpp, src/libs/libgroff/fontfile.cpp, + src/libs/libgroff/nametoindex.cpp, src/libs/libgroff/paper.cpp, + src/libs/libgroff/geometry.cpp: Some local variable renamings. + * src/libs/libgroff/iftoa.c, src/libs/libgroff/itoa.c: Don't use K&R + style. + Enclose functions with `extern "C"' for C++. + * src/libs/libgroff/quotearg.c (TRUE,FALSE): Define as macros. + (needs_quoting): Return `int'. + (quote_arg): Add proper casts to malloc and realloc. + * src/libs/libgroff/spawnvp.c: Compile code only for MS-DOS and + various MS Windows environments. + (spawnvp_wrapper): Add proper cast to malloc. + + * src/preproc/eqn/box.h: Remove redundant declarations of + `make_script_box', `make_mark_box' and `make_lineup_box'. + * src/preproc/eqn/eqn.y: Remove redundant declaration of `strsave'. + * src/preproc/eqn/script.cpp, src/preproc/eqn/pile.cpp: Some local + variable renamings. + + * src/preproc/grn/hpoint.cpp: Some local variable renamings. + * src/preproc/grn/hgraph.cpp: Some local variable renamings. + (dx, dy): Renamed functions to... + (deltax, deltay): This. + * src/preproc/grn/main.cpp: Some local variable renamings. + (deffont): Add `const'. + (initpic, conv): Use cast for string constant. + + * src/preproc/html/pre-html.cpp: Some local variable renamings. + (makeFileName, alterDeviceTo, addZ): Use cast for string constant. + (char_buffer::run_output_filter): Second argument is unused. + * src/preproc/html/pushback.cpp: Some local variable renamings. + + * src/preproc/pic/pic.y: Remove redundant declaration of `do_copy'. + * src/preproc/pic/object.cpp: Some local variable renamings. + + * src/preproc/refer/label.y (lookup_label): Remove redundant + declaration of local variable. + + * src/preproc/soelim.cpp: Remove redundant declaration of + `interpret_lf_args'. + + * src/preproc/tbl/main.cpp: Some local variable renamings. + + * src/roff/groff/groff.cpp (main): Use cast for string constant. + * src/roff/groff/pipeline.c: Enclose declarations of `error', + `c_fatal', and `i_to_a' with `extern "C"' for C++. + Don't use C++-style comments. + + * src/roff/troff/env.h: Remove redundant declaration of `title'. + * src/roff/troff/node.h, src/roff/troff/env.cpp, + src/roff/troff/div.cpp, src/roff/troff/node.cpp: Some local variable + renamings. + * src/roff/troff/div.h: Remove redundant declaration of + `end_diversions'. + * src/roff/troff/troff.h: Remove redundant declaration of + `cleanup_and_exit' + * src/roff/troff/input.cpp: Remove redundant declaration of + `handle_first_page_transition' and `process_input_stack'. + + * src/utils/hpftodit.cpp: Some local variable renamings. + + * src/utils/indxbib/signal.c: Enclose functions with `extern "C"' + for C++. + Don't define RETSIGTYPE. + * src/utils/indxbib/indxbib.cpp: Some local variable renamings. + + * src/utils/pfbtops/pfbtops.cpp: Don't use K&R style. + (error): Use `const' in argument. + (main): Remove redundant declaration of `optind'. + Move declaration of `Version_string' to top-level. + + * PROBLEMS: Document difficulties compiling signal.c if a C++ + compiler is used for C. + +2004-04-07 Werner LEMBERG <wl@gnu.org> + + * Makefile.sub (DISTCLEANFILES): Add `test-groff'. + +2004-04-06 Keith Marshall <keith.d.marshall@ntlworld.com> + + Make scripts like nroff.sh and neqn.sh portable across various + (Unix-like) shell implementations from Cygwin, MSYS, etc., which use + non-POSIX path separators. The idea is to extend those scripts to + decide at run-time (of the script) which path separator to use. + + * arch/misc/Makefile.sub: New file. + * arch/misc/shdeps.sh: New file, generating OS dependency fixups. + This script handles @GROFF_BIN_PATH_SETUP@, replacing it with + a proper definition of the variable `GROFF_RUNTIME'. + + * Makefile.in (SH_DEPS_SED_SCRIPT): New variable. + (MDEFINES): Add SH_DEPS_SED_SCRIPT. + (PROGDEPDIRS): New variable. + `FORCE' it. + (PROGDIRS): Add PROGDEPDIRS. + + * src/preproc/eqn/Makefile.sub (neqn): Call SH_DEPS_SED_SCRIPT. + Don't substitute @SEP@ and @BINDIR@. + * src/preproc/eqn/neqn.sh: Use @GROFF_BIN_PATH_SETUP@. + (PATH): Use GROFF_RUNTIME. + + * src/roff/nroff/Makefile.sub (nroff): Call SH_DEPS_SED_SCRIPT. + Don't substitute @SEP@ and @BINDIR@. + * src/roff/nroff/nroff.sh: Use @GROFF_BIN_PATH_SETUP@. + (PATH): Use GROFF_RUNTIME. + +2004-04-05 Keith Marshall <keith.d.marshall@ntlworld.com> + + * src/roff/nroff/nroff.sh: Implement work-around for sh.exe from + Cygwin which doesn't handle stderr correctly. + +2004-03-08 Werner LEMBERG <wl@gnu.org> + + * Makefile.comm (install_dev, uninstall_dev): Protect `for' loops + against empty argument. Problem reported by <cgd@broadcom.com>. + +2004-03-05 Keith Marshall <keith.d.marshall@ntlworld.com> + + * Makefile.in (SEP): Replaced with... + (RT_SEP, SH_SEP): Separators for the target platform's native path + separator and the build environment, respectively. + (fontpath, tmacpath): Use RT_SEP. + (MDEFINES): Updated. + + * doc/Makefile.sub (GROFF_BIN_PATH): Use SH_SEP. + * src/preproc/eqn/Makefile.sub (neqn): Use SH_SEP. + * src/roff/nroff/Makefile.sub (nroff): Use SH_SEP. + +2004-03-05 Werner LEMBERG <wl@gnu.org> + + * font/devlj4/Makefile.sub (LJ4RES): Set to 1200. This helps to + reduce alignment problems with newer printers which use built-in + TrueType fonts (instead of the older Intellifonts). The ideal + solution is to provide a second set of groff metric files, but this + is extremely time-consuming to produce, given that HP's metric + files are very rudimentary. + +2004-03-01 Werner LEMBERG <wl@gnu.org> + + * src/devices/grolj4/lj4.cpp (main): Fix argument of getopt_long. + s/operand/argument/ in error message. + +2004-03-01 Keith Marshall <keith.d.marshall@ntlworld.com> + + * src/roff/groff/groff.cpp (main): Don't allow option -o if -Thtml + is in use. + +2004-03-01 Antti Kantee <pooka@netbsd.org> + + * tmac/s.tmac (XE): Fix error message. + +2004-02-27 Jeff Conrad <jeff_conrad@msn.com> + + * src/include/nonposix.h (write, dup, dup2, close) [_MSC_VER]: + New macros. + + * src/roff/groff/pipeline.c: Declare strcasecmp. + (run_pipeline) [_WIN32]: Use function name variants which don't + start with `_'. + Fix stream handling. + +2004-02-27 Keith Marshall <keith.d.marshall@ntlworld.com> + + * src/include/nonposix.h: Fix declaration of `system_shell_name'. + Declare `spawnvp_wrapper' and macro definitions of spawnvp only + for platforms which use the native Win32 runtime libraries. + (FLUSH_INPUT_PIPE) [_UWIN]: Provide non-empty version. + + * src/libs/libgroff/quotearg.c (QUOTE_ARG_MALLOC_ERROR, + QUOTE_ARG_REALLOC_ERROR): Fix string. + + * src/preproc/html/pre-html.cpp: Remove declaration of + `spawnvp_wrapper'. + Don't use __MINGW32__. + s/DEBUG_FILE/DEBUG_FILE_DIR/. + (DEBUG_TEXT, DEBUG_NAME, DEBUG_FILE) [DEBUGGING]: New macros. + (OUTPUT_STREAM, PS_OUTPUT_STREAM, REGION_OUTPUT_STREAM): New macros. + (char_buffer::run_output_filter) [MAY_FORK_CHILD_PROCESS]: Fix + calls to `set_redirection' and `WAIT'. + [MAY_SPAWN_ASYNCHRONOUS_CHILD]: Remove unused variable `i' and `j'. + Fix calls to `set_redirection' and `save_and_redirect'. + (char_buffer::do_html, char_buffer::do_image) [DEBUGGING]: Fix calls + to `set_redirection' and `save_and_redirect'. + (usage): Fix message. + (makeTempFiles, main): Use `DEBUG_FILE'. + +2004-02-21 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/troff.h (WARN_TOTAL): Fix value. + +2004-02-21 Keith Marshall <keith.d.marshall@ntlworld.com> + + * src/libs/libgroff/quotearg.c: New file, providing proper argument + quoting for MSVC's spawn* and exec* functions. + * src/libs/libgroff/spawnvp.c: New file, providing a wrapper around + spawnvp with proper quoting for MSVC. + + * src/libs/libgroff/assert.cpp (program_name), + src/libs/libgroff/new.cpp (program_name): Declare as `extern "C"'. + * src/libs/libgroff/Makefile.sub (OBJS, CSRCS): Updated. + + * src/roff/troff/input.cpp (program_name): Declare as `extern "C"'. + + * src/include/error.h (program_name): Declare as `extern "C"'. + * src/include/nonposix.h [__MSDOS__ ...]: Handle spawnvp. + +2004-02-21 Jeff Conrad <jeff_conrad@msn.com> + + * src/preproc/html/pre-html.cpp [__CYGWIN__ ...]: Declare + spawnvp_wrapper. + [MAY_SPAWN_ASYNCHRONOUS_CHILD]: Declare i and j. + +2004-02-20 Jeff Conrad <jeff_conrad@msn.com> + + * src/roff/groff/pipeline.c (cmd) [__MSDOS__ || ...]: New global + variable. + (sbasename) [__MSDOS__ || ...]: New function. + (system_shell_name) [__MSDOS__ || ...]: Use a different, more + generic algorithm. + (system_shell_dash_c, is_system_shell) [__MSDOS__ || ...]: Updated. + (run_pipeline) [_WIN32]: Use _XXX variants for some macros instead + of XXX. + Use STDOUT_FILENO instead of hardcoded file handle. + (signal_catcher) [__MSDOS__]: Moved to non-_WIN32 section. + +2004-02-19 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/div.cpp: Include nonposix.h after troff.h to + avoid warnings w.r.t. redefinition of P_tmpdir for some compilers. + +2004-02-18 Werner LEMBERG <wl@gnu.org> + + * font/devlj4/Makefile.sub (DEVFILES): Updated to contain all + new font and mapping files. + +2004-02-18 Jeff Conrad <jeff_conrad@msn.com> + Keith Marshall <keith.d.marshall@ntlworld.com> + + * src/include/nonposix.h (FLUSH_INPUT_PIPE): New macro to empty + an input pipe. This is needed for the MSVC compiler to make troff's + `-o' option work. + + * src/roff/troff/div.cpp: Include nonposix.h. + (cleanup_and_exit): Call FLUSH_INPUT_PIPE. + +2004-02-17 Werner LEMBERG <wl@gnu.org> + + * font/devlj4/generate/special.awk: New script. + * font/devlj4/generate/Makefile (S): Use special.awk. + * font/devlj4/*: Regenerated, including the following new files: + Arial (AR, AB, AI, ABI), Times New Roman (TNRR, TNRB, TNRI, TNRBI), + MS Symbol (SYMBOL), Wingdings (WINGDINGS). + * NEWS: Document new lj4 fonts and revised hpftodit. + +2004-02-17 Paco Andrés Verdú <pandres@dragonet.es> + + * src/devices/grolbp/lbp.h (vmdvarc): Fix formatting string. + +2004-01-25 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/progname.cpp: Replaced with... + * src/libs/libgroff/progname.c: New file. + * src/libs/libgroff/Makefile.sub: Updated accordingly. + +2004-01-17 Werner LEMBERG <wl@gnu.org> + + * font/devlj4/generate/Makefile (SYMBOL): Use 9nb28703.tfm. + +2004-01-16 Jeff Conrad <jeff_conrad@msn.com> + + * font/devlj4/generate/wingdings.map, + font/devlj4/generate/symbol.map: Include unnamed glyphs. + Use groff glyph names where possible. + * src/devices/grolj4/lj4_font.man: Minor updates. + +2004-01-13 Werner LEMBERG <wl@gnu.org> + + * tmac/www.tmac (DC): Handle TTY devices. + + * doc/webpage.ms: Document viewCVS from ffii.org. + * NEWS, README: Updated. + + * src/roff/groff/groff.man: Mention lj4_font man page. + + * font/devlj4/generate/Makefile (SYMBOLMAP, WINGDINGSMAP): New + variables. + (FONTS): Add SYMBOL and WINGDINGS. + (SYMBOL, WINGDINGS): New targets. + +2004-01-13 Jeff Conrad <jeff_conrad@msn.com> + + * src/devices/grolj4/lj4_font.man: New man page. + * src/devices/grolj4/Makefile.sub (MAN5): New variable. + * src/devices/grolj4.man: Mention lj4_font man page. + + * src/utils/hpftodit/hpftodit.cpp (read_map): Handle line comments. + * src/utils/hpftodit/hpftodit.man: Document it. + (CW): New macro. + Remove details about fonts (which are now in lj4_font.man). + + * font/devlj4/generate/symbol.map, + font/devlj4/generate/wingdings.map: New files. + +2004-01-12 Werner LEMBERG <wl@gnu.org> + + * README: Mention ffii's viewcvs access. + +2004-01-09 Werner LEMBERG <wl@gnu.org> + + * font/devlj4/generate/special.map: Map MSL 228 to U+221F. + +2004-01-09 Jeff Conrad <jeff_conrad@msn.com> + + Revert most of the change from 2004-01-03 to better control used + symbol sets. + + * src/utils/hpftodit/hpftodit.cpp (symbol_set): New structure. + (text_symbol_sets, special_symbol_sets): New arrays. + (symbol_set_table): New global variable. + (read_symbol_sets): Use search order given in the text_symbol_sets + and special_symbol_sets arrays. If command line flag -a is not + given, search both arrays. + (output_charset): Require x_height_tag only for command line flag -i. + +2004-01-06 Werner LEMBERG <wl@gnu.org> + + Implement string-valued registers \n[.m] and \n[.M] to return the + name of the current drawing and background color, respectively. + + * src/roff/troff/symbol.h: Moved to... + * src/include/symbol.h: Here. + Small fixes to make it work outside of the `troff' directory. + * src/roff/troff/symbol.cpp: Moved to... + * src/libs/libgroff/symbol.cpp: Here. + Small fixes to make it work outside of the `troff' directory. + + * src/include/Makefile.sub (HDRS), src/libs/libgroff/Makefile.sub + (OBJS, CCSRCS), src/roff/troff/Makefile.sub (OBJS, CCSRCS, HDRS): + Updated. + + * src/include/color.h: Include symbol.h. + (color): Add new field `nm'. + * src/libs/libgroff/color.cpp (color::color): Updated. + + * src/roff/troff/dictionary.cpp, src/roff/troff/div.cpp, + src/roff/troff/node.cpp, src/roff/troff/number.cpp, + src/roff/troff/reg.cpp: Don't include symbol.h. + + * src/roff/troff/env.cpp: Don't include symbol.h. + (environment::get_glyph_color_string, + environment_get_fill_color_string): New member functions. + (init_env_requests): Handle `.m' and `.M' registers. + * src/roff/troff/input.cpp: Don't include symbol.h. + (default_symbol): Moved to symbol.cpp/symbol.h. + (do_glyph_color, do_fill_color, define_color): Pass symbol name + to color constructor. + * src/roff/troff/env.h: Updated. + + * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo: + Document new registers. + +2004-01-05 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/node.cpp (space_node::get_breakpoints, + space_node::nbreaks): Protect against zero `next' field. + +2004-01-03 Jeff Conrad <jeff_conrad@msn.com> + + In hpftodit, use the symbol sets offered in the TFM. + + * src/utils/hpftodit/hpftodit.cpp (NO_GLYPH): New constant. + (symbol_set, text_symbol_sets, special_symbol_sets, + symbol_set_table): Removed. + (get_printcode): Removed. + (read_symbol_sets): Initialize `symbol_set' field with + `NO_SYMBOL_SET'. + Simplify code to just use the `kind' value. + (output_charset): Improve output formatting. + (dump_symbols): Simplified. + +2004-01-02 Werner LEMBERG <wl@gnu.org> + + * font/devlj4/generate/text.map: Add more MSL numbers. + +2004-01-02 Jeff Conrad <jeff_conrad@msn.com> + + * src/utils/hpftodit/hpftodit.cpp (is_decomposed): New macro. + (text_symbol_sets): Add more symbol sets. + (debug_flag): New static variable (moved from `main'). + (get_printcode, show_symset): New functions. + (main): Remove `debug_flag'. + (output_charset): Use `show_symset'. + (dump_symbols): Use `show_symset'. + Print symsets for all glyphs. + (read_map): Actually call `unicode_to_ucode_make' but this time + correctly. + +2004-01-01 Werner LEMBERG <wl@gnu.org> + + * font/devlj4/generate/text.map, font/devlj4/generate/special.map: + Fix placement of comments. + +2004-01-01 Jeff Conrad <jeff_conrad@msn.com> + + * src/utils/hpftodit/hpftodit.cpp (main): Read map file also if + option `-d' is given. + (output_charset): Improve warning messages to give more information. + (dump_symbols): Make information more precise. + (usage): Updated. + (read_map): Don't call unicode_to_ucode_name; the glyph names must + appear as-is and shouldn't be decomposed. + +2003-12-31 Werner LEMBERG <wl@gnu.org> + + * src/utils/hpftodit/hpftodit.cpp (dump_tags): Handle posture_tag. + * font/devlj4/generate/Makefile (IFLAG): Updated to new units. + (FONTS): Add TrueType font families Arial and Times New Roman. + (TNRR, TNRB, TNRI, TNRBI, AR, AB, AI, ABI): New targets. + * font/devlj4/generate/text.map: Fix Unicode values of `fi' and + `fl'. + +2003-12-31 Jeff Conrad <jeff_conrad@msn.com> + + * test-groff.in (SEP): Quote value. + * src/roff/troff/node.cpp (suppress_node::tprint): Change type of + `tem' to `char*' to avoid deallocation of a pointer to a constant + object which some compilers don't like. + +2003-12-31 Werner LEMBERG <wl@gnu.org> + + * font/devlj4/generate (text.map, special.map): Rewritten to work + with the new hpftodit version. + +2003-12-30 Jeff Conrad <jeff_conrad@msn.com> + + * src/utils/hpftodit/hpftodit.cpp (output_charset): Emit HP symbol + set and 8bit character code for all glyphs also. + +2003-12-30 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/strcasecmp.c: Updated from gnulib. + +2003-12-29 Werner LEMBERG <wl@gnu.org> + + More fixes for MSVC compiler. + + * doc/Makefile.sub (GROFF_BIN_PATH): Use $(SEP). + + * src/include/nonposix.h (STDIN_FILENO, STDOUT_FILENO, + STDERR_FILENO) [_MSC_VER]: Define conditionally. + (getpid) [_MSC_VER]: Remove. + Include direct.h and process.h conditionally. + + * src/roff/troff/node.cpp (suppress_node::tprint): Don't use + parentheses for a_delete. + + * src/utils/lookbib/lookbib.cpp: Include nonposix.h. + + * test-groff: Replaced with... + * test-groff.in: This new template to handle path separator + properly. + + * configure.ac: Check for direct.h and process.h. + Generate test-groff script. + * configure, src/include/config.hin: Regenerated. + +2003-12-28 Werner LEMBERG <wl@gnu.org> + + Add integral extension glyph. + Add new option `-x' to afmtodit to suppress use of built-in AGL. + + * font/devhtml/R.proto, font/devutf8/R.proto: Add `u23AE'. + + * font/devps/generate/textmap: Provide entry for `integralex' to + override (old) PUA value of the AGL. + * font/devps/generate/Makefile (SS): Add afmtodit option `-x'. + * font/devps/*: Regenerated. + + * src/utils/afmtodit/afmtodit.pl: Add option `-x'. + * src/utils/afmtodit/afmtodit.man, NEWS: Updated. + +2003-12-27 Werner LEMBERG <wl@gnu.org> + + Add forgotten `coproduct' symbol (already available for DVI). + + * font/devhtml/R.proto, font/devps/generate/textmap, + font/devps/symbolmap, font/devutf8/R.proto, man/groff_char.man, + src/libs/libgroff/uniglyph.cc, src/libs/libgroff/glyphuni.cpp: Add + U+2210 (\[coproduct]). + +2003-12-26 Jeff Conrad <jeff_conrad@msn.com> + + hpftodit has been extended to handle TrueType metric files and + more glyphs. See hpftodit.man for more details. + + * src/utils/hpftodit/hpftodit.cpp: Include stdio.h, string.h, + ctype.h, and unicode.h. + s/msl/charcode/ everywhere since we now handle Unicode values also. + (equal, NO, YES, MSL, SYMSET, UNICODE, UNICODE): New macros. + Use it where appropriate. + (MULTIPLIER): Replaced with... + (multiplier): New global static variable. + (scale): Updated. + (tag_type): Add more TFM tags. + (tag_name): New array. + (ENUM_TYPE, FLOAT_TYPE): Removed. + (BYTE_TYPE): New value assigned. + (ASCII_TYPE, RATIONAL_TYPE): New enumeration values. + (text_symbol_sets, special_symbol_sets): Extended to cover more + sets. + (check_type): Add return value. + (check_units): Add parameters to get ppi and upem values. + Handle TrueType TFM data. + (output_font_name): New function. + (output_charset): Add parameter to handle TFM type. + Handle TrueType TFMs also. + (em_fract): New macro. + (dump_tags): Be much more verbose and handle more tags. + (dump_ascii, dump_symbol_sets, dump_symbols): New functions. + (hp_msl_to_ucode_name, unicode_to_ucode_name, is_uname): New + functions. + (read_map): Add parameter to handle TFM type. + Handle both MSL and Unicode mappings. + (main): Add two new command line options `-a' and `-q'. + Updated to make use of new functions. + (usage): Updated. + + * src/utils/hpftodit/hpuni.cpp: New file. + + * src/utils/hpftodit/Makefile.sub, src/utils/hpftodit/hpftodit.man: + Updated. + +2003-12-25 Werner LEMBERG <wl@gnu.org> + + * src/include/nonposix.h (read) [_MSC_VER]: Define. + +2003-12-24 Werner LEMBERG <wl@gnu.org> + + * src/utils/afmtodit/afmtodit.man: Some reformulations as suggested + by Michail Vidiassov <master@iaas.msu.ru>. + +2003-12-20 Werner LEMBERG <wl@gnu.org> + + * font/devhtml/R.proto: Add u00{47,67}_0306, u00{53,73}_0327, + and u0049_0307. + Add missing latin-2 glyphs. + * font/devutf8/R.proto: Add missing latin-2 glyphs. + + * tmac/troffrc: Load `composite.tmac' earlier. + + * tmac/dvi.tmac, tmac/ps.tmac, tmac/lbp.tmac: Add u00{47,67}_0306, + u00{53,73}_0327, and u0049_0307. + * tmac/X.tmac: Add u00{47,67}_0306. + * tmac/tty-char.tmac: Use composite glyph names for readability. + + * NEWS: Updated. + + * src/include/unicode.h: Remove `extern' keywords. + +2003-12-20 Nilgün Belma Bugüner <nilgun@superonline.com> + + * tmac/latin5.tmac: New file. + +2003-12-19 Werner LEMBERG <wl@gnu.org> + + Add some glyphs needed for Turkish. + + * font/devutf8/R.proto: Add u00{47,67}_0306, u00{53,73}_0327, + and u0049_0307. + + * tmac/composite.tmac: Add `,' as a synonym for `ac' accent. + * tmac/tty-char.tmac: Add representations for u00{47,67}_0306, + u00{53,73}_0327, and u0049_0307. + +2003-12-18 Werner LEMBERG <wl@gnu.org> + + * src/devices/grops/ps.cc (ps_output::put_float): Revert change + from 2001-10-04. + Remove trailing zeros. + +2003-12-17 Werner LEMBERG <wl@gnu.org> + + Make \? transparent to end-of-sentence recognition. + + * src/roff/troff/input.cc (non_interpreted_node): Add + `ends_sentence' member function. + +2003-12-16 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Document `dt' request correctly. + Other minor typographical improvements. + +2003-12-10 Michail Vidiassov <master@iaas.msu.ru> + + * src/utils/afmtodit/Makefile.sub (afmtodit): Fix typo. + +2003-12-10 Richard Stallman <rms@gnu.org> + + * LICENSE: Better wording. + +2003-12-09 Werner LEMBERG <wl@gnu.org> + + * aclocal.m4 (GROFF_BROKEN_SPOOLER_FLAGS): Set default value to 0. + * configure, NEWS: Updated. + +2003-12-08 Werner LEMBERG <wl@gnu.org> + + * FDL: Updated to version 1.2 (from www.gnu.org/copyleft). + +2003-12-07 Bernd Warken <bwarken@mayn.de> + + * LICENSE: Updated. + +2003-12-07 Werner LEMBERG <wl@gnu.org> + + * INSTALL: Improved. + +2003-12-05 Keith Marshall <keith.d.marshall@ntlworld.com> + + Use path separator character of target platform for compiled-in + default paths. + + * aclocal.m4 (GROFF_TARGET_PATH_SEPARATOR): New macro. + * configure.ac: Use GROFF_TARGET_PATH_SEPARATOR. + * configure: Regenerated. + * Makefile.in (SEP): Use GROFF_PATH_SEPARATOR. + +2003-12-05 Werner LEMBERG <wl@gnu.org> + + * src/include/nonposix.h (PATH_SEP_CHAR): New definition. + Replace `PATH_SEP[0]' with `PATH_SEP_CHAR' everywhere. + +2003-12-04 Bernd Warken <bwarken@mayn.de> + + * LICENSE: New file. + +2003-12-03 Werner LEMBERG <wl@gnu.org> + + * src/utils/afmtodit/afmtodit.pl: Comment out code which handles + ligatures present in AFM files since groff currently only + understands some standard ligatures and nothing else. + +2003-12-03 Jeff Conrad <jeff_conrad@msn.com> + + * src/roff/groff/groff.cpp (main): Don't run the spooler if + option -v is given. + + * src/roff/groff/pipeline.c (run_pipeline) [_WIN32]: Fix error + messages. + Close stdout copy. + Don't use Unix wait flags. + +2003-12-02 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/glyphuni.cpp, src/roff/troff/unicode.cpp, + src/roff/troff/unicode.h, src/roff/troff/uniglyph.cpp, + src/roff/troff/uniuni.cpp: Moved to... + * src/libs/libgroff/glyphuni.cpp, src/libs/libgroff/unicode.cpp, + src/libs/libgroff/unicode.h, src/libs/libgroff/uniglyph.cpp, + src/libs/libgroff/uniuni.cpp: Here. + + * src/include/Makefile.sub.old (HDRS), + src/libs/libgroff/Makefile.sub (OBJS, CCSRCS), + src/roff/troff/Makefile.sub (HDRS, PBJS, CCSRCS): Updated. + +2003-12-01 Keith Marshall <keith.d.marshall@ntlworld.com> + + * src/preproc/htlp/pre-html.cpp (__tmpfile): Renamed to + `DEBUG_FILE'. + Updated all users. + +2003-12-01 Werner LEMBERG <wl@gnu.org> + + * groff.texinfo: Document special behaviour of `.vs 0'. + Improve documentation of `cflags' request. + * NEWS: Updated. + +2003-11-29 Werner LEMBERG <wl@gnu.org> + + * font/devlj4/generate/Makefile (CORONET): Use correct TFM. + * font/devlj4/CORONET: Regenerated. + +2003-11-24 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/env.cpp (hyphen_trie::read_patterns_file): Fix loop + if processing hyphenation patterns in traditional mode. + Improve error messages. + +2003-11-20 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/node.cpp (troff_output_file::put_char_width, + troff_output_file::put_char): Fix type of local variable `c'. + +2003-11-19 Werner LEMBERG <wl@gnu.org> + + * src/roff/groff/pipeline.c (P): Removed. Updated all function + declarations. + (i_to_a): Removed. libgroff already provides this function. + (run_pipeline) [_WIN32]: Don't use itoa but i_to_a. + +2003-11-18 Keith Marshall <keith.d.marshall@ntlworld.com> + + * src/roff/groff/pipeline.c (xstrsignal): Fix usage of + HAVE_DECL_SYS_LIST. + +2003-11-17 Werner LEMBERG <wl@gnu.org> + + * COPYING: Use correct version. + +2003-11-11 Werner LEMBERG <wl@gnu.org> + + LynxOS 4.0.0 doesn't declare vfprintf. + + * configure.ac: Check for vfprintf. + * configure: Regenerated. + * src/include/lib.h: Handle `NEED_DECLARATION_VFPRINTF'. + * src/include/config.hin: Regenerated. + +2003-11-10 Werner LEMBERG <wl@gnu.org> + + LynxOS 4.0.0 has snprintf (without declaration) but no vsnprintf. + + * configure.ac: Check for vsnprintf. + * configure: Regenerated. + * src/include/lib.h: Handle `NEED_DECLARATION_VSNPRINTF' and + `HAVE_VSNPRINTF'. + * src/include/config.hin: Regenerated. + +2003-11-09 Werner LEMBERG <wl@gnu.org> + + * aclocal.m4: Updated syntax to autoconf 2.59. + (GROFF_HTML_PROGRAMS): Use AC_FOREACH. + Don't check for gsos2. + (GROFF_SRCDIR, GROFF_BUILDDIR): Removed. autoconf 2.59 provides + working abs_top_srcdir and abs_top_builddir. + + * configure.ac: Updated syntax to autoconf 2.59. + Don't call GROFF_SRCDIR and GROFF_BUILDDIR. + Replace call to AC_DECL_SYS_SIGLIST with call to AC_CHECK_DECLS. + * configure: Regenerated. + + * Makefile.in, doc/Makefile.in: s/@top_srcdir@/@abs_top_srcdir@/, + s/@groff_top_builddir@/@abs_top_builddir@/. + + * src/roff/groff/pipeline.c (xstrsignal): + s/SYS_SIGLIST_DECLARED/HAVE_DECL_SYS_SIGLIST/. + +2003-11-07 Werner LEMBERG <wl@gnu.org> + + * src/devices/grodvi/dvi.cpp (draw_dvi_printer::draw) ['a']: Always + make start angle smaller than end angle to circumvent a bug in tpic + handling of some versions of dvipdfm (and dvipdfmx). + +2003-10-30 Werner LEMBERG <wl@gnu.org> + + * src/devices/grops/grops.man: Improve section on creating EPS. + +2003-10-29 Werner LEMBERG <wl@gnu.org> + + * contrib/pic2graph/pic2graph.sh: Fix typo (-P-letter -> + -P-pletter). + +2003-10-28 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Fix documentation of `.if'. + +2003-10-27 Michail Vidiassov <master@iaas.msu.ru> + + * src/utils/afmtodit/afmtodit.pl: Handle unmapped characters of + the form `uniXXXX' also. + +2003-10-27 Werner LEMBERG <wl@gnu.org> + + * contrib/eqn2graph/eqn2graph.sh, contrib/grap2graph/grap2graph.sh, + contrib/pic2graph/pic2graph.sh: Implement secure management of + temporary files. + Pass `-P-pletter' to groff to avoid data outside of the converted + area -- some versions of `convert' (for example 5.3.8) don't check + the bounding box of the image but always use a fixed image size + (letter paper format). + * contrib/eqn2graph/eqn2graph.man, contrib/grap2graph/grap2graph.man, + contrib/pic2graph/pic2graph.man: Updated. + + * src/roff/groff/groff.man: Document $TMP and $TEMP. + +2003-10-26 Werner LEMBERG <wl@gnu.org> + + * src/preproc/pic/troff.cpp (troff_output::simple_circle, + troff_output::simple_ellipse, troff_output::simple_arc, + troff_output::simple_line, troff_output::simple_spline, + troff_output::simple_polygon): Insert a space before arguments. + (troff_output::set_fill): Emit `\&' before `\D'Fg...' since the + latter doesn't produce a node, so the following `.sp -1' would do + the wrong thing. + Don't emit `.sp -1' after \M. This also doesn't produce a token + (and we don't have to care about compatibility mode). + (troff_output::set_color, troff_output::reset_color): Don't emit + `.sp -1' after \M and \m. + + * src/roff/troff/input.cpp (old_have_input): New global variable. + (input_stack::get): Handle `old_have_input'. + (process_input_stack) <token::TOKEN_NEWLINE>: Call + `trapping_blank_line' depending on `old_have_input', not + `have_input'. + +2003-10-20 Keith Marshall <keith.d.marshall@ntlworld.com> + + * src/libs/libgroff/tmpfile.cpp [__MSDOS__, _Win32] + (WIN32_TMPDIR_ENVVAR, MSDOS_TMPDIR_ENVVAR): New macros, providing + default directory names for temporary files. + [__MSDOS__, _Win32] (temp_init::temp_init): Use them. + + * src/roff/groff/pipeline.c [__MSDOS__]: Include stdlib.h. + [__MSDOS__] (run_pipeline): Honour environment variables. + Don't use `tmpnam' but `tempnam' to work around messy + implementation. + + * README.MinGW: New file. + +2003-10-16 Werner LEMBERG <wl@gnu.org> + + * src/preproc/html/pre-html.cpp (write_upto_newline): Don't use + `(*t)->next' without testing validity of `*t'. + (usage): Make it more readable. + +2003-10-16 Keith Marshall <keith.d.marshall@ntlworld.com> + + Make html device run under both MS-DOS and Win32. + + * src/preproc/html/pre-html.cpp (MAY_FORK_CHILD_PROCESS, + MAY_SPAWN_ASYNCHRONOUS_CHILD): New macros to control whether + spawn or fork+exec has to be used, and whether parent must sleep + until the child process terminates. Used in + `char_buffer::run_output_filter'. + (copyofstdoutfd): Removed. + (char_buffer): Replace `write_file_html' and `write_file_troff' + member functions with `emit_troff_output' and `run_output_filter'. + (DEVICE_FORMAT, HTML_OUTPUT_FILTER, IMAGE_OUTPUT_FILTER): New + macros. + (replaceFd): Replaced with... + (set_redirection): New auxiliary function. + (waitForChild): Replaced with... + (save_and_redirect): New auxiliary function for. + + (char_buffer::do_html, char_buffer::do_image): Simplified, using new + functions. + +2003-10-14 Keith Marshall <keith.d.marshall@ntlworld.com> + + * aclocal.m4 (GROFF_SYS_NERR): Check stdlib.h also. + (GROFF_LIBC): New function. + * configure.ac: Call GROFF_LIBC. + Check for `kill'. + * configure: Regenerated. + + * src/include/lib.h: Handle __MINGW32__. + * src/include/nonposix.h [_MSC_VER]: Handle __MINGW32__. + Add macro for `pipe'. + Define P_tmpdir. + + * src/roff/groff/pipeline.c (run_pipeline): Handle `no_pipe' + correctly. + + * src/utils/indxbib/signal.c (handle_fatal_signal) [!HAVE_KILL]: + Implement. + +2003-10-12 Werner LEMBERG <wl@gnu.org> + + * src/roff/groff/groff.cpp (help), src/devices/grops/ps.cpp (usage), + src/roff/troff/input.cc (usage): Updated. + + * NEWS, doc/groff.texinfo: Updated. + +2003-10-12 Peter Miller <millerp@canb.auug.org.au> + + * src/libs/libgroff/searchpath.cpp + (search_path::open_file_cautious): New function which also handles + `-' as stdin and stdout depending on the access mode. + * src/include/searchpath.h (search_path): Updated. + + * src/devices/grops/ps.cpp (main): Handle new `-I' switch. + * src/devices/grops/ps.h: Include `searchpath.h'. + * src/devices/grops/psrm.cpp (resource_manager::supply_resource): + Open resource file with `include_search_path.open_file_cautious'. + * src/devices/grops/grops.man: Document new `-I' switch. + + * src/devices/grodvi/dvi.cpp (main), src/devices/grolbp/lbp.cpp + (main), src/devices/grolj4/lj4.cpp (main), + src/devices/grotty/tty.cpp (main): Ignore new `-I' switch. + + * src/preproc/soelim/soelim.cpp (include_list_length, include_list): + Replaced with... + (include_search_path): New global variable. + (include_path_append): Removed. + (main): Use `include_search_path.command_line_dir' to handle `-I'. + (do_file): Simplify, using new + `include_search_path.open_file_cautious'. + + * src/roff/groff/groff.cpp (print_commands): Accept file handle as + parameter. + (main): Pass arguments to `-I' to both troff and devices. + Improve handling of `-V'. + * src/roff/groff/groff.man: Document changes to -I and -V. + + * src/roff/troff/input.cpp (include_search_path): New global + variable. + (next_file, source, ps_bbox_request, transparent_file, + process_input_file): Use new + `include_search_path.open_file_cautious'. + (main) Handle `-I' switch. + * src/roff/troff/node.cpp (troff_output_file::really_copy_file): + Use new `include_search_path.open_file_cautious'. + * src/roff/troff/node.h: New extern symbol `include_search_path'. + * src/roff/troff/troff.man: Document new `-I' switch. + +2003-09-15 Ruslan Ermilov <ru@FreeBSD.org> + + Support multiple calls of .Lb in LIBRARY section. + + * tmac/doc-common (doc-in-library-section): New register. + (doc-section-library): New string. + (Sh): Set `doc-in-library-section'. + (Rd): Updated. + * tmac/doc-syms (Lb): Insert breaks before and after arguments + if in LIBRARY section. + * tmac/doc.tmac (doc-save-global-vars): Updated. + * NEWS, tmac/groff_mdoc.man: Updated. + +2003-09-14 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc-common (doc-default-operating-system): New variable. + (Os): Use it. + +2003-09-08 Werner LEMBERG <wl@gnu.org> + + * tmac/doc.tmac (doc-reset-reference): Handle data for `%I' also. + +2003-08-31 Werner LEMBERG <wl@gnu.org> + + * Makefile.comm: Use `test ... ||' in favor of `if test ...; then'. + (install_dev, uninstall_dev): Check whether $(DEVSCRIPTS) and + $(DEVFILES) are not empty. + * Makefile.in: Use `test ... ||' in favor of `if test ...; then'. + +2003-08-23 Stephen Gildea <http://www.gildea.com/stephen> + + * src/preproc/refer/ref.cpp (reference::compute_sort_key): Always + insert SORT_SEP. With certain combinations of sort specifications, + refer sorted entries in the wrong order. In particular, entries + with a missing field should be be sorted before all entries that + have that field, before refer looks to the next field. + +2003-08-23 Werner LEMBERG <wl@gnu.org> + + * src/utils/pfbtops/Makefile.sub (LINK.c): Define it so that the + g++ linker is used. Reported by Mark J. Reed + <mark.reed@turner.com>. + +2003-08-16 Heinz-Jürgen Oertel <hj.oertel@surfeu.de> + + Add key character `x' to tbl which makes tbl call a user-defined + macro on a table cell. + + * src/preproc/tbl/table.h (entry_modifier): Add `macro'. + * src/preproc/tbl/table.cpp (block_entry::do_divert): Call + `set_modifier' after printing the compatibility request. + (set_modifier): Print call to `m->macro' if not empty. + * src/preproc/tbl/main.cpp (entry_format::debug_print): Handle + `macro'. + (process_format): Implement cases `x' and `X'. + * src/preproc/tbl/tbl.man, NEWS: Updated. + +2003-08-15 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Minor fixes. + +2003-08-09 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac [cR]: Fix redefinition of `bp'. + +2003-08-07 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile.sub: Not all shells expand wildcards in the `for' + argument list to nothing if there is no file to match. Use `ls' as + a protection, similar to autoconf. + + * Makefile.comm (install_dev, uninstall_dev): Protect `for' against + empty argument lists. + + * doc/groff.texinfo: Improve documentation how vertical spacing + and line breaks interact. + Other minor fixes. + + * tmac/www.tmac: Initialize `www-htmlimage-gap'. + +2003-08-03 Werner LEMBERG <wl@gnu.org> + + * NEWS, src/devices/grops/grops.man: -b16 is necessary to produce + EPS (using eps2eps or similar programs to compute the bounding box). + +2003-07-24 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Use the new @/ command to avoid overlong lines. + * doc/texinfo.tex: Updated from texinfo 4.6. + * README.CVS: From now on we need texinfo 4.6. + +2003-07-23 Werner LEMBERG <wl@gnu.org> + + Add requests `dei1' and `ami1' for completeness. + + * src/roff/troff/input.cc (calling_mode): Remove + CALLING_DISABLE_COMP. + (comp_mode): New enumeration. + (do_define_string, define_string, define_nocomp_string, + append_string, append_nocomp_string): Updated. + (do_define_macro): Add third parameter. + (define_macro, define_nocomp_macro, define_indirect_macro, + append_macro, append_nocomp_macro, append_indirect_macro): Updated. + (define_indirect_nocomp_macro, append_indirect_nocomp_macro): New + functions. + (ignore): Updated. + (init_input_requests): Add `dei1' and `ami1'. + + * tmac/trace.tmac: Handle de1 and am1. + (de): Improve tracing message. + (am): Add missing `do'. + (return): Use de1. + + * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo: + Document new requests. + +2003-07-22 Heinz-Jürgen Oertel <hj.oertel@surfeu.de> + + Add option -G to .MPIMG to insert a gap between text and the image. + + * tmac/www.tmac (www-finish-left-po, www-finish-right-ll, + www-finish-left-ll): Updated. + (www-image-just, www-image-gap, www-htmlimage-gap): New variables. + (MPIMG): Make option -L and -R optional. + Implement option -G. + +2003-07-22 Gaius Mulley <gaius@glam.ac.uk> + + * src/devices/grohtml/post-html.cpp + (html_printer::do_file_components): Don't use `stdout' as lvalue + since it can be a macro. + +2003-07-22 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/strerror.c: Include errno.h to be in sync with + the corresponding test in aclocal.m4. + +2003-07-21 Werner LEMBERG <wl@gnu.org> + + * src/preproc/html/pre-html.cpp (TRANSPARENT): Don't use colour + names but RGB values directly. Otherwise pnmtopng depends on + an external file `rgb.txt' which maps colour names to values. + +2003-07-20 Werner LEMBERG <wl@gnu.org> + + * aclocal.m4 (GROFF_SYS_ERRLIST): Include stdlib.h for MinGW. + * configure, src/include/config.hin: Regenerated. + + * src/libs/libgroff/strerror.c: Include stdlib.h for MinGW. + +2003-07-19 Werner LEMBERG <wl@gnu.org> + + * PROBLEMS: Add solution for UTF-8 problem with hyphens. + +2003-07-18 Werner LEMBERG <wl@gnu.org> + + * *.man: Switch to non-compatibility mode temporarily if GNU + syntax extensions are used in the particular man page. + + * PROBLEMS: Add solutions for SGR problems. + +2003-07-17 Werner LEMBERG <wl@gnu.org> + + Don't ignore grotty's command line options if \X'tty: sgr ...' is + used to change the drawing scheme. + + * src/devives/grotty/tty.cpp (bold_flag_option, + underline_flag_option, italic_flag_option, reverse_flag_option, + bold_underline_mode_option): New global variables. + (update_options): New function. + (tty_printer::special): Call update_options. + (main): Don't set xxx_flag but xxx_flag_option, then call + update_options. + +2003-07-14 Werner LEMBERG <wl@gnu.org> + + Make grotty emit proper Unicode box drawing characters for -Tutf8. + + * src/devices/grotty/tty.cpp (START_LINE, END_LINE): New enum + values. + (hline_char, vline_char): New global variables. + (tty_printer::tty_printer): Initialize them. + (tty_printer::draw): Emit START_LINE and END_LINE flags for both + horizontal and vertical lines. + (crossings): New global array. + (tty_printer::end_page): Use it to determine the proper crossing + character for -Tutf8. + +2003-07-12 Werner LEMBERG <wl@gnu.org> + + * doc/Makefilesub (HTMLDOCFILESALL): New macro. + (HTMLDOCFILES): Revert to `pic.html'. + (CLEANADD, install_html, uninstall_sub): Use HTMLDOCFILESALL. + +2003-07-11 Werner LEMBERG <wl@gnu.org> + + * doc/pic.ms: Improve documentation of absolute coordinates. + Document absolute positioning of pictures. + + * NEWS: Add new pic capability. + +2003-07-09 Hartmut Henkel <hartmut_henkel@gmx.de> + + * src/libs/libgroff/geometry.cpp (check_output_arc_limits): + Rewritten. + +2003-07-07 Werner LEMBERG <wl@gnu.org> + + Implement support for dashed and dotted ellipses in pic. Based on + a patch from Hartmut Henkel <hartmut_henkel@gmx.de>. + + * src/preproc/pic/common.cpp (common_output::ellipse_arc, + common_output::dashed_ellipse, common_output::dotted_ellipse): New + functions. Ellipse arcs are approximated with circle arcs. + * src/preproc/pic/common.h (common_output): Updated. + * src/preproc/pic/tex.cpp (tex_output::ellipse): Use new ellipse + functions. + * src/preproc/pic/troff.cpp (simple_output::ellipse): Ditto. + + * src/preproc/pic/TODO, src/preproc/pic/pic.man: Updated. + +2003-07-06 Werner LEMBERG <wl@gnu.org> + + Make grotty work on platforms which have unsigned char as the + default for char. Based on a patch by Thomas Klausner + <wiz@netbsd.org>. + + * src/devices/grotty/tty.cpp (schar): New typedef. + Updated calls to declare_ptable and implement_ptable. + (glyph): Use schar for back_color_idx and fore_color_idx. + (tty_printer): Use schar for curr_fore_idx and curr_back_idx. + (tty_printer::tty_color, tty_printer::tty_printer, + tty_printer::color_to_idx, tty_printer::put_color): Updated. + +2003-07-06 Ruslan Ermilov <ru@FreeBSD.org> + + * src/roff/nroff/nroff.sh: Add option -d for completeness. + * src/roff/nroff/nroff.man: Updated. + +2003-07-05 Werner LEMBERG <wl@gnu.org> + + * NEWS, tmac/groff_www.man: Updated. + * doc/Makefile.sub: Updated. + +2003-07-05 Gaius Mulley <gaius@glam.ac.uk> + + Implement support for multiple HTML output files. + + * src/preproc/html/pre-html.cpp (scanArguments): Dummy handling for + -j command line option. + + * src/devices/grohtml/post-html.cpp (job_name, multiple_files): New + global variables. + (file): New fields `new_output_file', `require_links', + `output_file_name'. + (file::file): Updated. + (files::set_file_name, files::set_links_required, + files::are_links_required, files::is_new_output_file, + files::file_name, files::next_file_name): New functions. + (header_desc): New fields `no_of_level_one_headings', + `header_filename'. + (header_desc::header_desc): Updated. + (header_desc::write_headings): Handle multiple files. + (html_printer::write_header): Save file name in which header occurs. + (html_printer::determine_header_level): Possibly split files on + level one headings. + (html_printer::do_links, html_printer::troff_tag): Updated. + (html_printer::insert_split_file, html_printer::do_job_name, + html_printer::emit_link, html_printer::write_navigation, + html_printer::do_file_components): New functions. + (html_printer::~html_printer): Handle multiple files. + (main): Handle command line option `-j'. + + * src/devices/grohtml/grohtml.man: Updated. + + * doc/Makefile.sub (pic.html), doc/Makefile.in (pic.html): New rule + which splits file. + + * tmac/www.tmac (JOBNAME): New macro. + * tmac/s.tmac (SH-NO-TAG): New macro. + (@SH): Call SH-NO-TAG. + (@NH): Updated. + +2003-07-05 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/groff_mdoc.man: Improve documentation of punctuation + characters. + +2003-07-04 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc.tmac (Bd): Change to doc-Li-font later. + +2003-07-03 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac [cR]: Redefine `bp' to avoid empty lines. + +2003-07-01 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc.tmac (doc-do-func, doc-do-func-args): Don't print a comma + after `/*' and `*/'. + Fix spacing. + (Fn, Fo): Reduce indentation in synopsis. + + * tmac/doc-common (doc-check-depth): New macro. + (doc-end-macro, Sh, Ss): Use it. + (Cd): Fix behaviour in synopsis. + (In): Make it parsed and callable. + If not in the synopsis, represent the C header file enclosed in + angle brackets. + (doc-str-Rv-std-suffix, doc-str-Rv-stds-suffix, doc-str-Rv-std0): + Use minus, not hyphen. + + * tmac/groff_mdoc.man: Updated. + +2003-07-01 Werner LEMBERG <wl@gnu.org> + + Integrated grap2graph, contributed by Eric S. Raymond. + + * contrib/grap2graph/{Makefile.sub, grap2graph.sh, grap2graph.man}: + New files. + * Makefile.in, NEWS, MANIFEST, contrib/eqn2graph.man, + contrib/pic2graph.man, src/roff/groff/groff.man: Updated. + +2003-07-01 Colin Watson <cjwatson@debian.org> + + * src/xditview/*.c: Add prototypes, fix return types, add includes. + Based on work by Fumitoshi UKAI <ukai@debian.or.jp>. + +2003-06-31 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/tty-char.tmac: Provide `lb', `rb', `lk', `rk', `lt', `rt'. + +2003-06-31 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile.sub (CLEANADD): Remove all files created by + running `make groff.{pdf,dvi}'. + + * Makefile.sub (DISTCLEANFILES): Remove all non-source files from + src/xditview also. + +2003-06-30 Werner LEMBERG <wl@gnu.org> + + * Makefile.in (SHELL): Define as @SHELL@. + (mkinstalldirs): Use $(SHELL). + (MDEFINES): Add $(SHELL). + * Makefile.comm (SHELL): Removed. + +2003-06-29 Werner LEMBERG <wl@gnu.org> + + * tmac/s.tmac (De, Ds): New aliases for .DE and .DS, respectively. + The X11 documentation files use them. + * tmac/groff_ms.man, doc/groff.texinfo: Document them. + +2003-06-15 Robert Goulding <goulding@Princeton.EDU> + + * tmac/e.tmac (@C): Handle .ad also. + +2003-06-12 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/tbl.man: Document formatting of text blocks. + + * src/roff/troff/input.cc (token::next) <handle_escape_char>: + Assign `n' even here. It is possible to construct a node + immediately following an escape character: + + .di xx + \?\\\?a + .br + .di + .xx + +2003-06-10 Werner LEMBERG <wl@gnu.org> + + * README.WIN32: Removed. + * MANIFEST: Updated. + +2003-06-07 Werner LEMBERG <wl@gnu.org> + + * src/roff/nroff/nroff.sh: Don't emit SGR for option -u. + +2003-06-05 Werner LEMBERG <wl@gnu.org> + + * src/preproc/pic/pic.y <sprintf_args>: Implement workaround for bug + in Compaq C++ V6.5-033 for Compaq Tru64 UNIX V5.1A (Rev. 1885). + +2003-06-03 Werner LEMBERG <wl@gnu.org> + + * src/preproc/grn/hdb.cpp (DBRead): Don't close file handle; this + is done by the calling function. + +2003-05-22 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/X.tmac: Fix definition of `em'. + +2003-05-22 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (return_macro_request): Fix detection of + argument. + +2003-05-18 Werner LEMBERG <wl@gnu.org> + + * tmac/doc.tmac (doc-tag-list): Force horizontal mode after tag + to make items work which consist only of a tag. + +2003-05-17 Werner LEMBERG <wl@gnu.org> + + * tmac/doc.tmac (doc-tag-list): Don't use \Z to assure that spaces + aren't stretched in a tag (this can fail with unformatted boxes). + Instead, insert a break and go back one line. + +2003-05-16 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (return_macro_request): If called with + argument pop macro twice. We need this to trace `return'. + + * tmac/trace.tmac: Handle `return'. + Fix typos. + + * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo: + Document. + +2003-05-15 Larry Kollar <kollar@alltel.net> + + * tmac/groff_ms.man, doc/groff.texinfo: Improve documentation of + registers `FPS', `FVS', and `FPD'. + +2003-05-15 Werner LEMBERG <wl@gnu.org> + + * src/utils/pfbtops/pfbtops.c (get_text): Handle loop counter + correctly. + +2003-05-03 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/groff_mdoc.man: Slight improvements. + +2003-05-03 Werner LEMBERG <wl@gnu.org> + + * tmac/doc-common (doc-header): Emit vertical space of 1v instead of + `doc-header-space' after header line if register `cR' is set. + +2003-05-02 Werner LEMBERG <wl@gnu.org> + + * TODO: Updated. + +2003-05-01 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc-common (Nd): Use \[em]. + +2003-05-01 Werner LEMBERG <wl@gnu.org> + + * tmac/doc-ditroff, tmac/doc-nroff (doc-header-space, + doc-footer-space): Initialize to 0.5i. + (doc-setup-page-layout): Don't set doc-header-space and + doc-footer-space. + +2003-04-30 Werner LEMBERG <wl@gnu.org> + + * REVISION: Set to 1. + + * doc/pic.ms: Document possible problems with `figname'. + +2003-04-29 Werner LEMBERG <wl@gnu.org> + +Version 1.19 released +===================== + + * VERSION: Set to 1.19. + * REVISION: Set to 0. + * doc/groff.texinfo, doc/webpage.ms, NEWS: Updated. + + * src/devices/grohtml/post-html.cpp (html_printer::~html_printer): + Define charset as `US-ASCII' in html output. + + * tmac/www.tmac (ULE): Add missing scaling indicator. + + * win32-diffs: Removed. + +2003-04-28 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Document `dn' and `dl' registers if used with + `.da' and `.boxa'. + Document how to insert discardable whitespace with `.ss'. + +2003-04-27 Werner LEMBERG <wl@gnu.org> + + * src/preproc/pic/tex.cpp (tex_output::start_picture): Make code + work with plain TeX also. + + * src/preproc/pic/pic.man, doc/pic.ms: Fix TeX code example. + +2003-04-25 Gaius Mulley <gaius@glam.ac.uk> + + * src/devices/grohtml/post-html.cpp (html_printer::~html_printer): + Use a loose DTD. + +2003-04-24 Werner LEMBERG <wl@gnu.org> + + * src/preproc/pic/pic.man, doc/pic.ms: Explain how to get a + vbox with positive height and zero depth if in TeX mode. + + * NEWS: Document glyph name changes for grodvi and grolj4. + +2003-04-23 Werner LEMBERG <wl@gnu.org> + + * src/preproc/pic/tex.cpp (tex_output::start_picture): Fix TeX code. + * doc/pic.ms: Fixed. + +2003-04-21 Werner LEMBERG <wl@gnu.org> + + HP-UX 10.20 has `snprintf' but it isn't declared. + + * configure.ac: Add declaration test for snprintf. + * configure: Regenerated. + * src/include/lib.h: Handle `NEED_DECLARATION_SNPRINTF'. + * src/include/config.hin: Regenerated. + +2003-04-19 Werner LEMBERG <wl@gnu.org> + + Add keyword `figname' to pic, specifying the name of the picture + box in TeX mode. Based on a patch from William J Poser + <wjposer@unagi.cis.upenn.edu>. + + * src/preproc/pic/pic.y: New token `FIGNAME'. + (macro_name): New rule of type <str>. + (placeless_element): Handle `FIGNAME'. + * src/preproc/pic/lex.cpp (lookup_keyword): Add `figname'. + * src/preproc/pic/main.cpp (graphname): New global variable. + (do_picture): Initialize `graphname'. + * src/preproc/pic/pic.h: Updated. + * src/preproc/pic/tex.cpp (tex_output::start_picture): Use + `graphname'. + Simplify TeX code. + (tex_output::text): Beautify output. + * src/preproc/pic/object.cpp (object_spec::~object_spec): Deallocate + `shaded' and `outlined' unconditionally. + * NEWS, src/preproc/pic/pic.man, doc/pic.ms: Updated. + Minor improvements. + + * PROBLEMS, README.CVS: Mention that bison version 1.875b or + greater is necessary. + +2003-04-17 Hartmut Henkel <hartmut_henkel@gmx.de> + + Add option -r to soelim to avoid emission of `.lf' lines. + Add option -t to produces TeX comment lines instead of `.lf' lines. + + * src/preproc/soelim/soelim.cpp: New global variables `raw_flag' + and `tex_flag'. + (usage): Updated. + (main): Handle `-r' and `-t'. + (set_location): Handle `raw_flag' and `tex_flag'. + * src/preproc/soelim/soelim.man, NEWS: Updated. + +2003-04-17 Werner LEMBERG <wl@gnu.org> + + * tmac/hyphenex.sh: Replaced with... + * tmac/hyphenex.pl: This perl script to avoid sed compatibility + nightmares. + + * aclocal.m4 (GROFF_HTML_PROGRAMS): Emit useful warning message + if --quiet is used for the configure script. + * configure: Regenerated. + +2003-04-16 Werner LEMBERG <wl@gnu.org> + + * src/devices/grohtml/post-html.cpp (text_glob::text_glob): + Add `const' to second argument. + (html_printer::add_table_end): Add `const' to argument. + * src/devices/grohtml/html-text.cpp (html_text::issue_tag): Add + `const' to arguments. + * src/devices/grohtml/html-text.h: Updated. + + * src/devices/grolbp/charset.h (symset): Use `unsigned char'. + * src/devices/grolbp/lbp.h (lbpputc): Use `unsigned char' for + argument. + + * src/devices/grotty/tty.cpp (tty_printer::make_rgb_string): Use + cast for integer constant. + + * src/preproc/html/pre-html.cpp (image_device): Use `const'. + (writeNbytes): Add `const' to first argument. + (writeString): Add `const' to argument. + (char_buffer::can_see): Add `const' to third argument. + * src/preproc/html/pushback.cpp (pushBackBuffer::isString): Add + `const' to argument. + * src/preproc/html/pushback.h: Updated. + + * src/preproc/soelim/soelim.cpp (include_list): Add `const'. + (include_path_append): Add `const' to argument. + (do_file): Updated. + + * src/roff/troff/uniglyph.cpp (unicode_to_glyph_list): Use `const' + for `value'. + (unicode_to_glyph_init::unicode_to_glyph_init): Updated. + * src/roff/troff/uniuni.cpp (unicode_decompose_list): Use `const' + for `value'. + (unicode_decompose_init::unicode_decompose_init): Updated. + * src/roff/troff/glyphuni.cpp (glyph_to_unicode_list): Use `const' + for `value'. + (glyph_to_unicode_init::glyph_to_unicode_init): Updated. + * src/roff/troff/input.cc (process_startup_file): Add `const' to + argument. + + * tmac/hyphenex.sh: Make script more portable by using a here + document. + +2003-04-15 Werner LEMBERG <wl@gnu.org> + + Renamed all `*.cc' files to `*.cpp'. + Updated all configuration files, makefiles, and documentation. + +2003-04-14 Werner LEMBERG <wl@gnu.org> + + * tmac/hyphenex.sh: Slight improvements. + +2003-04-13 Werner LEMBERG <wl@gnu.org> + + * font/devascii/R.proto, font/devcp1037/R.proto, + font/devlatin1/R.proto, font/devutf8/R.proto: Fill up remaining + character slots with unnamed glyphs. + + * tmac/an-old.tmac: Fix hyphenation value if `cR' is active. + (an-first): New global variable. + (an-header): Emit vertical space between multiple man pages. + +2003-04-11 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo, man/groff_out.man: \S only accepts integer + values. + +2003-04-10 Werner LEMBERG <wl@gnu.org> + + * PROBLEMS: Revised. + +2003-04-10 Bernd Warken <bwarken@mayn.de> + + * doc/webpage.ms: Improved. + +2003-04-09 Werner LEMBERG <wl@gnu.org> + + Add register \n[.height] which returns the value of \H. + Add register \n[.slant] which returns the value of \S. + + * src/roff/troff/env.cc (init_env_requests): Implement. + * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo: + Document. + +2003-04-08 Werner LEMBERG <wl@gnu.org> + + * tmac/html.tmac: Move some of the data into html-end.tmac. + Remove most of the character translations for eqn since html fonts + now cover those characters. + Load www.tmac. + * tmac/html-end.tmac: New file. + * tmac/troffrc: Load html.tmac not www.tmac for -Thtml. + * tmac/troffrc-end: Load html-end.tmac not html.tmac for -Thtml. + * tmac/Makefile.sub (NORMALFILES): Add html-end.tmac. + +2003-04-07 Werner LEMBERG <wl@gnu.org> + + * man/groff_out.man: Document negative values of `N' if -Thtml is + used. + +2003-04-06 Werner LEMBERG <wl@gnu.org> + + * Makefile.comm (depend.temp): Check location of YTABC. + +2003-04-05 Maciej W. Rozycki <macro@ds2.pg.gda.pl> + + * doc/Makefile.in (TROFFBIN): New variable for troff + binary path. + (GROFFBIN): New variable for groff binary path. + (groff_bin_path): Rename to GROFF_BIN_PATH. + (TROFF): Use TROFFBIN. + (GROFF): Use GROFFBIN and GROFF_BIN_PATH. + * doc/Makefile.sub (GROFFBIN): New variable for groff + binary path. + (groff_bin_path): Rename to GROFF_BIN_PATH. + (GROFF): Use GROFFBIN and GROFF_BIN_PATH. + + * Makefile.comm (install_dev): Install scripts from DEVSCRIPTS + with INSTALL_SCRIPT. + (uninstall_dev): Uninstall scripts from DEVSCRIPTS. + * Makefile.dev (all): Depend on DEVSCRIPTS. + (install_dev): Likewise. + * font/devdvi/Makefile.sub (DEVSCRIPTS): New variable to hold + scripts. + * font/devps/Makefile.sub (DEVSCRIPTS): Likewise. + (DEVGENSCRIPTS): New variable to hold generated scripts. + +2003-04-05 Werner LEMBERG <wl@gnu.org> + + * src/libs/libdriver/input.cc (IntArray::operator[], + IntArray::get_data): Remove meaningless `const' in return value. + + * README.CVS: New file. + +2003-04-04 Werner LEMBERG <wl@gnu.org> + + Check for stdint.h in C++, not in C. + + * aclocal.m4 (GROFF_STDINT_H): New function, + * configure.ac: Check for stdint.h with GROFF_STDINT_H instead of + AC_CHECK_HEADERS. + * configure, src/include/config.hin: Regenerated. + * src/libs/libgroff/tmpname.cc: Use HAVE_CC_STDINT_H. + + + Fix handling of in grohtml. To do this, troff emits `N' + with a negative value, representing the width of the unbreakable + space (only for -Thtml). grohtml then converts this back to + and uses the value of N as its width. + + * src/roff/troff/node.cc (space_char_hmotion_node::tprint, + unbreakable_space_node::tprint): Emit `N-<width>'. + * src/include/printer.h (printer::set_numbered_char): Make it + virtual. + Make members `font_table' and `nfonts' protected instead of private. + * src/devices/grohtml/post-html.cc + (html_printer::set_numbered_char): New member function. + + + * src/libs/libgroff/maxfilename.cc: + s/HAVE_LIMITS_H/HAVE_CC_LIMITS_H/. + + * src/roff/troff/node.cc (unbreakable_space_node::tprint): Don't + emit word marker. + +2003-04-03 Sergey A. Osokin <osa@freebsd.org.ru> + + * man/roff.man: Small fixes. + +2003-04-03 Werner LEMBERG <wl@gnu.org> + + Make groff independent from locale's numeric settings. + + * configure.ac: Check for `setlocale'. + * configure, src/include/config.hin: Regenerated. + + * src/include/lib.h: Handle HAVE_SETLOCALE. + + * src/devices/grodvi/dvi.cc (main), src/devices/grolj4/lj4.cc + (main), src/devices/grops/ps.cc (main), src/preproc/grn/main.cc + (main), src/preproc/pic/main.cc (main): Call `setlocale'. + + + * doc/groff.texinfo: Change dir category to `Typesetting'. + (Man font macros): Mention that there is no space between arguments + of .BI and friends. + + * src/libs/libdriver/printer.cc, src/devices/grotty/tty.cc + (*printer::change_color, *printer::change_fill_color): Add missing + `const'. + +2003-04-02 Werner LEMBERG <wl@gnu.org> + + * src/devices/grohtml/html-table.cc (html_table::emit_col, + html_table::is_gap): Compute table widths after converting border + positions to avoid rounding errors. + +2003-04-01 Werner LEMBERG <wl@gnu.org> + + * src/devices/grohtml/html-text.cc (html_text::do_space): Handle + `space_emitted' properly. + +2003-03-31 Werner LEMBERG <wl@gnu.org> + + * src/devices/grohtml/html-table.cc: Fix column width calculation. + (html_table::set_linelength): Don't add 1. + (html_table::add_indent): Don't subtract 1. + + * tmac/html.tmac: Set default page offset to zero. + +2003-03-30 Werner LEMBERG <wl@gnu.org> + + Make groff emit ` ' for `\ ' and `\~' if `-Thtml' is used. + + * src/roff/troff/node.cc (space_char_hmotion_node::tprint, + unbreakable_space_node::tprint): New functions. + (troff_output_file): Make space_char_hmotion_mode::tprint and + unbreakable_space_node::tprint to friends. + * src/roff/troff/node.h: Updated. + + * font/devhtml/R.proto: Add ` ' at position 0xA0 (as defined + in the HTML standard). + +2003-03-29 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/env.cc (point_size): Fix emission of html tag. + Otherwise, the following code + + .di xxx + .ps 10 + a + .br + .di + x\*[xxx] + + produces `x a' instead of `xa'. This is a temporary fix, disabling + font changes in diversions for -Thtml. + + * tmac/an-old.tmac (TH, SH): Use `HTML-TAG-NS' instead of + `HTML-TAG'. + (an-do-tag-html): Merge with ... + (an-do-tag): This macro. + Change code slightly to circumvent grohtml bug. + * tmac/troffrc-end: Define dummy for HTML-TAG-NS. + + * src/devices/grohtml/html-table.cc (html_table::emit_col, + html_table::is_gap): Round `width' properly. + + * tmac/html.tmac: Provide some default layout parameters for + grohtml. + + * font/devhtml/DESC.proto: Don't use discrete values for `sizes' + command. + +2003-03-28 Werner LEMBERG <wl@gnu.org> + + src/devices/grops/ps.cc (ps_printer::do_import): Fix error message. + +2003-03-27 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac (BT): Don't call .tl if register `ps4html' is + defined. + +2003-03-20 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/env.cc (vertical_spacing): Allow zero value for + `.vs'. + * doc/groff.texinfo: Updated. + +2003-03-19 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (process_input_stack) <TOKEN_BEGIN_TRAP, + TOKEN_END_TRAP>: Reset `have_input'. + +2003-03-18 Werner LEMBERG <wl@gnu.org> + + * src/roff/groff/groff.man: Mention groff_trace man page. + +2003-03-16 Werner LEMBERG <wl@gnu.org> + + * Makefile.in (LIBEXT): New variable to indicate the file extension + of library files. Computed heuristically from $(OBJEXT). + (MDEFINES): Add $(LIBEXT). + * Makefile.lib, Makefile.comm: Use it. + + * src/utils/pfbtops/pfbtops.c (get_text): New function. Split + overlong lines into smaller chunks. + (get_binary): New function. + (main): Use them. + * src/utils/pfbtops/pfbtops.man: Updated. + +2003-03-15 Colin Watson <cjwatson@debian.org> + + * src/roff/groff/groff.man: Minor syntax fix. + +2003-03-14 Egil Kvaleberg <egil@kvaleberg.no> + + * src/devices/grops/ps.cc (ps_printer::media_set, + ps_printer::~ps_printer): Handle zero paper width and length. + +2003-03-13 Werner LEMBERG <wl@gnu.org> + + Add options -p and -l to grodvi. + + * src/devices/grodvi/dvi.cc: Include paper.h. + (landscape_flag, user_paper_length, user_paper_width): New global + variables. + (dvi_printer::begin_page): Emit `papersize' special. + Set color after initialization of `cur_h' and `cur_v'. + (main): Add options `-l' and `-p'. + * font/devdvi/Makefile.sub (DESC): Set `papersize'. + * src/devices/grodvi/grodvi.man, NEWS: Updated. + + * src/devices/grops/psrm.cc (valid_input_table): Fixed. + +2003-03-12 Werner LEMBERG <wl@gnu.org> + + * src/devices/grops/grops.man: Move documentation of .PSPIC to... + * man/groff_tmac.man: This man page. + * man/groff_font.man: Declare `paperwidth' and `paperlength' as + deprecated. + + * tmac/X.tmac: Don't load pspic.tmac. + +2003-03-11 Werner LEMBERG <wl@gnu.org> + + Make variable `pr' local to libdriver/input.cc. Based on a patch + by Bernd Warken <bwarken@mayn.de>. + + * src/include/driver.h (pr): Removed. + + * src/libs/libdriver/input.cc (pr): New global variable. + (do_file): Deallocate `pr'. + * src/libs/libdriver/printer.cc (pr): Removed. + + * src/devices/grodvi/dvi.cc (main), src/devices/grohtml/post-html.cc + (main), src/devices/grolbp/lbp.cc (main), src/devices/grolj4/lj4.cc + (main), src/devices/grops/ps.cc (main), src/devices/grotty/tty.cc + (main): Don't delete `pr'. + +2003-03-10 Werner LEMBERG <wl@gnu.org> + + * tmac/a4.tmac, tmac/composite.tmac: Use `.do'. + * tmac/papersize.tmac: New file. + * tmac/troffrc: Include `papersize.tmac'. + * tmac/Makefile.sub (NORMALFILES): Add `papersize.tmac'. + * tmac/an-old.tmac: Set LT to LL by default. + + * NEWS, MANIFEST, tmac/groff_man.man, man/groff_tmac.man, + doc/groff.texinfo: Updated. + + * src/libs/libgroff/paper.cc (add_iso_paper): Fix very embarassing + bug which caused all odd iso papers to have wrong dimensions. + + * src/devices/grops/ps.cc (user_paper_width): New global variable. + (main) <'p'>: Set `user_paper_width' also. + (ps_printer::media_width, ps_printer::media_height): Use values + given with option `-p'. + +2003-03-09 Werner LEMBERG <wl@gnu.org> + + * src/include/nonposix.h: Provide default for SET_BINARY. + + * src/devices/grodvi/dvi.cc, src/devices/grolbp/lbp.cc, + src/devices/grolj4/lj4.cc, src/devices/grops/ps.cc: Call SET_BINARY + unconditionally. + + * src/utils/pfbtops/pfbtops.c: Call SET_BINARY unconditionally. + (main): Treat \r\n as \n. + +2003-03-08 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac: Use register `HY' to control hyphenation. + * NEWS, tmac/groff_man.man, doc/groff.texinfo: Document it. + +2003-03-07 Werner LEMBERG <wl@gnu.org> + + Added support to access more than 256 glyphs in Type 1 fonts. + + * src/devices/grops/ps.cc (subencoding): New structure. + (style): Add `sub' field. + Updated all users. + (ps_printer): Add `subencodings' and `next_subencoding_index' fields. + Add `set_subencoding', `get_subfont' and `encode_subfont' member + functions. + Updated all users. + (ps_printer::set_char): Use `set_subencoding'. + (make_subencoding_name): New function. + (ps_printer::set_style): Handle case where `sty.sub' is not zero. + (ps_printer::~ps_printer): Emit subencoding definitions. + + * src/devices/grops/psrm.cc (valid_input_table): New array to + properly support EBCDIC. + (white_space): Add `\f'. + (ps_get_line): Change first argument to be of type `string &'. + Updated all callers. + This allows to get lines of arbitrary length. + Use `valid_input_table'. + Remove warning about non-conforming PS line length. This seems + not to be of great importance -- for example, dvips don't emit + a warning either. + (PS_LINE_MAX): Removed. + (matches_comment): Change first argument to be of type `string &'. + + * src/devices/grops/grops.man, src/devices/grops/TODO: Updated. + + * src/utils/afmtodit/afmtodit.pl (%unicode_decomposed, + %AGL_to_unicode, %default_ligatures): New hash tables. + Read all map entries. + Add unencoded characters. + Check for default ligatures if there are no `L' entries. + Print all kern entries. + Print all characters in charset. + * src/utils/afmtodit/afmtodit.man: Updated. + + * font/devps/*: Regerated all fonts. + + * tmac/latin[129].tmac, tmac/cp1047.tmac: Don't test for existence + of characters, just use `.trin'. Otherwise the mapping depends + on the font encoding. + * tmac/ps.tmac: Add `fi' and `fl'. + Improve `Fi' and `Fl'. + * tmac/X.tmac, tmac/lbp.tmac, tmac/tty.tmac: Improve `Fi' and `Fl'. + * tmac/Xps.tmac: Fix `em'. + + * NEWS: Updated. + +2003-03-04 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (charinfo_to_node_list): Reset + `have_input'. + +2003-03-03 Werner LEMBERG <wl@gnu.org> + + * Makefile.sub (DISTCLEANFILES): Add gxditview._man. + + * font/devps/generate/textmap: Remove entry `similarequal'. + * font/devps/symbolmap: Updated. + +2003-03-02 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/font.cc (font::load): Fix error message for + bad character type. + + * src/devices/grops/grops.man: Improve documentation of the -b + flag. + + * tmac/tty.tmac: Load latin1.tmac for all TTY devices except + `ascii' and `cp1047'. + +2003-03-01 Werner LEMBERG <wl@gnu.org> + + Document composite glyphs and the `composite' request. + + * man/groff.man, man/groff_diff.man, doc/groff.texinfo: Do it. + +2003-02-28 Werner LEMBERG <wl@gnu.org> + + * font/devdvi/generate/ec.map: Add some more Unicode entities. + * font/devdvi/*EC: Updated. + + * tmac/composite.tmac, tmac/latin2.tmac, tmac/latin9.tmac: New files. + * tmac/latin1 (latin1-tr): Undo any previous mapping. + * tmac/troffrc: Load `composite.tmac'. + * tmac/Makefile.sub (NORMALFILES): Updated. + + * doc/groff.texinfo (Input Encodings): New section. + * NEWS: Updated. + +2003-02-27 Werner LEMBERG <wl@gnu.org> + + * doc/texinfo.tex: New version 2003-02-11.06. + + * tmac/doc-common (Dt): Don't emit warning for unknown section. + * tmac/groff_mdoc.man: Fix description of `Dt'. + +2003-02-26 Egil Kvaleberg <egil@kvaleberg.no> + + * font/devps/prologue.ps: Fix for included Postscript that does + a setpagedevice -- which is now safely ignored. + + * NEWS: Updated. + + * src/devices/grops/ps.cc: Now sets the page size in the generated + document. This is done in two ways: Via a %%-comment for gv and + the like, and via a PageSize and setpagedevice for programs that + understands Postscript proper, like ps2pdf. + + * src/devices/grops/ps.h: New broken-flag to avoid page size + definition, if required. + + * src/devices/grops/grops.man: New broken-flag 16 mentioned. + + * doc/Makefile.in: Added -nosetpage flag (via @pnmtops_nosetpage@). + Not really necessary due to the fix in prologue.ps, but cleaner: + Such information does not belong in an .eps file. + + * doc/Makefile.sub: See doc/Makefile.in. + +2003-02-26 Ralph Corderoy <ralph@inputplus.co.uk> + + * aclocal.m4 (GROFF_PNMTOPS_NOSETPAGE): Use P2 format for testing + instead of P1 since the latter is broken in some versions of netpbm. + * configure: Updated. + +2003-02-26 Larry Kollar <kollar@alltel.net> + + Make man pages more customizable. + + * tmac/an-old.tmac (FT): New register holding footer distance from + bottom. + (HF): New string holding the default heading font. + (TH): Handle registers `IN' and `SN' set on the command line. + Use `FT'. + (PT, BT): New strings to customize header and footer lines. + (an-header, an-footer): Use them. + (SH, SS): Use `HF'. + * tmac/groff_man.man: Document changes. + + * doc/groff.texinfo: Document man changes. + Document Ultrix extensions of man. + +2003-02-26 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (do_width, do_if_request): Reset + `have_input' after changing back to old environment. + + * src/devices/grolbp/lbp.cc (lbp_printer::set_line_thickness): Move + function up to be defined before first call. This is necessary to + avoid a compilation problem with Sun's WorkShop 6 C++ compiler. + + * src/utils/afmtodit/afmtodit.pl: Make script search for files in + the default font directory also. Based on a patch from James + J. Ramsey <jjramsey_6x9eq42@yahoo.com>. + * src/utils/afmtodit/Makefile.sub (afmtodit): Handle @FONTDIR@. + * src/utils/afmtodit/afmtodit.man: Document it. + + * NEWS: Updated. + + * tmac/groff_man.man, doc/groff.texinfo: Many minor fixes. + +2003-02-25 Gaius Mulley <gaius@glam.ac.uk> + + * aclocal.m4 (GROFF_HTML_PROGRAMS): Add test for pnmtops. + (GROFF_PNMTOPS_NOSETPAGE): New macro. + * configure.ac: Use it. + * configure: Regenerated. + * Makefile.in: Updated. + + * tmac/Makefile.sub (NORMALFILES): Remove www.tmac. + (CLEANADD): Add www.tmac-sed. + (pnmtops_nosetpage): Define default. + (install_data): Handle www.tmac-sed and substitute + @PNMTOPS_NOSETPAGE@. + (stamp-sed): Add www.tmac. + * tmac/www.tmac: Rewritten, based on a patch by Bernd Warken. + It now breaks URLs at suitable places. + (www:substring_ok): New register set by... + (www:@test_substring): New macro. + (www:error): New alias to www-error. + (www:lenstr, www:splitstr, www:url_breaks, www:url_breaks_splitted): + New macros. + (URL): Use www:url_breaks. + (PIMG, MPIMG): Use @PNMTOPS_NOSETPAGE@. + (CDS, CDE): New macros. + +2003-02-25 Werner LEMBERG <wl@gnu.org> + + * src/devices/grops/ps.cc (ps_printer::define_encoding): Avoid + buffer overflow. + +2003-02-24 Werner LEMBERG <wl@gnu.org> + + Contrary to the PCL5 Developer's Guide, the ascenders in TFM files + can be negative also. + + * src/utils/hpftodit/hpftodit.cc (char_info): `ascent' must be + `int16'. + (read_char_table): Avoid negative ascenders. + (output_charset): Add cast. + * font/devlj4/*: Regenerated. + + Replace unnamed glyphs for DVI fonts with `uXXXX' glyph names where + possible. + + * font/devdvi/generate/{tc,texttt,ec,texmi,texsy,textex}.map: Do it. + * font/devdvi/generate/textex.map: Map glyph 23 to `u21C6' instead + of `<>'. + * font/devdvi/*: Regenerated. + + Map `la' and `ra' to U+27E8 and U+27E9. These two characters have + normal width, while the previously used characters (U+2329 and + U+232A) are classified as wide due to canonical equivalence with the + CJK punctuation characters U+3008 and U+3009. + + * font/devutf8/R.proto: Updated. + * src/roff/troff/uniglyph.cc, src/roff/troff/glyphuni.cc: Ditto. + + * man/groff_char.man: Simplify handling of table traps by + introducing `start block' and `end block' macros. + (Ns, Ne, 2s, 2e, Ds, De): New macros. + (DL): Make it work with Unix troff also. + Fix code values of `la' and `ra'. + + * tmac/dvi.tmac: Define `<>' for CW and CWI. + +2003-02-23 Gaius Mulley <gaius@glam.ac.uk> + + * src/devices/grohtml/post-html.cc (element_list::~element_list): + New destructor, fixing a major memory leak. + +2003-02-22 Werner LEMBERG <wl@gnu.org> + + * font/devhtml/R.proto, font/devutf8/R.proto: Flip `*f' and `+f' + to be in conformance with Unicode 3.0 and newer. + + * font/devlj4/generate/text.map: Add `Eu'. + * font/devlj4/generate/special.map: Flip `*e' and `+e'. + * font/devlj4/S: Regenerated. + + * man/groff_char.man: Completely rewritten. + + * doc/groff.texinfo: Fix description of request and macro arguments. + +2003-02-20 Gaius Mulley <gaius@glam.ac.uk> + + Valgrind fixes. + + * src/devices/grohtml/html-table.cc (html_table::~html_table): + Deallocate `columns' list. + * src/devices/grohtml/post-html.cc (char_block::~char_block): + New destructor. + (text_glob::text_glob_html, text_glob::text_glob_special, + text_glob::text_glob_line, text_glob::text_glob_auto_image, + text_glob::text_glob_tag): Avoid memory leaks. + (text_glob::remember_table): Free memory before reassigning. + +2003-02-19 Werner LEMBERG <wl@gnu.org> + + Add glyph `+e', greek lunate epsilon symbol, and `-h' (with the + alias `hbar'), the Planck constant over two pi. + + * font/devdvi/generate/texmi.map: Use `*e' for position 15 and + `+e' for position 34. + * font/devdvi/generate/texsy.map: Replace `DI' and `HE' with + `u2662' and `u2661'. + * font/devdvi/{MI,S}: Regenerated. + * font/devhtml/R.proto, font/devutf8/R.proto: Add `+e', `-h', `hbar'. + * font/devlbp/*: Add `hbar' alias. + * font/devlj4/generate/special.map: Ditto. + * font/devlj4/S: Regenerated. + * font/devps/generate/symbolchars: Add `+e'. + * font/devps/generate/textmap: Fix PS name for `-h'. + Add `hbar' alias. + * font/devps/symbolmap: Regenerated. + + * src/devices/grops/ps.cc (transform_fill): Removed since unused. + + * src/roff/troff/glyphuni.cc (glyph_to_unicode_list): Add `+e', + `-h', `hbar'. + * src/roff/troff/uniglyph.cc (unicode_to_glyph_list): Add `+e', + `-h'. + + * tmac/X.tmac, tmac/ps.tmac: Provide definitions for `-h' and + `hbar'. + * tmac/tty-char.tmac: Add `+e'. + +2003-02-17 Werner LEMBERG <wl@gnu.org> + + Another round trying to really fix problems with `have_input'. + + * src/roff/troff/input.cc (input_stack::get): Handle `have_input'. + (token::next) <'\n'>, <\'\n'>: Don't handle `have_input'. + + * src/devices/grotty/tty.cc (tty_printer::put_color): Fix color + handling if both foreground and background colors are default. + + * doc/groff.texinfo (Debugging): Document .lf differences to + AT&T troff. + +2003-02-16 Werner LEMBERG <wl@gnu.org> + + * src/devices/grotty/tty.cc (tty_printer::make_rgb_string): Avoid + null-bytes in created string. + + * src/roff/troff/input.cc (lookup_color, interpolate_macro, + alias_macro, lookup_request): Improve warning messages. + + * src/roff/troff/node.cc (suppress_node::tprint): Use `strsave', + not `strdup'. + Free `last_image_filename'. + + * src/preproc/html/pre-html.cc (char_block::char_block): Initialize + `buffer'. + (imageList::createPage, imageList::createImage): Use `free', not + `a_delete'. + (imageItem::~imageItem): Free `imageName'. + (addRegDef): Use `strsave', not `strdup'. + (get_resolution): Free `pathp'. + +2003-02-15 Werner LEMBERG <wl@gnu.org> + + * src/devices/grotty/tty.cc (tty_printer::tty_printer): Fix pointer + to `dummy'. + +2003-02-14 Werner LEMBERG <wl@gnu.org> + + Add memory management for colors to deallocate unnamed colors + properly. + + * src/include/color.h (color): New members `free_list' and `next'. + New member functions `new' and `delete'. + Add destructor. + * src/libs/libgroff/color.cc: Implement it. + + * src/libs/libgroff/font.cc (font::add_kern): Use integer cast + for array size of new operator. + + * src/libs/libdriver/input.cc (IntArray::operator[]): Remove + redundant comparison. + + * src/roff/troff/input.cc (word_space_node::reread, + hmotion_node::reread): Avoid warning about unused parameter. + (reset_output_registers): Remove redundant parameter. + (define_color): Undo change 2003-02-12. + + * src/roff/troff/reg.h: Updated. + + * src/roff/troff/node.cc (troff_output_file::really_print_line, + output_file::put_filename, real_output_file::really_put_filename, + ascii_output_file::really_print_line, + break_char_node::get_hyphen_list): Avoid warning about unused + parameter. + (suppress_node::tprint): Updated. + + * configure.ac: Check declaration for rand() and srand(). + * configure: Regenerated. + + * src/preproc/pic/pic.h: Declare fmod(), rand(), and srand() + conditionally. + * src/preproc/pic/pic.y: Remove declaration of fmod(), rand(), + and srand(). + + * src/preproc/eqn/delim.cc (delim_table): Add missing initializers + to avoid compiler warnings. + + * src/preproc/grn/hgraph.cc (HGPrintElt): Second parameter is + unused. + + * src/devices/grops/ps.cc (ps_printer::set_char): Last parameter + is unused. + * src/devices/grops/psrm.cc (skip_possible_newline): Remove first + (unused) parameter. + Updated all callers. + + * src/devices/grotty/tty.cc (tty_printer::set_char): Last parameter + is unused. + * src/devices/grodvi/dvi.cc (dvi_printer::set_char): Ditto. + * src/devices/grolj4/lj4.cc (lj4_printer::set_char): Ditto. + + * src/devices/grohtml/post-html.cc (html_printer::emit_line): + Parameter is unused. + (html_printer::add_table_end): Define parameter conditionally. + * src/devices/grohtml/output.cc (simple_output::special): Parameter + is unused. + + * src/devices/grolbp/lbp.cc: Define _GNU_SOURCE conditionally. + (lbp_printer::set_char): Last parameter is unused. + + * src/utils/indxbib/indxbib.cc (main): Remove redundant comparison. + +2003-02-13 Werner LEMBERG <wl@gnu.org> + + New commands \D'Fr ...', \D'Fc ...', etc. for orthogonality. + Make \D'f ...' move horizontally again for backwards compatibility. + Replace it with \D'Fg ...' where appropriate to avoid dependency + on horizontal resolution. + + * src/roff/troff/input.cc (do_get_long_name): New function. + (get_long_name): Call it. + + (read_draw_node): Handle `\D'Fx ...' by calling ... + (read_color_draw_node): New function. + + (read_rgb, read_cmy, read_cmyk, read_gray): New optional argument + `end'. + Pass it to `do_get_long_name' which is used instead of + `get_long_name'. + + * src/libs/libdriver/input.cc (color_from_Df_command): Remove + unnecessary value guard. + (parse_D_command) <'f'>: Add horizontal shift. + + * src/preproc/grn/hgraph.cc (HGPrintElt) <POLYGON>: Use \D'Fg ...'. + * src/preproc/pic/troff.cc (troff_output::set_fill): Ditto. + (FILL_MAX): Removed. + + * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo: + Updated. + +2003-02-12 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (do_name_test, do_expr_test, + do_zero_width): Push `\n' if closing delimiter is missing. + + (token::next) <ESCAPE_NEWLINE>, <'\n'>, <\'\n'>: Reset `have_input'. + <'F'>: Make \F non-transparent at the beginning of line. + (process_input_stack) <token::TOKEN_CHAR, token::TOKEN_NEWLINE, + token::TOKEN_REQUEST, token::TOKEN_BEGIN_TRAP>: Don't handle + `have_input'. + + (define_color): Free color in case of reassignment. + + * doc/groff.texinfo (@Defesc, @DefescList, @DefescItem, + @DefescListEnd): Use @Var, not @var. + Fix all calls. + + * src/preproc/grn/hgraph.cc (HGPrintElt): Fix typo. + + * src/preproc/pic/object.cc (object_spec::~object_spec): Free + `shaded' and `outlined' arrays. + (object_spec::object_spec): Initialize `shaded' and `outlined'. + (graphic_object::set_fill_color, graphic_object::set_outline_color): + Use strsave. + (closed_object::set_fill_color): Ditto. + * src/preproc/pic/troff.cc (troff_output::set_color): Use strsave + instead of strdup. + (troff_output::reset_color): Use a_delete instead of free. + * src/preproc/pic/main.cc (do_file): Free `out' in case of error. + +2003-02-11 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Improve documentation of `ad'. + Document that \D'f...' is dependent on the horizontal resolution. + * man/groff_diff.man: Improve documentation of \D'f...'. + + * src/preproc/grn/hgraph.cc (HGPrintElt) <POLYGON>: Don't emit + compensating \h'...' for \D'f ...' since the latter no longer moves + current position. + * src/preproc/pic/troff.cc (troff_output::set_fill): Ditto. + +2003-02-10 Werner LEMBERG <wl@gnu.org> + + Improve error messages for `x F' (and `F') commands. + + * src/include/error.h: Add declaration for + `current_source_filename'. + * src/libs/libgroff/filename.cc: Add `current_source_filename'. + * src/libs/libgroff/error.cc (do_error_with_file_and_line): Add + parameter for source file string. + Updated all callers. + + * src/libs/libdriver/input.cc: Add `current_source_filename'. + (remember_source_filename): New function. + (parse_x_command <'F'>, do_file <'F'>): Use it. + +2003-02-09 Werner LEMBERG <wl@gnu.org> + + Make grotty not emit warnings about unknown colors more than + necessary. + + * src/devices/grotty/tty.cc: Include `ptable.h'. + (TTY_MAX_COLORS): Removed. + (DEFAULT_COLOR_IDX): Defined to -1. + (glyph): Change `back_color_idx' and `fore_color_idx' to `char'. + (tty_printer): Change `curr_back_idx' and `curr_fore_idx' to `char'. + Change `tty_colors' to be a ptable. + First arg of `put_color' is now `char'. + New functions `make_rgb_string' and `tty_color'. + (tty_printer::tty_printer): Use `tty_color'. + (tty_printer::color_to_idx): Return value is now `char'. + Use `tty_color'. + + * src/include/color.h (color): Add `print_color' member function. + * src/libs/libgroff/color.cc (color::print_color): Implement it. + +2003-02-08 Werner LEMBERG <wl@gnu.org> + + Valgrind fixes. + + * src/devices/grops/ps.cc (ps_printer::define_encoding): Close + encoding file. + + * src/include/ptable.h (PTABLE::~PTABLE, PTABLE::define): Always + assume that value has been allocated with `new[]', thus use + `a_delete' for deallocation. + + * src/libs/libdriver/input.cc (get_integer_arg, + get_possibly_int_args, parse_x_command, do_file): Use `a_delete' + where appropriate. + + * src/libs/libgroff/new.cc (delete) [!COOKIE_BUG]: Define. + * src/libs/libgroff/nametoindex.cc + (character_indexer::named_char_index): Use `new <type>[1]'. + + * src/preproc/eqn/lex.cc (init_table, do_definition): Use `new + <type>[1]'. + * src/preproc/eqn/text.cc (set_special_char_type): Ditto. + (split_text): Use `a_delete'. + + * src/preproc/pic/pic.y (define_label, define_variable): Use `new + <type>[1]'. + + * src/roff/troff/env.cc (environment::choose_breakpoint): Avoid + harmless memory leak. + (hyphen_trie::read_patterns_file): Initialize `buf'. + * src/roff/troff/node.cc (troff_output_file::troff_output_file): + Initialize `current_fill_color'and `current_glyph_color'. + * src/roff/troff/glyphuni.cc + (glyph_to_unicode_init::glyph_to_unicode_init): Use `new <type>[1]'. + * src/roff/troff/uniuni.cc + (unicode_decompose_init::unicode_decompose_init): Ditto. + * src/roff/troff/uniglyph.cc + (unicode_to_glyph_init::unicode_to_glyph_init): Ditto. + +2003-01-26 Werner LEMBERG <wl@gnu.org> + + * src/utils/indxbib/indxbib.cc (main) [__EMX__]: Check with + `access' before calling `unlink'. + (do_file): Handle __EMX__. + + * src/include/nonposix.h: Handle __EMX__. + + * Makefile.in (SEP): New variable; set to @PATH_SEPARATOR@. + (fontpath,tmacpath): Use it. + (MDEFINES): Add it. + Sorted alphabetically. + + * src/preproc/eqn/neqn.sh, src/roff/nroff/nroff.sh: Use + @SEP@. + * src/preproc/eqn/Makefile.sub, src/roff/nroff/Makefile.sub: Handle + @SEP@. + +2003-01-27 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/strcasecmp.c, src/libs/libgroff/strncasecmp.c: + New files, copied from gnulib. + * src/libs/libgroff/Makefile.sub (CSRCS): Add them. + * configure.ac: Updated. + * configure: Regenerated. + + * src/include/config.hin: Regenerated. + * src/include/lib.h [!HAVE_STRCASECMP]: Declare `strcasecmp'. + Don't define `strcasecmp' as `strcmp'. + [!HAVE_STRNCASECMP]: Declare `strncasecmp'. + Dont define `strncasecmp' as `strncmp'. + + * src/roff/groff/pipeline.c [!HAVE_STRCASECMP, !HAVE_STRNCASECMP]: + Removed. + +2003-01-26 Werner LEMBERG <wl@gnu.org> + + * src/utils/indxbib/indxbib.cc (main) [__EMX__]: Fix typo: + s/unline/unlink/. + +2003-01-25 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo (Ligatures and Kerning): Mention limitations. + +2003-01-24 Werner LEMBERG <wl@gnu.org> + + Add US-english hyphenation exceptions (converted from Barbara + Beeton's hyphenation exception log reports which appear irregularly + in TUGBoat). + + * tmac/hyphen.us: Updated to latest version. + * tmac/README: Updated. + * tmac/hyphenex.us, tmac/hyphenex.sh: New files. + * tmac/troffrc: Load `hyphenex.us'. + * tmac/Makefile.sub (NORMALFILES): Add `hyphenex.us'. + * doc/groff.texinfo: Updated. + +2003-01-23 Werner LEMBERG <wl@gnu.org> + + Improve hyphenation slightly. This is a first step in redesigning + the hyphenation algorithm to make it more flexible (e.g. allowing + kerns and ligatures between the hyphenation character and the + following character -- while not used normally in English, other + languages like German would benefit). + + * src/roff/troff/env.cc (environment::hyphenate_line): Use + assertion instead of if-clause. + Let `get_hyphen_list' return the number of involved characters in + the hyphenation pattern instead of computing it directly (which + often yields too small values). + * src/roff/troff/node.h (*::get_hyphen_list): Add second parameter. + * src/roff/troff/node.cc (*::get_hyphen_list): Handle new second + parameter. + +2003-01-22 Werner LEMBERG <wl@gnu.org> + + Fixing a bug which caused groff to hang if the hyphenation exception + dictionary tried to grow. + + * src/roff/troff/env.cc (hyphen_trie::insert_hyphenation, + hyphen_trie::read_patterns_file, do_hyphenation_patterns_file): Use + pointer to dictionary. + +2003-01-20 Werner LEMBERG <wl@gnu.org> + + * src/utils/afmtodit/afmtodit.pl: Add switch `-m' to suppress + negative left italic correction. + * src/utils/afmtodit/afmtodit.man: Document it. + + * font/devps/generate/Makefile (RFLAG): Add `-m'. + * font/devps/{AB,AR,BMB,BMR,CB,CR,EURO,HB,HR,HNB,HNR,NB,NR,PB,PR, + S,TB,TR,ZD,ZDR}: Regenerated with afmtodit options `-i 0 -m'. + + * NEWS: Updated. + +2003-01-16 Werner LEMBERG <wl@gnu.org> + + * NEWS: Updated. + +2003-01-16 Jörgen Grahn <jgrahn@algonet.se> + + * src/preproc/refer/refer.man: Mention REFER environment variable. + +2003-01-05 Werner LEMBERG <wl@gnu.org> + + Similar to \[is], the square root glyph (\[sr]) and the square root + extension glyph (\[radicalex]) are now text symbols. The new + mathematical versions are called \[sqrt] and \[sqrtex], + respectively. + + * font/devX*/S: Regenerated. + * font/devdvi/generate/texex.map: Rename `sr[0123]' to `sqrt[0123]'. + * font/devdvi/generate/texsy.map: Rename `sr' to `sqrt'. + * font/devdvi/EX, font/devdvi/S: Regenerated. + * font/devhtml/R.proto, font/devutf8/R.proto: Add `sqrt'. + * font/devlj4/generate/special.map: Add `sqrt'. + * font/devlj4/S: Regenerated. + * font/devps/generate/textmap: Add `sqrt'. + * font/devps/S, font/devps/symbolmap: Regenerated. + + * src/preproc/eqn/sqrt.cc (SQRT_CHAR, RADICAL_EXTENSION_CHAR, + SQRT_CHAIN, BAR_CHAIN): Use `sqrt*' and `sqrtex*'. + * src/roff/troff/input.cc (init_charset_table): Make `sqrtex' + overlap horizontally. + + * tmac/X.tmac, tmac/ps.tmac, tmac/lj4.tmac: Add `sqrtex'. + * tmac/dvi.tmac: Add `sr', and `sqrtex'. + Fix `radicalex'. + + * doc/groff.texinfo, man/groff_diff.man: Document that `radicalex' + and `sqrtex' are overlapping glyphs. + +2003-01-04 Werner LEMBERG <wl@gnu.org> + + * font/devdvi/generate/texsy.map: Add `is'. + * font/devps/symbolmap: Regenerated. + * font/devdvi/*TC, MI, S: Regenerated. + + * tmac/dvi.tmac: Remove `is'. + +2003-01-03 Werner LEMBERG <wl@gnu.org> + + `is' is now a text symbol (only relevant for dvi). The math variant + can be accessed with `integral'. + + * font/devX*/S: Regenerated. + * font/devdvi/generate/texex.map: Remove `is'. + * font/devdvi/EX: Updated. + * font/devhtml/R.proto, font/devutf8/R.proto: Add `integral'. + * font/devlj4/generate/special.map: Ditto. + * font/devlj4/S: Regenerated. + * font/devps/generate/textmap: Add `integral'. + * font/devps/S: Regenerated. + + * tmac/dvi.tmac: Define `is'. + + * src/roff/troff/glyphuni.cc (glyph_to_unicode_list): Add `integral'. + + * src/preproc/tbl/main.cc (process_format): Fix error message. + +2003-01-02 Werner LEMBERG <wl@gnu.org> + + * font/devhtml/R.proto, font/devutf8/R.proto: Add `ne' and `nc'. + * font/devps/textmap: Fix entries for `ne' and `nc'. + * font/devps/symbolmap: Regenerated. + + * src/roff/troff/glyphuni.cc (glyph_to_unicode_list), + src/roff/troff/uniglyph.cc (unicode_to_glyph_list): Add `18', + `38', `58', `78', `-+', `|=', `nc', `ne'. + + * tmac/dvi.tmac: Add `nm', `ne', `nc'. + Use `schar' for `aq'. + * tmac/ps.tmac, tmac/X.tmac: Add `nc' and `ne'. + * tmac/ec.tmac: Add `SC' to special fonts for `CW' and `CWI'. + * tmac/tty.tmac: Add `ne'. + + * src/roff/troff/node.cc (make_glyph_node): Test with `get_macro' + for fallback glyphs. + +2002-12-29 Werner LEMBERG <wl@gnu.org> + + Add glyph `|='. + + * font/devX*/*: Regenerated. + * font/devdvi/generate/ec.map: Remove `eq'. + * font/devdvi/generate/texsy.map: Make `~=' the same as `~~'. + Assign `|=' to position 39. + * font/devdvi/*EC, S: Regenerated. + * font/devhtml/R.proto, font/devutf8/R.proto: Add `|='. + * font/devlj4/generate/special.map: Make `~=' the same as `~~'. + Assign `|=' to position 549. + * font/devps/generate/textmap, font/devps/enerate/symbolmap: Remove + `equalmath'. + Add `uni2243' for `|='. + + * tmac/ec.tmac: Add `eq'. + * tmac/dvi.tmac: Add `=~'. + * tmac/tty-char.tmac, tmac/ps.tmac, tmac/X.tmac, tmac/lbp.tmac: Add + `|='. + +2002-12-21 Werner LEMBERG <wl@gnu.org> + + * font/devdvi/generate/tc.map: Remove `**'. + * font/devdvi/*TC: Regenerated. + * font/devhtml/R.proto, font/devutf8/R.proto: Add `18', `38', `58', + `78', `<<', `>>'. + * font/devutf8/NOTES: Updated. + + * src/roff/troff/charinfo.h (charinfo): Add `setx_macro' function. + Don't give default parameter to `set_macro'. + * src/roff/troff/input.cc (do_define_character): Use `setx_macro' + instead of `set_macro'. + (charinfo::setx_macro): Implement it. + (charinfo::set_macro): Don't change `mode'. + + * tmac/tty.tmac: Add `18', `38', `58', `78', `<<', `>>'. + * tmac/ps.tmac, tmac/X.tmac: Add `<<', `>>'. + * tmac/dvi.tmac: Define `!=' with `.schar'. + +2002-12-20 Werner LEMBERG <wl@gnu.org> + + * font/devX*/S: Regenerated. + * font/devdvi/generate/ec.map: Remove `pl'. + * font/devdvi/generate/tc.map: Remove `mi', `14', `12', `34'. + * font/devdvi/*{TC,EC}: Regenerated. + * font/devhtml/R.proto: Add `-+'. + Remove double entries for `rk', `lk', `lt', `rt', `rb', `lb'. + * font/devlbp/*: Remove `or'. + * font/devlj4/generate/special.map: Remove `or'. + * font/devlj4/S: Regenerated. + * font/devps/generate/textmap: Add `fiveeighths', `oneeighth', + `seveneighths', `threeeighths'. + Remove `plusmath'. + Replace `minusplus' with `uni2213'. + * font/devps/symbolmap: Regenerated. + * font/devutf8/R.proto: Replace `shc' with unnamed glyph. + Add `-+'. + + * src/roff/troff/charinfo.h (charinfo): Add `is_normal' inline + function. + * src/roff/troff/node.cc (troff_output_file::put_char_width): + Call glyph_color and fill_color even if tcommand_flag isn't set. + (make_node, node::add_char): Check not ci->is_fallback but + ci->is_normal. + + * tmac/lj4.tmac, tmac/lbp.tmac: Define `or'. + * tmac/ec.tmac: Add .rchar entry for `f/'. + Don't remove `12', `14', `34'. + Define `pl' to be always roman. + * tmac/ps.tmac (ps-frac, ps-frac-mono): New macros. + Define `18', `38', `58', `78'. + * tmac/tty.tmac: Add `-+'. + * tmac/dvi.tmac: Define `f/'. + (dvi-frac): Use `f/'. + * tmac/X.tmac (X-frac, X-frac-mono): New macros. + Define `18', `38', `58', `78'. + +2002-12-15 Colin Watson <cjwatson@debian.org> + + * contrib/pic2graph/pic2graph.sh: Add missing `;;'. + +2002-12-10 Werner LEMBERG <wl@gnu.org> + + Add glyph `tno', a textual variant of `no'. + + * font/devX*/*: Regenerated. + * font/{devcp1047,devlatin1,devutf8,devhtml}/R.proto: Add `tno'. + * font/devdvi/generate/{tc.map: Replace `no' with `tno'. + * font/devdvi/generated/{texsy,textex}.map: Add `tno'. + * font/devdvi/*: Regenerated. + * font/devlbp/*: Add `tno'. + * font/devlj4/generate/tex.map: Replace `no' with `tno'. + * font/devlj4/*: Regenerated. + * font/devps/generate/textmap: Replace `no' with `tno'. + * font/devps/generate/symbolchars: Add `no'. + * font/devps/*: Regenerated. + + * src/roff/troff/glyphuni.cc (glyph_to_unicode_list): Add `tno'. + + * tmac/cp1047.tmac, tmac/latin1.tmac: Replace `no' with `tno'. + * tmac/tty-char.tmac: Add entry for `tno' and `3d'. + + * NEWS: Updated. + + * tmac/dvi.tmac: Replace most `\\' with `\E'. + Add definition for `sd'. + * tmac/X.tmac, tmac/ps.tmac: Replace most `\\' with `\E'. + + * tmac/eqnrc <dvi>: Use `integral' instead of `is' glyph. + +2002-12-08 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac (TH): Use integer value for `IN' if in nroff + mode to avoid rounding errors. + (an-do-tag, an-do-tag-html, RS, RE): Remove redundant `.br'. + + * src/roff/groff/groff.man, src/roff/nroff/nroff.man, + src/roff/troff/troff.man: Improve documentation of -T. + +2002-12-07 Jeff Conrad <jeff_conrad@msn.com> + + * src/roff/groff/pipeline.c: Don't define `const' for _WIN32. + (run_pipeline) [_WIN32]: Provide working function without `fork'. + +2002-12-06 Werner LEMBERG <wl@gnu.org> + + * font/devps/generate/freeeuro.sfd: Make dimensions of Euro.symbol + glyphs compatible to Adobe's Euro fonts (scaling them down a bit). + Scaling Euro.sansserif glyphs down to have the same height as + digits. + Removed unnecessary points; added some extrema. + + * font/devps/EURO, font/devps/freeeuro.afm, font/devps/freeeuro.pfa: + Regenerated. + +2002-12-04 Werner LEMBERG <wl@gnu.org> + + * font/devps/generate/freeeuro.sfd: Add glyphs `Euro.symbol.slanted' + and `Euro.symbol.bold.slanted'. + Improve some glyph offsets and widths. + * font/devps/EURO, font/devps/freeeuro.afm, font/devps/freeeuro.pfa: + Regenerated. + * font/devps/generate/Makefile (freeeuro.afm freeeuro.pfa): Fix + typo. + * font/devps/generate/sfdtopfa.pe: Generate PFA in current + direcory. + + * tmac/europs.tmac: Updated to new glyph indices. + Use Euro.symbol for font familiy `A'. + + * doc/groff.texinfo: Minor improvements. + +2002-12-02 Werner LEMBERG <wl@gnu.org> + + * font/devdvi/generate.tc.map: s/%O/%0/. + * font/devdvi/*TC: Regenerated. + + * src/roff/troff/div.cc (init_div_requests): Sorted. + + * tmac/dvi.tmac: Remove `Ye'. + * tmac/ec.tmac: Remove `Ye'. + Add .rchar entry for `de'. + + * man/groff.man, man/groff_diff.man: Document register `.pe'. + * doc/groff.texinfo: Document registers `.pe', `.n', and `.w'. + * NEWS: Updated. + +2002-11-30 Werner LEMBERG <wl@gnu.org> + + Add PS font for various Euro glyphs. + + * font/devps/generate/freeeuro.sfd: New master font file for + pfaedit. + * font/devps/generate/sfdtopfa.pe: New conversion script for + pfaedit. + * font/devps/generate/Makefile (FONTS): Add `EURO'. + (EURO, freeeuro.afm, freeeuro.pfa): New rules. + * font/devps/freeeuro.pfa, font/devps/freeeuro.afm: Generated from + `freeeuro.sfd'. + * font/devps/EURO: Generated from `freeeuro.afm'. + * font/devps/download: Add `freeuro.pfa'. + * font/devps/Makefile.sub (NORMALFILES): Adde `EURO' and + `freeeuro.pfa'. + + * tmac/europs.tmac: New file. + * tmac/ps.tmac: Include `europs.tmac'. + * tmac/Makefile.sub (DISTFILES): Add `europs.tmac'. + +2002-11-29 Werner LEMBERG <wl@gnu.org> + + * font/devdvi/generate/texsy.map: Remove `lh' and `rh'. + * font/devdvi/S: Regenerated. + * font/devhtml/R.proto: Fix `CR' and `ci'. + Add `OK'. + * font/devps/generate/textmap: Fix `lh', `rh', and `sq'. + Remove `bs'. + * font/devps/symbolmap: Regenerated. + * font/devutf8/R.proto: Fix `CR' and `ci'. + Add `OK'. + * font/devutf8/NOTES: Updated. + + * src/roff/troff/uniglyph.cc (unicode_to_glyph_list): Fix `CR' and + `ci'. + Add `OK'. + * src/roff/troff/glyphuni.cc (glyph_to_unicode_list): Ditto. + + * tmac/dvi.tmac: Add `lh' and `rh'. + * tmac/Xps.tmac: Fix `lh' and `rh'. + * tmac/X.tmac: Add `OK'. + * tmac/lj4.tmac: Ditto. + +2002-11-24 Werner LEMBERG <wl@gnu.org> + + * font/devX*/S: Regenerated. + * font/devascii/R.proto, font/devcp1047/R.proto: Remove glyphs `lb', + `lc', `lf', `lk', `lt', `rb', `rc', `rf', `rk', and `rt'. + * font/devdvi/generate/texsy.map: Remove `or' glyph. + * font/devdvi/S: Regenerated. + * font/devhtml/R.proto, font/devutf8/R.proto: Add/fix glyphs + `parenlefttp', `parenleftex', `parenleftbt', `parenrighttp', + `parenrightex', `parenrightbt', `bracketlefttp', `bracketleftex', + `bracketleftbt', `bracketrighttp', `bracketrightex', + `bracketrightbt', `bracelefttp', `braceleftmid', `braceleftbt', + `braceex', `braceleftex', `bracerightex', `bracerighttp', + `bracerightmid', `bracerightbt', `lt', `lk', `lb', `rt', `rk', + `rb', and `bv'. + * src/roff/troff/glyphuni.cc, src/roff/troff/uniglyph.cc: Ditto. + * font/devutf8/NOTES: Updated. + * font/devlj4/generate/special.map: Add glyph `braceex'. + * font/devlj4/S: Regenerated. + + * tmac/tty-char.tmac: Add glyphs `lf', `rf', `lc', and `rc'. + +2002-11-14 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/uniglyph.cc (unicode_to_glyph_list): Add `va' + and `vA'. + Fix code for `an'. + * src/roff/troff/glyphuni.cc (glyph_to_unicode_list): Ditto. + + * doc/texinfo.tex: New version from texinfo 4.3. + * doc/groff.texinfo: Updated for texinfo 4.3. + Use @tie{} where appropriate. + * font/devdvi/generate/ec.map: Don't include `or' and `bv'. + * font/devdvi/generate/tc.map: Remove `rn'. + * font/devdvi/*TC, font/devdvi/*EC: Regenerated. + * font/devhtml/R.proto, font/devutf8/R.proto: Add `vA'. + Fix code for `an'. + * font/devX100/*, font/devX100-12/*, font/devX75/*, + font/devX75-12/*: Regenerated. + + * tmac/dvi.tmac: Add special fonts `SA' and `SB'. + Use .char (again) for `br', `ul', `rn', `or', and `ru'. + Improve definition of `an'. + * tmac/ps.tmac: Use .char (again) for `br', `ul', `rn', `or', and + `ru'. + * tmac/lj4.tmac: Use .char (again) for `br', `ul', `rn', and `ru'. + * tmac/X.tmac: Add definition for `or'. + * tmac/Xps.tmac: Undo change 2002-11-05. + * tmac/lbp.tmac: Add definitions for `br', `rn', `ul', and `ru'. + +2002-11-11 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/node.cc (troff_output_file::put_char): Always + call flush_tbuf. + +2002-11-10 Werner LEMBERG <wl@gnu.org> + + Added three new requests `schar', `fschar', and `rfschar'. `schar' + defines a glyph which is searched after the check for fonts declared + with `.special' (and before the check for all mounted special + fonts). `fschar' defines a glyph for a particular font which is + searched after the check for fonts declared with `.fspecial' (and + before the check for fonts declared with `.special'). `rfschar' + removes glyphs defined with `fschar'. + + * src/roff/troff/token.h (char_mode): New enum. + Declare do_define_character. + * src/roff/troff/charinfo.h (charinfo): Replace `fallback' with + `mode'. + (charinfo::is_fallback): Updated. + (charinfo::is_special): New method. + * src/roff/troff/input.cc (do_define_character): Add and use + optional second parameter used as a prefix for font-specific glyph + names. + (define_character, define_fallback_character): Updated. + (define_special_character): New function. + (init_input_requests): Add `schar'. + (charinfo::charinfo, charinfo::set_macro): Updated. + * src/roff/troff/node.cc: Include `stringclass.h'. + (make_glyph_node): Handle special glyphs defined with `.schar' and + `.fschar'. + (define_font_special_character, remove_font_special_character): New + functions. + (init_node_requests): Sorted. + Add `fschar' and `rfschar'. + * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo: + Document new requests. + + * font/devhtml/R.proto, font/devutf8/R.proto: Add `va'. + * tmac/dvi.tmac: Add `va' for CW and CWI (using `.fschar'). + +2002-11-08 Werner LEMBERG <wl@gnu.org> + + Added new font `SC' (cmtex10) to devdvi. + + * devdvi/generate/Makefile (FONTS): Add `SC'. + (SC): New rule. + * devdvi/generate/textex.map: New map file for cmtex. + * devdvi/SC: New. + * devdvi/Makefile.sub (DEVFILES): Updated. + * tmac/dvi.tmac: Add fspecial entries for SC. + Add `MI', `S' and `CW' to the `special' call. Otherwise, `SC' is + found before `S' since the font position of `SC' is lower due to the + gaps in DESC's `font' line. + * tmac/ec.tmac: Add a `special' call. + * NEWS: Updated. + + * font/devhtml/R.proto: Remove double entry for `ti'. + * tmac/tty.tmac: Add entries for `IJ', `ij', and `bq'. + * tmac/tty-char.tmac: Remove entry for `bq'. + * tmac/lbp.tmac: Add entries for `lq', `rq', `fo', `fc', and `em'. + * tmac/ec.tmac: Don't remove `aq' glyph. + * tmac/X.tmac: Fix entry for `em'. + Add entries for `fo' and `fc'. + * tmac/dvi.tmac: Add entries for `em', `en', `hy', `fo', and `fc'. + + * doc/groff.texinfo, man/groff.man, man/groff_diff.man: Fix + documentation of `special' and `fspecial' requests. + +2002-11-05 Werner LEMBERG <wl@gnu.org> + + * font/devascii/R.proto, font/devcp1047/R.proto, + font/devlatin1/R.proto: Remove entry for `.i'. + * font/devdvi/generate/textt.map: Add entry for `ad'. + * font/devdvi/generate/texr.map, font/devdvi/generate/texb.map, + font/devdvi/generate/texi.map: Add dummy glyph name `slash@for@l'. + We need this for getting kerning values to compose `/l' and `/L'. + * font/devdvi: Regenerated font definition files for CM fonts. + * font/devhtml/R.proto: Add entries for "'C", "'c", `IJ', and `ij'. + * font/devutf8/R.proto: Ditto. + Remove double entry for `ti'. + + * src/roff/troff/glyphuni.cc (glyph_to_unicode_list): Fix entries + for (groff) ligatures, `la', and `ra'. + Add "'C", "'c", `IJ', and `ij'. + Remove double entry for `ti'. + * src/roff/troff/uniglyph.cc (unicode_to_glyph_list): Remove all + double entries. + Add "'C", "'c", `IJ', and `ij'. + Fix entries for (groff) ligatures, `la', and `ra'. + + * tmac/ps.tmac (ps-achar): New macro. + Define "'c" and "'C". + * tmac/tty.tmac: Add entry for `.i'. + * tmac/X.tmac (X-achar): New macro. + Define "'c", "'C", and `:Y'. + Add entries for `IJ' and `ij'. + * tmac/Xps.tmac (Xps-achar): New macro. + Define "'c" and "'C". + Add entries for `IJ' and `ij'. + * tmac/lbp.tmac (lbp-achar): New macro. + Add fallback characters for all groff ligatures and many other + glyphs. + * tmac/dvi.tmac: Fix definitions of `_' and `ul'. + Add entries for `/l' and `/L'. + Define "'c" and "'C". + Add entries for `IJ' and `ij'. + +2002-11-02 Larry Kollar <kollar@alltel.net> + + * PROBLEMS: Document how to solve Mac OS X compilation problems. + +2002-11-02 Werner LEMBERG <wl@gnu.org> + + Adding support for composite glyphs: \[xxx yyy ...] and the + `composite' request. + + * src/roff/troff/glyphuni.cc: New file for mapping groff glyph names + to Unicode-based glyph names. + * src/roff/troff/uniglyph.cc: New file for mapping Unicode-based + glyph names to groff glyph names. + * src/roff/troff/uniuni.cc: New file for canonically decomposing + Unicode-based glyph names. + * src/roff/troff/unicode.cc, src/roff/troff/unicode.h: New files + for handling Unicode glyph names. + * src/roff/troff/input.cc: Include unicode.h. + (composite_glyph_name): New function. + (token::next) <'['>: Handle Unicode glyph names and composite + glyphs. + (composite_dictionary): New dictionary for the `composite' request. + (composite_request): Implement `composite' request. + (init_input_requests): Add `composite'. + Alphabetically sorted. + * src/roff/troff/env.cc (tabs_save, tabs_restore): Removed (already + commented out). + (init_env_requests): Alphabetically sorted. + Removed `tas' and `tar' (already commented out). + * src/roff/troff/Makefile.sub: Updated. + +2002-10-31 Ruslan Ermilov <ru@FreeBSD.org> + + * src/roff/nroff/nroff.man, src/roff/nroff/nroff.sh: Fix description + of options. + +2002-10-29 Werner LEMBERG <wl@gnu.org> + + Fix computation of .trunc register. Additionally, its value (and + the value of the .ne register) is now always set before entering the + trap. + + * src/roff/troff/div.cc (diversion::need): Set `truncated_space' and + `needed_space' before calling `space'. + (top_level_diversion::space): Remove special code for 'sp before the + first page. + Call `begin_page' with the discarded space as a parameter. + (top_level_diversion::begin_page): Add optional parameter to set + `truncated_space'. + * src/roff/troff/div.h: Updated. + + * doc/groff.texinfo: Improve documentation of .sp, \n[.trunc], and + \n[.ne]. + + * tmac/an-old.tmac (SH, SS, TP, IP, HP, TS): Undo change 2002-10-26. + (LP): Remove superfluous call to `br'. + * tmac/doc-common (doc-paragraph): Undo change 2002-10-26. + * tmac/doc.tmac (Bd, Bl, doc-set-vertical-and-indent): Ditto. + +2002-10-26 Werner LEMBERG <wl@gnu.org> + + * tmac/doc-ditroff: Remove useless switch/variable -rC. + (doc-setup-header): Don't set page register `%'. + * tmac/doc-nroff: Remove variable `C'. + (doc-setup-page-layout): Set doc-header-space to .5i unconditionally. + (doc-setup-header): Don't set page register `%'. + Don't call `bp'. + * tmac/doc-common (doc-header): Call `ns'. + (doc-paragraph): Protect .sp with .br so that it survives traps + possibly set by the user. + * tmac/doc.tmac (Bd, Bl, doc-set-vertical-and-indent): Ditto. + + * tmac/doc*: Replace ' with . for consistency if no effect. + +2002-10-26 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac (SH, SS, TP, IP, HP, TS): Protect .sp with .br + so that it survives traps possibly set by the user. + + * src/roff/troff/node.cc: Fix the changes from 2002-10-23. + (troff_output_file::set_font): Call flush_tbuf if necessary. + (troff_output_file::fill_color, troff_output_file::glyph_color): Call + flush_tbuf and do_motion only if necessary. + (troff_output_file::start_special, + troff_output_file::put_char_width, troff_output_file::put_char, + troff_output_file::draw): Updated. + (word_space_node::tprint, space_node::tprint, hmotion_node::tprint, + vmotion_node::tprint): Undo change 2002-10-23. + +2002-10-25 Werner LEMBERG <wl@gnu.org> + + * tmac/www.tmac (DC): Fix case of overlapping images. + +2002-10-23 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/node.cc (troff_output_file::fill_color, + troff_output_file::glyph_color): Set current color before testing + color_flag. + (troff_output_file::put_char_width, troff_output_file::put_char, + troff_output_file::draw): Don't call flush_tbuf and/or do_motion + before glyph_color. + (troff_output_file::file_color, troff_output_file::glyph_color): + Call do_motion. + (word_space_node::tprint, space_node::tprint, hmotion_node::tprint, + vmotion_node::tprint): Move first, then call fill_color. + +2002-10-20 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo, man/groff_tmac.man: Document that it is not + possible to use multiple main macro packages. + +2002-10-19 Werner LEMBERG <wl@gnu.org> + + * src/devices/grops/ps.cc (cmyk_flag): New global variable. + (ps_printer::set_color): Set `cmyk_flag' for CMY and CMYK colors. + (ps_printer::~ps_printer): Emit `%%Extensions: CMYK' if `cmyk_flag' + is set. + * font/devps/prologue.ps (Fk, Ck): Enclose definitions with a + `where' construction since `cmyksetcolor' is a PS Level 2 operator. + +2002-10-16 Werner LEMBERG <wl@gnu.org> + + * NEWS, doc/webpage.ms: Updated. + +2002-10-14 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/node.cc (troff_output_file::put_char_width, + troff_output_file::put_char, troff_output_file::fill_color, + troff_output_file::glyph_color): Handle case where color pointer + is null. + +2002-10-13 Ruslan Ermilov <ru@FreeBSD.org> + + Add the new -r option to grotty. It is similar to the -i option + except it tells grotty(1) to use the `reverse video' attribute to + render italic fonts. + + * src/devices/grotty/tty.cc (reverse_flag): New global variable. + (SGR_REVERSE, SGR_NO_REVERSE): New macros. + (tty_printer::make_underline, tty_printer::put_color, + tty_printer::end_page): Use it. + (main): Add -r switch. + (usage): Updated. + * src/devices/grotty/grotty.man: Document it. + +2002-10-11 Ruslan Ermilov <ru@FreeBSD.org> + + * src/roff/troff/env.cc (hyphen_trie::read_patterns_file): Add + cast to `unsigned char' to properly read patterns with 8bit + characters. + +2002-10-08 Werner LEMBERG <wl@gnu.org> + + * REVISION: Increased to 2. + +Copyright 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, @@ -1191,5 +9048,5 @@ notice and this notice are preserved. Local Variables: version-control: never -coding: utf-8 +coding: latin-1 End: |