Version 1.17.2 released
=======================
2001-07-07 Werner LEMBERG <wl@gnu.org>
* src/utils/indxbib/indxbib.cc (main): Change type of `name_max'
to size_t.
2001-07-06 Ruslan Ermilov <ru@FreeBSD.org>
* tmac/doc.tmac (Rv): Make `Rv' really not parseable.
Fix synopsis.
* tmac/groff_mdoc.man: Fix synopsis.
2001-07-05 Ruslan Ermilov <ru@FreeBSD.org>
* tmac/doc.tmac (doc-inset-list, doc-hang-list, doc-ohang-list):
Restore `doc-Pa-font'.
2001-07-04 Werner LEMBERG <wl@gnu.org>
* src/utils/indxbib/dirnamemax.c: Moved to ...
* src/libs/libgroff/maxfilename.cc: Here.
s/dir_name_max/file_name_max/.
Add copyright.
* src/include/lib.h: Add file_name_max.
* src/utils/indxbib/indxbib.cc: Updated.
* src/utils/indxbib/Makefile.sub, src/libs/libgroff/Makefile.sub:
Updated.
* src/libs/libgroff/tmpfile.cc (TMPFILE_PREFIX) [__MSDOS__]: Define
as empty.
(xtmpfile) [_MSC_VER]: Removed -- MSVC has mktemp().
* src/preproc/html/pre-html.cc (PAGE_TEMPLATE, PS_TEMPLATE,
REGION_TEMPLATE): New macros.
(createAllPages, makeTempFiles): Use them.
Include `nonposix.h'.
(html_system): New function.
(createAllPages, createImage): Use it.
Use EXE_EXT.
* tmac/www.tmac: Fix typos.
2001-07-03 Werner LEMBERG <wl@gnu.org>
* tmac/www.tmac: Disable hyphenation in normal text only if output
device is html.
(URL, FTP, MAILTO): Disable hyphenation of actual URL with `\%'.
* tmac/groff_mwww.man, NEWS: Updated.
2001-07-03 Gaius Mulley <gaius@glam.ac.uk>
* tmac/www.tmac (.IMAGE): Add fourth parameter to specify vertical
image location.
2001-07-02 Ruslan Ermilov <ru@FreeBSD.org>
* tmac/doc-common, tmac/doc.tmac (doc-display-ft-stack,
doc-display-ps-stack): Implement font and font size stack for
displays.
2001-07-02 Werner LEMBERG <wl@gnu.org>
* REVISION: Increased to 2.
* src/roff/troff/input.cc (read_size): Fix special case `\s[0]'.
* src/groff/grog/grog.pl (process): Handle `Oo' and `Oc' not at the
beginning of a line.
* src/groff/grog/grog.sh: Ditto.
2001-06-29 Peter Marquardt <wwwutz@molgen.mpg.de>
* src/preproc/eqn/neqn.sh: Put `export' keyword in a new line to
make it portable.
2001-06-27 Werner LEMBERG <wl@gnu.org>
Fix problems with preprocessor string for `man' program.
* *.man: Don't use `s' in preprocessor string -- it doesn't exist.
Updated/added copyright.
Moved Emacs's local variable to identify nroff mode to the end of
the file; add local variable if missing.
2001-06-26 Andras Salamon <andras@cs.wits.ac.za>
* aclocal.m4: Replace AC_LANG_SAVE + AC_LANG_CPLUSPLUS with
AC_LANG_PUSH(C++) and AC_LANG_RESTORE with AC_LANG_POP(C++).
* configure: Regenerated.
2001-06-25 Andras Salamon <andras@cs.wits.ac.za>
* aclocal.m4 (GROFF_PAGE): Fix page detection code.
* configure: Regenerated.
2001-06-24 Werner LEMBERG <wl@gnu.org>
* doc/homepage.ms: Don't include arkup.tmac (which no longer exists)
but www.tmac.
* doc/pic.ms: Fix typos.
Version 1.17.1 released
=======================
2001-06-21 Golubev I. N. <gin@mo.msk.ru>
* aclocal.m4 (GROFF_NEED_DECLARATION): Fix inclusion of strings.h.
* configure: Updated.
2001-06-20 Gaius Mulley <gaius@glam.ac.uk>
* src/roff/preproc/html/pre-html.cc (make_message): Fix incorrect
image names.
* src/roff/troff/dic.cc (blank_line): Add html tag.
2001-06-19 Gaius Mulley <gaius@glam.ac.uk>
* src/roff/troff/input.cc (do_suppress): Fix typo.
2001-06-18 Gaius Mulley <gaius@glam.ac.uk>
Added two new options (-D and -I) to specify image names and a
subdirectory to place the images in.
Change syntax from \\Ox to \\O[x].
* src/devices/grohtml/post-html.cc (main): Add options.
(usage): Updated.
* src/preproc/html/pre-html.cc: Include `stdarg.h'.
Use `NULL' instead of `0' for null string pointers.
(MAX_RETRIES): New macro.
(lengthOfintToStr, intToStr, make_message): New functions.
(makeFileName): Make function static.
Implement -D and -I options.
(checkImageDir): New function.
(write_end_image, write_start_image): Use new syntax of \O.
(createAllPages, removeAllPages): Implement -D and -I options. Use
make_message().
(createImage): Use make_message().
(addps4html): Add guard for malloc().
(usage, scanArguments): Updated.
(makeTempFiles): Use mkstemp().
(removeTempFiles): Use unlink().
(findPrefix): Add guard for malloc().
(main): Updated.
* src/roff/troff/input.cc (get_delim_file_name): New function to
parse \O.
(do_suppress): Updated to parse new syntax.
* src/devices/grohtml/grohtml.man: Updated.
* tmac/www.tmac: Updated to new syntax.
* NEWS: Updated.
2001-06-15 Werner LEMBERG <wl@gnu.org>
* src/roff/grog/Makefile.sub: Remove NAMEPREFIX.
* src/devices/grohtml/grohtml.man: Minor improvements.
2001-06-14 Werner LEMBERG <wl@gnu.org>
* src/preproc/html/Makefile.sub: Remove NAMEPREFIX.
2001-06-11 Werner LEMBERG <wl@gnu.org>
* man/roff.man, mann/groff.man: Use '\" instead of .\" in the first
line to specify preprocessor options -- mandb 2.3.1 only recognizes
the former.
* src/preproc/grn/grn.man: Add proper '\" string.
2001-06-11 OKAZAKI Tetsurou <okazaki@be.to>
* test-groff: Don't use PATH but GROFF_BIN_PATH.
2001-06-08 Werner LEMBERG <wl@gnu.org>
Updated to autoconf 2.50.
* configure.in: Renamed to...
* configure.ac: This.
* aclocal.m4 (AC_OUTPUT_MAKE_DEFS): Removed.
(GROFF_OS390): Updated.
* configure: Regenerated.
2001-05-18 Werner LEMBERG <wl@gnu.org>
* src/roff/troff/env.c, src/roff/troff/env.h,
src/roff/troff/input.cc, src/roff/troff/troff.man: Undo `ss' change
from 2000-12-21.
2001-05-17 Jeffrey Friedl <jfriedl@yahoo-inc.com>
* src/roff/troff/input.cc (read_size): Fix special case `\s0'.
2001-05-16 Werner LEMBERG <wl@gnu.org>
* src/roff/troff/input.cc (read_size): Emit warning if value becomes
less than or equal zero; set it to 1 then.
* src/roff/troff/node.h (node::node): Initialize `last'.
2001-05-08 Werner LEMBERG <wl@gnu.org>
* tmac/an-old.tmac: Make predefined strings work in compatibility
mode.
Add troff version guard.
* tmac/doc.tmac: Simplify version guard.
2001-05-07 Werner LEMBERG <wl@gnu.org>
The .ns and .rs requests are now honoured not only in the top-level
but in all diversions (similar to UNIX troff).
This change is based on a patch from Tadziu Hoffmann
<hoffmann@usm.uni-muenchen.de>.
* src/roff/troff/div.h (diversion): Add `no_space_mode' member.
(top_level_diversion): Remove `no_space_mode' member.
* src/roff/troff/div.cc (diversion::diversion,
top_level_diversion::top_level_diversion): Updated.
(macro_diversion::output): Reset `no_space_mode'.
(no_space, restore_spacing): Use `curdiv' unconditionally.
(space_request, blank_line): Check `curdiv->no_space_mode'.
(no_space_mode_reg::get_value, no_space_mode_reg::get_string): Use
`curdiv' unconditionally.
* NEWS, src/roff/troff/troff.man, man/groff.man, doc/groff.texinfo:
Updated.
2001-05-06 Werner LEMBERG <wl@gnu.org>
Added two new requests `de1' and `am1' which are similar to `de' and
`am' with the difference that compatibility mode is saved on entry,
switched off during macro execution, and restored on exit.
* src/roff/troff/input.h: Added two new special characters
(COMPATIBLE_SAVE, COMPATIBLE_RESTORE).
* src/roff/troff/input.cc (input_iterator): Added two member
functions `save_compatible_flag' and `get_compatible_flag'.
(input_stack): Ditto.
(string_iterator): Ditto. Also add private member
`saved_compatible_flag'.
(token::next): Use COMPATIBLE_SAVE and COMPATIBLE_RESTORE.
(calling_mode): New enumeration.
(do_define_macro): Use it. Insert COMPATIBLE_SAVE and
COMPATIBLE_RESTORE at the beginning and end of macro, respectively.
(define_macro, define_indirect_macro, append_macro, ignore): Use
`calling_mode'.
(define_nocomp_macro, append_nocomp_macro): New functions.
(init_input_requests): Updated.
(do_request): Rename local variable `saved_compatible_flag' to
`old_compatible_flag'.
* NEWS, src/roff/troff/troff.man, man/groff.man: Document it.
* tmac/an-old.tmac: Use `de1' instead of `de' request for all
public and trap-invoked macros. As a consequence, the man macros
work in compatibility mode also.
2001-05-06 Solar Designer <solar@openwall.com>
* Makefile.in: Use $(mandir).
2001-05-06 Alexios Zavras <zvr@pobox.com>
* src/utils/afmtodit/afmtodit.pl: Fix serious typo.
2001-05-05 Werner LEMBERG <wl@gnu.org>
Added `.ns' number register: Returns 1 in no-space mode (if in
top-level diversion), 0 otherwise.
* src/roff/troff/div.cc (no_space_mode_reg): New class.
(init_div_requests): Updated.
* NEWS, src/roff/troff/troff.man, man/groff.man, doc/groff.texinfo:
Document it.
2001-05-04 Werner LEMBERG <wl@gnu.org>
* src/roff/nroff/nroff.man: Improved documentation (especially
locales).
2001-05-02 Werner LEMBERG <wl@gnu.org>
Added `brp' request: This is \p as a request.
* src/roff/troff/env.cc (environment::do_break): Add parameter
`spread'.
(do_break_request): New function (was `break_request').
(break_request): Calls `do_break_request'.
(break_spread_request): New; calls `do_break_request'.
(init_env_requests): Updated.
* src/roff/troff/env.h: Updated.
* NEWS, src/roff/troff/troff.man, man/groff.man: Document it.
* REVISION: Increased to 1.
* win32-diffs: Updated.
2001-05-01 Werner LEMBERG <wl@gnu.org>
* tmac/an-old.tmac: Fix minor compatibility mode issue.
* tmac/troffrc-end: Make it really work in compatibility mode.
2001-04-27 Werner LEMBERG <wl@gnu.org>
* src/utils/lkbib/lkbib.cc: Switch inclusion order of stdio.h and
stdlib.h.
2001-04-22 Werner LEMBERG <wl@gnu.org>
* src/libs/libgroff/getopt.c, src/include/getopt.h: Updating to
latest versions from glibc CVS archive.
* MORE.STUFF: Updated, using a patch from Kees Zeelenberg
<c.zeelenberg@hccnet.nl>.
2001-04-21 Werner LEMBERG <wl@gnu.org>
* configure.in: Move check for mkstemp() to...
* aclocal.m4 (GROFF_MKSTEMP): This new function.
* configure: Regenerated.
* src/include/groff-getopt.h: Don't use variable names in
declarations.
* src/devices/grohtml/html-chars.h: Removed. It isn't used.
* src/devices/grohtml/Makefile.sub,
src/devices/grohtml/post-html.cc: Updated.
2001-04-21 Albert Chin-A-Young <china@thewrittenword.com>
* configure.in: Add special check for mkstemp().
* src/libs/libgroff/tmpfile.cc: Use it.
* src/utils/indxbib/indxbib.cc: Ditto.
* src/utils/pfbtops/pfbtops.c (main): Don't use C++ comment style.
* src/devices/grolbp/lbp.h (lbpprintf, lbpputs, vdmprintf): Use
`const'.
2001-04-20 Bruce Lilly <blilly@erols.com>
`Version_string' as C++ object was not visible to linker from C
object files.
Add `const' to `Version_string'.
* src/utils/pfbtops/pfbtops.c (main), src/roff/groff/groff.cc
(main), src/roff/troff/input.cc (main), src/preproc/tbl/main.cc
(main), src/preproc/pic/main.cc (main), src/preproc/eqn/main.cc
(main), src/preproc/grn/main.cc (main), src/preproc/html/pre-html.cc
(scanArguments), src/preproc/refer/refer.cc (main),
src/preproc/soelim/soelim.cc (main), src/devices/grotty/tty.cc
(main), src/devices/grodvi/dvi.cc (main), src/devices/grolj4/lj4.cc
(main), src/devices/grohtml/post-html.cc (main),
src/devices/grolbp/lbp.cc (main), src/utils/tfmtodit/tfmtodit.cc
(main), src/utils/hpftodit/hpftodit.cc (main),
src/utils/lookbib/lookbib.cc (main), src/utils/indxbib/indxbib.cc
(main), src/utils/lkbib/lkbib.cc (main),
src/utils/addftinfo/addftinfo.cc (main): Implement it.
* src/roff/groff/pipeline.c: Add _UWIN.
* src/include/nonposix.h: Ditto.
2001-04-20 Werner LEMBERG <wl@gnu.org>
* src/include/lib.h: Use HAVE_STRERROR.
* src/roff/groff/pipeline.c: Ditto.
* src/preproc/html/pre-html.cc: Remove declaration of `strerror'.
* src/libs/libgroff/Makefile.sub (version.cc): Add `extern "C"'.
* src/utils/pfbtops/pfbtops.c: Add copyright notice.
* win32-diffs: Updated.
* src/utils/hpftodit/hpftodit.cc (read_map): Fix compiler warning.
2001-04-19 Werner LEMBERG <wl@gnu.org>
* src/preproc/html/pre-html.cc (scanArguments): Use `troff_command'
instead of hardwired `"troff"'.
(char_buffer::read_file): Remove unused variables.
(char_buffer::write_file_troff): Ditto.
(char_buffer::write_file_html): Ditto.
(generateImages): Ditto.
(abs): Removed.
* src/utils/addftinfo/addftinfo.cc (main): Fix compilation problem.
* src/include/lib.h: Don't include `groff-getopt.h' for UWIN.
* src/libs/libgroff/font.cc (font::load_desc): Fix compiler warning.
* src/libs/libbib/index.cc (index_search_item_iterator::get_tag,
index_search_item::search1): Ditto.
* src/roff/troff/node.h (width_list): Reorder members.
* src/roff/troff/input.cc (do_define_macro): Fix compiler warning.
(lookup_warning): Ditto.
(prepend_string): Commented out.
* src/roff/troff/dictionary.cc (is_good_size): Fix compiler warning.
* src/roff/troff/reg.cc (number_value_to_ascii): Ditto.
* src/preproc/tbl/main.cc (process_format): Ditto.
* src/preproc/pic/pic.y (define_variable, reset, reset_all): Fix
compiler warnings.
* src/preproc/pic/pic.cc: Updated.
* src/preproc/eqn/lex.cc (init_table): Fix compiler warnings.
* src/preproc/eqn/over.cc (over_box::compute_metrics): Ditto.
* src/preproc/refer/command.cc (execute_command): Ditto.
* src/preproc/refer/ref.cc (sortify_title, find_month): Ditto.
* src/preproc/refer/token.cc (lookup_token): Ditto.
* src/preproc/soelim/soelim.cc: Ditto.
* src/preproc/html/pushbackbuffer.cc (ERROR): Ditto.
(isHexDigit): Commented out.
(pushBackBuffer::isString): Remove unused variable.
* src/devices/grops/ps.cc (ps_printer::special): Fix compiler
warning.
* src/devices/grops/psrm.cc (resource_manager::lookup_font,
resource_manager::read_resource_arg, read_one_of, parse_extensions):
Ditto.
* src/devices/grodvi/dvi.cc (dvi_printer::draw): Ditto.
* src/devices/grolj4/lj4.cc (lj4_font::handle_unknown_font_command,
lookup_paper_size): Ditto.
* src/devices/grohtml/post-html.cc (is_subsection): Commented out.
(text_glob, element_list): Reorder members.
* src/devices/grohtml/html-text.cc (html_text::do_pre): Remove
compiler warning.
* src/devices/grohtml/html-text.h (html_text::emit_space): Change
return value to `void'.
* src/devices/grohtml/output.cc (word_list::word_list): Fix order
of initializers.
* src/devices/grohtml/html.h (simple_output::check_newline,
simple_output::space_or_newline, simple_output::enable_newlines):
Add return value.
* src/devices/grolbp/lbp.cc (wp54charset, set_papersize): Remove
compiler warnings.
* src/utils/tfmtodit/tfmtodit.cc (tfm::load, gf::load, main): Ditto.
* src/utils/hpftodit/hpftodit.cc (File::seek, read_symbol_sets,
output_ligatures, output_charset, read_map): Ditto.
* src/utils/lookbib/lookbib.cc (main): Ditto.
* src/utils/indxbib/indxbib.cc (main, fwrite_or_die): Ditto.
(do_file): Fix typo (`=' -> `==').
* src/utils/lkbib/lkbib.cc (main): Remove compiler warning.
* src/utils/addftinfo/addftinfo.cc (main): Ditto.
2001-04-18 Ruslan Ermilov <ru@FreeBSD.org>
* src/roff/nroff/nroff.sh: Adding -p (pic) and -t (tbl) options.
Fix usage of GROFF_BIN_PATH.
* src/roff/nroff/nroff.man: Updated.
2001-04-18 Werner LEMBERG <wl@gnu.org>
* NEWS: Fixing typos.
Updated.
Version 1.17 released
=====================
2001-04-17 Werner LEMBERG <wl@gnu.org>
* tmac/Makefile.sub (install-data): mdoc.local-s is in current
directory, not in $(srcdir).
2001-04-16 Werner LEMBERG <wl@gnu.org>
* doc/groff.texinfo: More info on conditionals.
2001-04-15 Werner LEMBERG <wl@gnu.org>
* doc/groff.texinfo: Added some info about groff internals.
* src/roff/troff/node.cc (make_glyph_node): Emit warning message
about missing special character only if the name is non-null.
2001-04-14 Werner LEMBERG <wl@gnu.org>
Removing the grohtml-old device driver which is now obsolete.
* src/devices/grohtml-old/*: Removed.
* font/devhtml-old/*: Removed.
* src/libs/libgroff/htmlindicate.cc (graphic_start, graphic_end):
Remove comments.
* Makefile.in (CCPROGDIRS, DEVDIRS): Updated.
* test-groff (PATH): Updated.
* tmac/Makefile.sub (NORMALFILES): Updated.
* tmac/an-old.tmac: Remove special code for html-old device.
Replace `html-or-html-old' register with `an-html'.
* tmac/eqnrc: Updated.
* tmac/html-old.tmac: Removed.
* tmac/troffrc, tmac/troffrc-end: Updated.
* tmac/www.tmac: Remove special code for html-old device.
Replace `html-or-html-old' register with `www-html'.
* src/libs/libgroff/tmpfile.cc (remove_tmp_files),
src/libs/libgroff/htmlindicate.cc (graphic_end),
include/htmlindicate.h, src/preproc/grn/*.cc,
src/roff/groff/env.{cc,h}: Remove `void' parameter if used as a
single argument for consistency with rest of source code.
* aclocal.m4, tmac/an-old.tmac: Fix copyright.
2001-04-13 Ruslan Ermilov <ru@FreeBSD.org>
* src/roff/troff/troff.man: Fixing typos.
2001-04-13 Werner LEMBERG <wl@gnu.org>
* doc/pic.ms: Fixing many font switches.
* doc/groff.texinfo: Fixes, additions.
* MORE.STUFF: Updated.
2001-04-12 Gaius Mulley <gaius@glam.ac.uk>
* src/devices/grohtml/grohtml.man: Updated manual page regarding
simple anchor.
* src/preproc/html/pre-html.cc (createImage): Fixed right hand
cropping of images.
(removeTempFiles): New function to tidy up temporary files.
* src/preproc/html/pre-html.cc (main): Calls `removeTempFiles()'.
Many fixes to do with the new inline suppress node and image regions
are much tighter.
* src/devices/grohtml/post-html.cc: New method `is_auto_img'.
(generate_img_src): New function.
(html_printer::do_auto_image): Utilizes it.
(do_heading, do_title): Include inline images within their contents.
(html_printer::begin_page): Tidied up comments that are issued to
the html output file.
(html_printer::do_fill): Fixed so that `.nf' works with fonts other
than courier.
(text_glob::is_br): New method used by do_heading.
* tmac/s.tmac: If -Thtml then emit $1 in .IP rather than its
equivalent diversion.
* src/include/html-strings.h: Altered image tags to reflect the
inline image node.
* src/include/htmlindicate.h (html_end_suppress): Added `is_inline'
parameter.
* src/preproc/eqn/main.cc: Will suppress generation of image tags if
it is already inside a pic image. Only emit tags if the argument
`-Tps:html' is present.
* src/preproc/tbl/main.cc: Changes to reflect additional
`html_end_suppress' parameter.
* src/roff/troff/env.cc: Only emit eol tag if a node has been
emitted since the last eol tag was written.
* src/roff/troff/env.h: New boolean `emitted_node'.
* src/roff/troff/input.cc (do_suppress): Handles extra suppress
nodes \O3, \O4, \O5. No longer use `output_low_mark_miny'.
* src/roff/troff/node.cc (check_charinfo): New method.
(troff_output_file::determine_line_limits): Alterations to limit
checking.
* tmac/www.tmac: Changes to reflect new suppress nodes.
2001-04-12 Bruno Haible <haible@clisp.cons.org>
* src/devices/grohtml/post-html.cc (html_printer::add_to_sbuf):
Escape the html_glyph in the buffer.
(str_translate_to_html): Output the unescaped escaped_char.
* src/devices/grohtml/html-text.cc (issue_table_begin): Set
`frame=void', not `frame=none'. Add `border=0'.
2001-04-12 Werner LEMBERG <wl@gnu.org>
* PROBLEMS: Add some words on how to avoid wrapper macros.
2001-04-11 Blake McBride <blake@florida-software.com>
* src/include/nonposix.h (fileno) [_MSC_VER]: Removed.
2001-04-11 Werner LEMBERG <wl@gnu.org>
* font/devlbp/Makefile.sub (CLEANADD): Set it.
* tmac/Makefile.sub (CLEANADD): Add tmac.local-s.
* Makefile.in (dist): Don't remove src/xditview/Imakefile, but ...
* Makefile.sub (DISTCLEANFILES): Here.
* libs/libgroff/new.cc: Include `nonposix.h'.
* win32-diffs: Updated.
2001-04-10 Ruslan Ermilov <ru@FreeBSD.org>
Added skeleton macro for defunct macros.
Updated documentation.
When inside displays, an empty input line warning should be
suppressed. If another macro call is put inside a display,
all subsequent empty lines found in that display caused a
warning to be emitted.
* tmac/doc.tmac (doc-defunct-macro): New macro.
(Db, Ds, Ex, Or, Sf): Reimplemented using this macro.
(doc-restore-global-vars): Fixed typo.
(doc-empty-line): Check the `doc-display-depth' register to
determine whether we are inside display or not.
* tmac/doc-common: Removed `Or' and `Sf' registers.
Moved obsolete `Ds' macro to doc.tmac.
* tmac/groff_mdoc.man: Bump document date.
Document `.Vt' under ``Variable Types''.
Removed documentation for obsolete `.Or' macro.
2001-04-10 Werner LEMBERG <wl@gnu.org>
* NEWS: Updated.
* doc/groff.texinfo: Many fixes, additions, clarifications, etc.
2001-04-10 Bruno Haible <haible@clisp.cons.org>
* src/devices/grodvi/dvi.cc (main): Accept --help and --version.
(usage): Add stream argument. Don't exit.
* src/devices/grohtml/post-html.cc (main): Accept --help and --version.
Write --version output to stdout, not stderr.
(usage): Add stream argument. Don't exit.
* src/devices/grohtml-old/html.cc (main): Accept --help and --version.
(usage): Add stream argument. Don't exit.
* src/devices/grolbp/lbp.cc (long_options): Use symbolic getopt.h
constants.
(usage): Add stream argument. Don't exit.
(main): Write --help output to stdout, not stderr.
* src/devices/grolj4/lj4.cc (main): Accept --help and --version.
(usage): Add stream argument. Don't exit.
* src/devices/grops/ps.cc (main): Accept --help and --version.
(usage): Add stream argument. Don't exit.
* src/devices/grotty/tty.cc (main): Accept --help and --version.
(usage): Add stream argument. Don't exit.
* src/preproc/eqn/main.cc (usage): Add stream argument. Don't exit.
(main): Accept --help and --version.
* src/preproc/grn/main.cc (usage): Add stream argument. Don't exit.
(main): Accept --help and --version.
* src/preproc/html/pre-html.cc (usage): Add stream argument.
(scanArguments): Accept --help and --version.
* src/preproc/pic/main.cc (usage): Add stream argument. Don't exit.
(main): Accept --help and --version.
* src/preproc/refer/refer.cc (main): Accept --help and --version.
(usage): Add stream argument. Don't exit.
* src/preproc/soelim/soelim.cc (usage): Add stream argument. Don't
exit.
(main): Accept --help and --version.
* src/preproc/tbl/main.cc (usage): Add stream argument. Don't exit.
(main): Accept --help and --version.
* src/roff/groff/groff.cc (main): Accept --help and --version.
(synopsis): Add stream argument.
(help): Write --help output to stdout, not stderr.
(usage): Add stream argument. Don't exit.
* src/roff/grog/grog.pl: Accept --help and --version.
(help): New sub.
* src/roff/grog/grog.sh: Accept --help and --version.
* src/roff/nroff/nroff.sh: Accept --help and --version.
* src/roff/troff/input.cc (USAGE_EXIT_CODE): Remove macro.
(usage): Add stream argument. Don't exit.
(main): Accept --help and --version.
* src/utils/addftinfo/addftinfo.cc (main): Accept --help and --version.
(usage): New function with stream argument, doesn't exit.
* src/utils/hpftodit/hpftodit.cc (main): Accept --help and --version.
(usage): New function with stream argument, doesn't exit.
* src/utils/indxbib/indxbib.cc (main): Accept --help and --version.
(usage): Add stream argument. Don't exit.
* src/utils/lkbib/lkbib.cc (usage): Add stream argument. Don't exit.
(main): Accept --help and --version.
* src/utils/lookbib/lookbib.cc (usage): Add stream argument. Don't
exit.
(main): Accept --help and --version.
* src/utils/pfbtops/pfbtops.c (usage): Add stream argument. Don't exit.
(main): Accept --help and --version.
* src/utils/tfmtodit/tfmtodit.cc (main): Accept --help and --version.
(usage): Add stream argument. Don't exit.
2001-04-10 Ruslan Ermilov <ru@freebsd.org>
Fix indentation in SYNOPSIS.
Updated to include changes of latest BSD mdoc version (basically,
the only change is that `.Fn' and `.Fc' put a final semicolon after
a function declaration in the SYNOPSIS section).
* tmac/doc.tmac (doc-in-synopsis-count): Replaced with ...
(doc-in-synopsis-section): New variable. Updated all related
functions.
(doc-indent-synopsis-active): New register.
(Nd, Fn, Fo): Use it.
(Cd): It requires manipulation of \n[doc-indent-synopsis] so that
`.Cd' with long argument line produces indented wrapped lines.
Also, the misplaced `.nop \*[doc-Nm-font]\c'' caused extra
undesirable line break to be output.
(doc-do-func-decl, Nm, Vt, Fn, Fo): Remove extraneous calls to
`.rs'.
(Fn, Fc): Add final `;' to output.
(doc-save-global-vars, doc-restore-global-vars): Updated.
* tmac/doc-common: Remove `Ex' register.
Updated.
* tmac/doc-ditroff, tmac/doc-nroff, tmac/doc-syms: Updated
copyright.
2001-04-06 Ruslan Ermilov <ru@freebsd.org>
* tmac/doc.tmac (Cd): Simplify code.
* tmac/groff_mdoc.man: Document some behaviour of `Cd' request.
2001-04-06 Werner LEMBERG <wl@gnu.org>
Implement continuous underlining for nroff mode. To do that, a new
request in the ditroff language has been added: `x u N' (N is 0
or 1).
\X and \Y are now transparent to end-of-sentence recognition.
* src/include/printer.h (printer): Add `type' parameter to `special'
method.
* src/libs/libdriver/printer.cc (printer::special): Updated.
* src/libs/libdriver/input.cc (do_file): Handle `x u N'.
* src/devices/dvi/dvi.cc (dvi_printer::special): Handle only
specials of type `p'.
* src/devices/grohtml/post-html.cc (html_printer::special): Ditto.
* src/devices/grohtml-old/html.cc (html_printer::special): Ditto.
* src/devices/grops/ps.cc (ps_printer::special): Ditto.
* src/devices/grotty/tty.cc: Add new enum CU_MODE.
(glyph::order): New method.
(tty_printer::add_char): Use it.
(tty_printer::special): New method.
(tty_printer::end_page): Implement it.
* src/roff/troff/node.h (special_node): Add `no_init_string' member.
* src/roff/troff/node.cc (special_node::special_node): Add parameter
to set `no_init_string'.
(special_node::tprint_start): Use it.
(special_node::same, special_node::copy): Updated.
(special_node::ends_sentence): New method.
(troff_output_file::start_special): Add parameter to include
inititialization of special conditionally.
* src/roff/troff/env.h (environment): New member `underline_spaces'.
* src/roff/troff/env.cc (do_underline_special): New function.
(environment::set_font): Use it.
(do_underline): Use it. This was `underline()'.
(underline): Call `do_underline()'.
(continuous_underline): New function which calls `do_underline()'.
(environment::newline): Use `do_underline_special()'.
(init_env_requests): Updated.
* NEWS, man/troff_out.man: Updated.
2001-04-06 Bruno Haible <haible@clisp.cons.org>
* font/devutf8/R.proto: Fix code of 'shc'.
2001-04-06 Ruslan Ermilov <ru@freebsd.org>
Many fixes. Diag lists can now be nested also; additionally,
`-compact' and `-offset' are supported.
* tmac/doc.tmac (doc-have-indent): Replaced with ...
(doc-list-have-indent-stackXXX): A new register stack.
(doc-have-diag-list): Removed.
(Bl): Use `doc-list-have-indent-stackXXX'.
(El): Updated.
(doc-diag-list): Use `doc-compact-list-stackXXX'.
(doc-tag-list): Use `doc-list-have-indent-stackXXX'.
(doc-set-vertical-and-indent): Ditto.
(doc-next-list-depth): Removed.
(doc-increment-list-stack): Updated.
(doc-decrement-list-stack): Use `doc-list-depth' instead of
`doc-next-list-depth'.
(doc-end-list, doc-end-column-list): Don't use
`doc-increment-list-stack'.
(doc-set-column-tab): Don't use `doc-list-offset-stackXXX'.
(doc-save-global-vars, doc-restore-global-vars): Updated.
* tmac/doc-common: Updated.
* tmac/groff_mdoc.man: Updated.
* NEWS: Fix typo.
2001-04-02 Werner LEMBERG <wl@gnu.org>
* src/devices/grotty/grotty.man: Fix grammatical error.
2001-03-30 Ruslan Ermilov <ru@freebsd.org>
Remove .Ld from mdoc package; replace it with special handling of
`...'.
* tmac/doc-common: Remove `Ld' register.
Uncomment `doc-volume-ds-*' strings.
Remove `doc-operating-system-default'.
(Os): Updated.
* tmac/doc-syms (Ld): Removed.
* tmac/doc.tmac (doc-parse-args, doc-parse-arg-vector): Handle
`...' specially.
* NEWS: Updated.
* tmac/groff_mdoc.man: Many fixes and updates.
2001-03-29 Werner LEMBERG <wl@gnu.org>
* tmac/troffrc-end: Protect data with `.do'. Reported by T. Kurt
Bond <tkb@tkb.mpl.com>.
* tmac/www.tmac: Save compatibility mode.
2001-03-28 Ruslan Ermilov <ru@freebsd.org>
* tmac/groff_mdoc.man: Many fixes.
2001-03-28 Werner LEMBERG <wl@gnu.org>
* src/preproc/soelim/soelim.man: Document that `.<whitespace>so'
isn't recognized.
2001-03-27 Werner LEMBERG <wl@gnu.org>
* tmac/an-old.tmac (TP, an-do-tag): Reduce line length while in
diversion. This fixes overlong tags.
2001-03-26 Werner LEMBERG <wl@gnu.org>
* doc/groff.texinfo: Fixed and improved documentation of fonts.
* tmac/doc-syms: Fix error messages.
* tmac/an-old.tmac: Remove incorrect double backslashes.
2001-03-24 Ruslan Ermilov <ru@freebsd.org>
* tmac/Makefile.sub: Strip mdoc.local also
* tmac/strip.sed: Fixed.
2001-03-24 Werner LEMBERG <wl@gnu.org>
* tmac/doc-nroff, tmac/doc-ditroff: Implement -rSxx switch for
selecting the font size.
* tmac/groff_mdoc.man, NEWS: Document it.
2001-03-23 Werner LEMBERG <wl@gnu.org>
* src/roff/troff/div.cc (save_vertical_space): Add default argument
to `sv' request.
* src/roff/troff/env.cc (family_change): Make `.fam' accept no
argument to restore previous font family.
* src/roff/troff/troff.man, man/groff.man, NEWS: Updated.
* doc/groff.texinfo: More fixes and additions (mainly for font
manipulating commands).
* tmac/groff_mdoc.reference.man: Small updates and renamed to ...
* tmac/groff_mdoc.man: This. The quick reference has been removed.
* tmac/Makefile.sub, NEWS: Updated.
2001-03-23 Werner LEMBERG <wl@gnu.org>
Replaced mdoc implementation. The new version is `state of the
art', using almost all new features of groff 1.17 -- it won't run
with older versions.
* tmac/doc.tmac: Completely rewritten.
* tmac/doc-common: Ditto.
* tmac/doc-nroff: Ditto.
* tmac/doc-ditroff: Ditto.
* tmac/doc-syms: Ditto.
* tmac/mdoc.local: New file.
* tmac/groff_mdoc.samples.man: Replaced with ...
* tmac/groff_mdoc.reference.man: New file, covering mdoc completely.
* tmac/strip.sed: Updated.
* tmac/Makefile.sub: Updated.
* INSTALL: Updated.
* tmac/groff_man.man: Add `man.local' to the FILES section.
2001-03-22 Werner LEMBERG <wl@gnu.org>
* doc/groff.texinfo: Added many @noindent.
Replaced @end_Example -> @endExample.
Added info whether registers are r/o.
Many other additions and fixes.
2001-03-21 Werner LEMBERG <wl@gnu.org>
* doc/groff.texinfo: Added macro @Var (and some hacks due to bugs
in makeinfo of texinfo 4.0) to be used in @Def* macros.
Improved @Def* macros: Now the exact syntax of request, register,
and escapes is shown.
Added macros for parentheses and brackets to be used in @Def*.
Many fixes and improvements of the documentation.
2001-03-20 Werner LEMBERG <wl@gnu.org>
* doc/groff.texinfo: Added new index: `st' (for strings).
Added macros @Defstr(x).
Added macro @Example (adding @group).
Other minor improvements.
2001-03-19 Werner LEMBERG <wl@gnu.org>
* doc/groff.texinfo: Added two new indices: `es' (for escapes) and
`rq' for requests. `fn' is no longer used.
Added macros @Defreq(x), @Defreg(x), and @Defesc(x).
Removed @Deffn(x).
* tmac/an-old.tmac (an-p-footer): If `cR' is set, replace page
number with name of man page.
2001-03-19 Larry Kollar <kollar@alltel.net>
* doc/groff.texinfo: Complete revision. Added many @Deffn to gain
consistency.
2001-03-19 Werner LEMBERG <wl@gnu.org>
* man/groff_font.man: Document `prepro', `postpro', and `print'.
* src/roff/groff/groff.man: Improve documentation of `-l' and `-L'.
* src/devices/grohtml/grohtml.man: Fixing typos.
2001-03-19 Gaius Mulley <gaius@glam.ac.uk>
* tmac/s.tmac (@IP): Pass `.ip' html tag.
* tmac/groff_mwww.man: Remove .LINE macro
* tmac/www.tmac (LINE): Add `.ti'.
* src/devices/grohtml/post-html.cc (html_printer): New member
`indent'.
(html_printer::emit_raw): Use it.
(html_printer::do_linelength): Ditto.
(html_printer::do_pageoffset): Ditto.
(html_printer::do_indentation): Ditto.
(html_printer::do_tempindent): Ditto.
(html_printer::do_break): Ditto.
(html_printer::begin_page): Ditto.
(html_printer::do_indentedparagraph): New function.
(html_printer::troff_tag): Handle `.ip'.
* src/devices/grohtml/html-text.cc (html_text::issue_table_begin):
Add `<td width=...>' handling.
(html_text::do_table): Add parameter.
(html_text::do_indent): Updated.
* src/devices/grohtml/html-text.h: Updated.
2001-03-16 Gaius Mulley <gaius@glam.ac.uk>
Introduced simple html tables to implement indentation.
* src/devices/grohtml/html.h (word, word_list): New structures.
(simple_output): Use it.
* src/devices/grohtml/post-html.cc: Add `INDENTATION'.
(html_printer): Improve indentation handling.
(html_printer::emit_raw): Set `in_table' element. Handle
indentation if set.
(html_printer::write_header): Move conditional downwards.
Don't allow whitespace in tags.
(html_printer::do_linelength): Handle line length and indentation
conditionally.
(html_printer::do_pageoffset): Handle indentation conditionally.
(html_printer::do_indentation): Ditto.
(html_printer::do_tempindent): New function member.
(html_printer::do_fill): Take care of indentation.
(html_printer::do_flush): Finish table.
(html_printer::do_links): Ditto.
(html_printer::do_break): New function for handling `.br' and `.ti'.
(html_printer::troff_tag): Use it.
Handle `.ti'.
(html_printer::flush_globs): Fix.
(html_printer::flush_page): Finish table.
(html_printer::html_printer): Fix error message. Set up
`linelength'.
(html_printer::add_to_sbuf): Remove special handling of character
code 255.
(to_unicode): Remove `stop()'.
(html_printer::write_title): Cleanup.
(html_printer::begin_page): Use `put_string()'. Handle indentation.
(html_printer::~html_printer): Flush text and end the line.
Use `put_string()'.
* src/devices/grohtml/html_text.h: Add more *_TAG enum values.
* src/devices/grohtml/html_text.cc (html_text::end_tag): Fix
emission of tags.
(html_text::start_tag): Disable newlines.
(html_text::table_is_void): New function.
(html_text::issue_table_begin): Ditto.
(html_text::issue_table_end): Ditto.
(html_text::push_para): Better table handling.
(html_text::do_indent): New function.
(html_text::do_table): Ditto.
(html_text::done_table): Ditto.
(html_text::do_tt): Handle PRE_TAG.
(html_text::is_in_table): New function.
(html_text::check_emit_text): Handle tables.
(html_text::do_emittext): Use `nl()'.
(html_text::do_para): Handle table.
(html_text::remove_def): New function.
* src/devices/grohtml/output.cc (word, word_list): Implement
methods.
(simple_output::end_line): Flush last word.
(simple_output::simple_comment): Ditto.
(simple_output::begin_comment): Recoded.
(simple_output::end_comment): Ditto.
(simple_output::comment_arg): Removed.
(simple_output::check_newline): Improve test and flush last word.
(simple_output::space_or_newline): Improved.
(simple_output::write_newline): Replaced with...
(simple_output::nl): This.
(simple_output::put_raw_char): Flush last word.
(simple_output::check_space): Removed.
(simple_output::put_translated_string): Ditto.
(simple_output::put_string): Simplified.
(simple_output::put_number): Updated.
(simple_output::put_float): Ditto.
(simple_output::put_symbol): Removed.
(simple_output::enable_newlines): Add `check_newline()'.
(simple_output::flush_last_word): New function.
* src/roff/troff/enc.cc (no_fill): Remove call to add_html_tag().
* src/roff/troff/div.cc (page_offset): Add call to add_html_tag().
* tmac/s.tmac (@PP, @IP): Add html conditional code.
* tmac/an-old.tmac (TP): Ditto.
2001-03-09 Ruslan Ermilov <ru@freebsd.org>
* mdate.sh: Make it POSIX compliant.
2001-03-09 Werner LEMBERG <wl@gnu.org>
Added the `return' request to end a macro immediately. It simply
pops iterators from the input stack until a macro iterator is found.
* src/roff/troff/input.cc (input_iterator::is_macro,
macro_iterator::is_macro): New member.
(input_return_boundary): New class to signal an immediate return
to while_request().
(input_stack::add_return_boundary, input_stack::is_return_boundary):
New functions.
(input_stack::clear): Use it.
(input_stack::pop_macro): New function.
(while_request): Use `is_return_boundary()'.
(return_macro_request): New function.
(init_input_requests): Use it.
* src/roff/troff/TODO: Updated.
* NEWS, src/roff/troff/troff.man, man/groff.man: Document it.
2001-03-08 Werner LEMBERG <wl@gnu.org>
* src/roff/troff/input.cc (input_iterator::is_boundary): Minor
cleanup.
2001-03-07 Werner LEMBERG <wl@gnu.org>
Make `\B' more rigid.
* src/roff/troff/number.cc (parse_expr, parse_term): Add `rigid'
parameter.
(get_number_rigidly): New function.
* src/roff/troff/input.cc (do_expr_test): Use it.
* src/roff/troff/token.h: Updated.
* src/roff/troff/request.h: Fix typo (init_html_request ->
init_markup_request).
2001-03-04 Gaius Mulley <gaius@glam.ac.uk>
Fixed grohtml handling of any named glyph for glyph indexes < 0x80.
Cosmetic changes to `.html-begin', `.html-end', `.html-image' which
are now `.begin', `.end', `.image'.
* src/devices/grohtml/post-html.cc: Adding UNICODE_DESC_START.
(html_printer::add_to_sbuf): Changing type of `code' parameter.
Use add_char_to_sbuf().
(to_unicode): New function.
(char_translate_to_html): Changing type of `ch' parameter.
Use `to_unicode()'.
(html_printer::~html_printer): Comment out doctype string.
* src/preproc/html/pre-html.cc (write_end_image): Use `.end'
instead of `.html-end'.
(write_start_image): Use `.begin' and `.image' instead of
`.html-begin' and `.html-image'.
* src/roff/troff/input.cc: Rename `html_level' to `begin_level'.
(html_begin): Renamed to ...
(begin): This.
(html_end): Renamed to ...
(end): This.
(html_image): Renamed to ...
(image): This.
(init_html_requests): Renamed to ...
(init_markup_requests): This.
* tmac/www.tmac: Updated.
2001-02-28 Bram <bram@avontuur.org>
* src/libs/libgroff/font.cc (font_widths_cache): Fixing syntax of
constructor.
2001-02-26 David Leonard <david.leonard@csee.uq.edu.au>
* doc/meref.me: Fixing some typos.
2001-02-16 Werner LEMBERG <wl@gnu.org>
* src/roff/troff/node.cc (space_node::get_hyphenation_type): New
method. Return `HYPHEN_MIDDLE' if it was `\:'.
* src/roff/troff/node.h: Updated.
2001-02-17 Ruslan Ermilov <ru@FreeBSD.org>
* tmac/groff_tmac.man: Fix typo.
2001-02-16 Werner LEMBERG <wl@gnu.org>
Fixing a bug which prevented proper end-of-sentence recognition
between an `unformatted' box and the following text. As a
consequence, vertical line distances are no longer preserved in
boxes after a call to `.unformat' -- because boxes aren't
line-oriented (contrary to diversions), this doesn't make sense
anyway.
* src/roff/troff/node.cc (*node::set_unformat_flag): Add return
value.
(vertical_size_node::set_unformat_flag): New method.
* src/roff/troff/node.hh: Updated.
* src/roff/troff/input.cc (word_space_node::reread,
hmotion_node::reread): Reset `unformat' flag after usage.
(unformat_macro): Append only if `set_unformat_flag()' returns
non-zero.
* src/roff/troff/troff.man: Updated.
2001-02-15 Werner LEMBERG <wl@gnu.org>
* src/roff/troff/troff.man, NEWS, man/groff.man: Improved
documentation of `asciify' and `unformat' requests.
2001-02-13 Werner LEMBERG <wl@gnu.org>
Redesigned the `unformat' request. It is no longer connected with
`asciify' but rather uses new `reread()' methods if the `unformat'
flag is set. Additionally, the handling of space characters after
unformatting has been fixed so that they retain their width.
* src/roff/troff/node.h (width_list): New structure to store
original widths of spaces.
(node): Added `unformat' member.
Replaced `num_spaces' variable with `orig_width' list.
* src/roff/troff/node.cc (*node::asciify,
asciify_reverse_node_list): Removed `unformat_only' flag and related
code.
(word_space_node::asciify, word_space_node::word_space_node): Use
`orig_width'.
(word_space_node::~word_space_node): New destructor.
(word_space_node::copy): Updated to handle `orig_width'.
(hmotion_node::copy, unbreakable_space_node::copy): Updated.
(*node::merge_space): Update `orig_width' list if necessary.
(*node::set_unformat_flag): New methods to set the `unformat' flag.
* src/roff/troff/enc.cc (environment::space_newline): Use
`width_list'.
(environment::space): Added method to handle space width and
sentence space width as parameters. Use `width_list'.
(environment::make_tab_node): Updated.
* src/roff/troff/env.h: Updated.
* src/roff/troff/input.cc (word_space_node::reread,
unbreakable_space_node::reread, hmotion_node::reread): New methods
to handle nodes specially if `unformat' flag is set.
(do_asciify_macro): Renamed back to ...
(asciify_macro): This.
(unformat_macro): New implementation to simply set the `unformat'
flag.
* MORE.STUFF: Added more info about deroff.
2001-02-08 Werner LEMBERG <wl@gnu.org>
* src/roff/troff/node.h (unbreakable_space_node, hmotion_node,
space_char_hmotion_node, overstrike_node): Add `get_hyphen_list()'
and `add_self()' methods to avoid hyphenation. For example, the
hyphen list for `foo\0\0bar' was `foobar', causing insertion of a
soft hyphen after `foo'. Now the hyphen list is correctly
`foo<ignore><ignore>bar'.
2001-02-05 Yoshiteru Kageyama <yt-kage@cb3.so-net.ne.jp>
* tmac/groff_tmac.man: Fix `BIR' macro.
2001-02-04 Werner LEMBERG <wl@gnu.org>
A new escape sequence `\:', inserting a zero-width break point.
* src/roff/troff/input.h: Adding `ESCAPE_COLON'.
* src/roff/troff/input.cc (get_copy, token::next, asciify):
Implement it.
* src/roff/troff/node.h (node): Add `is_escape_colon()' virtual
method.
(space_node): Add `was_escape_colon' member. Add `is_escape_colon()'
and `asciify()' methods.
* src/roff/troff/node.cc (space_node::space_node): Updated.
(space_node::asciify): Handle `was_escape_colon'.
* NEWS, src/roff/troff/troff.man, man/groff.man: Document it.
Handle `\~' similar to other comparable requests.
* src/roff/troff/input.cc (process_input_stack): Remove now obsolete
label.
(token::next): Move creation of an unbreakable_space_node to...
(token::add_to_node_list): Here.
Fix a bug which sometimes prevented hyphenation of words connected
with `\~' or `\ ' (and other escape sequences handled as
TOKEN_NODE). This also fixes a hyphenation problem with boxes
(after a call to the `unformat' request).
* src/roff/troff/env.h (environment::possibly_break_line,
environment::hyphenate_line): Introducing `start_here' parameter.
* src/roff/troff/env.cc (environment::space_newline,
environment::space): Use it.
(environment::possibly_break_line, environment::hyphenate_line):
Implement it.
* src/roff/troff/input.cc (process_input_stack): Use it.
* src/roff/troff/node.h (unbreakable_space_node, hmotion_node,
space_char_hmotion_node, overstrike_node): Add
`get_hyphenation_type()' method.
* src/roff/troff/node.cc (break_char_node::asciify): Don't asciify
if `unformat_only' is active.
2001-01-30 Werner LEMBERG <wl@gnu.org>
Implemented new read-only number register `.linetabs' which
returns 1 if in line-tabs mode, 0 otherwise.
* src/roff/troff/env.h (environment): Add get_line_tabs() member.
* src/roff/troff/env.cc (get_line_tabs): New function.
(init_env_requests): Use it.
* NEWS, src/roff/troff/troff.man, man/groff.man: Document it.
* VERSION, REVISION: Changing to 1.17.0.
2001-01-28 Werner LEMBERG <wl@gnu.org>
Fixed a bug which prevented hyphenation of words which are finished
with `\)'.
* src/roff/troff/token.h (token): Add enum type
`TOKEN_TRANSPARENT_DUMMY' and method `transparent_dummy()'.
* src/roff/troff/input.cc (token::next, token::description,
get_line_arg, token::add_to_node_list, token::process): Use it.
2001-01-27 Werner LEMBERG <wl@gnu.org>
* src/roff/troff/div.h (diversion): Add `saved_prev_line_interrupted'.
* src/roff/troff/div.cc (do_divert): Use it.
* src/roff/troff/input.cc (asciify): Add ESCAPE_RIGHT_PARENTHESIS.
2001-01-25 Werner LEMBERG <wl@gnu.org>
Adding the `linetabs' request. If set, tab distances are not
computed relative to the input line but relative to the output line.
* src/roff/troff/env.h (environment): New member `line_tabs'.
* src/roff/troff/env.cc (line_tabs_request): Implement request.
(environment::environment, environment::copy): Updated.
(environment::distance_to_next_tab): Use `line_tabs'.
(init_env_requests): Register request.
* src/roff/troff/troff.man, man/groff.man, NEWS: Document it. Other
fixes.
2001-01-24 Werner LEMBERG <wl@gnu.org>
Introducing a new read-only register `.int' which is set to a
positive value if the last output line is interrupted (i.e., if it
contains `\c').
* src/roff/troff/env.cc (init_env_requests): Add it.
* NEWS, src/roff/troff/troff.man, man/groff.man: Document it.
2001-01-23 Gaius Mulley <gaius@glam.ac.uk>
* tmac/mwww.tmac: Call `www.tmac', not `arkup.tmac'.
* src/preproc/html/pre-html.cc (findPrefix): New function which
generates the troff executable name via the system prefix.
* src/preproc/eqn/main.cc: Modified warning message.
2001-01-23 Werner LEMBERG <wl@gnu.org>
troff's `box' and `boxa' requests didn't preserve temporary
indentation.
* src/roff/troff/div.h (diversion): Add `saved_saved_indent' and
`saved_target_text_length' members.
* src/roff/troff/div.cc (do_divert): Use them.
Tabs (but not yet leaders and fields) are now handled correctly by
`asciify' request.
* node.h (hmotion_node): Add field `was_tab'.
* env.cc (environment::make_tab_node): Set it.
* node.cc (hmotion_node::copy, hmotion_node::asciify): Use it.
Added new request `unformat' which will, contrary to `asciify',
preserve font information after unformatting (i.e., only nodes
dealing with horizontal space are converted back to input
characters).
* input.cc (asciify_macro): Renamed to ...
(do_asciify_macro): this, having a new parameter `unformat_only'.
(asciify_macro, unformat_macro): New; using do_asciify_macro.
(init_input_requests): Added `unformat'.
* node.cc (*_node::asciify), asciify_reverse_node_list: Added
parameter to control asciification process.
* node.h (*_node::asciify): Ditto.
* NEWS, src/roff/troff/troff.man, man/groff.man: Document it.
2001-01-20 Werner LEMBERG <wl@gnu.org>
* doc/groff.texinfo: Minor improvement of `.in' documentation.
2001-01-18 Werner LEMBERG <wl@gnu.org>
* tmac/ps.tmac: Remove call of psold.tmac.
* tmac/psold.tmac: Comment updated.
* tmac/psnew.tmac: Removed since no longer needed.
* tmac/Makefile.sub, NEWS, src/devices/grops/grops.man: Updated.
* font/devutf8/R.proto: Adding `shc' glyph.
* font/devutf8/NOTES: Updated.
* test-groff: Updated.
2001-01-15 Gaius Mulley <gaius@glam.ac.uk>
First cut of the new html device driver. Changes to pre-html and
the new grohtml are too numerous to be documented here.
Stuff related to `html' has been renamed to `html-old' and `html2'
stuff has been renamed to `html' (including directories). The new
html device driver is therefore invoked as `-Thtml'.
Added new `\O' escape to suppress output (needed by html driver).
Added functions and code to pass info about input-level commands
(`.in', `.fl', etc.) to html driver.
Three new functions (.html-begin, .html-end, and .html-image) for
better html handling: `html-begin' will execute the remaining line
if at the outermost nesting level, increasing an internal counter.
`html-end' does the same but decreases the internal counter.
`html_image' puts its arguments into a special node (suppress_node)
to define an image region.
The `output' request has been removed.
* tmac/html-tags.tmac: Removed.
* tmac/arkup.tmac: Updated and renamed to ...
* tmac/www.tmac: New file.
* tmac/markup.tmac Updated and renamed to ...
* tmac/mwww.tmac: New file.
* tmac/Makefile.sub: Updated.
* tmac/an-old.tmac: Updated.
* tmac/eqnrc: Updated.
* tmac/groff_man.man
* tmac/groff_markup.man: Updated and renamed to ...
* tmac/groff_mwww.man: New file.
* tmac/groff_tmac.man: Updated.
* tmac/html-old.tmac: Updated and Renamed from html.tmac.
* tmac/html.tmac: Updated and renamed from html2.tmac.
* tmac/pspic.tmac: Updated html support.
* tmac/s.tmac: Added html output support.
* tmac/troffrc, tmac/troffrc-end: Updated.
* Makefile.in, doc/Makefile: Updated.
* doc/groff.texinfo: Added info about new `\O' escape.
* doc/homepage.ms: Use `MAILTO' macro.
* font/devhtml/DESC.proto: Add `C' font.
* font/devhtml/Makefile.sub: Updated.
* font/devhtml/R.proto: Minor fixes.
* font/devhtml-old/Makefile.sub: Updated.
* src/devices/grohtml-old/Makefile.sub: Updated.
* src/libs/libdriver/printer.cc (printer::get_font_from_index): New
method.
* src/libs/libgroff/htmlindicate.cc (html_begin_suppress,
graphic_start): Add `inline' parameter. Update.
(html_end_suppress, graphic_end): Update.
* src/include/html-strings.h: New file.
* src/include/htmlindicate.h: Comments updated.
* src/include/printer.h: Updated.
* src/preproc/eqn/main.cc (do_file, main): Updated.
* src/preproc/pic/troff.cc (troff_output::start_picture,
troff_output::finish_picture): Updated.
* src/preproc/tbl/main.cc (process_input_file): Updated.
* src/roff/groff/groff.cc (main): Updated.
Pass device arguments to predrivers also.
Use `ps' device for `eqn' preprocessor if `-Thtml' is given.
* src/roff/troff/env.h (environment): Updated.
New elements `need_eol' and `ignore_next_eol' (for html output).
* src/roff/troff/env.cc (environment::environment): Add initializers
for `need_eol' and `ignore_next_eol'.
(environment::add_html_tag_eol, environment::add_html_tag_tabs): New
functions.
(point_size, fill, no_fill, center, right_justify, line_length,
indent, temporary_indent, break_request, handle_tab): Use
`add_html_tag()'.
(set_tabs): Use `add_html_tag_tabs()'.
(environment::add_html_tag): Updated.
(environment::do_break): Updated.
* src/roff/troff/div.cc (space_request, flush_output): Use
`environment::add_html_tag()'.
* src/roff/troff/input.cc: Updated.
New variable `html_level' to indicate nested `html-begin' requests.
(file_iterator::fill): Use `environment::add_html_tag_eol()'.
(non_interpreted_char_node, token_node, non_interpreted_node): Add
`force_tprint()' method.
(token::next): Handle `\O'.
(do_suppress): Implement it.
(html_begin, html_end, html_image): New functions.
(init_output_requests): Renamed to ...
(init_html_requests): this.
(main): Use it.
(macro::append_str, macro::append_unsigned, macro::append_int): New
methods.
New variable `output_low_mark_miny' to limit minimal value of y.
(reset_output_registers): Use it.
(output_request): Removed.
(get_output_registers): New function.
* src/roff/troff/node.h (node): Make `force_tprint()' virtual.
(*_node): Added `force_tprint()' if necessary.
(special_node): New elements `tf' and `get_tfont()'.
(suppress_node): New class.
* src/roff/troff/node.cc:
New global variables `image_no' and `suppress_start_page'.
(real_output_file): New method `is_on()'.
(troff_output_file): New method `start_special(tfont)'.
(troff_output_file::really_print_line): Use `tprint' conditionally.
(real_output_file::print_line): Updated.
(real_output_file::on): Updated.
(*_node): Added `force_tprint()'.
(special_node::special_node): Initializer updated.
(special_node::same, special_node::copy, special_node::tprint_start):
Updated.
(get_reg_int, get_reg_str): New functions.
(suppress_node::*): New methods.
New global variables last_position, last_image_filename;
(min): New inline function.
* src/roff/troff/reg.h, src/roff/troff/request.h,
src/roff/troff/troff.h: Updated.
2001-01-13 Werner LEMBERG <wl@gnu.org>
* NEWS, src/roff/troff/troff.man, doc/groff.texinfo: Fix
documentation of `asciify' request.
2001-01-12 Werner LEMBERG <wl@gnu.org>
* src/roff/troff/input.cc: Move definition of special characters
like `ESCAPE_TILDE' to ...
* src/roff/troff/input.h: New file.
* src/roff/troff/Makefile.sub (HDRS): Add it.
Extending the .asciify request to `unformat' space characters also.
* src/roff/troff/node.h (word_space_node): Add `num_spaces' element
to count input space characters.
Update constructors to take care of it.
* src/roff/troff/node.cc (space_char_hmotion_node::asciify): Use
`ESCAPE_SPACE' instead of normal space.
(word_space_node::asciify): New method.
(unbreakable_space_node::asciify): New method.
(word_space_node::merge_space): New method.
* src/roff/troff/env.cc (environment::space_newline,
environment::space): Add code to initialize `num_spaces' (using the
constructor of `word_space_node').
* NEWS, src/roff/troff/troff.man, man/groff.man, doc/groff.texinfo:
Document it.
2001-01-09 Werner LEMBERG <wl@gnu.org>
* man/groff_char.man: Use table header traps only conditionally.
2001-01-09 Bjarni Ingi Gíslason <bjarniig@hi.is>
* man/groff_char.man: Add `ý' and `Ý' to the `acute' group.
2001-01-08 Werner LEMBERG <wl@gnu.org>
Introducing the `box' and `boxa' requests which are similar to
`di' resp. `da' but omitting a partially filled line (which is
restored after ending the diversion).
* src/roff/troff/div.h (diversion): Add elements to save partially
filled line.
* src/roff/troff/div.cc (do_divert): Add parameter `boxing' to save
partially filled line.
(divert, divert_append): Updated.
(box, box_append): New functions.
(init_div_requests): Use them.
* src/roff/troff/env.h (environment): do_divert() is now a friend.
* NEWS, src/roff/troff/troff.man, man/groff.man: Document it.
* doc/groff.texinfo: Fix documentation of `lf' request.
2000-12-25 Werner LEMBERG <wl@gnu.org>
* src/roff/troff/troff.man, NEWS: Document `writem' request.
2000-12-21 Werner LEMBERG <wl@gnu.org>
Ignore `ss' request if in compatibility mode.
* src/roff/troff/input.cc: Make `compatible_flag' non-static.
* src/roff/troff/env.h: Added extern `compatible_flag' declaration.
* src/roff/troff/env.cc (space_size): Use it.
* doc/groff.texinfo, src/roff/troff/troff.man: Fix documentation of
`ss' request in nroff mode.
* tmac/an-old.tmac: Fixed some serious bugs introduced with latest
changes.
2000-12-15 Ruslan Ermilov <ru@FreeBSD.org>
* tmac/troffrc, tmac/troffrc-end: Convert tmac.* to *.tmac.
2000-12-13 Werner LEMBERG <wl@gnu.org>
* src/preproc/eqn/Makefile.sub (MAN1): Added neqn.man.
* src/preproc/eqn/neqn.man: Small fixes and additions.
2000-12-13 Ruslan Ermilov <ru@FreeBSD.org>
* src/utils/addftinfo/addftinfo.man, src/devices/grops/grops.man:
Fixing typo.
* src/preproc/eqn/neqn.man: New file.
* src/preproc/tbl/table.cc (table::print): Fix `indent cannot be
negative' warning.
* tmac/e.tmac: Add `T&' macro.
Fix `indent cannot be negative' warning.
* tmac/s.tmac: Fix `indent cannot be negative' warning.
2000-12-07 Werner LEMBERG <wl@gnu.org>
* src/include/lib.h: Replaced __ALPHA with __alpha symbol.
2000-12-06 Werner LEMBERG <wl@gnu.org>
* PROBLEMS: Added info about adding -lPW on HP-UX to satisfy the
`alloca' symbol .
* MORE.STUFF: Added info about deroff for djgpp.
* tmac/an-old.tmac, tmac/groff_man.man, doc/groff.texinfo, NEWS: Fix
documentation of -rcR switch.
2000-12-03 Werner LEMBERG <wl@gnu.org>
* tmac/an-old.tmac: Implementing the -rcR switch (similar to mdoc);
if -rcR=1 (which is now the default in nroff mode), a single, very
long page is created instead of multiple pages: All `ne' and `wh'
requests are put into conditionals; a new macro `an-end' is added to
be called with `em'.
Some other minor cleanups.
* NEWS, tmac/groff_man.man, doc/groff.texinfo: Updated.
2000-12-02 Werner LEMBERG <wl@gnu.org>
Fixing a bug which prevented hyphenation in words followed
immediately by a TOKEN_NODE (e.g. `\ ', `\~', etc.).
* src/roff/troff/input.cc (process_input_stack <token::TOKEN_NODE>):
Adding possibly_break_line().
* src/roff/troff/env.h (environment): Make possibly_break_line()
public.
Make `\~' usable in .tr request.
* src/roff/troff/token.h (token_type): Add TOKEN_STRETCHABLE_SPACE.
(token): Add stretchable_space().
* src/roff/troff/input.cc (token::next, token::delimiter,
token::description, process_input_stack, do_translate,
add_to_node_list, token::process): Use it.
* src/roff/troff/node.h (node): Add fourth parameter to add_char()
for adjusting the space.
* src/roff/troff/node.cc (node::add_char): Implement it. Add code
for stretchable space.
* src/roff/troff/input.cc (token::add_to_node_list): Use it.
(make_node): Add code for stretchable space.
* src/roff/troff/env.cc (environment::add_char): Use it.
* src/roff/troff/input.cc: Add ESCAPE_TILDE special character.
(get_copy, token::next, transparent_translate, asciify): Use it.
* NEWS, src/roff/troff/troff.man, src/roff/troff/TODO,
doc/groff.texinfo: Updated.
* man/groff.man: Small reorderings.
2000-11-23 Werner LEMBERG <wl@gnu.org>
* NEWS: Fixes.
* src/preproc/eqn/main.cc (main): Use `config_macro_path' for -M
option.
* src/roff/troff/input.cc (main): Add `config_macro_path' and
`safer_macro_path' to -M option.
* src/roff/troff/troff.man: Fixes.
2000-11-22 Werner LEMBERG <wl@gnu.org>
Use safer path (except for config files) if -U isn't specified. Add
a special macro path (without home and current directory) for config
files. Add home directory to unsafe path for consistency. Don't
include the home directory in the font path.
* src/libs/libgroff/macropath.cc: Add `config_macro_path', change
`macro_path'.
* src/include/macropath.h: Add `config_macrp_path'.
* src/libs/libgroff/fontfile.cc: Fix font path.
* src/roff/troff/input.cc (process_startup_file): Use
`config_macro_path'.
(main): Select unsafe path if -U is given.
* src/preproc/eqn/main.cc (main): Fixing search path for
configuration file.
* src/preproc/eqn/eqn.man: Updated.
* src/roff/troff/troff.man, man/roff.man, tmac/groff_tmac.man:
Updated.
* src/preproc/grn/grn.man, src/devices/grodvi/grodvi.man,
src/devices/grohtml/grohtml.man, src/devices/grolbp/grplbp.man,
src/devices/grolj4/grolj4.man, src/devices/grops/grops.man,
src/devices/grotty/grotty.man: Updated.
* Makefile.in: Fix comments.
2000-11-17 Werner LEMBERG <wl@gnu.org>
* tmac/safer.tmac: Empty file added (again) for compatibility
reasons.
* tmac/Makefile.sub: Updated.
2000-11-16 Werner LEMBERG <wl@gnu.org>
* src/devices/grodvi/dvi.cc (main),
src/devices/grohtml2/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), src/preproc/eqn/main.cc (main), src/preproc/grn/main.cc
(main), src/preproc/html2/pre-html.cc (main),
src/preproc/pic/main.cc (main), src/preproc/refer/refer.cc (main),
src/preproc/soelim/soelim.cc (main), src/preproc/tbl/main.cc
(main), src/roff/groff/groff.cc (main), src/roff/troff/input.cc
(main), src/utils/hpftodit/hpftodit.cc (main),
src/utils/indxbib/indxbib.cc (main), src/utils/lkbib/lkbib.cc
(main), src/utils/lookbib/lookbib.cc (main),
src/utils/pfbtops/pfbtops.c (main), src/utils/tfmtodit/tfmtodit.cc
(main): Use stdout for -v.
* src/roff/groff/groff.cc (run_commands),
src/roff/groff/pipeline.c (run_pipeline): New parameter `no_pipe'
to make direct printing to stdout possible.
* src/roff/groff/pipeline.h: Updated.
* src/utils/afmtodit/afmtodit.pl: Add -v switch.
* src/utils/afmtodit/Makefile.sub (afmtodit): Use @VERSION@.
* src/utils/afmtodit/afmtodit.man: Updated.
* src/utils/addftinfo/addftinfo.cc (main): Add -v switch.
(version): New function.
(usage): Updated.
* src/utils/addftinfo/addftinfo.man: Updated.
* src/devices/*/*, src/preproc/*/*, src/roff/*/*, src/utils/*/*:
Fixing copyright dates.
* src/preproc/eqn/neqn.sh: Adding GROFF_BIN_PATH to path instead of
replacing it.
* src/devices/grolbp/lbp.cc (main): Use Version_string instead of
version_string.
* src/roff/nroff/Makefile.sub (nroff): Fix use of @VERSION@.
2000-11-15 Werner LEMBERG <wl@gnu.org>
In all programs, make -v return immediately with exit status 0 to
be compliant with the GNU standard.
* src/devices/grodvi/dvi.cc (main),
src/devices/grohtml2/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) src/preproc/eqn/main.cc (main), src/preproc/grn/main.cc
(main), src/preproc/html2/pre-html.cc (main),
src/preproc/pic/main.cc (main), src/preproc/refer/refer.cc (main),
src/preproc/soelim/soelim.cc (main), src/preproc/tbl/main.cc
(main), src/roff/groff/groff.cc (main), src/roff/troff/input.cc
(main): Implement it.
* NEWS: Updated.
* src/roff/groff/groff.cc (main): Add copyright notice. Add refer
and postprocessors to the -v option.
* src/roff/grog/grog.pl: Implement -v.
* src/roff/grog/Makefile.sub (grog): Use @VERSION@.
* src/roff/grog/grog.man, doc/groff.texinfo: Updated.
* src/roff/nroff/nroff.sh: Implement -v.
* src/roff/nroff/Makefile.sub (nroff): Use @VERSION@.
* src/roff/nroff/nroff.man: Updated.
* src/preproc/eqn/main.cc (main): Fix comment typo.
* MORE.STUFF: Added info about djgpp port of grap.
2000-11-14 Werner LEMBERG <wl@gnu.org>
* src/roff/grog/grog.{pl,sh}: Implemented -C switch for compatibility
mode (or rather, implemented non-compatibility mode).
* NEWS, src/roff/grog/grog.man, doc/groff.texinfo: Updated.
* src/roff/groff/groff.cc (main): Add BIN_PATH to PATH instead of
replacing it -- we don't find gxditview otherwise.
* NEWS, src/roff/groff/groff.man, doc/groff.texinfo: Updated.
* src/preproc/pic/depend: Removed. Unnecessary.
Implemented dummy keyword `solid' in pic for compatibility with
AT&T pic.
* lex.cc (lookup_keyword): Added `solid'.
* pic.y: Added SOLID with dummy rule.
* pic.cc, pic_tab.h: Regenerated.
* doc/pic.ms: Updated.
2000-11-13 Werner LEMBERG <wl@gnu.org>
For security reasons, don't use the current directory but the home
directory while searching and scanning troffrc and troffrc-end.
Similarly, replace the current directory with the home directory
in the font path.
* Makefile.in (fontpath, tmacpath): Remove current directory.
* src/libs/libgroff/searchpath.cc (search_path::search_path): Add
two parameters `add_home' and `add_current'.
(search_path::~search_path, search_path::command_line_dir,
search_path::open_file): Remove tests for `dirs' being zero.
* src/include/searchpath.h: Adjust.
* src/libs/libgroff/macropath.cc, src/include/macropath.h: Add
`safer_macro_path'.
* src/libs/libgroff/fontfile.cc: Adjust `font_path'.
* src/roff/troff/troff.h: Add `searchpath.h' and `mac_path'.
* src/roff/troff/input.cc: Use `mac_path', initialized with
`macro_path'.
(process_startup_file): Set `mac_path' to `safer_macro_path'.
* src/roff/troff/env.cc: Use `mac_path'.
* src/preproc/eqn/main.cc (main): Use `safer_macro_path'.
* NEWS, man/roff.man, src/roff/troff/troff.man,
src/roff/groff/groff.man, tmac/groff_tmac.man, arch/djgpp/README:
Updated.
2000-11-12 Werner LEMBERG <wl@gnu.org>
* src/include/lib.h: Don't include groff-getopt.h for OSF/1.
* aclocal.m4 (GROFF_SYS_ERRLIST): Do test in C, not in C++.
* configure.in: Fix typo in comment.
* configure: Regenerated.
* src/libs/libgroff/*, src/include/*, src/roff/troff/*: Fixing
copyright dates.
2000-11-08 Werner LEMBERG <wl@gnu.org>
Add system tmac directory (/usr/local/lib/groff/site-tmac).
* Makefile.in: Add $(libdir), $(libprogramdir), and $(systemtmacdir).
(uninstall_dirs): Add $(libdir), $(libprogramdir), and
$(systemtmacdir).
Use @libdir@.
* Makefile.comm (.man.n): Add @SYSTEMMACRODIR@.
* tmac/Makefile.sub (install_data): Create
$(systemtmacdir) and $(localtmacdir).
(uninstall_sub): Use $(systemtmacdir) for wrapper macros.
* man/roff.man, src/roff/troff/troff.man, src/roff/groff/groff.man,
NEWS, doc/groff.texinfo: Updated and minor fixes.
* Makefile.comm, Makefile.in: Added tmac_{s,an}_prefix stuff again.
* tmac/Makefile.sub: Added `wrap' stuff again, but installing into
$(systemtmacdir) since the wrapper files are platform-dependent.
2000-11-01 Werner LEMBERG <wl@gnu.org>
* doc/groff.texinfo: Fix typo.
2000-10-26 Werner LEMBERG <wl@gnu.org>
Convert macros `tmac.XXX' to `XXX.tmac'. Special cases:
tmac.doc.old -> doc-old.tmac
tmac.an.old -> an-old.tmac
* tmac/tmac.*: Moved to ...
* tmac/*.tmac: this.
* tmac/man.local: Fix comment.
* tmac/groff_man.man, tmac/groff_markup.man, tmac/groff_mdoc.man,
tmac/groff_me.man, tmac/groff_ms.man, tmac/groff_tmac.man: Updated.
Added some `FILES' sections. More use of @...@ directives. Other
minor updates.
* arch/djgpp/README, font/devutf8/NOTES: Updated.
* doc/homepage.ms, doc/groff.texinfo: Updated.
* man/groff.man, man/roff.man: Updated.
* src/devices/grodvi/grodvi.man, src/devices/grolbp/grolbp.man,
src/devices/grolj4/grolj4.man, src/devices/grops/grops.man,
src/devices/grotty/grotty.man: Updated.
* src/preproc/pic/pic.man: Updated.
* src/roff/grog/grog.pl, src/roff/grog/grog.sh: Use -mdoc-old
instead of -mdoc.old.
* src/roff/grog/grog.man: Document -mdoc and -mdoc-old.
* src/roff/nroff/nroff.man: Updated.
* NEWS: Updated.
* tmac/fixmacros.sed, tmac/strip.sed: Add explanatory comment.
* tmac/mm.diff: Removed -- it has no use now since the mm package
is part of groff.
* tmac/*: Removed trailing spaces.
* arch/djgpp/t-groff.bat: Fix GROFF_TMAC_PATH (hyphen.us is now in
the tmac subdirectory also).
* Makefile.comm, Makefile.in: Remove tmac_{s,an}_prefix stuff.
* tmac/Makefile.sub: Adapted to new macro names; removed `wrap'
stuff since it is no longer needed.
* README, PROBLEMS: Updated.
2000-10-25 Werner LEMBERG <wl@gnu.org>
Invert current behaviour: Search first FOOBAR.tmac, then
tmac.FOOBAR.
* src/roff/troff/input.cc: Introduce MACRO_POSTFIX.
(open_mac_file, macro_source): Implement it.
* src/roff/troff/troff.man, tmac/groff_tmac.man, man/roff.man,
doc/groff.texinfo, NEWS: Document it.
* src/roff/nroff/nroff.man, src/roff/groff/groff.man, man/groff.man:
Small documentation improvements.
* test-groff: Fix GROFF_TMAC_PATH (hyphen.us is now in the tmac
subdirectory also).
* font/devps/Makefile.sub: Fix rules for dingbats.*map.
2000-10-24 Werner LEMBERG <wl@gnu.org>
Add local tmac directory (groff/site-tmac).
* Makefile.in: Add $(localtmacdir).
(uninstall_dirs): Add $(localtmacdir).
* Makefile.comm (.man.n): Add @LOCALMACRODIR@.
* tmac/Makefile.sub (install_data, uninstall_sub): Handle man.local
in $(localtmacdir). Create $(localtmacdir).
* man/roff.man, src/roff/troff/troff.man, NEWS, doc/groff.texinfo:
Updated and minor fixes.
Rename font/devps/generate/dingbats[r]map to dingbats.[r]map.
* font/devps/generate/Makefile.sub, arch/djgpp/README: Adjust.
2000-10-23 Werner LEMBERG <wl@gnu.org>
Move hyphen.us to tmac directory.
* src/roff/troff/hyphen.us: Removed.
* src/tmac/hyphen.us: Added.
* src/roff/troff/Makefile.sub, tmac/Makefile.sub: Updated.
Change installation structure for data files from .../groff/... to
.../groff/<version><revision>/... to be conform with other GNU
programs.
* Makefile.in, Makefile.comm, src/utils/indxbib/Makefile.sub,
doc/Makefile: Implement it.
* aclocal.m4 (GROFF_PAGE): Add test for new directory structure.
* configure: Updated.
* arch/djgpp/README, font/devutf8/NOTES: Use it.
* NEWS: Document it.
* man/roff.man, tmac/groff_tmac.man: Use @FONTPATH@, @FONTDIR@, and
@MACRODIR@ instead of hard-coded directories.
2000-10-22 Werner LEMBERG <wl@gnu.org>
Implement $GROFF_BIN_PATH environment variable (which defaults to
$bindir) used for child programs of groff and similar wrappers.
* gendefs.sh: Improve documentation.
* Makefile.comm (,man.n), src/include/Makefile.sub (defs.h),
src/preproc/eqn/Makefile.sub (neqn),
src/roff/nroff/Makefile.sub (nroff): Add $(bindir).
* src/preproc/eqn/neqn.sh, src/roff/nroff/nroff.sh: Implement
$GROFF_BIN_PATH.
* src/roff/groff/groff.cc (main): Implement $GROFF_BIN_PATH and
$GROFF_PATH__ (the latter for communication with troff).
* src/roff/troff/input.cc (main): Use $GROFF_PATH__ for $PATH if
set.
* NEWS, src/roff/nroff/nroff.man, src/roff/groff/groff.man,
doc/groff.texinfo: Document it.
* doc/groff.texinfo: Improve documentation of troff's -a option.
2000-10-17 Gaius Mulley <gaius@glam.ac.uk>
* src/roff/troff/node.cc: Fixed calculation of opminx and fixed
non-intrusive eol marker.
(troff_output_file::determine_line_limits): New function.
(troff_output_file::draw): Use it.
* src/roff/troff/env.cc (environment::add_html_tag): Use output() +
output_pending_lines() instead of output_line().
* src/preproc/eqn/main.cc (do_file): Fix graphic_end().
* src/preproc/html2/pre-html.cc (char_buffer::write_file_troff,
createImage): Small fixes.
2000-10-14 Werner LEMBERG <wl@gnu.org>
Replace tmac.safer with a real secure solution.
* src/roff/troff/input.cc (open_request, opena_request, pipe_source,
system_request, pipe_output): Disable requests if in safer mode.
* src/roff/groff/groff.cc (main): Remove reference to tmac.safer.
* tmac/tmac.safer, tmac/groff_msafer.man: Removed.
* tmac/Makefile.sub, NEWS, man/roff.man, tmac/groff_tmac.man,
doc/groff.texinfo, src/roff/groff/groff.man,
src/roff/troff/troff.man, arch/djgpp/README: Updated.
* src/devices/grops/ps.cc (main), src/devices/grops/psrm.cc
(resource_manager::output_prolog): Replace setenv() with putenv().
2000-10-09 Werner LEMBERG <wl@gnu.org>
* src/libs/libbib/map.c, src/libs/libgroff/getcwd.c,
src/libs/libgroff/strtol.c, src/preproc/html2/image.cc,
src/preproc/html2/pre-html.cc, src/preproc/html2/pushbackbuffer.cc,
src/roff/groff/pipeline.c: Removing `#ifndef errno' to avoid
compilation errors with some compilers. It seems that this code
is no longer necessary -- if yes, it is easy to add some #ifdef's
for that particular old-fashioned compiler.
* MORE.STUFF: Added info about Meta-tbl.
* doc/groff.texinfo: Added more info about `.if "..."..."'.
2000-10-07 Werner LEMBERG <wl@gnu.org>
Adding a new escape sequence \B'...': If the string between
the delimiters is a valid numeric expression, return the character
`1', and `0' otherwise. This is an analogon to \A.
* src/roff/troff/input.cc (do_expr_test): Implement it.
(token::next): Use it.
* src/roff/troff/troff.man, NEWS, man/groff.man: Document it.
* tmac/tmac.trace: Made independent from escape character.
2000-10-06 Werner LEMBERG <wl@gnu.org>
Adding a new request .dei: define indirect. The first and second
parameter of .dei are taken from string registers instead directly;
this very special request is needed to make tmac.trace independent
from the escape character (which might even be disabled).
* src/roff/troff/input.cc (do_define_macro): Implement it.
(define_macro_indirect): New function.
(init_input_requests): Use it.
Adding two requests .ecs and .ecr: Save and restore the escape
character. These two requests are needed to make tmac.trace
independent from the escape character (which might even be
disabled).
* src/roff/troff/input.cc (save_escape_char, restore_escape_char):
Implement it.
(init_input_requests): Use it.
* src/roff/troff/troff.man, NEWS, man/groff.man: Updated.
2000-09-22 Ricardo Soares Guimarães <ricardo@conectiva.com.br>
Adding a new option -P and new environment variable GROPS_PROLOGUE
to grops, selecting a different prologue file (minor modifications
by WL).
* src/devices/grops/psrm.cc (resource_manager::output_prolog),
src/devices/grops/ps.cc (main): Implement it.
* src/devices/grops/grops.man, NEWS: Document it.
2000-09-22 Werner LEMBERG <wl@gnu.org>
* INSTALL: Add info about selecting paper format.
2000-09-21 Werner LEMBERG <wl@gnu.org>
* src/roff/troff/input.cc (main): Fixing compiler warning.
* src/include/{driver.h, lib.h}: Move inclusion of string.h and
strings.h from the former to the latter.
* src/devices/grolbp/lpb.cc, src/include/lib.h: Move strncasecmp()
stuff from the former to the latter.
2000-09-11 Werner LEMBERG <wl@gnu.org>
Implementing two new requests .tm1 and .tmc: The former is similar
to .tm but can output leading spaces; its syntax is similar to
defining a string, i.e., a `"' can be used to mark the beginning of
the string to be written to stderr: `.tm1 " test'. The latter is
similar to .tm1 but doesn't write out a final newline character.
* src/roff/troff/input.cc (terminal1, terminal_continue,
do_terminal): New functions.
(init_input_requests): Use them.
* src/roff/troff/troff.man, NEWS, man/groff.man: Updated.
2000-09-09 Werner LEMBERG <wl@gnu.org>
* tmac/groff_mdoc.samples.man: Small fixes.
2000-09-08 Werner LEMBERG <wl@gnu.org>
* tmac/groff_mdoc.man: Fixing typo.
2000-09-02 Werner LEMBERG <wl@gnu.org>
Implementing a .nop request which does nothing.
* src/roff/troff/input.cc (nop_request): New function.
(init_input_requests): Use it.
* src/roff/troff/troff.man, NEWS, man/groff.man: Updated.
2000-09-01 Werner LEMBERG <wl@gnu.org>
* doc/groff.texinfo: Added some comments.
2000-08-30 Werner LEMBERG <wl@gnu.org>
* src/roff/troff/TODO: Updated.
2000-08-25 Werner LEMBERG <wl@gnu.org>
* doc/groff.texinfo: Fix comment how to compile the DVI file.
2000-08-25 Eli Zaretskii <eliz@is.elta.co.il>
* font/devps/generate/Makefile (SHELL): Define explicitly to
"/bin/sh", for non-Unix platforms.
(extraclean): Use a more portable "" quoting instead of a
backslash (which doesn't work on DOS/Windows).
* font/devlj4/generate/Makefile (extraclean): Ditto.
* font/devdvi/generate/Makefile (extraclean): Ditto.
2000-08-25 Werner LEMBERG <wl@gnu.org>
* NEWS, doc/groff.texinfo, tmac/groff_tmac.man, man/roff.man,
src/roff/troff/troff.man: Document Eli's latest changes.
2000-08-25 Eli Zaretskii <eliz@is.elta.co.il>
* src/roff/troff/input.cc (open_mac_file, macro_source): Support
macro file names of the form NAME.tmac as well as tmac.NAME.
2000-08-25 Werner LEMBERG <wl@gnu.org>
* src/include/posix.h: Remove definition of FILENAME_MAX.
* src/preproc/html2/pre-html.h, pre-html.cc: Add return type to
`sys_fatal' and `stop' function().
* test-groff: Updated.
2000-08-24 Gaius Mulley <gaius@glam.ac.uk>
Added the new troff command .output <arg> to suppress output (while
still obeying motion) and also the opminx, opminy, opmaxx, opmaxy
registers (for passing the output dimensions to the output device).
* src/roff/troff/div.cc (top_level_diversion::output): Use `width'
parameter.
* src/roff/troff/node.h, src/roff/troff/node.cc
(troff_output_file::really_print_line,
ascii_output_file::really_print_line,
supress_output_file::really_print_line): Use `width' parameter.
(troff_output_file::really_on, troff_output_file::really_off,
output_file::on, output_file::off, real_output_file::on,
real_output_file::off, real_output_file::really_on,
real_output_file::really_off): New functions.
(real_output_file:public output_file): New variable `output_on'.
(real_output_file::begin_page, real_output_file::copy_file,
real_output_file::transparent_char, real_output_file::print_line):
Use it.
(real_output_file::print_line): Use check_output_limits.
* src/roff/troff/reg.h, src/roff/troff/request.h,
src/roff/troff/input.cc (assign_registers): New function to remove
two `goto's.
(do_ps_file): Use it.
(check_output_limits, reset_output_registers, output_request,
init_output_requests): New functions.
(init_input_requests): Updated.
Added new grohtml2 device and html2 preprocessor (coding
not yet finished) which will eventually replace grohtml.
* Makefile.in, tmac/Makefile.sub, tmac/eqnrc, tmac/troffrc-end:
Updated.
* src/include/htmlindicate.h, src/include/htmlindicate
(html_begin_suppress, html_end_suppress): New functions.
* src/preproc/tbl/main.cc: Use it.
* src/roff/groff/groff.cc: Add support for html2 device (which will
automatically invoke the html2 preprocessor).
* src/roff/troff/input.cc (is_html2): New variable.
* src/roff/troff/troff.h, src/roff/troff/env.h,
src/roff/troff/env.cc (environment::add_html_tag): New function
(uses `is_html2').
(environment::do_break): Use it.
* font/devhtml2/*: New files.
* src/devices/grohtml2: New device.
* src/preproc/html2: New preprocessor.
* tmac/tmac.html-tags, tmac/tmac.html2: New files.
2000-08-23 Werner LEMBERG <wl@gnu.org>
* src/devices/grolbp/lbp.cc: Same workaround for sinix as for AIX.
2000-08-22 Werner LEMBERG <wl@gnu.org>
* src/include/lib.h: Provide a fix for IRIX to not include
groff-getopt.h.
2000-08-18 Werner LEMBERG <wl@gnu.org>
* configure.in: Don't provide an empty value for SH_SCRIPT_SED_CMD
since some non-GNU sed programs can't handle null regexps.
* configure, src/preproc/eqn/Makefile.sub,
src/roff/grog/Makefile.sub, src/roff/nroff/Makefile.sub: Updated.
* src/devices/grolbp/lbp.cc: Add an AIX workaround for an autoconf
bug (string.h and strings.h are both needed according to latest
POSIX standard).
* MORE.STUFF: Added info about unroff and troffcvt.
2000-08-08 Werner LEMBERG <wl@gnu.org>
* tmac/tmac.a4: Will now work with ms macros also; -ma4 should be
used before -ms.
* tmac/tmac.man.old: Remove unused number register.
* tmac.doc: Minor documentation fix.
2000-08-07 Paul Eggert <eggert@twinsun.com>
* src/roff/groff/pipeline.c (is_system_shell):
Fix typo: "monocased_shell" no longer exists.
2000-08-07 Paul Eggert <eggert@twinsun.com>
Remove FILENAME_MAX limits.
* src/roff/groff/pipeline.c (is_system_shell): Do not assume
that the argument length is less than FILENAME_MAX.
* src/libs/libgroff/tmpfile.cc (add_tmp_file): Likewise.
Use struct hack to allocate and free file name.
(struct xtmpfile_list): fname is now part of the structure,
not a pointer to another string.
2000-08-07 Tom Schmidt <tschmidt@micron.com>
* src/include/posix.h: Add a default value for FILENAME_MAX.
2000-08-06 Paul Eggert <eggert@twinsun.com>
Add support for new BSD-style man pages (with ".Dd" instead of
".TH"), so that "groff -man" understands both styles, even
when running "groff -man" on a host whose system man page
macros don't support ".Dd".
* tmac/Makefile.sub (NORMALFILES): Add tmac.an.old.
(stamp-wrap): Source tmac.andoc first when wrapping man macros,
in case the system man macros don't define Dd or TH.
* tmac/tmac.an.old: Renamed from tmac/tmac.an.
* tmac/tmac.an: New one-line file.
* tmac/tmac.andoc (TH): Adjust to the tmac.an.old file renaming.
2000-08-06 Werner LEMBERG <wl@gnu.org>
* src/roff/troff/troff.man: Fixing typos.
Copyright 2000-2001 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.
Local Variables:
version-control: never
coding: latin-1
End: