diff options
author | wl <wl> | 2005-06-28 16:19:21 +0000 |
---|---|---|
committer | wl <wl> | 2005-06-28 16:19:21 +0000 |
commit | 4bf79c340cc0da54c4ed36bb2d6cf9e0613dfd44 (patch) | |
tree | 414d67ccbf603d8392ee6bbf734965028b7bab8a | |
parent | 652b64497a24d94b6d58f33a2490398525c199f8 (diff) | |
download | groff-4bf79c340cc0da54c4ed36bb2d6cf9e0613dfd44.tar.gz |
* ChangeLog: Split off older entries into...
* ChangeLog.115 ChangeLog.116, ChangeLog.117, ChangeLog.118: New
files.
-rw-r--r-- | ChangeLog | 13507 | ||||
-rw-r--r-- | ChangeLog.115 | 6147 | ||||
-rw-r--r-- | ChangeLog.116 | 1388 | ||||
-rw-r--r-- | ChangeLog.117 | 2190 | ||||
-rw-r--r-- | ChangeLog.118 | 3794 |
5 files changed, 13526 insertions, 13500 deletions
@@ -1,8 +1,14 @@ +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> +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 @@ -5172,13505 +5178,6 @@ Version 1.19 released * REVISION: Increased to 2. -Version 1.18.1 released -======================= - -2002-10-08 Werner LEMBERG <wl@gnu.org> - - * doc/webpage.ms, NEWS: Updated. - -2002-10-07 Werner LEMBERG <wl@gnu.org> - - * tmac/doc-common (Ss): Add final `.ns' (similar to `.Sh') to - suppress additional whitespace after the header. - - * tmac/doc-ditroff, tmac/doc-nroff (Am): New string to be in sync - with NetBSD. - - * src/preproc/grn/grn.man, tmac/groff_mdoc.man, NEWS: Updated. - -2002-10-07 Ruslan Ermilov <ru@FreeBSD.org> - - * tmac/doc-common(doc-volume-operating-system-ateol): New flag. - (Dt): Use it to improve language localization (especially Russian - and French). - -2002-10-07 Daniel Senderowicz <daniel@synchrods.com> - - * src/preproc/grn/gprint.h (BSPLINE, BEZIER): New macros. - * src/preproc/grn/hdb.cc (DBGetType): Parse spline and bezier - drawing commands. - * src/preproc/grn/hgraph.cc (drawwig): Add parameter to control - curve type. - Call `picurve' for BSPLINE. - (HGPrintElt): Handle BSPLINE. - * src/preproc/grn/README: Document it. - -2002-10-03 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/node.cc (break_char_node::col): New variable. - Updated constructor. - (space_node::tprint, word_space_node::tprint): Call `fill_color' - unconditionally. - (space_node::space_node): Remove assertion. - (break_char_node::add_self): Pass color argument to space node. - * src/roff/troff/input.cc (token::add_to_node_list, token::process): - Ditto. - * src/roff/troff/env.cc (environment::do_break, - environment::add_padding): Ditto. - -2002-10-02 Werner LEMBERG <wl@gnu.org> - - Redesigning color support in troff. Colors are no longer - represented as separate nodes but are now part of glyph nodes and - friends. This fixes the current formatting misbehaviour due to the - changes introduced on 2002-09-20. Some extra code is necessary for - proper grotty support: Without adding color variables to - space-related nodes, the background color would be changed too late. - - * src/roff/troff/node.h, src/roff/troff/node.cc: - s/current_pagecolor/current_fill_color/. - s/current_glyphcolor/current_glyph_color/. - (glyph_color_node, fill_color_node): Removed. - (node::get_glyph_color, node::get_fill_color): New virtual member - functions. - (space_node::col): New variable. - Updated constructors of space_node and derived classes accordingly. - (hmotion_node::col): New variable. - Updated constructors of hmotion_node and space_char_hmotion_node - accordingly. - (vmotion_node::col): New variable. - Updated constructor accordingly. - (draw_node::gcol, draw_node::fcol): New variables. - Updated constructor accordingly. - (special_node::gcol, special_node::fcol): New variables. - Updated constructors accordingly. - (troff_output_file::put_char, troff_output_file::put_charwidth, - troff_output_file::draw): Set glyph and fill color. - (troff_output_file::start_special): Set glyph and fill color. - Always set current font. - (troff_output_file::fill_color, troff_output_file::glyph_color): - Don't call `do_motion'. - (glyph_node::gcol, glyph_node::fcol): New variables. - Updated constructors of glyph_node and ligature_node accordingly. - (glyph_node::get_glyph_color, glyph_node::get_fill_color): New - member functions. - (glyph_node::merge_glyph_node, - kern_pair_node::add_discretionary_hyphen, - node::add_discretionary_hyphen): Updated. - (break_char_node::merge_self): Updated. - (word_space_node::tprint, space_node::tprint, hmotion_node::tprint, - vmotion_node::tprint): Handle color. - (make_glyph_node, make_node, node::add_char): Updated. - - * src/roff/troff/env.cc (environment::space_newline, - environment::space, environment::output_line, environment::do_break, - environment::make_tab_node, environment::add_padding, title): - Updated. - (environment_switch, environment_copy): Don't add color nodes. - - * src/roff/troff/input.cc (do_glyph_color, do_fill_color): Return - nothing. - (token::next): Updated. - \m and \M now are as transparent as \s. - (process_input_stack, token::add_to_node_list, token::process, - read_draw_node): Updated. - (charinfo_to_node_list): Don't add color nodes. - - * doc/groff.texinfo: Updated. - -2002-09-27 Ruslan Ermilov <ru@FreeBSD.org> - - * tmac/doc-common (ds-operating-system-FreeBSD-4.*): New version - strings. - -2002-09-27 Colin Watson <cjwatson@debian.org> - - * src/roff/troff/node.cc (bracket_node::copy): Check `list' != 0. - -2002-09-23 Werner LEMBERG <wl@gnu.org> - - * src/devices/grolbp/lbp.cc: Replace `300' with `font::res' where - appropriate. - (DEFAULT_LINEWIDTH_FACTOR): New macro. - (linewidth_factor): New global variable. - (lbp_printer::set_line_thickness): Fix case for size < 0, using - linewidth_factor. - (long_options): Add -w/--linewidth option. - (usage): Updated. - (main): Handle -w option to set linewidth_factor. - (lbp_printer::lbp_printer): Initialize req_linethickness, not - line_thickness. - - * src/devices/grolbp/grolbp.man, NEWS, doc/webpage.ms: Updated. - -2002-09-22 Paco Andrés Verdú <pandres@dragonet.es> - - Fixed a bug in the line thickness setting code. - - * src/devices/grolbp/lbp.cc (lbp_printer::req_linethickness): New - variable. - (lbp_printer::set_line_thickness): Pass environment as second - parameter. - Implement it actually. - (lpb_printer::set_char, lbp_printer::draw): Use `req_linethickness' - and `set_line_thickness, depending on the current font size. - -2002-09-21 Werner LEMBERG <wl@gnu.org> - - Some Debian patches. - - * src/roff/groff/pipeline.h (MAX_COMMANDS): Increase to 12. - * src/roff/troff/node.cc (bracket_node::copy): Initialize - `list->last'. - -2002-09-20 Werner LEMBERG <wl@gnu.org> - - * configure: Regenerated with autoconf 2.54. - -2002-09-20 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/env.h (environment): Rename cur_glyph_color to - glyph_color. - Rename cur_fill_color to fill_color. - * src/roff/troff/env.cc: Updated. - -2002-09-20 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/env.cc (title): Copy color status after processing - title. - * src/roff/troff/input.cc (charinfo_to_node_list): Emit glyph and - fill color nodes to reset colors properly. - - * tmac/www.tmac (DC): Fix color handling. - - * src/preproc/pic/pic.man, doc/pic.ms: Document some color issues. - * doc/groff.texinfo: Fixing documentation of `tl' request. - * doc/webpage.ms: Updated. - -2002-09-19 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/env.cc (environent_switch, environment_copy): - Emit glyph and fill color nodes to initialize colors properly. - -2002-09-17 Colin Watson <cjwatson@debian.org> - - * src/roff/troff/env.cc (environment::set_glyph_color, - environment::set_fill_color): Fix typo which prevented \m[] work - correctly. - -2002-09-17 Werner LEMBERG <wl@gnu.org> - - Add left and right italic correction to non-slanted PS fonts. This - is an experimental feature to improve image rendering of grohtml. - - * font/devps/generate/Makefile (RFLAG): New variable, set to `-i 0'. - ({T,H,C,P,N,BM,A,HN}{R,B}, ZD, S, ZDR): Use it. - * font/devps/*: All non-slanted fonts regenerated. - * NEWS: Updated. - -2002-09-16 Werner LEMBERG <wl@gnu.org> - - Add a site-specific font directory. - - * Makefile.in (localfontdir, legacyfontdir): New variables. - (fontpath): Use them. - (MDEFINES, uninstall_dirs): Updated. - * Makefile.comm (.man.n): Add `LOCALFONTDIR' and `LEGACYFONTDIR'. - Remove `FONTPATH' and `MACROPATH'. - - * src/roff/troff/troff.man, NEWS: Updated. - * doc/groff.texinfo (Font Directories): New section. - Other minor fixes. - - * src/devices/grodvi/grodvi.man, src/devices/grohtml/grohtml.man, - src/devices/grolbp/grolbp.man, src/devices/grolj4/grolj4.man, - src/preproc/grn/grn.man: Minor fixes. - - * src/devices/grohtml/post-html.cc (html_printer::do_tab_ts): - Remove unused variable. - -2002-09-11 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo, man/groff_font.man: Clarify argument of \N. - * man/groff_out.man: Fix documentation of 'N'. - -2002-09-09 Gaius Mulley <gaius@glam.ac.uk> - - * doc/Makefile.in (webpage.html): Depend on gnu.eps also. - * src/roff/troff/env.cc (indent): Emit html tag only if break_flag is - set. - * src/devices/grohtml/post-html.cc (text_glob::is_br_ni): Removed. - (text_glob::is_br, html_printer::lookahead_for_tables): Updated. - (html_printer::do_tab_ts): Call `emit_table_header' with `FALSE'. - * src/devices/grohtml/html-text.cc (html_text::start_tag) <P_TAG, - PRE_TAG>: Call `begin' with `FALSE'. - -2002-09-09 Ralph Corderoy <ralph@inputplus.demon.co.uk> - - * src/libs/libgroff/string.cc (string::extract): Fix position of - terminating null byte. - -2002-09-08 Werner LEMBERG <wl@gnu.org> - - Add global option `nospaces' to tbl so that leading and trailing - spaces in data items are ignored. - - * src/libs/libgroff/string.cc (string::remove_spaces): New member - function to remove leading and trailing spaces. - * src/include/stringclass.h: Updated. - - * src/preproc/tbl/table.h (table): Add flag `NOSPACES'. - - * src/preproc/tbl/main.cc (process_options): Handle `nospaces' - option. - Fix typo in error messages. - (process_data): Implement `nospaces' option. - * src/preproc/tbl/tbl.man, NEWS, doc/webpage.ms: Updated. - -2002-09-07 Werner LEMBERG <wl@gnu.org> - - * src/include/config.hin: Add `HAVE_ISATTY'. - * src/libs/libgroff/tmpfile.cc (xtmpfile_list): Drop `const' for - `fname' member. - * src/libs/libgroff/tmpname.cc: Include `time.h'. - * src/libs/libdriver/input.cc (Char): Add `operator==' and - `operator!=' for `char'. - * doc/groff.texinfo: Replace @ifnottex block for top node with - @ifhtml block. - -2002-09-06 Werner LEMBERG <wl@gnu.org> - - * doc/Makefile.in (.texinfo.html): Add -I switch. - * doc/groff.texinfo: Add @ifnottex block for top node to make - translation to HTML work. - -2002-09-05 Gaius Mulley <gaius@glam.ac.uk> - - * src/preproc/html/pre-html.cc (LETTER_LENGTH): Removed. - (get_papersize, determine_vertical_offset): Removed. - (char_buffer::do_image): Always specify letter size. - (main): Updated. - (imageList::createPage): Use -dDEVICEHEIGHTPOINTS instead of - -sPAPERSIZE. - -2002-09-05 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo, tmac/groff_man.man: Improve documentation of - default indentation. - -2002-09-04 Gaius Mulley <gaius@glam.ac.uk> - - * src/preproc/html/pre-html.cc (imageList::createPage): Use - -sPAPERSIZE for gs. - (generateImages): Clean up push-back buffer. - -2002-09-04 Ralph Corderoy <ralph@inputplus.demon.co.uk> - - * doc/groff.texinfo: Minor fixes. - -2002-08-21 Gaius Mulley <gaius@glam.ac.uk> - - * src/preproc/html/pre-html.cc (DEFAULT_LINE_LENGTH): New macro. - (MAX_WIDTH, A4_LENGTH, A4_OFFSET, LETTER_OFFSET): Removed. - (gsPaper): Removed. - (determine_vertical_offset): Use LETTER_LENGTH. - (createPage): Moved to ... - (imageList::createPage): This. - Call gs with -dDEVICEWIDTHPOINTS to avoid cropping. - (imageList::getMaxX): New function. - (createImage): Moved to ... - (imageList::createImage): This. - (imageList::createImages): New function. - (generateImages): Read `maxx' directly. - Updated. - (scanArguments): Don't specify `gsPaper' for `-o'. - (makeTempFiles): Call `xtmpfile' with the last argument set to - `TRUE'. - -2002-08-24 Werner LEMBERG <wl@gnu.org> - - * src/include/nonposix.h (mkdir, WAIT, creat) [_MSC_VER]: Define. - (WAIT, _WAIT_CHILD) [!_MSC_VER]: Define. - * src/preproc/html/pre-html.cc (waitForChild): Use WAIT. - * src/preproc/html/pushback.cc: Include nonposix.h. - * src/roff/groff/pipeline.c: Define strcasecmp and strncasecmp - conditionally. - -2002-08-23 Werner LEMBERG <wl@gnu.org> - - Use $(OBJEXT) for the object file extension. - - * Makefile.comm (.SUFFIXES): Add .obj. - (.cc.obj, .c.obj): New implicit rules. - * Makefile.in (OBJEXT): New variable, initialized from autoconf. - (MDEFINES): Add EXEEXT and OBJEXT. - * */Makefile.sub: s/.o/.$(OBJEXT)/. - -2002-08-22 Werner LEMBERG <wl@gnu.org> - - * INSTALL: Mention texinfo 4.2 as a prerequisite. - -2002-08-21 Gaius Mulley <gaius@glam.ac.uk> - - * src/devices/grohtml/post-html.cc (colType): Make enum global to - the file. - (html_printer::update_min_max, html_printer::add_table_end): New - methods. - (html_printer::lookahead_for_tables): Use them. - Reset page offset correctly. - (html_printer::~html_printer): Add creation of creator comment up. - -2002-08-20 Werner LEMBERG <wl@gnu.org> - - * tmac/an-old.tmac (T&): New dummy macro to avoid warning. - * man/groff_tmac.man: Fix typos. - * man/groff_font.man: Minor reordering. - * contrib/eqn2graph/eqn2graph.man (Tp): New macro. - -2002-08-18 Gaius Mulley <gaius@glam.ac.uk> - - Avoid endless loops while scanning for tables. - - * src/devices/grohtml/post-html.cc (list::insert): Set - ptr->right->left. - (html_printer::next_horiz_pos): Add `text_glob' argument; update - all callers. - Return immediately if that argument is NULL. - (html_printer::calc_nf): Don't test if `g' is NULL. - (html_printer::lookahead_for_tables): Use - `glyphs.move_right_get_data'. - Don't test if `g' is NULL. - -2002-08-18 Gaius Mulley <gaius@glam.ac.uk> - - A better fix, replacing fix 2002-08-15, for increasing SIZE. - - * src/devices/grohtml/post-html.cc (char_block): Make `buffer' - a pointer. - (char_block::char_block): Allocate `buffer'. - (char_buffer::add_string): Use it. - -2002-08-15 Werner LEMBERG <wl@gnu.org> - - * src/devices/grops/grops.man, src/devices/grolj4/grolj4.man, - src/devices/grodvi/grodvi.man: Document default line thickness. - -2002-08-15 Gaius Mulley <gaius@glam.ac.uk> - - * src/devices/grohtml/post-html.cc (char_block): Increase SIZE to - 8192. - -2002-08-14 Werner LEMBERG <wl@gnu.org> - - * doc/webpage.ms: Updated. - -2002-08-09 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/node.cc (node::add_char): Call `freeze_space' for - unbreakable space. - -2002-08-08 Aaron Campbell <aaron@monkey.org> - - * src/preproc/pic/object.cc (object_spec::make_move): Fix typo - (&& -> &). - -2002-08-08 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/input.cc (read_rgb, read_cmy, read_cmyk): Call - tok.next(). - (read_gray): Ditto. - Don't push back a space but a newline onto the stack. - -2002-08-07 Gaius Mulley <gaius@glam.ac.uk> - - Add fonts `CI', `CB', and `CBI' to grohtml which have been omitted - inadvertently. - - * src/devices/grohtml/post-html.cc (html_printer::end_font, - html_printer::start_font): Handle them. - * src/devices/grohtml/html-text.cc (html_text::do_italic): Don't - reset bold and tt. - (html_text::do_bold): Don't reset italic and tt. - (html_text::do_tt, html_text::do_pre): Don't reset bold and italic. - * font/devhtml/DESC.proto: Add those fonts. - * font/devhtml/Makefile.sub (PROTOFONTS): Updated. - -2002-08-07 Werner LEMBERG <wl@gnu.org> - - * MORE.STUFF: Added gpresent. - - * tmac/trace.tmac: Show nesting level by a corresponding amount of - whitespace before printing the logging message. - -2002-07-31 Colin Watson <cjwatson@debian.org> - - * src/devices/grohtml/html-table.cc (html_table::finish_row): - Initialize `n' to zero. This fixes a segfault on ARM. - -2002-07-30 Werner LEMBERG <wl@gnu.org> - - * doc/grnexmpl.me: Remove calls to .st and .sc which are undefined. - -2002-07-29 Werner LEMBERG <wl@gnu.org> - - * src/preproc/pic/pic.y (print_arg, relative_path): Add missing - final semicolon. - -2002-07-28 Colin Watson <cjwatson@debian.org> - - * src/devices/grohtml/post-html (html_printer::troff_tag): Handle - `.ps'. - (html_printer::html_printer): Initialize `pointsize'. - -2002-07-26 Werner LEMBERG <wl@gnu.org> - - * doc/Makefile.sub (PROCESSEDEXAMPLEFILES): Remove gnu.eps and - gnu.png. - (CLEANNOTSRCDIRADD): Add gnu.eps and gnu.png. - (gnu.eps): Add -rle switch to pnmtops. - (distfiles): Add gnu.eps and gnu.png. - -2002-07-25 Petter Reinholdtsen <pere@hungry.com> - - * src/libs/libdriver/input.cc (Char): Add const to `operator=='. - Add `operator!='. - -2002-07-24 Werner LEMBERG <wl@gnu.org> - - * doc/Makefile.in, doc/Makefile.sub (groff_bin_path): Don't use - ' \+' but ' *' for sed. - (GROFF): Set GROFF_COMMAND_PREFIX to empty value. - -2002-07-23 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Document `papersize' keyword. - * NEWS, man/groff_font.man: Updated. - -2002-07-23 Colin Watson <cjwatson@debian.org> - - Extend papersize keyword to accept more than a single entry. The - first valid will be used. - - * src/libs/libgroff/font.cc (font::load_desc): Implement it. - (font::scan_papersize): Really skip final newline. - * src/preproc/html/pre-html.cc (get_papersize): Ditto. - -2002-07-23 Werner LEMBERG <wl@gnu.org> - - * configure.ac: Test for isatty. - * configure: Regenerated. - * src/include/posix.h: Check HAVE_ISATTY. - * src/roff/troff/input.cc [ISATTY_MISSING]: Removed. - * src/utils/lookbib/lookbib.cc: Include posix.h. - Don't declare isatty. - -2002-07-21 Werner LEMBERG <wl@gnu.org> - - * NEWS: Add `output' request. - - * REVISION: Increased to 1. - -Version 1.18.0 released -======================= - -2002-07-19 Gaius Mulley <gaius@glam.ac.uk> - - Allow internal glyph indices > 0xFF in grohtml for input characters. - - * src/devices/grohtml/post-html.cc (to_unicode): Use `unsigned int' - as parameter. - (html_printer::add_to_sbuf): Use `unsigned int' as first parameter. - Updated all callers. - (html_printer::sbuf_continuation, html_printer::overstrike): Ditto. - (html_printer): Updated. - -2002-07-19 Werner LEMBERG <wl@gnu.org> - - * font/devhtml/R.proto: Updated to HTML 4, adding many glyphs. - * font/devutf8/R.proto: Adding some missing glyphs. - * font/devutf8/NOTES: Updated. - - * tmac/dvi.tmac: Add more composite glyphs. - * tmac/html.tmac: Updated. - - * man/groff_char.man: Add `sum' and `product' entities. - - * NEWS: Updated. - -2002-07-18 Gaius Mulley <gaius@glam.ac.uk> - - Improved table, tab, and indenting support. - - * src/roff/troff/input.cc (file_iterator::suppress_newline_flag, - string_iterator::suppress_newline_flag): Removed. Updated all - function which have used it. - - * src/roff/troff/env.cc: Include `input.h'. - (environment::add_node): Accept 0 as parameter. - (environment::add_html_tag): Add `force' parameter. - Updated all callers. - (environment::add_html_tag_tabs): Ditto. - For the moment, support left-aligned tabs only. - (environment::make_html_tag): New function. - (fill, no_fill): Set .br html tag additionally. - (environment::newline): Emit `eol.ce' or `eol' tag for html. - (environment::add_html_tag_eol): Removed. - (tab_stops::distance_to_next_tab): Add variant for handling - nextpos'. - (environment::distance_to_next_tab): Ditto. - Updated all callers. - (environment::handle_tab): Handle tabs for html. - - * src/roff/troff/env.h: Updated. - - * src/roff/troff/div.cc: Updated all callers of - `environment::add_html_tag'. - - * src/devices/grohtml/html-table.cc, - src/devices/grohtml/html-table.h: New files. - - * src/devices/grohtml/html-text.cc (html_text): New members - `blank_para' and `start_space'. - (html_text::issue_tag): Don't emit TABLE_TAG. - Handle indentation for PRE_TAG and P_TAG. - (html_text::end_tag): Updated. - (html_text::table_is_void, html_text::issue_table_begin, - html_text::issue_table_end): Removed. - (html_text::do_push): Simplified. - [DEBUGGING]: Small fix. - (html_text::push_para): Add new parameter for indentation; updated - all callers. - Handle PRE_TAG. - (html_text::do_indent, html_text::do_table, html_text::done_table, - html_text::is_in_table): Removed. - (html_text::do_pre): Handle P_TAG also. - (html_text::shutdown): Handle p->indent. - (html_text::check_emit_text): Simplified. - (html_text::do_emittext): Reset `blank_para'. - (html_text::do_para): Add new parameter for indentation; updated - all callers. - (html_text::remove_indent): New function. - (html_text::do_space): Handle verbatim text properly. - (html_text::ever_emitted_text, html_text::starts_with_space, - html_text::remove_para_align): New functions. - (html_text::dump_stack_element, html_text::dump_stack): Updated. - - * src/devices/grohtml/html_text.h (HTML_TAG): Remove TABLE_TAG. - Updated. - - * src/devices/grohtml/post-html.cc: Include html-table.h. - (INDENTATION): Removed. - (text_glob): Added many `is_<foo>' functions. - Added table description `tab'. - Added `get_arg',`get_tab_args', `remember_table', and `get_table' - member functions. - (list): Add `insert' and `move_to' member functions. - (page): Add `insert_tag' member function. - (page::dump_page) [DEBUG_TABLES]: Improved. - (html_printer): Add `table' and `max_linelength' elements. - Add many `do_<foo>', `insert_<foo>', `next_horiz_pos', - `lookahead_for_tables', `shutdown_table', `calc_nf', `calc_po_in', - `remove_tabs', `remove_courier_tabs'. - (html_printer::emit_raw): Handle indentation. - (html_printer::do_center, html_printer::write_header): Updated. - (html_printer::is_courier_until_eol): Check for tag. - (html_printer::do_linelength): Handle max_linelength. - (html_printer::do_page_offset, html_printer::do_indentation): Handle - fill_on. - (html_printer::do_tempindent): Updated. - (html_printer::do_indentedparagraph): Removed. - (html_printer::do_indent): Simplified. - (html_printer::do_eol): Use `ever_emitted_text'. - (html_printer::do_flush, html_printer::do_links): Don't call - done_table. - (html_printer::do_break): Handle end_tempindent. - (html_printer::troff_tag): Get argument. - Don't handle `.ip'. - Handle `.tab-ts', `.tab-te', `.col', `tab', and `tab0' tags. - (html_printer::flush_page): Call `lookahead_for_tables'. - Don't call `done_table'. - (html_printer::add_to_sbuf): Always call do_indent. - - * src/devices/grohtml/Makefile.sub: Updated. - - * tmac/an-old.tmac (TP): Don't handle html device specially. - (an-do-tag-html): New function which will be used instead of - `an-do-tag' if html device is used. - - * tmac/html.tmac: Call .po to pass default page offset to grohtml. - - * tmac/s.tmac (@IP): Don't handle html device specially. - (@IP-html): New function which will be used instead of `@IP' if - html device is used. - - * tmac/www.tmac (HTML-NS, HTML-TAG-NS): New auxiliary macros -- this - is a hack which will eventually vanish again. - (PIMG): Handle `-C' option correctly if not html. - (HR): Use HTML-NS. - -2002-07-17 Werner LEMBERG <wl@gnu.org> - - * src/utils/afmtodit/afmtodit.pl: Don't use `-P-' for invoking perl. - -2002-07-14 Eric S. Raymond <esr@thyrsus.com> - - * contrib/pic2graph/pic2graph.*: Use convert(1). - * contrib/eqn2graph/eqn2graph.*: Minor fixes. - -2002-07-14 Bernd Warken <bwarken@mayn.de> - - * tmac/groff_trace.man: New file. - * tmac/Makefile.sub: Updated. - * NEWS: Updated. - -2002-07-13 Werner LEMBERG <wl@gnu.org> - - * src/roff/groff/groff.man: Add some cross references. - -2002-07-12 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/input.cc (substring_request): Add warnings for - string indices out of range. - -2002-07-11 Werner LEMBERG <wl@gnu.org> - - * font/devdvi/generate/ec.map: Fix typo (`(l' -> `/l'). - * font/devdvi/*EC: Regenerated. - -2002-07-10 Bernd Warken <bwarken@mayn.de> - - * man/groff_char.man: Updated and extended. - -2002-07-10 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/input.cc (length_macro): Renamed to... - (length_request): This. - Move call of `tok.next()' to the very end, otherwise the register - value hasn't been updated yet. - (init_input_requests): Updated. - -2002-07-09 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/input.cc (substring_macro): Renamed to... - (substring_request): This. - (init_input_requests): Updated. - * src/roff/troff/request.h: Updated. - -2002-07-08 Robert D. Goulding <goulding@Princeton.EDU> - - * src/roff/grog/grog.sh: Fix typo. - -2002-07-08 Werner LEMBERG <wl@gnu.org> - - * win32-diffs: Updated. - - Handle `papersize' keyword properly in DESC. - - * src/libs/libgroff/font.cc (font::scan_papersize): Fix argument - type. - Updated all callers. - * src/libs/libgroff/paper.cc: Add four more paper formats used by - grolj4. - * src/include/paper.h: Updated. - - * src/devices/grolbp/lbp.cc: Remove unnecessary semicolons. - Other minor C syntax fixes. - (papersize, paperlength, paperwidth): Renamed to `user_*'. - (lbp_printer): Add `papersize', `paperlength', and `paperwidth' - members. - (lbp_printer::lbp_printer): Pass three arguments. - Set paper dimensions properly. - (make_printer, main): Updated. - (handle_unknown_desc_command): Fix error messages. - (main): Handle papersize keyword in DESC properly. - - * src/devices/grolj4/lj4.cc (paper_size): Renamed to - `user_paper_size'. - (lbp_printer::lbp_printer): Pass an argument. - Set paper_size properly. - (handle_unknown_desc_command): Removed. - (make_printer, main): Updated. - * src/devices/grolj4/grolj4.man: Minor documentation fix. - - * man/groff_font.man, NEWS: Updated. - -2002-07-07 Werner LEMBERG <wl@gnu.org> - - Integrated eqn2graph, contributed by Eric S. Raymond. - - * contrib/eqn2graph/{Makefile.sub, eqn2graph.sh, eqn2graph.man}: New - files. - * Makefile.in, NEWS: Updated. - -2002-06-04 Werner LEMBERG <wl@gnu.org> - - Changing the substring request to make it fit better with other - string manipulation functions in other programming languages: - Index 0 is now the first character in the string, and index -1 - indicates the last character. Since this request didn't work - properly anyway in the last release, it doesn't harm too much to - change the syntax. - - * src/roff/troff/input.cc (substring_macro): Use loops to get - the real string length (ignoring COMPATIBLE_SAVE and - COMPATIBLE_RESTORE) and offsets. - Implement change described above. - - * man/groff_char.man, tmac/doc-common (doc-header), tmac/doc.tmac - (doc-do-Bd-args, doc-do-Bl-args): Changed accordingly. - - * NEWS, doc/groff.texinfo, man/groff_diff.man: Updated. - -2002-06-03 Werner LEMBERG <wl@gnu.org> - - Make .chop work with .de1 and friends. COMPATIBLE_SAVE and - COMPATIBLE_RESTORE are completely ignored. - - * src/roff/troff/input.cc (char_list::set, char_list::get): New - functions. - (macro): `length' field renamed to `len'. - Added new field `empty_macro' (1 if macro is empty), to be used - instead of checking `len'. - Updated all callers. - (macro::empty): Updated. - (macro::length, macro::set, macro::get): New functions. - (macro::append): Ignore COMPATIBLE_SAVE and COMPATIBLE_RESTORE. - Set `empty_macro'. - (chop_macro): Check and remove trailing COMPATIBLE_SAVE/ - COMPATIBLE_RESTORE pairs. - (asciify): Ignore COMPATIBLE_SAVE and COMPATIBLE_RESTORE. - * src/roff/troff/request.h: Updated. - - * doc/groff.texinfo: Document .chop's behaviour better. - -2002-06-02 Werner LEMBERG <wl@gnu.org> - - * doc/pic.ms: Fix documentation for the addition of positions. - - * tmac/doc.tmac, tmac/an-old.tmac: Need groff version 1.18. - -2002-06-29 Werner LEMBERG <wl@gnu.org> - - Implementation of string arguments of the form \*[foo arg1 arg2 ...] - - * src/roff/troff/input.cc (have_string_arg): New global variable. - (read_mode): New enumeration. - (read_escape_name): Use it. Update all calls. - (read_long_escape_name): Use it. Update all calls. - Set have_string_arg if appropriate. - (get_char_for_escape_name): Add parameter for handling space - character. - (interpolate_string_with_args, decode_string_args): New functions. - (get_copy, token::next): Call it if necessary. - (interpolate_string): Fix error message. - - * NEWS, doc/groff.texinfo, man/groff.man, man/groff_diff.man: - Document it. - -2002-06-24 Bernd Warken <bwarken@mayn.de> - - * man/groff_tmac.man: Updated and extended. - -2002-06-24 Werner LEMBERG <wl@gnu.org> - - * doc/pic.ms, src/preproc/pic/pic.man: Fix description of `:='. - -2002-06-23 Werner LEMBERG <wl@gnu.org> - - * doc/pic.ms: Improve documentation of composite block objects. - -2002-06-22 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/input.cc (init_registers): Add three registers - `seconds', `minutes', and `hours' to hold the current time. - - * NEWS, doc/groff.texinfo, man/groff.man, man/groff_diff.man: - Updated. - -2002-06-20 Werner LEMBERG <wl@gnu.org> - - Make \X accept both `\ ' and `\~', converting them to single space - characters. - - * src/roff/troff/token.h (token): Add TOKEN_UNSTRETCHABLE_SPACE. - (token::unstretchable_space): New inline function. - * src/roff/troff/input.cc (token::next, token::delimiter, - token::description, token::add_to_node_list, token::process): Handle - TOKEN_UNSTRETCHABLE_NODE. - (encode_char): Handle tok.stretchable_space and - tok.unstretchable_space. - - * NEWS, doc/groff.texinfo: Document it.. - -2002-06-19 Werner LEMBERG <wl@gnu.org> - - * src/devices/grops/ps.cc (ps_printer::special): Fix error message. - - * src/devices/grotty/tty.cc (tty_printer::special): Add `sgr' - keyword to enable/disable SGR output. - (tty_printer::change_fill_color): New function. - * NEWS, src/devices/grotty/grotty.man: Document `sgr' special. - - * src/roff/troff/input.cc (output_request): Add missing `tok.next()' - call. - -2002-06-18 Werner LEMBERG <wl@gnu.org> - - Add a `color' request and a `.color' register to control usage of - colours. - - * src/roff/troff/input.cc (disable_color_flag): Replaced with... - (color_flag): This (which is the inverse). - (activate_color): New function. - (main, init_input_requests): Updated. - * src/roff/troff/troff.h, src/roff/troff/node.cc - (troff_output_file::fill_color, troff_output_file::glyph_color): - Updated. - - * NEWS, doc/groff.texinfo, man/groff_diff.man, man/groff.man: - Document the changes. - -2002-06-17 Colin Watson <cjwatson@debian.org> - - Circumvent bug in autoconf 2.53 regarding top_builddir. - - * aclocal.m4 (GROFF_BUILDDIR): s/top_builddir/groff_top_builddir/. - * Makefile.in, doc/Makefile.in: - s/@top_builddir@/@groff_top_builddir@/. - * configure: Regenerated (with autoconf 2.53). - -2002-06-17 Werner LEMBERG <wl@gnu.org> - - * src/libs/libgroff/font.cc (font::load_desc): Fix computation of - `paperwidth' and `paperlength' for the `papersize' keyword. - -2002-06-16 P. Alejandro Lopez-Valencia <dradul@007mundo.com> - - * src/devices/grops/grops.man: Add info about Type 42 fonts. - -2002-06-15 Gaius Mulley <gaius@glam.ac.uk> - - * src/devices/grohtml/post-html.cc (html_printer::emit_raw, - html_printer::do_linelength, html_printer::do_pageoffset, - html_printer::do_indentation, html_printer::do_tempindent, - html_printer::do_break, html_printer::begin_page): Clear indented - text. - * tmac/html.tmac: Disable hyphenation. - -2002-06-15 Werner LEMBERG <wl@gnu.org> - - Don't produce HTML files if utility programs are missing. - - * Makefile.in (make_html, make_install_html): New variables. - (MDEFINES): Updated. - - * aclocal.m4 (GROFF_HTML_PROGRAMS): New function to test for HTML - utility programs. - * configure.ac: Use it. - * configure: Regenerated. - - * doc/Makefile.sub (PROCESSEDEXAMPLEFILES): Move webpage.html to... - (HTMLEXAMPLESFILES): This new variable. - (EXAMPLESIMAGEFILES): Renamed to... - (HTMLEXAMPLEIMAGEFILES): This. - (CLEANADD): Add HTMLEXAMPLEFILES. - (all): Use `make_html'. - (html): New target. - (install_data): Use `make_install_html'. - Move html stuff to... - (install_html): This new target. - (uninstall_sub): Updated. - -2002-06-14 Bernd Warken <bwarken@mayn.de> - - * src/roff/grog/Makefile.sub (grog): Renamed to... - (grog.old): This. - (grog): New rule to always install grog.sh as grog. - -2002-06-08 Bernd Warken <bwarken@mayn.de> - - * src/roff/grog/grog.pl: Fix typo. - -2002-06-07 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Add more info on .tr arguments. - -2002-06-05 Werner LEMBERG <wl@gnu.org> - - * NEWS, src/roff/grog/grog.man, doc/groff.texinfo: Updated. - - * aclocal.m4 (GROFF_MKSTEMP): Include unistd.h. - * configure: Regenerated. - -2002-06-05 Ralph Corderoy <ralph@inputplus.demon.co.uk> - - * src/roff/troff/symbol.cc (table_sizes): Add more values. - - * src/roff/grog/grog.pl, src/roff/grog/grog.sh: Recognize mom. - -2002-06-04 Werner LEMBERG <wl@gnu.org> - - * aclocal.m4 (GROFF_PAGE): Don't use `prefix' directly since it - is not initialized at the time we need it in case `--prefix' hasn't - been set. Check for `ac_default_prefix' also. - Test for `papersize' keyword also and generalize allowed whitespace. - * configure: Regenerated. - - * font/devps/Makefile.sub (DESC): Use `papersize' instead of - `paperlength'. - - * src/libs/libgroff/Makefile.sub (version, revision): Replaced - with... - (src_version, src_revision): New variables to avoid overwriting - from parent make process. - (version.cc): Updated. - - * src/preproc/html/pre-html.cc: Include paper.h and font.h. - (linebuf, linebufsize): New global variables. - (sys_fatal): Use `fatal' to abort properly. - (get_line): New function. - (get_resolution): Use it. - Improve error messages. - (get_papersize): Check `papersize' also. - Use `get_line'. - Improve error messages. - -2002-06-03 Werner LEMBERG <wl@gnu.org> - - * Makefile.comm (CLEANNOTSRCDIRADD): New target for files which - should be removed only if builddir is not srcdir. - (mostlyclean): Handle `CLEANNOTSRCDIRADD'. - (clean): Depend on `mostlyclean'. - (distclean): Depend on `clean'. - (realclean, extraclean): Depend on `distclean'. - (.y.cc, .y.o): Simplified. The output files are no longer written - to srcdir but to builddir. - * Makefile.in (MDEFINES): Add `version' and `revision'. - (uninstall_dirs): Fix order of directories. - * doc/Makefile.sub (version, revision): Removed. - (CLEANADD): Removed grnexmpl.g, groff, groff-*. - Added `HTMLDOCFILES'. - (CLEANNOTSRCDIRADD): New target for grnexmpl.h, groff, groff-*. - * src/preproc/eqn/Makefile.sub, src/preproc/pic/Makefile.sub, - src/preproc/refer/Makefile.sub (YTABC, YTABH): Don't use `srcdir' - as prefix. - - * doc/texinfo.tex (\authortt): New macro. - (\shortcontt): Define. - (\titlepage): Set \tt to \authortt while defining \authorfont. - (\appendixbox): New macro. - (\chapmacro, \appendixentry): Use \appendixbox to get even - indentation for letters. - (\summarycontents): Set \tt. - (\internalpagesize): Add two arguments for real paper width and - height as needed by pdfTeX. - (\letterpaper, \smallbook, \afourpaper, \afivepaper, \afourlatex): - Updated. - (\tempdima, \tempdimb): New temporary dimensions. - (\pagesizesyyy): Updated. - -2002-06-02 Werner LEMBERG <wl@gnu.org> - - Adding a new keyword `papersize' to the DESC file format (similar - but not completely identical to grolbp's extension). grops now has - a -p command line option to override `papersize'. Finally, grolbp - has been adapted to the new syntax. - - * src/libs/libgroff/paper.cc, src/include/paper.h: New files. It - defines and initializes the `papersizes[]' array with NUM_PAPERSIZES - elements. - * src/libs/libgroff/Makefile.sub (OBJS): Add `paper.o'. - (CCSRCS): Add `paper.cc'. - - * src/include/font.h (font): Add `papersize' element. - * src/libs/libgroff/font.cc (font::unit_scale): New helper function. - (font::scan_papersize): New function. - (font::load_desc): Use it for handling `papersize' keyword. - * src/libs/libgroff/fontfile.cc: Initialize `font::papersize'. - - * src/devices/grops/ps.cc: Include paper.h. - (user_paper_length): New global variable. - (ps_printer): Use paper length as initializer. - (make_printer): Updated. - (main): Handle new `-p' option. - * src/devices/grops/grops.man: Updated. - - * src/devices/grolbp/lbp.cc: Include paper.h. - s/papersizes/lbp_papersizes/. - (set_papersize): Use new `papersizes' array. - (handle_unknown_desc_command): Don't handle `papersize'. - (main): Use `font::scan_papersize' for handling `-p' option. - * src/devices/grolbp/grolbp.man: Updated. - - * man/groff_font.man: Document `papersize'. - * NEWS: Updated. - -2002-05-30 Werner LEMBERG <wl@gnu.org> - - * src/devices/grops/TODO: Updated. - * src/devices/grops/grops.man: More info on paper formats. - * man/groff_font.man: Document `paperheight' and `paperwidth'. - -2002-05-29 Werner LEMBERG <wl@gnu.org> - - * doc/Makefile.sub (CLEANADD): Add grnexmpl.g, groff, and groff-* - to list only if srcdir != currdir. - (distfiles): New target. - - * Makefile.in (EXTRADIRS): Add font/devlj4/generate. - (NOMAKEDIRS): New variable. - (DISTDIRS): Use it. - -2002-05-26 Werner LEMBERG <wl@gnu.org> - - Add .output request, similar to \! at top-level. - - * src/roff/troff/input.cc (transparent): Remove unused declaration. - (output_request): New function. - (init_input_requests): Add it. - Sorted. - * NEWS, doc/groff.texinfo, man/groff_diff.man, man/groff.man: - Document it. - - * Makefile.in (MDEFINES): Add INSTALL_INFO. - (prepare_examples): Fix typo. - * doc/groff.texinfo (@direntry): Fix it. - -2002-05-25 Werner LEMBERG <wl@gnu.org> - - Including the doc subdir into groff's Makefile system. - - * aclocal.m4 (GROFF_INSTALL_INFO): New function. - * configure.ac: Use it. - Generate `doc/Makefile'. - * configure: Regenerated. - - * Makefile.in (infodir, INSTALL_INFO): New variables. - (MDEFINES, uninstall_dirs): Updated. - (OTHERDIRS): Add `doc'. - * Makefile.comm (CLEANDIRADD): New variable. - (mostlyclean): Use it. - - * doc/Makefile.sub, doc/Makefile.in: New files. - * doc/Makefile: Removed. - - * NEWS, INSTALL: Updated. - -2002-05-24 Werner LEMBERG <wl@gnu.org> - - * doc/homepage.ms: Renamed to ... - * doc/webpage.ms: This. - Use `.NHR'. - -2002-05-23 Werner LEMBERG <wl@gnu.org> - - Integrating the `mom' macro package, contributed by Peter Schaffter - <df191@ncf.ca>. - - * contrib/mom/*: New subdirectory tree. - * Makefile.in (docdir, exampledir, htmldocdir): New variables to - be used for documentation files. - (MDEFINES, uninstall_dirs): Use them. - (OTHERDIRS): Add contrib/mom. - * Makefile.comm (.man.n): Add @DOCDIR@, @EXAMPLEDIR@, and - @HTMLDOCDIR@. - * MANIFEST, NEWS: Updated. - -2002-05-22 Gaius Mulley <gaius@glam.ac.uk> - - Change syntax of \O: \O[0] suppresses output, \O[1] enables output - if at outer level; at start-up we are at outer level. - - * src/roff/troff/input.cc (do_suppress): Implement it. - Simplify \O[3]. - - Add option -p to show progress information. - pre-grohtml will now render only one page at a time, reducing the - size of needed disk resources enormously. - - * src/preproc/html/pre-html.cc (imagePageStem): Replaced with... - (imagePageName): New global variable. - (psPageName, show_progress, currentPageNo): New global variables. - (html_system): Close saved stderr and stdout handles. - (write_end_image): Accept a parameter to control \O escape. - (write_start_image): Adapted to new \O meaning. - (char_buffer::write_upto_newline): Updated. - (createAllPages): Replaced with... - (createPage): This new function to create a single page for images. - It uses `psselect' from the psutils package. - (removeAllPages): Removed. - (createImage): Updated. - Handle progress display. - (char_buffer::do_html, char_buffer::do_image) [DEBUGGING]: Removed. - (scanArguments): Add option -p. - (makeTempFiles): Updated to create temp files for psPageName and - imagePageName. - (removeTempFiles): Removed. - (main): Updated. - - * src/devices/grohtml/post-html.cc (header_desc::write_headings, - html_printer::write_header): Append `\0' to `buffer'. - (html_printer::do_eol): Depend on `current_paragraph->emitted_text'. - (main): Handle -p. - * src/devices/grohtml/html-text.cc (html_text::dump_stack_element): - Handle `text_emitted'. - (html_text::table_is_void): Slightly rewritten. - (stop): New external symbol. - (html_text::do_push) [DEBUGGING]: Use it and simplify. - (html_text::shutdown): Call `dump_stack'. - (html_text::do_space): Rewritten. - * src/devices/grohtml/grohtml.man: Document -p and the need of - `psselect'. - - * tmac/www.tmac (DC, HTML-DO-IMAGE, HTML-IMAGE-END): Updated to - new \O syntax. - Call \O[0] if `ps4html' is active. - * tmac/s.tmac (@EQ, @EN): Handle html better. - (@TS, TE): Ditto. - * tmac/html.tmac: Don't use black for background colour. - - * src/roff/troff/node.cc: Include `div.h'. - (troff_output_file::really_print_line): Don't use `is_on'. - (troff_output_file::word_marker, troff_output_file::flush_tbuf - troff_output_file::check_charinfo, - troff_output_file::put_char_width, troff_output_file::put_char, - troff_output_file::determine_line_limits, troff_output_file::draw, - real_output_file::begin_page, glyph_color_node::tprintf, - fill_color_node::tprint, hline_node::tprint, vline_node::tprint): - Use `is_on'. - (troff_output_file::really_on): Call `do_motion'. - (suppress_node::tprint): Use `get_page_number' instead of `%' - register. - Call `reset_output_registers' conditionally on `is_on'. - - * doc/groff.texinfo: Document new syntax of \O. - * NEWS, man/groff_diff.man: Updated. - -2002-05-22 Werner LEMBERG <wl@gnu.org> - - * MORE.STUFF: Add info about David Frey's deroff implementation. - Mention troff.org. - -2002-05-16 Werner LEMBERG <wl@gnu.org> - - Pic's `with' attribute now accepts positions. - - * src/preproc/pic/pic.y: Make `.', BOX, CIRCLE, ELLIPSE, ARC, LINE, - ARROW, SPLINE, and `[' left-associative tokens to fix shift/reduce - conflicts. - (object_spec): Add rule for `WITH' and `position'. - (relative_path): Give `corner' the precedence of `CHOP'. - * src/preproc/pic/object.h (path): New members `pos' and - `is_position'. - * src/preproc/pic/object.cc: Updated initializers of `path'. - (path::follow): Handle `is_position'. - - * doc/pic.ms: Completely updated grammar description. - Many typographical improvements. - -2002-05-15 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/env.cc(hyphen_trie::hpf_getc): Accept ^^x (char - code of x in range 0-127) also. - * doc/groff.texinfo, man/groff_diff.man: Updated. - - Added keywords `north', `south', `east', and `west' for corners - in pic. - - * src/preproc/pic/lex.cc (lookup_keyword): Add NORTH, SOUTH, EAST, - and WEST. - (yylex): Handle them. - * src/preproc/pic/pic.y: Add tokens NORTH, SOUTH, EAST, and WEST. - (corner): Handle them. - -2002-05-14 Werner LEMBERG <wl@gnu.org> - - * src/devices/grops/grops.man: Clarify handling of `download' file. - -2002-05-11 Werner LEMBERG <wl@gnu.org> - - Adding `warnscale' and `spreadwarn' requests, based on a patch from - Jeffrey Friedl <jfriedl@yahoo.com>. - - * src/roff/troff/input.cc (spread_limit, warn_scale, - warn_scaling_indicator): New global variables. - (warnscale_request, spreadwarn_requests): New functions. - (main): Initialize `warn_scale' and `warn_scaling_indicator'. - (init_input_requests): Updated. - (error_type): Add `OUTPUT_WARNING'. - (do_error): Handle it. - (output_warning): New warning function which shows output location. - * src/roff/troff/env.h (spread_limit): New external variable. - * src/roff/troff/env.cc (environment::choose_breakpoint): Use - `output_warning'. - (distribute_space): Emit warning if added space is larger than - `spread_limit'. - (environment::possibly_break_line): Emit warning if a line can't - be adjusted on both sides. - - * doc/groff.texinfo, man/groff_diff.man, man/groff.man: Document it. - -2002-05-08 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/node.cc (special_node::special_node): Use - env_definite_font(curenv) instead of curenv->get_font(). Otherwise - \X''\% crashes, for example. - - * doc/groff.texinfo: Document \! and \? used at top-level. - -2002-05-06 Werner LEMBERG <wl@gnu.org> - - * src/preproc/pic/pic.man: Fix some keyword syntax. - Other minor typographical fixes. - - * src/roff/groff/groff.man: Fix typos. - -2002-05-04 Werner LEMBERG <wl@gnu.org> - - * src/roff/groff/groff.man ([ShortOpt]): Renamed to... - (ShortOpt[]): This to avoid problems with refer. - - * doc/pic.ms: Fix typo. - Fix pic grammar description. - - * tmac/an-old.tmac (ne): Use de1, not de. - -2002-05-03 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Finished separation of glyphs and characters. - Don't use the string `Appendix' for appendix headers (both in - the text and the table of contents). - * man/groff_tmac.man, src/roff/troff/troff.man: Fix order of tmac - directories. - - Use registers LL and LT (similar to -ms) for controlling the - length of title and line, respectively, in the -man and -mdoc - macro packages. - - * tmac/doc-ditroff (doc-setup-page-layout), tmac/doc-nroff - (doc-setup-page-layout): Use \n[LL] and \n[LT]. - * tmac/an-old.tmac: Set \n[LL] and \n[LT] if not defined. - (TH): Use \n[LL]. - (an-header, an-p-footer): Use \n[LT]. - * NEWS, tmac/groff_man.man, tmac/groff_mdoc.man, - doc/groff.texinfo: Document it. - -2002-05-02 Werner LEMBERG <wl@gnu.org> - - * doc/fdl.texi: New file. - * doc/groff.texinfo: Include it. - Define and use @copying. - Starting with separating glyph, symbol, and character. - -2002-04-27 Werner LEMBERG <wl@gnu.org> - - * Makefile.in (EXEEXT): Set it. - * src/*/Makefile.sub (PROG): Add $(EXEEXT) for all non-script - programs. - - * src/include/nonposix.h: Define GS_NAME. - * src/preproc/html/pre-html.cc (createAllPages): Use GS_NAME. - - Some preliminary changes for EMX support under OS/2. - - * src/preproc/pic/main.cc (main), src/roff/groff/pipeline.c: Add - __EMX__ similar to __MSDOS__. - * src/utils/indxbib/indxbib.cc (main) [__EMX__]: Use `unlink'. - -2002-04-25 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Integrated groff_out.man. - Some macro fixes. - -2002-04-23 Werner LEMBERG <wl@gnu.org> - - * man/groff_out.man: Minor fixes. - -2002-04-23 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Moving @cindex entries after @Def* to get - correct page references. - Fixed many index entries. - -2002-04-23 Bernd Warken <bwarken@mayn.de> - - * man/roff.man: Enlarged. - -2002-04-22 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: More examples, other fixes. - -2002-04-20 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/input.cc (pipe_output): Multiple calls to `pi' - will now form a chain, e.g. - - .pi foo - .pi bar - - is now the same as - - .pi foo | bar - - This is for compatibility with plan 9's troff. - - * tmac/tty.tmac: Set default tab values to 0.8i to be compatible - with UNIX troff. - * NEWS: Updated. - - * doc/groff.texinfo: Add documentation of remaining requests and - registers. - -2002-04-19 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Add documentation of remaining escapes. - - * font/devdvi/generate/tc.map: Remove entry for `sr'. - * font/devdvi/*TC: Regenerated. - -2002-04-18 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/input.cc (token::next): Make \H behave consistently - if not in compatibility mode, i.e., increment relative to the - previous height. - * doc/groff.texinfo: Updated accordingly. - -2002-04-17 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Document \\, \e, \E, \., and \c. - -2002-04-16 Bernd Warken <bwarken@mayn.de> - - * src/roff/groff/groff.man: Improve documentation of -P option. - Other minor fixes. - -2002-04-15 Werner LEMBERG <wl@gnu.org> - - Add new escape \F to switch font family. - - * src/roff/troff/input.cc (token::next): Handle \F. - * src/roff/troff/env.cc (environment::set_family): Handle - `interrupted' flag. - * NEWS, doc/groff.texinfo, man/groff_diff.man, man/groff.man: - Document it. - -2002-04-14 Werner LEMBERG <wl@gnu.org> - - * tmac/doc.tmac (doc-tag-list): Use \Z to avoid stretching of - spaces in tags. - -2002-04-13 Werner LEMBERG <wl@gnu.org> - - Implement \f[] as an alternative to \fP. Change \mP and \MP to - \m[] and \M[], respectively. - - * src/roff/troff/symbol.cc (EMPTY_SYMBOL): New global variable. - (symbol::symbol): Handle NULL string and empty string differently. - * src/roff/troff/symbol.h (symbol::is_empty): New inline function. - * src/roff/troff/input.cc (read_escape_name, read_long_escape_name): - Add optional parameter. - Updated calling functions. - (get_copy, do_glyph_color, do_fill_color, token::next): Use - `symbol::is_empty'. - * src/roff/troff/env.cc (environment::set_font): Ditto. - - * src/preproc/pic/troff.cc (troff_output::set_fill, - troff_output::reset_color: Updated. - - * tmac/www.tmac: Updated. - - * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo, - doc/homepage.ms, src/devices/grotty/grotty.man, tmac/groff_www.man: - Updated. - - * tmac/Xps.tmac: Remove some redundant code. - - * tmac/doc-common, tmac/doc-ditroff, tmac/doc-nroff, tmac/doc.tmac, - tmac/dvi.tmac, man/roff.man, man/groff_out.man, man/groff.man, - man/groff_diff.man, src/roff/groff/groff.man: Replace \f[P] with - \f[]. - -2002-04-13 Bernd Warken <bwarken@mayn.de> - - * src/include/printer.h, src/libs/libdriver/printer.cc - (printer::change_fill_color): New member function. - * src/libs/libdriver/input.cc (parse_D_command): Use it. - -2002-04-12 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Completed pass on gtroff reference. - -2002-04-11 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: More fixes. - -2002-04-11 Bernd Warken <bwarken@mayn.de> - - * src/include/color.h: Decorate with `const'. - Use `size_t'. - Include `stddef.h'. - * src/libs/libgroff.color.cc: Decorate with `const'. - Use `size_t'. - (color::color): Initialize members. - * src/libs/libdriver/input.cc (parse_D_command): Handle `f' - command according to the documentation. - - * man/groff_out.man: Updated. - Minor fixes. - -2002-04-11 Gaius Mulley <gaius@glam.ac.uk> - - * src/preproc/html/pre-html.cc (write_start_image): Remove - redundant output. - * tmac/www.tmac (DC, HTML-DO-IMAGE): Ditto. - - * src/devices/grohtml/post-html.cc (page::add_and_encode): Using - \C'hy' caused an assertion failure. - - * src/roff/troff/env.cc (environment::environment): Initialize - `emitted_node'. - (environment::copy): Handle `ignore_next_eol' and `emitted_node'. - -2002-04-10 Werner LEMBERG <wl@gnu.org> - - * man/groff_diff.man, man/groff.man, NEWS, doc/groff.texinfo: - Document pvs request and .pvs register. - -2002-04-09 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Improve and fix documentation of diversions - and environments. - -2002-04-08 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Fix documentation of drawing functions. - Other minor fixes. - -2002-04-07 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Better documentation of double quotes as - arguments. - Other minor fixes. - -2002-04-06 Werner LEMBERG <wl@gnu.org> - - * man/groff_font.man: Document names of special characters better. - * doc/groff.texinfo: Minor improvements. - - * tmac/lbp.tmac: Load latin1.tmac. - * tmac/X.tmac, tmac/Xps.tmac: Load latin1.tmac or cp1047.tmac. - - * font/devX*/*: Regenerated (all chars > 0x80 removed). - -2002-04-05 Werner LEMBERG <wl@gnu.org> - - * tmac/tty.tmac: Don't use shc request. - * tmac/latin1.tmac, tmac/cp1047.tmac: Translate soft hyphen to `\%'. - * NEWS: Updated. - - * man/groff_diff.man: Minor fixes. - - * font/devlbp/*: Remove all `charXXX' entities. - - * src/libs/libgroff/font.cc (font::~font): Deallocate - `special_device_coding'. - (font::load): Use `new' for allocating `special_device_coding'. - * src/libs/libgroff/nametoindex.cc (character_indexer::lookup_char): - Removed unused member. - -2002-04-05 Werner LEMBERG <wl@gnu.org> - - * src/drivers/grops/psrm.cc (skip_possible_newline): New function. - (resource_manager::do_begin_binary, - resource_manager::do_begin_data): Use it. - - * doc/texinfo.tex: Updated to version 4.2. - - * src/roff/troff/token.h: Add TOKEN_ZERO_WIDTH_BREAK for `\:'. - (token::zero_width_break): New inline function. - * src/roff/troff/input.cc (token::next): Use it. - (token::description): Updated. - (encode_char): Ignore `\%', `\&', `\)', and `\:'. - (token::add_to_node_list, token::process): Use it. - * NEWS, doc/groff.texinfo: Updated. - - * src/preproc/eqn/over.cc (over_box::output): Fix typo. - * tmac/tty.tmac: Add missing backslash. - -2002-04-04 Tadziu Hoffmann <hoffmann@usm.uni-muenchen.de> - - * src/preproc/eqn/box.cc (set_script_size, box::top_level): Use - `.ps' register instead of `.s' to handle fractional point sizes. - * src/preproc/eqn/limit.cc (limit_box::compute_metrics, - limit_box::output): Ditto. - * src/preproc/eqn/other.cc (size_box::compute_metrics, - size_box::output): Ditto. - * src/preproc/eqn/over.cc (over_box::compute_metrics, - over_box::output): Ditto. - * src/preproc/eqn/script.cc (script_box::compute_metrics, - script_box::output): Ditto. - * src/preproc/eqn/sqrt.cc (sqrt_box::compute_metrics, - sqrt_box::output): Ditto. - -2002-04-03 Michael Selway <mas@ssl.co.uk> - - * src/drivers/grops/psrm.cc (resource_manager::do_begin_binary): - Fix typo. - -2002-04-03 Werner LEMBERG <wl@gnu.org> - - * doc/homepage.ms: Reduce title size. - * doc/groff.texinfo: Fix documentation of .t register. - Fix handling of colon. - Fix `\' vs. `\\'. - - * src/roff/troff/input.cc (exit_troff): Emit LAST_PAGE_EJECTOR - only if page length is positive to avoid a loop. - - * tmac/an-old.tmac (ne): Increase page length to avoid problems with - tbl. - -2002-04-02 P. Alejandro Lopez-Valencia <dradul@yahoo.com> - - * src/include/nonposix.h, src/roff/groff/pipeline.c: - s/__CYGWIN32__/__CYGWIN__/. - -2002-03-28 Gaius Mulley <gaius@glam.ac.uk> - - * doc/gnu.xpm: New image contributed by Emily Mulley. - * doc/Makefile (gnu.eps, gnu.png): Use pnmdepth. - (homepage.html): Be dependent on gnu.eps. - * doc/homepage.ms: Updated to new image. - - * src/devices/grohtml/post-html.cc (html_printer): New member - `sbuf_prev_hpos'. - (html_printer::flush_sbuf, html_printer::set_char): Set it. - (html_printer::sbuf_continuation): Use it. - -2002-03-28 Werner LEMBERG <wl@gnu.org> - - * src/libs/libgroff/getopt.c: Updated to latest version. - - * tmac/README: More on hyphen.tex license. - -2002-03-26 Larry Kollar <kollar@alltel.net> - - * doc/groff.texinfo: Add documentation of most missing requests. - -2002-03-25 Werner LEMBERG <wl@gnu.org> - - Add three glyphs `t+-', `tmu', and `tdi' which are textual variants - of `+-', `mu', and `di', respectively. - - * font/devascii/R.proto, font/devutf8/R.proto, - font/devlatin1/R.proto, font/devhtml/R.proto, - font/devcp1047/R.proto, font/devlpb/*: Add them. - * font/devps/generate/textmap: Ditto. - * font/devps/*: Regenerated. - * font/devlj4/generate/text.map: Add them. - * font/devlj4/*: Regenerated. - * font/devdvi/generate/tc.map: Use them. - * font/devdvi/generate/texsy.map: Add them. - * font/devdvi/*: Regenerated. - * font/devX*/*: Regenerated. - - * tmac/latin1.tmac, tmac/cp1047.tmac, tmac/tty.tmac, - tmac/tty-char.tmac: Updated. - - * NEWS, man/groff_char.man: Updated. - -2002-03-24 Werner LEMBERG <wl@gnu.org> - - * tmac/dvi.tmac, tmac/X.tmac, tmac/ps.tmac, tmac/html.tmac, - tmac/lj4.tmac, tmac/tty.tmac: Replace most `.char' with `.fchar'. - * tmac/ec.tmac: Remove `.rchar' calls (no longer necessary since - we use `.fchar' in dvi.tmac. - * tmac/dvi.tmac: Improve definition of \[Fo] and \[Fc]. - * tmac/Xps.tmac: Simplify some char definitions. - Add definition for \[f/]. - * man/groff_char.man: Updated for new X.tmac. - - * tmac/README: New file. - -2002-03-23 Phil Lobbes <phil@perkpartners.com> - - * Makefile.comm (.y.o): New rule for make on Solaris 2.5.1 -- the - internal .y.o rule took precendence over the .y.cc rule, compiling - the yacc files with gcc instead of g++. - -2002-03-23 Werner LEMBERG <wl@gnu.org> - - * tmac/dvi.tmac: Add replacement font for `CB'. - - * tmac/doc.tmac: s/request/macro/ in messages. - (doc-generic-macro): Improve error message. - * tmac/groff_mdoc.man: Minor improvements. - -2002-03-22 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Document possible conflict between `tr' and - `char' requests. - -2002-03-21 Werner LEMBERG <wl@gnu.org> - - Improve handling of hyphenation patterns. It is now possible to - use most of TeX's pattern files unmodified. To make the process - more flexible, a new request `hpfcode' has been added which - provides a character code mapping for the `hpf' request. See - comment before hpf_getc() for more details. - - * src/roff/troff/env.cc (insert_hyphenation, hpf_getc): New - functions. - (read_patterns_file): Additional parameter for exception dictionary. - Extended to recognize \pattern, \hyphenation, and \endinput. - (do_hyphenation_patterns_file): Updated. - * src/roff/troff/env.h (hpf_code_table): New extern. - - * src/roff/troff/input.cc (hpf_code_table): New array. - (init_hpf_code_table, hyphenation_patterns_file_code): New - functions. - (hyphenation_code): Handle translation from `trin' correctly. - (main, init_input_requests): Updated. - (charinfo::set_translation): Handle hyphenation code also. - - * src/roff/troff/charinfo.h (charinfo::get_translation_input): New - inline function. - - * src/roff/troff/env.cc (WORD_MAX): Reduced to 256 since `unsigned - char' is used for offsets in hyphenation exceptions. - - * tmac/hyphen.us: Replace with contents of unmodified `hyphen.tex'. - - * NEWS, man/groff_diff.man, man/groff.man: Document it. - -2002-03-20 Larry Kollar <kollar@alltel.net> - - * doc/groff.texinfo: Add documentation for `hpfa' and `trin' - requests. - -2002-03-18 Werner LEMBERG <wl@gnu.org> - - * tmac/html.tmac: Fix serious typo. - -2002-03-17 Larry Kollar <kollar@alltel.net> - - * doc/groff.texinfo: Add documentation for `writec' request. - -2002-03-17 Werner LEMBERG <wl@gnu.org> - - Added request `hpfa' to append hyphenation patterns. - - * src/roff/troff/env.cc (hyphen_trie::read_patterns_file): Add - parameter `append'. - (hyphenation_patterns_file): Renamed to... - (do_hyphenation_patterns_file): This. - (hyphenation_patterns_file, hyphenation_patterns_file_append): New - functions. - (init_hyphen_requests): Updated. - * NEWS, man/groff.man, man/groff_diff.man: Document it. - -2002-03-16 Werner LEMBERG <wl@gnu.org> - - Added request `writec' in analogy to `tmc'. - - * src/roff/troff/input.cc (write_request): Renamed to... - (do_write_request): This. - Added one parameter. - (write_request, write_request_continue): New functions. - (init_input_requests): Updated. - * NEWS, man/groff.man, man/groff_diff.man: Document it. - - * font/devdvi/DESC.in (sizes): Allow all sizes in the range - 5-10000pt. - * NEWS: Document it. - -2002-03-15 Werner LEMBERG <wl@gnu.org> - - * man/groff.man: Add writem request. - - Add request `trin' (translate input) to make `.asciify' work - correctly. This is necessary since `charXXX' entity names are no - longer hardcoded in font definition files. - - * src/roff/troff/charinfo.h (charinfo): Add `asciify_code' and - `translate_input' members. - (charinfo::set_asciify_code, charinfo::get_asciify_code, - charinfo::set_translation_input): New methods. - (charinfo::set_translation): Add third argument. - * src/roff/troff/input.cc (charinfo:set_translation): Set - `asciify_code'. - (do_translate): Add second argument. - (translate_input): New function. - (init_input_requests): Updated. - * src/roff/troff/node.cc (glyph_node::asciify, - composite_node::asciify): Use `get_asciify_code'. - - * tmac/cp1047.tmac, tmac/latin1.tmac: Use `trin'. - - * NEWS, man/groff.man, man/groff_diff.man: Updated. - -2002-03-14 Larry Kollar <kollar@alltel.net> - - * doc/groff.texinfo: Improve documentation of .RS and .RE. - -2002-03-14 Werner LEMBERG <wl@gnu.org> - - Add a new request `sizes' similar to the `sizes' command in DESC - files. - - * src/roff/troff/env.cc (override_sizes): New function. - (init_env_requests): Use it. - * src/roff/troff/token.h: Export `read_string'. - * NEWS, man/groff_diff.man, man/groff.man: Document it. - -2002-03-12 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: More fixes for texinfo 4.1 and higher. - -2002-03-10 Werner LEMBERG <wl@gnu.org> - - * tmac/pspic.tmac: Add support for -Tdvi. - * tmac/dvi.tmac: Include pspic.tmac. - * src/devices/grodvi/grodvi.man: Document it. - * NEWS: Updated. - - * font/devlj4/generate/Makefile: Fix URL of metric files. - -2002-03-09 Werner LEMBERG <wl@gnu.org> - - * PROBLEMS: The static constructor bug has been fixed in z/OS V1R3. - -2002-03-09 Larry Kollar <kollar@alltel.net> - - * tmac/groff_ms.man: Add documentation for RS and RE macros. - -2002-03-08 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Fixes for texinfo 4.1. - -2002-03-07 Werner LEMBERG <wl@gnu.org> - - * src/include/lib.h: Include getopt.h if groff-getopt.h can't be - included. - Handle CYGWIN properly. - -2002-03-07 Paco Andrés Verdú <pandres@dragonet.es> - - * font/devlbp/Makefile.sub (DEVFILES): Add some missing fonts. - * tmac/lbp.tmac: Add some font translations. - -2002-03-02 Werner LEMBERG <wl@gnu.org> - - * font/devcp1047/R.proto, font/devlatin1/R.proto, - font/devhtml/R.proto: Remove `charXXX' entries. - * tmac/tty.tmac, tmac/html.tmac: Load latin1.tmac or cp1047.tmac - where appropriate. - - * font/devlj4/generate/text.map: Remove `charXXX' entries. - * font/devlj4/*: Regenerated all font definition files. - * tmac/lj4.tmac: Load latin1.tmac. - - * src/utils/hpftodit/hpftodit.cc (do_file): Partially undo change - from 2000-06-17: LJ4 metric files are *not* text files. - - * tmac/troffrc, tmac/dvi.tmac, tmac/ps.tmac: Don't use .T string - register to test for EBCDIC. - -2002-03-01 Werner LEMBERG <wl@gnu.org> - - * src/utils/afmtodit/afmtodit.pl: Skip comment lines in encoding - files (as grops already does). - * src/utils/afmtodit/afmtodit.man: Document comment lines in map - files. - * src/devices/grops/grops.man: Document comment lines in encoding - files. - - * tmac/cp1047.tmac: New file. - * tmac/dvi.tmac, tmac/tty-char.tmac: Use it. - * tmac/ps.tmac: Load latin1.tmac or cp1047.tmac. - * tmac/Makefile.sub (NORMALFILES): Updated. - - * tmac/ec.tmac: Don't load latin1.tmac again. - - * font/devps/generate/lgreekmap, font/devps/generate/symbolchars, - font/devps/generate/dingbats.map, - font/devps/generate/dingbats.rmap, font/devps/text.enc, - font/devps/generate/Makefile (symbolmap): Add header comment. - * font/devps/generate/textmap: Ditto. - Remove `charXXX' entries. - * font/devps/symbolmap: Regenerated. - * font/devps/*: Regenerated all font definition files. - -2002-02-28 Werner LEMBERG <wl@gnu.org> - - Add color support to grodvi (for drawing colors are currently - translated to gray values). - - * src/devices/grodvi/dvi.cc (FILL_MAX): Removed. - (dvi_printer): Add `cur_color' member. - (dvi_printer::set_color): New function. - (draw_dvi_printer): Remove `fill'. - (draw_dvi_printer::fill_next): Pass environment as parameter. - Update code for new color support translated to gray. - (dvi_printer::set_char): Updated. - (dvi_printer::begin_page, dvi_printer::end_page): Handle color - changes crossing the page border. - (dvi_printer::draw): Updated. - Remove cases `f' and `F'. - * tmac/dvi.tmac: Add color definitions. - * NEWS, src/devices/grodvi/grodvi.man: Updated. - - * tmac/an-old.tmac (R): Make this a macro to emit a warning if - used incorrectly. - - * aclocal.m4 (GROFF_NEED_DECLARATION): Use test similar to recent - versions of autoconf. - * configure: Updated. - - * doc/homepage.ms: Use `.blm'. - * tmac/www.tmac (www-depth): New auxiliary variable. - (www-pop-level): Don't issue HTML tag. - (ULS, ULE, LI): Use absolute indentation. - - * src/devices/grops/ps.cc (ps_printer::begin_page, - ps_printer::end_page): Switch forth and back to default color while - starting a new page. - -2002-02-27 Werner LEMBERG <wl@gnu.org> - - Add EC and TC fonts to devdvi. - - * src/utils/tfmtodit/tfmtodit.man: Document patching of exbase.mf. - * font/devdvi/generate/cork.map: Renamed to... - * font/devdvi/generate/ec.map: This. - Remove entry for `aq'. - * font/devdvi/generate/tc.map: New file. - * font/devdvi/generate/Makefile (*EC, *TC): New creation rules for - EC and TC fonts. - (FONTS): Updated. - * font/devdvi/*EC, font/devdvi/*TC: New font definition files. - * font/devdvi/Makefile.sub (DEVFILES): Updated. - * tmac/ec.tmac: New file. - * tmac/Makefile.sub (NORMALFILES): Updated. - * NEWS, src/devices/grodvi/grodvi.man: Updated. - * man/groff_char.man: Check `ECFONTS' register. - - * font/devdvi/{TR,TI,TB,TBI,HR}: Fix `name' field. - -2002-02-26 Werner LEMBERG <wl@gnu.org> - - * font/devdvi/generate/*.map: Remove all `charXXX' entries. - * font/devdvi/generate/cork.map: Add 'y and 'Y. - * font/devdvi/*: Updated. - * tmac/dvi.tmac: Formatting. - - Add font `HBI' for the dvi output. - Add support for font families `T' and `H'. - - * font/devdvi/HBI: New file. - * font/devdvi/B: Renamed to ... - * font/devdvi/TB: This. - * font/devdvi/BI: Renamed to ... - * font/devdvi/TBI: This. - * font/devdvi/I: Renamed to ... - * font/devdvi/TI: This. - * font/devdvi/R: Renamed to ... - * font/devdvi/TR: This. - * font/devdvi/H: Renamed to ... - * font/devdvi/HR: This. - * font/devdvi/Makefile.sub (DEVFILES): Updated. - * font/devdvi/generate/Makefile (HBI): New rule. - (FONTS): Updated. - (R, I, B, BI, H): Renamed to ... - (TR, TI, TB, TBI, HR): This, respectively. - (srcdir): Fixed. - * NEWS, src/devices/grodvi/grodvi.man: Updated. - * font/devdvi/DESC.in: Don't mount R, I, B, BI, and CWI. - Add `styles' and `family' keywords. - * tmac/dvi.tmac: Alias `H' to `HR'. - Add some fspecial requests for italic fonts. - Add TR and TI as special. - Add support for `_' with font CWI. - - * src/roff/troff/number.cc (parse_expr): Add missing `break' for - operator `:'. Until now, the expression `0:1' would return 2 - instead of 1. - -2002-02-25 Werner LEMBERG <wl@gnu.org> - - * man/groff_char.man: Added some missing PS glyph names (from the - Adobe Glyph List). - * font/devps/generate/textmap, font/devps/symbolmap: Add - `arrowupdn'. - - * doc/groff.texinfo: Minor additions and fixes. - * man/groff_diff.man: Remove documentation of fp request. This - is already covered in the original troff manual. - Updated to be consistent with other doc files. - * NEWS: Updated. - -2002-02-24 Werner LEMBERG <wl@gnu.org> - - * aclocal.m4 (GROFF_EBCDIC): Don't include `font/devutf8' in - TTYDEVDIRS. - Define new variable OTHERDEVDIRS (containing `font/devlj4 - font/devlbp' if not EBCDIC). - * Makefile.in (TTYDEVDIRS): Always include `font/devutf8'. - (OTHERDEVDIRS): New variable. - (MDEFINES, DEVDIRS, ALLDIRS, DISTDIRS): Updated. - * configure: Regenerated. - - * NEWS, src/devices/grotty/grotty.man: Updated. - -2002-02-23 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/input.cc (do_overstrike, do_bracket, - get_line_arg): Honour input level. - - Add new symbol `mc' corresponding to U+00B5 MICRO SIGN. - - * font/*/*: Implement it in all font files. - * font/devps/generate/textmap, font/devps/generate/symbolchars, - * font/devps/symbolmap: Updated. - * font/devlj4/generate/text.map: Updated. - * font/devdvi/generate/CompileFonts (sizes): Add LaTeX sizes. - * font/devdvi/generate/texmi.map: Updated. - - * font/devutf8/R.proto: Remove all `charXXX' entries. - * font/devutf8/NOTES: Updated. - - * font/devX*/*: Regenerated with xtotroff, using fonts from XFree86 - version 4.1.0. - - * tmac/latin1.tmac, tmac/psold.tmac, tmac/tty-char.tmac: Updated. - - * NEWS, man/groff_char.man: Updated. - -2002-02-21 Phil Lobbes <phil@perkpartners.com> - - * src/include/lib.h [HAVE_SNPRINTF]: Include stdarg.h. - -2002-02-20 Ralph Corderoy <ralph@inputplus.demon.co.uk> - - * src/roff/grog/grog.pl: Fix computation of $refer. - -2002-02-19 Werner LEMBERG <wl@gnu.org> - - * src/include/lib.h [!HAVE_SNPRINTF]: Add declarations for - `snprintf' and `vsnprintf'. - - * src/include/htmlindicate.h: Renamed to... - * src/include/htmlhint.h: This. - * src/include/Makefile.sub: Updated. - * src/preproc/eqn/main.cc: Updated. - -2002-02-18 Werner LEMBERG <wl@gnu.org> - - * man/roff.man, man/groff_out.man, man/groff.man, - man/groff_diff.man, man/ditroff.man, src/roff/groff/groff.man, - src/roff/troff/troff.man: Updated to latest changes in www.tmac. - - * win32-diffs: Updated. - -2002-02-17 Werner LEMBERG <wl@gnu.org> - - * doc/Makefile (clean): Add *.eps. - (MEMACROS): Removed. - (TFLAG): New variable. - (TROFF): Use it. - Add -ww. - (GROFF): Use TFLAG, FFLAG, -U, -p, -e, -t, and -ww. - (.me.dit): Fixed. - (.ms.html, .ms.ascii, .ms.ps, homepage.html): Simplify. - - * tmac/www.tmac: Use dummy diversion while resetting and disabling - `.tl'. - * tmac/e.tmac: Inserted some more `\"' to remove warnings if used - unstripped. - * src/roff/troff/troff.man: Fix order of parameter description. - - * NEWS: Updated. - -2002-02-16 Gaius Mulley <gaius@glam.ac.uk> - - Simplify image handling for grohtml. - Fix <p> bug. - - * src/devices/grohtml/html-text.cc (DEBUGGING): Don't undefine but - comment out. - (html_text::dump_stack): Don't emit newline while debugging. - (html_text::do_push) [DEBUGGING]: Print more info. - (html_text::check_emit_text): Fix handling of <p>. - * src/devices/grohtml/html.h: Updated. - * src/devices/grohtml/output.cc (FPUTC, FPUTS, PUTC): New macros, - replacing `fputc', `fputs', `putc'. If DEBUGGING is defined, they - send its data to stderr also. - Update all callers. - (simple_output::space_or_newline) [DEBUGGING]: Removed. - * src/devices/grohtml/post-html.cc (html_printer::do_links, - html_printer::html_printer): Remove `DEBUGGING' conditionals. - - * src/include/html-strings.h (HTML_IMAGE_{CENTERED,LEFT,RIGHT,END}): - Removed. - * src/libs/libgroff/htmlhint.cc (is_in_graphic_start, - is_inline_image): Removed. - (html_begin_suppress, html_end_suppress): Don't take a parameter. - (graphic_start, graphic_end): Removed. - * src/include/htmlindicate.h: Updated. - * src/preproc/html/pre-html.cc (DEBUG_HTML): Removed. - (macroset_template): New global variable. - (makeFileName): Use `macroset_template'. - (write_end_image): Don't take a parameter. - Don't emit newline. - (write_start_image: Don't emit newline. - (char_buffer::write_upto_newline): Updated. - (char_buffer::skip_to_newline): Renamed to ... - (char_buffer::skip_until_newline): This. - Fix code. - (char_buffer::write_file_troff, char_buffer::write_file_html): - Simplified. - (createAllPages, createImage) [DEBUGGING]: Handle `debug' flag. - (removeAllPages): Remove `DEBUGGING' conditionals. - (addRegDef, dump_args): New functions. - (char_buffer::do_html, char_buffer::do_image): Handle - `www-image-template' command line variable. - Add more debugging code. - (addps4html): Removed. - (removeTempFiles) [DEBUGGING]: Handle `debug' flag. - - * src/preproc/eqn/main.cc: Include `ctype.h'. - (suppress_html): Removed. - (do_file): Updated. - (inline_equation): Use `html_begin_suppress' and - `html_end_suppress'. - * src/preproc/pic/troff.cc: Don't include `htmlindicate.h'. - (troff_output::start_picture, troff_output::finish_picture): - Updated. - * src/preproc/tbl/main.cc: Don't include `htmlindicate.h'. - (process_input_file): Updated. - - * src/roff/troff/div.cc (page_number): Set page number only if the - `ps4html' register isn't defined. - * src/roff/troff/input.cc (image_no): New external variable. - (do_suppress): Use it. - * src/roff/troff/node.h (suppress_node::image_id): New member. - * src/roff/troff/node.cc (image_no): Remove `static' keyword. - (suppress_node::suppress_node): Initialize `image_id' member. - (suppress_node::same): Handle `image_id' also. - (suppress_node::copy): Updated. - (last_image_id): New global variable. - (suppress_node::tprint): Use it. - - * tmac/an-old.tmac (TS, TE, EQ, EN): Use HTML-IMAGE and - HTML-IMAGE-END. - * tmac/pspic.mac (PSPIC): Fix html support. - * tmac/s.tmac (@EQ, @EN, @TS, TE, PS, PE): Ditto. - * tmac/www.tmac (www-image-template): Set up. - (HTMLINDEX): Renamed to... - (HX): This. - (BODYCOLOR): Renamed to... - (BCL): This. - (BACKGROUND): Renamed to... - (BGIMG): This. - (URL): Change order of parameters for consistency. - (MAILTO): Renamed to... - (MTO): This. - (IMAGE, PNG-IMAGE, MARGIN-PNG-IMAGE): Renamed to... - (IMG, PIMG, MPIMG): This. - (HTML-H-BEGIN, HTML-H-END): Renamed to... - (HnS, HnE): This. - (LINKS): Renamed to... - (LK): This. - (LINE): Renamed to... - (HR): This. - (NO-AUTO-RULE): Renamed to... - (NHR): This. - (HTML-TL): Renamed to... - (HTL): This. - (UL-BEGIN, UL-END): Renamed to... - (ULS, ULE): This. - (DROPCAP): Renamed to... - (DC): This. - (TS, TE, EQ, EN): Provide default definitions. - (www-make-unique-name): Updated. - (HTML-IMAGE-INLINE): Fix typo. - * tmac/groff_www.man: Updated. - - * doc/Makefile (homepage.html): Add option -r to grohtml. - Use shortened image name. - * doc/groff.texinfo: Updated info on grohtml strings and macros. - * doc/homepage.ms: Updated and extended. - -2002-02-14 Werner LEMBERG <wl@gnu.org> - - Don't use `CSI 39 m' and `CSI 49 m' but `CSI 0 m'. - - * src/devices/grotty/tty.cc (SGR_DEFAULT_COLOR, - SGR_BACK_DEFAULT_COLOR): Replaced with ... - (tty_printer::put_color): Use it. - (ttr_printer::end_page): Simplify. - -2002-02-13 Werner LEMBERG <wl@gnu.org> - - * tmac/groff_tmac.man: Moved to... - * man/groff_tmac.man: This place. - * tmac/Makefile.sub, man/Makefile.sub: Updated. - -2002-02-12 Werner LEMBERG <wl@gnu.org> - - * src/libs/libgroff/Makefile.sub (snprintf.o): Don't use - $(COMPILE.c) to not include groff's assert.h. - - * src/drivers/grotty/tty.cc (main): Add GROFF_NO_SGR environment - variable. - * NEWS, src/drivers/grotty/grotty.man: Document it. - -2002-02-11 Werner LEMBERG <wl@gnu.org> - - * src/libs/snprintf/snprintf.c: Updated to latest version - (2002-02-11). - - * src/roff/grog/grog.pl (process): Fix handling of `.['. We now - test whether there is `.]' also. - Don't check for spaces after `.['. - * src/roff/grog/grog.sh: Do the same. - -2002-02-10 Werner LEMBERG <wl@gnu.org> - - Illegal -> Invalid. - - * src/libs/libgroff/illegal.cc: Renamed to ... - * src/libs/libgroff/invalid.cc: This. - (illegal_char_table): Renamed to ... - (invalid_char_table): This. - * src/libs/libgroff/Makefile.sub: Updated. - * win32-diffs: Updated. - - * doc/groff.texinfo, src/devices/grops/psrm.cc (ps_get_line), - src/libs/libdriver/input.cc (fatal_command, parse_color_command, - parse_x_command), src/libs/libgroff/font.cc (text_file::next, - font::load), src/preproc/eqn/main.cc (read_line, main), - src/preproc/eqn/lex.cc (file_input::read_line), - src/preproc/pic/lex.cc (file_input::read_line, - simple_file_input::get, simple_file_input::peek), - src/preproc/pic/main.cc (top_input::get, top_input::peek), - src/preproc/pic/pic.man, src/preproc/refer/main.cc - (input_stack::push_file), src/preproc/refer/refer.cc (do_file, - do_bib), src/preproc/tbl/main.cc (table_input::get), - src/preproc/grn/grn.man, src/preproc/grn/main.cc (interpret), - src/roff/troff/input.cc (file_iterator::fill, file_iterator::peek, - do_zero_width, read_request, encode_char, ps_get_line, - transparent_file, get_char_for_escape_name, transparent_translate, - asciify, input_char_description, read_string, set_string), - src/roff/troff/env.cc (environment::add_html_tag), - src/roff/troff/troff.man, tmac/e.tmac (`@(', `(f'): Do it. - - * src/include/lib.h: Updated. - - * src/preproc/eqn/eqn.cc: Removed. - - * NEWS: Updated. - - * src/preproc/grn/hdb.cc (DBRead): Fix fscanf() fields. - -2002-02-09 Werner LEMBERG <wl@gnu.org> - - * doc/gnu.xpm: New image. - * doc/Makefile (DOCS): Add homepage.ps. - Add rules for converting xpm->png and xpm->eps. - Use `gnu.{xpm,eps}' as image names. - * doc/homepage.ms: Updated. - -2002-02-09 Gaius Mulley <gaius@glam.ac.uk> - - * tmac/www.tmac (www-error): New macro, replacing calls to `@error'. - (IMAGE): Change image position parameters to `-L', `-R', and `-C'. - Remove calls to `B1' and `B2' - (PNG-IMAGE): New macro for inclusion of images in PNG format. - (www-left-ll-trap, www-left-po-trap, www-right-ll-trap): New - auxiliary variables for MARGIN-PNG-IMAGE. - (www-finish-left-po, www-finish-right-ll, www-finish-left-ll): New - auxiliary macros for MARGIN-PNG-IMAGE. - (MARGIN-PNG-IMAGE): New macro to put an image in PNG format into - the margin. - (www-heading-no): New auxiliary variable for HTML-H-{BEGIN,END}. - (HTML-H-BEGIN, HTML-H-END): New macros to begin and end a heading. - (DROPCAP): New macro to produce dropcap characters. - (www-do-image): Renamed back to... - (HTML-DO-IMAGE): This. - Updated all callers. - - * doc/Makefile (gnubw.eps): Updated. - * doc/homepage.ms: Updated. - -2002-02-08 Werner LEMBERG <wl@gnu.org> - - * doc/pic.ms: Fixed typos (\(*tx -> \*(tx). - Added `linethick' to table in section `Style Variables'. - -2002-02-08 Gaius Mulley <gaius@glam.ac.uk> - - * src/libs/libdriver/input.cc (get_extended_arg): Fix conditional. - -2002-02-07 Werner LEMBERG <wl@gnu.org> - - Adding options -C (compatibility mode) and -c (grotty's old output - scheme) to nroff. - - * src/roff/nroff/nroff.sh: Implement it. - Remove `-Wall'. - * NEWS, src/roff/nroff/nroff.man: Updated. - - * PROBLEMS: Document bison 1.32 bug. - - Some fixes to make groff compile on z/OS 1.2 UNIX (was OS/390). - - * src/roff/troff/node.cc (make_tfont): Define it earlier. - * src/roff/troff/div.h: Add prototype for `end_diversions'. - * src/roff/troff/input.cc: Add prototype for `process_input_stack'. - * src/roff/troff/env.h: Add prototype for `title'. - - Adding EBCDIC support to grotty. - - * src/devices/grotty/tty.cc (CSI): New macro. - (SGR_*, tty_printer::put_color): Use it. - -2002-02-06 Werner LEMBERG <wl@gnu.org> - - Implementing color support in grotty. The new switch -c activates - the old drawing scheme, disabling color at the same time. The new - switch `-i' selects italic instead of underlining (SGR only). - - * src/devices/grotty/tty.cc (putstring): New define instead of - `fputs'. Updated all callers. - (old_drawing_scheme): New global variable. - (COLOR_CHANGE): New enum value. - (SGR_*): New defines containing color handling escape sequences. - (TTY_MAX_COLORS, DEFAULT_COLOR_IDX): New defines. - (glyph): New members `back_color_idx' and `fore_color_idx'. - (glyph::order): Add COLOR_CHANGE. - (tty_printer): New members `cur_fore_idx', `curr_back_idx', - `is_underline', `is_bold', `cu_flag', `tty_colors'. - New methods `make_underline', `make_bold', `color_to_idx', - `change_color', `put_color'. - (cu_flag): Moved into `tty_printer' class. - (tty_printer::tty_printer): Initialize colors. - (tty_printer::add_char, tty_printer::set_char, tty_printer::special, - tty_printer::draw, tty_printer::end_page): Handle colors also. - (main): Add options `-c' and `-i'. - (usage): Updated. - * NEWS, src/devices/grotty/grotty.man: Updated. - - * src/include/errarg.h (errarg): Add support for `unsigned int'. - * src/libs/libgroff/errarg.c: Implement it. - - * src/include/printer.h (printer): Add `change_color' method - (currently used by grotty only). - * src/libs/libdriver/printer.cc: Implement it. - * src/libs/libdriver/input.cc (parse_D_command, do_file): Add - call to `pr->change_color'. - - * src/roff/troff/node.cc (troff_output_file::fill_color, - troff_output_file::glyph_color): Call `do_motion'. - - * tmac/tty.tmac: Add color definitions. - - * src/roff/groff/groff.man: Minor fixes. - -2002-02-05 Bernd Warken <bwarken@mayn.de> - - * src/libs/libdriver/input.cc: Introduce `EnvInt' typedef and use - it. This is a preparation for future changes. - -2002-02-05 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/input.cc (process_input_stack): Fix the case - where leading spaces are followed by \f or \s; previously, an - incorrect space width has been used. - - * doc/roff.man (quoted_char): Fix argument. - (comment): Define string. - -2002-02-04 Larry Kollar <kollar@alltel.net> - - * doc/groff.texinfo: More fixes. - -2002-02-04 Werner LEMBERG <wl@gnu.org> - - * src/preproc/eqn/box.cc (output_string): Don't use \\*[...]. - * src/preproc/eqn/main.cc (do_file, inline_equation): Call - `restore_compatibility' before `output_string' -- the LINE_STRING - register now already contains proper switches from and to - compatibility mode. - - * man/groff_char.man: Add Euro symbol. - * man/groff_diff.man: Improve documentation of `.am1' and `.as1'. - * tmac/tty.tmac: Add `EUR' as replacement for `eu' and `Eu'. - * doc/groff.texinfo (Defstr*): Print strings with full syntax. - Other minor fixes. - - * doc/Makefile (.SUFFIXES, .texinfo.pdf, clean): Add support for - texinfo->pdf. - (.texinfo.html): Add support for texinfo->html. - -2002-02-03 Werner LEMBERG <wl@gnu.org> - - Added three new requests `ds1', `as1', and `ami'. The former two - are equivalent to `ds' and `as' with the difference that - compatibility mode is saved on entry, switched off during string - expansion, and restored on exit. The latter is the pendant to `dei' - for `am'. - - (do_define_string): Use `define_mode' and `calling mode'. - Insert COMPATIBLE_SAVE and COMPATIBLE_RESTORE at the beginning and - end of string, respectively. - (define_string, append_string): Use `calling_mode'. - (define_nocomp_string, append_nocomp_string, - define_string_indirect): New functions. - (init_input_requests): Updated. - * NEWS, man/groff_diff.man, man/groff.man: Document it. - - * src/preproc/eqn/box.cc (box::top_level, box::extra_space): Use - `as1' for assigning LINE_STRING (this is `10' usually). Sun's - mm macro package accesses this string register directly. - * src/preproc/eqn/main.cc (inline_equation): Use `as1'. - - * tmac/trace.tmac: Trace calls to `am' also. Make it work in - compatibility mode. - -2002-02-02 Larry Kollar <kollar@alltel.net> - - * doc/groff.texinfo, tmac/groff_ms.man: More fixes. - -2002-01-31 Werner LEMBERG <wl@gnu.org> - - * tmac/an-old.tmac (I): Use \, and \/ to improve spacing. - -2002-01-31 Bernd Warken <bwarken@mayn.de> - - * src/devices/grolbp/lbp.cc (main): Delete `pr'. - * man/groff_out.man: Revised and updated. - -2002-01-30 Bernd Warken <bwarken@mayn.de> - - * src/libs/libdriver/input.cc [USE_ENV_STACK]: New macro to comment - out the unused `{' and `}' commands. Undefined by default. - (IntArray): Make `data' private. - (IntArray::operator[], IntArray::get_data, IntArray::len): Use these - new methods instead. - (skip_line_D, skip_to_end_of_line): New functions. - (get_D_fixed_args): Use `skip_line_D'. - Changed to handle dummy odd arguments by ... - (get_D_fixed_args_odd_dummy): This new function. - (get_D_variable_args): Split some code into ... - (get_possibly_integer_args): This new function. - (send_draw): Use more `const'. - (delete_current_env): New function. - (position_to_end_of_args): Use `size_t'. - Updated. - (send_draw): Updated. - (parse_D_command): Handle `c', `C', and `t' better. - Updated. - (do_file): Updated. - -2002-01-29 Werner LEMBERG <wl@gnu.org> - - * NEWS: Revised. - * doc/groff.texinfo: Introduce @Def...List, @Def...Item, and - @Def...ListEnd which replaces @Def...x. This is necessary to get - proper HTML output -- see the comment in the file for more - information. - Updated all calls. - -2002-01-29 Gaius Mulley <gaius@glam.ac.uk> - - Fixes to make color changes of 2002-01-21 work with grohtml. - - * src/devices/grohtml/post-html.cc (style): Updated. - (html_printer): Remove unused methods. - (html_printer::do_font, html_printer::draw, html_printer::set_char, - html_printer::special): Updated. - * src/devices/grohtml/html-text.cc (debugStack, turnDebug, - html_text::dump_stack_element, html_text::dump_stack) [DEBUGGING]: - Added some debugging code. - (html_text::start_tag): Updated. - (html_text::do_push): New method. - (html_text::push_para): Call it. - Add method for handling color. - (html_text::do_color): Updated. - (html_text::shutdown): Handle color. - * src/devices/grohtml/html-text.h (tag_definition): New member - `col'. - Updated. - -2002-01-28 Werner LEMBERG <wl@gnu.org> - - * tmac/ps.tmac, tmac/html.tmac: Fix compatibility mode issues. - -2002-01-27 Gaius Mulley <gaius@glam.ac.uk> - - Add two switches -a and -g to control the antialiasing bits for - text and graphics, respectively. - - * src/devices/grohtml/post-html.cc (main): Dummy code for `-a' and - `-g'. - * src/devices/grohtml/grohtml.man: Document them. - * src/preproc/html/pre-html.cc (MIN_ALPHA_BITS, MAX_ALPHA_BITS): - New macros. - (textAlphaBits, graphicAlphaBits, antiAlias): New global variables. - (setupAntiAlias): New function. - (createAllPages): Updated. - (scanArguments): Handle `-a' and `-g'. - (main): Call `setupAntiAlias'. - * NEWS: Updated. - -2002-01-27 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo (Def*): Call index function after deffn. - - * tmac/html.tmac: Call `nroff' request. - -2002-01-26 Larry Kollar <kollar@alltel.net> - - * tmac/groff_ms.man: Add some omissions. - -2002-01-25 Larry Kollar <kollar@alltel.net> - - * tmac/groff_ms.man: Typographical improvements. - -2002-01-25 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Updated version and copyright. - * src/devices/grops/grops.man: Updated. - - * tmac/groff_tmac.man: Fix `ig' macro. - - * tmac/an-old.tmac (ne): Redefine `ne' request to be a no-op in - nroff mode. - Use `.ne' unconditionally everywhere. - (TS): Only insert some vertical space. Doing a page break is no - longer necessary due to the redefinition of the `ne' request. - - * src/libs/libdriver/input.cc (parse_D_command): Don't emit a - warning for unknown subcommands but parse and pass them to the - device driver. - -2002-01-24 Werner LEMBERG <wl@gnu.org> - - * tmac/groff_www.man, NEWS: Fix typos. - -2002-01-21 Werner LEMBERG <wl@gnu.org> - - Complete revision of color support: - - Adapt programs to the new libdriver/input.cc. - - Color spaces are no longer converted to RGB but transferred as-is - in the troff intermediate output format. - - Handle default color gracefully. troff now supports a `default' - color (which can't be changed). - - grops will now use the proper color space functions if available. - - Update pic. - - Note that currently grohtml doesn't handle colors properly. This - has to be fixed. - - * src/libs/libgroff/itoa.c (UINT_DIGITS): New macro. - (ui_to_a): New function. - * src/include/lib.h: Updated. - - * src/include/color.h (color_scheme): Replace `NONE' with `DEFAULT'. - (color): Simplified; removed all `double' members and methods. - A new array `components' now holds the color parameters. - (color::is_default, color::get_components): New methods. - (color::operator==, color:operator!=): New. - (Red, Green, Blue, Cyan, Magenta, Yellow, Black, Gray): New macros - to make access to the `components' array more comprehensible. - * src/libs/libgroff/color.cc: Implement new color support. - (atoh): Small fixes. - (color::read_encoding): Simplified for new troff intermediate color - output format. - (default_color): New global variable. - - * src/roff/troff/input.cc (default_symbol): New global variable. - (lookup_color): Use it. - (default_black): Removed. - (do_glyph_color, do_fill_color): Simplified. - (define_color): Handle default color. - Improve warnings. - (do_if_request): Handle default color. - * src/roff/troff/env.cc (environment::environment): Initialize - colors with `default_color'. - * src/roff/troff/node.cc (troff_output_file::put): Add method - for `unsigned int'. - (troff_output_file::hex): Removed. - (troff_output_file::fill_color, troff_output_file::glyph_color): - Updated to include/color.h and libdriver/input.cc. - - * src/preproc/pic/object.cc (draw_arrow): New parameter to set - fill color properly (identically to the outline color). \D'f...' - doesn't work any more. - All function calls to it updated. - - * src/devices/grohtml/post-html.cc (html_printer::do_body, main): - Updated. - * src/devices/grohtml/html-text.cc (html_text::issue_color_begin): - Updated. - - * src/devices/grops/ps.cc (ps_output::put_color): New method. - (ps_printer::sbuf_color): Make a real member instead of pointer. - (ps_printer::fill_color, ps_printer::output_color): Removed. - (ps_printer::ps_printer): Updated. - (ps_printer::set_char): Ditto. - (ps_printer::set_color): Use various color schemes. - Use `put_color' method. - (ps_printer::flush_sbuf): Don't set color. - (ps_printer::fill_path): Take `environment' as parameter. - Simplify color handling. - (ps_printer::set_line_thickness): Renamed to ... - (ps_printer::set_line_thickness_and_color): This (and updated). - (ps_printer::set_color): Change second parameter from `complete' - to `fill' which better describes what it does. - (ps_printer::draw): Call `flush_sbuf' to output graphic commands - and text in the right order. - Updated. - Remove branches for `f' and `F'; this is handled by - libdriver/input.cc. - * src/devices/grops/ps.h: Updated. - * font/devps/prologue (FL): Redefined. - ({F,C}r,k,g: New color functions (with and without filling). - - * doc/pic.ms, src/preproc/pic/pic.man: Small fixes. - * man/groff_diff.man, man/groff.man, man/groff_out.man, - doc/groff.texinfo, NEWS: Updated. - -2002-01-20 Bernd Warken <bwarken@mayn.de> - - * src/libs/libdriver/input.cc: Completely rewritten. See comments - in this file for what has been changed. - -2002-01-19 Werner LEMBERG <wl@gnu.org> - - * test-groff: Fix GROFF_FONT_PATH. - * tmac/andoc.tmac: Add dummy macros for equation support -- eqnrc - is read before .TH or .Dd is parsed. - -2002-01-18 Gaius Mulley <gaius@glam.ac.uk> - - * src/libs/libgroff/geometry.cc (check_output_arc_limits): Fix - quadrant boundaries. - -2002-01-18 Werner LEMBERG <wl@gnu.org> - - * devices/grops/ps.cc: Aargh! Fix the fix of the incorrectly - applied last patch. - -2002-01-17 Ruslan Ermilov <ru@FreeBSD.org> - - * tmac/doc.common: Initialize %I register for the %I macro to - avoid (harmless) warning. - * tmac/doc.tmac (Bd): There is no reason to enforce -compact - when in the SYNOPSIS section. - -2002-01-17 Bruno Haible <haible@clisp.cons.org> - - * src/preproc/pic/lex.cc (get_token): Fix typo. - -2002-01-17 Werner LEMBERG <wl@gnu.org> - - * devices/grops/ps.cc: Fix incorrectly applied last patch. - -2002-01-17 Larry Kollar <kollar@alltel.net> - - * tmac/groff_ms.man: Completely rewritten. - -2002-01-16 Werner LEMBERG <wl@gnu.org> - - * tmac/an-old.tmac (TS): Force break, inserting some vertical space. - -2002-01-15 Gaius Mulley <gaius@glam.ac.uk> - - * devices/grops/ps.cc (ps_printer::fill_path): Fix handling of - fill colors. - (ps_printer::draw): Ditto. - -2002-01-14 Ruslan Ermilov <ru@FreeBSD.org> - - * tmac/groff_mdoc.man: Minor fixes. - -2002-01-13 Werner LEMBERG <wl@gnu.org> - - * man/groff_out.man: Some fixes. - -2002-01-13 Gaius Mulley <gaius@glam.ac.uk> - - * doc/pic.ms: Fix typos. - -2002-01-12 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo, doc/groff.man: More on a printable backslash. - -2002-01-10 Werner LEMBERG <wl@gnu.org> - - * font/devutf8/R.proto, font/devhtml/R.prot: Add `Eu' and `eu' - symbols. - * NEWS: Updated. - -2002-01-09 Bernd Warken <bwarken@mayn.de> - - * man/groff_out.man: Revised. - * man/roff.man: Minor fixes. - * src/roff/troff/troff.man: Some reordering. - -2002-01-09 Werner LEMBERG <wl@gnu.org> - - * tmac/an-old.tmac: Add dummy macros for equation support. - -2002-01-07 Werner LEMBERG <wl@gnu.org> - - doc/groff.texinfo: Fix documentation of glyph searching algorithm. - - * tmac/an-old.tmac: Revert change 2001-12-23. This breaks too many - man pages. - * tmac/groff_man.man: Small improvements. - -2002-01-07 Bernd Warken <bwarken@mayn.de> - - * man/groff_diff.man: Revised. - -2002-01-06 Werner LEMBERG <wl@gnu.org> - - * tmac/www.tmac: Remove extraneous backslash. - -2002-01-06 Bernd Warken <bwarken@mayn.de> - - * man/ditroff.man, src/roff/groff/groff.man, man/groff.man: Revised. - -2002-01-05 Werner LEMBERG <wl@gnu.org> - - Integrated groffer, contributed by Bernd Warken. - - * contrib/groffer/*: New. - * Makefile.in, NEWS: Updated. - -2002-01-04 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Added macros `@Defmpreg' and `@Defmpregx' for - registers defined in macro packages. - Revising the ms part. - -2002-01-04 Larry Kollar <kollar@alltel.net> - - * doc/groff.texinfo: Add documentation for ms macros. - -2002-01-02 Werner LEMBERG <wl@gnu.org> - - First step in adding PS support for the Euro symbol. `eu' is the - official Euro logo, `Eu' is a font-specific glyph variant. - - * font/devps/text.enc: Add `Euro' at position 9. - * font/devps/generate/textmap: Add `Euro' as symbol `Eu'. - * font/devps/symbolmap: Regenerated. - - * NEWS: Updated. - -2002-01-02 Bernd Warken <bwarken@mayn.de> - - * man/roff.man: Revised. - -2002-01-01 Bernd Warken <bwarken@mayn.de> - - * src/roff/groff/groff.man: Completely rewritten. - -2001-12-31 Werner LEMBERG <wl@gnu.org> - - * doc/Makefile: Updated. - -2001-12-30 Werner LEMBERG <wl@gnu.org> - - * tmac/www.tmac: Make all names of internal macros/registers/strings - lowercase, and prepend `www-'. - Other minor changes. - * src/roff/troff/troff.man: Add preprocessor string at BOF. - -2001-12-30 Gaius Mulley <gaius@glam.ac.uk> - - Implement option `-b' in grohtml to set the HTML background colour. - - * src/devices/grohtml/post-html.cc (default_background): New global - variable. - (html_printer::html_printer): Initialize `background' to - `default_background'. - (main): Implement option `-b'. - (usage): Updated. - * src/preproc/html/pre-html.cc (scanArguments): Add dummy handling - of `-b' option. - * src/devices/grohtml/grohtml.man: Updated. - * doc/Makefile (.ms.html): Use `-b'. - * tmac/html.tmac: Don't set background color. - - Add new grohtml tag `.html-tl'. - - * src/devices/grohtml/post-html.cc (title_desc): Add `with_h1' - member variable. - (title_desc::title_desc): Updated. - (html_printer::troff_tag): Handle `.html-tl'. - (html_printer::write_title): Use `with_h1'. - * tmac/www.tmac (www-end-nowhere): New auxiliary macro. - (HTML-TL): New macro. - - Add support for unordered lists in HTML. - - * tmac/www.tmac (www-level): New auxiliary register. - (www-level1, www-level2, www-level3): New auxiliary strings. - (www-push-level, www-pop-level): New auxiliary macros - (UL-BEGIN, UL-END, LI): User macros for unordered lists. - - Miscellaneous. - - * src/preproc/html/pre-html.cc (DEFAULT_IMAGE_RES): Increase to 100. - (DEFAULT_VERTICAL_OFFSET): Removed. - (IMAGE_BOARDER_PIXELS): Set to 0. - (A4_LENGTH, A4_OFFSET, LETTER_LENGTH, LETTER_OFFSET): New macros. - (vertical_offset): Initialize with 0. - (gsPaper): New global variable. - (get_resolution): Scan for and return unsigned int. - (get_papersize): New function to get paper length from devps/DESC. - (determine_vertical_offset): New function. - (createAllPages): Produce gray-level images and use proper page - length. - (createImage): Use `-quiet' option of pnmcrop. - (addZ): Fix passing of `-Z'. - (scanArguments): Fix handling of `-o'. - (main): Call `determine_vertical_offset'. - * src/devices/grohtml/post-html.cc (html_printer::draw): Comment out - code for `l'. - - * src/libs/libgroff/tmpfile.cc (add_tmp_file): Fix buffer length. - * src/roff/troff/node.cc (troff_output_file::check_charinfo): Handle - glyph descenders properly. - - * doc/homepage.ms: Include `gnubw.eps'. - * doc/Makefile (gnubw.eps): New rule. - (homepage.html): Depend on `gnubw.eps'. - -2001-12-25 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/input.cc (default_black): Fix return value. - -2001-12-24 Ruslan Ermilov <ru@FreeBSD.org> - - * tmac/doc-common (Dt): Change output of architecture strings. - Do some syntax cleanup. - * tmac/groff_mdoc.man: Updated. - -2001-12-23 Werner LEMBERG <wl@gnu.org> - - Adding an `itc' request (input line trap accepting \c). - - * src/roff/troff/env.h (environment): New member - `continued_input_trap'. - Make `do_input_trap' a friend function instead of `input_trap'. - * src/roff/troff/env.cc (environment::environment, - environment::copy): Updated. - (environment::newline): Implement it. - (do_input_trap): New function. - (input_trap): Call `do_input_trap'. - (input_trap_continued): New function. - (init_env_requests): Updated. - * src/roff/troff/TODO: Updated. - - * tmac/an-old.tmac (SH, SS, B, I, SM, SB, TP): Use `.itc' instead of - `.it'. - - * src/preproc/grn/hdb.cc (DBRead): Really chop after 127 characters. - -2001-12-22 Ruslan Ermilov <ru@FreeBSD.org> - - * tmac/doc-common, tmac/doc-syms: Small updates. - -2001-12-22 Colin Watson <cjwatson@debian.org> - - * tmac/an-old.tmac (an-p-footer): Set title length in environment 1. - -2001-12-22 Bernd Warken <bwarken@mayn.de> - - * MANIFEST: New file. - -2001-12-22 Werner LEMBERG <wl@gnu.org> - - * src/preproc/grn/grn.man: Updated. - -2001-12-22 Solar Designer <solar@openwall.com> - - * src/preproc/grn/hdb.cc (MAXSTRING_S): New macro. - (DBRead): Use it. - -2001-12-19 Werner LEMBERG <wl@gnu.org> - - Implement a fallback character request `.fchar'. - - * src/roff/troff/charinfo.h (charinfo): New flag `fallback'. - (is_fallback): New inline function. - * src/roff/troff/input.cc (do_define_character): New function. - (define_character): Call `do_define_character'. - (define_fallback_character): New function. - (init_input_requests): Add `fchar'. - (charinfo::charinfo): Updated. - (charinfo::set_macro): New argument to set `fallback' flag. - * src/roff/troff/node.cc (make_glyph_node, make_node, - node::add_char): Check `fallback' flag. - * NEWS, man/groff_diff.man, man/groff_man: Updated. - -2001-12-16 Werner LEMBERG <wl@gnu.org> - - * groff.texinfo: Document exact search algorithm for glyphs. - -2001-12-15 Werner LEMBERG <wl@gnu.org> - - * Makefile.cpg, Makefile.ccpg, Makefile.man: Add dummy file to - the left side of $(MANPAGES) rule to make it always non-empty. - -2001-12-14 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/input.cc (default_black): Define default color - `black' if not yet defined. - -2001-12-13 Werner LEMBERG <wl@gnu.org> - - Implement new string-valued register `.fn' to return the current - real (internal) font name. - - * env.cc (environment::get_font_name_string): New function. - (init_env_requests): Add `.fn' register. - * env.h (environment): Updated. - * node.cc (font_info): Make `get_font_name' a friend. - (get_font_name): New function. - * node.h: Updated. - - * man/groff_diff.man, man/groff.man, NEWS: Updated. - -2001-12-12 Ralph Corderoy <ralph@inputplus.demon.co.uk> - - * src/preproc/eqn/main.cc (inline_equation): Fix typos. - -2001-12-12 Werner LEMBERG <wl@gnu.org> - - * tmac/groff_man.man, doc/groff.texinfo: There is no .R macro. - -2001-12-10 Gaius Mulley <gaius@glam.ac.uk> - - * man/groff_diff.man: Adding documentation for \O. - -2001-12-10 Werner LEMBERG <wl@gnu.org> - - * src/preproc/html/pre-html.cc (TROFF_COMMAND): Removed. - (scanArguments): Use PROG_PREFIX for the name of the troff binary. - -2001-12-09 Werner LEMBERG <wl@gnu.org> - - * man/roff.man: Revised. - * src/roff/groff/groff.man: Replace man page references with a - pointer to roff.man. - -2001-12-09 Bernd Warken <bwarken@mayn.de> - - * man/roff.man: Completely rewritten. - -2001-12-06 Ralph Corderoy <ralph@inputplus.demon.co.uk> - - * src/preproc/eqn/main.cc (inline_equation): Improve error message. - -2001-12-05 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/input.cc (get_delim_file_name): Removed since no - longer used. - * src/devices/grohtml/post-html.cc (html_printer::html_printer): Fix - order of initializers. - * NEWS: Updated. - -2001-12-05 Gaius Mulley <gaius@glam.ac.uk> - - * doc/groff.texinfo: Fix documentation of \O. - - * src/devices/grohtml/html-text.cc (html_text::do_indent, - html_text::do_table, html_text::do_emittext, html_text::do_para): - Use `const' for first argument. - (html_text::do_table): Use cast. - * src/devices/grohtml/html-text.h: Updated. - * src/devices/grohtml/output.cc (simple_output::put_string): Add - method for `const string &s'. - * src/devices/grohtml/html.h: Updated. - * src/devices/grohtml/post-html.cc (MAX_STRING_LENGTH): Removed. - (ANCHOR_TEMPLATE): Modified. - (manufacture_headings): New global variable to handle `-h' option. - (is_subsection): Removed. - (char_buffer::add_string): Add `const' to first argument. - Protect against invalid string argument. - Add method for `const string &s'. - (text_glob): Completely redesigned. - (page): Use `const' for strings and remove string length variable. - (page::add_html): Removed. - (page::add_end_encode): New member function. - (to_unicode): Moved upwards. - (title_desc, header_desc): Updated. - (header_desc::write_headings): Updated to new ANCHOR_TEMPLATE - definition. - (html_printer::is_bold, html_printer::make_bold): New member - functions. - (html_printer::end_of_line): Updated. - (generate_img_src, html_printer::do_auto_image, - html_printer::do_title, html_printer::write_header, - html_printer::determine_header_level, html_printer::do_heading, - html_printer::do_linelength, html_printer::do_pageoffset, - html_printer::do_indentation, html_printer::do_tempindent, - html_printer::do_indentedparagraph, html_printer::do_break, - html_printer::flush_sbuf, get_html_translation, - html_printer::begin_page, html_printer::special): Rewritten to get - rid of static string length limit. - (html_printer::troff_tag): Added `.no-auto-rule'. - (html_printer::flush_globs): Small fix. - (html_printer::determine_space): Don't compute `space_width'. - (html_printer::translate_to_html): Renamed to ... - (html_printer::emit_html): This (with updates). - (html_printer::write_header): Implement `-h' option. - (html_printer::draw): Remove commented-out code. Handle `F' - command. - (html_printer::add_char_to_sbuf): Removed. - (html_printer::add_to_sbuf): Rewritten. - (html_printer::sbuf_continuation): Fixed. - (html_printer::seen_backwards_escape, reverse, - html_printer::remove_last_char_from_sbuf): Removed. - (char_translate_to_html, str_translate_to_html): Removed. - (html_printer::overstrike): New function member. - (html_printer::set_char): Use it. - (html_printer::do_body): New function member. - (html_printer::~html_printer): Use it. - (main): Handle `-h' option. - (usage): Updated. - * src/devices/grohtml/grohtml.man: Document -h switch. - - * src/preproc/html/pre-html.cc: Include searchpath.h - Replace `POSTSCRIPTRES' macro with `postscriptRes' variable. - (get_resolution): New function. - (checkImageDir): Use `0777' permissions in mkdir() - (write_start_image): Rewritten to use `\O[5...]'. - (createImage, generateImages): Updated. - (main): Handle `F' and `h' options. - Use `get_resolution'. - - * src/roff/troff/input.cc (begin, end, image): Removed. - (do_suppress): Take parameter. - Handle modified syntax of `\O'. - (token::next): Updated. - (init_markup_requests): Removed. - (main): Updated. - - * src/roff/troff/div.h: Add declaration for begin_page(). - - * tmac/color-html.tmac: Removed. Contents moved to... - * tmac/html.tmac: Here. Set background color. - * tmac/color.tmac: Removed. Contents moved to... - * tmac/ps.tmac: Here. - * tmac/www.tmac: Remove the title command when generating images - for html. - (NO_AUTO_RULE): New macro. - (HTML_DO_IMAGE): Use revised `\O' escapes. - * tmac/Makefile.sub, tmac/groff_www.man, tmac/troffrc: Updated. - -2001-12-02 Werner LEMBERG <wl@gnu.org> - - * tmac/groff_mdoc.man: Fix typo. - -2001-12-01 Colin Watson <cjwatson@debian.org> - - * man/roff.man: Fix typo. - -2001-11-29 Werner LEMBERG <wl@gnu.org> - - * src/libs/libbib/map.c, src/utils/pfbtops/pfbtops.c: Include - stdlib.h. - - * src/roff/troff/input.cc (read_draw_node): Emit error message if - more than one argument to \D'f ...'. - - * tmac/Makefile.sub (NORMALFILES): Add lbp.tmac. - -2001-11-28 Werner LEMBERG <wl@gnu.org> - - * tmac/an-old.tmac, tmac/doc.tmac: Assure that the macro package is - loaded only once. - - * tmac/groff_man.man: Minor cosmetic fix. - -2001-11-27 Werner LEMBERG <wl@gnu.org> - - * src/roff/groff/groff.man, tmac/groff_tmac.man, - tmac/groff_www.man: s/mwww/www/. - -2001-11-26 Werner LEMBERG <wl@gnu.org> - - * aclocal.m4 (GROFF_MKSTEMP): Implement test using C++ linkage. - * configure: Regenerated. - * win32-diffs: Updated. - - * tmac/groff_mwww.tmac: Renamed to ... - * tmac/groff_www.tmac: This. - * tmac/mwww.tmac: Removed. - * NEWS, tmac/Makefile.sub: Updated. - -2001-11-21 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Improve documentation of the `\v' escape. - Fix explanation of `\D' and `rt'. - -2001-11-20 Werner LEMBERG <wl@gnu.org> - - * tmac/an-old.tmac (an-header): Set header length equal to page - width. - * doc/groff.texinfo: Improve documentation of `ne' request. Other - minor fixes. - * NEWS: Small fix. - -2001-11-19 Werner LEMBERG <wl@gnu.org> - - * NEWS, man/Makefile.sub: Updated. - -2001-11-19 Bernd Warken <bwarken@mayn.de> - - * man/ditroff.man: New file. - -2001-11-17 Werner LEMBERG <wl@gnu.org> - - * man/groff_differences.man: Renamed to ... - * man/groff_diff.man: This. Updated. - * man/Makefile.sub, src/roff/troff/troff.man, NEWS: Updated. - - * src/preproc/html/pushbackbuffer.cc: Renamed to ... - * src/preproc/html/pushback.cc: This. Updated. - * src/preproc/html/pushbackbuffer.h: Renamed to ... - * src/preproc/html/pushback.h: This. - * src/preproc/html/Makefile.sub, src/preproc/html/pre-html.cc: - Updated. - - * src/libs/libgroff/htmlindicate.cc: Renamed to ... - * src/libs/libgroff/htmlhint.cc: This. - * src/libs/libgroff/Makefile.sub: Updated. - - * tmac/an-old.tmac (an-end): Fix page length. - -2001-11-16 Werner LEMBERG <wl@gnu.org> - - * NEWS, man/groff_differences.man, doc/groff.texinfo: Updated. - * man/Makefile.sub: Include groff_differences.man. - * VERSION: Set to 1.18. - * REVISION: Set to 0. - -2001-11-16 Bernd Warken <bwarken@mayn.de> - - * src/roff/troff/input.cc (do_define_macro): Allow whitespace before - the second dot (or ending macro name) to end a macro. - * doc/groff.texinfo: Doc fix. - -2001-11-16 Ruslan Ermilov <ru@FreeBSD.org> - - * tmac/doc-common (doc-header): Handle very long document titles - better. - -2001-11-16 Werner LEMBERG <wl@gnu.org> - - * tmac/doc.tmac (doc-do-Bl-args): Fix .substring requests. - -2001-11-15 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/troff.man: Revised and split into troff.man and... - * man/groff_differences.man: New file. - * NEWS: Updated. - -2001-11-13 Werner LEMBERG <wl@gnu.org> - - * tmac/an-old.tmac (TS, TE): New macros for table support. - -2001-11-12 Werner LEMBERG <wl@gnu.org> - - * src/include/lib.h: Provide a fix for emx to not include - groff-getopt.h. - -2001-10-27 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/input.cc (substring_macro): Fix computation of - boundary values. - -2001-10-20 Werner LEMBERG <wl@gnu.org> - - Undo change from 2001-08-28. - - * src/roff/troff/input.cc (have_input): New global variable. - (token::next): Set `have_input' for \f, \H, \R, \s, and \S if not - in compatibility mode. - (process_input_stack): Use it. - -2001-10-19 Ruslan Ermilov <ru@FreeBSD.org> - - * tmac/doc.tmac (doc-flag-recursion): Protect arguments against - being handled as end-of-sentence characters, - -2001-10-10 Gaius Mulley <gaius@glam.ac.uk> - - * src/roff/troff/input.cc (file_iterator): New members - `suppress_newline_flag' and `seen_escape'. - (file_iterator::next_file): Updated. - (file_iterator::fill): Use it. - (string_iterator): New member `suppress_newline_flag'. - (string_iterator::fill): Set it. - (get_color_element): Use MAX_COLOR_VAL. - * src/roff/troff/env.cc (environment): Remove `need_eol'. - (no_fill): Don't set `env->ignore_next_eol'. - (environment::newline): Handle `eol' tag properly. - Emit `eol.ce'. - (environment::add_html_tag): Set `env->ignore_next_eol'. - Don't handle `.ce'. - * src/roff/troff/env.h (environment): Updated. - - * src/devices/grohtml/post-html.cc (text_glob::is_eol_ce): New - member function. - (html_printer::outstanding_eol): New member function. - (html_printer::do_title): Use new functions. - (html_printer::troff_tag): Test `id_eol_ce'. - -2001-10-10 Werner LEMBERG <wl@gnu.org> - - * tmac/color.tmac, tmac/color-html.tmac: Use `.do' to make those - files work with -C also. - -2001-10-05 Werner LEMBERG <wl@gnu.org> - - * doc/pic.ms: Minor fix. - * src/preproc/html/pre-html.cc (scanArguments): Don't handle `-?' - as a valid command line switch. - * src/devices/grohtml/post-html.cc (main): Ditto. - (usage): Updated. - * src/devices/grohtml/grohtml.man: Updated. - * src/roff/groff/groff.cc (main): Pass `-v' to predriver also. - -2001-10-04 Werner LEMBERG <wl@gnu.org> - - Implementing color support in troff, pic, grops, and grohtml. These - changes are based on a major patch provided by Gaius Mulley - <gaius@glam.ac.uk>. - - New request: `defcolor', supporting rgb, cmy, cmyk, and gray - definitions with both hex values and fractions. - - New escapes: \m and \M for drawing and background color, - respectively. This corresponds to the troff output commands `m' - and `DF'. - - groff and troff accept command line switch `-c' to disable color - output (which is automatically disabled in compatibility mode). - - New scaling indicator `f' for fractions (1f = 65536u). - - New conditional operator `m' to test for defined colors with `if' - and `ie'. - - New keywords `color' (or `colour', `colored', `coloured'), `outline' - (or `outlined'), and `shaded' added to pic. - - * src/include/color.h: New file. - * src/include/driver.h: Include it. - * src/include/printer.h: Include color.h. - (environment): New members `col' and `fill'. - (printer): Remove `adjust_arc_center' member function. - * src/include/Makefile.sub: Updated. - - * src/libs/libdriver/input.cc (do_file): Initialize `env.col' and - `env.fill'. - Handle `m' and `DF' troff commands. - * src/libs/libgroff/color.cc: New file. - * src/libs/libgroff/Makefile.sub: Updated. - - * src/preproc/html/pre-html.cc (IMAGE_BORDER_PIXELS): Set to 2. - (stop): Removed. - (createImage): Fix computation of `y2'. - Use `pnmcrop' also. - (buffer::write_file_html): Remove calls to `stop'. - - * src/preproc/pic/common.h (common_output): New abstract function - members `set_color', `reset_color', `get_last_filled', and - `get_outline_color'. - * src/preproc/pic/object.h: Add `IS_SHADED' and `IS_OUTLINED'. - (object_spec): Add members `shaded' and `outlined'. - * src/preproc/pic/output.h (output): `command' is now abstract. - New function members `set_color', `reset_color', `get_last_filled', - and `get_outline_color'. - * src/preproc/pic/lex.cc (lookup_keyword): Recognize `colo[u]r[ed]', - `outline[d]', and `shaded'. - * src/preproc/pic/object.cc (output::command): Removed. - (output::set_location): Moved to output.h. - (graphic_object): Add protected members `outline_color' and - `color_fill'. - Add member functions `set_outline_color', `get_outline_color', and - `set_fill_color'. - (closed_object): Add member function `set_fill_color'. - Add member `color_fill'. - (graphic_object::print_text): Use `out->set_color' and - `out->reset_color'. - (box_object::print, ellipse_object::print, circle_object::print, - line_object::print, spline_object::print, arc_object::print): Ditto. - (object_spec::make_object): Implement `IS_OUTLINED' and `IS_SHADED'. - * src/preproc/pic/pic.y: Add tokens `COLORED', `OUTLINED', and - `SHADED', making them `%left'. - Add rules `object_spec [SHADED|COLORED|OUTLINED] text'. - * src/preproc/pic/tex.cc (tex_output): New dummy function members - `set_color', `reset_color', `get_last_filled', and - `get_outline_color'. - * src/preproc/pic/troff.cc (simple_output): New abstract function - members `set_color', `reset_color', and `get_last_filled'. - (simple_output::polygon, simple_output::circle, - simple_output::ellipse): Use `get_last_filled'. - (troff_output): New members `last_filled' and `last_outlined'. - New function members `set_color', `reset_color', `get_last_filled', - and `get_outline_color'. - (troff_output::finish_picture): Use `reset_color'. - (troff_output::set_fill): Test `last_filled'. - * src/preproc/pic/pic.man: Updated. - - * src/roff/groff/groff.cc (main): Implement `-c' option. - (synopsis, help): Updated. - src/roff/groff/groff.man: Updated. - - * src/roff/troff/troff.h: Include color.h. - (warning_type): Add WARN_COLOR. - * src/roff/troff/env.h (environment): New members - `{cur,prev}_{glyph,fill}_color'. - New member functions `get_{prev_,}{glyph,fill}_color'. - * src/roff/troff/env.cc: Initialize and implement them. - * src/roff/troff/input.cc: New global variable `disable_color_flag'. - Replace `NULL' with `0' everywhere for consistency. - (lookup_color, default_black, do_glyph_color, do_fill_color, - get_color_element, read_rgb, read_cmy, read_cmyk, read_gray, - define_color): New functions. - (token::next): Implement \M and \m escapes. - (do_if_request): Implement `m' operator. - (usage): Updated. - (main): Implement `-c' option. - (init_markup_requests): Add `defcolor' request. - (warning_table): Add `color' warning. - * src/roff/troff/node.h (glyph_color_node, fill_color_node): New - classes. - * src/roff/troff/node.cc (troff_output_file): New members - `current_{page,glyph}color'. New member functions `put_hex', - `glyph_color', and `fill_color'. - (glyph_color_node::*, fill_color_node::*): Implement it. - * src/roff/troff/number.cc (SCALE_INDICATOR_CHARS): Add `f'. - (parse_term): Add support for `f'. - * src/roff/troff/troff.man: Updated. - - * src/devices/grodvi/dvi.cc (draw_dvi_printer::draw): Add dummy - entry for `F'. - * src/devices/grolbp/lbp.cc (lbp_printer::draw): Ditto. - * src/devices/grolj4/lj4.cc (lj4_printer::draw): Ditto. - - * src/devices/grohtml/html-text.h (HTML_TAG): Add COLOR_TAG. - (tag_definition): Use `void *' for arg1. - (html_text): New member functions `do_color' and `done_color'. - Use `void *' for second parameter of `push_para' member function. - New `push_para' member function with a single parameter. - Use `char *' for parameter of `issue_table_begin' member funtion. - New `issue_color_begin' member function. - * src/devices/grohtml/html-text.cc (html_text::end_tag): Handle - COLOR_TAG. - (html_text::issue_color_begin): New function. - (html_text::issue_table_begin): Use `char *' for parameter. - (html_text::start_tag, html_text::shutdown, - html_text::check_emit_text): Updated. - (html_text::push_para): Use `void *' for second parameter. - Add same function with only one parameter. - (html_text::do_*): Updated. - (html_text::do_color, html_text::done_color): New functions. - * src/devices/grohtml/post-html.cc (style): New member `col'. - Mew member `style' with 6 parameters. - (style::style, style::operator==): Updated. - (html_printer::do_font): Use it. - (html_printer::draw): Add dummy entry for `F'. - (html_printer::set_char): Updated. - * src/devices/grohtml/grohtml.man: Updated. - - * src/devices/grops/ps.cc (ps_output::put_float): Use `%g' to have - trailing zeroes removed. - (ps_printer): New members `sbuf_color', `fill_color', and - `output_color'. - Removed member `fill'. - New member function `set_color'. - (ps_printer::ps_printer, ps_printer::set_char): Updated. - (ps_printer::flush_sbuf, ps_printer::set_line_thickness, - ps_printer::fill_path, ps_printer::draw): Use `set_color'. - - * tmac/color-html.tmac, tmac/color.tmac: New files. - * tmac/troffrc: Include them. - * tmac/www.tmac (URL, FTP, MAILTO): Use blue color. - * tmac/Makefile.sub: Updated. - - * NEWS, doc/groff.texinfo, doc/pic.ms, man/groff_out.man, - man/groff.man: Updated. - * font/devps/prologue.ps: Define FC and CO functions. - -2001-10-04 Gaius Mulley <gaius@glam.ac.uk> - - Fix incorrect cropping of images and incorrect handling of special - characters. Fix handling of file names in \O. - - * src/include/geometry.h: New file. - * src/libs/libgroff/geometry.cc: New file. - * src/libs/libdriver/printer.cc (printer::adjust_arc_center): Moved - to `geometry.cc'. - * src/roff/troff/input.cc (get_delim_file_name): Fixed problem with - initial spaces. - (do_suppress): Updated. - * src/roff/troff/node.cc: Include geometry.h. - (troff_output_file::flush_tbuf): Fixed parameters to - `check_output_limits'. - (troff_output_file::check_charinfo): Ditto. - (troff_output_file::determine_line_limits): Add support for `Da' - and `Dl' commands. - - * src/devices/grohtml/post-html.cc (str_translate_to_html): - Add new parameter `is_special' to decode special characters from - escape sequences. - (html_printer::do_title, html_printer::do_heading, - html_printer::do_indentedparagraph, - html_printer::translate_to_html, html_printer::special): Updated. - -2001-10-03 Werner LEMBERG <wl@gnu.org> - - * Makefile.sub (DISTCLEANFILES): Add stamp-h. - Fix entry for config.h. - * test-groff (GROFF_BIN_PATH): Add $builddir/roff/groff. - * tmac/troffrc: Translate nonbreakable space character to `\~'. - * src/preproc/eqn/eqn.man: Document -d command line option. - -2001-09-27 Werner LEMBERG <wl@gnu.org> - - * man/groff.man: Use - - .ev xxx - .na - .nh - <table> - .ev - - instead of the old code (`.ad .hy' after the table) to suppress - incorrect hyphenation for grohtml output. - -2001-09-22 Werner LEMBERG <wl@gnu.org> - - * man/groff_font.man, man/groff_out.man: Minor fixes. - -2001-09-20 Werner LEMBERG <wl@gnu.org> - - * PROBLEMS: Updated, reordered. Improved EPS section (thanks to - Arnold Robbins <arnold@skeeve.com>). - -2001-09-09 Werner LEMBERG <wl@gnu.org> - - * configure: Regenerated with autoconf 2.52. - - * doc/groff.texinfo: Complete revision of indices. - -2001-09-07 Werner LEMBERG <wl@gnu.org> - - * doc/Makefile (clean): Updated to delete all indices. - -2001-09-05 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/troff.man: Remove superfluous line. - - * tmac/s.tmac: Enable all warnings only if no -W or -w option is - given on the command line (or rather, if only the default warnings - are set). - -2001-09-03 Werner LEMBERG <wl@gnu.org> - - * man/groff.man, src/preproc/eqn/eqn.man, tmac/groff_mdoc.man: Don't - use .ne for TTY devices. - -2001-08-31 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/token.h, src/roff/troff/input.cc: - s/TOKEN_TRANSPARENT_ESCAPE/TOKEN_OPAQUE_ESCAPE/. - -2001-08-28 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/token.h (token_type): Add TOKEN_TRANSPARENT_ESCAPE. - * src/roff/troff/input.cc (token::next): Return - TOKEN_TRANSPARENT_ESCAPE for \f, \H, \R, \s, and \S if not in - compatibility mode. - (token::description): Updated. - (process_input_stack): Reset `bol' for TOKEN_TRANSPARENT_ESCAPE. - (token::add_to_node_list, token::process): Ignore - TOKEN_TRANSPARENT_ESCAPE. - -2001-08-27 Werner LEMBERG <wl@gnu.org> - - * tmac/an-old.tmac: Fix `S' string. - -2001-08-26 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/troff.man: Don't use .ne for TTY devices. - -2001-08-25 Werner LEMBERG <wl@gnu.org> - - * doc/pic.ms: Replace `\\' with `\e' (and fixing some single - backslashes). - Many other minor fixes. - - * configure.ac: Add message at end to inform how to compile - xditview. - * configure: Regenerated. - -2001-08-24 Werner LEMBERG <wl@gnu.org> - - * src/include/getopt.h, src/libs/libgroff/{getopt.c, getopt1.c}: - Updated to latest version of libc. - -2001-08-23 Werner LEMBERG <wl@gnu.org> - - * configure.ac: Don't create subdirectories before AC_CONFIG_FILES. - Autoconf 2.50 and newer can handle this. - * configure: Regenerated. - -2001-08-21 Werner LEMBERG <wl@gnu.org> - - * doc/pic.ms: Fix typo. - * src/preproc/tbl/tbl.man: Document case of global options. - -2001-08-21 Gaius Mulley <gaius@glam.ac.uk> - - * src/devices/grohtml/post-html.cc (html_printer::end_font): Fix - handling of `CR' font. - -2001-08-20 Werner LEMBERG <wl@gnu.org> - - Use a config.h file. - - * src/include/lib.h: Include config.h. - * All C files: Ditto (if necessary). - * All C++ source and header files: Include lib.h first (if - necessary). - - * src/include/config.hin: New file (autogenerated by autoheader). - * stamp-h.in: New file. - * configure.ac: Updated. - * aclocal.m4: Add third parameters to AC_DEFINE macros. - (GROFF_ARRAY_DELETE): Simplified. - * Makefile.sub (DISTCLEANFILES): Updated. - Added targets for remaking config.status, config.hin, config.h, - stamp-h.in, and stamp-h. - * configure: Regenerated. - -2001-08-19 Werner LEMBERG <wl@gnu.org> - - * NEWS: Updated. - -2001-08-18 Sebastian Krahmer <krahmer@suse.de> - - * src/preproc/pic/pic.y (format_number): Use do_sprintf(). - (do_sprintf): Use snprintf(). - -2001-08-18 Werner LEMBERG <wl@gnu.org> - - * src/libs/snprintf/*: Added an snprintf module written by Mark - Martinec. - * src/libs/libgroff/Makefile.sub: Updated. - * configure.ac: Add test for snprintf(). - * Makefile.in: Updated. - * configure: Regenerated. - - * src/preproc/html/pre-html.cc (make_message): Reactivate code which - uses snprintf(). - -2001-08-14 Ruslan Ermilov <ru@FreeBSD.org> - - * tmac/doc.tmac (Ex): New implementation. - * tmac/doc-common, tmac/groff_tmac.man: Updated. - -2001-08-13 Ruslan Ermilov <ru@FreeBSD.org> - - * tmac/doc.tmac (Rv): Implement support for 0 or more than 1 - argument. - * tmac/groff_tmac.man: Updated. - -2001-08-13 Werner LEMBERG <wl@gnu.org> - - * src/preproc/tbl/tbl.man: Minor documentation update. - -2001-08-13 John David Anglin <dave@hiauly1.hia.nrc.ca> - - * src/libs/libgroff/tmpname.cc: Add prototype for gettimeofday(). - * configure.ac: Add declaration test for gettimeofday(). - * Makefile.in: Document NEED_DECLARATION_GETTIMEOFDAY defines. - * aclocal.m4: Include sys/time.h for gettimeofday declaration test. - * configure: Regenerated. - -2001-08-11 Werner LEMBERG <wl@gnu.org> - - * aclocal.m4 (GROFF_MKSTEMP): Define HAVE_MKSTEMP. - * configure.ac: Add declaration test for strcasecmp(). - * Makefile.in: Updated. - * configure: Regenerated. - * src/include/lib.h [!HAVE_MKSTEMP]: Add prototype for mkstemp() -- - this is necessary because groff's mkstemp.cc is C++. - Add declaration conditionally for strcasecmp(). - -2001-08-10 Werner LEMBERG <wl@gnu.org> - - Integrated pic2graph, contributed by Eric S. Raymond. - - * contrib/pic2graph/{Makefile.sub, pic2graph.sh, pic2graph.man}: New - files. - * Makefile.in, NEWS: Updated. - - * src/preproc/tbl/tbl.man: Revised. - -2001-08-09 Eric S. Raymond <esr@thyrsus.com> - - * src/preproc/tbl/tbl.man: Extended to cover all tbl features. - -2001-08-09 Werner LEMBERG <wl@gnu.org> - - * src/preproc/tbl/main.cc (process_data): Fix recognition of .lf - requests. - -2001-08-08 Paul Eggert <eggert@twinsun.com> - - * Makefile.sub (configure): Depend on configure.ac, not - configure.in. - * INSTALL.gen: Upgrade to autoconf 2.52's INSTALL. - -2001-08-07 Werner LEMBERG <wl@gnu.org> - - * src/utils/afmtodit/afmtodit.man, src/roff/groff/groff.man: Minor - fixes. - -2001-08-06 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/troff.man: Improve documentation of -E option. - -2001-07-28 Ralph Corderoy <ralph@inputplus.demon.co.uk> - - * src/preproc/html/pushbackbuffer.cc (pushBackBuffer::readNumber): - Simplified. - -2001-07-27 Werner LEMBERG <wl@gnu.org> - - * src/preproc/refer/refer.cc: Undo last change. - * src/devices/grohtml/post-html.cc: Ditto. - -2001-07-26 Werner LEMBERG <wl@gnu.org> - - * src/preproc/refer/refer.cc: Include `lib.h'. - * src/devices/grohtml/post-html.cc: Ditto. - -2001-07-25 Gaius Mulley <gaius@glam.ac.uk> - - * aclocal.m4 (GROFF_PAGE): Add `AC_DEFINE(PAGEA4)'. - * src/preproc/html/pre-html.cc: Use it for DEFAULT_VERTICAL_OFFSET. - * Makefile.in: Comment updated. - * configure: Regenerated. - -2001-07-25 Werner LEMBERG <wl@gnu.org> - - * src/preproc/pic/pic.cc: Removed. - * src/preproc/pic/pic_tab.h: Removed. - * src/preproc/refer/label.cc: Removed. - - * doc/Makefile (.ms.html): Don't use a file name extension in - argument to grohtml's -I option. - * Makefile.in (dist): Remove CVS directories. - Call `distfiles' target. - - * src/devices/grohtml/grohtml.man: Add information about valid - versions of pnmtopng. - * src/preproc/html/pre-html.cc (TRANSPARENT): Use `white' as colour - name instead of number. - -2001-07-24 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Minor fixes. - -2001-07-21 Gaius Mulley <gaius@glam.ac.uk> - - * doc/Makefile (.ms.html): Put image files into a subdirectory. - (clean): Updated. - -2001-07-20 Werner LEMBERG <wl@gnu.org> - - * src/libs/libgroff/tmpname.cc: New file, defining get_tempname(). - * src/libs/libgroff/mkstemp.cc: New file. - * src/libs/libgroff/mksdir.cc: New file. - * src/libs/libgroff/tmpfile.cc [HAVE_MKSTEMP_PROTO]: Removed. - (xtmpfile) [!HAVE_MKSTEMP]: Removed. - * src/libs/libgroff/Makefile.sub: Updated. - * src/include/lib.h: Add mksdir() prototype. - * src/include/posix.h: Define S_IXUSR if not yet defined. - - * src/preproc/html/pre-html.cc (MAX_RETRIES): Removed. - (createAllPages): Use mksdir() instead of current code. - * src/utils/indxbib/indxbib.cc [HAVE_MKSTEMP_PROTO]: Removed. - (main): [!HAVE_MKSTEMP]: Removed. - - * aclocal.m4 (GROFF_MKSTEMP): Updated to use new mkstemp.cc file. - (GROFF_INTTYPES_H, GROFF_UNSIGNED_LONG_LONG, GROFF_UINTMAX_T): New - macros. - * configure.ac: Add tests for stdint.h, sys/time.h, and - gettimeofday(). - Call new GROFF_xxx macros. - * configure: Regenerated. - * Makefile.in: Comments updated. - -2001-07-20 Gaius Mulley <gaius@glam.ac.uk> - - * src/preproc/html/pre-html.cc (scanArguments): Use getopt_long() - instead of current code. - * src/devices/grohtml/post-html.cc (main): Handle `-d' option. - * src/roff/groff/groff.cc (possible_command::insert_args): New - function. - (main): Use it for predriver handling instead of insert_arg(). - -2001-07-19 Werner LEMBERG <wl@gnu.org> - - * doc/Makefile: Added GROFF_BIN_PATH to make it work with uninstalled - groff also. - - * src/include/posix.h: Define S_IWUSR if not yet defined. - -2001-07-18 Werner LEMBERG <wl@gnu.org> - - * NEWS: Updated. - -2001-07-18 Ruslan Ermilov <ru@FreeBSD.org> - - * tmac/groff_mdoc.man: Document new -width and -column syntax. - Some other minor fixes. - * tmac/an-old.tmac: Add `AT' and `UC' macros. - -2001-07-17 Gaius Mulley <gaius@glam.ac.uk> - - Replace call to `troff' with `groff -Z' to make it aware of - GROFF_BIN_PATH. - - * src/preproc/html/pre-html.cc (TROFF_COMMAND): New macro. - (troff_command, command_prefix): Removed. - (alterDeviceTo): Use groff. - (addZ): New function. - (char_buffer::do_html): Use it. - (scanArguments): Use TROFF_COMMAND. - (findPrefix): Removed. - (main): Updated. - * src/roff/groff/groff.cc (main): Handle zflag for preprocessors. - -2001-07-17 Eric S. Raymond <esr@snark.thyrsus.com> - - * doc/pic.ms: Documentation fixes. - -2001-07-17 Werner LEMBERG <wl@gnu.org> - - Replace atexit() with global destructor. - - * src/libs/libgroff/tmpfile.cc (xtmpfile_list): Add constructor. - (xtmpfile_list_init): New global structure to deallocate - xtmpfile_list on exit. Its destructor inherits most code from - remove_tmp_files(). - (remove_tmp_files): Deleted. - (add_tmp_file): Simplified. - -2001-07-16 Werner LEMBERG <wl@gnu.org> - - Replace strdup() with strsave(). - - * src/devices/grolbp/lbp.cc [!HAVE_STRDUP]: Removed. - (set_papersize): Use strsave() and a_delete. - (main): Use strsave(). - * src/preproc/html/pre-html.cc (make_message, createAllPages, - removeAllPages): Use strsave() and a_delete. - - * configure.ac: Remove test for strdup. - * Makefile.in: Comment updated. - * configure: Regenerated. - -2001-07-15 Werner LEMBERG <wl@gnu.org> - - * win32-diffs: Updated. - -2001-07-14 Werner LEMBERG <wl@gnu.org> - - * src/preproc/html/pre-html.cc (makeTempFiles): Activate new code, - removing the old one. - * src/utils/indxbib/indxbib.cc (main): Remove compiler warning. - -2001-07-14 Ralph Corderoy <ralph@inputplus.demon.co.uk> - - * src/libs/libgroff/tmpfile.cc (xtmpfile): Fix guard for `namep'. - -2001-07-12 Ruslan Ermilov <ru@FreeBSD.org> - - Merge -xwidth into -width. Add -xwidth functionality to -column - also. - - * tmac/doc.tmac (Bl): Add dummy doc-typeXXX and doc-spaceXXX to - avoid warning. - (doc-do-Bl-args): Merge -xwidth code with -width. Test whether - string immediately following a leading dot starts with a valid mdoc - argument. - Add similar code to the -column branch. - (doc-Bl-usage): Updated. - * groff_mdoc.man: s/-xwidth/-width/. - -2001-07-12 Gaius Mulley <gaius@glam.ac.uk> - - * src/devices/grohtml/post-html.cc (text_glob::is_br): Stop titles - running into centered or non-formatted text. - -2001-07-11 Werner LEMBERG <wl@gnu.org> - - Introduce short and long prefixes to have the selection at run-time - whether there is a 8+3 limit for names of temporary files. - - * src/libs/libgroff/tmpfile.cc (TMPFILE_PREFIX): Replaced with... - (TMPFILE_PREFIX_SHORT, TMPFILE_PREFIX_LONG): This. - (tmpfile_prefix, tmpfile_prefix_len, use_short_prefix): New - variables. - (temp_init): New global structure to initialize above three - variables. - (xtmptemplate): Use two parameters for long and short prefix. - Simplify code use above three variables. - (xtmpfile): Use long and short prefixes as parameters. - * src/include/lib.h: Updated. - - * src/preproc/html/pre-html.cc ({PAGE,PS,REGION}_TEMPLATE): Replace - with ... - ({PAGE,PS,REGION}_TEMPLATE_{SHORT,LONG}): This. - (createAllPages, makeTempFiles): Updated. - -2001-07-09 Werner LEMBERG <wl@gnu.org> - - * REVISION: Increased to 3. - -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/groohtml/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. - -Version 1.16.1 released -======================= - -2000-07-31 Werner LEMBERG <wl@gnu.org> - - Preparing release 1.16.1. - - * REVISION: Revision number set to 1. - * MORE.STUFF: Added info about port to DOS. - * NEWS, win32-diffs: Updated. - - * src/include/nonposix.h: Remove first line -- this file is used - in C also. - - * Makefile.in (dist): Delete Imakefile earlier to avoid a soft - link to it. - -2000-07-30 Werner LEMBERG <wl@gnu.org> - - * doc/texinfo.tex: Update to latest version. - -2000-06-28 Paul Eggert <eggert@twinsun.com> - - * Makefile.in (ENVSETUP): Don't assume POSIX make semantics for - commands that fail. Don't assume that "export a=b" is valid shell - syntax. This is needed for Solaris 2.5.1. - - * src/libs/libgroff/tmpfile.cc, src/utils/indxbib/indxbib.cc: Fix - comment about missing Solaris headers. - - * PROBLEMS: Add section about problems with Sun Make and VPATH. - -2000-06-25 Werner LEMBERG <wl@gnu.org> - - * src/devics/grodvi/dvi.cc: Replace _setmode() (for MSC) with - SET_BINARY(). - - * src/include/posix.h: Use HAVE_UNISTD instead of _MSC_VER. - - * win32-diffs: Updated. - * README.WIN32: Added CRs to make all Windows editors happy. - - * src/roff/troff/node.cc: Added WIFSIGNALED() macro (copied from - src/roff/groff/pipeline.c). - -2000-06-23 Eli Zaretskii <eliz@is.elta.co.il> - - * src/roff/grog/Makefile.sub (grog): Prepend `-e' to - $(SH_SCRIPT_SED_CMD), for the case where its value is empty. - -2000-06-17 Eli Zaretskii <eliz@is.elta.co.il> - - * src/utils/tfmtodit/tfmtodit.cc: #include nonposix.h. - (tfm::load, gf::load): Open tfm and gf files in binary mode: these - are binary files. - (main): Support non-Posix systems with several different styles of - slash characters in file names. - - * src/utils/pfbtops/pfbtops.c: #include nonposix.h. - (main) [SET_BINARY]: Switch stdin into binary mode. - - * src/utils/indxbib/indxbib.cc: #include nonposix.h. - (main): Support file names with several possible slash-type - characters, as given by DIR_SEPS[] in nonposix.h. - (main) [__MSDOS__]: If renaming the temporary index file fails - because it has more than one dot in its trunk, replace the dot - with an underscore and try again. - (do_file): Use FOPEN_RB instead of "r". Skip every CR before a - Newline. - [__MSDOS__ || _MSC_VER]: Stop at the first ^Z character. - - * src/utils/hpftodit/hpftodit.cc: #include nonposix.h. - (File::File): Open the input file in binary mode. Strip CR - characters from each CR-LF pair. - (xbasename): Support file names with several possible slash-type - characters, as given by DIR_SEPS[] in nonposix.h. - - * src/include/Makefile.sub (HDRS): Add nonposix.h. - - * src/roff/troff/node.cc [HAVE_UNISTD_H]: Include <unistd.h>. - (WIFEXITED, WEXITSTATUS, WTERMSIG, WIFSTOPPED, WSTOPSIG) - [!_POSIX_VERSION]: Define for traditional Unix systems. - (real_output_file::real_output_file): Remove the MSVC-specific - call to popen, use instead POPEN_WT, appropriately defined on - nonposix.h. #include nonposix.h. - (real_output_file::~real_output_file): Remove the MSVC-specific - call to pclose, a suitable macro is now defined on nonposix.h. - Use the portable macros WIFEXITED, WIFSIGNALED, WTERMSIG, WSTOPSIG - and WEXITSTATUS instead of assuming traditional Unix - interpretation of the status returned by pclose. - - * src/roff/troff/input.cc (pipe_source): Remove the MSVC-specific - call to popen, use POPEN_RT instead (appropriately defined on - nonposix.h). #include nonposix.h. - (ps_bbox_request): Open the PostScript file in binary mode. - Close the file after processing it. - (getpid) [_MSC_VER]: Remove; a suitable macro is now defined on - nonposix.h. - - * src/roff/groff/pipeline.c (run_pipeline) [__MSDOS__ || _WIN32]: - A version of run_pipeline that doesn't use `fork'. - (signal_catcher) [__MSDOS__ || _WIN32]: New function. - (system_shell_name, system_shell_dash_c) - (is_system_shell) [__MSDOS__ || _WIN32]: New functions, to hide - the ugliness of testing DOS/Windows file names for equality, and - support both stock shells and ports of Unix shells. - - * src/roff/groff/groff.cc: #include nonposix.h. - (BSHELL): Definition moved to nonposix.h. - (main): Use PATH_SEP[0] instead of literal ':'. Use BSHELL_DASH_C - instead of a literal "-c". - (xbasename): Support file names with several possible slash-type - characters, as given by DIR_SEPS[] in nonposix.h. - (possible_command::print): Use BSHELL_DASH_C and IS_BSHELL instead - of literal strings. - - * src/preproc/soelim/soelim.cc: #include nonposix.h. - (do_file): Use IS_ABSOLUTE instead of testing for a literal '/'. - - * src/preproc/pic/Makefile.sub (YTABH): Change pic.tab.h to - pic_tab.h. - - * src/preproc/pic/lex.cc: Change pic.tab.h to pic_tab.h. - - * src/preproc/eqn/Makefile.sub (YTABH): Rename eqn.tab.h to - eqn_tab.h. - - * src/preproc/eqn/lex.cc: #include eqn_tab.h, not eqn.tab.h. - - * src/libs/libgroff/tmpfile.cc (DEFAULT_TMPDIR) [P_tmpdir]: If - P_tmpdir is defined, use it instead of the literal "/tmp". - (remove_tmp_files, add_tmp_file): New functions. - (xtmpfile): Record temporary files and register an atexit function - to delete them explicitly, instead of relying on the OS to do - that, which doesn't work on non-Unix systems. - - * src/libs/libgroff/searchpath.cc: #include nonposix.h. - (search_path::search_path): Use PATH_SEP instead of a literal - colon. - (search_path::command_line_dir): Ditto. - (search_path::open_file): Use IS_ABSOLUTE, PATH_SEP and DIR_SEPS, - to support non-Posix systems. - - * src/libs/libbib/search.cc: #include nonposix.h. - (search_list::add_file): Open the file in binary mode. - - * src/libs/libbib/linear.cc: #include nonposix.h. - (file_buffer::load): Remove \r characters preceding \n from the - loaded buffer. - - * src/libs/libbib/index.cc: #include nonposix.h. - (make_index_search_item): Open index_filename in O_BINARY mode. - (index_search_item_iterator::get_tag): Ditto. Remove \r - characters before \n characters. - (index_search_item::check_files): Open files in binary mode. - (index_search_item::munge_filename): Support DOS-style file names - with backslashes and drive letters, use IS_ABSOLUTE. - - * src/devices/grops/ps.cc: #include nonposix.h. - (main) [SET_BINARY]: Switch stdout to binary mode. - - * src/devices/grolj4/lj4.cc: #include nonposix.h. - (main) [SET_BINARY]: Switch stdout to binary mode. - - * src/devices/grolbp/lbp.cc: #include nonposix.h - (fill_pattern) [SET_BINARY]: Switch stdout to binary mode. - - * src/devices/grodvi/dvi.cc: #include nonposix.h. - [_MSC_VER]: Remove inclusion of Windows-specific headers (done by - nonposix.h). - (main) [SET_BINARY]: Switch stdout to binary mode. - [_MSC_VER]: Remove an explicit call to _setmode. - - * src/include/nonposix.h: New file. - - * Makefile.in (ENVSETUP): New variable, to set up case-sensitive - operation when building with DJGPP. - ($(TARGETS), dot, $(LIBDIRS), $(CPROGDIRS), $(CCPROGDIRS)) - ($(DEVDIRS), $(TTYDEVDIRS), $(INCDIRS), $(OTHERDIRS)): Use - ENVSETUP. - - * Makefile.comm: mv y.tab.[ch] to y_tab.[ch], to make it work on - MS-DOS. - (.man.n): Replace `;' with `|', since FONTPATH, MACROPATH, - etc. can include a semi-colon on DOS/Windows. - (depend.temp): Use depend1.temp instead of depend.temp1, to - prevent files from overerwiting each other on 8+3 filesystems. - - * gendef.sh (t): Change definition to work with DOS/Windows. - - doc/groff.texinfo: Apart of some typo corrections, I also changed - some index entris, to make them more non-ambiguous, and also put - @ignore around some parts that are not yet written, to allow the - Info output be readable. - -2000-06-10 Gael Queri <gqueri@mail.dotcom.fr> - - Replaced specific checks for function declarations with a generic - routine taken from GNU bfd. - - * aclocal.m4 (GROFF_NEED_DECLARATION): New function. - GROFF_PUTENV, GROFF_POPEN, GROFF_PCLOSE, GROFF_HYPOT: Removed. - * configure.in: Use it. - * src/devices/grolbp/lbp.cc, src/include/lib.h, - src/preproc/grn/hgraph.cc, src/preproc/pic/pic.h, - src/roff/groff/groff.cc: Use it. - * Makefile.in, configure: Updated. - -2000-06-07 Paco Andrés Verdú <pandres@dragonet.es> - - * src/devides/grolbp/lbp.h: Removed unused variables. - -2000-05-31 Keith Thompson <kst@sdsc.edu> - - * src/devices/grolbp/lbp.cc (set_papersizes): Add declaration of - strncasecmp(). - -2000-05-31 Werner LEMBERG <wl@gnu.org> - - * aclocal.m4 (GROFF_SRAND): New function to test the return value - of srand() -- at least SunOS 4.1.3 uses `int' instead of `void'. - * configure.in: Use it. - * src/preproc/pic/pic.y, src/preproc/pic/pic.cc: Use it. - * configure, Makefile.in: Updated. - - * configure.in: Add test for strncasecmp(). - * src/include/lib.h: Use it. - -2000-05-29 Andrej Borsenkow <Andrej.Borsenkow@mow.siemens.ru> - - * src/preproc/grn/Makefile.sub: Add MLIB. - -2000-05-29 Nix <nix@esperi.demon.co.uk> - - * Makefile.in: Use @datadir@ and @mandir@ appropriately. - -2000-05-29 Werner LEMBERG <wl@gnu.org> - - * src/roff/grog/Makefile.sub, src/roff/grog/grog.sh: Add `@g@'. - - * PROBLEMS: Small update. - - * src/devices/grolbp/lbp.cc: Various small fixes. - -2000-05-28 Keith Thompson <kst@sdsc.edu> - - * src/roff/nroff/nroff.sh: Fix main loop syntax. - - * src/utils/indxbib/indxbib.cc: Add declaration of mkstemp(). - -2000-05-25 Werner LEMBERG <wl@gnu.org> - - * man/roff.man: Removed unused macro. - -2000-05-24 Werner LEMBERG <wl@gnu.org> - - * Makefile.in (dist): Remove src/xditview/Imakefile explicitly. - This is needed e.g. if you do - `make distclean; ./configure; make dist'. - -Version 1.16 released -===================== - -2000-05-23 Werner LEMBERG <wl@gnu.org> - - Adding font CWI (constant width italic) to devdvi. - - * font/devdvi/CWI: New file. - * font/devdvi/generate/Makefile: Add generating rule. - * font/devdvi/DESC.in, font/devdvi/Makefile.sub, win32-diffs, - tmac/tmac.dvi: Use it. - * NEWS: Announce it. - - * font/devlj4/*: Regenerated (only adding kernings for `cq' glyph). - * font/devlj4/generate/Makefile: Cosmetic changes only. - - * man/groff.man: Removed most of the redundant description of - special characters (which is in groff_char.man). Added font - translation CB->CR for devdvi. Other minor fixes. - - * tmac/tmac.dvi: Improved appearance of \(co (copyright) and \(rg - (registered) symbols. - -2000-05-22 Werner LEMBERG <wl@gnu.org> - - * doc/Makefile: Added rule for creating info files. - - * font/devdvi/*: Added kernings for `cq' glyph. Updated to latest - AMS font metrics. - * font/devdvi/generate/Makefile: Fixed dependencies. - - * font/devps/*: Regenerated. Heavy changes for Bookman and - NewCentury Schoolbook! - * font/devps/generate/afmname: Will now run with GNU awk. - * font/devps/generate/textmap: Added forgotten `cq' glyph name. - * font/devps/generate/Makefile: Cosmetic changes only. - -2000-05-21 Werner LEMBERG <wl@gnu.org> - - * tmac/tmac.an: Added a new command line option `-rSxx' (`xx' can be - 10, 11, or 12) to support output with 11pt and 12pt base font sizes. - `.SS' now produces a heading with a smaller size than `.SH'. - Completely formatted. - * doc/groff.texinfo, tmac/groff_man.man, NEWS: Document it. - - * man/groff.man: Improved table appearance. Use of `eo' request - to reduce number of doubled backslashes in macro definitions. - Replacing `\e' with `\(rs'. Other minor fixes. - - * src/preproc/tbl/main.cc: Insert HTML table end tag before `lf' - to have correct line number. - - * INSTALL: Small improvement. - -2000-05-20 Bernd Warken <bwarken@mayn.de> - - * man/roff.man, tmac/groff_tmac.man: Updates (with corrections by - WL). - -2000-05-19 Bernd Warken <bwarken@mayn.de> - - * man/groff.man: Complete update (with a lot of corrections by WL). - -2000-05-18 Werner LEMBERG <wl@gnu.org> - - Adding `cq' (PS name `quoteright') glyph name as an alias for "'". - - * font/*/*: Implement it. - * man/groff_char.man, NEWS: Document it. - - * src/include/unix.h: Removed. It isn't used. - - * doc/groff.texinfo: Slight improvements. - -2000-05-17 Werner LEMBERG <wl@gnu.org> - - * README, win32-diffs: Small fixes and improvements. - -2000-05-16 Werner LEMBERG <wl@gnu.org> - - * FDL: New file (the Free Documentation License version 1.1). - - * doc/groff.texinfo: Added many start-up values for gtroff. - Some structural improvements of the source code. - -2000-05-15 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/input.cc: Added small comment about troffrc-end. - * src/roff/troff/troff.man: Added info about troffrc-end. - -2000-05-14 Werner LEMBERG <wl@gnu.org> - - * Makefile.in (EXTRADIRS): Fix typos. - (dist): Handle deletion of old .tar.gz file correctly. - (DISTDIRS): Include all tty output devices. - - * doc/groff.texinfo: Adding more cross references; countless other - fixes. - -2000-05-13 Werner LEMBERG <wl@gnu.org> - - * MORE.STUFF: Added Robert Marks's utilities. - -2000-05-12 Werner LEMBERG <wl@gnu.org> - - Added win32 port contributed by Blake McBride - <blake@florida-software.com>. - - * README.WIN32, win32-diffs: New files. - * NEWS: Updated. - - * src/preproc/grn/hgraph.cc (HGSetBrush): Replace `%lf' with `%f'. - (tmove, tmove2): Added parentheses to avoid compiler warnings. - (change): Removed unused variables. - - * src/preproc/grn/main.cc (main, conv): Removed unused variables. - (savebounds): Changed return value from `int' to `void'. - * src/preproc/grn/hdb.cc: Ditto. - - * src/devices/grolbp/lbp.cc (lbp_printer::draw): Removed superfluous - final backslash in comment to avoid compiler warning. - - * src/utils/pfbtops/pfbtops.c: Added `getopt.h'. - - * doc/groff.texinfo: More fixes. - -2000-05-11 OKAZAKI Tetsurou <okazaki@be.to> - - * tmac/tmac.doc: Documentation fix. - -2000-05-11 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Reading the source code shows up a lot of - omissions and incorrect data... More conversion to @Deffn macros. - -2000-05-10 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/reg.cc (number_value_to_ascii): Remove ASCII - dependency. - - * src/roff/troff/request.h: Removing unused `no_break_flag'. - -2000-05-09 Werner LEMBERG <wl@gnu.org> - - * man/groff.man, man/roff.man, tmac/groff_tmac.man: Minor - improvements. - - * doc/groff.texinfo: Extended history section. More conversion to - @Deffn macros. More .tr documentation. - -2000-05-07 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Completed tab section. Added info about - fields. - -2000-05-06 Mike MacIsaac <mikemac@us.ibm.com> - - * PROBLEMS: Describe configure script fix for OS/390 Unix. - -2000-05-05 Werner LEMBERG <wl@gnu.org> - - * font/devdvi/DESC.in: Change size 11pt to 10.95pt (as used in - LaTeX 2e). - * NEWS: Document it. - - * man/troff.man: Minor optical improvements. - -2000-05-03 Werner LEMBERG <wl@gnu.org> - - Adding `dq' (PS name `quotedbl') glyph name as an alias for `"'. - - * font/*/*: Implement it. - * man/groff_char.man, NEWS: Document it. - -2000-05-02 Werner LEMBERG <wl@gnu.org> - - * tmac/groff_tmac.man, man/groff.man, man/roff.man: Fixing @MANxEXT@ - expansion. - * NEWS: Document the three new man pages. - - * aclocal.m4 (GROFF_CXX_CHECK): Removing obsolete AC_C_CROSS call. - * configure: Updated. - - * font/devcp1047/R.proto: Fixing fatal bug (a missing `"' character). - -2000-05-01 Werner LEMBERG <wl@gnu.org> - - Added grap support to grog. - - * src/roff/grog/grog.sh, src/roff/grog/grog.pl: Implement it. - * src/roff/grog/grog.man: Document it. - - * doc/groff.texinfo, NEWS: Add info about grap support. - - Add new man pages comptributed by Bernd Warken <bwarken@mayn.de> - (with slight fixes by me). - - * tmac/groff_tmac.man: New file documenting tmac mechanism. - * tmac/Makefile.sub: Add groff_tmac.man. - * man/roff.man: New file giving overview of roff system. - * man/troff.man: A short reference of troff. - * man/Makefile.sub: Add roff.man and troff.man. - -2000-04-30 Werner LEMBERG <wl@gnu.org> - - Added grap support to groff. - - * src/roff/groff/groff.cc: Implement it. - * src/roff/groff/groff.man: Document it. - - * src/devices/grotty/grotty.man: Add cp1047 device. - * src/preproc/eqn/eqn.man, src/preproc/eqn/neqn.sh, tmac/eqnrc: - Ditto. - * src/roff/groff/groff.man: Ditto. - * src/roff/nroff/nroff.sh, src/roff/nroff/nroff.man: Ditto. - * doc/groff.texinfo: Ditto. - - * tmac/troffrc: Fix mapping of latin-1 char 160 (non-breakable space) - for cp1047. - -2000-04-29 Werner LEMBERG <wl@gnu.org> - - * man/groff_char.man: Add `pc' glyph. - * tmac/tmac.latin1: Replacing `md' glyph with `pc'. - * tmac/tmac.tty: Add `pc' glyph. - * tmac/tmac.tty-char: Use/add `pc' glyph. Don't call tmac.latin1 if - we use cp1047 output device. - - * Makefile.in, aclocal.m4: Don't build utf8 on EBCDIC hosts since - there are still hardcoded latin1->unicode values in utf8's font - definition files. - * configure: Updated. - * NEWS: Minor clarification. Updated. - - * PROBLEMS: Formatted. Added info about C++ fix pack for OS/390 - Unix. - -2000-04-28 Werner LEMBERG <wl@gnu.org> - - Adding EBCDIC code page 1047. - - * font/devcp1047/R.proto, font/devcp1047/Makefile.sub, - font/devcp1047/DESC.proto: New files. - - * aclocal.m4 (GROFF_EBCDIC): Introduce TTYDEVDIRS which can be - either ascii/latin1 or cp1047. - * Makefile.in: Use it. - * configure: Updated. - - Replacing and/or adding `md' (mathdot) glyph with `pc' - (periodcentered) in all text fonts. - - * font/*/*: Change it. - -2000-04-27 Werner LEMBERG <wl@gnu.org> - - * aclocal.m4 (GROFF_OS390): Fixing compiler flags. - - * configure.in: Add check for strings.h. - * src/include/driver.h: Use HAVE_STRINGS_H. - * src/devices/grolbp/lpb.cc: Remove string.h. - - * src/include/groff-getopt.h: New file. It will be used instead of - getopt.h (to be included in lib.h) to avoid endless problems with - picky C++ compilers. - * src/include/lib.h: Use groff-getopt.h. - * src/include/Makefile.sub: Updated. - - * configure: Updated. - * Makefile.in: Updated. - - * NEWS: Mention EBCDIC support. - -2000-04-26 Werner LEMBERG <wl@gnu.org> - - * TODO: Some additions. - -2000-04-25 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/troff.man, doc/groff.texinfo: Fixing documentation - of mso request. - -2000-04-23 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/troff.man: Minor fixes. - -2000-04-22 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/troff.man, doc/groff.texinfo, NEWS: Document the - `.T' string register and the incompatible definition of the `.T' - number register (compared to Unix troff). - - * man/groff_char.man: Add some missing characters. - * font/devutf8/NOTES: Update. - -2000-04-21 Werner LEMBERG <wl@gnu.org> - - * src/include/htmlindicate.h, src/include/lib.h, - src/include/posix.h: Fix copyright. - - * src/include/Makefile.sub: Update. - -2000-04-20 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/input.cc (input_char_description): Removing - superfluous space char. - - * tmac/tmac.X: Fix typo \(bq -> \(Bq. - - * doc/groff.texinfo: Document EBCDIC. - -2000-04-19 Werner LEMBERG <wl@gnu.org> - - Introducing `shc' as the glyph name for the soft hyphen character. - - * tmac/tmac.tty, tmac/tmac.latin1, tmac/tmac.html, - font/devlatin1/R.proto: Use it. - - * NEWS: Updated. - -2000-04-18 Werner LEMBERG <wl@gnu.org> - - * src/devices/grops/ps.cc (ps_printer::flush_sbuf): Removing - dependency on ASCII order. - -2000-04-16 Sandor BARANY <S.Barany@infosys.tuwien.ac.at> - - * src/libs/libgroff/illegal.c: Added EBCDIC table. - * src/roff/troff/input.cc: Added adaptation to EBCDIC. - - * src/preproc/refer/refer.cc, src/roff/troff/env.cc: Minor changes - to increase portability. - -2000-04-15 Werner LEMBERG <wl@gnu.org> - - * aclocal.m4: Added GROFF_EBCDIC and GROFF_OS390 tests. - Redefined AC_OUTPUT_MAKE_DEFS to replace ASCII character `012' with - the generic `\n' if under OS/390 Unix. - - * configure.in: Call GROFF_EBCDIC and GROFF_OS390. - - * configure: Regenerated. - -2000-04-14 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: More conversions to @Deffn. - -2000-04-12 Werner LEMBERG <wl@gnu.org> - - * tmac/tmac.psfig: Fix incorrect use of `&' operator by replacing it - with `:'. - - * src/roff/nroff/nroff.man: Add note about tmac.tty-char. - -2000-04-10 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: More conversions to @Deffn. - -2000-04-08 Werner LEMBERG <wl@gnu.org> - - * src/libs/libgroff/{getopt.c,getopt1.c}, src/include/getopt.h: - Updated to latest version (glibc 2.1.3). - -2000-04-07 Werner LEMBERG <wl@gnu.org> - - * doc/Makefile (clean): Include more index files. - Add rule texinfo->dvi. - -2000-04-05 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Added new index `op' for operators. More - info on end of sentence characters. More use of @Deffn. - -2000-03-30 Werner LEMBERG <wl@gnu.org> - - * */*.man: Adding a note that a whitespace can be inserted between - a command line option and its parameter -- we are using GNU getopt. - - * src/roff/groff/groff.man: Add example of `-m mandoc'. - -2000-03-28 Werner LEMBERG <wl@gnu.org> - - Correct anachronism of calling the man macro file with `-man' - instead of `-m man' etc. - - * tmac/tmac.man, tmac/tmac.mandoc, tmac/tmac.markup, tmac/tmac.mdoc, - tmac/tmac.me, tmac/tmac.ms: New files tmac.m<package> which simply - load tmac.<package>. - - * tmac/Makefile.sub: Updated. Take care of $(tmac_an_prefix) etc. - - * NEWS: Updated. - - * doc/groff.texinfo: Updated. - - * tmac/groff_man.man: Copyright added. - -2000-03-27 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Introducing macros `Deffn' and `Defmac' to - typeset the request resp. escape name with a tt font -- due to a - bug in texinfo.tex it is necessary to use the `-e' switch with - texi2dvi. - - Improving info about usage of groff units. - - Other minor fixes. - -2000-03-20 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Added section about man macro package - (I've basically taken groff_man.man). Introducing new indices `ma' - for macros/strings and `gl' for glyph names. Other minor fixes. - - * tmac/groff_man.man: Fixed some typos. - -2000-03-19 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Removed all occurrences of `you', `we', etc. - Other minor fixes. - - * doc/texinfo.tex: New file. - -2000-03-18 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Improved section on number registers. Other - minor updates. - -2000-03-16 Werner LEMBERG <wl@gnu.org> - - * src/roff/groff/groff.man: Added info about grolbp. Make nicer - synopsis. - - * src/devices/grolbp/grolbp.man, src/roff/nroff/nroff.man, - src/devices/grolj4/grlj4.man, src/devices/grops/grops.man, - src/preproc/eqn/eqn.man, src/utils/afmtodit/afmtodit.man, - src/utils/tfmtodit/tfmtodit.man: Make nicer synopsis. - - * src/preproc/grn/grn.man: Better synopsis; added copyright. - - * src/roff/grog/grog.man: Updated copyright date. - -2000-03-14 Francisco Andrés Verdú <pandres@dragonet.es> - - * configure.in: Added test for strdup. - - * src/devices/grolbp/lbp.cc: Added a strdup() version in case none - is available. - - Replaced dynamic allocation of arrays `[...]' with `new' operator. - - Other minor fixes. - -2000-03-12 OKAZAKI Tetsurou <okazaki@be.to> - - * Makefile.comm: Add $(INCLUDES) to $(ALL_CFLAGS). - -2000-03-11 Werner LEMBERG <wl@gnu.org> - - * src/preproc/grn/hdb.cc (DBGetType): Added return value to make - compilers silent. - * src/preproc/grn/hgraph.cc: Add #ifdef for hypot(). - * src/include/lib.h: Remove some spaces. - -2000-03-10 Werner LEMBERG <wl@gnu.org> - - * src/libs/libgroff/tmpfile.cc (xtmptemplate, xtmpfile): Removing - initializers from arguments (some compilers don't like this). - -2000-03-09 Gaius Mulley <gaius@glam.ac.uk> - - * src/libs/libgroff/htmlindicate.cc: Added library file which is now - used by pic and eqn to tell grohtml where the graphic regions start - and end. - * src/libs/libgroff/Makefile.sub: Use it. - * src/preproc/eqn/main.cc, src/preproc/pic/troff.cc: Altered to use - graphic_start() and graphic_end() from htmlindicate.cc. - -2000-03-09 Werner LEMBERG <wl@gnu.org> - - * tmac/tmac.safer: Will now work correctly in compatibility mode. - * tmac/groff_man.man: More fixes. - -2000-03-08 Werner LEMBERG <wl@gnu.org> - - * doc/Makefile: Added texput.log to the `clean' target. - * doc/groff.texinfo: Added info about delimiters for escapes. - -2000-03-08 Bernd Warken <bwarken@mayn.de> - - * src/preproc/pic/pic.man: Add info on conversion of pic images to - other graphic formats. - -2000-03-07 OKAZAKI Tetsurou <okazaki@be.to> - - * Makefile.in, Makefile.sub, src/preproc/eqn/Makefile.sub, - src/roff/groff/Makefile.sub, src/roff/nroff/Makefile.sub, - src/utils/afmtodit/Makefile.sub: Use $(INSTALL_SCRIPT) for script - files. - -2000-03-07 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Spelling fixes. - -2000-03-06 Werner LEMBERG <wl@gnu.org> - - * tmac/groff_man.man: Completely revised to cover everything in - tmac.an. - - * doc/groff.texinfo, src/roff/troff/troff.man: Document evc request. - Other minor fixings. - * src/roff/troff/env.cc (environment_copy): Improve error message and - fix itoa->i_to_a. - * src/roff/troff/TODO: Updated. - - * doc/Makefile: Bug fixes -- this is still provisional, though... - - * tmac/eqnrc: Small fixes. - -2000-03-05 Abramo Bagnara <abramo@alsa-project.org> - - Adding a request `evc' to copy environments. - - * src/roff/troff/env.cc (environment::copy, environment_copy): - Implement it. - * src/roff/troff/env.h: Add prototype. - -2000-03-05 Francisco Andrés Verdú <pandres@dragonet.es> - - Adding strsep() -- Solaris 8 doesn't have it. - - * configure.in: Test it. - * src/devices/grolbp/lbp.cc: Add code. - -2000-03-05 Werner LEMBERG <wl@gnu.org> - - * src/roff/troff/div.cc (macro_diversion::output, - top_level_diversion::output): Fixing an incompatibility with - original troff: \x'0' updates the .a register also. Thanks to - <Andries.Brouwer@cwi.nl> for pointing this out. - * doc/groff.texinfo: Document it. - - * Makefile.in: Create Makefile.dep if necessary before calling the - submake process to avoid warning about nonexistent file. - - * NEWS, PROJECTS: Updated. - -2000-03-04 Werner LEMBERG <wl@gnu.org> - - * tmac/troffrc: Add tmac.lbp. - -2000-03-03 Francisco Andrés Verdú <pandres@dragonet.es> - - * tmac/tmac.lbp: New file. - * src/devices/grolbp/grolbp.man: Add documentation of `lbpname' - command. - -2000-03-03 Werner LEMBERG <wl@gnu.org> - - * Makefile.in: Fixing $(subdir). - - * README, NEWS: Small fixes. - - * test-groff: Adding path to grolbp. - - * configure.in: The (new) file src/xditview/Imakefile.in will be - also configured -- it is now possible to build gxditview in a - directory different from $srcdir. - -2000-03-02 Blake McBride <blake@florida-software.com> - - * src/libs/libgroff/searchpath.cc (open_file): Adapting to WinNT. - - * MORE.STUFF: Added website of bell labs and info about plot2dev. - -2000-03-01 Colin Phipps <crp22@cam.ac.uk> - - * src/utils/indxbib/indxbib.cc (main): Use mkstemp() for temporary - files. - -2000-02-29 Werner LEMBERG <wl@gnu.org> - - Adding GNU getopt to the groff distribution. - - * src/include/getopt.h, src/libs/libgroff/{getopt.c,getopt1.c}: - New files. - * src/include/Makefile.sub, src/libs/libgroff/Makefile.sub: Update. - * aclocal.a4: Remove GROFF_GETOPT function. - * configure.in, Makefile.in, PROBLEMS: Update. - * src/include/lib.h: Replace getopt tests with getopt.h. - * src/devices/grolbp/lpb.cc: Remove inclusion of getopt.h. - - * doc/groff.texinfo: Further checking/updating. Adding more index - entries. - - * man/groff_out.man: Fix nroff mode activation (for emacs). - * man/groff_font.man: Add missing ligature. - -2000-02-28 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Further checking/updating. Adding more index - entries. - - * src/devices/grolbp/grolbp.man: Added a comment line at the - beginning of the file (similar to shell scripts) which indicates - that `tbl' should be used as a preprocessor. - -2000-02-27 Blake McBride <blake@florida-software.com> - - Adapting groff to MS Visual C++ 6.0 compiler (tested with - Windows NT 4.0). Uses _MSC_VER define where necessary. - - * src/devices/grodvi/dvi.cc: Making stdout a binary stream. - * src/devices/grolj4/lj4.cc: Making getopt variables `extern "C"'. - * src/devices/grohtml/html.cc, src/devices/grops/ps.cc, - src/include/lib.h, src/libs/libgroff/errarg.cc, - src/libs/libgroff/itoa.c, src/libs/libgroff/nametoindex.cc, - src/preproc/refer/label.y, src/preproc/refer/label.cc, - src/roff/groff/pipeline.c, src/roff/troff/column.cc, - src/roff/troff/div.cc, src/roff/troff/env.cc, - src/roff/troff/input.cc, src/roff/troff/node.cc, - src/roff/troff/reg.cc: Renaming itoa() to i_to_a() and iftoa() to - if_to_a() to avoid name clashes. - * src/include/posix.h: Don't use unistd.h. - * src/libs/libgroff/tmpfile.cc: Use `#ifndef...#else...#endif' - clause for integrating non-Unix xtmpfile() code. - * src/roff/troff/input.cc: Adding `public' keyword to macro_header - structure; use "rt" for popen() in pipe_source(); add getpid() - dummy function. - * src/roff/troff/node.cc: Use special versions of popen() in - real_output_file() and pclose() in ~real_output_file(). - -2000-02-27 Werner LEMBERG <wl@gnu.org> - - Adding a new driver, grolbp, for Canon CAPSL printers (LBP-4 and - LBP-8 series laser printers). This code has been contributed by - Francisco Andrés Verdú <pandres@dragonet.es>. - - * src/devices/grolbp/*: The grolbp output device. - * font/devlpb/*: The font description files. - * Makefile.in: Add grolpb and devlbp subdirectories. - - * src/devices/grodvi/grodvi.man, src/devices/grolj4/grolj4.man, - src/devices/grotty/grotty.man,src/roff/troff/troff.man: Minor - typographic fixes. - - * doc/groff.texinfo: Further checking/updating. Adding more index - entries. - - * NEWS: Updated. - - * src/devices/grolbp/Makefile.sub: Adding $(srcdir). - - * man/groff_font.man: Adding info about obsolete DESC keywords. - * src/devices/grolj4/grolj4.man: Documenting additional DESC - keywords. - -2000-02-26 Werner LEMBERG <wl@gnu.org> - - * src/preproc/grn/grn.man: Added info about the gremlin file format - (contributed by Daniel Senderowicz <daniel@synchrods.com>). - -2000-02-25 Werner LEMBERG <wl@gnu.org> - - * src/preproc/grn/main.cc: Allow values of `narrow' parameter and - friends to be non-integer. - - * src/preproc/grn/grn.man: Document it. - - * doc/groff.texinfo: Further checking/updating. Adding more index - entries. - -2000-02-24 Werner LEMBERG <wl@gnu.org> - - * src/preproc/grn/main.cc: Introduce BASE_THICKNESS, defining - line thicknesses to be integer multiples of this value. - - * src/preproc/grn/grn.man: Commenting out the -s option -- the - corresponding code doesn't work (yet). - - * doc/groff.texinfo: Further checking/updating. Adding more index - entries. - -2000-02-23 Werner LEMBERG <wl@gnu.org> - - * src/preproc/grn/{main.cc, hgraph.cc}: Using point units to - specify line thickness instead of base units. The new default - values are now 0.15,pt 0.45pt, and 0.75pt for thin, middle, and - thick lines respectively. - - Removed unused variable `prevval'. - - * src/preproc/grn/grn.man: Updated. - -2000-02-22 Werner LEMBERG <wl@gnu.org> - - * src/preproc/grn/main.cc: Slight formatting. - - * src/roff/groff/groff.man: Formatting fix. - * src/preproc/grn/grn.man: Ditto. - - * src/roff/grog/grog.pl: Fixing two embarassing bugs. - - * doc/groff.texinfo: Further checking/updating. - -2000-02-21 Werner LEMBERG <wl@gnu.org> - - * README, INSTALL, PROJECT, PROBLEMS, BUGREPORT: Updated. - - * test-groff: Added grn subdir to path. - - * doc/groff.texinfo: Some restructing and other small improvements. - - * src/roff/groff/groff.cc (help): Fixed info string. - -2000-02-20 Werner LEMBERG <wl@gnu.org> - - * doc/meref.me: Fix description of .GS request. - - * src/roff/troff/troff.man: Fixing typo. - - Adding the `grn' preprocessor for gremlin graphic files. - - * src/preproc/grn/*: This is the Berkeley distribution written by - David Slattengren and Barry Roitblat, adapted to groff by Daniel - Senderowicz and Werner Lemberg. - - * doc/grnexampl.{me,g}: A sample for grn. - - * Makefile.in: Added subdirectory entry for grn. - - * src/roff/groff/groff.cc: Added support for grn. It can be now - called with the switch `-g'. - - * src/roff/groff/groff.man: Updated. - - * src/roff/grog/grog.{man,pl,sh}: Updated. - - * NEWS: Updated. - -2000-02-11 Gaius Mulley <gaius@glam.ac.uk> - - * src/include/lib.h: Added xtmptemplate and made xtmpfile - parametrically polymorphic. - - * src/libs/libgroff/tmpfile.cc: Implemented xtmptemplate - and the alterations to xtmpfile. - xtmpfile can be requested to return the filename created - and asked not to unlink the temp file. The default behaviour - if parameters are absent is exactly the same as before. - -2000-02-11 Abramo Bagnara <abramo@alsa-project.org> - - A new request `length' is available which returns the length of a - string in a number register: - - * src/roff/troff/input.cc (length_macro): Implement it. - * src/roff/troff/input.cc (init_input_requests): Register it. - -2000-02-11 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo, src/roff/troff/troff.man: Add documentation - of the `substring' request. - - * src/roff/troff/troff.man, doc/groff.texinfo: Document `length' - request. - - * src/roff/troff/TODO, NEWS: Updated. - -2000-02-09 Werner LEMBERG <wl@gnu.org> - - * src/roff/groff/groff.man: Added an example. - -2000-02-06 Werner LEMBERG <wl@gnu.org> - - I've considerably modified the directory structure of the - distribution to get a more vertical layout. For example, the number - of top level directories has been reduced from 42 to 6. - - As a consequence, many changes, especially to the makefiles, were - necessary: - - * The makefile variables `top_builddir' and `top_srcdir' have been - introduced. Virtually all relative paths have been replaced with - absolute ones using these two variables. - - * Dependencies (in the files `Makefile.dep') are no longer part of - the distribution. Instead, they are created during a `make install' - in the build directory. - - * aclocal.m4 (GROFF_SRCDIR, GROFF_BUILDDIR): Two new functions to - make `top_srcdir' and `top_builddir' absolute. - - Some other changes: - - * Man pages now depend on the files `VERSION' and `REVISION'. - - * The added shell script `mkinstalldirs' will replace `mkdir' in - almost all cases. - - * VERSION: Version number increased to 1.16. - -2000-02-04 Werner LEMBERG <wl@gnu.org> - - * grops/psrm.cc (read_one_of): Fixed pointer incrementation. - - * Makefile.in: Removed $(tmac_m) since it is no longer needed - (after an update of the mm stuff). - - * troff/Makefile.sub (majorminor.cc): Fix dependencies. - -2000-02-03 Werner LEMBERG <wl@gnu.org> - - The .psbb request will now also accept Mac PS images (i.e. using LF - as the EOL character). - - * troff/input.cc (ps_get_line): New function, taken from psrm.cc - (with slight modifications). - * troff/input.cc (do_ps_file): Use it. - - * test-groff: Add grohtml and grolj4 output devices to PATH. - -2000-01-30 Werner LEMBERG <wl@gnu.org> - - * NEWS, MORE.STUFF: Updated. - -2000-01-30 Cary D. Renzema <caryr@dollar.mxim.com> - - Add the `srand' command to pic. - - * pic/lex.cc, pic/pic.y: Implement it. - * pic/pic.man: Document it. - * pic/pic.cc, pic/pic.tab.h: Regenerated (with yacc). - -2000-01-30 Werner LEMBERG <wl@gnu.org> - - Add a new request `.psbb'. This does exactly what the external - program psbb did. It scans a PostScript image file for a - %%BoundingBox comment and extracts the bounding box values (in - PostScript units) which are then stored in the four new (read-only) - number registers `llx', `lly', `urx', and `ury'. - - This will allow the usage of the .PSPIC macro without worrying - about unsafe behaviour of groff, i.e., it will work without the - `-U' switch of groff. - - * troff/input.cc: Implement it. - * tmac/tmac.pspic: Use it. - * troff/troff.man, grops/grops.man, NEWS: Document it. - * psbb/*, Makefile.in: Remove it since it is no longer needed. - - This is bloody C code simply adapted from psbb.c! Any improvements - welcome. - -2000-01-29 Werner LEMBERG <wl@gnu.org> - - * man/groff_font.man: Minor clarifications. - - * NEWS: Updated. - -2000-01-28 Werner LEMBERG <wl@gnu.org> - - * afmtodit/afmtodit.pl: Use new `--' comment delimiter. - -2000-01-28 Gaius Mulley <gaius@glam.ac.uk> - - * man/groff_font.man: Brought up to date regarding tcommand - extensions. - * libgroff/font.cc: Handle everything after `--' as a comment - in the font files. - * devps/*: Added comment delimiter inside devps font files. - -2000-01-28 Werner LEMBERG <wl@gnu.org> - - * tmac/tmac.arkup, tmac/groff_markup.man: Replace \fC...\fR with - \fC...\fP (which now works as expected). - - * troff/troff.man: Fix typo. - -2000-01-27 Gaius Mulley <gaius@glam.ac.uk> - - Completed the pass_filenames implementation in troff. - - * libdriver/input.cc: Will read the new `F' tcommand. - * troff/node.cc, troff/node.h: Will issue the new `F' tcommand. - * troff/input.cc: Use it. - -2000-01-26 Werner LEMBERG <wl@gnu.org> - - * troff/env.cc (set_font): Fix the behaviour of \fP. The previous - font will now be updated even if an invalid font is selected. - -2000-01-24 Werner LEMBERG <wl@gnu.org> - - * doc/homepage.ms: Updated for new tmac.arkup. - - * tmac/tmac.html: Disable line breaks after hyphen-like characters. - - * tmac/tmac.arkup: Cleanup. - - Added `\&' to .HTML macro to `leave vertical mode', so to say. - - Removed obsolete .LINK macro completely. - - The macros .URL, .FTP, and .MAILTO now accept a third argument which - will be immediately appended to the second argument (to be used with - punctuation, for example). - - Disabled .CDFTP macro temporarily for security reasons. - - * tmac/groff_markup.man: Complete revision for latest changes in - tmac.arkup -- note that it does not yet format correctly with - grohtml :-( - -2000-01-23 Bruno Haible <haible@clisp.cons.org> - - * nroff/nroff.sh: Accept -Tutf8 option and pass it through. - * devutf8/R.proto: Add mappings for wp, lh, rh. - * devutf8/NOTES: Updated. - -2000-01-23 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Updated version/copyright info. - -2000-01-21 Gaius Mulley <gaius@glam.ac.uk> - - Added support for two new directives in device descriptions: - `pass_filenames' (to pass the input file name to the output device) - and `use_charnames_in_special' (to support e.g. accented characters - in the `X' request). - - * include/font.h, troff/charinfo.h: Declare it. - - * libgroff/font.cc, libgroff/fontfile.cc: Set it. - - * devhtml/DESC: Use it. - - * troff/input.cc: New function encoded_char. - - * troff/token.h: Add test for `specialness'. - -2000-01-21 Werner LEMBERG <wl@gnu.org> - - * tmac/Makefile.sub: tmac.a4 and tmac.trace have been removed by - mistake from the list of files to be installed. - -2000-01-18 Werner LEMBERG <wl@gnu.org> - - * README: Added info how to apply patches. - -2000-01-15 Jan Echternach <echter@informatik.uni-rostock.de> - - * troff/node.cc (ligature_note::operator delete): Fix g++ warning. - -2000-01-15 Gaius Mulley <gaius@glam.ac.uk> - - * troff/input.cc: Add support for troffrc-end. - - * tbl/main.cc: Altered to issue table-start and table-end special - characters if using the html device. - - * devhtml/*: Modified font files to incorporate html encoding of - characters. - - * tmac/groff_markup.man: New file documenting tmac.arkup. - - * tmac/troffrc-end: New file. This is invoked after all user - specified macros. Currently used by the html device to include - tmac.html. Thus no need for users to specify -mhtml anymore. - - * tmac/Makefile.sub (NORMALFILES): Add troffrc-end. - (MAN7): Add groff_markup.man. - - * tmac/tmac.an, tmac/tmac.html: Small html updates. - - * tmac/troffrc: tmac.arkup will now be called for the html device. - - * libgroff/font.cc, libgroff/font.h: Altered to include reading of - extra device specific information about fonts. - - * doc/homepage.ms: New file. It is an example how an HTML home page - could look like with grohtml. - - * doc/Makefile: Add homepage.ms. Remove rule for pic.html. - -2000-01-12 Bruno Haible <haible@clisp.cons.org> - - * devutf8/R.proto: Add mappings for ti, Fn, st, an. Change mappings - of Im, Re. - - * devutf8/NOTES: Updated. - -2000-01-08 Bruno Haible <haible@clisp.cons.org> - - * eqn/box.cc, eqn/lex.cc, eqn/other.cc, eqn/over.cc, eqn/special.cc, - eqn/text.cc, grodvi/dvi.cc, grops/ps.cc, grops/psrm.cc, - libbib/index.cc, libbib/linear.cc, libbib/search.cc, - libdriver/printer.cc, libgroff/font.cc, libgroff/string.cc, - pic/lex.cc, pic/object.cc, refer/label.y, refer/ref.cc, tbl/main.cc, - tbl/table.cc, tfmtodit/tfmtodit.cc, troff/dictionary.cc, - troff/div.cc, troff/env.cc, troff/input.cc, troff/node.cc, - troff/node.h, troff/reg.cc: Avoid most "g++ -Wall -Wno-sign-compare" - warnings. - - * troff/node.cc (bracket_node::copy): Initialize last to NULL. - -2000-01-12 Fabrizio Polacco <fab@prosa.it> - - grolj4: Paper size will be searched case-insensitively. - - * include/lib.h: Add check for strcasecmp(). - * grolj4/li4.cc (lookup_paper_size): Use strcasecmp(). - * configure.in: Check for strcasecmp(). - -2000-01-11 Werner LEMBERG <wl@gnu.org> - - * troff/Makefile.sub (majorminor.cc): Fix incorrect path to - `REVISION'. - -2000-01-10 Werner LEMBERG <wl@gnu.org> - - * Makefile.comm, Makefile.in, doc/Makefile: More fixes for the - revision scheme. - - Add a new read-only register, `.Y', which contains the groff - revision. - - * troff/input.cc (init_input_requests): Define it. - * troff/Makefile.sub (majorminor.cc): Define `revision' string. - * doc/groff.texinfo, troff/troff.man: Document it. - - * libgroff/Makefile.sub (version.cc): Add definition of - `Version_string[]', consisting of `<major>.<minor>.<revision>' - * eqn/main.cc, grodvi/dvi.cc, grolj4/lj4.cc, grops/ps.cc, - grotty/tty.cc, hpftodit/hpftodit.cc, indxbib/indxbib.cc, pic/main.cc, - refer/refer.cc, soelim/soelim.cc, tbl/main.cc, tfmtodit/tfmtodit.cc, - troff/input.cc, pfbtops/pfbtops.c: Use it. - -2000-01-10 Fabrizio Polacco <fab@prosa.it> - - Add a revision scheme to the groff package. - - * REVISION: New file. - * libgroff/Makefile.sub (version.cc): Use it to define - `revision_string[]'. - * grops/psrm.cc: Use revision_string (converted to an unsigned - integer) in constructor of resource_manager. - -2000-01-10 Bruno Haible <haible@clisp.cons.org> - - * devutf8/Makefile.sub, devutf8/DESC.proto, devutf8/R.proto: New - files. - * Makefile.in (DEVDIRS): Add devutf8. - * grotty/tty.cc: Include device.h. - (glyph): Change type of `code' to `unsigned int'. - (tty_printer): New field is_utf8. Constructor takes device argument. - (tty_printer::tty_printer): If device if `utf8', set is_utf8. - (tty_printer::add_char): Change type of first arg to `unsigned int'. - (tty_printer::put_char): New function. - (tty_printer::end_page): Use put_char() instead of ::putchar(). - (make_printer): Pass device to tty_printer constructor. - * nroff.sh: Determine default device by calling 'locale'. As a - fallback, look at all of $LC_ALL, $LC_CTYPE, $LANG, $LESSCHARSET. - Recognize UTF-8 locales. - * tmac/eqnrc: Recognize utf8 like latin1. - * tmac/troffrc: Device utf8 needs tmac.tty. - -2000-01-07 Werner LEMBERG <wl@gnu.org> - - * tmac/Makefile.sub: tmac.a4 and tmac.trace will now be installed. - -2000-01-07 Paul Eggert <eggert@twinsun.com> - - Add a new predefined writeable number register, `year', - which contains the current year. - - * doc/groff.texinfo, PROBLEMS, troff/troff.man: Document it. - * tmac/tmac.s: Use it. - * troff/input.cc (init_registers): Initialize it. - -2000-01-06 Werner LEMBERG <wl@gnu.org> - - * PROBLEMS: Fixed typo. - -2000-01-04 Paul Eggert <eggert@twinsun.com> - - * PROBLEMS: Add Y2k advice for the yr number register. - -2000-01-03 Paul Eggert <eggert@twinsun.com> - - * doc/groff.texinfo: Fix Y2k bug in documentation of \n(yr. - -2000-01-02 Werner LEMBERG <wl@gnu.org> - - * tmac/tmac.arkup: Slight modification of macros to provide better - appearance for non-HTML formats. - -2000-01-01 Charles Levert <charles@comm.polymtl.ca> - - * soelim/soelim.cc (include_path_append): realloc(NULL, n) - does not automatically translate to malloc(n) on all OSes - (e.g., SunOS) so do it explicitly. Also, check the returned - value. - -2000-01-01 Werner LEMBERG <wl@gnu.org> - - * tmac/tmac.arkup: Added .LINE macro. Some formatting. - - * Makefile.in: Added $(tmac_m) again since the Makefile in `mm' - expects this variable - -2000-01-01 Gaius Mulley <gaius@glam.ac.uk> - - * doc/Makefile: Added instructions to create HTML and text - versions of some files. - -1999-12-31 Werner LEMBERG <wl@gnu.org> - - * Updated INSTALL.gen. - - * tmac/tmac.arkup: Added fixes so that .FTP and .MAILTO works - better resp. correctly with non-HTML devices. - -Version 1.15 released -===================== - -1999-12-28 Werner LEMBERG <wl@gnu.org> - - * NEWS, VERSION: Changed to 1.15 - -1999-12-27 Paul Eggert <eggert@twinsun.com> - - * nroff/nroff.man: -S is safer, not safe. - - * groff/groff.cc (main): Use `safer', not `safe', in variable - names. This does not change the behavior. - - * troff/input.cc (main): Likewise. - - * nroff/nroff.sh: Likewise. - - * troff/input.cc (prepend_string): New function. - (main): Prepend -msafer, so that we check macro libraries for - safety. - - * PROBLEMS: Report problem with Sun C++ 5.0 and 5.1. - -Version 1.14 released -===================== - -1999-12-26 Werner LEMBERG <wl@gnu.org> - - * NEWS, VERSION: Changed to 1.14. - -1999-12-24 Werner LEMBERG <wl@gnu.org> - - * refer/refer.cc: Fixing the last fix. - -Version 1.13 released -===================== - -1999-12-23 Werner LEMBERG <wl@gnu.org> - - * tmac/tmac.an: A typo (`.if' instead of `.ie') made the page - number disappear. - - * NEWS: Updated. - - * tmac/tmac.safer: Forgot to remove `so' from the `rm' request. - - * VERSION: Changed to 1.13 -- to be compliant with the Adobe 3.0 - document conventions, the version number must be a real. - -Version 1.12.1 released -======================= - -1999-12-22 Werner LEMBERG <wl@gnu.org> - - * VERSION: Changed to 1.12.1. - -1999-12-22 Alan Rooks <arooks@istar.ca> - - * refer/refer.cc (do_file): Slight modification to satisfy the - `Standard system CC - C++ Compilation System 3.1 03/03/99' on SCO - UnixWare 7.1. - -1999-12-20 Werner LEMBERG <wl@gnu.org> - - * changed prep.ai.mit.edu -> ftp.gnu.org; updated copyright - notices. - - * tmac/tmac.safer, tmac/groff_msafer.man: Remove `so' (again) from - list of unsafe requests. - - * pic/pic.man: Fixed a typo. - - * man/groff_out.man: Fixed a typo. - -1999-12-18 Werner LEMBERG <wl@gnu.org> - - * Makefile.in: Doc fixes. - -1999-12-17 Fabrizio Polacco <fab@prosa.it> - - * groff/groff.cc: Missing `U' option added to getopt(). - - * troff/troff.man: Missing `U' option added to synopsis. - -Version 1.12 released -===================== - -1999-12-14 Werner LEMBERG <wl@gnu.org> - - * troff/input.cc (usage), groff/groff.cc (synopsis): Added -U flag - to the synopsis. - - * nroff/nroff.sh, nroff/nroff.man: Replaced `secure', `unsecure' - with the more appropriate terms `safer' and `unsafe'. - - * libgroff/strerror.c, aclocal.m4, configure.in: Added checks for - sys_nerr and sys_errlist[]. - - * pic/pic.h, aclocal.m4, configure.in: Added check for hypot(). - - * pic/pic.y, pic/pic.cc: Added check for fmod(). - -1999-12-13 Werner LEMBERG <wl@gnu.org> - - * VERSION: Changed to 1.12. - - Here some patches from various sources; most of them taken from - the Debian distribution. - - * tmac/groff_mdoc.man, tmac/groff_mdoc.samples.man, - tmac/Makefile.sub: New files copied directly from the NetBSD - distribution. Probably, some additional adaptation later on is - necessary... - - * tmac/tmac.safer, tmac/groff_msafer.man: Added `so' to the list - of unsafe requests. - - * groff/groff.cc, groff/groff.man, nroff/nroff.sh, - nroff/nroff.man, pic/main.cc, pic/pic.man, troff/input.cc, - troff/troff.man: Added option `-U' for unsafe mode. Safe mode - (`-S') is now the default. - - * README, NEWS: Updated. - -1999-12-09 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Regenerated nodes and menus with emacs. - - * doc/Makefile (clean): Added cleaning commands for groff.texinfo. - -1999-12-06 Werner LEMBERG <wl@gnu.org> - - * configure.in: Removed AC_PREFIX_PROGRAM since it causes more - grief than relief today. Additionally, it is against the GNU - coding standards. - - * configure: Recreated. - -1999-12-05 Werner LEMBERG <wl@gnu.org> - - * configure.in: Added GROFF_LIBM. - - * configure: Recreated. - - * aclocal.m4 (GROFF_LIBM): New function which tests whether -lm is - necessary. - - * Makefile.in: Added definition of $(LIBM). - - * Makefile.comm (LIBM): Removed. - - * pfbtops/Makefile.sub: On AIX, -lm is needed also. - -1999-12-03 Gaius Mulley <gaius@glam.ac.uk> - - * doc/Makefile: Added rule for generation pic.html. - - (clean): Files produced by grohtml will be removed also. - - * doc/pic.ms: Small fix. - - * tmac/tmac.html: Fixed suppression of headers. - -1999-11-16 Gaius Mulley <gaius@glam.ac.uk> - - * tmac/tmac.html: Fixing horizontal arrows. - - Turning off hyphenation. - - * tmac/tmac.an: Improved support for grohtml; better indentation, - no footers/headers. - -1999-10-31 Gaius Mulley <gaius@glam.ac.uk> - - * tmac/tmac.arkup: Added CDFTP macro - - * tmac/tmac.html: All headers are turned off for ms, me, and mm - macros. - - * tmac/troffrc: Some additions for HTML stuff. - -1999-10-06 Gaius Mulley <gaius@glam.ac.uk> - - * tmac/tmac.html: Small changes. - -1999-09-26 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: Minor fixes. - -1999-09-26 Gaius Mulley <gaius@glam.ac.uk> - - * devhtml/TR: Changed spacewidth to 3. - - * tmac/Makefile.sub (NORMALFILES): Added tmac.arkup. - - * tmac/tmac.html: Moved markup macros to tmap.arkup. - - * tmac/tmac.arkup: New file. - - * grohtml/ChangeLog: New file. - -1999-09-16 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo (Common Features): Added Copying chapter. - Changed format to @smallbook. - -1999-09-15 Werner LEMBERG <wl@gnu.org> - - * NEWS: Added info about groff.texinfo. - - * doc/groff.texinfo: Will now compile (using texi2dvi) without - warning messages. - -1999-09-14 Werner LEMBERG <wl@gnu.org> - - * groff/groff.man: More updates. - -1999-09-13 Werner LEMBERG <wl@gnu.org> - - * doc/groff.texinfo: New file. This manual is still very - rudimentary. It has been originally contributed by Trent - A. Fisher <trent@gnurd.portland.or.us> with first corrections and - additions by me. - - * INSTALL: Added information about the `doc' subdir - - * troff/troff.man: Minor fixes. - - * groff/groff.man: Added missing `-L arg' to SYNOPSIS section; - reordered options. - - * troff/input.cc (usage): Added missing `-ffam' to usage message. - - * Makefile.in (dist): groff-$(version).tar.gz must be removed - also, otherwise it is included itself in another call of `make - dist'. - - * groff/groff.cc (synopsis): Removed superfluous space. - - * PROJECTS, PROBLEMS, NEWS: Updated. - - * VERSION: Updated to 1.12beta. - - * BUG-REPORT: Some cosmetic fixes. Corrected email address. - - * README: Updated: Included documentation about CVS repository, - mailing lists, and daily snapshots. - - * tmac/Makefile.sub: Fixed $(tmap_wrap) finally. - -1999-09-12 Bjarni Ingi Gislason <bjarniig@rhi.hi.is> - - * tmac/tmac.an: If the tag didn't fit into the space that the - macro `TP' specifies, the rest of the tag went into the space for - the next line. - -1999-09-12 Jeffrey Copeland <jeff@opennt.com> - - * grolj4/lj4.cc: Added duplex printing (option `-d'). - - * grolj4/grolj4.man: Document duplex printing. - -1999-09-12 Werner LEMBERG <wl@gnu.org> - - * doc/Makefile (pic.ps): Fixed rule which caused problems with - non-GNUish sed programs. - - * tmac/doc-syms: Removed extra space from -iso8802-3 macro - definition. - - * configure.in (LIBS): Added `-lc' - - * Makefile.comm (.man.n): Added substitution for @TMAC_AN_PREFIX@. - - * pic/tex.cc (solid_arc): Casting M_PI to double. - - * libgroff/putenv.c (putenv): Changed function header to ANSI C. - - * groff/groff.man, tmac/Makefile.sub (MAN7), tmac/groff_msafer.man - (new file), tmac/msafer.man (deleted), tmac/groff_me.man (new - file), tmac/me.man (deleted): {me,msafer} -> groff_{me,msafer}. - - * groff/groff_man.man: New file. This manual page was originally - written for the Debian GNU/Linux system by Susan G. Kleinmann - <sgk@debian.org>. - - * eqn/list.cc (list_box::compute_metrics, - list_box::compute_sublist_width): Removed variable declaration to - avoid shadowing warnings. - - * grops/psrm.cc (resource_manager::process_file): Ditto. - - * tfmtodit/tfmtodit.cc (main): Ditto. - - * libgroff/font.cc (font::load_desc): Renamed auxiliary variable - to avoid shadowing warnings. - - * tbl/table.cc (block_entry::do_divert, table::do_row): Renamed - shadowing loop variable. - - * groff/groff.man, troff/troff.man: Added doc about grohtml. - -1999-09-12 Gaius Mulley <gaius@glam.ac.uk> - - New grohtml frontend to convert groff input to html. - - * Makefile.in (CCPROGDIRS, DEVDIRS): Added html device. - - * tmac/Makefile.sub (NORMALFILES): Added tmac.html. - - * tmac/eqnrc: Added html device. - - * tmac/tmac.html: New file. - - * eqn/main.cc (do_file, inline_equation), pic/troff.cc - (troff_output::start_picture, troff_output::finish_picture), - tbl/main.cc (process_input_file): - Surrounded output with `graphics_start' and `graphics_end' so that - the html driver can identify non-text portions. - - * grodvi/dvi.cc (dvi_printer::set_char), grolj4/lj4.cc - (lj4_printer::set_char), grops/ps.cc (ps_printer::set_char), - grotty/tty.ps (tty_printer::set_char): Additional parameter - `name'. - - * include/printer.h: Class printer: New function - set_char_and_width; new variables (is_char_named, is_named_set, - named_command, named_char_s, named_char_n) to hold information - about named characters -- needed by the html driver. - - * libdriver/printer.cc (printer::set_ascii_char, - printer::set_special_char): Use set_char_and_width. - - * devhtml/*: New device files for html driver. - - * grohtml/*: New driver grohtml. - -1999-09-11 Wilfredo Sanchez <wsanchez@apple.com> - - * tmac/doc-common, tmac/tmac.an: Removed the word `UNIX' in - default strings. - -1999-09-11 Luke Mewburn <lukem@netbsd.org> - - * libgroff/string.cc (search): Small fix to test against NULL - pointer. - -1999-09-11 Jeff Conrad <jeff_conrad@msn.com> - - * troff/node.cc (copy): The characters in a bracket escape (e.g., - \b'abc') were stacked in reverse order when processed in a - diversion. - - * troff/node.h: Added `*last' to struct `node' to make the above - fix work. - - * troff/input.cc (read_draw_node), libdriver/input.cc (do_file): - The default scale for the 'f' and 't' graphics functions were 'm' - rather than 'u' (i.e., no scaling). - -1999-09-11 Peter Miller <peterm@jna.com.au> - - * groff/groff.cc (main), groff.man, soelim/soelim.cc (main, - do_file), soelim/soelim.man: Added `-I file' option to soelim, - defining include paths. - - * soelim/soelim.cc (include_path_append): New function. - -1999-09-11 Larry Jones <larry.jones@sdrc.com> - - * tbl/main.cc (process_options): Unix (at least Documenter's - Workbench) tbl allows arbitrary non-alpha characters between - options. - -1999-09-11 Paul Eggert <eggert@twinsun.com> - - Y2k fixes. Don't assume that the current year precedes 2000. - - * doc/meref.me: Add \n(y2, \n(y4. - - * tmac/doc-common (Yr): New number register. - (Dd): Don't assume current year precedes 2000. - - * tmac/tmac.e (td): Likewise. - (y2, y4): New number registers. - - * pic/pic.man: Update reference for pic paper to May, 1991 - version. - -1999-09-11 Werner LEMBERG <wl@gnu.org> - - * tmac/Makefile.sub (install_data, stamp-wrap, uninstall_sub): - Removed quotation marks which prevented correct expansion of - $(tmac_wrap). - - * devlj4/Makefile.sub (LJ4RES): Fixed value (600 instead of 300). - -1999-09-10 Werner LEMBERG <wl@gnu.org> - - * Makefile.sub (DISTCLEANFILES): Added `config.log' and - `config.cache'. - - * Removed configure.old. - -1999-08-31 Werner LEMBERG <wl@gnu.org> - - * VERSION: Updated to 1.11.1 - -1999-05-27 Werner LEMBERG <wl@gnu.org> - - * doc/Makefile: changed `.PS' postfix to `.ps' for consistency. - - * tmac/Makefile.sub (install_data, stamp-wrap, uninstall_sub): - added quotations around $(tmac_wrap) to avoid syntax error if - variable is empty. - - * configure: Newly generated using autoconf 2.13. - - * Makefile.in (LDFLAGS): Set variable to @LDFLAGS@. - -Fri Aug 15 08:51:47 1997 Eric S. Raymond <esr@snark.thyrsus.com> - - * README, PROJECTS, NEWS, INSTALL, VERSION, - doc/Makefile. doc/pic.ms, groff/groff.man: - Prepare for 1.11 release. No code changes. - Documentation for pic added (doc/pic.ms). - -Sun Nov 26 11:45:13 1995 James Clark <jjc@jclark.com> - - * Version 1.10 released. - -Fri Nov 24 09:56:16 1995 James Clark <jjc@jclark.com> - - * afmtodit/afmtodit.pl: Avoid comment on first line. - -Mon Nov 20 11:13:49 1995 James Clark <jjc@jclark.com> - - * aclocal.m4 (GROFF_INSTALL_SH): New macro. - * configure.in: Call it. - - * Makefile.sub (configure): Depends on aclocal.m4 not acgroff.m4. - (distfiles): Doesn't depend on config.log or config.cache. - -Sun Oct 1 08:45:36 1995 James Clark <jjc@jclark.com> - - * grog/grog.sh: Use print "" rather than print in END rule. - -Wed Aug 23 13:30:52 1995 James Clark <jjc@jclark.com> - - * tbl/main.cc (process_data): Don't give error for excess data - entries that are comments. - -Fri Jul 28 11:00:27 1995 James Clark <jjc@jclark.com> - - * tbl/main.cc (process_data): Fix case where new for-scope rules - silently change meaning of code. - -Tue Jul 4 23:39:51 1995 James Clark <jjc@jclark.com> - - * troff/env.cc (hyphenate): Loop over all consecutive sequences - of non-zero hyphenation codes. - -Sat Jul 1 00:42:15 1995 James Clark <jjc@jclark.com> - - * aclocal.m4 (GROFF_POSIX): Use conflicting declaration technique. - -Thu Jun 29 13:58:36 1995 James Clark <jjc@jclark.com> - - * tmac/tmac.e (ip): Divert the tag so as to freeze the spaces. - -Tue Jun 27 12:30:16 1995 James Clark <jjc@jclark.com> - - * tmac/tmac.andoc: Make it work in compatibility mode. - - * refer/token.h (token_info::is_range_sep): New function. - * refer/token.cc (init_special_chars): Make \(en a RANGE_SEP. - * refer/ref.cc (reference::output): More sophisticated check for - multiple pages. - - * devps/prologue.ps (MANUAL): New procedure. - * grops/ps.cc (main): New -m option. - (usage): Include -m. - (ps_printer::~ps_printer): Implement -m. - - * aclocal.m4 (GROFF_G): New macro. - * configure.in: Call it. - * Makefile.in (g): Provided by configure. - - * hpftodit/hpftodit.cc (basename): Rename to xbasename. - - * tmac/tmac.tty: Disable warning about bad fonts. Remove font - translations. - - * Makefile.in (tmacpath): Don't include /usr/lib/tmac. - (tmac_m, tmac_s): Deleted. - (sys_tmac_prefix, tmac_wrap, tmac_prefix, tmac_an_prefix, - tmac_s_prefix): New variables. - (MDEFINES): Change accordingly. - * Makefile.comm (.man.n): Use new TMAC_* variables. - * configure.in (GROFF_TMAC): Call. - * aclocal.m4 (GROFF_TMAC): Define. - * tmac/Makefile.sub (stamp_wrap): New target. - (install_data, uninstall_sub): Handle macro wrapping. - -Mon Jun 26 14:54:39 1995 James Clark <jjc@jclark.com> - - * tbl/main.cc (main): Ignore -T option. - -Thu Jun 22 09:08:06 1995 James Clark <jjc@jclark.com> - - * devlj4/generate/special.map: Add definition of \(nb. - - * tmac/tmac.dvi: Add definition of \(nb. - - * troff/dictionary.c (dictionary::dictionary): association::v gets - initialized by association::association. - - * tmac/Makefile.sub: Avoid using temporary files when installing. - - * troff/env.cc (environment::set_font): Make bad font number a - warning. - - * Makefile.in (fontpath): Remove $(prefix)/lib/font from fontpath. - - * Makefile.in (datadir): Use share rather than lib. - - * groff/groff.cc (basename): Rename to xbasename. - -Wed Jun 21 16:59:46 1995 James Clark <jjc@jclark.com> - - * Makefile (CCLIBS): Don't use. - * Makefile.ccpg: Likewise. - - * acgroff.m4: Rename to... - * aclocal.m4: Modify extensively for autoconf 2. - * configure.in: Likewise. - * Makefile.in: Likewise. - - * groff/pipeline.c (const): Declare as empty if __STDC__ not - defined. - (xstrsignal): Check for definition of NSIG. Conditionalize - on SYS_SIGLIST_DECLARED. Make return type const. - -Sat Jun 10 12:28:16 1995 James Clark <jjc@jclark.com> - - * troff/input.cc (interpolate_macro): Rephrase missing space - warning. - -Thu May 11 01:07:16 1995 Jason Merrill <jason@phydeaux.cygnus.com> - - * addftinfo/addftinfo.cc, eqn/delim.cc, eqn/lex.cc, eqn/list.cc, - grodvi/dvi.cc, groff/groff.cc, grops/ps.cc, grops/psrm.cc, - grotty/tty.cc, include/ptable.h indxbib/indxbib.cc, - libbib/index.cc, libbib/linear.cc, libbib/search.cc, - libdriver/input.cc, libdriver/printer.cc, libgroff/font.cc, - libgroff/lf.cc, libgroff/nametoindex.cc, libgroff/ptable.cc, - libgroff/string.cc, lkbib/lkbib.cc, lookbib/lookbib.cc, - pic/lex.cc, pic/object.cc, pic/pic.y refer/label.y refer/ref.cc, - refer/refer.cc, refer/token.cc, tbl/main.cc, tbl/table.cc, - tfmtodit/tfmtodit.cc, troff/dictionary.cc, troff/div.cc, - troff/env.cc, troff/input.cc, troff/node.cc, troff/symbol.cc: - Fix 'for' scoping. - -Wed Apr 19 21:15:11 1995 James Clark <jjc@jclark.com> - - * troff/input.cc (spring_trap): Push a macro_iterator rather than a - string_iterator. - (spring_trap, postpone_traps, unpostpone_traps): Move to later in - file. - (macro_iterator::macro_iterator): Add additional argument. - -Mon Apr 10 12:06:02 1995 James Clark <jjc@jclark.com> - - * troff/div.cc (vertical_size::vertical_size): In place of integer - specifying line spacing use cunits specifying post vertical - space. - (macro_diversion::output, top_level_diversion::output): Likewise. - * troff/div.h: Change declarations accordingly. - * troff/env.cc (pending_output_line): Replace ls field by post_vs - field. - (pending_output_line::pending_output_line, - pending_output_line::output, environment::output, - environment::output_line, environment::output_title, - environment::hyphenate_line): In place of - integer specifying line spacing use cunits specifying post vertical - space. - (environment::environment): Add post_vertical_spacing and - prev_post_vertical_spacing arguments. - (environment::get_post_vertical_spacing): New function. - (environment::total_post_vertical_spacing): New function. - (environment::post_vertical_spacing): New function. - (init_env_requests): Initialize pvs request and .pvs register. - * troff/env.h: Change declarations. - -Tue Mar 28 09:52:07 1995 James Clark <jjc@jclark.com> - - * tmac/tmac.pspic: Immediately remove the temporary file. - -Sat Mar 25 10:43:11 1995 James Clark <jjc@jclark.com> - - * tmac/tmac.pspic (PSPIC): Scale graphic uniformly even when - height is specified. - -Thu Jan 26 16:20:13 1995 James Clark <jjc@jclark.com> - - * tbl/table.c (struct vertical rule, class table_entry): Use int - not short for start_row and end_row. - -Fri Jan 13 13:53:05 1995 James Clark <jjc@jclark.com> - - * troff/input.cc (trapping_blank_line, blank_line_macro): New - functions. - (diverted_space_node::reread, process_input_stack): Call - trapping_blank_line() rather than blank_line(). - (init_input_requests): Bind "blm" to blank_line_macro(). - - * tmac/tmac.s (XA): Use .br and par@reset rather than XA. - -Tue Jan 10 11:40:35 1995 James Clark <jjc@jclark.com> - - * troff/env.cc (environment::possibly_break_line): Require that - width total excluding width of final space node be greater than - the target text length. - -Tue Jan 3 09:13:37 1995 James Clark <jjc@jclark.com> - - * troff/node.cc (kern_pair_node::vertical_extent): New function. - -Sun Dec 4 13:19:07 1994 James Clark <jjc@jclark.com> - - * troff/node.cc (charinfo_node): New class. - (glyph_node, composite_node): Derive from charinfo_node. Change - member functions accordingly. - -Wed Nov 30 10:29:29 1994 James Clark <jjc@jclark.com> - - * nroff/nroff.sh: Use -Tlatin1 not -TLatin1. - -Mon Aug 8 10:17:59 1994 James Clark (jjc@jclark.com) - - * tmac/tmac.tty-char: Add definitions for \(ab and \[arrowvertex]. - - * devps/generate/textmap (notsubset): Add. - - * tmac/tmac.a4: New file. - -Sun Jul 24 20:08:42 1994 James Clark (jjc@jclark.com) - - * pic/main.cc (had_parse_error): New variable. - (do_picture, do_whole_file): Set had_parse_error if yyparse() - returns non-zero. - (main): Return 1 if had_parse_error is true. - -Tue Jul 19 13:40:31 1994 James Clark (jjc@jclark.com) - - * grolj4/lj4.cc (main): Avoid use of strtoul. - -Mon Jul 18 15:03:02 1994 James Clark (jjc@jclark.com) - - * nroff/nroff.sh: Default device is -Tlatin1 if $LC_CTYPE is - iso_8859_1 or $LESSCHARSET is latin1. - -Sun Jul 10 13:38:35 1994 James Clark (jjc@jclark.com) - - * hpftodit: New directory. - * Makefile.in (CCPROGDIRS): Add hpftodit. - * devlj4/generate: New directory. - -Thu Jul 7 23:49:48 1994 James Clark (jjc@jclark.com) - - * configure.in: Don't use AC_VFORK. - * groff/pipeline.c (run_pipeline): Use fork() always. - -Wed Jul 6 11:13:17 1994 James Clark (jjc@jclark.com) - - * grops/ps.cc (main): Use %1 not %s in error message for -w. - - * Makefile.in (CCPROGDIRS): Add grolj4. - (DEVDIRS): Add devlj4. - * grolj4, devlj4: New directories. - * tmac/troffrc: Handle lj4. - * tmac/tmac.lj4: New file. - -Fri Jun 17 18:02:53 1994 James Clark (jjc@jclark.com) - - * tmac/tmac.e (@n): Set indent to 0 before calling |h. - -Wed Jun 1 07:33:47 1994 James Clark (jjc@jclark.com) - - * troff/input.cc (do_if_request): At end of second string, switch - environments before getting next token. - -Fri May 20 07:39:18 1994 James Clark (jjc@jclark.com) - - * devps/psstrip.sed: Split rule that strips whitespace on either - side of delimiters. - -Wed May 18 08:13:47 1994 James Clark (jjc@jclark.com) - - * troff/node.h (font_family::make_definition): Add return value to - declaration. * troff/symbol.h (symbol::operator==, - symbol::operator!=): Likewise. - -Tue May 17 20:46:06 1994 James Clark (jjc@jclark.com) - - * groff/groff.cc (main, help, synopsis): Handle -S. - (possible_command::insert_arg): New function. - - * tmac/tmac.safer: New file. - * tmac/msafer.man: New file. - * tmac/Makefile.sub (FILES): Add tmac.safer and msafer.man. - -Thu Mar 10 01:58:30 1994 Paul Eggert (eggert@twinsun.com) - - * pic/pic.h, pic/main.cc (safer_flag): New variable. - * pic/pic.y (placeless_element): Avoid unsafe operations if - `safer_flag' is set. - * pic/main.cc (main): Add -S option, which sets `safer_flag'. - -Tue May 10 13:02:31 1994 James Clark (jjc@jclark.com) - - * eqn/lex.cc (get_token): Put call to add_context() in block to - work around Sun C++ 4.0 bug. - - * include/stringclass.h (operator +): Use ?: instead of `if' to - work around Sun C++ 4.0 bug. - -Thu May 5 11:18:03 1994 James Clark (jjc@jclark.com) - - * tbl/main.cc (process_format): Accept - as a synonym for the _ - key letter. - - * libbib/index.cc (minus_one): Don't declare as const. - -Fri Apr 29 09:32:48 1994 James Clark (jjc@jclark.com) - - * troff/input.cc (get_char_for_escape_name): Push back a newline. - -Wed Apr 27 21:14:18 1994 James Clark (jjc@jclark.com) - - * troff/input.cc (write_macro_request): New function. - (init_input_requests): Bind write_macro_request to writem. - -Sun Apr 17 11:15:38 1994 James Clark (jjc@jclark.com) - - * tmac/tmac.s (@EN): Turn filling back on even if there was no - equation. - - * eqn/lex.cc (do_space): Supply missing argument to lex_error. - - * tmac/tmac.s (@TS): Renamed from TS. - (TS): Call LP then TS again. - (cov*ab-init): Alias @TS to TS. - - * tmac/tmac.s: Allow QP or RS to initialize. - - * tmac/tmac.s (par@load-init): New macro. Call at end of file. - Move initializations of PS and LL here. - (par@init): Don't initialize HY. Avoid changing environment 0. - (par*env-init): Don't all par@reset. - -Thu Apr 14 19:15:45 1994 James Clark (jjc@jclark.com) - - * include/posix.h: Include <fcntl.h> only if not using <osfcn.h>. - -Sun Apr 10 09:54:44 1994 James Clark (jjc@jclark.com) - - * Makefile.in (MDEFINES): Add LDFLAGS. - (LDFLAGS): Add definition line. - -Thu Apr 7 22:22:22 1994 James Clark (jjc@jclark.com) - - * troff/input.cc (get_optional_char): Split off error check into... - (check_missing_character): New function. - * troff/token.h: Declare it. - * troff/env.cc (margin_character): Don't call get_optional_char. - Only call tok.next() after making the node. - - * include/lib.h (getopt): Make 2nd argument char *const *. - -Fri Mar 11 07:28:03 1994 James Clark (jjc@jclark.com) - - * nroff/conftest.sh: Deleted. - -Fri Mar 4 10:51:36 1994 James Clark (jjc@jclark.com) - - * pic/make-dos-dist: Deleted. - -Wed Mar 2 20:59:16 1994 James Clark (jjc@jclark.com) - - * devps/psstrip.sed: Strip comments before stripping trailing - white space. - -Sat Feb 19 13:07:16 1994 James Clark (jjc@jclark.com) - - * Version 1.09 released. - -Wed Feb 16 16:53:49 1994 James Clark (jjc@jclark.com) - - * tmac/doc-ditroff (hK): Don't reset page number if \nC is > 0. - -Mon Feb 14 08:26:40 1994 James Clark (jjc@jclark.com) - - * libgroff/font.cc (font::load_desc): Fix typo in error message. - -Sun Feb 13 09:37:38 1994 James Clark (jjc@jclark.com) - - * libgroff/new.cc (operator new): Rewrite so as to avoid warning - about returning without a value. - - * troff/charinfo.h (charinfo::get_special_translation): Cast - TRANSLATE_NONE to int. - - * refer/token.cc (lookup_token, store_token): Remove bogus loop - test. Fix test so that it works with n unsigned. - - * pic/pic.y (defaults_table): Fully bracket initializer. - * pic/lex.cc (lookup_keyword): Likewise. - * eqn/lex.cc (token_table, def_table): Likewise. - * eqn/box.cc (param_table): Likewise. - * troff/input.cc (warning_table): Likewise. - * libgroff/font.cc (table): Likewise. - * grops/ps.cc (ps_printer::special): Likewise. - * grops/psrm.cc (resource_manager::process_file): Likewise. - * tfmtodit/tfmtodit.cc (lig_chars, lig_table): Likewise. - * refer/command.cc (command_table): Likewise. - * addftinfo/addftinfo.cc (param_table): Likewise. - - * troff/symbol.cc (symbol::symbol): Prevent compiler warnings - about temp's being unused. - (unused): New function. - - * groff/pipeline.cc: Declare c_fatal. - - * libbib/linear.cc (bmpattern::search): Cast patterrn[--j] to - uchar. - - * libbib/index.cc (index_search_item::load): Prevent compiler - warnings about fd_closer's being unused. - (unused): New function. - -Sat Feb 12 10:31:59 1994 James Clark (jjc@jclark.com) - - * troff/input.cc (copy_mode_error): Make `prefix' static. - Fix typo. - - * include/posix.h: Include <osfcn.h> is HAVE_CC_OSFCN_H is - defined. - * acgroff.m4, configure.in, Makefile: Rename HAVE_CC_UNISTD_H to - HAVE_CC_OSFCN_H and modify accordingly. - - * troff/input.cc (init_charset_table): radicalex overlaps - horizontally. - - * groff/acgroff.m4 (GROFF_ISC_SYSV3): New macro (from - udodo!hans@relay.NL.net). - * groff/configure.in: Call it. - - * groff/acgroff.m4 (GROFF_PCLOSE): New macro. - * groff/configure.in: Call it. - * include/lib.h: Conditionalize declaration of pclose. - - * troff/div.cc (last_page_number): New global variable. - (top_level_diversion::begin_page): Exit if we just printed the - last page. - * troff/div.h (last_page_number): Declare it. - * troff/input.cc (parse_output_page_list): Set last_page_number. - - * eqn/sqrt.cc: Rename \(rn to \[radicalex]. - * devps/S, devps/textmap, tmac/tmac.ps, tmac/tmac.dvi, - tmac/tmac.X: Likewise. - * tmac/tmac.ps, tmac/tmac.X, tmac.dvi: Add definitions of \(rn. - * tmac.dvi: Make \(ru and \(ul extend beyond their width by .04m. - -Fri Feb 11 11:45:40 1994 James Clark (jjc@jclark.com) - - * tmac/doc-ditroff (hK): Remove groff specific code which - prevented page-breaks between separate manual entries. If this is - the first page, don't set the page number to 1. - - * acgroff.m4 (GROFF_POSIX): New macro. - * configure.in: Use it. - - * troff/node.cc (class real_output_file, - real_output_file::real_output_file, - real_output_file::~real_output_file): Conditionalize use of - popen/pclose on POPEN_MISSING. - * troff/node.h: Conditionalize pipe_command on POPEN_MISSING. - * troff/input.cc (pipe_command): Give an error if POPEN_MISSING. - (pipe_source): Similarily. - - * acgroff.m4 (GROFF_PROG_CCC): Update message about libg++. - - * acgroff.m4 (GROFF_GETOPT, GROFF_PUTENV, GROFF_POPEN): Detect - presence of declarations by trying to compile example with - conflicting declarations. (gcc only gives a warning for missing - declarations.) - -Wed Feb 9 09:12:23 1994 James Clark (jjc@jclark.com) - - * tmac/tmac.pspic (PSPIC): Allow options to specify alignment - (from Ulrich Lauther). - -Tue Feb 8 03:56:40 1994 James Clark (jjc@jclark.com) - - * libbib/linear.cc (file_buffer::load): Use S_ISREG macro. - -Thu Feb 3 09:34:35 1994 James Clark (jjc@jclark.com) - - * indxbib/indxbib.cc (write_hash_table): Add code for case where - pointers and ints have different sizes. - -Sun Jan 9 16:17:51 1994 James Clark (jjc@jclark.com) - - * tmac/tmac.s (par*env-init): Call par@reset. - -Fri Jan 7 10:24:27 1994 James Clark (jjc@jclark.com) - - * tmac/tmac.s (@IP): Switch to a new environment when diverting - tag. - (par*push-tag-env, par*pop-tag-env): New macros. - -Wed Jan 5 21:18:34 1994 James Clark (jjc@jclark.com) - - * grops/ps.cc (ps_printer::ps_printer): Use MAX_LINE_LENGTH for - initializing `out'. Reduce MAX_LINE_LENGTH from 79 to 72. - - * grops/ps.cc (ps_printer::~ps_printer): Output %%CreationDate - comment. Include <time.h>. - -Wed Dec 15 14:14:00 1993 James Clark (jjc@jclark.com) - - * grops/ps.cc (is_small_h, is_small_v): Deleted. - (ps_printer::flush_sbuf): Use absolute motion only at beginning of - lines. - -Tue Dec 14 10:06:34 1993 James Clark (jjc@jclark.com) - - * troff/input.cc (read_request): Only print a prompt if reading - from the terminal. Also clearerr on EOF if reading from the - terminal. Declare isatty. - -Mon Nov 29 08:38:15 1993 James Clark (jjc@jclark.com) - - * refer/label.y: Rename map_t to map_func and extractor_t to - extractor_func. - -Sat Oct 30 06:38:12 1993 James Clark (jjc@jclark.com) - - * include/assert.h: Don't use volatile. - * libgroff/assert.cc: Likewise. - -Fri Oct 29 15:00:23 1993 James Clark (jjc@jclark.com) - - * troff/input.cc (abort_request): Look at character in tok before - calling get_copy(). - -Thu Oct 28 14:09:48 1993 James Clark (jjc@jclark.com) - - * troff/troff.h (NO_RETURN): Deleted. - * troff/div.cc (cleanup_and_exit): Don't declare aas NO_RETURN. - * troff/input.cc (exit_troff): Likewise - - * Makefile.in: Remove `Making ...' messages since GNU make now - gives these. - - * configure.in: Use AC_HAVE_HEADERS(unistd.h) instead of AC_UNISTD_H. - -Wed Oct 27 11:12:51 1993 James Clark (jjc@jclark.com) - - * tmac/tmac.s (@init): Initialize PO to \n(.o here, rather than - to constant 1 inch. - -Sat Oct 23 10:03:52 1993 James Clark (jjc@jclark.com) - - * tmac/tmac.e (hl): Use \n[.in] rather than \n(.i. - -Thu Oct 14 12:09:45 1993 James Clark (jjc@jclark.com) - - * eqn/delim.cc (delim_box::compute_metrics): Don't increase - MARK_REG if there was no left delimiter. - -Sat Oct 2 19:54:47 1993 James Clark (jjc@jclark.com) - - * pic/troff.cc (troff_output::text): Set line thickness to - relative before outputting text. - - * tmac/tmac.e (@k): Don't zero ?T. - ((z): Likewise. - -Sat Sep 25 11:08:43 1993 James Clark (jjc@jclark.com) - - * tmac/tmac.e ($p): Handle possibility that $3 is empty. - -Wed Aug 18 08:51:41 1993 James Clark (jjc@jclark.com) - - * troff/input.cc (decode_args): Warn about unquoted tabs (from - Paul Eggert). - -Tue Aug 10 08:38:32 1993 James Clark (jjc@jclark.com) - - * troff/input.cc (ignoring): New variable. - (ignore): Set ignoring during call to do_define_macro. - (do_define_macro): Clear ignoring before interpolating terminating - macro. - (copy_mode_error): New function. - (get_char_for_escape_name, read_long_escape_name, - interpolate_arg): Use copy_mode_error. - (warning_table): Add WARN_IG. - * troff/troff.h (WARN_IG): Declare. - (WARN_TOTAL): Change accordingly. - - * groff/pipeline.c (strsignal): Rename to xstrsignal. - * groff/groff.cc (strsignal): Delete declaration. - -Fri Jul 16 01:43:12 1993 James Clark (jjc@jclark.com) - - * troff/div.cc (page_offset): Use 'm' as default scaling. - -Sat Jul 3 09:11:38 1993 James Clark (jjc@jclark.com) - - * nroff/nroff.sh: Ignore -u. - -Wed Jun 9 12:17:27 1993 James Clark (jjc@jclark.com) - - * Makefile.in (MDEFINES): Pass down MAKEOVERRIDES. - -Fri Jun 4 17:35:47 1993 James Clark (jjc@jclark.com) - - * tmac/tmac.s (par*box-draw): Set adjustment mode to l while - drawing box. - (B2): With -Tascii, leave additional vertical space before - and after. Ensure that the left and right indent is restored to - what it was even if the point size changes. Don't call - par@finish. Change the indent, line length and title length - directly. With -Tascii, make the width of the box 1n less. - (B1): Remember 1n at the current point size. Don't call - par@reset. Change the indent, line length and title length - directly. Ensure that the temporary indent is preserved. - (par*box-mark-top): Turn off no spacing mode. - -Thu Jun 3 17:47:14 1993 James Clark (jjc@jclark.com) - - * Makefile.in (dist): Use .gz suffix. - -Thu May 27 20:04:59 1993 James Clark (jjc@jclark.com) - - * troff/input.cc (main): Add return 0. - * pic/main.cc (main): Use return instead of exit. - * tbl/main.cc (main): Likewise. - * eqn/main.cc (main): Likewise. - * grops/ps.cc (main): Likewise. - * grotty/tty.cc (main): Likewise. - * groff/groff.cc (main): Likewise. - * grodvi/dvi.cc (main): Likewise. - * refer/refer.cc (main): Likewise. - * indxbib/indxbib.cc (main): Likewise. - * lkbib/lkbib.cc (main): Likewise. - * soelim/soelim.cc (main): Likewise. - * addftinfo/addftinfo.cc (main): Likewise. - * acgroff.m4 (GROFF_PROG_CCC, GROFF_CC_COMPILE_CHECK, - GROFF_COOKIE_BUG, GROFF_CC_ANSI_BUG): Likewise. - - * troff/token.h (process_input_stack): Don't declare as static. - * troff/input.cc: Likewise. - - * troff/node.c (invalidate_fontno): Make it a static member of - class font_family. Change callers. - * troff/node.c: Change declaration. - - * tbl/main.cc (struct input_entry_format): Add explicit public - specifier. - * tbl/table.cc (struct text_stuff, struct single_hline_stuff, - struct double_hline_stuff): Likewise. - * tbl/table.h (struct entry_format): Likewise. - * pic/object.h (struct saved_state): Likewise. - - * include/stringclass.h: Add forward declarations of friend - functions that are later declared as inline. Don't include inline - specifier in friend declaration. - - * libgroff/lib.h: Declare popen and pclose. - * acgroff.m4 (GROFF_POPEN): New macro. - * configure.in: Call it. - - * include/lib.h (PI): New constant. Undef first if necessary. - * tfmtodit/tfmtodit.cc (main): Use PI rather than M_PI. - * grops/ps.cc (degrees, radians): Likewise. - * libgroff/font.cc (font::get_skew): Likewise. - - * grops/ps.cc (is_ascii): New function. - (ps_output::put_string): Use is_ascii. Use csprint rather than - isprint. - (ps_printer::define_encoding): Use csspace. - * libgroff/strtol.c (ISASCII): New macro. - (strtol): Cast arguments to is*() and tolower() to unsigned char. - Use ISASCII rather than isascii. - * libgroff/cmap.cc: Use isascii() only if <ctype.h> defines it. - * libgroff/cset.cc: Likewise. - * libdriver/input.cc: Include cset.h. - (do_file, get_integer, possibly_get_integer): Use csdigit() rather - than isdigit(). - - * refer/refer.cc (main): Use %ld rather than %d for longs. - - * libbib/index.cc (index_search_item_iterator::get_tag): Use - S_ISREG macro. - - * addftinfo/addftinfo.cc (param_t): Add explicit `int'. - -Mon May 24 08:51:37 1993 James Clark (jjc@jclark.com) - - * troff/input.cc (hyphenation_code): Skip white space between - char/code pairs. - -Sun May 16 08:15:52 1993 James Clark (jjc at jclark.com) - - * tbl/table.h (table::entry_list_tailp): New member. - (table::table): Initialize it. - (table::add_entry): Use entry_list_tailp to avoid O(n^2) - behaviour. - -Sat May 15 17:26:00 1993 James Clark (jjc at jclark.com) - - * grotty/tty.cc (tty_printer::add_char): Don't discard characters - with negative horizontal positions. Remove casts of glyph::hpos to - int. - (USHRT_MAX): Delete definition. - (SHRT_MAX, SHRT_MIN): New definitions. - (glyph::hpos): Change type to short. - (tty_printer::end_page): Output multiple backspaces if necessary. - Remove casts of glyph::hpos to int. - -Fri May 7 12:14:37 1993 James Clark (jjc at jclark.com) - - * tmac/tmac.s (@RT): New definition. - -Thu May 6 21:36:54 1993 James Clark (jjc at jclark.com) - - * refer/refer.cc (do_file): Make sure current_filename is set when - filename is "-". - - * pic/common.cc (common_output::dot_line): Handle zero length - lines. - -Sun May 2 19:54:16 1993 James Clark (jjc at jclark.com) - - * tmac/tmac.s (par@reset): Get value for .hy for \n[HY]. - (par@init): Initialize \n[HY]. - -Mon Apr 26 11:43:16 1993 James Clark (jjc at jclark.com) - - * troff/dictionary.cc (dictionary::remove): Continue when - r < j < i. - -Sun Apr 25 11:03:00 1993 James Clark (jjc at jclark.com) - - * Makefile.com (.y.cc): Avoid ending up with two versions of - $(YTABH). - -Thu Apr 22 21:03:45 1993 James Clark (jjc at jclark.com) - - * tmac/tmac.dvi (\(,c): Define only if it does not exist. - (\(,C): Likewise. Also fix typo. - -Wed Apr 21 08:47:32 1993 James Clark (jjc at jclark.com) - - * lib.h: Delete extraneous semi-colon. - - * Add pso request: `so' from a pipe. - * troff/input.c (file_iterator::file_iterator): Add 3rd argument. - (file_iterator::close): New function. - (file_iterator::~file_iterator, file_iterator::next_file): Use - file_iterator::close. - (file_iterator::backtrace): Say `process' rather than `file' when - the stream is popened. - (pipe_source): New function. - (init_input_requests): Bind ".pso" to pipe_source. - -Tue Apr 20 00:02:26 1993 James Clark (jjc at jclark.com) - - * afmtodit/afmtodit.pl: Avoid single quotes in comments. - - * pfbtops/pfbtops.c: Output 64 characters per line. Output hex - digits in lower case. - -Mon Apr 19 09:55:57 1993 James Clark (jjc at jclark) - - * Version 1.08 released. - - * Makefile.in (dist): Insert || true after ln -s commands that - might fail. - - * mm: Update to mm 1.16. - - * acgroff.m4 (GROFF_CSH_HACK): New macro. - * configure.in: Call GROFF_CSH_HACK. Substitute for - SH_SCRIPT_SED_CMD. - * Makefile.in (SH_SCRIPT_SED_CMD): New variable. Include in - MDEFINES. - * nroff/Makefile.sub (nroff): New target. - (install_data): Install nroff. - * eqn/Makefile.sub (neqn): Sed with SH_SCRIPT_SED_CMD. - * grog/Makefile.sub (grog): Sed grog.sh with SH_SCRIPT_SED_CMD. - -Sat Apr 17 08:24:28 1993 James Clark (jjc at jclark) - - * eqn/Makefile.sub (neqn): Add chmod +x. - - * grog/Makefile.sub (grog): Remove spurious semi-colon. - -Fri Apr 16 22:41:57 1993 James Clark (jjc at jclark) - - * troff/input.cc (string_iterator::string_iterator()): Initialize - lineno and count. - -Tue Apr 13 10:22:28 1993 James Clark (jjc at jclark) - - * troff/div.cc (macro_diversion::space, - top_level_diversion::space): Don't set high_water_mark. - (macro_diversion::output, top_level_diversion::output): Don't - include post line space in high water mark. - -Wed Apr 7 12:48:18 1993 James Clark (jjc at jclark) - - * eqn/eqn.y: Don't define YYDEBUG. - * pic/pic.y: Likewise. - -Mon Apr 5 10:15:15 1993 James Clark (jjc at jclark) - - * tmac/tmac.e ([3): Add space after comma following editors. - Change double spaces to single spaces. - ([4): Change double spaces to single spaces. - - * grops/ps.h (USE_PS_ADOBE_2_0): New flag for broken_flags. - * grops/ps.cc (ps_printer::~ps_printer): If the USE_PS_ADOBE_2_0 - bit is set in broken_flags, use 2.0 rather than 3.0 as the version - after %!PS-Adobe- (for Newsprint). - - * troff/div.cc (top_level_diversion::begin_page): When - before_first_page is 1, set page_number to 1. - -Sun Apr 4 14:28:53 1993 James Clark (jjc at jclark) - - * eqn/box.cc (box::top_level): Protect equation with \&. - -Sat Apr 3 23:27:25 1993 James Clark (jjc at jclark) - - * groff/groff.cc (possible_command::set_name): Delete old name. - - * groff/groff.cc (possible_command::~possible_command): Use - a_delete. - - * troff/node.cc (troff_output_file::begun_page): New member. - (troff_output_file::troff_output_file): Initialize it. - (troff_output_file::really_begin_page): Only output V command if a - page has been begun. - - * pic/pic.y (placeless_element): Delete argument to PRINT after - use. - -Fri Apr 2 11:31:02 1993 James Clark (jjc at jclark) - - * Make wrapman work. - * troff/div.h (class top_level_diversion): Replace - first_page_begun by before_first_page (with opposite sense). - * Change first_page_begun to before_first_page inverting sense. - * troff/div.cc (class nl_reg): New class. - (init_div_requests): Use class nl_reg for \n(nl. - (top_level_diversion::begin_page): Don't call - output_file::begin_page if before_first_page is 2; - reset before_first_page afterwards. If have_next_page_number is - false, then always increment page_number. - * tmac/tmac.an: Set traps within TH rather than at the top-level. - Restore compatibility mode after loading, and then disable - compatibility mode in TH. - -Thu Apr 1 11:09:34 1993 James Clark (jjc at jclark) - - * grotty/tty.cc (tty_printer::end_page): Don't discard characters - past last line. - * troff/node.h (output_file::trailer): Declare. - * troff/div.cc (cleanup_and_exit): Call output_file::trailer(). - * troff/node.cc (output_file::trailer): New function. - (troff_output_file::~troff_output_file): Move most code into... - (troff_output_file::trailer): New function. - (class troff_output_file): Delete page_length member. Declare - trailer(). - (troff_output_file::really_begin_page): Use current page length - for final V command. - - * tbl/main.cc (struct options): New decimal_point_char member. - (options::options): Initialize this. - (process_options): Implement decimalpoint option. - (process_data): Pass decimal_point_char option to table::table. - * tbl/table.h (class table): New decimal_point_char member. - (table::table): Add additional argument. - * tbl/table.cc (find_dot): Rename to find_decimal_point. Add - second argument specifying decimal point character. Use this - instead of '.'. - (table::table): Initialize decimal_point_char. - (table::add_entry): Change call to find_dot. - - * troff/input.cc (get_copy, token::next): Implement \V. - (interpolate_environment_variable): New function. - -Tue Mar 30 14:41:39 1993 James Clark (jjc at jclark) - - * pic/lex.cc (lookup_keyword): Rename MIN to K_MIN, MAX to K_MAX. - * pic/pic.y: Likewise. - - * grotty/tty.cc (tty_printer::add_char, tty_printer::end_page): - Add casts to int. - * refer/ref.cc (reference::insert_field, reference::delete_field): - Likewise. - * troff/number.cc (parse_term): Likewise. - - * acgroff.m4 (GROFF_PROG_YACC): New macro. - * configure.in: Use GROFF_PROG_YACC. - - * acgroff.m4 (GROFF_PROG_CCC): Don't add -O automatically for gcc - and g++. - * Makefile.in (OPTIMIZE): New define. - (DEBUG): Empty by default. - (CCFLAGS, CFLAGS): Include $(OPTIMIZE). - - * acgroff.m4 (GROFF_SYS_SIGLIST): Don't quote program. - (GROFF_ARRAY_DELETE): Likewise. - (GROFF_CC_COMPILE_CHECK): Quote use of $2 and $3. - - * troff/env.cc (trie::~trie): Make virtual to shut up g++. - - * devps/psstrip.sed: Use different delimiter on last line (so that - it works with BSD 4.4 sed.) - -Mon Mar 29 17:07:14 1993 James Clark (jjc at jclark) - - * devps/psstrip.sed: Delete comments. - - * acgroff.m4 (AC_GETOPT): Don't test whether <unistd.h> declares - optind, opterr, optarg. - * lib.h: When UNISTD_H_DECLARES_GETOPT is defined, declare optind, - opterr, optarg. - -Sun Mar 28 17:44:25 1993 James Clark (jjc at jclark) - - * Makefile.in (check): Dummy target. - -Wed Mar 3 04:53:38 1993 James Clark (jjc at jclark) - - * Version 1.07 released. - - * Integrate mm 1.11. - - * tbl/table.cc (alphabetic_block_entry::print): start_row was used - where start_col was meant. - -Thu Feb 25 07:55:36 1993 James Clark (jjc at jclark) - - * grog/grog.sh, grog/grog.pl: Recognize PH and SA as -mm macros. - -Wed Feb 24 10:15:34 1993 James Clark (jjc at jclark) - - * troff/input.cc (token::next): Make \z\o'...' and similar things - work. - - * env.h (MARGIN_CHARACTER_ON, MARGIN_CHARACTER_NEXT): New - constants. - (environment): Add margin_character_flags member. - * env.cc (environment::environment(symbol), - environment::environment(const environment *): Initialize - margin_character_flags. - (margin_character): Rewrite. - (environment::output_line): Add a margin character if - margin_character_flags is non-zero. Turn off the - MARGIN_CHARACTER_NEXT bit. If that makes margin_character_flags - zero, use margin_character_node without copying and then set - margin_character_node to 0. - - * devps/DESC.in: Change minimum size to 1000. - -Tue Feb 23 14:57:49 1993 James Clark (jjc at jclark) - - * troff/symbol.h (symbol::hash): Change return type to unsigned - long. - * troff/dictionary.cc (dictionary::lookup, dictionary::remove): - Add casts to int. - - * test-groff: Use -r rather than -x. - - * grops/psfig.diff: Include in distribution again. - -Mon Feb 22 09:10:44 1993 James Clark (jjc at jclark) - - * Makefile.in (dist): Use gzip. - -Sun Feb 21 11:12:53 1993 James Clark (jjc at jclark) - - * acgroff.m4 (GROFF_GETOPT): Check for declaration of getopt() in - unistd.h as well as in stdlib.h. - * include/lib.h: Include <stdlib.h> is STDLIB_H_DECLARES_GETOPT is - defined; otherwise include <sys/types.h> and <unistd.h> if - UNISTD_H_DECLARES_GETOPT is defined. - - * configure.in: use builtin(include, ... rather than include(... - * configure: Regenerate with autoconf 1.3. - - * libdriver/print.cc (printer::adjust_arc_center): Use new - algorithm suggested by Andy Fyfe. - - * libdriver/printer.cc (printer::adjust_arc_center): New function. - * include/printer.h: Declare this. - * grops/ps.cc (ps_printer::draw): Use it. - * grodvi/dvi.cc (dvi_printer::draw): Use it. - -Fri Feb 19 23:13:51 1993 James Clark (jjc at jclark) - - * Makefile.comm (.man.n): Replace macrodir by tmacdir. - -Thu Feb 11 16:46:59 1993 James Clark (jjc at jclark) - - * eqn/main.cc (main): Handle "eqn -". - -Mon Jan 4 20:29:56 1993 James Clark (jjc at jclark) - - * tmac/tmac.e (++): Install fix from comp.bugs.4sd. - - * mm: Integrate version 1.08. - - * pic/troff.cc (troff_output::finish_picture): Set - EQN_NO_EXTRA_SPACE reg to 0 rather than removing it. - * eqn/box.cc (box::extra_space): Set EQN_NO_EXTRA_SPACE_REG to 0 - if it's not defined. Check whether the register is non-zero rather - than whether it's not defined. - * tmac.e ({, <): Make argument to \x zero if \n(0x is non-zero. - - * indxbib/indxbib.cc: Move all signal handling into... - * indxbib/signal.c: New file. - * configure.in: Call AC_RETSIGTYPE. - - * acgroff.m4 (GROFF_STRUCT_EXCEPTION): New macro. - * configure.in: Call GROFF_STRUCT_EXCEPTION. - * libgroff/matherr.c: Protect with ifdef HAVE_STRUCT_EXCEPTION. - - * troff/input.cc (token::token, token::operator=): Work round SGI - C++ bug. - * pic/object.cc (position::position): Likewise. - -Mon Dec 28 21:50:21 1992 James Clark (jjc at jclark) - - * pic/pic.h: Move declaration of hypot(). - -Wed Dec 16 12:28:29 1992 James Clark (jjc at jclark) - - * pic/pic.h: Declare hypot(). - - * pic/pic.h: Define M_PI if necessary. - -Thu Dec 10 12:03:29 1992 James Clark (jjc at jclark) - - * tmac/tmac.e (re): Add alternative version that doesn't use groff - `.ta T' feature. - - * devps/prologue.ps (RE): Handle the possibility that the old font - doesn't have a FontName entry. - -Wed Dec 2 10:25:29 1992 James Clark (jjc at jclark) - - * tmac/tmac.e (fam): Redefine to set family in environment 2. - (@C): Use @fam not fam. - -Thu Nov 26 16:01:25 1992 James Clark (jjc at jclark) - - * lookbib/lookbib.cc (main): Change type of start to const char *. - * lkbib/lkbib.cc (main): Likewise. - - * eqn/lex.cc (definition::definition): Don't use member - initializer syntax for members of anonymous unions. - - * troff/input.cc (input_stack::backtrace): Change type of to const - char *. - -Wed Nov 25 13:43:09 1992 James Clark (jjc at jclark) - - * include/stringclass.h (class string): Declare inline friend - functions as inline in class declaration. - * troff/hvunits.h (class hunits, class vunits): Likewise. - * include/refid.h (class reference_id): Likewise - * troff/troff.h (points_to_units(units), scale(units, double)): - Delete declarations. - * libdriver/input.cc (get_char): Delete declaration. - * include/lib.h: Change 2nd argument of getopt from const char ** - to char **. - * troff/symbol.cc (symbol::symbol): Cast `new char *[n]' to `const - char **' before assigning to a `const char **'. - * tbl/table.cc: Delete extra declarations of prints(). - -Tue Nov 24 14:33:13 1992 James Clark (jjc at jclark) - - * libgroff/font.cc (font::load_desc): Cast `new char *[n]' to `const - char **' before assigning to a `const char **'. - - * libgroff/errarg.cc (errarg::errarg): Don't use member - initializer syntax for members of anonymous unions. - -Sat Nov 21 05:02:23 1992 James Clark (jjc at jclark) - - * mm: Integrate version 1.07. - -Tue Nov 17 16:44:27 1992 James Clark (jjc at jclark) - - * troff/input.c (translate2): Rename to - (translate_no_transparent). - (init_input_requests): Rename tr2 to trnt. - -Mon Nov 16 09:49:32 1992 James Clark (jjc at jclark) - - * troff/charinfo.h (class charinfo): Add transparent_translate field. - (charinfo::set_translation, charinfo::set_special_translation): - Add second argument that specifies value for - transparent_translate. - (charinfo::get_translation, charinfo::get_special_translation): - Add optional second argument that specifies whether translation is - being used for transparent throughput. - * troff/input.cc (charinfo::set_translation, - charinfo::set_special_translation): Handle second argument. - (charinfo::charinfo): Initialize transparent_translate. - (translate): Split main part off into - (do_translate): New function. Pass argument saying whether - translation applies to transparent throughput. - (translate2): New request. - (init_input_requests): Bind translate2 to `tr2'. - -Wed Nov 11 11:43:20 1992 James Clark (jjc at jclark) - - * tbl/table.h (class table): Add `nokeep' flag. - * tbl/main.cc (process_options): Handle `nokeep' option. - * tbl/table.cc (table::init_output, table::do_row, table::do_top, - table::do_bottom): Don't output keep/release macro definitions or - calls when `nokeep' option has been specified. - -Sat Nov 7 01:28:33 1992 James Clark (jjc at jclark) - - * tmac/tmac.Xps (Xps-char): Use " as delimiter for \Z. - -Wed Nov 4 16:29:04 1992 James Clark (jjc at jclark) - - * tbl/table.cc (table_entry::divert, block_entry::do_divert, - block_entry::divert, alphabetic_block_entry::divert): Add extra - argument giving column separation. - (table::compute_widths): Pass column separation to - table_entry::divert(). - (block_entry::do_divert): If an entry spans multiple columns and a - minimumum width has been specified for each column, then set the - line length to the sum of the widths (plus possibly the column - separations). - - * troff/input.cc (set_escape_char): Don't set the escape_char - until after calling has_arg(). - -Tue Nov 3 11:23:27 1992 James Clark (jjc at jclark) - - * tbl/table.cc (table::do_top): Add missing \s0 for double box - case. - - * tbl/table.cc (table::print_double_hline): Avoid extra new line - in case where r > nrows - 1. - - * tbl/table.cc (BODY_HEIGHT): Deleted. - (LINE_SEP): New definition. - (table::print_single_hline, table::print_double_hline, - table::compute_vrule_top_adjust, table::compute_vrule_bot_adjust, - table::do_row, table::do_top): Use LINE_SEP space before a line - instead of \n[.v]-BODY_HEIGHT-BODY_DEPTH. - - * tbl/table.cc (text_entry::print_contents): New function. - (text_string_name, right_text_string_name): Deleted. - (TEXT_STRING, RIGHT_TEXT_STRING): Deleted. - (simple_text_entry::do_width, numeric_text_entry::do_width, - alphabetic_text_entry::do_width): Don't store the contents of the - entry in a string. - (left_text_entry::simple_print, right_text_entry::simple_print, - center_text_entry::simple_print, - alphabetic_text_entry::simple_print, - numeric_text_entry::simple_print): Print the entry directly - instead of using the stored string. - -Fri Oct 30 10:39:32 1992 James Clark (jjc at jclark) - - * devps/Makefile: Strip PostScript files. - * devps/prologue: Rename to... - * devps/prologue.ps. - * devps/psstrip.sed: New file. - * devps/download: Use .pfa rather than .ps for installed versions - of fonts. - -Thu Oct 29 09:14:43 1992 James Clark (jjc at jclark) - - * troff/env.cc (input_trap): Give a warning if the argument is out - of range. - - * troff/env.cc (adjust): Treat negative argument as missing. Round - argument > 5 down to 5. - - * troff/env.cc (center, right_justify): Make negative argument zero. - - * troff/div.cc (page_offset, vertical_position_traps): Treat - invalid argument as missing. - * troff/env.cc (line_spacing, line_length, title_length, indent, - underline, hyphen_line_max_request, control_char, - no_break_control_char, widow_control_request, adjust, input_trap, - point_size): Likewise. - * troff/node.cc (ligature, kern_request, bold_font, track_kern, - constant_space): Likewise. - * troff/input.cc (compatible, shift, warn_request, - set_escape_char): Likewise. - - * tbl/main.cc (format::format): Avoid doing `new int[0]'. - * tbl/table.cc (table::table): Likewise. - - * Makefile.dev (install_dev): depends on $(DEVFILES). - -Wed Oct 28 08:30:57 1992 James Clark (jjc at jclark) - - * devX75, devX75-12, devX100, devX100-12: New directories. - * Makefile.in: Add these to DEVDIRS. - - * troff/Makefile.sub, eqn/Makefile.sub, indxbib/Makefile.sub, - afmtodit/Makefile.sub, tmac/Makefile.sub, nroff/Makefile.sub, - grog/Makefile.sub, mm/Makefile.sub (uninstall_sub): New target. - * Makefile.in (uninstall, uninstall_sub, uninstall_dirs): New - targets. - * Makefile.ccpg, Makefile.cpg, Makefile.dev, Makefile.man - (uninstall): New target. - * Makefile.comm (uninstall, uninstall_sub, uninstall_man, - uninstall_prog, uninstall_dev): New targets. - - * troff/div.cc (return_request): Treat an invalid argument as - missing. - -Mon Oct 26 11:33:47 1992 James Clark (jjc at jclark) - - * tmac/tmac.e ((f): Set up the environment even when there's a - current diversion. Transperently throughput a call to @N. - (@N): New macro. - -Thu Oct 22 05:05:59 1992 James Clark (jjc at jclark) - - * tbl/table.cc (table::compute_vrule_top_adjust): Round adjustment - up to vertical resolution. - - * tbl/table.cc (table::do_row): Change row number after printing - stuff list. - - * pic/lex.cc (get_token_after_dot): Make .left and .right work. - -Wed Oct 21 14:46:45 1992 James Clark (jjc at jclark) - - * Rename CHANGES to NEWS. - -Tue Oct 20 23:25:21 1992 James Clark (jjc at jclark) - - * libgroff/new.cc (operator new): Avoid calling malloc(0). - -Mon Oct 19 09:10:13 1992 James Clark (jjc at jclark) - - * man.ultrix: Removed. - -Sun Oct 18 06:35:15 1992 James Clark (jjc at jclark) - - * Makefile.comm (extraclean): Delete files whose names begin with - `='. - - * pic/troff.cc (troff_output::text): Fix typo in implementation of - aligned text. - -Sat Oct 10 09:32:29 1992 James Clark (jjc at jclark) - - * troff/env.cc (hyphenate_request, vertical_spacing, no_number): - * troff/div.cc (page_length, need_space, space_request): Treat - invalid optional argument as missing. - * troff/env.cc (number_lines): If the first argument is present - but not a number, turn on line numbering, don't change the next - line number and parse the remaining arguments. - - * tmac/tmac.e (@q): Do the `ne' before changing to environment 2. - -Thu Oct 8 10:24:40 1992 James Clark (jjc at jclark) - - * eqn/box.h: Change declaration accordingly. - * eqn/box.cc (set_gsize): Change return type to int. Return 0 if - the specified size was bad but don't give an error. Check for - overflow. - * eqn/main.cc (main): Change caller. Leave validation to set_gsize. - * eqn/lex (do_size): Likewise. - -Wed Oct 7 09:48:59 1992 James Clark (jjc at jclark) - - * acgroff.m4 (GROFF_PROG_CCC): Use fopen when checking for C++ - compatible headers. - -Sun Oct 4 18:24:02 1992 James Clark (jjc at jclark) - - * tbl/table.cc (table::init_output): Improve error message when - table won't fit on one page. - -Fri Oct 2 10:41:40 1992 James Clark (jjc at jclark) - - * pic/troff.cc (troff_output::start_picture): Generate line - containing a horizontal motion equal to the width of the picture. - - * groff/groff.cc (main): Allow PROG_PREFIX to be set at runtime - using GROFF_COMMAND_PREFIX environment variable. - -Fri Sep 25 11:40:40 1992 James Clark (jjc at jclark) - - * mdate.sh: Use $NF rather than $(NF). - -Tue Sep 22 09:47:24 1992 James Clark (jjc at jclark) - - * pic/main.cc (main): Use %1 not %c in argument to warning. - - * eqn/main.cc (main): Output code to check that geqn was given the - correct -T option. - -Mon Sep 21 10:59:16 1992 James Clark (jjc at jclark) - - * Makefile.in (dist): Instead of doing `make -f ../Makefile', do - `ln -s ../Makefile .; make; rm -f Makefile'. - - * troff/hyphen: Rename to... - * troff/hyphen.us: - * troff/input.cc (main): Delete -H option. Don't call - read_hyphen_file(). - * troff/env.cc: Include searchpath.h and macropath.h. - (exception_dictionary): Deleted. - (ht): Deleted. - (read_hyphen_file): Deleted. - (hyphenation_language): New struct. - (class trie, class hyphen_trie): Move declarations up. - (trie_node::~trie_node): Deleted. - (trie::delete_trie_node): New function. - (trie::do_delete): New pure virtual function. - (hyphen_trie::do_delete): New function. - (trie::~trie): New function. - (hyphen_trie::~hyphen_trie): New function. - (trie::clear): No need to chcek that tp is not 0. - (current_language, language_dictionary): New variables. - (hyphen_word): Give an error if no current language. Use - exceptions dictionary in current language. - (hyphen_trie::read_patterns_file): Find file using macro_path. - Allow comments (starting with %) in patterns file. Don't make it - a fatal error if the file can't be found. - (hyphenate): Return if no current language. Get the exceptions - dictionary and the hyphenation patterns from the current language. - (set_hyphenation_language): New variable. - (hyphenation_patterns_file): New function. - (hyphenation_language_reg): New class. - (hyphenation_language_reg::get_string): New function. - (init_hyphen_requests): Bind "hla" to set_hyphenation_language and - "hpf" to hyphenation_patterns_file. Initialize `.hla' number - register. - * groff/groff.cc (main, help, synopsis): Delete -H option. - * include/Makefile.sub: Don't define HYPHENFILE. - * Makefile.in: Delete hyphenfile variable and remove from MDEFINES. - * Makefile.comm (.man.n): Don't substitute for HYPHENFILE. - * tmac/troffrc: Set hyphenation language to `us'. Load `hyphen.us' - hyphenation patterns. - -Sun Sep 20 09:33:02 1992 James Clark (jjc at jclark) - - * eqn/neqn.sh: New file. - * eqn/Makefile.sub: Handle neqn.sh. - - * eqn/eqn.h: Declare `nroff' variable. - * eqn/box.cc (param_table): Add `nroff' param. - (nroff): Define it. - * eqn/lex.cc (yylex): Handle TDEFINE and NDEFINE using `nroff' - variable. - * tmac/eqnrc: Set `nroff' to 1 for -Tascii or -Tlatin1. - - * troff/troff.h (WARN_FONT): New warning. - (WARN_TOTAL): Change accordingly. - * troff/input.cc (DEFAULT_WARNING_MASK): Include WARN_FONT. - (warning_table): Add WARN_FONT. - * troff/node.cc (mount_font_no_translate): Pass argument to - font::load_font. If this is non-zero, give a warning. - Don't give an error message when accessing a font that has already - been found to be invalid. - * include/font.h (font::load, font::load_font): Add additional - optional argument which suppresses error message if the font is - not found. - * libgroff/font.cc (font::load_font): Handle additional argument. - (font::load): Add additional argument. If this is non-null, set it - to 1 and don't give error message. - - * include/printer.h (printer::end_page): Add argument giving - length of page. - * libdriver/input.cc (do_file): Pass this. - * grops/ps.cc (ps_printer::end_page): Add argument. - * grodvi/dvi.cc (dvi_printer::end_page, - draw_dvi_printer::end_page): Add argument. - * grotty/tty.cc (class tty_printer): Remove lines_per_page and - columns_per_page members. New member nlines. - (DEFAULT_LINES_PER_PAGE): Deleted. - (tty_printer::tty_printer): Don't compute lines_per_page from - font::paperlength. Don't compute columns_per_page from - font::paperwidth. - (tty_printer::add_char): Don't check horizontal position against - columns_per_page. Grow glyphs vector if neccessary. - (tty_printer::end_page): Add argument giving page_length in units. - Discard lines past end of page. - -Wed Sep 16 06:29:52 1992 James Clark (jjc at jclark) - - * tmac/tmac.tty-char: Fix definition of \(/l. - - * tmac/tmac.X: Define \(en. - -Tue Sep 15 10:37:13 1992 James Clark (jjc at jclark) - - * acgroff.m4 (GROFF_PRINT): If a system has lpr and lp but not - lpq, then use lp rather than lpr. - - * tmac/tmac.s (par@reset): Don't call `ad'. - (par*env-init): Call `ad'. - -Sun Sep 13 18:48:20 1992 James Clark (jjc at jclark) - - * mdate.sh: Use $(NF) instead of $6 to extract year from output of - date. - - * troff/symbol.cc: #undef BLOCK_SIZE if it's defined. - * indxbib/indxbib.cc: Likewise. - -Sun Sep 6 09:44:46 1992 James Clark (jjc at jclark) - - * libgroff/putenv.c: New file. - * libgroff/Makefile.sub: Add putenv.c to CSRCS. - * Makefile.in: Say that putenv.o can be one of LIBOBJS. - * configure.in: Test for putenv with AC_REPLACE_FUNCS. Test for - stdlib.h with AC_HAVE_HEADERS. - -Sat Sep 5 18:11:52 1992 James Clark (jjc at jclark) - - * indxbib/dirnamemax.c: Include <sys/dir.h> only if <dirent.h> - does not exist. - -Fri Sep 4 09:43:26 1992 James Clark (jjc at jclark) - - * eqn/box.cc (gsize): Make it an int. - (set_gsize): Parse argument handling increment or decrement. - (box::top_level): Convert gsize to a string. - - * troff/input.cc (exit_troff): Make buf unsigned char []. - Call to make_temp_iterator casts buf to char*. - - * Makefile.in ($(TARGETS), dot): Pass $(MDEFINES) to recursive makes. - - * Makefile.ccpg (depend.temp): Depends on $(YTABC). - * Makefile.cpg (depend.temp): Likewise. - - * Makefile.dep: Remove Makefile.dep from $(REALCLEANFILES). - - * Makefile.comm: Add y.output to MOSTLYCLEANFILES. - -Thu Sep 3 08:01:55 1992 James Clark (jjc at jclark) - - * tmac/tmac.s (B, I, BI, CW): Rewrite avoiding aliases. - -Tue Sep 1 18:24:53 1992 James Clark (jjc at jclark) - - * Version 1.06 released. - - * Integrate mm 1.04. - -Fri Aug 28 11:28:19 1992 James Clark (jjc at jclark) - - * Makefile.comm, Makefile.ccpg, Makefile.cpg: Fix TAGS target. - -Thu Aug 27 11:03:33 1992 James Clark (jjc at jclark) - - * afmtodit/afmtodit.pl: Add -n option that disables generation of - ligatures command. - * devps/generate/Makefile (CR, CB, CI, CBI): Pass -n flag to - afmtodit. Regenerate. - - * tmac/tmac.e ()z): Adjust _b if necessary so as to avoid moving - @f back past the current position. - - * tmac/tmac.e: Change calls to @R so that comments are not part of - arguments. - -Tue Aug 25 10:42:07 1992 James Clark (jjc at jclark) - - * configure.in: Check for mkstemp with AC_HAVE_FUNCS. - - * acgroff.m4 (GROFF_PROG_CCC): Don't check for <osfcn.h>. Instead - check that we can link a call to a function declared in <stdio.h>. - (GROFF_UNISTD_H): New macro. - * configure.in: Call it. - * Makefile.in: Document it. - * include/posix.h: New file. - * troff/troff.h: Don't include <osfcn.h> - * troff/input.cc: Include posix.h. - * libgroff/new.cc, libgroff/tmpfile.cc: Include posix.h rather than - osfcn.h. - * indxbib/indxbib.cc, libbib/{search.cc,linear.cc,index.cc}: - Include posix.h rather <sys/types.h>, <sys/stat.h>, <osfcn.h>, - <fcntl.h>. - * indxbib/indxbib.cc (S_IRUSR, S_IRGRP, S_IROTH): Delete definitions. - * libbib/index.cc (S_ISREG, O_RDONLY): Delete definitions. - * libbib/search.cc (O_RDONLY): Delete definition. - * refer/refer.cc, include/driver.h, pic/pic.h, groff/groff.cc: - Don't include <osfcn.h>. - - * acgroff.m4 (GROFF_TIME_T): New macro. - * configure.in: Call it. - * Makefile.in: Document it. - - * acgroff.m4 (GROFF_TRADITIONAL_CPP): New macro. - * configure.in: Call it. - * Makefile.in: Document -DTRADITIONAL_CPP. - * include/ptable.h: Don't include generic.h. - (name2): Define it. - - * tmac/tmac.s (][): Make [T1 and [T2 aliases for [T. - Afterwards remove [T1 and [T2. - (ref*spec!0, ref*spec!2): Use T1 rather than T. - (ref*spec!1, ref*spec!4, ref*spec!4): Use T2 rather than T. - (ref*add-T2): Renamed from ref*add-T. - (ref*add-T1): New macro. - -Mon Aug 24 11:11:11 1992 James Clark (jjc at jclark) - - * acgroff.m4 (AC_PROG_CCC): Use GROFF_EXIT rather than exit 1. - - * libbib/index.cc: Include <fcntl.h>. - (O_RDONLY): Define if necessary. - (make_index_search_item, index_search_item_iterator::get_tag, - index_search_item::check_files): Use O_RDONLY. - * libbib/seach.cc: Include <fcntl.h>, <sys/types.h>, <sys/stat.h>. - (O_RDONLY): Define if necessary. - (search_list::add_file): Use O_RDONLY. - * indxbib/indxbib.cc: Include <fcntl.h>, <sys/types.h>, - <sys/stat.h>. - (S_IRUSR, S_IRGRP, S_IROTH): Define if necessary. - (main): Use these. - - * libbib/index.cc (S_ISREG): Define it if necessary. - (index_search_item::load): Use S_ISREG. - - * include/driver.h: Include <errno.h>. - -Sun Aug 23 11:32:18 1992 James Clark (jjc at jclark) - - * eqn/box.cc (body_height): Increase default value to 85. - (body_depth): Increase default value to 35. - -Fri Aug 21 05:34:42 1992 James Clark (jjc at jclark) - - * eqn/pbox.h (SAVE_FONT_STRING): Define it. - * eqn/box.cc (box::top_level): Hide use of \R in a string that is - protected from expansion with \E. - - * acgroff.m4 (GROFF_PAGE): Use `case' to test domain. - - * Makefile (Makefile): New target. - - * Makefile.sub (configure, distfiles): New targets. - - * acgroff.m4 (GROFF_BROKEN_SPOOLER_FLAGS): Avoid using ${var:-val} - construct. - -Thu Aug 20 12:27:26 1992 James Clark (jjc at jclark) - - * eqn/box.cc (param_table): Add body_height and body_depth. - - * eqn/lex.cc (def_table): Make circumflex in hat_def roman. - -Tue Aug 18 16:24:25 1992 James Clark (jjc at jclark) - - * psbb/Makefile.sub: Don't link with libgroff.a. - - * acgroff.m4 (GROFF_PUTENV): New macro. - * configure.in: Call GROFF_PUTENV. - * Makefile.in: Document STDLIB_H_DECLARES_PUTENV. - * groff/groff.cc: Don't declare putenv if STDLIB_H_DECLARES_PUTENV - is defined. - - * troff/env.cc (distribute_space): Rename force_forward argument - to force_reverse. Reverse the list if force_reverse is true. - -Mon Aug 17 17:49:05 1992 James Clark (jjc at jclark) - - * tmac/tmac.an: Don't define a string `T'. Just define Tm. - - * eqn/pile.cc (matrix_box::compute_metrics): Don't allow computed - height or depth to be negative. Guard against SUP_RAISE quantity - being negative. - -Sat Aug 15 08:18:54 1992 James Clark (jjc at jclark) - - * devps/generate/textmap: Add `an' (arrowhorizex). - * tmac/tmac.ps: \(an overlaps horizontally. - * tmac/tmac.dvi, tmac/tmac.tty: Add `an'. - - * devps/symbolchars: Add arrowverttp, arrowvertbt. - * devps/textmap: Add arrowvertex. - * eqn/delim.cc (delim_table): Add uparrow, downarrow and - updownarrow delimiters. - * tmac/tmac.ps, tmac/tmac.X: Add definition of \(va. - - * tbl/table.cc (simple_entry::position_vertically, - block_entry::position_vertically): For a centered entry, perform - the motion in two stages. - - * refer/refer.cc (split_punct): Don't call lookup_token if there - is no token. - -Fri Aug 14 11:14:58 1992 James Clark (jjc at jclark) - - * troff/input.cc (token::next): Delete token_node after copying - token. - - * grodvi/grodvi.cc (dvi_printer::dvi_printer): Initialize - cur_point_size. - - * libdriver/printer.cc (printer::load_font): Delete old_font_table. - - * grops/ps.cc (ps_printer::define_encoding): Delete elements of vec. - -Tue Aug 11 13:50:38 1992 James Clark (jjc at jclark) - - * grops/ps.cc (usage): -b option takes an argument. - - * devps/prologue (PLG): New procedure. - * grops/ps.cc (main, usage): New -g option. - (ps_printer::~ps_printer): If guess_flag is set, guess the paper - length using PLG. - -Mon Aug 10 11:17:53 1992 James Clark (jjc at jclark) - - * include/cset.h: Include <limits.h> if we have it. - - * libgroff/illegal.cc: New file. - * include/lib.h (illegal_input_char): Use table. - * troff/input.cc (ESCAPE_RIGHT_PARENTHESIS): Renumber to 0206. - * pic/lex.cc (ARG1): Renumber to 14. - * eqn/lex.cc (ARG1): Likewise. - - * troff/Makefile.sub (majorminor.cc): Handle 3 part versions - (eg 1.05.90) correctly. - -Sun Aug 9 13:35:43 1992 James Clark (jjc at jclark) - - * tmac/tmac.e (sr): Deleted. Set $r and $R directly. - Rename $r and $R registers to $v and $V. - ($r, $R): Initialize to 0. - (@v, @V): New macros. - (sz): Call @v. - (@M): Call @V. - - * troff/input.cc (main, usage): Add -R option that says not to - load troffrc. - * eqn/main.cc (main, usage): Rename -n to -R. - -Sat Aug 8 00:16:00 1992 James Clark (jjc at jclark) - - * devps/DESC.in: Leave font positions 5-9 blank. - * devdvi/DESC.in: Likewise. - - * grog/grog.pl: Handle `.PS <file' correctly. - - * troff/input.cc (input_stack::push): Improve error message when - input stack limit exceeded. - -Fri Aug 7 13:08:16 1992 James Clark (jjc at jclark) - - * refer/refer.cc (main): Fix typo in handling of `a' option. - - * refer/refer.cc (do_bib): In state START after a newline remain - in state START. - - * groff/groff.sh: Deleted. - * groff/Makefile.sub: Delete handling of groff.sh. - - * pic/troff.cc (troff_output::text): Test \n(0p rather than \*(.T - to determine whether to use \X'ps:...'. - * tmac/troffrc: Set 0p register to 0. - * tmac/tmac.ps: Set 0p register to 1. - - * groff/groff.cc: Support -X option. Give warning for -TXps and - transform to -X -Tps. Pass troff a -r.X=1 option if -X is used. - * tmac/troffrc: Support -r.X=1. - - * pic/troff.cc (troff_output::dot): Don't test - zero_length_line_flag. - -Thu Aug 6 13:32:08 1992 James Clark (jjc at jclark) - - * include/lib.h: Declare getopt() and friends unless - STDLIB_H_DECLARES_GETOPT is defined. - - * doc/chars.tr: Delete. - * man/groff_char.man: New file. - -Wed Aug 5 00:38:58 1992 James Clark (jjc at jclark) - - * tmac/tmac.e (np, bu): Test \n($p with string expression in case - user has changed register format. - -Mon Aug 3 11:22:18 1992 James Clark (jjc at jclark) - - * groff/groff.cc: Get rid of device_table. Get postprocessor from - `postpro' command in DESC file. Get spooler command from `print' - command in DESC file. Execute spooler command with /bin/sh. - - * groff/groff.cc: Split Unix-specific parts into... - * groff/pipeline.c: New file. - - * LICENSE: Delete. - * COPYING: New file. - * all files: Update copyright notices. - - * Rearrange files. Redo Makefiles. Use autoconf. - -Sat Aug 1 09:36:50 1992 James Clark (jjc at jclark) - - * troff/input.c (charinfo_to_node_list): Interpret character - definition with escape_char of `\'. - -Tue Jul 28 12:20:12 1992 James Clark (jjc at jclark) - - * lib/strerror.c, lib/iftoa.c, lib/itoa.c: Don't include lib.h. - Define INT_DIGITS as big enough for 64-bit integer. - * lib/strtol.c: Don't include lib.h. - * lib/lib.h: Delete ifdef __cplusplus stuff. - -Mon Jul 27 11:08:50 1992 James Clark (jjc at jclark) - - * ps/devps/Makefile: Add DESC to DEVICEFILES. Separate out rule - for making DESC. Make $(FONTS) depend on DESC. afmtodit should - get DESC from current directory. - -Sun Jul 26 15:38:26 1992 James Clark (jjc at jclark) - - * tbl/main.c (main): Always reset the line number when reading - from stdin. - - * tbl/table.c (table::print_single_hline, table::print_double_hline, - table::define_bottom_macro, table::do_row, table::do_top): Round - vertical spacing up to vertical resolution. - -Fri Jul 24 14:32:07 1992 James Clark (jjc at jclark) - - * ps/ps.h (enum resource_type): Avoid comma at end of - enumerator-list. - * dvi/dvi.c (class dvi_printer): Likewise. - * dvi/tfmtodit.c (gf::load): Likewise. - * refer/label.y (struct expression): Likewise. - * refer/refer.c (class label_processing_state): Likewise. - * refer/indxbib.c (do_file): Likewise. - * troff/troff.c (enum warning_type): Likewise. - * tbl/main.c (process_data): Likewise. - * troff/charinfo.h (class charinfo): - -Wed Jul 22 09:17:58 1992 James Clark (jjc at jclark) - - * dvi/devdvi/textt.map: Add entry for `-'. Regenerate fonts. - -Tue Jul 21 11:39:26 1992 James Clark (jjc at jclark) - - * groff.c: Move to new groff subdirectory. - * groff/Makefile: New file. - * Makefile: Remove handling of groff.c. Add groff to SUBDIRS. - - * man/mdate.sh: Use ls -L if supported. - - * Consolidate all header files produced by gendef into lib/defs.h. - * lib/macropath.c, lib/fontfile.c, lib/device.c: Include defs.h. - Don't include path.h. - * lib/Makefile (path.h): Don't generate. - * troff/input.c: Include defs.h. Don't include config.h. - * troff/Makefile (config.h): Don't generate. - * refer/index.h: Don't include suffix.h. - * refer/index.c: Include defs.h. - * refer/indxbib.c: Include defs.h. - * refer/refer.h, refer/lkbib.h: Don't include path.h. Include - defs.h. - * refer/Makefile (suffix.h, path.h): Don't generate. - * groff.c: Don't include config.h. Include defs.h. - * Makefile (config.h): Don't generate. - (lib/defs.h): Generate. - (topclean): Remove lib/defs.h. - -Mon Jul 20 10:12:57 1992 James Clark (jjc at jclark) - - * lib/malloc.c, lib/getpagesize.h: Deleted. - * Makefile: Add COOKIE_BUG configuration option. Delete malloc - related stuff. - * lib/Makefile: Delete malloc-related stuff. - * lib/new.c: Workaround COOKIE_BUG if necessary. - - * refer/lkbib.c, refer/indxbib.c: Don't include refer.h. Include - needed header files directly. - * refer/refer.h: Omit definition of DEFAULT_INDEX. - * Makefile: Include definition of DEFAULT_INDEX in path.h. - -Sun Jul 19 10:19:22 1992 James Clark (jjc at jclark) - - * lib/font.c (FONT_COMMAND_HANDLER): Pass command name and single - argument. - * lib/font (font::load_desc, font::load): Don't split argument of - unknown command. - (font::handle_unknown_font_command): Change type. - * ps/ps.c (ps_font::handle_unknown_font_command, - handle_unknown_desc_command): Change type. - * dvi/dvi.c (dvi_font::handle_unknown_font_command): Change type. - -Fri Jul 17 11:12:49 1992 James Clark (jjc at jclark) - - * lib/font.h (font::handle_unknown_font_command): Add file and - line arguments. - * lib/font.c (font::handle_unknown_font_command): - * ps/ps.c (ps_font::handle_unknown_font_command): - * dvi/dvi.c (dvi_font::handle_unknown_font_command): Add file and - lineno arguments. Use _with_file_and_line functions for error - reporting. - - * lib/fontfile.c (font::unknown_desc_command_handler): New static - data member. - * lib/font.c (font::set_unknown_desc_command_handler): New - function. - (font::load_desc): For unknown commands, call - unknown_desc_command_handler if not null. - * lib/font.h (class font): Declare them. - (FONT_COMMAND_HANDLER): New typedef. - * ps/ps.c (handle_unknown_desc_command): New function. - (main): Set bflag if we had a -b option. Call - font::set_unknown_desc_command_handler. - (broken.h): Don't include. - * ps/Makefile: No need for broken.h. Pass BROKEN_SPOOLER_FLAGS to - submake - * ps/devps/Makefile: Add `broken' command to DESC file using - BROKEN_SPOOLER_FLAGS. - - * macros/tmac.e ([, ]): Add as synonyms for { and }. - - * macros/tmac.e ($p): Only exdent if \$3 > 0. - - * macros/tmac.e (@R, @S): New macros. - Declare @, po, $0, $i, $p, df, so, fu, bt, *, ?a, ?b, ?C, ?e, ?H, - ?I, ?n, ?o, ?R, ?s, ?T, ?W, ?w registers with @R. - Declare $H, $[0-9], .. macros with @S. - Declare |0, |1, |2, |3 strings with @S. - - * macros/tmac.e (@S): Rename to @U. - - * macros/tmac.e (@z): Define @b and bp as empty instead of - deleting them, - - * macros/tmac.e (@m): Deleted. - (@h): Don't call @m. - (@z): Don't set @m trap. - - * macros/tmac.e ($h, $f): Define |z as empty string. - - * macros/tmac.e (@D): Rework to avoid unbalanced .el requests. - (@q): Likewise. - - * macros/tmac.e (@h): Set ?H, ?C , ?s registers to 0 rather than - removing them. - ()f): Likewise for * register. - - * macros/tmac.e (sr): Don't ever scale the arguments. If the third - argument is missing, don't change $R. Call sr with three - arguments when initializing. - -Thu Jul 16 12:17:12 1992 James Clark (jjc at jclark) - - * macros/tmac.e (sr): New macro. - Initialize $r and $R using sr. - - * macros/tmac.e (,): Delete \*(#[. - - * troff/env.c (set_tabs): Read the tab type even if the position - is bad. Allow the position of the first tab stop to be negative. - -Wed Jul 15 13:14:37 1992 James Clark (jjc at jclark) - - * refer/dirnamemax.c: Use pathconf() if <unistd.h> defines - _POSIX_VERSION. - * refer/Makefile: Compile dirnamemax.c using -DHAVE_UNISTD_H - rather than -DPATHCONF_MISSING. - * Makefile: Get rid of PATHCONF_MISSING. - - * refer/map.c: New file. - * refer/index.c: Interface to mmap through map.c. Rename map_size - to map_len. - * refer/Makefile: Handle map.c. - * Makefile: Include -DHAVE_MMAP in OLDCFLAGS rather than CFLAGS. - -Tue Jul 14 14:15:20 1992 James Clark (jjc at jclark) - - * Makefile: RANLIB should be `true' if there is no ranlib. - * lib/Makefile (libgroff.a): Simplify. - * driver/Makefile (libdriver.a): Simplify. - - * Makefile: Change -DWAIT_COREDUMP_0200 to -DWCOREFLAG=0200. - * groff.c (WCOREDUMP): Use WCOREFLAG. Define only if not already - defined. - -Sat Jul 11 09:19:17 1992 James Clark (jjc at jclark) - - * troff/env.c (compare_ranges): Declare as extern "C". - - * troff/input.c (init_registers): Use `struct tm' instead of `tm'. - - * macros/tmac.s, macros/tmac.e: Change .nx /dev/null to .nx. - -Wed Jul 8 11:52:27 1992 James Clark (jjc at jclark) - - * pic/troff.c (troff_output::text): Merge in grops_output::text, - but conditionalize use of \X based on \*(.T. - (grops_output::*): Deleted. - * pic/output.h: Delete declaration of make_grops_output. - * pic/main.c (main): Ignore -p and -x. driver_extension_flag is 1 - by default. -n sets it to 0. - (usage): Corresponding changes. - * groff.c (main): Don't pass -x or -p to pic. - * groff.sh: Likewise. - - * ps/ps.c (ps_printer::do_exec, ps_printer::do_file): Force ndefs - to be non-zero. - - * ps/devps/afmtodit: Change calculation of asc_boundary and - desc_boundary. Make these bounds inclusive. - * ps/devps: Regenerate font files. - -Tue Jul 7 13:14:15 1992 James Clark (jjc at jclark) - - * macros/tmac.latin1: New file. - * macros/tmac.tty-char: Use tmac.latin1. - (tmac.tty-tr): Deleted. - * macros/Makefile: Install tmac.latin1. - * macros/tmac.dvi: Use tmac.latin1. - * macros/troffrc: Translate \[char160] onto no-break space here. - * macros/{tmac.dvi,tmac.ps,tmac.tty,tmac.X75}: Don't do it here. - -Mon Jul 6 11:06:52 1992 James Clark (jjc at jclark) - - * macros/tmac.Xps: Use `do' request. - - * macros/tmac.ps: Use `do' request. - - * macros/tmac.e (@C): Use `do' request. - - * macros/tmac.X, macros/tmac.Xps: Moved from xditview. - * macros/Makefile: Install tmac.X*. - - * tty/tmac.tty, tty/tmac.tty-char: Move to macros. - * tty/Makefile: Don't install tmac.tty*. - * macros/Makefile: Install tmac.tty*. - - * dvi/tmac.dvi: Move to macros. - * dvi/Makefile: Don't install tmac.dvi. - * macros/Makefile: Install tmac.dvi. - - * ps/tmac.ps*: Move to macros. - * ps/Makefile: Don't install tmac.ps*. - * macros/Makefile: Install tmac.ps*. - - * eqn/box.c: Provide draw_lines parameter corresponding to -D - option. - * macros/eqnrc: Set draw_lines parameter based on device. - * groff.c: Don't pass -D flag to eqn. - * groff.sh: Likewise. - * eqn/main.c: Warn about use of -D. - - * troff/input.c (process_startup_file): New function. - (main): Call process_startup_file(). - * macros/troffrc: New file. - * macros/Makefile: Install troffrc. - * groff.c (main): Don't pass extra -m option to troff. For a - pseudo device pass the name of the pseudo device to troff using - -d. - * groff.sh: Likewise. - * groff.c (possible_command::prepend_arg): Deleted. - - * troff/input.c (do_request): New function. - (init_input_requests): Bind "do" to do_request. - - * eqn/main.c (main): Instead of loading eqnchar from device directory, - load eqnrc from macro directory. - * macros/eqnrc: New file. - * macros/Makefile: Install eqnrc. - * ps/devps/eqnchar: Deleted. - * ps/devps/Makefile: Don't install eqnchar. - * dvi/devdvi/eqnchar: Deleted. - * dvi/devdvi/Makefile: Don't install eqnchar. - * groff.c (main): Pass -M to eqn. Don't pass -F to eqn. New - variable optM. - - * lib/device.[ch]: New files. - * lib/font.h (font::set_device_name, font::get_device_name): - Deleted. - * lib/fontfile.c: Use device.h. - * lib/Makefile: Handle device.[ch]. Make paths.h define DEVICE. - * troff/input.c: Delete definition of `device'. - (main): Don't initialize device. - * troff/troff.h: Include device.h rather than declaring device. - * troff/Makefile: No need to handle DEVICE. - * driver/input.c: Include device.h. Don't use - font::{set,get}_device_name. - * groff.c, Makefile: Rename device.h to config.h. - * groff.c: Use library device variable. - * eqn/main.c: Use library device variable. - * eqn/Makefile: No need to handle DEVICE. - - * lib/searchpath.[ch]: New files. - * lib/Makefile: Handle searchpath.[ch]. - * troff/input.c (open_file, init_dirs): Deleted. - (macro_dirs): Deleted. - (open_mac_file, macro_source): Use class search_path. - (add_string, struct string_list): Move definition. - (main): Change -M option to use macro_path. Delete call to - init_dirs(). - * lib/fontfile.c (font::command_line_font_dir, font::open_file): - Rewrite to use class search_path. - * lib/font.h, lib/fontfile.c (font::cl_font_dirs): Deleted. - * lib/Makefile: fontfile.c depends on searchpath.h. - * lib/Makefile: Rename fontpath.h to paths.h. Make paths.h define - MACROPATH. - * lib/macropath.[ch]: New files. - * troff/Makefile: No need to handle MACROPATH. - - * troff/input.c: Delete DUMP code. - * lib/fontfile.c, lib/font.h: Delete - font::forget_command_line_font_dirs. - - * troff/input.c (push_token): New function. - (handle_first_page_transition): Use push_token(). - (process_input_stack): Change handling of a space at the beginning - of the line. - -Sun Jul 5 17:11:09 1992 James Clark (jjc at jclark) - - * troff/input.c (font_dirs): Delete unused variable. - - * eqn/lex.c (do_set): Correct error messages. - -Sat Jul 4 10:20:55 1992 James Clark (jjc at jclark) - - * troff/input.c (do_define_string): Allow the string name to be - followed immediately by a tab. - (define_character): Likewise. - -Thu Jul 2 10:59:15 1992 James Clark (jjc at jclark) - - * ps/ps.c (ps_printer::draw): When drawing an arc, don't allow k to - be negative. - - * troff/input.c (input_iterator::is_file): New virtual function. - (file_iterator::is_file): New function. - (input_stack::end_file): New function. - (input_stack::next_file): Handle the situation where there is no - file on the input stack correctly. Avoid making two passes over - the input stack. - (next_file): Make the filename optional; in this case call - input_stack::end_file(). - -Wed Jul 1 10:17:25 1992 James Clark (jjc at jclark) - - * dvi/tmac.dvi: Change the definitions of \(ul and _ so that they - produce a real _ charater when the current font is CW and _ - otherwise. - - * lib/errarg.c (errarg::errarg(const char *)): Invert conditional - expression to work around gcc 2.2 bug. - -Wed Jun 24 08:12:24 1992 James Clark (jjc at jclark) - - * eqn/main.c (main): Don't give an error if we can't find eqnchar. - - * troff/env.c (environment::add_padding): New function. - (environment::add_char): Use add_padding(). - (environment::space): Likewise. - (environment::wrap_up_field): Add some padding if there is none - and there's no current tab. - * troff/env.h: Declare environment::add_padding. - -Mon Jun 22 08:37:45 1992 James Clark (jjc@jclark) - - * pic/pic.y: undef fmod and rand before declaring them. - -Sun Jun 14 11:40:18 1992 James Clark (jjc@jclark) - - * troff/input.c (main): If the DESC file specifies a font name of - 0, then leave the corresponding font position empty. - - * nroff.sh: New file. - * Makefile (install.nobin): Install nroff.sh. - - * tty/devlatin1/R.proto: Add ao as synonym for de. - * tty/tmac.tty-char: Define ao as o. - - * tty/dev{ascii,latin1}/R.proto: Add aq. - * tty/tmac.tty-char: Delete definition of aq. - -Mon Jun 8 11:43:20 1992 James Clark (jjc@jclark) - - * troff/input.c (init_charset_table): Don't translate 0240. - * ps/tmac.ps: Translate char160 to space. - * dvi/tmac.dvi: Likewise. - * tty/tmac.tty: Likewise. - -Sun Jun 7 10:52:35 1992 James Clark (jjc@jclark) - - * dvi/tmac.dvi: Add support for all Latin-1 characters. - - * macros/tmac.s: Delete definitions of \(rg, \(ah, \(ad, \(a-, - \(ao, \(ac, \(ho, \(-D, \(Sd, \(TP, \(Tp, \(ss, \(AE, \(ae, \(OE, - \(oe, \(r?, \(r!. - - * tty/tmac.tty-char: Add \(ah. - - * dvi/tmac.dvi: Add definitions of Tp, TP, Sd, -D, ho. - No need to define \(FM and \(!/. Conditionalize all character - definitions. - - * ps/devps/lgreekmap: Add +h, +f, +p. - - * ps/tmac.psnew: New file. - * ps/Makefile: Install tmac.psnew. - - * troff/input.c (charinfo_to_node_list): Don't ever interpret - character definitions in compatible mode. - - * troff/input.c (remove_character): New function. - (init_input_requests): Bind remove_character to "rchar". - - * ps/tmac.psold: New file. - * ps/Makefile: Install tmac.psold. - * ps/tmac.ps: Load tmac.psold. Move definitions of ISO Latin-1 - characters into tmac.psold. Make these definitions unconditional. - - * tty/tmac.tty-char: Define \n(_C only if it is not already defined. - - * ps/tmac.ps: Don't define \('c and \('C. - - * ps/devps/textmap: Move Greek characters to... - * ps/devps/symbolchars: - -Sat Jun 6 16:41:17 1992 James Clark (jjc@jclark) - - * ps/devps/text.enc: Add quotesingle. - * ps/devps/textmap: Add +h, +f, +p, Fn, Bq, bq, aq, lz. - * tty/tmac.tty-char: Likewise. - * dvi/devdvi/texmi.map: Add +h, +f, +p. - * dvi/devdvi/texi.map: Add Fn. - * dvi/devdvi/msam.map: Add lz. - * dvi/tmac.dvi: Handle Bq, bq, aq. - - * pic/lex.c (get_token): Recognize 'th. - * pic/map.y: Allow `expr'th in contexts where ORDINAL was allowed. - -Fri Jun 5 11:20:46 1992 James Clark (jjc@jclark) - - * ps/devps/textmap: Move di, mu, +- to... - * ps/devps/symbolchars: - - * macros/tmac.s (@XS): Don't call par@reset or fi. - (XA): Call LP. Turn off adjustment. Reduce line length. - - * macros/tmac.s: Initially alias XS to LP. - (XS): Rename to @XS. - (cov*ab-init): Alias XS to @XS. - -Thu Jun 4 09:12:05 1992 James Clark (jjc@jclark) - - * troff/token.h: Delete TOKEN_CHAR_HEIGHT, TOKEN_CHAR_SLANT, - TOKEN_FONT_NAME, TOKEN_FONT_POSITION, TOKEN_SIZE tokens. - (token::is_size, token::changes_env): Deleted. - * troff/number.c (parse_term): No need to process \s explicitly. - Call tok.next() only after scale indicator has been processed. - * troff/input.c (do_overstrike, do_bracket): No need to process \s, - \f etc explicitly. - (token::next): Handle \s, \f, \S, \H immediately rather than - returning them as tokens. - (token::operator==, token::description, token::add_to_node_list, - token::process): Remove handling of deleted tokens. - - * troff/env.c (environment::add_char): When adding padding - indicator character, call start_line() if necessary. - -Wed Jun 3 09:55:50 1992 James Clark (jjc@jclark) - - * ps/devps/afmtodit: Don't output 0 kerns. - - * ps/devps/afmtodit: Remove directory from name of encoding in - font description file. - - * ps/devps/afmtodit: Improve error messages. - - * ps/devps/afmtodit: Allow DESC file to be specified with -d. - - * ps/devps/Makefile: Incorporate FontMakefile. Rework. - * ps/devps/FontMakefile: Deleted. - * ps/devps/afmname: New file. - - * ps/devps/symbol.sed: New file. - * ps/devps/symbol.diff: Deleted. - * ps/devps/FontMakefile: Generate symbol.afm using symbol.sed. - Generate zapfdr.afm from zapfd.afm. - - * tty/tmac.tty (tty-char): Prefix definition with ". - - * macros/tmac.an (TP): Don't start a diversion if one has already - been started. - - * tty/tmac.tty-char: Add Latin-1 characters. - - * tty/tmac.tty-char: Incorporate suggestions from Paul Eggert. - -Tue Jun 2 00:54:34 1992 James Clark (jjc@jclark) - - * tbl/table.c (table::allocate): Delete old_vline, old_entry. - Move declaration of struct horizontal_span. - - * tbl/table.c (table::table): Initialize span_list. - (table::~table): Delete span_list. - - * lib/ptable.h (PTABLE(T)::~PTABLE(T)): Delete v. - - * ps/devps/Makefile: Avoid dependency on GNU make. - - * ps/tmac.ps: Check that character does not already exist before - defining it. - - * tty/tmac.tty: Add definitions of \(ff, \(!=, \(==, \(~=, \(sq, - \(OE, \(oe, \(AE, \(ae, \(lh, \(rh. Delete definitions of \(en, - \(ru, \(ul, \(br, \(bv, \(sl which are in the font description - files. - - * tty/tmac.tty-char: New file. - * tty/Makefile: Install tmac.tty-char. - * tty/tmac.tty: Move definitions of \(ua, \(da, \(uA, \(dA into - tmac.tty-char. - - * tty/tmac.tty: Fix definition of \(34. - - * tty/dev{ascii,latin1}/R.proto: Add ha and ti. Map - bracket-drawing characters onto |. Add *o. - - * troff/env.c (environment::wrap_up_tab): Increment field_spaces - only if current_field. - - * troff/dictionary.c (dictionary::lookup): Free old_table after - rehashing. - -Mon Jun 1 10:15:22 1992 James Clark (jjc@jclark) - - * tty/dev{ascii,latin1}/R.proto: Add uppercase Greek characters - whose glyphs are identical to glyphs of some Roman character. - - * tty/devlatin1/R.proto (bu): Deleted. - * tty/devascii/R.proto (bu): Deleted. - * tty/tmac.tty: Add definition of \(bu. - - * eqn/main.c (do_file): Pass FILE as argument. - (main): Automatically load eqnchar. New options -F and -n. - Pass do_file an opened FILE. - * groff.c: Don't pass eqnchar to eqn. Pass -F options onto eqn. - No need to include font.h. - * groff.sh: Likewise. Don't need to use - for standard input. - Prefix files with -- if first file starts with -. - - * macros/tmac.e: Conditionalize use of \$* on \n(.g. - - * troff/env.c (environment::possibly_break_line): Don't set line - to 0 across call to output_line(). Don't call output_line() until - after discarding nodes after break. - -Sun May 31 10:45:29 1992 James Clark (jjc@jclark) - - * request.h (macro::empty): Declare it. - * input.c (macro::empty): New method. - (interpolate_macro): Don't give a WARN_SPACE if the two-character - macro is empty. - -Sat May 30 10:27:15 1992 James Clark (jjc@jclark) - - * troff/env.c (environment::start_field): Decrement space_total - when a space is frozen. - -Fri May 22 14:34:38 1992 James Clark (jjc@jclark) - - * macros/tmac.an (R): Delete macro. - - * troff/input.c (get_copy, token::next): Support \# (like \" but - newline is ignored). - - * troff/input.c (token::next): Fix error message in 'Y' case. - -Thu May 21 09:26:24 1992 James Clark (jjc@jclark) - - * eqn/delim.c (define_extensible_string): Recognize any prefix of - a delimiter name. - -Fri May 15 10:20:41 1992 James Clark (jjc at jclark) - - * c++test.c: Include <osfcn.h>. - - * lib/strtol.c, lib/getcwd.c, ps/psbb.c: Declare errno in case - <errno.h> doesn't. - -Fri May 8 09:37:19 1992 James Clark (jjc at jclark) - - * tbl/table.c (table::divide_span): Don't count column separation - if expand was specified. - - * tbl/main.c (process_format): Don't ignore width specs in - continued format. Give warning for changing equal widths or - column separation in continued format. - (process_data): Set column separation, minimum width, equal - columns at end of table. - -Thu May 7 08:50:40 1992 James Clark (jjc at jclark) - - * troff/node.c (kern_pair_node::add_discretionary_hyphen, - node::add_discretionary_hyphen): Use soft_hyphen_char. - (set_soft_hyphen_char): New function. - (init_node_requests): Bind to shc. Initialize soft_hyphen_char. - - * Makefile (c++tested): Give more helpful message if test fails. - -Tue May 5 10:58:39 1992 James Clark (jjc at jclark) - - * troff/input.c (init_charset_table): Translate 0240 to - an unbreakable space. - - * troff/token.h (token::hyphen_indicator): New function. - * troff/charinfo.h (TRANSLATE_HYPHEN_INDICATOR): New special - translation. - * troff/input.c (translate): Allow translation to \%. - * troff/node.c (node::add_char): Handle - TRANSLATE_HYPHEN_INDICATOR. - (make_node): Don't allow TRANSLATE_HYPHEN_INDICATOR here. - - * troff/input.c (init_charset_table): Don't set BREAK_AFTER flag - for \(hy. - - * tty/devlatin1/R.proto: \(hy and - should print as 055. - -Tue Apr 21 09:24:42 1992 James Clark (jjc at jclark) - - * groff.c (run_commands): If the last command gets a SIGPIPE send - a SIGPIPE to all children than haven't yet terminated. When - command terminates, set pid field to -1. - -Fri Apr 17 11:20:48 1992 James Clark (jjc at jclark) - - * groff.c (main): Pass an appropriate -filename option to gxditview. - -Thu Apr 16 15:11:40 1992 James Clark (jjc at jclark) - - * Makefile.bd (install): Remove existing program before copying. - - * Makefile, */Makefile, Makefile.bd, groff.sh, groff.c: Allow - programs which have Unix counterparts to be installed with - user-specified prefix. - - * troff/input.c (exit_troff): Don't check if exit_started. - (exit_request): Don't call exit_troff if exit_started. - - * Makefile.bd (install.mm): Rename to install.dwbmm. - -Tue Apr 14 10:05:10 1992 James Clark (jjc at jclark) - - * driver/input.c (do_file): Add missing break for '#' case. - -Mon Apr 13 10:11:02 1992 James Clark (jjc at jclark) - - * troff/input.c (input_stack::clear): Clear past any boundaries and - then add the boundaries back. - - * troff/input.c (exit_troff): Return immediately if already - exiting. - - * macros/tmac.s (pg@end-text): New macro. Use pg@end-text for the - end macro. - (pg*end-page): If the text has ended and there are no more - footnotes or keeps, exit. - - * macros/doc-ditroff (Lq, Rq): Define as \(lq and \(rq. - - * troff/input.c (init_charset_table): Make \(rq transparent by - default. - - * macros/tmac.an: Define lq and rq strings. - - * macros/tmac.s (Q, U): Define as \(lq and \(rq. - -Sun Apr 12 12:54:37 1992 James Clark (jjc at jclark) - - * troff/env.c (environment::final_break): New function. - (environment::newline): Set prev_line_interrupted to 2 if - exit_started. - * troff/env.h: Declare environment::final_break. - * troff/input.c (exit_troff): Call environment::final_break() - instead of environment::do_break(). - - * macros/Makefile: Install man.local if $(MACRODIR)/man.local - doesn't already exist. - * macros/man.local: New file. - * macros/tmac.an: Load man.local. - * macros/man.ultrix: New file. - -Sat Apr 11 17:32:04 1992 James Clark (jjc at jclark) - - * troff/input.c (exit_groff): Rename to... - (exit_troff): New function. - - * troff/div.c (exit_started, done_end_macro, - seen_last_page_ejector): New global variables. - (began_page_in_end_macro): New static variable. - (exit_flag): Deleted. - (top_level_diversion::top_level_diversion): Initialize - last_page_count. - (top_level_diversion): More elaborate test for whether - cleanup_and_exit() should be called. - Set began_page_in_end_macro if the end macro isn't yet finished. - * troff/div.h (top_level_diversion::last_page_count): New data - member. - (top_level_diversion::set_last_page): New function. - (exit_started, done_end_macro, seen_last_page_ejector): Declare. - * troff/env.c (do_break): Zero prev_line_interrupted. - * troff/input.c (exit_flag): Delete declaration. - (LAST_PAGE_EJECTOR): New magic cookie. - (token::next): Handle LAST_PAGE_EJECTOR. - (exit_groff): Set exit_started and done_end_macro instead of - exit_flag. Call top_level_diversion::set_last_page. Push a - LAST_PAGE_EJECTOR instead of calling push_page_ejector(). Do - another ejection after setting seen_last_page_ejector. - -Thu Apr 9 04:37:11 1992 James Clark (jjc at jclark) - - * etc/grog.sh, etc/grog.sh: Recognize -me sh macro. - - * macros/tmac.e (TH): Make sure there's room for the initial - header. - - * macros/tmac.s (par@init): Make PD and DD at least \n(.V. - Set FVS in points rather than units. - -Mon Apr 6 11:21:32 1992 James Clark (jjc at jclark) - - * troff/div.c (top_level_diversion::add_trap): Don't consider the - position of empty slots. - -Fri Apr 3 10:46:45 1992 James Clark (jjc at jclark) - - * ps/devps/S: Fix height and depth of parenrightex. - * ps/devps/symbol.diff: Regenerate. - -Sat Mar 28 21:17:52 1992 James Clark (jjc at jclark) - - * tmac.e (u): Do underlining as in -mgs. - -Fri Mar 27 09:23:44 1992 James Clark (jjc at jclark) - - * tty/tty.c (tty_printer::end_page): If overstriking is - suppressed, still turn overstruck horizontal and vertical lines - into +. - - * lib/new.c: Back out Feb 24 change; no longer needed with gcc - 2.1. - - * refer/label.y (format_expr::evaluate): Avoid use of %0*d. - -Wed Mar 18 09:29:10 1992 James Clark (jjc at jclark) - - * Version 1.05 released. - -Tue Mar 17 16:50:45 1992 James Clark (jjc at jclark) - - * tty/tty.c: Instead of keeping an array of glyphs and then - sorting it, keep a ordered linked list of glyphs for each line. - - * driver/driver.h: Include stddef.h. - - * tty/tty.c (compare_glyph): - * refer/refer.c (rcompare): - * troff/env.c (compare_ranges): Arguments of qsort comparison - function should be const void *. - - * troff/number.c (parse_term): - * dvi/dvi.c (draw_dvi_printer::draw): Avoid initialization in - switch statement. - - * refer/label.y (consider_authors): Don't access variables - constructed under a condition outside that condition: put braces - round for statement containing declaration; redeclare use of same - variable later. - - * pic/pic.y (text_expr): Delete production that allows - parenthesised text_expr. - (expr): Allow a conditional_expr to appear in parentheses. - (conditional_expr): Rename to any_expr. - - * mm: Install new version 1.01 from jh. - - * lib/font.c (font::get_width): Cache scaled widths. - (font::font): Initialize widths_cache. - (font::~font): Destroy widths_cache. - * lib/font.h: Add font::widths_cache. Declare font_widths_cache. - -Mon Mar 16 10:16:10 1992 James Clark (jjc at jclark) - - * c++test.c, c++test.ref: New files. - * Makefile: Check that the C++ compiler works. - - * ps/tmac.pspic (PSPIC): Do a break. - - * ps/tmac.ps: Move definition of PSPIC into... - * ps/tmac.pspic: New file. - (PSPIC): Draw box around picture, but make it invisible to grops. - * ps/tmac.ps: Load tmac.pspic. - * ps/Makefile: Install tmac.pspic. - -Sun Mar 15 14:18:08 1992 James Clark (jjc at jclark) - - * lib/font.c (scale_round): If n is negative, - subtract .5 before truncating floating point result. - - * lib/fontfile.c: Include <errno.h>. - -Tue Mar 10 14:17:03 1992 James Clark (jjc at jclark) - - * driver/input.c (get_char): Inline. Don't update current_lineno. - Change callers to up date current_lineno if necessary. - Use get_char() instead of getc(current_file). - -Sun Mar 8 18:05:28 1992 James Clark (jjc at jclark) - - * ps/tmac.ps: Fix up spacing of \(mo and \(nm. - -Fri Mar 6 19:38:58 1992 James Clark (jjc at jclark) - - * tty/tty.c (tmac.tty): Define \(rg as (R). - -Tue Mar 3 10:11:25 1992 James Clark (jjc at jclark) - - * lib/lib.h: New define a_delete. - * Use a_delete instead of delete when deleting an array of objects - without destructors. - - * lib/lib.h: Rename adelete to ad_delete. - * Change uses of adelete. - -Mon Mar 2 12:41:05 1992 James Clark (jjc at jclark) - - * eqn/eqn.y: Include lib.h. - - * troff/node.c (grow_font_table): Delete old_font_table. - - * mm: Install new version from jh. - -Fri Feb 28 10:42:23 1992 James Clark (jjc at jclark) - - * tbl/table.h (format_type): Make global instead of local to class - entry_format. Prefix enumerators with FORMAT_. - * tbl/table.c, tbl/main.c: Corresponding changes. - * refer/token.h (token_type): Make global. Prefix enumerators - with TOKEN_. - * refer/token.[ch]: Corresponding changes. - * Makefile: Get rid of -DNO_NESTED_TYPES configuration option. - - * troff/div.c (node::set_vertical_size): Don't name argument. - -Thu Feb 27 10:29:19 1992 James Clark (jjc at jclark) - - * Makefile: New configuration option ARRAY_DELETE_NEEDS_SIZE. - * lib/lib.h: Define adelete accordingly. - * pic/object.c (graphic_object::graphic_object): - * tbl/main.c (format::~format): - * tbl/table.c (table::~table): - * refer/ref.c (reference::~reference, reference::merge, - reference::insert_field, reference::delete_field): Use adelete. - - * Makefile: Change NESTED_TYPES to NO_NESTED_TYPES. - * refer/token.h: - * tbl/table.h: Corresponding changes. - - * common.c (common_output::dashed_arc, common_output::dotted_arc): - Ensure total_angle is positive. - -Wed Feb 26 08:49:26 1992 James Clark (jjc at jclark) - - * refer/ref.c (reference::merge, reference::insert_field, - reference::delete_field): Avoid delete[0]. - - * refer/token.c (init_special_chars): Move calls to cmupper - outside calls to init_two_char_letter to work around bug in gcc - 2.0. - -Mon Feb 24 14:20:00 1992 James Clark (jjc at jclark) - - * lib/new.c (operator new): Use __builtin_new for g++. - - * pic/object.c (graphic_object::~graphic_object): Don't use - delete [] on 0. - - * pic/object.c (output::compute_scale): Initialize max_width and - max_height. - -Sat Feb 15 09:55:20 1992 James Clark (jjc at jclark) - - * troff/input.c (write_request): Call fflush. - - * troff/node.h (class composite_node): Move declaration to node.c - * troff/input.c (charinfo_to_node): Rename to ... - (charinfo_to_node_list): Return node list rather than composite - node. - * troff/node.c (make_composite_node): New function. - (make_node, add_char): Call make_composite_node instead of - charinfo_to_node. - (class composite_node): Add a tfont * member. Delete font_size - member. - (composite_node::composite_node, composite_node::copy, - composite_node::size): Corresponding changes. - (composite_node::tprint): Provide constant spacing, emboldening - and track kerning as specified in tfont. - (composite_node::width): Change width calculation accordingly. - * troff/env.h (environment::composite): New member. - (environment::is_composite, environment::set_composite): New - functions. - * troff/env.c (environment::environment): Initialize composite. - * troff/input.c (charinfo_to_node): Call - environment::set_composite. - * troff/node.c (make_composite_node, make_glyph_node): Use the - plain version of the tfont if the environment is composite. - - * troff/node.c (font_info::get_space_width): Additional argument - giving space_size. Handle constant space correctly. Scale by - space_size unless constant spaced. - (env_sentence_space_width): New function. - * troff/node.h: Declare it. - * troff/env.h (environment::get_space_size, - environment::get_sentence_space_size, - environment::get_narrow_space_width, - environment::get_half_narrow_space_width): Make inline. - (environment::get_space_width): Make inline. Just call - env_space_width. - * troff/env.c: Delete definitions for funtions made inline. - (environment::space_newline, environment::space): Use - env_sentence_space_width(). Don't scale by space_size. - * troff/node.h: Move declarations of env*space_width() functions - into env.h. - -Sat Feb 8 09:30:22 1992 James Clark (jjc at jclark) - - * macros/tmac.s (PS): Don't try to set negative indent. - -Thu Feb 6 09:00:35 1992 James Clark (jjc at jclark) - - * pic/pic.y: Fix min function. - -Tue Jan 28 07:52:29 1992 James Clark (jjc at jclark) - - * man/mdate.sh: Clear LANGUAGE. - -Sun Jan 19 13:02:41 1992 James Clark (jjc at jclark) - - * pic/pic.y, pic/lex.c: Rename COMMAND token to COMMAND_LINE. - * pic/lex.c: New COMMAND keyword. - * pic/pic.y (print_args, print_arg): New rules. - (placeless_element): Use print_args for PRINT. - New COMMAND element. - -Tue Jan 7 13:14:31 1992 James Clark (jjc at jclark) - - * troff/input.c (terminal): Handle missing argument correctly. - - * pic/pic.y (text_expr): New rule. - - * pic/pic.y: Implement := operator. - -Sun Jan 5 10:23:02 1992 James Clark (jjc at jclark) - - * etc/grog.pl, etc/grog.sh: Distinguish old and new versions of - mdoc. - -Sat Jan 4 14:42:26 1992 James Clark (jjc at jclark) - - * ps/devps/dingbatsrmap: Include this in the distribution. - - * macros/tmac.doc: Replace with new version from 2nd Networking - Release. Fix loading of doc-* files. - * macros/{doc-common,doc-ditroff,doc-nroff,doc-syms}: New files. - * macros/tmac.doc.old: New file. Apply fixes that had been - applied to old tmac.doc. - * macros/tmac.andoc: Check that we're running under groff. - * macros/Makefile: Rework. - -Fri Jan 3 13:27:51 1992 James Clark (jjc at jclark) - - * tbl/table.h (format_type): - * refer/token.h (token_type): If NESTED_TYPES is defined, use - typedef to make these types visible at file scope. - * Makefile: Add NESTED_TYPES configuration option. - - * troff/div.c (mark): At the top level use the value of - nl_reg_contents rather than the current vertical position. - -Thu Jan 2 10:34:51 1992 James Clark (jjc at jclark) - - * tty/tty.c: Implement \D for horizontal or vertical lines. - (tty_printer::set_char): Use vec_used+2 as serial number. - Don't allow size of vector to exceed USHRT_MAX-2. - Split off part into... - (tty_printer::add_char): New function. - (tty_printer::draw): New function. - (compare_glyph): Handle equal serial numbers. - (tty_printer::end_page): Handle overstruck characters from \D. - (main, usage): Implement -d option. - -Mon Dec 23 10:37:51 1991 James Clark (jjc at jclark) - - * tbl/main.c (process_format): - * eqn/text.c (split_text): - * troff/input.c (token::next): Use inner block for declarations - with initializers in switch statement. - -Mon Dec 16 20:52:03 1991 James Clark (jjc at jclark) - - * pic/common.c (common_output::dash_line): Cope with zero-length - lines. - -Sun Nov 17 12:04:08 1991 James Clark (jjc at jclark) - - * Version 1.04 released. - -Wed Nov 13 05:27:21 1991 James Clark (jjc at jclark) - - * macros/tmac.an (TH): Define a macro an-init to define variables - based on command line arguments. - (an-header): Call it. - -Sun Nov 3 12:07:34 1991 James Clark (jjc at jclark) - - * Makefile (install.mm): Rename to install.dwbmm. - - * Makefile: Integrate mm. - * mm: New directory. - -Wed Oct 30 10:11:34 1991 James Clark (jjc at jclark) - - * refer/dirnamemax.c: If PATHCONF_MISSING is defined, include - <sys/types.h>. - - * pic/troff.c (troff_output::simple_spline, - troff_output::simple_polygon): Rename variable `v' to `d' to avoid - shadowing parameter. - - * lib/tmpfile.c (xtmpfile): Declare dir as const char *. - - * lib/ptable.h: Add explicit casts when converting from unsigned - long to unsigned. - - * dvi/devdvi/{SA,SB,msam.map,msbm.map}: New files. - * dvi/devdvi/Makefile: Install SA, SB. - - * refer/indxbib.c: Add declaration of mktemp. - - * refer/lookbib.c: Add declaration of isatty. - -Fri Oct 25 09:00:17 1991 James Clark (jjc at jclark) - - * pic/lex.c (interpolate_macro_with_args): While collecting - arguments, keep track of whether we're in a string. - -Wed Oct 23 08:42:48 1991 James Clark (jjc at jclark) - - * ps/tmac.ps (PSPIC): Do the .sp after the \X, and move the \X - down with \v, so as to avoid problems with top of page trap - setting no space mode. - -Tue Oct 22 17:38:49 1991 James Clark (jjc at jclark) - - * eqn/lex.c (get_delimited_text): Allow tab before macro body. - -Tue Oct 15 17:24:53 1991 James Clark (jjc at jclark) - - * ps/psrm.c (ps_get_line): Fix bug when lines longer than 255. - Improve error message. - -Fri Oct 11 11:09:38 1991 James Clark (jjc at jclark) - - * ps/psrm.c (print_ps_string): Don't pass negative numbers to - printf("%03o"); - -Wed Oct 9 17:50:14 1991 James Clark (jjc at jclark) - - * groff.c (possible_command::execp): Always use _exit() after a - failed exec. - - * Makefile: Add HAVE_UNION_WAIT, HAVE_PID_T, WAIT_COREDUMP_0200, - NO_SYS_WAIT_H configuration options. - * groff.c: Use these options. Use POSIX-style macros to extract - fields from the status returned by wait(). - -Fri Oct 4 12:12:27 1991 James Clark (jjc at jclark) - - * tbl/table.c (table::compute_separation_factor): Allow the - separation factor to drop to 0. - -Tue Oct 1 18:12:38 1991 James Clark (jjc at jclark) - - * refer/search.c: Include <errno.h>. - -Sun Sep 29 08:40:57 1991 James Clark (jjc at jclark) - - * pic/pic.y (YYDEBUG): Don't define for Borland C++. - - * lib/lib.h: #ifdef out declarations of itoa and iftoa for Borland - C++. - - * pic/lex.c (input_stack::bol): Move definition out of class body. - - * pic/main.c: On MSDOS munge argv[0]. - - * lib/ptable.h: Define name2 as _Paste2 for Borland C++. - - * lib/ptable.c (hash_string): Use unsigned long rather than - unsigned. - (next_ptable_size): Use unsigned rather than int. Give an error - message if we've hit the largest table size. - * lib/ptable.c: Corresponding changes. Also use unsigneds for the - table size. - - * pic/object.h (object_spec): Make flags unsigned long. Declare - flags as const unisgned long rather than as enums. - - * pic/output.c: Deleted. - - * pic/troff.c (troff_output::simple_ellipse): Remove spurious %. - - * tbl/table.c (simple_entry::note_double_vrule_on_{left,right}): - Add additional argument. - (line_entry::note_double_vrule_on_{left,right}): Set value of - douvle_vrule_on_{right,left} flag according to argument. - (simple_line_entry::simple_print, - simple_line_entry::double_line_print): If adjacent to double vrule - on a corner extend rather than shorten the rule by half the double - vrule sep. - - * troff/number.c (parse_term): In checking for overflow, handle the - case where the current horizontal position is negative. - -Thu Sep 12 08:26:09 1991 James Clark (jjc at jclark) - - * pic/object.c (draw_arrow): Check for object having zero length. - -Wed Sep 11 10:32:38 1991 James Clark (jjc at jclark) - - * eqn/main.c (do_file): Split off inline equation handling into... - (inline_equation): New function. Search for starting delimiter - using... - (delim_search): New function. Don't recognize a delimiter that - occurs in the name of an escape sequence, number register, string - etc. - -Tue Sep 10 04:01:11 1991 James Clark (jjc at jclark) - - * eqn/delim.c (delim_box::compute_metrics): Don't call - define_extensible_string if left is 0. - (delim_box::output): Don't print the left delimiter if left is 0. - (delim_box::debug_print): Check for left == 0 before calling printf. - -Fri Aug 23 13:02:30 1991 James Clark (jjc at jclark) - - * troff/Makefile (majorminor.c): Include only digits in - minor_version. - -Thu Aug 22 09:35:37 1991 James Clark (jjc at jclark) - - * refer/dirnamemax.c: new file. - * refer/genlimits.c: Deleted. - * refer/indxbib.c (main): Use dir_name_max() instead of NAME_MAX. - Don't check path length. - * refer/Makefile: Add dir_name_max.o; delete genlimits. - * Makefile: Add PATHCONF_MISSING option. - - * refer/indxbib.c (get_cwd): New function. - (main): Use get_cwd(). - * lib/getcwd.c: New file. - * Makefile: Delete -DHAVE_GETWD. Include GETCWD variable. Pass - GETCWD in SUBFLAGS. - * lib/Makefile: Compile getcwd.o. - - * ps/tmac.psatk (psatk-defs): Define showpage after pushing - userdict. - - * refer/indxbib.c (main): Check success of mktemp. - - * lib/tmpfile.c: New file. - * lib/Makefile: Add tmpfile.c. - * lib/lib.h: Declare xtmpfile(); include <stdio.h>. - * ps/ps.h: Delete declaration of mktemp(). - * ps/ps.c (ps_printer::ps_printer): Use xtmpfile(). - * refer/refer.c (divert_to_temporary_file): Use xtmpfile(). - * driver/driver.h: No need now to include errno.h. - - * everywhere: Set errno to 0 before calling fopen(). - - * eqn/eqn.h, etc/soelim.c, driver/driver.h, etc/addftinfo.c, - dvi/tfmtodit.c, groff.c, refer/index.c, refer/linear.c, - refer/lookbib.c, refer/refer.h, ps/psbb.c: Include <errno.h>. - -Mon Aug 19 10:52:18 1991 James Clark (jjc at jclark) - - * troff/env.h (translate_space_to_dummy): Declare it. - * troff/env.c (environment::space_newline, environment::space): - If translate_space_to_dummy is set then make the width of spaces 0. - * troff/input.c (translate): If the second character of a - translation is a space, translate to unbreakable space. If the - first character is a space, set or clear translate_space_to_dummy - according to whether the second character is \&. Weird! - -Tue Jul 30 10:03:56 1991 James Clark (jjc at jclark) - - * groff.c (run_commands): Don't use non-zero exit code because a - command gets SIGPIPE. - - * groff.c, groff.sh: Use -mXps with -TXps. - - * ps/ps.c (ps_printer::special): Move call to flush_sbuf() into... - (ps_printer::do_exec, ps_printer::do_file, ps_printer::do_def, - ps_printer::do_mdef, ps_printer::do_import): Call flush_sbuf(). - (ps_printer::special): New specials invis and endinvis. - (ps_printer::do_invis, ps_printer::do_endinvis): New functions. - (ps_printer::set_char, ps_printer::draw): Return if invis_count>0. - (ps_printer::end_page): Check that invis_count == 0. - (ps_printer::invis_count): New member. - (ps_printer::ps_printer): Initialize invis_count to 0. - - * troff/env.c (environment::hyphenate_line): Hyphenation - indicator at beginning of word inhibits splitting after -, \(em - etc. - - * pic/pic.y (element): Allow another element to follow } without - any intervening separator. - -Mon Jul 22 12:27:37 1991 James Clark (jjc at jclark) - - * pic/lex.c (get_delimited): Allow tabs before delimiter. - -Wed Jul 17 10:59:08 1991 James Clark (jjc at jclark) - - * groff.c: Get rid of HAVE_UNION_WAIT stuff. Instead suppress - declaration of wait() in header files. - * Makefile: Get rid of -DHAVE_UNION_WAIT. - - * tbl/table.c (alphabetic_text_entry::add_tab): New function. - - * lib/lib.h: Declare return type of strerror as char *. - - * man/Makefile: Add g flag to sed substitutions. - * Makefile (shgroff, bindist): Likewise. - -Sun Jul 14 11:57:02 1991 James Clark (jjc at jclark) - - * ps/ps.c (ps_printer::do_import): Move push of userdict into... - * ps/devps/prologue (PBEGIN): Define showpage after pushing - userdict. - -Sat Jul 13 20:53:04 1991 James Clark (jjc at jclark) - - * ps/devps/prologue (PBEGIN): Zap any definition of showpage in - userdict. - -Fri Jul 12 07:10:09 1991 James Clark (jjc at jclark) - - * man/mdate.sh: Handle the fact that BSD ls -l does not print the - group. - -Sun Jul 7 08:00:23 1991 James Clark (jjc at jclark) - - * troff/input.c (define_number_reg): If currently undefined, - don't define it if the argument is an invalid expression. - - * Makefile: Ignore return value of `if' commands without `else' - parts. - - * Makefile: Split up CPPDEFINES into a series of separate - configuration options. - - * troff/input.c (init_registers): Use time_t instead of long - unless LONG_FOR_TIME_T is defined. Use returned result rather - than passing pointer. - * Makefile: Document LONG_FOR_TIME_T as a CPPDEFINE. - - * lib/Makefile (fontpath.h): Use gendef. - -Thu Jul 4 09:48:05 1991 James Clark (jjc at jclark) - - * troff/input.c (input_iterator::shift): Delete argument name. - * troff/node.c (suppress_output_file::really_begin_page, - suppress_output_file::really_transparent_char, node::ascii_print, - node::tprint): Delete names of unused arguments. - -Wed Jul 3 17:34:57 1991 James Clark (jjc at jclark) - - * refer/label.y (string): Pass $4 to command_error. - -Tue Jul 2 15:06:01 1991 James Clark (jjc at jclark) - - * Version 1.03 released. - -Sat Jun 29 08:14:01 1991 James Clark (jjc at jclark) - - * Makefile: Pass definition of SHELL in SUBFLAGS. - - * gendef: New file. - * Makefile, eqn/Makefile, refer/Makefile, troff/Makefile, - ps/Makefile: Use gendef to construct header files that are - constructed from the Makefile. - - * macros/Makefile: make all should build stripped version of tmac.e. - - * refer/Makefile (clean): Remove y.output. - -Fri Jun 28 09:44:36 1991 James Clark (jjc at jclark) - - * ps/pfbtops.c (main): Add -v option which prints out a version - number. - * ps/Makefile (pfbtops): Link with libgroff.a. - -Fri Jun 21 07:43:23 1991 James Clark (jjc at jclark) - - * refer/search.h (linear_searcher::get_nkeys): Delete declaration. - * refer/linear.c (linear_searcher::get_nkeys): Delete definition. - - * refer/lkbib.c (main): Always terminate reference with blank - line. - * refer/lookbib.c (main): Likewise. - - * refer/linear.c (file_buffer::load): Check that the file is not a - binary file. - - * refer/Makefile (genlimits): Possibly add -DHAVE_SYS_DIR_H. - (genlimits.c): Include <sys/dir.h> if HAVE_SYS_DIR_H is defined. - Delete second inclusion of <sys/param.h>. - -Tue Jun 18 01:32:26 1991 James Clark (jjc at jclark) - - * troff/token.h (token::special): Deleted. - - * tbl/main.c (process_format): Rework so that opt->tab_char is - recognized only when appropriate. - - * ps/Makefile (clean): Remove pfbtops. - -Sun Jun 16 09:37:19 1991 James Clark (jjc at jclark) - - * lib/font.c (text_file::next): Don't return if we have got a - blank line. - -Fri Jun 14 09:52:26 1991 James Clark (jjc at jclark) - - * refer/refer.c (store_reference): Get hash code from old_table[i] - when rehashing the table. - -Thu Jun 13 01:26:43 1991 James Clark (jjc at jclark) - - * eqn/box.c (box::top_level): Save size and prev size using \R and - restore it afterwards. Set the size to the size at the beginning - of the line. - * eqn/pbox.h: Declare SAVED_INLINE_PREV_SIZE_REG, - SAVED_INLINE_SIZE_REG, and SAVED_SIZE_REG. - - * refer/Makefile (limits.h): Use ./genlimits. - -Wed Jun 12 16:05:34 1991 James Clark (jjc at jclark) - - * refer/index.c: Delete declarations of stat() and fstat(). - -Tue Jun 11 14:52:49 1991 James Clark (jjc at jclark) - - * tty/tmac.tty: Add character definitions for \(>= and \(<=. - -Mon Jun 10 22:49:48 1991 James Clark (jjc at jclark) - - * etc/grog.sh, etc/grog.pl: Change regex for .PS. - -Fri Jun 7 09:13:06 1991 James Clark (jjc at jclark) - - * troff/input.c (token::get_char): Handle \e. - - * refer/linear.c: Delete declarations of fstat() and stat(). - -Wed Jun 5 09:11:59 1991 James Clark (jjc at jclark) - - * troff/node.c, troff/env.c, troff/input.c, Makefile: Remove - OP_DELETE_BROKEN stuff, since we now have a fix for g++. - -Mon Jun 3 13:41:32 1991 James Clark (jjc at jclark) - - * troff/input.c (do_define_macro): Improve error handling for end - of file while defining macro. - -Sun Jun 2 10:20:24 1991 James Clark (jjc at jclark) - - * eqn/box.h: Fix declaration of set_gsize. - * eqn/box.c (set_gsize): Make argument const char *. - (gsize): Declare as char *. - * eqn/main.c (main): Don't convert gsize to int. - * eqn/lex.c (do_gsize): Pass char * to set_gsize. - - * Version 1.02 released. - -Sat Jun 1 12:19:46 1991 James Clark (jjc at jclark) - - * macros/tmac.andoc: New file. - * macros/Makefile: Install tmac.andoc. - - * troff/node.c, troff/env.c, troff/input.c: Conditionalize use of - operator new and delete on OP_DELETE_BROKEN not being defined. - * Makefile: Mention OP_DELETE_BROKEN. - -Mon May 27 13:49:07 1991 James Clark (jjc at jclark) - - * Makefile (bindist): Pass SUBFLAGS. - -Sun May 26 14:13:22 1991 James Clark (jjc at jclark) - - * Makefile, groff.c: Pass definitions to groff.c via device.h. - - * tty/tty.c (tty_font::load_tty_font): Avoid shadowing - parameter. - - * ps/Makefile, ps.c: Pass BROKEN_SPOOLER_FLAGS via broken.h. - - * ps/ps.h, ps/psrm.c: Make comment_table and - header_comment_table local to resource_manager::process_file. - - * groff.sh: With -TXps pass -printCommand option to gxditview. - - * groff.c (possible_command::print): Implement using - append_arg_to_string. - - * xditview: Merge in new implementation with own ChangeLog. - -Sat May 25 18:33:20 1991 James Clark (jjc at jclark) - - * groff.c (main): Implement PRINT_OPTION. - (append_arg_to_string): New command. - (device_table): Set PRINT_OPTION flag for Xps. - -Fri May 24 09:48:58 1991 James Clark (jjc at jclark) - - * troff/groff.h: Rename to troff.h. - - * pic/lex.c (lookup_keyword, docmp): New functions. - (get_token): Use new lookup_keyword. - Don't include key.h. - * pic/key.[ch], pic/pic.gperf: Deleted. - * pic/Makefile: Remove gperf stuff. - - * pic/Makefile, pic/output.h: Move definition of TEX_SUPPORT - into output.h. - * pic/tex.c: Move include of pic.h before test of TEX_SUPPORT. - - * troff/Makefile, troff/node.c: Move definition of - STORE_WIDTH into node.c. - - * etc/grog.pl, etc/grog.sh: Support -mdoc. - -Thu May 23 12:30:49 1991 James Clark (jjc at jclark) - - * dvi/devdvi/texr.map, dvi.devdvi/texi.map, - dvi/devdvi/texb.map: Add lq and rq. - dvi/devdvi: Regenerate fonts. - * ps/devps/textmap: Add lq and rq. - * ps/devps: Regenerate fonts. - * tty/devascii/R.proto, tty/devlatin1/R.proto: Add lq and rq. - * macros/tmac.e: Define \*(lq and \*(rq to be \(lq and \(rq. - - * pic/object.c (position_rectangle): When checking radius - cope with possiblity that width or height is negative. - (box_object::box_object): Have separate xrad and yrad with - signs matching signs of dim components. - (box_object::{north,south}_{east,west}): Use xrad and yrad. - (box_object::print): With rounded boxes use absolute values - for dim and rad arguments. - - * lib/Makefile, lib/fontfile.o: Pass definition of FONTPATH - in fontpath.h. - - * eqn/Makefile, eqn/main.c: Pass definition of DEVICE in device.h. - - * various files: Add explicit destructors to keep Saber CC +d - happy. - -Wed May 22 11:37:11 1991 James Clark (jjc at jclark) - - * eqn/box.c (box::top_level): Restore fonts correctly after - font changes in line containing inline equation. Also - restore previous font as well as current font. - * eqn/pbox.h: Define necessary string and register names. - - * troff/input.c (token::next): Case 'R' calls do_register. - (do_register): New function. - -Tue May 21 11:28:23 1991 James Clark (jjc at jclark) - - * groff.c, groff.sh: Support Xps device. Allow each device - to have a pseudo_name and a real_name. - - * groff.c (run_commands): Don't print `Broken pipe' messages. - - * ps/pfbtops.c: New file. - * ps/Makefile: Add pfbtops. - - * troff/number.c (parse_term): Improved error message. - -Mon May 20 11:22:14 1991 James Clark (jjc at jclark) - - * groff.c, groff.sh, etc/grog.sh, etc/grog.pl: Support grefer. - - * Makefile: Integrate refer. - * refer: New directory. - * man/grefer.man, man/glookbib.man, man/gindxbib.man, - man/lkbib.man: New files. - * man/Makefile: Support refer man pages. - - * lib/lib.h: Declare is_prime. - * lib/prime.c: New file. - - * troff/input.c (macro_source): New function. - (init_input_requests): Bind "mso" to macro_source. - - * troff/env.c (environment::possibly_break_line): Maintain - pointer to pointer to node to be split in ndp so as to avoid - using address of freed node. - - * troff/env.c (environment::hyphenate_line): Maintain pointer to - pointer to first node to be hyphenated in startp so as to - avoid using address of freed node. - - * troff/env.c (class trie, class hyphen_trie): Make the - elements of the trie be of type char not unsigned char. - Declare arguments to be const char* instead of unsigned char *. - - * troff/env.c (hyphenate): Initialize hbuf[0]. - - * troff/input.c (set_string): Declare p to be char * and cast - *p to unsigned char when necessary. - - * troff/input.c (do_define_macro): Declare s to be const - char*. Cast element to unisgned char when necessary, Declare - d to be an int. Handle EOF better. - - * troff/Makefile, troff/input.c: Different scheme for passing - definitions of MACROPATH, HYPHENFILE and DEVICE. - -Tue May 14 13:41:36 1991 James Clark (jjc at jclark) - - * tty/devascii/R.proto: Delete entry for em. - * tty/devlatin1/R.proto: Likewise. - -Sat May 11 11:13:28 1991 James Clark (jjc at jclark) - - * troff/input.c (translate): Stop when we get a space. Treat eof - like newline. - - * macros/tmac.an (IP): Only pass quoted argument to TP when \n(.$>1. - -Wed Apr 24 19:24:33 1991 James Clark (jjc at jclark) - - * tbl/main.c (process_format): A font name following a `f' - modifier that starts with a digit can be only one character long. - Also deal with EOF on the second character of the font name. - -Wed Apr 17 11:23:43 1991 James Clark (jjc at jclark) - - * troff/input.c (token::next): Turn \~ into an - unbreakable_space_node. - * troff/node.c (unbreakable_space_node): New class. - * troff/node.h: Declare it. - -Tue Apr 16 10:47:12 1991 James Clark (jjc at jclark) - - * dvi/dvi.c (dvi_printer::set_char): Make code an int. Check that - it's >= 0, before outputting it as a single byte. - -Mon Apr 15 11:20:23 1991 James Clark (jjc at jclark) - - * lib/font.c: Make font_char_metric::code an int. - (font::get_code): Change return type to int. - (font::load): Allow code to be arbitrary integer. - * lib/font.h (font::get_code): Change return type to int. - (font::number_to_index): Change argument type to int. - * troff/input.c (token::next): In case 'N', allow any value. - Store value in token::val. - (token::operator==): For TOKEN_NUMBERED_CHAR test equality of val. - (token::get_char, token::add_to_node_list, token::process): Get - number from val. - (charinfo::set_number): Change argument to int. - (charinfo::get_number): Require that NUMBERED flag be set. - (get_charinfo_by_number): Store numbered characters not between 0 - and 255 in a dictionary. - * troff/charinfo.h (get_charinfo_by_number): Change argument type - to int. - (charinfo::number): Change type to int. - (charinfo::set_number): Change type of set_number to int. - * troff/node.c (troff_output_file::put_char_width, - troff_output_file::put_char): Test whether character is numbered - using charinfo::numbered(). - * driver/printer.c (printer::set_numbered_char): Allow arbitrary - values of num. - * lib/nametoindex.c: New implementation to cope with arbitrary - number characters. - - * troff/input.c (token::operator==): Test val for - TOKEN_CHAR_HEIGHT, TOKEN_CHAR_SLANT, TOKEN_FONT_POSITION, and - TOKEN_SIZE. - - * man/Makefile: Add definiton of BROKEN_SPOOLER_FLAGS. - (.man.n): sed out @BROKEN_SPOOLER_FLAGS@. - -Sun Apr 14 12:57:00 1991 James Clark (jjc at jclark) - - * ps/devps/zapfdr.ps: Don't copy UniqueID. Avoid use of newdict - variable. - - * all Makefiles: rm targets of cp and >. - - * xditview/xtotroff.c (MapFont): Unlink troff_name before opening - it. - - * eqn/lex.c (def_table): Add dollar. - -Sat Apr 13 13:02:44 1991 James Clark (jjc at jclark) - - * troff/input.c (do_width): Push back newline before closing delim - like do_bracket. - -Fri Apr 12 15:16:03 1991 James Clark (jjc at jclark) - - * groff.c (possible_command::prepend_arg): New function. - (main): Prepend device -m option. - * groff.sh: Put device -m options before command-line options. - -Tue Apr 9 10:24:43 1991 James Clark (jjc at jclark) - - * macros/tmac.an (IP): Quote argument to TP. - - * ps/ps.c (main): New option -b, which sets... - (broken_flags): New variable. - (ps_printer::~ps_printer): Incorporate the setup section in the - prolog if (broken_flags & NO_SETUP_SECTION). - (ps_printer::begin_page): Generate {Begin,End}PageSetup comments. - (ps_printer::merge_download_fonts, ps_printer::merge_import_fonts, - ps_printer::merge_ps_fonts, ps_printer::print_font_comment, - ps_printer::print_needed_font_comment, - ps_printer::print_supplied_font_comment, - ps_printer::print_include_font_comments, - ps_printer::lookup_doc_font, ps_printer::download_fonts, - ps_printer::read_download_file, read_document_fonts, add_font, - skip_line, parse_fonts_arg, document_font::document_font, - document_font::~document_font, document_font::download, - ps_output::include_file): Deleted. - (ps_printer::~ps_printer): Generate %%EOF. Generate %!PS-Adobe-3.0 - rather than %!PS-Adobe-2.0. Make calls to - resource_manager::need_font for each font that we used. Replace - calls to merge_ps_fonts, merge_download_fonts, print_font_comment, - print_supplied_font_comment, print_needed_font_comment by call to - resource_manager::print_header_comments. Output %%Orientation - comment. Output %%Requirements: numcopies comment if ncopies > 1. - Don't output the prolog directly. Instead call - resource_manager::output_prolog. Only define #copies when ncopies - > 1. Delete calls to print_include_font_comments and - download_fonts. Add call to resource_manager::document_setup. - (ps_printer::do_file): Call resource_manager::import_file instead - of including it ourselves. - (ps_printer::do_import): Likewise. Also don't call - merge_import_fonts. Push userdict on the dictionary stack before - and pop it afterwards. - Move declaration of ps_output into ps.h. - * ps/psrm.c: New file implementing resource_manager class. - * ps/ps.h: New file declaring ps_output and resource_manager - classes. - * ps/devps/zapfdr.ps: - * ps/devps/symbolsl.ps: - * ps/devps/prologue: Use 3.0 conventions. - * ps/Makefile: Pass definition of BROKEN_SPOOLER_FLAGS in DEFINES. - Add default definition of BROKEN_SPOOLER_FLAGS. - * Makefile: New variable BROKEN_SPOOLER_FLAGS. Add - BROKEN_SPOOLER_FLAGS to SUBFLAGS. - -Mon Apr 8 09:26:54 1991 James Clark (jjc at jclark) - - * etc/grog.pl: New file. - * Makefile (GROG): New variable. - Add GROG to SUBFLAGS. - * etc/Makefile (GROG): New variable. - (install.nobin): Install $(GROG) rather than grog.sh. - -Thu Apr 4 11:36:45 1991 James Clark (jjc at jclark) - - * eqn/special.c (special_box::compute_metrics): Make the input and - output strings the same. Get the new height and depth from the - predefined height and depth registers. Also make subscript kern - and skew available. - (special_box::compute_subscript_kern, special_box::compute_skew): - New functions. - - * eqn/box.c (pointer_box::compute_skew, - simple_box::compute_metrics, box::top_level) - * eqn/text.c (prime_box::compute_metrics, - prime_box::comput_subscript_kern) - * eqn/limit.c (limit_box::compute_metrics): - * eqn/delim.c (build_extensible, delim_box::compute_metrics): - * eqn/sqrt.c (sqrt_box::compute_metrics): Protect possibly - negative numbers in `nr' requests with a leading 0. - -Wed Apr 3 15:58:23 1991 James Clark (jjc at jclark) - - * eqn/special.c: New file. - * eqn/eqn.y: Declare token SPECIAL. Make it right associative. - Add new rule for simple. - * eqn/lex.c (token_table): Add SPECIAL. - * eqn/box.h: Declare make_special_box. - * eqn/Makefile: Add special.[co]. - -Sat Mar 30 10:57:53 1991 James Clark (jjc at jclark) - - * ps/devps/prologue: Possibly set packing to true while defining. - Create grops dictionary here. Initialize local variables before - defining procedures. - (PICTURE): Rename to PBEGIN. Also do save, noop showpage, count - the dictionary stack. Set strokeadjust and overprint to false if - the relevant operators are defined. - (PEND): New procedure. - * ps/ps.c (ps_printer::~ps_printer): In the prolog just include - prologue. Do everything else in the setup section. - (ps_printer::do_import): Just call PBEGIN and PEND around the - picture. Also push userdict before, and pop it afterwards. - -Wed Mar 27 07:59:50 1991 James Clark (jjc at jclark) - - * troff/node.c (bracket_node::tprint): Brackets were being printed - 1m too low. - - * macros/tmac.an (SH, SS): Set fill mode. - -Tue Mar 26 07:46:31 1991 James Clark (jjc at jclark) - - * troff/div.c (top_level_diversion::begin_page): Set - high_water_mark to 0. - -Fri Mar 22 09:19:46 1991 James Clark (jjc at jclark) - - * man/mdate.sh: New file. - * man/mdate.c: Deleted. - * man/Makefile: Use mdate.sh instead of mdate. - (mdate): Deleted. - - * eqn/lex.c (do_gsize): Supply missing argument to error message. - -Tue Mar 19 11:06:50 1991 James Clark (jjc at jclark) - - * man/mdate.c: New file. - * man/*.man: Replace modification date by @MDATE@. - * man/Makefile (.man.n): Replace @MDATE@ by `mdate $<`. - (mdate): New target. - - * lib/font.c (text_file::next): Deal with arbitrarily long lines. - Remove illegal input characters. - -Mon Mar 18 08:32:25 1991 James Clark (jjc at jclark) - - * macros/tmac.s (pg*start-col): Do .ns *after* running the hooks. - -Sat Mar 16 03:52:25 1991 James Clark (jjc at jclark) - - * troff/div.c (begin_page): Change behaviour when - !first_page_begun and !break_flag. - - * troff/input.c (do_name_test): Return 0 if argument is empty. - - * troff/input.c (read_long_escape_name): Require closing ] to be - at same input level as opening [. - - * troff/input.c (read_increment_and_escape_name): New function. - (get_copy, process_input_stack): Use this for \n. - -Fri Mar 15 00:31:48 1991 James Clark (jjc at jclark) - - * troff/div.c (top_level_diversion::begin_page): Ignore the - current value of page_number if !first_page_begun. - - * groff.c (main): Fix declaration of buf. - - * troff/input.c (do_name_test): New function. - (token::next): Implement \A. - (token::next): Implement \e by turning it into a TOKEN_ESCAPE. - (token::description, token::add_to_node_list, token::process): - Handle TOKEN_ESCAPE. - * troff/token.h: New token TOKEN_ESCAPE. - -Thu Mar 14 10:22:26 1991 James Clark (jjc at jclark) - - * pic/main.c (do_picture): Allow space before and after filename - following `<'. Check that the filename is not empty. - -Wed Mar 13 12:49:40 1991 James Clark (jjc at jclark) - - * Version 1.01 released. - - * dvi/devdvi/CompileFonts: Add cm*ss10 fonts. - - * dvi/tmac.dvi: ftr HR to H. - - * macros/tmac.e: Round up computation of $r. - - * xditview/tmac.X: Don't give up completely in compatibility mode. - Use \n(.s instead of \n[.s]. - - * dvi/tmac.dvi: Don't give up completely in compatibility mode. - Use \(ci instead of \[ci]. Use \n(.s instead of \n[.s]. - Add u to factors inside \s[...]. Rename frac to dvi-frac. - Translate \(FM onto \[prime] and \(!/ onto \[slashnot]; use these - short names in the char definitions. - - * ps/tmac.ps: Don't give up completely in compatibility mode. - Fix the fraction definitions to use \n(.s and \(f/. Add an extra - quote in front of \n(.s. Add u to factors inside \s[...]. - -Mon Mar 11 12:01:20 1991 James Clark (jjc at jclark) - - * tty/tmac.tty: Call the nroff request. - - * macros/tmac.e ((x, )x): Better definitions that work properly - in a diversion. - (@0, @1): Helper macros for (x. - - * macros/tmac.e ($s, hl): Use \l rather than \D. - - * tty/tmac.tty: Make it work better in compatibility mode. - (pchar): Rename to tty-char. - - * macros/tmac.e (@E): New macro. - (r, i, b, rb, bi): Use @E. - - * macros/tmac.e (@F): Don't use (;...) syntax. - - * macros/tmac.e: Remove mention of \*(||/revisions. Mention that - it was modified for groff. - - * macros/tmac.e: Make sure \n(ps and \n(es are >= \n(.V. - - * macros/tmac.e (<., .>): Removed. - ([., .]): If \n(.V>=1v, use [] instead of superscripting. - - * macros/tmac.e: Remove check that groff is being used. - - * macros/tmac.e (@C): Change families only if using groff; turn - compatibility mode off while changing familes. Save compatibility - mode before changing families and restore it afterwards. - - * macros/tmac.e (@h): Remove test for offset + line length. - - * macros/tmac.e (sorry): Rename to @S. Use \$1 instead of \$0 - (lo, th, ac): Define to call @S instead of using als. - - * macros/tmac.e: Make $r and $R now contain \n(.v*100/\n(.sp, ie - the ratio of the vertical spacing to the point size in units - expressed as a percentage. Use these instead of $10r and $10R, - Delete $10r and $10R. - - * lib/font.c (font::load): In default computation of space_width, - divide by sizescale. Use scale_round. - - * macros/tmac.an (TP): Don't call `nf'. - (an-do-tag): Don't call `fi'. - -Sun Mar 10 09:52:35 1991 James Clark (jjc at jclark) - - * troff/input.c (process_input_stack): Handle the case where - spaces at the beginning of an input line are followed by a - newline. - -Thu Mar 7 20:18:07 1991 James Clark (jjc at jclark) - - * groff.c (device_table): Add PIC_X_OPTION for dvi device. - * groff.sh: Use pic -x with the dvi device. - - * dvi/devdvi/FontMakefile (H): Don't use -s. - - * dvi/devdvi/HI, dvi/devdvi/HB: New files. - * dvi/devdvi/Makefile: Add HI and HB to FONTS. - * dvi/devdvi/FontMakefile: Add rules for HI and HB. Include these - in FONTS. - -Mon Mar 4 13:20:14 1991 James Clark (jjc at jclark) - - * ps/psfig.diff: New file. - * ps/tmac.psfig: New file. - -Sat Mar 2 00:15:09 1991 James Clark (jjc at jclark) - - * macros/tmac.s (]=, ref*do-tl, ref*bib-print): Deleted. - (]-): Don't call ref*do-tl. - - * macros/tmac.s (ref*end-print): Use XP if [F not defined. - - * macros/tmac.s (ref*normal-print): Call FS rather than fn@do-FS. - (fn@do-FS): Rename to fn*do-FS. - - * troff/input.c (transparent_translate): New function. - (process_input_stack): Apply transparent_translate before calling - diversion::transparent_output(unsigned char). - -Wed Feb 27 00:13:25 1991 James Clark (jjc at jclark) - - * troff/input.c (do_define_macro): Define the macro before calling - skip_line. - - * xditview/Makefile: Add DEVICES variable. Change install target - to use this. - -Tue Feb 26 10:46:22 1991 James Clark (jjc at jclark) - - * groff.c (run_commands): Handle the possibility that there are - child processes other than those forked by us. - -Sun Feb 24 21:32:30 1991 James Clark (jjc at jclark) - - * lib/string.c (string::append): New function. - * lib/stringclass.h: Declare it. - -Thu Feb 21 11:49:26 1991 James Clark (jjc at jclark) - - * eqn/main.c (main): New option -N which sets - no_newline_in_delim_flag. - (do_file): If no_newline_in_delim_flag is set don't allow newlines - in delimiters. - * groff.c (main): Pass -N on to eqn. - (help, synopsis): Mention -N. - * groff.sh: Implement -N. - -Wed Feb 20 15:16:10 1991 James Clark (jjc at jclark) - - * macros/tmac.s (]=, ref*bib-print, ref*do-tl): New macros. - (]-): Call ref*do-tl if ref*need-tl is non-zero. - (XP): Allow as initializer. - -Tue Feb 19 14:09:06 1991 James Clark (jjc at jclark) - - * troff/env.c (environment::wrap_up_field): If field_spaces are - non-zero and we have a current_tab, subtract padding from - tab_distance. If this makes tab_distance <= 0, use the next tab - stop instead. If there isn't any next tab or it's a left tab, - wrap up the current tab. - (environment::start_field): Initialize tab_precedes_field. - (environment::wrap_up_tab): If there's a current field, update - pre_field_width, field_distance and tab_precedes_field. - * troff/env.h (environment::tab_precedes_field): New member. - -Fri Feb 15 01:24:00 1991 James Clark (jjc at jclark) - - * ps/ps.c (ps_printer::do_file): New function. - (ps_printer::special): Bind to `file' special. - (ps_printer::do_exec): Set ndefined_styles to 0. - -Sat Feb 9 03:03:04 1991 James Clark (jjc at jclark) - - * eqn/text.c (split_text): Grok \* and similar escapes sequences. - Avoid stripping first character from the start of unrecognized - escapes. Use lex_error instead of error to report errors. - * eqn/lex.c (get_token): Rework handling of escapes. - (lex_error): Move declaration into... - * eqn/eqn.h. - - * xditview/xditview.c (main): Make -page option work. - - * Makefile: Correct comment about -DBROKEN_SPOOLER and pageview. - -Wed Feb 6 12:28:43 1991 James Clark (jjc at jclark) - - * macros/tmac.s (B2): Correct size of box. - -Tue Feb 5 00:37:35 1991 James Clark (jjc at jclark) - - * macros/tmac.s (B2): Postpone drawing the box until in the - top-level diversion. - - * tty/tmac.tty: Add font translations for C, CR, CW. - - * groff.c (synopsis, help): Document -i. - * groff.sh: Implement -i. - - * macros/tmac.s (@NH): Put a `.' after multi-part numbers. - Simplify the construction of SN. - - * troff/number.c (parse_term): Give `|' a higher precedence. - * tbl/table.c (numeric_text_entry::simple_print): Parenthesise - accordingly. - - * macros/tmac.s (B2): Use par@finish instead of par@reset. - -Mon Feb 4 12:36:09 1991 James Clark (jjc at jclark) - - * lib/string.c (string::move): New function. - * lib/stringclass.h: Declare it. - -Sat Feb 2 16:02:16 1991 James Clark (jjc at jclark) - - * troff/env.c (distribute_space): Add optional argument - `force_forward'. - (environment::wrap_up_field): Call distribute_space with - `force_forward' argument of 1. - -Fri Feb 1 19:36:33 1991 James Clark (jjc at jclark) - - * lib/string.c, lib/stringclass.h (string::operator+=(char)): - Inline it. Move reallocation into... - (string::grow1): New function. - * pic/Makefile, tbl/Makefile, eqn/Makefile, ps/Makefile: Redo - dependencies to include library header files. - * lib/Makefile: Make string.c and lf.c depend on stringclass.h. - -Thu Jan 31 15:02:27 1991 James Clark (jjc at jclark) - - * macros/tmac.s (@NH): Use the same number registers than -ms does - for the heading level counters. Use the same string that -ms does - for the number for this heading. - -Wed Jan 30 14:25:40 1991 James Clark (jjc at jclark) - - * lib/new.c (operator new): Cast result of malloc to char *. - - * troff/input.c (spring_trap, lookup_request): Add assert that nm - is not null. - -Tue Jan 29 18:08:05 1991 James Clark (jjc at jclark) - - * groff.c (main): Support -i. - -Sun Jan 27 13:23:17 1991 James Clark (jjc at jclark) - - * pic/pic.h: Include <osfcn.h>. - - * ps/ps.c: Add declaration of mktemp. - - * Makefile: Add -DHAVE_UNION_WAIT option for CPPDEFINES. - * groff.c: If HAVE_UNION_WAIT is defined, declare wait()'s - argument as union wait *. - (run_commands): If HAVE_UNION_WAIT is defined cast wait()'s - argument to union wait *. - -Sat Jan 26 12:04:52 1991 James Clark (jjc at jclark) - - * tty/tmac.tty: Add definition of \(co. - - * pic/object.c (make_arc): Only increase radius when radius - strictly less than d. - (arc_object::update_bounding_box): May need to add 4.0 to end_quad - more than once. - - * troff/env.c (environment::environment(symbol), - environment::environment(const environment *)): Initialize - input_trap_count. - -Sat Jan 19 08:18:35 1991 James Clark (jjc at jclark) - - * tbl/main.c (main): Add exit(0). - - * ps/ps.c (ps_printer::~ps_printer): Use fseek instead of rewind. - - * pic/main.c (main): - * eqn/main.c (main): - * tbl/main.c (main): - * etc/soelim.c (main): - * driver/printer.c (printer::~printer): - * troff/node.c (real_output_file::~real_output_file, - real_output_file::flush): Check for errors on stdout. - - * most files: Add 1991 to copyright notice. - - * macros/tmac.s: Don't test \n(.x and \n(.y. - - * troff/input.c (token::next): Rename `escape_char' label to - `handle_escape_char' and `normal_char' label to - `handle_normal_char'. - -Thu Jan 17 15:46:35 1991 James Clark (jjc at jclark) - - * groff.c (main, synopsis, help): Support -a option. - * groff.sh: Likewise. Also eliminate Zflag variable by adding -z - to trflags while parsing options. - -Tue Jan 15 13:07:27 1991 James Clark (jjc at jclark) - - * troff/number.c (parse_term): With `m', `M' and `n' scale - indicators, convert scale factor to hunits before scaling. - -Mon Jan 14 12:39:12 1991 James Clark (jjc at jclark) - - * lib/font.c (scale_round): Better test for overflow when n is - negative. - -Thu Jan 10 11:10:56 1991 James Clark (jjc at jclark) - - * tbl/main.c (process_format): Add second argument of type - options*. Change callers. Allow opt->tab_char as well as '\t' - between format items. - -Mon Jan 7 12:30:18 1991 James Clark (jjc at jclark) - - * macros/tmac.an (PD): With no arguments, make sure register PD is - at least \n[.V]. - (TH): Call PD with no argument, instead of setting register PD - directly. - -Sun Jan 6 11:18:39 1991 James Clark (jjc at jclark) - - * Version 1.00 released. - -Sat Jan 5 08:44:30 1991 James Clark (jjc at jclark) - - * ps/tmac.ps, xditview/tmac.X: Add font translation of C to CR. - - * dvi/devdvi/DESC: Mount CW instead of CR. - - * dvi/tmac.dvi: Add definition of \(tm. - - * dvi/devdvi/texsy.map: Add lh, and rh. - * dvi/devdvi/texex.map: Add lt, rt, lb, rb, lk, rk. - * dvi/devdvi/texmi.map: Add *o. Regenerate fonts. - - * dvi/devdvi/FontMakefile: Generate H from cmss10. - * dvi/devdvi/Makefile: Install H. - * dvi/devdvi/H: New file. - -Fri Jan 4 15:04:57 1991 James Clark (jjc at jclark) - - * troff/env.c (vertical_spacing): Don't allow vertical spacing to - be 0. - -Thu Jan 3 13:41:19 1991 James Clark (jjc at jclark) - - * macros/tmac.s (@EN): Add \n(.V to the argument to ds@need. - - * macros/tmac.pic (PS): Avoid attempting to set negative indent. - - * macros/tmac.s (@EN): Handle the case where the equation is empty - but the label is not. - -Wed Jan 2 10:31:44 1991 James Clark (jjc at jclark) - - * troff/groff.h: New warning category WARN_SPACE. - * troff/input.c: Add WARN_SPACE to DEFAULT_WARNING_MASK. Add - WARN_SPACE to warning_table. - (interpolate_macro): Give a warning of type WARN_SPACE if the name - is longer than two characters and is not defined, but the first - two characters do make a defined name. - - * PROBLEMS: New file. - - * CHANGES: New file. - * README-0.6, README-1.00: Deleted. - - * groff.c, groff.sh: Add X75-12 and X100-12 devices. - * xditview/devX75/Makefile: Make devX75-12. - * xditview/devX100/Makefile: Make devX100-12. - - * xditview/devX100/eqnchar, xditview/devX75/eqnchar, - dvi/devdvi/eqnchar, ps/devps/eqnchar: Remove use of \R. - -Tue Jan 1 19:24:01 1991 James Clark (jjc at jclark) - - * README-0.7: Rename to README-1.00. - - * macros/tmac.pic: New file. - * macros/Makefile (install.nobin): Install tmac.pic. - -Mon Dec 31 10:40:53 1990 James Clark (jjc at jclark) - - * troff/env.c (hyphen_word): Correct the test for whether the - token is a hyphen. Reset npos to 0. - - * macros/tmac.s (par@sup-start, par@sup-end): New implementations. - -Sun Dec 30 15:53:13 1990 James Clark (jjc at jclark) - - * macros/tmac.s (ds*common-end): Call par*reset. - (PE): Likewise. - (par@reset-indent): Deleted. - - * macros/tmac.s (@IP): Divert the label. - -Sat Dec 29 14:33:32 1990 James Clark (jjc at jclark) - - * xditview/draw.c (setGC): Use a line width of .1m rather than - .04m by default; round rather than truncate value. - - * tbl/table.c (class empty_entry): New class. - (empty_entry::empty_entry, empty_entry::line_type): New functions. - (table::add_entry): Represent empty entries by objects of type - empty_entry. - (table_entry::line_type): Return -1. - (table::determine_row_type): Ignore entries with line_type 0. - Treat type -1 as non-lines. - -Fri Dec 28 15:04:41 1990 James Clark (jjc at jclark) - - * ps/devps/textmap, xditview/libXdvi/DviChar.c, tty/devlatin1/R.proto, - macros/tmac.s: Rename \(-d to \(Sd. - -Thu Dec 27 12:35:47 1990 James Clark (jjc at jclark) - - * ps/devps/textmap: Add `sd', `/_' and `3d' characters. - * xditview/libXdvi/DviChar.c: Likewise. - * dvi/devdvi/texsy.map: Add `<<', `>>'. - -Wed Dec 26 13:33:23 1990 James Clark (jjc at jclark) - - * troff/div.c (top_level_diversion::begin_page): Call - init_output() if the_output is 0. - -Sat Dec 22 12:35:29 1990 James Clark (jjc at jclark) - - * troff/input.c: Replace ESCAPE_E by ESCAPE_e and ESCAPE_C by - ESCAPE_c. - (get_copy): Turn \E into ESCAPE_E. - (token::process, asciify): Handle ESCAPE_E. - - * macros/tmac.s (ds*common-end, par@reset): Add `.rj 0'. - (RD): New macro. - (DS): Implement `.DS R'. - -Fri Dec 21 11:41:53 1990 James Clark (jjc at jclark) - - * macros/tmac.s (FS): New macro. - - * macros/tmac.s (fn@do-FS): Use @LP instead of LP. - - * macros/tmac.s (cov*tl-init): Remove after first execution - instead of aliasing to @nop. Call top of page macro explicitly - instead of setting trap; call @init first. Set pg@top as top of - page macro. - (cov*auto-init): Deleted. Set cov*tl-init instead of - cov*auto-init as top of page trap. - (TL, LP): Do a break instead of calling cov*tl-init. - (cov*print): With RP format but no TL, alias FS and FE to @FS and - @FE; in this case also give a warning and always start another - page. No need to set pg@top here. - (cov*tl-init): Rename to cov*first-page-init. - - * macros/tmac.s (RP): Do `.pn 0'. - (cov*tl-init): With RP format don't do `.pn 0'. - - * macros/tmac.s (pg@cs-top): Set no space mode. - - * macros/tmac.s (par@TL, par@AU, par@AI): New macros. - (cov*ab-init): Alias TL, AU and AI to these. - -Thu Dec 20 10:10:50 1990 James Clark (jjc at jclark) - - * macros/tmac.s (@EQ): Move the space before the equation into @EN - (@EN): Do nothing unless \n[dl] is > 0. - -Tue Dec 18 12:20:47 1990 James Clark (jjc at jclark) - - * pic/object.c (ellipse_object::radius): New function. - - * VERSION: Change version to 0.7. - - * tbl/table.c (block_entry::do_divert): Declare return type as - void. - (block_entry::divert, alphabetic_block_entry::divert): Return 1. - -Mon Dec 17 12:30:34 1990 James Clark (jjc at jclark) - - * troff/column.c: New file. - * troff/Makefile: Corresponding changes. - - * troff/hvunits.c (scale(vunits, vunits, vunits)): New function. - Friend of vunits. - - * troff/div.c (top_level_diversion::space): If the space causes - the first-page transition and springs a trap, truncate the space - to 0. - -Fri Dec 14 12:30:02 1990 James Clark (jjc at jclark) - - * ps/ps.c (ps_printer::do_import): Add a `clear' after including - the document. - - * pic/troff.c (troff_output::line_thickness, - troff_output::set_fill): Do a horizontal motion to compensate for - the width of the \D escape sequence. - -Thu Dec 13 10:17:14 1990 James Clark (jjc at jclark) - - * xditview/tmac.X: Reinstate definition of \(rn, but only for X100 - (not X75). - - * eqn/sqrt.c (sqrt_box::compute_metrics): Supply missing argument - to printf. - - * tbl/table.c (simple_entry::simply_print): Don't declare as pure. - Supply empty definition. - (text_entry::simple_print, simple_text_entry::simple_print): - Delete declarations. - (table::add_entry): Represent empty entries by objects of type - `simple_entry'. - -Wed Dec 12 08:50:48 1990 James Clark (jjc at jclark) - - * troff/Makefile: Remove -DHYPHEN_CONTROL from DEFINES. - - * tbl/table.c (left_text_entry::add_tab): New function. - - * macros/tmac.s: Make @RT an alias for par@reset. Make RT - initialize like LP. - -Mon Dec 10 11:19:55 1990 James Clark (jjc at jclark) - - * troff/env.c (environment::start_field): Give an error message if - there is no next tab. - -Sun Dec 9 11:46:40 1990 James Clark (jjc at jclark) - - * troff/env.c (hyphenate): Skip initial elements with zero - hyphenation code. - - * macros/tmac.s (par@init): Keep VS in points rather than units. - -Sat Dec 8 23:00:27 1990 James Clark (jjc at jclark) - - * pic/main.c (main): Implement `-c' option. - * pic/output.h: Declare make_tpic_output(). - * pic/tex.c (tex_output::set_pen_size): Make it virtual and - protected. - (tpic_output): New class. - (tpic_output::tpic_output, tpic_output::set_pen_size, - tpic_output::command, make_tpic_output): New functions. - -Fri Dec 7 11:57:41 1990 James Clark (jjc at jclark) - - * tbl/main.c (main): Call `.ab' if \n(.g is false. Define TS/TE - if they're not already defined. - * tbl/table.c (init_output): Don't test \n(.g. - - * troff/input.c (do_if_request): Delete `g' condition. Recognize - `d', `r' and `c' conditions even in compatibility mode. - -Tue Dec 4 09:13:47 1990 James Clark (jjc at jclark) - - * ps/tmac.ps (ps-bb): Protect against negative numbers in bounding - box. - -Mon Dec 3 07:18:26 1990 James Clark (jjc at jclark) - - * troff/env.h (environment::prev_line_interrupted): New member. - (environment::get_prev_line_interrupted): New function. - * troff/env.c (environment::newline): Set prev_line_interrupted. - (environment::environment(const environment *), - environment::environment(symbol)): Initialize - prev_line_interrupted. - * troff/input.c (process_input_stack): Don't give special - treatment to space and newline at the beginning of the line if the - previous line was interrupted. - -Sat Dec 1 15:48:37 1990 James Clark (jjc at jclark) - - * eqn/eqn.y: Disallow PRIME by itself. - * eqn/lex.c (token_table): Bind `opprime' instead of `prime' to - PRIME. - (def_table): Remove definition of '. Define prime to be `. - - * eqn/eqn.y: Split off part of rule `script' into a new rule - `nonsup'. - -Fri Nov 30 10:23:44 1990 James Clark (jjc at jclark) - - * macros/tmac.s ({, }): New string aliases. - -Thu Nov 29 11:34:40 1990 James Clark (jjc at jclark) - - * README-0.7: New file. - -Wed Nov 28 10:09:57 1990 James Clark (jjc at jclark) - - * macros/tmac.s: New file. - * man/groff_ms.man: New file. - * Makefile: Add definition of TMAC_S. Pass TMAC_S in SUBFLAGS. - * Makefile.bd: Similarily. - * man/Makefile: Add groff_ms.n to MAN7PAGES. Replace @TMAC_S@. Add - definition of TMAC_S. - * macros/Makefile: Add definition of TMAC_S. Install tmac.s. - * macros/TODO: New file. - -Sat Nov 24 20:04:54 1990 James Clark (jjc at jclark) - - * troff/env.c (right_justify): New function. - (init_env_requests): Bind this to request "rj". - (center_lines): Set right_justify_lines to 0. If we get a bad - integer, center 1 line. - (environment::environment(symbol), environment::environment(const - environment *)): Initialize right_justify_lines. - (environment::get_right_justify_lines): New function. - (init_env_requests): Bind this to number_register ".rj". - - * troff/env.c (environment::choose_breakpoint): Implement - hyphenation_margin and hyphenation_space. - (environment::get_hyphenation_space, - environment::get_hyphenation_margin): New functions. - (init_env_requests): Bind these to .hys and .hym. - (hyphenation_space_request, hyphenation_margin_request): New - functions - (init_env_requests): Bind these to hys and hym. - (environment::environment(symbol), environment::environment(const - environment *)): Initialize hyphenation_margin and - hyphenation_space. - * troff/env.h: Corresponding changes to class environment. - -Fri Nov 23 09:08:16 1990 James Clark (jjc at jclark) - - * troff/div.c (blank_line): Always do a break. - - * eqn/box.c (do_text): Turn off escapes while appending text to - string. - -Thu Nov 22 10:58:59 1990 James Clark (jjc at jclark) - - * troff/input.c (while_break_request, while_continue_request): New - functions. - (init_input_requests): Bind these to "break" and "continue". - (while_depth, while_break_flag): New variables. - (while_request): Update while_depth. Break out of loop if - while_break_flag is set. - -Wed Nov 21 10:54:40 1990 James Clark (jjc at jclark) - - * tbl/table.c (init_span_reg): Initialize span_width_reg to \n(.H - rather than 0. - -Mon Nov 19 00:45:03 1990 James Clark (jjc at jclark) - - * Makefile: Include -DBROKEN_SPOOLER by default. Expand comment. - - * stringify: New file. - * Makefile (groff.o): Use stringify. - - * xditview/tmac.X: Remove definition of \(rn. - * xditview/libXdvi/DviChar.c: Remove radicalex from - Adobe_symbol_map. - -Sat Nov 17 10:44:58 1990 James Clark (jjc at jclark) - - * tbl/table.c (table::add_entry): Allow alphabetic text blocks. - (alphabetic_block_entry::alphabetic_block_entry, - alphabetic_block_entry::divert, alphabetic_block_entry::print): - New functions. - (block_entry::divert): Split off body into ... - (block_entry::do_divert): If the block is alphabetic, subtract 2n - from the line length; also update the span width to dl+2n, and the - alphabetic span width to dl. - - * driver/input.c (do_file): While reading argument to D command, - when expanding buffer, multiply szp by sizeof(int) rather than 2 - in the argument to memcpy. - - * tbl/table.c (compute_span_width): Add 2n rather than 1n to the - width of alphabetic columns. - -Fri Nov 16 06:34:27 1990 James Clark (jjc at jclark) - - * troff/node.c (lookup_family): Supply second argument to lookup. - - * troff/dictionary.c (dictionary::lookup): After an unsuccesful - search, return immediately if v is 0. - - * pic/troff.c: Define EQN_NO_EXTRA_SPACE_REG. - (troff_output::start_picture): Set this reg. - (troff_output::end_picture): Remove this reg - * eqn/box.c (box::extra_space): Don't produce `\x's if - EQN_NO_EXTRA_SPACE_REG is defined. - - * eqn/eqn.y: Allow just a PRIME to be a `simple'. - * eqn/text.c (split_text): Map ' to \(fm when it's the first - character. - -Thu Nov 15 10:35:06 1990 James Clark (jjc at jclark) - - * macros/tmac.e: Use font 3 instead of B in $c. Remove `bd' - requests. - - * troff/div.c (top_level_diversion::top_level_diversion): - Initialize page_number to 0. - -Wed Nov 14 21:41:58 1990 James Clark (jjc at jclark) - - * groff/troff (environment::environment(const environment *)): - Initialize name to e->name, rather than "anonymous". - -Sat Nov 10 01:59:37 1990 James Clark (jjc at jclark) - - * xditview/libXdvi/Dvi.c (ShowDvi): If eof is encountered, reset - requested_page. Split middle part into ... - (FindPage): New function. - (SetValues): If we don't yet know the last page, and the requested - page is greater than the current page, call FindPage. - Update the font_map_string before doing this. - - * xditview/tmac.X: Add definitions of \(sq, \(ga, \(dg and \(dd. - Translate \(lh and \(rh into left and right double arrows. - - * troff/node.c (class hyphen_inhibitor_node): New class. - (hyphen_inhibitor_node::hyphen_inhibitor_node, - hyphen_inhibitor_node::copy, hyphen_inhibitor_node::same, - hyphen_inhibitor_node::type, - hyphen_inhibitor_node::get_hyphenation_type): New functions. - (node::add_discretionary_hyphen): Use hyphen_inhibitor_node rather - than dbreak_node(0, 0) to represent a `\%' at the beginning of a - word. - -Fri Nov 9 16:05:38 1990 James Clark (jjc at jclark) - - * troff/node.h (dummy_node::get_hyphenation_type, - transparent_dummy_node::get_hyphenation_type): Declare them. - * troff/node.c: (dummy_node::get_hyphenation_type, - transparent_dummy_node::get_hyphenation_type): New functions. - -Wed Nov 7 10:09:06 1990 James Clark (jjc at jclark) - - * xditview/libXdvi/draw.c: If M_PI not defined after including - math.h, then define it. - - * xditview/Makefile: Add definition of AR. Pass it to the submake - in libXdvi. - * xditview/libXdvi/Makefile: Add definitions of AR and RANLIB. - -Tue Nov 6 10:14:27 1990 James Clark (jjc at jclark) - - * troff/dictionary.h (object_dictionary::alias): Declare return - value as int. - * troff/dictionary.c (object_dictionary::alias): Return non-zero - if the old name was defined. - * troff/input.c (alias_macro): Give a warning if the old name was - not defined. - * troff/reg.c (alias_reg): Likewise. - -Mon Nov 5 00:31:39 1990 James Clark (jjc at jclark) - - * troff/input.c (token::next): Delete implementation of \R. - - * macros/Makefile: Strip comments from tmac.e while installing it. - - * troff/input.c: New variable `nroff_mode'. - (troff_request, nroff_request): New functions. - (init_input_requests): Bind `troff' and `nroff' to troff_request - and nroff_request. - (do_if_request): Compute results of t and n conditions from - nroff_mode. - - * text/text.c (split_text): Fix typo in >=. - - * eqn/lex.c: Add definition of `==' to def_table. - -Fri Nov 2 02:49:09 1990 James Clark (jjc at jclark) - - * pic/tex.c (tex_output::start_picture): Change the definitions of - \graph and \graphtemp so that they work properly with Plain TeX. - - * pic/tex.c (tex_output::solid_arc): Ensure that the second angle - argument to `ar' is not less than the first. - - * pic/pic.y: Allow a comma between elements of the variable list - in the argument to `reset'. - - * pic/object.c (arc_object::arc_object): Fix computation of - radius. - - * eqn/main.c (main): Add exit(0). - -Thu Nov 1 02:03:50 1990 James Clark (jjc at jclark) - - * troff/div.c (begin_page): Test no_space_mode after doing the - break, but still push the page ejector cookie before doing the - break. Also set the next page number after doing the break. - - * xditview/xditview.c (NewFile): Don't set the title and icon name - if this is the first file and its name is `-'. - * groff/groff.c: Define a new device flag XT_OPTION. Set it for - the X75 and X100 devices. - (main): If a device has the XT_OPTION flag set and there's exactly - one file argument, pass the driver -xrm and -title options to set - the icon name and window title to the name of the file. - - * troff/env.c (environment_switch): If there was an argument but - it wasn't a valid number or name, then pop an environment but - don't give an error message on underflow. - - * troff/number.c (start_number): Correct spelling in error message. - - * troff/input.c (token::delimiter): Don't print an error message - if err is false. - - * xditview/libXdvi/parse.c (ParseInput): In case 'D', only call - ParseDrawFunction if dw->display_enable is true. - -Wed Oct 31 05:49:50 1990 James Clark (jjc at jclark) - - * pic/pic.y: Parse text positioning like normal attributes, so as - to allow `"text" at 0,0 ljust'. Don't allow `center' as a - positioning attribute. - -Mon Oct 29 22:50:38 1990 James Clark (jjc at jclark) - - * tbl/main.c (process_data): When in state START while reading a - text block, don't change to state MIDDLE if c is a newline. - -Sun Oct 28 21:59:56 1990 James Clark (jjc at jclark) - - * dvi/dvi.c (dvi_printer::begin_page): Rename `i' variable to `j' - so as to avoid shadowing parameter. - -Wed Oct 24 18:35:39 1990 James Clark (jjc at jclark) - - * tbl/table.c (trim_space): Deleted. - (table::add_entry): Don't call trim_space. - -Mon Oct 22 03:48:39 1990 James Clark (jjc at jclark) - - * VERSION: Change version to 0.6. - - * troff/number.c (parse_expr): Make == work. - -Sat Oct 20 11:28:17 1990 James Clark (jjc at jclark) - - * man/grog.man: New file. - * man/Makefile: Add grog.n to MAN1PAGES. - * etc/grog.sh: New file. - * etc/Makefile: Install grog.sh as grog. - -Fri Oct 19 11:17:15 1990 James Clark (jjc at jclark) - - * troff/input.c (token::next): Implement \E. - -Thu Oct 18 11:56:24 1990 James Clark (jjc at jclark) - - * xditview/tmac.X: Change font translations to match tmac.ps. - - * troff/input.c (non_empty_name_warning): Don't give a warning if - `\{' terminates the name. - -Tue Oct 16 10:04:23 1990 James Clark (jjc at jclark) - - * ps/devps/symbol.diff: New file. - * ps/devps/FontMakefile: Mention symbol.diff. - -Sun Oct 14 11:46:46 1990 James Clark (jjc at jclark) - - * troff/node.c (font_position): Use get_long_name to read the - external_name. - - * troff/env.c (environment_switch): If we get a number that's < 0 - or >= NENVIRONMENTS, treat it like a name. - Change NENVIRONMENTS to 10. - - * troff/groff.h: Remove definition of FONTS_MAX. - * troff/node.h (class font_family): Make map a pointer instead of - an array. Add a map_size member. Make it a class. Make nm const - and public. Make invalidate_fontno a friend. - * troff/node.c: Define font_table_size. Make font_info a pointer - rather than an array. - (class troff_output_file): Allocate font_position dynamically. Add - nfont_positions member. - (troff_output_file::set_font): Grow font_position if necessary. - (troff_output_file::~troff_output_file): Delete font_position. - (troff_output_file::troff_output_file): Allocate font_position. - (grow_font_table): New function. - (troff_output_file::really_begin_page, - troff_output_file:really_copy_page): Use nfont_positions rather - than FONTS_MAX. - (mount_font_no_translate, mount_style): Call grow_font_table if - necessary. - (font_family::font_family): Allocate map. - (font_family::make_definite): Grow map if necessary. Use - font_table_size instead of FONTS_MAX. - (font_family::~font_family): New function. - (invalidate_fontno): Use font_family::map_size. - (get_fontno, env_space_width, env_half_narrow_space_width, - env_narrow_space_width, symbol_fotno, is_good_fontno, - get_bold_fontno, make_glyph_node): Use font_table_size rather than - FONTS_MAX. - (next_available_font_position): Never return 0. - -Fri Oct 12 10:17:52 1990 James Clark (jjc at jclark) - - * ps/tmac.ps: Add font translations for compatibility with dpost. - -Thu Oct 11 12:09:03 1990 James Clark (jjc at jclark) - - * eqn/pile.c: Rename default_baseline_sep to baseline_sep. - Move BASELINE_SEP_FORMAT and COLUMN_WIDTH_FORMAT into pbox.h. - Move definitions baseline_sep, shift_down, column_sep, - matrix_side_sep into... - * eqn/box.c: Add them to param_table. - * eqn/pbox.h: Add declarations to pbox.h. - - * troff/input.c (set_string): Cast value to unsigned char *. - - * troff/token.h (process_input_stack): Declare it static before - declaring it a friend. - -Wed Oct 10 09:59:13 1990 James Clark (jjc at jclark) - - * dvi/devdvi/texex.map: Fix positions of extensible brace middle - and bottom. - * dvi/devdvi/EX: Regenerate. - - * troff/input.c (init_charset_table): Make ", ', ), ], *, \(dg - transparent. - -Tue Oct 9 08:34:02 1990 James Clark (jjc at jclark) - - * eqn/lex.c: In defaults_table, make definition of `dot' call - `dot_def'. Don't explicitly make it roman. Similarily for other - accents. - - * pic/lex.c (for_input::for_input): Add by_is_multiplicative - argument. - (for_input::get, for_input::peek): Use this. - (do_for): Add by_is_multiplicative argument. - * pic/pic.y: Change optional_by clause to allow '*' after `by'. - Change semantic value of optional_by to be a double plus a flag - saying whethet the by clause is multiplicative. - - * eqn/lex.c (get_delimited_text): Remember location of start of - definition. Improve error handling when EOF is encountered. - - * lib/font.h: Rename handle_x_command to - handle_unknown_font_command. - * lib/font.c (font::load): Call handle_unknown_font_command for - any unknown command in the font description file. Don't call - handle_x_command. Include the name of the command in the argv. - Improve message for unknown command after kernpairs or charset - command. - * ps/ps.c (ps_font::handle_x_command): Rename to - handle_unknown_font_command. Remove message about `x download' - command. Give error message for wrong number of arguments. - * ps/devps/afmtodit: Generate `encoding' instead of `x encoding'. - * dvi/dvi.c (dvi_font::handle_x_command): Rename to - handle_unknown_font_command. Give an error message for wrong - number of arguments. Rename design_size to designsize. - * dvi/tfmtodit.c (main): Generate `checksum' instead of `x - checksum', `designsize' instead of `design_size'. - -Mon Oct 8 00:38:55 1990 James Clark (jjc at jclark) - - * eqn/*.[chy]: Change underaccent to uaccent. - - * eqn/eqn.y: Add rule for underaccent. Declare UNDERACCENT token; - give it the same precedence as ACCENT. - * eqn/other.c (make_underaccent_box): New function. - * eqn/box.h: Declare it. - * eqn/lex.c: Add UNDERACCENT to token_table. Add utilde to - def_table. - -Sun Oct 7 11:25:16 1990 James Clark (jjc at jclark) - - * pic/pic.y (reset_all): New function. Called in rule for RESET. - (parse_init): Call reset_all. - (define_variable): When defining scale reset only those - pre-defined variables that are scaled. - (defaults_table): Add `scale' as non-scaled value. - - * pic/pic.y: Redo parsing of text adjustments: parse adjustments - together with the text; allow any number of positioning words; - allow center as a positioning word. - - * pic/object.c (output::compute_scale): Get picture maximum height - and width from variables called maxpswid and maxpsht. - * pic/pic.y: Add maxpswid and maxpsht to defaults_table. - -Sat Oct 6 10:16:56 1990 James Clark (jjc at jclark) - - * pic/object.c (object_spec::make_text): Multiply textht by number - of text items. - - * pic/pic.y: Allow `sprintf("string", expr,...)' wherever text can - occur. - (do_sprintf): New function. - (pic.gperf): Add sprintf token. - (text, sprintf): New rules. - - * pic/pic.y: `rand()' with no arguments returns a random number - in the range [0,1). - - * pic/pic.y: Allow a bare expression to be an attribute: change - precedences to support this. Change optional_ordinal rule to - optional_ordinal_last to avoid reduce/reduce conflict. - * pic/object.c (object_spec::object_spec): Initialize direction. - - * pic/pic.y: Implement ^ operator meaning exponentiation. - - * troff/node.h: Add default argument to mount_font. - * troff/node.c (font_position): Read an optional third argument - giving the external_name. - (mount_font): Add optional argument giving the external_name. - (mount_font_not_translate): Have additional argument giving - external name. Use this name to load the font. Pass both names - to font_info::font_info. - (font_info::font_info): Have additional argument giving - external_name. - (class tfont): New member external_name. - (font_info::get_tfont): Use external name to construct tfont_spec. - -Fri Oct 5 04:03:13 1990 James Clark (jjc at jclark) - - * eqn/lex.c (init_table): Add argument giving device. Define - name of device to be "1". - (do_ifdef): Counts as true if the argument has been defined with - `define'. - * eqn/main.c (main): Call init_table with device argument. Make - device local to main. - * eqn/eqn.h: Change declaration of init_table. Remove declaration - of device. - - * pic/lex.c (get_delimited): Allow text to be delimited by - matching {}s. Don't recognize ending delimiter within a string. - - * troff/input.c (get_delim_name): New function. - (token::next): Implement \C. - - * lib/font.c (font::load): Grok ---. Add an alias for each - character based on its code. - (font::get_code_width): Deleted. - * lib/font.h (class font): Declare font::number_to_index(). - Remove declaration of font::get_code_width. - * lib/nametoindex.c (font::name_to_index): Add 512 rather than 256 - to indices of named characters. - (font::number_to_index): New function. - * troff/input.c (font::number_to_index): New function. - (get_charinfo_by_number, charinfo::get_number, - charinfo::set_number): New functions. - (token::next): Turn \N into a TOKEN_NUMBERED_CHAR. - (token::process, token::description, token::get_char, - token::add_to_node_list, token::operator==): Handle - TOKEN_NUMBERED_CHAR. - * troff/charinfo.h: Declare get_charinfo_by_number, - charinfo::get_number, charinfo::set_number. Add NUMBERED flag to - charinfo class. - (charinfo::numbered): New function. - * troff/token.h: Add TOKEN_NUMBERED_CHAR. - * troff/env.h (class environment): Remove declaration of ... - * troff/env.c (environment::make_numbered_char_node): Deleted. - * troff/node.c (make_numbered_node): Deleted. - (class numbered_glyph_node): Remove. - (troff_output_file::put_char_width, troff_output_file::put_char): - Handle numbered chars. - (troff_output_file::numbered_char): Removed. - (tfont::get_code_width): Removed. - (make_glyph_node): Don't search special fonts for numbered - characters. - * troff/node.h: Remove declaration of make_numbered_node. - * driver/input.c (do_file): Handle N command. - * driver/printer.h: Add declaration of ... - * driver/printer.c (printer::set_numbered_char): New function. - * dvi/tfmtodit.c (main): Generate unnamed entries. - * ps/devps/afmtodit: Likewise. - * xditview/xtotroff.c (MapFont): Likewise. - * xditview/libXdvi/parse.c (ParseInput): Grok N command. - - * tbl/main.c (process_format): If multiple widths are specified - for a column but all the widths are the same, don't give an error - message. - - * tbl/table.c (table::do_row): If the current row is all lines and - the stuff doesn't contains a line, mark the top of the row after - printing stuff before the row. If the current row is not all - lines and the stuff doesn't contain a line, don't unnecessarily - mark the top of the row before printing the stuff. - -Mon Oct 1 11:42:00 1990 James Clark (jjc at jclark) - - * troff/groff.h: Remove MAX_PATH. - * troff/input.c (open_file): Dynamically allocate space for the - path. - (open_mac_file, process_macro_file): Corresponding changes. - -Sun Sep 23 18:56:26 1990 James Clark (jjc at jclark) - - * troff/node.h (class output_file): Make copy_file pure. Add - vspace method ifdef COLUMN. Add is_printing method. - * troff/node.c: Add class printing_reg. Add class - real_output_file. Derive other output_file classes from - real_output_file; in these classes rename begin_page to - really_begin_page, print_line to really_print_line, copy_file to - really_copy_file, transparent_char to really_transparent_char. - Move output_file::flush to real_output_file. Add printing member - to class output_file. - * troff/div.h: Remove printing member from top_level_diversion. - Add vspace member function to class diversion ifdef COLUMN. Add - some declarations ifdef COLUMN. - * troff/div.c (top_level_diversion::copy_file, - top_level_diversion::transparent_output, - top_level_diversion::output): Don't test printing member before - output. - * troff/input.c: Handle initial variable_space_request ifdef - COLUMN. - * troff/Makefile: Add column.c but comment it out. Add -DCOLUMN - but comment it out. - -Sat Sep 22 11:32:22 1990 James Clark (jjc at jclark) - - * troff/div.c (diversion::need): Make any space forced. If we - sprung a trap, set truncated_space to minus the distance to the - trap and set needed_space to the amount that was needed. - (top_level_diversion::space): A forced space turns no_space_mode - off. - (class constant_vunits_reg): New class. - (init_div_requests): Implement number registers .trunc and .ne - using constant_vunits_reg. - (class truncated_space_reg): Deleted. - - * troff/div.h: Don't have a no_space_mode member in diversion. - Instead have it in top_level_diversion. - * troff/div.c (diversion::diversion): Don't initialize - no_space_mode. - (top_level_diversion::top_level_diversion): Initialize - no_space_mode. - (no_space, restore_spacing): Do nothing if curdiv != topdiv. - (macro_diversion::output): Don't clear no_space_mode. - - * troff/input.c (diverted_space_node::reread): Don't call - environment::do_break. In fill mode, act like a blank line. - (diverted_copy_file_node::reread): Don't call - environment::do_break. - - * troff/div.c (blank_line): New function. - * troff/div.h: Declare it. - * troff/input.c (process_input_stack): Call it. - - * troff/div.c (truncated_space_reg::get_string): New function. - (init_div_requests): Bind to .trunc. - (space_request, top_level_diversion::space, - top_level_diversion::output, macro_diversion::space, - macro_diversion::output): Update truncated_space. - (macro_diversion::output): Redo calculations when trap sprung. - (macro_diversion::output, macro_diversion::space): No need for - trap_flag. - - * troff/div.c (top_level_diversion::output): Set nl_reg_contents - after truncating post line spacing. - -Fri Sep 21 11:27:25 1990 James Clark (jjc at jclark) - - * ps/devps/prologue (MF, SF): Make them work even if setfont is - defined as a procedure rather than as an operator. - -Thu Sep 20 12:55:05 1990 James Clark (jjc at jclark) - - * troff/div.c (macro_diversion::space): Ignore no_space_mode. - -Wed Sep 19 10:54:37 1990 James Clark (jjc at jclark) - - * troff/div.c (top_level_diversion::output): Merge - output_file::print_line and output_file::end_of_line member - functions. - * troff/div.h (class output_file): - * troff/node.c (troff_output_file::print_line, - troff_output_file::end_of_line, output_file::end_of_line, - ascii_output_file::print_line, suppress_output_file::print_line): - Corresponding changes. - -Tue Sep 18 11:31:47 1990 James Clark (jjc at jclark) - - * troff/input.c (token::next): Don't give a warning for `\.'. - - * troff/env.c (environment::get_center_lines): New function. - (init_env_requests): Bind number register .ce to it. - * troff/env.h: Declare it. - * tbl/table.c (table::init_output): Define reset macro to restore - .ce. If center option not given, store .ce in SAVED_CENTER_REG. - Then do .ce 0. - (table::print): If center option not given, then imply center - option if SAVED_CENTER_REG > 0. - -Mon Sep 17 09:19:19 1990 James Clark (jjc at jclark) - - * ps/devps/Makefile: Remove T from FONTS. Remove TSymbol.ps and - Troff.ps from DOWNLOAD. - - * troff/Makefile: Change comment in DEFINES to avoid confusing - System V make. - - * ps/ps.c (ps_printer::do_exec): Allow newlines within PostScript - code. Don't try to catch errors with stopped. - (check_line_lengths): New function. - * ps/devps/prologue (EXEC): Deleted. - (EBEGIN, EEND): New procedures. - -Sun Sep 16 14:51:15 1990 James Clark (jjc at jclark) - - * troff/input.c: Include request.h before node.h. - * troff/node.c: Likewise. - * troff/env.c: Likewise. - * troff/div.c: Likewise. - * troff/node.h (class special_node): Store argument as a macro - rather than a char *. - * troff/node.c (special_node::special_node, special_node::copy): - Grok this. - (special_node::~special_node): Deleted. - (special_node::tprint): Deleted. - (special_node::tprint_start, special_node::tprint_end, - special_node::tprint_char): New functions. - (troff_output_file::special): Deleted. - (troff_output_file::start_special, troff_output_file::end_special, - troff_output_file::special_char): New functions. - * troff/input.c (special_node::tprint): New function. - (do_special): Use macro not char *. - (do_transparent_macro): Deleted. - (token::next): Don't call do_transparent_macro. - - * troff/input.c (token::next): Add 'Y' case. - (do_transparent_macro): New function. - * troff/node.c (troff_output_file::special): Handle newlines with - argument using new continuation convention. - * driver/input.c (get_string): Cope with continuation convention. - (do_file): Don't call skip_line after calling get_string(1). - * ps/ps.c (ps_printer::special, ps_printer::do_import, - ps_printer::do_def, ps_printer::do_exec): Cope with newlines in - arg. - * xditview/libXdvi/parse.c (ParseInput): Ignore lines starting - with +. - -Sat Sep 15 19:00:10 1990 James Clark (jjc at jclark) - - * troff/input.c (asciify): By default, illegal input characters - should return empty string. - - * troff/input.c (copy_file): Handle first page transition like title. - (token::next, process_input_stack): Grok COPY_FILE_REQUEST. - - * troff/input.c (token::next): Improve error message for EOF after - escape character. - (input_char_description): New function. - (get_char_for_escape_name): Use input_char_description. - (token::next): Warn about unrecognized escape sequences. - (warning_table): Add WARN_ESCAPE. - * troff/groff.h: Declare WARN_ESCAPE. Change WARN_TOTAL - accordingly. - - * troff/token.h: Remove declaration of process_input_stack. - - * troff/input.c: Remove declaration of init_hyphen_requests. - * troff/request.h: Correct spelling in declaration of same. - - * troff/input.c (token::next): Check whether escape_char is 0. - -Fri Sep 14 12:09:25 1990 James Clark (jjc at jclark) - - * groff.c (main, usage, help): Implement -P and -L options. - * groff.sh: Likewise. - - * troff/input.c (token::next): Use some gotos to avoid code - duplication. - - * troff/input.c (get_long_name, get_name, read_long_ecsape_name): - Avoid calling symbol::symbol if name empty. - -Thu Sep 13 06:21:45 1990 James Clark (jjc at jclark) - - * troff/input.c (init_input_requests): Make \n(.x return the major - version number and \n(.y return the minor version number. - * troff/Makefile: Construct file majorminor.c defining - major_version and minor_version automatically from ../VERSION. - - * troff/node.c (class glyph_node): Make operator new and operator - delete public. - (class ligature_node): Similarily. - - * troff/input.c (operator==(const macro &, const macro &)): New - function. - (non_interpreted_node::same): Use this. - (string_iterator::string_iterator): Make macro& argument const. - - * troff/input.c (input_iterator::get): New function. Don't make - asciify_macro or class non_interpreted_node friends of class - input_iterator. - (non_interpreted_node::interpret): Use input_iterator::get. - (asciify_macro): Likewise. - - * troff/input.c (~token_node, ~string_iterator, ~arg_list, - ~non_interpreted_node): Deleted. - * troff/node.c: (~suppress_output_file, ~ascii_output_file): - Deleted. - - * troff/symbol.h: Make all symbol member functions const. - - * lib/strtol.c: New file. - * lib/Makefile: Add strtol.c. - * Makefile: Define STRTOL as strtol.o to include strtol in - libgroff.a. - -Wed Sep 12 10:00:49 1990 James Clark (jjc at jclark) - - * pic/troff.c (troff_output::simple_circle): Divide by scale. - -Tue Sep 11 14:17:16 1990 James Clark (jjc at jclark) - - * troff/input.c (do_special): Use input_level. - - * troff/token.h (TOKEN_BACKSPACE): New token. - (token::backspace): New function. - * troff/input.c (token::description, token::next, token::process): - Grok TOKEN_BACKSPACE. - (do_special): Turn TOKEN_BACKSPACE back into \b. - - * troff/token.h (token::leader): New function. - * troff/input.c (do_special): Turn TOKEN_LEADER back into \001. - - * troff/input.c (do_special): Turn TOKEN_TAB back into \t. - - * troff/input.c (do_special): Use token::description in error - message. - -Mon Sep 10 11:06:27 1990 James Clark (jjc at jclark) - - * troff/input.c (decode_args): Combine quoted and - quote_input_level variables. Make it a for (;;) loop. - - * troff/input.c (get_char_for_escape_name): Check for \001 and \b. - - * troff/input.c (read_long_escape_name): The test for whether to - expand buffer was off by 1. - (read_string): Similarily. - -Fri Sep 7 11:45:50 1990 James Clark (jjc at jclark) - - * troff/input.c: Use `const int' rather than `static const int'. - - * troff/div.h (diversion::copy_file): Declare as pure virtual. - (macro_diversion::copy_file): New function. - * troff/node.h: New class diverted_copy_file_node. - * troff/node.c: Implement it. - * troff/input.c (copy_file): Use diversion::copy_file. Handle - first page transition by pushing a diverted_copy_file_node. - * troff/input.c (token::next, process_input_stack): Don't handle - COPY_FILE_REQUEST. - -Thu Sep 6 13:29:10 1990 James Clark (jjc at jclark) - - * ps/ps.c (flush_sbuf): Remember to add sbuf_kern when checking - whether space widths need adjusting. - - * troff/charinfo.h: Generalize translated_to_space to - special_translation so as to allow translation to \&. - * troff/input.c (translate): Allow translation to \&. - (charinfo::*): Corresponding changes. - * troff/node.c (make_node, node::add_char): Corresponding changes. - * troff/node.h (dummy_node::dummy_node): Allow optional first - argument. - - * lib/lib.h: Make codes 0200 to 0237 illegal input characters. - * troff/token.h: Remove TOKEN_TITLE. Remove token::title. Add - TOKEN_REQUEST. - * troff/input.c (token::next): Turn a TITLE_REQUEST into a - TOKEN_REQUEST with an argument of TITLE_REQUEST. - (token::process): Grok that. - * troff/input.c (copy_file): Handle first page transition like - title by pushing a COPY_FILE_REQUEST cookie. - (token::next, process_input_stack): Grok that. - * troff/node.h (output_file::copy_file): Add x and y arguments. - Make it non-pure. - * troff/div.c (top_level_diversion::copy_file): Supply them. - * troff/node.c (troff_output_file::copy_file): Add x and y - arguments; moveto specified position. Invalidate font_position - array after copying file. - (output_file::copy_file): New function. - (suppressed_output_file::copy_file, ascii_output::copy_file): - Removed. - * troff/input.c (transparent_file): New function. - (init_input_requests): Bind to "trf". - (token::next): Handle TRANSPARENT_FILE_REQUEST cookie. - (process_input_stack): Likewise. - - * troff/Makefile: Add ../lib/lib.h to GROFF_H. - - * troff/node.c (init_node_requests): New number registers .kern - pointing to global_kern_mode, and .lg pointing to - global_ligature_mode. - - * troff/node.c (ligature): Don't change it if we get a bad - integer. - - * troff/input.c (do_define_string): Don't strip tabs. - - * troff/input.c (asciify_macro): Make the string_iterator auto. - - * troff/node.c (init_font_requests): Rename to... - (init_node_requests): - * troff/node.h: Change declaration. - * troff/input.c (main): Change call. - - * troff/input.c (node::reread, diverted_space_node::reread): New - methods. - (process_input_stack): Call reread rather than - get_diverted_space_node. - * troff/node.c (node::get_diverted_space_node, - diverted_space_node::get_diverted_space_node): Removed. - * troff/node.h: Declare reread methods instead of - get_diverted_space_node methods. Make `n' member private. - * troff/input.c: (token::diverted_space): Removed. - * troff/token.h: Removed declaration. - - -Tue Sep 4 00:48:04 1990 James Clark (jjc at jclark) - - * eqn/script.c (script_box::compute_metrics): Don't let - SUP_RAISE_FORMAT become negative. - - * tbl/table.c (table::do_row): Entries that don't end in the - this row shouldn't make the row non-blank. - - * tbl/table.c (table::make_columns_equal): Only set the width of - columns which are marked as equal. - - * tbl/main.c (process_data): Before issuing excess data error, - if last character was a newline unget it; then get it again after - the error. Also include the contents of the entry in the message. - - * groff.c: New file. - * Makefile: Build groff from groff.c. Make it possible to use - either groff.sh or groff.c as groff. - * Makefile.bd: Similarily. - -Mon Sep 3 09:39:49 1990 James Clark (jjc at jclark) - - * groff.sh: Don't delay expansion of $@ in assignment to files. - Remove occurrences of \". - -Sun Sep 2 09:56:59 1990 James Clark (jjc at jclark) - - * all Makefiles: Simplify and rearrange. - - * Makefile: Handle fmod like malloc. - * lib/Makefile: Similarily. - * lib/fmod.c: Remove #ifdef NEED_FMOD. - - * Makefile: Rename OPTIMISE to OPTIMIZE. - - * groff.sh: Remove assignment to PATH. - * Makefile: Remove SHPATH variable. - * Makefile.bd: Similarily. - - * groff.sh: Add -V option to print the pipeline instead of - executing it. - -Fri Aug 31 00:56:46 1990 James Clark (jjc at jclark) - - * lib/font.c: Split off file searching into ... - * lib/fontfile.c: New file. - - * lib/strerror.c (strerror): Use `Error %d' for unknown errors. - -Thu Aug 30 13:13:55 1990 James Clark (jjc at jclark) - - * tbl/table.c (table::do_hspan): Delete assertion that e != 0. - Also change misleading comment. - (table::do_vspan): Change similarily misleading comment. - * tbl/main.c (process_data): A format row with an explicit `s' - uses up a data line, even if all the other columns are `_' or `='. - - * troff/input.c (token::description): Fix description of - TOKEN_DUMMY and TOKEN_EMPTY. - -Wed Aug 29 04:12:08 1990 James Clark (jjc at jclark) - - * groff.sh: Fix description of -Z in help message. - -Tue Aug 28 07:28:33 1990 James Clark (jjc at jclark) - - * pic/object.c (object_spec::make_object): Allow negative and zero - line thicknesses. - * pic/pic.y: Give linethick default value of -1.0. - * pic/troff.c (troff_output::troff_output): Initialize - last_line_thickness to BAD_THICKNESS. - (troff_output::finish_picture): Set thickness to BAD_THICKNESS. - (troff_output::line_thickness): Canonicalize negative thicknesses - to RELATIVE_THICKNESS. - * pic/tex.c (tex_output::set_pen_size): Silently map negative line - thicknesses to DEFAULT_PEN_SIZE. Canonicalize negative pen sizes - to -1.0. - (tex_output::start_picture): Set pen_size to -2.0. - - * ps/ps.c (ps_printer::set_line_thickness): If line_thickness is - 0, then use 0 linewidth. - (ps_printer::ps_printer): Initialize line_thickness to -1. - - * pic/troff.c (troff_output::simple_ellipse): Divide by scale. - - * ps/devps/symbolchars: Remove `or'. - * ps/tmac.ps: Implement \(or with .char. - - * ps/devps/symbolchars: Move most characters into textmap. - * ps/devps/textmap: Add names for troff bracket characters. Remove - ul, ru, br, bv. - - * ps/devps/TSymbol.ps: Removed. - * ps/devps/FontMakefile: Make S from Symbol not TSymbol. - * ps/tmac.ps: Do with .char what TSymbol did. - * ps/devps/download: Remove TSymbol. - - * ps/devps/T: Removed. - * ps/devps/Troff.ps: Removed. - * ps/devps/Troff.afm: Removed. - * ps/tmac.ps: Implement \(ru, \(ul, and \(br with .char. - * ps/devps/download: Remove Troff. - * ps/devps/FontMakefile: Remove T target. - * ps/devps/DESC-A4: Remove T from font list. - * ps/devps/DESC-letter: Likewise. - - * troff/input.c (macro_to_node): Rename to ... - (charinfo_to_node): Don't pass mac argument. Temporarily remove the - character's definition while processing it. - * troff/node.c (node::add_char, make_node): Change calls to - macro_to_node accordingly. - - * troff/input.c (token::next): Translate \_ to \(ul. - - * tty/devascii/R.proto: Add `|'. - * tty/devlatin1/R.proto: Likewise. - -Mon Aug 27 11:25:41 1990 James Clark (jjc at jclark) - - * man: Put the version number in all the man pages. - -Sun Aug 26 11:40:05 1990 James Clark (jjc at jclark) - - * Makefile.bd: New file. - * README.bd: New file. - - * VERSION: New file. - * lib/version.c: Removed. - * lib/Makefile: Create version.c from ../VERSION. Remove version.c - in clean target. - - * troff/input.c (main): Get hyphen_file from GROFF_HYPHEN - environment variable. - - * all Makefiles: Split install target into install.bin for - binaries, and install.nobin for everything else. - * Makefile: Add bindist target. - - * man/afmtodit.man: New file. - * man/Makefile: Add afmtodit.n to MAN1PAGES. - * ps/devps/Makefile: Add textmap to DEVICEFILES. Install afmtodit - in BINDIR. - * ps/Makefile: Pass BINDIR to make install in devps. - - * ps/ps.c (ps_printer::set_char): Do nothing if the character is - the space character. - - * ps/devps/FontMakefile: Rename symbol.afm to tsymbol.afm. - -Sat Aug 25 15:39:03 1990 James Clark (jjc at jclark) - - * ps/ps.c: Redo font downloading. - * ps/devps/download: New file. - * ps/devps/Makefile: Add download to DEVICEFILES. - * ps/devps/afmtodit: Remove -d option. - * ps/devps/FontMakefile: Don't use -d option with afmtodit. - * ps/devps/symbosl.ps: Add %%DocumentFonts comment. - * ps/devps/zapfdr.ps: Likewise. - * ps/devps/TSymbol.ps: Likewise. - -Fri Aug 24 20:10:30 1990 James Clark (jjc at jclark) - - * groff.sh: Initialize dev to ${GROFF_TYPESETTER:-@DEVICE@}. - -Thu Aug 23 10:03:47 1990 James Clark (jjc at yquem) - - * ps/ps.c (ps_output::include_file): If BROKEN_SPOOLER is defined, - then strip the first line if it starts with %. - * Makefile: Add a comment about this. - - * man/tfmtodit.man: New file. - * man/Makefile: Add tfmtodit.n to MAN1PAGES. - * dvi/Makefile: Install tfmtodit in BINDIR. - - * dvi/tfmtodit.c (usage): Mention -v option. - -Wed Aug 22 09:56:36 1990 James Clark (jjc at yquem) - - * troff/node.c (troff_output_file::end_of_line): Call do_motion. - * troff/node.c (troff_output_file::transparent_char): Don't call - flush_tbuf. - - * eqn: Add check_tabs method to most box classes. - * eqn/box.c (box::top_level): Call check_tabs. - - * eqn/script.c (script_box::output): Use \Z. - * eqn/limit.c (limit_box::output): Use \Z. - - * eqn/box.c (box::top_level): Use itoa. - -Tue Aug 21 09:29:28 1990 James Clark (jjc at yquem) - - * dvi/tmac.dvi: Add font translations for CR, C, TT. - * dvi/devdvi/Makefile: Don't make links to CW. - - * ps/tmac.ps: Add font translations for C, CW, CO, CX, CD, H, HO, - HX, HD. - * xditview/tmac.X: Likewise. - - * troff/node.c: Add font translation feature. - (get_font_translation): New function. - (symbol_fontno): Translate the font name. - (mount_font_no_translate): Rename to mount_font to this. - (mount_font): New function. - (font_family::make_definite): Call mount_font_no_translate instead - of mount_font. - (mount_style): Translate the font name. - (font_translate): New function. - (init_font_requests): Bind "ftr" to font_translate. - - * ps/devps/prologue (SN): New procedure that rounds a position to - the nearest (pixel + (.25,.25)). - (DL): Use SN to round endpoints. - - * lib/version.c: Changed version to 0.5. - -Sat Aug 18 04:43:21 1990 James Clark (jjc at yquem) - - * Makefile: Move definition of PAGE to the very beginning, so that - people are less likely to miss it. - -Fri Aug 17 02:15:11 1990 James Clark (jjc at yquem) - - * man/Makefile: Don't need to sed out @UPCASE_PROG_PREFIX@. - - * troff/env.c (environment::choose_breakpoint): Make `can't find - breakpoint' error a warning of type WARN_BREAK. Change message to - `can't break line'. - * troff/groff.h: Declare WARN_BREAK with code 4; change WARN_INPUT to - code 040000. - * troff/input.c: Add WARN_BREAK to warning_table. Include - WARN_BREAK in DEFAULT_WARNING_MASK. - - * tty/tmac.tty: Add definition of \(+-. - - * groff.sh: Remove `--' option to set command. - - * dvi/devdvi/texsy.map: Remove duplicate md entry. - - * ps/devps/eqnchar: Better definition of cdot using md. - * dvi/devdvi/eqnchar: Likewise. - * xditview/devX100/eqnchar: Likewise. - * xditview/devX75/eqnchar: Likewise. - * eqn/lex.c: Add definition of cdot. - -Thu Aug 16 09:33:57 1990 James Clark (jjc at yquem) - - * troff/input.c (get_optional_char): New function. - * troff/input.c (set_page_character): Use get_optional_char(), - rather than has_arg() and tok.get_char(1). - * troff/env.c (tab_character, leader_character, hyphen_char, - field_characters): Likewise. - (margin_character): Likewise. Also always delete the - margin_character_node. - - * troff/input.c (token::get_char): Use token::description. - - * troff/input.c (has_arg): Don't skip over tab and \}. - * troff/number.c (start_number): Give a warning if the number - starts with \} (WARN_RIGHT_BRACE) or tab (WARN_TAB). - -Wed Aug 15 10:04:37 1990 James Clark (jjc at yquem) - - * troff/input.c (empty_name_warning, non_empty_name_warning): New - functions. - (get_name, get_long_name): Use these. Rename `warn' argument to - `required'. - - * troff/node.c (get_fontno): Test that the symbol is not null. - - * troff/input.c (token::description): New function. - * troff/number.c (parse_term): Use token::description in `numeric - expression expected' message. - * troff/groff.h: Add WARN_MISSING. - * troff/number.c (start_number): New function. - * troff/number.c (get_vunits, get_hunits, get_number, get_integer, - get_incr_number): Use start_number(). - * troff/input.c (DEFAULT_WARNING_MASK): Enable WARN_NUMBER by - default. - * troff/input.c (get_name, get_long_name): Use WARN_MISSING. - * troff/reg.c (alter_format): Use WARN_MISSING. Also use - token::descripion. - * troff/input.c (token::get_char): Use WARN_MISSING. - * troff/input.c (token::delimiter): Use token::description. - * troff/env.c (environment_switch): Back out Aug 3 change. - * troff/input.c (has_arg): Skip over \}s and tabs but give a - warning. - * troff/token.h (token::tab): New function. - * troff/node.c (get_fontno): Use tok.skip() rather than has_arg(). - * troff/reg.c (alter_format): Likewise. - * troff/node.c (bold_font): Use has_arg() rather than tok.skip(). - -Tue Aug 14 10:11:21 1990 James Clark (jjc at yquem) - - * troff (most files): Redo warnings. Divide warnings into various - categories; warning() has an additional first argument indicating - the category it falls into. - * troff/input.c (main): -w now takes an argument. New option -W. - (enable_warning, disable_warning): New functions. - - * ps/devps/afmtodit: Add -a option to lie about the italic angle. - * ps/devps/FontMakefile: Pretend TI has an angle of 7. - -Mon Aug 13 10:11:16 1990 James Clark (jjc at yquem) - - * ps/devps/eqnchar: Better definitions of dotdot, vec, dyad, inf. - * xditview/devX100/eqnchar: Likewise. Remove definition of dot. - * xditview/devX75/eqnchar: Likewise. - * dvi/devdvi/eqnchar: Better definitions of vec, dyad, dotdot. - - * eqn/other.c: When bar or over applies to a single character - don't produce an overline_box or an underline_box. Instead produce - an accent_box or an underaccent_box, with the accent a line - whose width is accent_width. New classes underaccent_box, - overline_char_box and underline_char_box. - * eqn/box.h: Move overline_box, underline_box, accent_box class - declarations into eqn/other.c. Add declarations of - make_underline_box, make_overline_box, make_accent_box. - * eqn/eqn.y: Call make_overline_box, make_underline_box - make_accent_box instead of constructors. - * eqn/pbox.h, eqn/box.c: Add accent_width parameter. - - * eqn/other.c: Add accent_box::~accent_box. - * eqn/box.h: Declare it. - - * groff.sh: With -Tps, use eqn -D. - - * eqn/other.c (overline_box::output): Use \Z. If draw_flag use \D - rather than \l. - (underline_box::output): Similarily. - (accent_box::output): Use \Z. - - * xditview/tmac.X: Add definitions of ~ and ^ (so that they are a - bit smaller.) - -Sun Aug 12 09:41:15 1990 James Clark (jjc at yquem) - - * troff/div.c (top_level_diversion::transparent_output(unsigned - char)): Use asciify. - * troff/input.c (asciify): Don't make it static. - * troff/token.h (asciify): Declare it. - - * troff/input.c (get_name, get_long_name, token::get_char, - token::delimiter): Add an extra default argument which says - whether a warning should be printed. - * troff: Pass a non-zero argument to one of these rather than - printing a warning directly. - -Sat Aug 11 09:02:21 1990 James Clark (jjc at yquem) - - * troff: Consistently use symbol::is_null. - - * troff/dictionary.h: Move some inline functions into - dictionary.c. - - * troff/request.h: Move inline functions into input.c. - (request_or_macro::invoke): Make it pure. - - * troff/input.c, troff/reg.h: New class `constant_int_reg'. - * troff/input.c (init_input_requests): Use class constant_int_reg. - (class compatible_reg): Deleted. - * troff/div.c (init_div_requests): Use class constant_int_reg. - (class last_post_line_extra_space_reg): Deleted. - - * troff/env.c (tab_character): Don't change the tab character if - we get an invalid argument. - (hyphen_char): Similarily. - - * troff/reg.c (alter_format): Check that nm is not null. - - * Makefile, groff.sh: Make it possible to customize the commands - used for printing PostScript and dvi files. Also make it possible - to customize the path used by groff.sh. - - * eqn/eqn.y: Make `left' right associative. - -Fri Aug 10 18:20:39 1990 James Clark (jjc at yquem) - - * pic/pic.h: Added definition of M_SQRT2 for those systems that - don't have it. - - * pic/pic.h: Removed definition of INT_MAX. - - * troff/node.c (italic_corrected_node::vertical_extent): Omit - `return'. - - * troff/input.c (token::next): Handle \R like \n. - -Tue Aug 7 09:46:33 1990 James Clark (jjc at yquem) - - * ps/tmac.pc (PSPIC): Simplify. - - * troff/env.c (tab_stops::to_string): - * pic/pic.y (object_type_name): - * pic/troff.c (simple_output::line): - * pic/tex.c (tex_output::spline): - * pic/object.c (object_spec::make_object): - * tbl/main.c (process_data): Add cases to switch statements to - avoid cfront warnings. (Some of these are spurious, since the - switch already has a default case.) - - * ps/tmac.ps (PSPIC): Reformatted. Prefix all local names with - `ps-'. Don't test systat; instead check number of arguments to - ps-bb. - -Mon Aug 6 00:13:07 1990 James Clark (jjc at yquem) - - * macros/tmac.e: Do not decrease the page offset by 0.5i. - - * ps/ps.c (ps_printer::ps_printer): Use mktemp instead of tempnam. - Unlink the file as soon as we have opened it, so that we don't - have to bother with signal handlers. - (handler): Deleted. - (fatal_error_exit): Deleted. - (main): Don't call signal. - - * dvi/tfmtodit.c: Add -k option so that kerns with the skewchar - can be ignored. - * dvi/devdvi/Makefile: Use the -k option with S and MI. - - * pic/pic.y: If there is a label, or an nth construction before - the first `.' in the argument to `with', ignore it and generate a - warning. - * pic/lex.c (lex_warning): New function. - - * tbl/table.c (table::init_output): In section keep and release - macro, use 0 indent when diverting and the correct indent when - rereading. - - * troff/input.c (interpolate_number_format): Do not interpolate - anything if the number register is not defined. - - * tbl/main.c (process_data): Don't add entry when col >= ncolumns. - -Sat Aug 4 08:12:05 1990 James Clark (jjc at yquem) - - * ps/devps/prologue (PICTURE): Set components of graphics state to - their default values. - - * ps/devps/text.enc: Add trademark - * ps/devps/textmap: Add names for club, spade, heart, diamond, - carriagereturn, suchthat. Use Upsilon1 rather than Upsilon. - * ps/devps/symbolchars: Add names for summation and product. - - * dvi/devdvi/texsy.map: Add names for club, spade, heart, diamond, - suchthat. Add pp. Add upper-case letters. - - * xditview/libXdvi/DviChar.c: Add names for club, spade, heart, - diamond, carriagereturn, suchthat. Use Upsilon1 rather than - Upsilon. - - * dvi/devdvi/texsy.map: Rename lA (left angle bracket) to la, and - rA (right angle bracket) to ra. Introduce names for double-headed - arrows and double-barred arrows: <>, va, lA, rA, hA, uA, dA, vA. - * ps/devps/textmap: Likewise for ps device. - * xditview/libXdvi/DviChar.c: Likewise for X100 and X75 devices. - * tty/devascii/R.proto: Rename lA to la and rA to ra. - * tty/devascii/R.proto: Likewise. - * tty/tmac.tty: Provide definitions for \(<>, \(lA, \(rA, \(hA, - \(uA, \(dA. - * eqn/delim.c: In delim_table, rename \(lA to \(la and \(rA to \(ra. - - * xditview/tmac.X: Add definitions for \(fi \(fl \(ff \(Fi \(Fl. - - * eqn/lex.c: Added definitions of `approx', `grad' and `del' to - def_table. - -Fri Aug 3 09:59:27 1990 James Clark (jjc at yquem) - - * troff/div.c (when_request): Use symbol::is_null rather than - has_arg to determine whether we have an argument. - (change_trap): Remove the trap if we get an invalid number. Give - an error if we don't get at least the macro name. - (diversion_trap): Remove trap if we get an invalid name or number. - - * troff/env.c (environment_switch): Pop if we get an invalid - symbol or numeric expression. - - * troff/input.c (do_define_macro): If EOF is encoutered while - defining the macro, do tok.next() before returning. - - * troff/token.h (has_arg): Move definition from here, to ... - * troff/input.c (has_arg): ... here - - * troff/env.c (space_size): Do nothing if we get an invalid argument. - * troff/input.c (shift): Likewise. - - * pic/lex.c (get_token_after_dot): Accept `.center' as a synonym - for `.c'. - - * pic/troff.c (troff_output::start_picture): Comment out calls to - `..'. - - * eqn/main.c (do_file): Subtract 1 from current_lineno if - interpret_lf_args succeeds. - - * eqn/main.c (do_file): Don't recognize delimiter if preceded by - \\. This avoids problems with \$N. - - * groff.sh: Pass -C to preprocessors. - - * lib/lf.c (interpret_lf_args): Be more flexible. - - * tbl/main.c (main): Add -C option. - (table_input::get): Do not recognize TE if followed by character - other than a space or newline unless -C option given. - (process_input_file): Likewise for lf, TS. - (process_data): Likewise for lf in text blocks. - - * eqn/main.c (main): Add -C option. - (do_file): Don't recognize EQ, EN or lf if followed by character - other than space or newline unless -C option given. - * eqn/lex.c (file_input::read_line): Similarily. - * eqn/eqn.h: Declare compatible_flag. - - * etc/soelim.c (main): Add -C option. - (interpret_lf_args): Use version in libgroff. - (do_file): - - * pic/main.c (main): Add -C option, which sets compatible_flag. - (top_input::get), (top_input::peek): If -C option not given, - do not recognize .PS/.PE/.PF/.lf if followed by a character - other than space or newline. - * pic/lex.c (file_input::read_line): Similarily. - * pic/pic.h: Add declaration of compatible_flag. - -Thu Aug 2 11:11:27 1990 James Clark (jjc at yquem) - - * ps/tmac.ps (PSPIC): Avoid use of `echo -n'. - - * troff/node.c, troff/node.h: Add `asciify' methods to classes - derived from node. New class space_char_hmotion_node. - * troff/input.c (asciify_macro): New function. - * troff/input.c (init_input_requests): New request `asciify' bound - to asciify_macro. - * macros/mm.diff: New file. - * Makefile: In install.mm target use `patch' to apply - macros/mm.diff. - - * troff/input.c (macro::print_size): Just print the size in bytes. - - * troff/div.c (return_request): Correct the argument - interpretation. - -Wed Aug 1 12:38:36 1990 James Clark (jjc at yquem) - - * troff/node.h (class composite_node): Add sz member. - * troff/node.c (composite_node::size): Return sz. - * troff/input.c (macro_to_node): Use the initial size in the - environment as the size of the composite_node. - - * troff/node.c (node::zero_width_tprint): Provide a reasonable - default. - -Tue Jul 31 10:07:10 1990 James Clark (jjc at yquem) - - * troff/div.c (change_trap): If we get a bad number expression, - do nothing. - -Mon Jul 30 10:30:49 1990 James Clark (jjc at yquem) - - * lib/matherr.c (matherr): Define this only if math.h defines - TLOSS. - -Sun Jul 29 10:34:27 1990 James Clark (jjc at yquem) - - * troff/div.c (macro_diversion::distance_to_next_trap): If there - no diversion trap return vunits(INT_MAX - vresolution). - -Sat Jul 28 14:28:14 1990 James Clark (jjc at yquem) - - * troff/input.c (do_zero_width): New implementation that doesn't - use a temporary environment. Use instead: - (token::add_to_node_list): New function. - * troff/env.c (environment::get_prev_char_height), - (environment::get_prev_char_height), - (environment::get_prev_char_skew): New functions. - (environment::get_prev_char): New function. - (environment::get_prev_char_width): Change to use get_prev_char. - (init_env_request): Implement new registers .cht, .cdp, .csk. - * eqn/sqrt.c (sqrt_box::output): Don't rely upon the argument to - \Z being processed in a separate environment. - -Fri Jul 27 10:21:25 1990 James Clark (jjc at yquem) - - * tbl/table.c: Removed TABLE_BOTTOM_REG. - - * tbl/table.c (table::init_output): In the section release macro, - give a warning message if the section won't fit on one page. - - * tbl/table.c (table::do_top): Emit table keep only if table is - boxed. - (table::do_bottom): Likewise for table release. - (table::table), (table::add_vertical_rule): Remove reference to - keep member. - * tbl/table.h: Remove keep member. - - * tbl/table.c: New register SUPPRESS_BOTTOM_REG. In - SECTION_RELEASE_MACRO, if there's not enough space before the next - trap to output the diversion, call T# ourselves, set - SUPPRESS_BOTTOM_REG to 1, spring the trap, then set - SUPPRESS_BOTTOM_REG back to 0. In T#, do nothing if - SUPPRESS_BOTTOM_REG is non-zero. In T#, always mark the current - vertical position and return to it before turning traps on again. - -Thu Jul 26 02:54:32 1990 James Clark (jjc at yquem) - - * troff/node.c, troff/node.h: In classes derived from node, - replace prev_char_width method by last_char_node method. - * troff/env.c (environment::get_prev_char_width): Use - node::last_char_node rather than node::get_prev_char_width. - - * Makefile: Added comment about -fno-inline on 68030-based - Apollos. - - * troff/reg.c (number_format_to_ascii), eqn/delim.c (DELIM_TABLE_SIZE), - tty/tty.c (tty_font::load_tty_font), dvi/tfmtodit.c (main): Cast - expressions using sizeof to int. - * dvi/dvi.c (dvi_font::handle_x_command): Avoid long->int warnings. - - * macros/tmac.e (TS): Don't move @f back past the current - position. - -Wed Jul 25 09:11:08 1990 James Clark (jjc at yquem) - - * ps/ps.c (main): Buffer stderr. - * dvi/dvi.c (main): Likewise. - * tty/tty.c (main): Likewise. - - * ps/ps.c (ps_printer::do_import): Improve error handling. - - * troff/input.c (abort_request): Use asciify. - - * driver/printer.h (printer::draw), driver/printer.c (printer::draw), - ps/ps.c (ps_printer::draw), dvi/dvi.c (dvi_printer::draw): Make - type of first argument int rather than char. This works around a - bug on the 68030 based Apollo using g++ 1.37.1. - - * tbl/table.h (class table): Add `keep' member. - * tbl/table.c (table::table): Initialize `keep'. - (table::add_vertical_rule): Set `keep' to 1. - (table::do_top): Only emit table keep macro is `keep' is non-zero. - (table::do_bottom): Likewise for table release macro. - (table::do_row): Emit section keep macro even if the row is 0. - -Tue Jul 24 08:35:07 1990 James Clark (jjc at yquem) - - * macros/tmac.e (@C): Preserve the font family across the change - in environments. - -Mon Jul 23 10:15:23 1990 James Clark (jjc at yquem) - - * lib/font.c: Initialize font::hor and font::vert to 1. - (font::load_desc): Check the values of font::hor and font::vert. - - * lib/lib.h: Added definition of INT_DIGITS. Fix it so that it can - be included in a C compilation. - (iftoa): Use INT_DIGITS. Include lib.h. - (itoa): Likewise. - (as_string): Likewise. - * tbl/table.c: Removed definition of INT_DIGITS. - * eqn/box.c (box::top_level): Use INT_DIGITS + 1 instead of 12. - * troff/input.c (input_input_requests): Likewise. - * ps/ps.c (make_encoding_name): Likewise. - (ps_printer::set_style): Likewise. - (ps_output::put_number): Use 1 + INT_DIGITS + 1 instead of 12. - - * tty/devascii/R.proto: Map fm onto '. - * tty/devlatin1/R.proto: Likewise. - -Sat Jul 21 12:45:07 1990 James Clark (jjc at yquem) - - * tbl/table.c: Use ' instead of DELIMITER_CHAR in places where the - argument to \w is at a different input level. - - * tbl/table.c (table::init_output): Define a new macro - REPEATED_VPT_MACRO, like vpt but if in a diversion also - transparently outputs itself. - (table::define_bottom_macro): Use REPEATED_VPT_MACRO instead of - vpt. - (table::do_row): Likewise. - - * tbl/table.c (vertical_rule::print): Prefix the .sp -1 line with - TRANSPARENT_STRING_NAME. - - * tbl/table.c (table::init_output): In the table release macro - print an error message and don't produce any output if after - issuing the need request the table still will not fit. Also - remove the diversion after bringing it back. - - * tbl/table.c (table::init_output): Define a new macro - REPEATED_MARK_MACRO, like mk but if in a diversion also - transparently outputs itself. - (table::do_row): Mark row_top_reg using REPEATED_MARK_MACRO. This - is necessary because .TH might not call .T#. - (table::do_top): Likewise TOP_REG. - (table::define_bottom_macro): If TOP_REG is no longer valid, use - #T - DOUBLE_LINE_SEP rather than #T. This is necessary because the - table header might contain just the two top rules. - -Fri Jul 20 10:51:42 1990 James Clark (jjc at yquem) - - * troff/div.c: Implement new request `ptr' to print all traps. - - * troff/env.c (init_env_requests): Implement `.tabs' reg with - init_string_env_reg. - * troff/env.c (class tab_reg): Deleted. - -Thu Jul 19 12:07:16 1990 James Clark (jjc at yquem) - - * troff/div.c: New number register .pn returns the number of the - next page as set by the pn request. - - * macros/tmac.an: Redid headers and footers. Number each manual - entry starting from 1 unless \nC is > 0, like Sun. Added an - optional 5th argument to .TH which specifies the manual name and - appears in the center of the header. Understand the X, P and D - registers like Sun. - -Wed Jul 18 10:23:31 1990 James Clark (jjc at yquem) - - * troff/env.c (init_env_requests): New number register `.lt' to - return the title length. - - * troff/node.h (class transparent_dummy_node): New class. - * troff/node.c (class transparent_dummy_node): Provide member - functions. - * troff/env.c (interrupt): Add a transparent_dummy_node, rather - than a dummy_node. - - * troff/input.c (token::next): New escape sequence \). - * troff/input.c (get_copy): Recognize \) in copy mode. - - * troff/input.c (input_stack::clear): New function. - * troff/input.c (exit_request): Use input_stack::clear. - - * troff/token.h: Removed TOKEN_NO_PRINT_CHAR. - * troff/input.c (token::process): Removed case TOKEN_NO_PRINT_CHAR. - - * troff/env.c: Move set_page_character to input.c. Move - page_character to input.c also. - * troff/env.c (title): Split off the reading of the parts of the - title into read_title_parts. - * troff/input.c (read_title_parts): New function. Check the - input_level when testing whether a token matches the delimiter. - - * troff/input.c (exit_request): New function. - * troff/input.c (init_input_requests): Bind ex request to - exit_request rather than exit_groff. - - * troff/input.c (exit_groff): Call tok.next() before - process_input_stack(). - -Mon Jul 16 09:47:23 1990 James Clark (jjc at yquem) - - * troff/env.c: ifdef widow control support on WIDOW_CONTROL. - * troff/env.h: ditto. - * troff/input.c: ditto. - - * troff/env.c (environment::is_empty): Test pending_lines. - - * troff/env.c (environment::have_pending_lines): Removed. - - * troff/input.c: Add request to flush pending lines from the - environment. - - * troff/env.c, troff/env.h: Add automatic widow control feature. - - * troff/input.c (exit_groff): Do process_input_stack() after - do_break() but before setting exit_flag to 2. - - * troff/input.c: Remove FLUSH_PENDING_LINES and - TOKEN_FLUSH_PENDING_LINES. Instead, flush pending lines from - environment after END_TRAP token seen, but only if there aren't - any more traps still unfinished. - * troff/token.h: Remove TOKEN_FLUSH_PENDING_LINES. - -Sun Jul 15 10:50:08 1990 James Clark (jjc at yquem) - - * troff/env.c: Rename the `retain_size' member of class - pending_output_line to `no_fill'. - - * troff/env.c (title): When the line is output, make the - retain_size argument !fill. - - * troff/node.h: Add `hyphenated' member to struct breakpoint. - * troff/node.c (space_node::get_breakpoints), - (dbreak_node::get_breakpoints): Fill this in. - * troff/env.c: Allow specification of maximum number of - consecutive hyphenated lines. - - * troff/env.c (environment::is_empty): Add test for !current_tab. - -Sat Jul 14 11:23:01 1990 James Clark (jjc at yquem) - - * troff/env.c (environment::hyphenate_line): Don't completely give - up if the word is not to be hyphenated; continue so that breaks - can be made at break_char_node's. - - * lib/lib.h: Only define INT_MAX if it's not already defined; - undef INT_MIN if it's already defined. - - * Makefile: Make it easy to define CFRONT_ANSI_BUG. - - * lib/lib.h: If CFRONT_ANSI_BUG is defined, cast INT_MIN to long. - This works around a bug in AT&T C++ 2.0 used with an ANSI C - compiler. - - * macros/tmac.an (an-header): Set no-space mode. - - * macros/tmac.an (TH): Start a new page if necessary. - - * Started using ChangeLog at version 0.4. - Local Variables: version-control: never coding: latin-1 diff --git a/ChangeLog.115 b/ChangeLog.115 new file mode 100644 index 00000000..1d994f35 --- /dev/null +++ b/ChangeLog.115 @@ -0,0 +1,6147 @@ + +Version 1.15 released +===================== + +1999-12-28 Werner LEMBERG <wl@gnu.org> + + * NEWS, VERSION: Changed to 1.15 + +1999-12-27 Paul Eggert <eggert@twinsun.com> + + * nroff/nroff.man: -S is safer, not safe. + + * groff/groff.cc (main): Use `safer', not `safe', in variable + names. This does not change the behavior. + + * troff/input.cc (main): Likewise. + + * nroff/nroff.sh: Likewise. + + * troff/input.cc (prepend_string): New function. + (main): Prepend -msafer, so that we check macro libraries for + safety. + + * PROBLEMS: Report problem with Sun C++ 5.0 and 5.1. + +Version 1.14 released +===================== + +1999-12-26 Werner LEMBERG <wl@gnu.org> + + * NEWS, VERSION: Changed to 1.14. + +1999-12-24 Werner LEMBERG <wl@gnu.org> + + * refer/refer.cc: Fixing the last fix. + +Version 1.13 released +===================== + +1999-12-23 Werner LEMBERG <wl@gnu.org> + + * tmac/tmac.an: A typo (`.if' instead of `.ie') made the page + number disappear. + + * NEWS: Updated. + + * tmac/tmac.safer: Forgot to remove `so' from the `rm' request. + + * VERSION: Changed to 1.13 -- to be compliant with the Adobe 3.0 + document conventions, the version number must be a real. + +Version 1.12.1 released +======================= + +1999-12-22 Werner LEMBERG <wl@gnu.org> + + * VERSION: Changed to 1.12.1. + +1999-12-22 Alan Rooks <arooks@istar.ca> + + * refer/refer.cc (do_file): Slight modification to satisfy the + `Standard system CC - C++ Compilation System 3.1 03/03/99' on SCO + UnixWare 7.1. + +1999-12-20 Werner LEMBERG <wl@gnu.org> + + * changed prep.ai.mit.edu -> ftp.gnu.org; updated copyright + notices. + + * tmac/tmac.safer, tmac/groff_msafer.man: Remove `so' (again) from + list of unsafe requests. + + * pic/pic.man: Fixed a typo. + + * man/groff_out.man: Fixed a typo. + +1999-12-18 Werner LEMBERG <wl@gnu.org> + + * Makefile.in: Doc fixes. + +1999-12-17 Fabrizio Polacco <fab@prosa.it> + + * groff/groff.cc: Missing `U' option added to getopt(). + + * troff/troff.man: Missing `U' option added to synopsis. + +Version 1.12 released +===================== + +1999-12-14 Werner LEMBERG <wl@gnu.org> + + * troff/input.cc (usage), groff/groff.cc (synopsis): Added -U flag + to the synopsis. + + * nroff/nroff.sh, nroff/nroff.man: Replaced `secure', `unsecure' + with the more appropriate terms `safer' and `unsafe'. + + * libgroff/strerror.c, aclocal.m4, configure.in: Added checks for + sys_nerr and sys_errlist[]. + + * pic/pic.h, aclocal.m4, configure.in: Added check for hypot(). + + * pic/pic.y, pic/pic.cc: Added check for fmod(). + +1999-12-13 Werner LEMBERG <wl@gnu.org> + + * VERSION: Changed to 1.12. + + Here some patches from various sources; most of them taken from + the Debian distribution. + + * tmac/groff_mdoc.man, tmac/groff_mdoc.samples.man, + tmac/Makefile.sub: New files copied directly from the NetBSD + distribution. Probably, some additional adaptation later on is + necessary... + + * tmac/tmac.safer, tmac/groff_msafer.man: Added `so' to the list + of unsafe requests. + + * groff/groff.cc, groff/groff.man, nroff/nroff.sh, + nroff/nroff.man, pic/main.cc, pic/pic.man, troff/input.cc, + troff/troff.man: Added option `-U' for unsafe mode. Safe mode + (`-S') is now the default. + + * README, NEWS: Updated. + +1999-12-09 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Regenerated nodes and menus with emacs. + + * doc/Makefile (clean): Added cleaning commands for groff.texinfo. + +1999-12-06 Werner LEMBERG <wl@gnu.org> + + * configure.in: Removed AC_PREFIX_PROGRAM since it causes more + grief than relief today. Additionally, it is against the GNU + coding standards. + + * configure: Recreated. + +1999-12-05 Werner LEMBERG <wl@gnu.org> + + * configure.in: Added GROFF_LIBM. + + * configure: Recreated. + + * aclocal.m4 (GROFF_LIBM): New function which tests whether -lm is + necessary. + + * Makefile.in: Added definition of $(LIBM). + + * Makefile.comm (LIBM): Removed. + + * pfbtops/Makefile.sub: On AIX, -lm is needed also. + +1999-12-03 Gaius Mulley <gaius@glam.ac.uk> + + * doc/Makefile: Added rule for generation pic.html. + + (clean): Files produced by grohtml will be removed also. + + * doc/pic.ms: Small fix. + + * tmac/tmac.html: Fixed suppression of headers. + +1999-11-16 Gaius Mulley <gaius@glam.ac.uk> + + * tmac/tmac.html: Fixing horizontal arrows. + + Turning off hyphenation. + + * tmac/tmac.an: Improved support for grohtml; better indentation, + no footers/headers. + +1999-10-31 Gaius Mulley <gaius@glam.ac.uk> + + * tmac/tmac.arkup: Added CDFTP macro + + * tmac/tmac.html: All headers are turned off for ms, me, and mm + macros. + + * tmac/troffrc: Some additions for HTML stuff. + +1999-10-06 Gaius Mulley <gaius@glam.ac.uk> + + * tmac/tmac.html: Small changes. + +1999-09-26 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Minor fixes. + +1999-09-26 Gaius Mulley <gaius@glam.ac.uk> + + * devhtml/TR: Changed spacewidth to 3. + + * tmac/Makefile.sub (NORMALFILES): Added tmac.arkup. + + * tmac/tmac.html: Moved markup macros to tmap.arkup. + + * tmac/tmac.arkup: New file. + + * grohtml/ChangeLog: New file. + +1999-09-16 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo (Common Features): Added Copying chapter. + Changed format to @smallbook. + +1999-09-15 Werner LEMBERG <wl@gnu.org> + + * NEWS: Added info about groff.texinfo. + + * doc/groff.texinfo: Will now compile (using texi2dvi) without + warning messages. + +1999-09-14 Werner LEMBERG <wl@gnu.org> + + * groff/groff.man: More updates. + +1999-09-13 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: New file. This manual is still very + rudimentary. It has been originally contributed by Trent + A. Fisher <trent@gnurd.portland.or.us> with first corrections and + additions by me. + + * INSTALL: Added information about the `doc' subdir + + * troff/troff.man: Minor fixes. + + * groff/groff.man: Added missing `-L arg' to SYNOPSIS section; + reordered options. + + * troff/input.cc (usage): Added missing `-ffam' to usage message. + + * Makefile.in (dist): groff-$(version).tar.gz must be removed + also, otherwise it is included itself in another call of `make + dist'. + + * groff/groff.cc (synopsis): Removed superfluous space. + + * PROJECTS, PROBLEMS, NEWS: Updated. + + * VERSION: Updated to 1.12beta. + + * BUG-REPORT: Some cosmetic fixes. Corrected email address. + + * README: Updated: Included documentation about CVS repository, + mailing lists, and daily snapshots. + + * tmac/Makefile.sub: Fixed $(tmap_wrap) finally. + +1999-09-12 Bjarni Ingi Gislason <bjarniig@rhi.hi.is> + + * tmac/tmac.an: If the tag didn't fit into the space that the + macro `TP' specifies, the rest of the tag went into the space for + the next line. + +1999-09-12 Jeffrey Copeland <jeff@opennt.com> + + * grolj4/lj4.cc: Added duplex printing (option `-d'). + + * grolj4/grolj4.man: Document duplex printing. + +1999-09-12 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile (pic.ps): Fixed rule which caused problems with + non-GNUish sed programs. + + * tmac/doc-syms: Removed extra space from -iso8802-3 macro + definition. + + * configure.in (LIBS): Added `-lc' + + * Makefile.comm (.man.n): Added substitution for @TMAC_AN_PREFIX@. + + * pic/tex.cc (solid_arc): Casting M_PI to double. + + * libgroff/putenv.c (putenv): Changed function header to ANSI C. + + * groff/groff.man, tmac/Makefile.sub (MAN7), tmac/groff_msafer.man + (new file), tmac/msafer.man (deleted), tmac/groff_me.man (new + file), tmac/me.man (deleted): {me,msafer} -> groff_{me,msafer}. + + * groff/groff_man.man: New file. This manual page was originally + written for the Debian GNU/Linux system by Susan G. Kleinmann + <sgk@debian.org>. + + * eqn/list.cc (list_box::compute_metrics, + list_box::compute_sublist_width): Removed variable declaration to + avoid shadowing warnings. + + * grops/psrm.cc (resource_manager::process_file): Ditto. + + * tfmtodit/tfmtodit.cc (main): Ditto. + + * libgroff/font.cc (font::load_desc): Renamed auxiliary variable + to avoid shadowing warnings. + + * tbl/table.cc (block_entry::do_divert, table::do_row): Renamed + shadowing loop variable. + + * groff/groff.man, troff/troff.man: Added doc about grohtml. + +1999-09-12 Gaius Mulley <gaius@glam.ac.uk> + + New grohtml frontend to convert groff input to html. + + * Makefile.in (CCPROGDIRS, DEVDIRS): Added html device. + + * tmac/Makefile.sub (NORMALFILES): Added tmac.html. + + * tmac/eqnrc: Added html device. + + * tmac/tmac.html: New file. + + * eqn/main.cc (do_file, inline_equation), pic/troff.cc + (troff_output::start_picture, troff_output::finish_picture), + tbl/main.cc (process_input_file): + Surrounded output with `graphics_start' and `graphics_end' so that + the html driver can identify non-text portions. + + * grodvi/dvi.cc (dvi_printer::set_char), grolj4/lj4.cc + (lj4_printer::set_char), grops/ps.cc (ps_printer::set_char), + grotty/tty.ps (tty_printer::set_char): Additional parameter + `name'. + + * include/printer.h: Class printer: New function + set_char_and_width; new variables (is_char_named, is_named_set, + named_command, named_char_s, named_char_n) to hold information + about named characters -- needed by the html driver. + + * libdriver/printer.cc (printer::set_ascii_char, + printer::set_special_char): Use set_char_and_width. + + * devhtml/*: New device files for html driver. + + * grohtml/*: New driver grohtml. + +1999-09-11 Wilfredo Sanchez <wsanchez@apple.com> + + * tmac/doc-common, tmac/tmac.an: Removed the word `UNIX' in + default strings. + +1999-09-11 Luke Mewburn <lukem@netbsd.org> + + * libgroff/string.cc (search): Small fix to test against NULL + pointer. + +1999-09-11 Jeff Conrad <jeff_conrad@msn.com> + + * troff/node.cc (copy): The characters in a bracket escape (e.g., + \b'abc') were stacked in reverse order when processed in a + diversion. + + * troff/node.h: Added `*last' to struct `node' to make the above + fix work. + + * troff/input.cc (read_draw_node), libdriver/input.cc (do_file): + The default scale for the 'f' and 't' graphics functions were 'm' + rather than 'u' (i.e., no scaling). + +1999-09-11 Peter Miller <peterm@jna.com.au> + + * groff/groff.cc (main), groff.man, soelim/soelim.cc (main, + do_file), soelim/soelim.man: Added `-I file' option to soelim, + defining include paths. + + * soelim/soelim.cc (include_path_append): New function. + +1999-09-11 Larry Jones <larry.jones@sdrc.com> + + * tbl/main.cc (process_options): Unix (at least Documenter's + Workbench) tbl allows arbitrary non-alpha characters between + options. + +1999-09-11 Paul Eggert <eggert@twinsun.com> + + Y2k fixes. Don't assume that the current year precedes 2000. + + * doc/meref.me: Add \n(y2, \n(y4. + + * tmac/doc-common (Yr): New number register. + (Dd): Don't assume current year precedes 2000. + + * tmac/tmac.e (td): Likewise. + (y2, y4): New number registers. + + * pic/pic.man: Update reference for pic paper to May, 1991 + version. + +1999-09-11 Werner LEMBERG <wl@gnu.org> + + * tmac/Makefile.sub (install_data, stamp-wrap, uninstall_sub): + Removed quotation marks which prevented correct expansion of + $(tmac_wrap). + + * devlj4/Makefile.sub (LJ4RES): Fixed value (600 instead of 300). + +1999-09-10 Werner LEMBERG <wl@gnu.org> + + * Makefile.sub (DISTCLEANFILES): Added `config.log' and + `config.cache'. + + * Removed configure.old. + +1999-08-31 Werner LEMBERG <wl@gnu.org> + + * VERSION: Updated to 1.11.1 + +1999-05-27 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile: changed `.PS' postfix to `.ps' for consistency. + + * tmac/Makefile.sub (install_data, stamp-wrap, uninstall_sub): + added quotations around $(tmac_wrap) to avoid syntax error if + variable is empty. + + * configure: Newly generated using autoconf 2.13. + + * Makefile.in (LDFLAGS): Set variable to @LDFLAGS@. + +Fri Aug 15 08:51:47 1997 Eric S. Raymond <esr@snark.thyrsus.com> + + * README, PROJECTS, NEWS, INSTALL, VERSION, + doc/Makefile. doc/pic.ms, groff/groff.man: + Prepare for 1.11 release. No code changes. + Documentation for pic added (doc/pic.ms). + +Sun Nov 26 11:45:13 1995 James Clark <jjc@jclark.com> + + * Version 1.10 released. + +Fri Nov 24 09:56:16 1995 James Clark <jjc@jclark.com> + + * afmtodit/afmtodit.pl: Avoid comment on first line. + +Mon Nov 20 11:13:49 1995 James Clark <jjc@jclark.com> + + * aclocal.m4 (GROFF_INSTALL_SH): New macro. + * configure.in: Call it. + + * Makefile.sub (configure): Depends on aclocal.m4 not acgroff.m4. + (distfiles): Doesn't depend on config.log or config.cache. + +Sun Oct 1 08:45:36 1995 James Clark <jjc@jclark.com> + + * grog/grog.sh: Use print "" rather than print in END rule. + +Wed Aug 23 13:30:52 1995 James Clark <jjc@jclark.com> + + * tbl/main.cc (process_data): Don't give error for excess data + entries that are comments. + +Fri Jul 28 11:00:27 1995 James Clark <jjc@jclark.com> + + * tbl/main.cc (process_data): Fix case where new for-scope rules + silently change meaning of code. + +Tue Jul 4 23:39:51 1995 James Clark <jjc@jclark.com> + + * troff/env.cc (hyphenate): Loop over all consecutive sequences + of non-zero hyphenation codes. + +Sat Jul 1 00:42:15 1995 James Clark <jjc@jclark.com> + + * aclocal.m4 (GROFF_POSIX): Use conflicting declaration technique. + +Thu Jun 29 13:58:36 1995 James Clark <jjc@jclark.com> + + * tmac/tmac.e (ip): Divert the tag so as to freeze the spaces. + +Tue Jun 27 12:30:16 1995 James Clark <jjc@jclark.com> + + * tmac/tmac.andoc: Make it work in compatibility mode. + + * refer/token.h (token_info::is_range_sep): New function. + * refer/token.cc (init_special_chars): Make \(en a RANGE_SEP. + * refer/ref.cc (reference::output): More sophisticated check for + multiple pages. + + * devps/prologue.ps (MANUAL): New procedure. + * grops/ps.cc (main): New -m option. + (usage): Include -m. + (ps_printer::~ps_printer): Implement -m. + + * aclocal.m4 (GROFF_G): New macro. + * configure.in: Call it. + * Makefile.in (g): Provided by configure. + + * hpftodit/hpftodit.cc (basename): Rename to xbasename. + + * tmac/tmac.tty: Disable warning about bad fonts. Remove font + translations. + + * Makefile.in (tmacpath): Don't include /usr/lib/tmac. + (tmac_m, tmac_s): Deleted. + (sys_tmac_prefix, tmac_wrap, tmac_prefix, tmac_an_prefix, + tmac_s_prefix): New variables. + (MDEFINES): Change accordingly. + * Makefile.comm (.man.n): Use new TMAC_* variables. + * configure.in (GROFF_TMAC): Call. + * aclocal.m4 (GROFF_TMAC): Define. + * tmac/Makefile.sub (stamp_wrap): New target. + (install_data, uninstall_sub): Handle macro wrapping. + +Mon Jun 26 14:54:39 1995 James Clark <jjc@jclark.com> + + * tbl/main.cc (main): Ignore -T option. + +Thu Jun 22 09:08:06 1995 James Clark <jjc@jclark.com> + + * devlj4/generate/special.map: Add definition of \(nb. + + * tmac/tmac.dvi: Add definition of \(nb. + + * troff/dictionary.c (dictionary::dictionary): association::v gets + initialized by association::association. + + * tmac/Makefile.sub: Avoid using temporary files when installing. + + * troff/env.cc (environment::set_font): Make bad font number a + warning. + + * Makefile.in (fontpath): Remove $(prefix)/lib/font from fontpath. + + * Makefile.in (datadir): Use share rather than lib. + + * groff/groff.cc (basename): Rename to xbasename. + +Wed Jun 21 16:59:46 1995 James Clark <jjc@jclark.com> + + * Makefile (CCLIBS): Don't use. + * Makefile.ccpg: Likewise. + + * acgroff.m4: Rename to... + * aclocal.m4: Modify extensively for autoconf 2. + * configure.in: Likewise. + * Makefile.in: Likewise. + + * groff/pipeline.c (const): Declare as empty if __STDC__ not + defined. + (xstrsignal): Check for definition of NSIG. Conditionalize + on SYS_SIGLIST_DECLARED. Make return type const. + +Sat Jun 10 12:28:16 1995 James Clark <jjc@jclark.com> + + * troff/input.cc (interpolate_macro): Rephrase missing space + warning. + +Thu May 11 01:07:16 1995 Jason Merrill <jason@phydeaux.cygnus.com> + + * addftinfo/addftinfo.cc, eqn/delim.cc, eqn/lex.cc, eqn/list.cc, + grodvi/dvi.cc, groff/groff.cc, grops/ps.cc, grops/psrm.cc, + grotty/tty.cc, include/ptable.h indxbib/indxbib.cc, + libbib/index.cc, libbib/linear.cc, libbib/search.cc, + libdriver/input.cc, libdriver/printer.cc, libgroff/font.cc, + libgroff/lf.cc, libgroff/nametoindex.cc, libgroff/ptable.cc, + libgroff/string.cc, lkbib/lkbib.cc, lookbib/lookbib.cc, + pic/lex.cc, pic/object.cc, pic/pic.y refer/label.y refer/ref.cc, + refer/refer.cc, refer/token.cc, tbl/main.cc, tbl/table.cc, + tfmtodit/tfmtodit.cc, troff/dictionary.cc, troff/div.cc, + troff/env.cc, troff/input.cc, troff/node.cc, troff/symbol.cc: + Fix 'for' scoping. + +Wed Apr 19 21:15:11 1995 James Clark <jjc@jclark.com> + + * troff/input.cc (spring_trap): Push a macro_iterator rather than a + string_iterator. + (spring_trap, postpone_traps, unpostpone_traps): Move to later in + file. + (macro_iterator::macro_iterator): Add additional argument. + +Mon Apr 10 12:06:02 1995 James Clark <jjc@jclark.com> + + * troff/div.cc (vertical_size::vertical_size): In place of integer + specifying line spacing use cunits specifying post vertical + space. + (macro_diversion::output, top_level_diversion::output): Likewise. + * troff/div.h: Change declarations accordingly. + * troff/env.cc (pending_output_line): Replace ls field by post_vs + field. + (pending_output_line::pending_output_line, + pending_output_line::output, environment::output, + environment::output_line, environment::output_title, + environment::hyphenate_line): In place of + integer specifying line spacing use cunits specifying post vertical + space. + (environment::environment): Add post_vertical_spacing and + prev_post_vertical_spacing arguments. + (environment::get_post_vertical_spacing): New function. + (environment::total_post_vertical_spacing): New function. + (environment::post_vertical_spacing): New function. + (init_env_requests): Initialize pvs request and .pvs register. + * troff/env.h: Change declarations. + +Tue Mar 28 09:52:07 1995 James Clark <jjc@jclark.com> + + * tmac/tmac.pspic: Immediately remove the temporary file. + +Sat Mar 25 10:43:11 1995 James Clark <jjc@jclark.com> + + * tmac/tmac.pspic (PSPIC): Scale graphic uniformly even when + height is specified. + +Thu Jan 26 16:20:13 1995 James Clark <jjc@jclark.com> + + * tbl/table.c (struct vertical rule, class table_entry): Use int + not short for start_row and end_row. + +Fri Jan 13 13:53:05 1995 James Clark <jjc@jclark.com> + + * troff/input.cc (trapping_blank_line, blank_line_macro): New + functions. + (diverted_space_node::reread, process_input_stack): Call + trapping_blank_line() rather than blank_line(). + (init_input_requests): Bind "blm" to blank_line_macro(). + + * tmac/tmac.s (XA): Use .br and par@reset rather than XA. + +Tue Jan 10 11:40:35 1995 James Clark <jjc@jclark.com> + + * troff/env.cc (environment::possibly_break_line): Require that + width total excluding width of final space node be greater than + the target text length. + +Tue Jan 3 09:13:37 1995 James Clark <jjc@jclark.com> + + * troff/node.cc (kern_pair_node::vertical_extent): New function. + +Sun Dec 4 13:19:07 1994 James Clark <jjc@jclark.com> + + * troff/node.cc (charinfo_node): New class. + (glyph_node, composite_node): Derive from charinfo_node. Change + member functions accordingly. + +Wed Nov 30 10:29:29 1994 James Clark <jjc@jclark.com> + + * nroff/nroff.sh: Use -Tlatin1 not -TLatin1. + +Mon Aug 8 10:17:59 1994 James Clark (jjc@jclark.com) + + * tmac/tmac.tty-char: Add definitions for \(ab and \[arrowvertex]. + + * devps/generate/textmap (notsubset): Add. + + * tmac/tmac.a4: New file. + +Sun Jul 24 20:08:42 1994 James Clark (jjc@jclark.com) + + * pic/main.cc (had_parse_error): New variable. + (do_picture, do_whole_file): Set had_parse_error if yyparse() + returns non-zero. + (main): Return 1 if had_parse_error is true. + +Tue Jul 19 13:40:31 1994 James Clark (jjc@jclark.com) + + * grolj4/lj4.cc (main): Avoid use of strtoul. + +Mon Jul 18 15:03:02 1994 James Clark (jjc@jclark.com) + + * nroff/nroff.sh: Default device is -Tlatin1 if $LC_CTYPE is + iso_8859_1 or $LESSCHARSET is latin1. + +Sun Jul 10 13:38:35 1994 James Clark (jjc@jclark.com) + + * hpftodit: New directory. + * Makefile.in (CCPROGDIRS): Add hpftodit. + * devlj4/generate: New directory. + +Thu Jul 7 23:49:48 1994 James Clark (jjc@jclark.com) + + * configure.in: Don't use AC_VFORK. + * groff/pipeline.c (run_pipeline): Use fork() always. + +Wed Jul 6 11:13:17 1994 James Clark (jjc@jclark.com) + + * grops/ps.cc (main): Use %1 not %s in error message for -w. + + * Makefile.in (CCPROGDIRS): Add grolj4. + (DEVDIRS): Add devlj4. + * grolj4, devlj4: New directories. + * tmac/troffrc: Handle lj4. + * tmac/tmac.lj4: New file. + +Fri Jun 17 18:02:53 1994 James Clark (jjc@jclark.com) + + * tmac/tmac.e (@n): Set indent to 0 before calling |h. + +Wed Jun 1 07:33:47 1994 James Clark (jjc@jclark.com) + + * troff/input.cc (do_if_request): At end of second string, switch + environments before getting next token. + +Fri May 20 07:39:18 1994 James Clark (jjc@jclark.com) + + * devps/psstrip.sed: Split rule that strips whitespace on either + side of delimiters. + +Wed May 18 08:13:47 1994 James Clark (jjc@jclark.com) + + * troff/node.h (font_family::make_definition): Add return value to + declaration. * troff/symbol.h (symbol::operator==, + symbol::operator!=): Likewise. + +Tue May 17 20:46:06 1994 James Clark (jjc@jclark.com) + + * groff/groff.cc (main, help, synopsis): Handle -S. + (possible_command::insert_arg): New function. + + * tmac/tmac.safer: New file. + * tmac/msafer.man: New file. + * tmac/Makefile.sub (FILES): Add tmac.safer and msafer.man. + +Thu Mar 10 01:58:30 1994 Paul Eggert (eggert@twinsun.com) + + * pic/pic.h, pic/main.cc (safer_flag): New variable. + * pic/pic.y (placeless_element): Avoid unsafe operations if + `safer_flag' is set. + * pic/main.cc (main): Add -S option, which sets `safer_flag'. + +Tue May 10 13:02:31 1994 James Clark (jjc@jclark.com) + + * eqn/lex.cc (get_token): Put call to add_context() in block to + work around Sun C++ 4.0 bug. + + * include/stringclass.h (operator +): Use ?: instead of `if' to + work around Sun C++ 4.0 bug. + +Thu May 5 11:18:03 1994 James Clark (jjc@jclark.com) + + * tbl/main.cc (process_format): Accept - as a synonym for the _ + key letter. + + * libbib/index.cc (minus_one): Don't declare as const. + +Fri Apr 29 09:32:48 1994 James Clark (jjc@jclark.com) + + * troff/input.cc (get_char_for_escape_name): Push back a newline. + +Wed Apr 27 21:14:18 1994 James Clark (jjc@jclark.com) + + * troff/input.cc (write_macro_request): New function. + (init_input_requests): Bind write_macro_request to writem. + +Sun Apr 17 11:15:38 1994 James Clark (jjc@jclark.com) + + * tmac/tmac.s (@EN): Turn filling back on even if there was no + equation. + + * eqn/lex.cc (do_space): Supply missing argument to lex_error. + + * tmac/tmac.s (@TS): Renamed from TS. + (TS): Call LP then TS again. + (cov*ab-init): Alias @TS to TS. + + * tmac/tmac.s: Allow QP or RS to initialize. + + * tmac/tmac.s (par@load-init): New macro. Call at end of file. + Move initializations of PS and LL here. + (par@init): Don't initialize HY. Avoid changing environment 0. + (par*env-init): Don't all par@reset. + +Thu Apr 14 19:15:45 1994 James Clark (jjc@jclark.com) + + * include/posix.h: Include <fcntl.h> only if not using <osfcn.h>. + +Sun Apr 10 09:54:44 1994 James Clark (jjc@jclark.com) + + * Makefile.in (MDEFINES): Add LDFLAGS. + (LDFLAGS): Add definition line. + +Thu Apr 7 22:22:22 1994 James Clark (jjc@jclark.com) + + * troff/input.cc (get_optional_char): Split off error check into... + (check_missing_character): New function. + * troff/token.h: Declare it. + * troff/env.cc (margin_character): Don't call get_optional_char. + Only call tok.next() after making the node. + + * include/lib.h (getopt): Make 2nd argument char *const *. + +Fri Mar 11 07:28:03 1994 James Clark (jjc@jclark.com) + + * nroff/conftest.sh: Deleted. + +Fri Mar 4 10:51:36 1994 James Clark (jjc@jclark.com) + + * pic/make-dos-dist: Deleted. + +Wed Mar 2 20:59:16 1994 James Clark (jjc@jclark.com) + + * devps/psstrip.sed: Strip comments before stripping trailing + white space. + +Sat Feb 19 13:07:16 1994 James Clark (jjc@jclark.com) + + * Version 1.09 released. + +Wed Feb 16 16:53:49 1994 James Clark (jjc@jclark.com) + + * tmac/doc-ditroff (hK): Don't reset page number if \nC is > 0. + +Mon Feb 14 08:26:40 1994 James Clark (jjc@jclark.com) + + * libgroff/font.cc (font::load_desc): Fix typo in error message. + +Sun Feb 13 09:37:38 1994 James Clark (jjc@jclark.com) + + * libgroff/new.cc (operator new): Rewrite so as to avoid warning + about returning without a value. + + * troff/charinfo.h (charinfo::get_special_translation): Cast + TRANSLATE_NONE to int. + + * refer/token.cc (lookup_token, store_token): Remove bogus loop + test. Fix test so that it works with n unsigned. + + * pic/pic.y (defaults_table): Fully bracket initializer. + * pic/lex.cc (lookup_keyword): Likewise. + * eqn/lex.cc (token_table, def_table): Likewise. + * eqn/box.cc (param_table): Likewise. + * troff/input.cc (warning_table): Likewise. + * libgroff/font.cc (table): Likewise. + * grops/ps.cc (ps_printer::special): Likewise. + * grops/psrm.cc (resource_manager::process_file): Likewise. + * tfmtodit/tfmtodit.cc (lig_chars, lig_table): Likewise. + * refer/command.cc (command_table): Likewise. + * addftinfo/addftinfo.cc (param_table): Likewise. + + * troff/symbol.cc (symbol::symbol): Prevent compiler warnings + about temp's being unused. + (unused): New function. + + * groff/pipeline.cc: Declare c_fatal. + + * libbib/linear.cc (bmpattern::search): Cast patterrn[--j] to + uchar. + + * libbib/index.cc (index_search_item::load): Prevent compiler + warnings about fd_closer's being unused. + (unused): New function. + +Sat Feb 12 10:31:59 1994 James Clark (jjc@jclark.com) + + * troff/input.cc (copy_mode_error): Make `prefix' static. + Fix typo. + + * include/posix.h: Include <osfcn.h> is HAVE_CC_OSFCN_H is + defined. + * acgroff.m4, configure.in, Makefile: Rename HAVE_CC_UNISTD_H to + HAVE_CC_OSFCN_H and modify accordingly. + + * troff/input.cc (init_charset_table): radicalex overlaps + horizontally. + + * groff/acgroff.m4 (GROFF_ISC_SYSV3): New macro (from + udodo!hans@relay.NL.net). + * groff/configure.in: Call it. + + * groff/acgroff.m4 (GROFF_PCLOSE): New macro. + * groff/configure.in: Call it. + * include/lib.h: Conditionalize declaration of pclose. + + * troff/div.cc (last_page_number): New global variable. + (top_level_diversion::begin_page): Exit if we just printed the + last page. + * troff/div.h (last_page_number): Declare it. + * troff/input.cc (parse_output_page_list): Set last_page_number. + + * eqn/sqrt.cc: Rename \(rn to \[radicalex]. + * devps/S, devps/textmap, tmac/tmac.ps, tmac/tmac.dvi, + tmac/tmac.X: Likewise. + * tmac/tmac.ps, tmac/tmac.X, tmac.dvi: Add definitions of \(rn. + * tmac.dvi: Make \(ru and \(ul extend beyond their width by .04m. + +Fri Feb 11 11:45:40 1994 James Clark (jjc@jclark.com) + + * tmac/doc-ditroff (hK): Remove groff specific code which + prevented page-breaks between separate manual entries. If this is + the first page, don't set the page number to 1. + + * acgroff.m4 (GROFF_POSIX): New macro. + * configure.in: Use it. + + * troff/node.cc (class real_output_file, + real_output_file::real_output_file, + real_output_file::~real_output_file): Conditionalize use of + popen/pclose on POPEN_MISSING. + * troff/node.h: Conditionalize pipe_command on POPEN_MISSING. + * troff/input.cc (pipe_command): Give an error if POPEN_MISSING. + (pipe_source): Similarily. + + * acgroff.m4 (GROFF_PROG_CCC): Update message about libg++. + + * acgroff.m4 (GROFF_GETOPT, GROFF_PUTENV, GROFF_POPEN): Detect + presence of declarations by trying to compile example with + conflicting declarations. (gcc only gives a warning for missing + declarations.) + +Wed Feb 9 09:12:23 1994 James Clark (jjc@jclark.com) + + * tmac/tmac.pspic (PSPIC): Allow options to specify alignment + (from Ulrich Lauther). + +Tue Feb 8 03:56:40 1994 James Clark (jjc@jclark.com) + + * libbib/linear.cc (file_buffer::load): Use S_ISREG macro. + +Thu Feb 3 09:34:35 1994 James Clark (jjc@jclark.com) + + * indxbib/indxbib.cc (write_hash_table): Add code for case where + pointers and ints have different sizes. + +Sun Jan 9 16:17:51 1994 James Clark (jjc@jclark.com) + + * tmac/tmac.s (par*env-init): Call par@reset. + +Fri Jan 7 10:24:27 1994 James Clark (jjc@jclark.com) + + * tmac/tmac.s (@IP): Switch to a new environment when diverting + tag. + (par*push-tag-env, par*pop-tag-env): New macros. + +Wed Jan 5 21:18:34 1994 James Clark (jjc@jclark.com) + + * grops/ps.cc (ps_printer::ps_printer): Use MAX_LINE_LENGTH for + initializing `out'. Reduce MAX_LINE_LENGTH from 79 to 72. + + * grops/ps.cc (ps_printer::~ps_printer): Output %%CreationDate + comment. Include <time.h>. + +Wed Dec 15 14:14:00 1993 James Clark (jjc@jclark.com) + + * grops/ps.cc (is_small_h, is_small_v): Deleted. + (ps_printer::flush_sbuf): Use absolute motion only at beginning of + lines. + +Tue Dec 14 10:06:34 1993 James Clark (jjc@jclark.com) + + * troff/input.cc (read_request): Only print a prompt if reading + from the terminal. Also clearerr on EOF if reading from the + terminal. Declare isatty. + +Mon Nov 29 08:38:15 1993 James Clark (jjc@jclark.com) + + * refer/label.y: Rename map_t to map_func and extractor_t to + extractor_func. + +Sat Oct 30 06:38:12 1993 James Clark (jjc@jclark.com) + + * include/assert.h: Don't use volatile. + * libgroff/assert.cc: Likewise. + +Fri Oct 29 15:00:23 1993 James Clark (jjc@jclark.com) + + * troff/input.cc (abort_request): Look at character in tok before + calling get_copy(). + +Thu Oct 28 14:09:48 1993 James Clark (jjc@jclark.com) + + * troff/troff.h (NO_RETURN): Deleted. + * troff/div.cc (cleanup_and_exit): Don't declare aas NO_RETURN. + * troff/input.cc (exit_troff): Likewise + + * Makefile.in: Remove `Making ...' messages since GNU make now + gives these. + + * configure.in: Use AC_HAVE_HEADERS(unistd.h) instead of AC_UNISTD_H. + +Wed Oct 27 11:12:51 1993 James Clark (jjc@jclark.com) + + * tmac/tmac.s (@init): Initialize PO to \n(.o here, rather than + to constant 1 inch. + +Sat Oct 23 10:03:52 1993 James Clark (jjc@jclark.com) + + * tmac/tmac.e (hl): Use \n[.in] rather than \n(.i. + +Thu Oct 14 12:09:45 1993 James Clark (jjc@jclark.com) + + * eqn/delim.cc (delim_box::compute_metrics): Don't increase + MARK_REG if there was no left delimiter. + +Sat Oct 2 19:54:47 1993 James Clark (jjc@jclark.com) + + * pic/troff.cc (troff_output::text): Set line thickness to + relative before outputting text. + + * tmac/tmac.e (@k): Don't zero ?T. + ((z): Likewise. + +Sat Sep 25 11:08:43 1993 James Clark (jjc@jclark.com) + + * tmac/tmac.e ($p): Handle possibility that $3 is empty. + +Wed Aug 18 08:51:41 1993 James Clark (jjc@jclark.com) + + * troff/input.cc (decode_args): Warn about unquoted tabs (from + Paul Eggert). + +Tue Aug 10 08:38:32 1993 James Clark (jjc@jclark.com) + + * troff/input.cc (ignoring): New variable. + (ignore): Set ignoring during call to do_define_macro. + (do_define_macro): Clear ignoring before interpolating terminating + macro. + (copy_mode_error): New function. + (get_char_for_escape_name, read_long_escape_name, + interpolate_arg): Use copy_mode_error. + (warning_table): Add WARN_IG. + * troff/troff.h (WARN_IG): Declare. + (WARN_TOTAL): Change accordingly. + + * groff/pipeline.c (strsignal): Rename to xstrsignal. + * groff/groff.cc (strsignal): Delete declaration. + +Fri Jul 16 01:43:12 1993 James Clark (jjc@jclark.com) + + * troff/div.cc (page_offset): Use 'm' as default scaling. + +Sat Jul 3 09:11:38 1993 James Clark (jjc@jclark.com) + + * nroff/nroff.sh: Ignore -u. + +Wed Jun 9 12:17:27 1993 James Clark (jjc@jclark.com) + + * Makefile.in (MDEFINES): Pass down MAKEOVERRIDES. + +Fri Jun 4 17:35:47 1993 James Clark (jjc@jclark.com) + + * tmac/tmac.s (par*box-draw): Set adjustment mode to l while + drawing box. + (B2): With -Tascii, leave additional vertical space before + and after. Ensure that the left and right indent is restored to + what it was even if the point size changes. Don't call + par@finish. Change the indent, line length and title length + directly. With -Tascii, make the width of the box 1n less. + (B1): Remember 1n at the current point size. Don't call + par@reset. Change the indent, line length and title length + directly. Ensure that the temporary indent is preserved. + (par*box-mark-top): Turn off no spacing mode. + +Thu Jun 3 17:47:14 1993 James Clark (jjc@jclark.com) + + * Makefile.in (dist): Use .gz suffix. + +Thu May 27 20:04:59 1993 James Clark (jjc@jclark.com) + + * troff/input.cc (main): Add return 0. + * pic/main.cc (main): Use return instead of exit. + * tbl/main.cc (main): Likewise. + * eqn/main.cc (main): Likewise. + * grops/ps.cc (main): Likewise. + * grotty/tty.cc (main): Likewise. + * groff/groff.cc (main): Likewise. + * grodvi/dvi.cc (main): Likewise. + * refer/refer.cc (main): Likewise. + * indxbib/indxbib.cc (main): Likewise. + * lkbib/lkbib.cc (main): Likewise. + * soelim/soelim.cc (main): Likewise. + * addftinfo/addftinfo.cc (main): Likewise. + * acgroff.m4 (GROFF_PROG_CCC, GROFF_CC_COMPILE_CHECK, + GROFF_COOKIE_BUG, GROFF_CC_ANSI_BUG): Likewise. + + * troff/token.h (process_input_stack): Don't declare as static. + * troff/input.cc: Likewise. + + * troff/node.c (invalidate_fontno): Make it a static member of + class font_family. Change callers. + * troff/node.c: Change declaration. + + * tbl/main.cc (struct input_entry_format): Add explicit public + specifier. + * tbl/table.cc (struct text_stuff, struct single_hline_stuff, + struct double_hline_stuff): Likewise. + * tbl/table.h (struct entry_format): Likewise. + * pic/object.h (struct saved_state): Likewise. + + * include/stringclass.h: Add forward declarations of friend + functions that are later declared as inline. Don't include inline + specifier in friend declaration. + + * libgroff/lib.h: Declare popen and pclose. + * acgroff.m4 (GROFF_POPEN): New macro. + * configure.in: Call it. + + * include/lib.h (PI): New constant. Undef first if necessary. + * tfmtodit/tfmtodit.cc (main): Use PI rather than M_PI. + * grops/ps.cc (degrees, radians): Likewise. + * libgroff/font.cc (font::get_skew): Likewise. + + * grops/ps.cc (is_ascii): New function. + (ps_output::put_string): Use is_ascii. Use csprint rather than + isprint. + (ps_printer::define_encoding): Use csspace. + * libgroff/strtol.c (ISASCII): New macro. + (strtol): Cast arguments to is*() and tolower() to unsigned char. + Use ISASCII rather than isascii. + * libgroff/cmap.cc: Use isascii() only if <ctype.h> defines it. + * libgroff/cset.cc: Likewise. + * libdriver/input.cc: Include cset.h. + (do_file, get_integer, possibly_get_integer): Use csdigit() rather + than isdigit(). + + * refer/refer.cc (main): Use %ld rather than %d for longs. + + * libbib/index.cc (index_search_item_iterator::get_tag): Use + S_ISREG macro. + + * addftinfo/addftinfo.cc (param_t): Add explicit `int'. + +Mon May 24 08:51:37 1993 James Clark (jjc@jclark.com) + + * troff/input.cc (hyphenation_code): Skip white space between + char/code pairs. + +Sun May 16 08:15:52 1993 James Clark (jjc at jclark.com) + + * tbl/table.h (table::entry_list_tailp): New member. + (table::table): Initialize it. + (table::add_entry): Use entry_list_tailp to avoid O(n^2) + behaviour. + +Sat May 15 17:26:00 1993 James Clark (jjc at jclark.com) + + * grotty/tty.cc (tty_printer::add_char): Don't discard characters + with negative horizontal positions. Remove casts of glyph::hpos to + int. + (USHRT_MAX): Delete definition. + (SHRT_MAX, SHRT_MIN): New definitions. + (glyph::hpos): Change type to short. + (tty_printer::end_page): Output multiple backspaces if necessary. + Remove casts of glyph::hpos to int. + +Fri May 7 12:14:37 1993 James Clark (jjc at jclark.com) + + * tmac/tmac.s (@RT): New definition. + +Thu May 6 21:36:54 1993 James Clark (jjc at jclark.com) + + * refer/refer.cc (do_file): Make sure current_filename is set when + filename is "-". + + * pic/common.cc (common_output::dot_line): Handle zero length + lines. + +Sun May 2 19:54:16 1993 James Clark (jjc at jclark.com) + + * tmac/tmac.s (par@reset): Get value for .hy for \n[HY]. + (par@init): Initialize \n[HY]. + +Mon Apr 26 11:43:16 1993 James Clark (jjc at jclark.com) + + * troff/dictionary.cc (dictionary::remove): Continue when + r < j < i. + +Sun Apr 25 11:03:00 1993 James Clark (jjc at jclark.com) + + * Makefile.com (.y.cc): Avoid ending up with two versions of + $(YTABH). + +Thu Apr 22 21:03:45 1993 James Clark (jjc at jclark.com) + + * tmac/tmac.dvi (\(,c): Define only if it does not exist. + (\(,C): Likewise. Also fix typo. + +Wed Apr 21 08:47:32 1993 James Clark (jjc at jclark.com) + + * lib.h: Delete extraneous semi-colon. + + * Add pso request: `so' from a pipe. + * troff/input.c (file_iterator::file_iterator): Add 3rd argument. + (file_iterator::close): New function. + (file_iterator::~file_iterator, file_iterator::next_file): Use + file_iterator::close. + (file_iterator::backtrace): Say `process' rather than `file' when + the stream is popened. + (pipe_source): New function. + (init_input_requests): Bind ".pso" to pipe_source. + +Tue Apr 20 00:02:26 1993 James Clark (jjc at jclark.com) + + * afmtodit/afmtodit.pl: Avoid single quotes in comments. + + * pfbtops/pfbtops.c: Output 64 characters per line. Output hex + digits in lower case. + +Mon Apr 19 09:55:57 1993 James Clark (jjc at jclark) + + * Version 1.08 released. + + * Makefile.in (dist): Insert || true after ln -s commands that + might fail. + + * mm: Update to mm 1.16. + + * acgroff.m4 (GROFF_CSH_HACK): New macro. + * configure.in: Call GROFF_CSH_HACK. Substitute for + SH_SCRIPT_SED_CMD. + * Makefile.in (SH_SCRIPT_SED_CMD): New variable. Include in + MDEFINES. + * nroff/Makefile.sub (nroff): New target. + (install_data): Install nroff. + * eqn/Makefile.sub (neqn): Sed with SH_SCRIPT_SED_CMD. + * grog/Makefile.sub (grog): Sed grog.sh with SH_SCRIPT_SED_CMD. + +Sat Apr 17 08:24:28 1993 James Clark (jjc at jclark) + + * eqn/Makefile.sub (neqn): Add chmod +x. + + * grog/Makefile.sub (grog): Remove spurious semi-colon. + +Fri Apr 16 22:41:57 1993 James Clark (jjc at jclark) + + * troff/input.cc (string_iterator::string_iterator()): Initialize + lineno and count. + +Tue Apr 13 10:22:28 1993 James Clark (jjc at jclark) + + * troff/div.cc (macro_diversion::space, + top_level_diversion::space): Don't set high_water_mark. + (macro_diversion::output, top_level_diversion::output): Don't + include post line space in high water mark. + +Wed Apr 7 12:48:18 1993 James Clark (jjc at jclark) + + * eqn/eqn.y: Don't define YYDEBUG. + * pic/pic.y: Likewise. + +Mon Apr 5 10:15:15 1993 James Clark (jjc at jclark) + + * tmac/tmac.e ([3): Add space after comma following editors. + Change double spaces to single spaces. + ([4): Change double spaces to single spaces. + + * grops/ps.h (USE_PS_ADOBE_2_0): New flag for broken_flags. + * grops/ps.cc (ps_printer::~ps_printer): If the USE_PS_ADOBE_2_0 + bit is set in broken_flags, use 2.0 rather than 3.0 as the version + after %!PS-Adobe- (for Newsprint). + + * troff/div.cc (top_level_diversion::begin_page): When + before_first_page is 1, set page_number to 1. + +Sun Apr 4 14:28:53 1993 James Clark (jjc at jclark) + + * eqn/box.cc (box::top_level): Protect equation with \&. + +Sat Apr 3 23:27:25 1993 James Clark (jjc at jclark) + + * groff/groff.cc (possible_command::set_name): Delete old name. + + * groff/groff.cc (possible_command::~possible_command): Use + a_delete. + + * troff/node.cc (troff_output_file::begun_page): New member. + (troff_output_file::troff_output_file): Initialize it. + (troff_output_file::really_begin_page): Only output V command if a + page has been begun. + + * pic/pic.y (placeless_element): Delete argument to PRINT after + use. + +Fri Apr 2 11:31:02 1993 James Clark (jjc at jclark) + + * Make wrapman work. + * troff/div.h (class top_level_diversion): Replace + first_page_begun by before_first_page (with opposite sense). + * Change first_page_begun to before_first_page inverting sense. + * troff/div.cc (class nl_reg): New class. + (init_div_requests): Use class nl_reg for \n(nl. + (top_level_diversion::begin_page): Don't call + output_file::begin_page if before_first_page is 2; + reset before_first_page afterwards. If have_next_page_number is + false, then always increment page_number. + * tmac/tmac.an: Set traps within TH rather than at the top-level. + Restore compatibility mode after loading, and then disable + compatibility mode in TH. + +Thu Apr 1 11:09:34 1993 James Clark (jjc at jclark) + + * grotty/tty.cc (tty_printer::end_page): Don't discard characters + past last line. + * troff/node.h (output_file::trailer): Declare. + * troff/div.cc (cleanup_and_exit): Call output_file::trailer(). + * troff/node.cc (output_file::trailer): New function. + (troff_output_file::~troff_output_file): Move most code into... + (troff_output_file::trailer): New function. + (class troff_output_file): Delete page_length member. Declare + trailer(). + (troff_output_file::really_begin_page): Use current page length + for final V command. + + * tbl/main.cc (struct options): New decimal_point_char member. + (options::options): Initialize this. + (process_options): Implement decimalpoint option. + (process_data): Pass decimal_point_char option to table::table. + * tbl/table.h (class table): New decimal_point_char member. + (table::table): Add additional argument. + * tbl/table.cc (find_dot): Rename to find_decimal_point. Add + second argument specifying decimal point character. Use this + instead of '.'. + (table::table): Initialize decimal_point_char. + (table::add_entry): Change call to find_dot. + + * troff/input.cc (get_copy, token::next): Implement \V. + (interpolate_environment_variable): New function. + +Tue Mar 30 14:41:39 1993 James Clark (jjc at jclark) + + * pic/lex.cc (lookup_keyword): Rename MIN to K_MIN, MAX to K_MAX. + * pic/pic.y: Likewise. + + * grotty/tty.cc (tty_printer::add_char, tty_printer::end_page): + Add casts to int. + * refer/ref.cc (reference::insert_field, reference::delete_field): + Likewise. + * troff/number.cc (parse_term): Likewise. + + * acgroff.m4 (GROFF_PROG_YACC): New macro. + * configure.in: Use GROFF_PROG_YACC. + + * acgroff.m4 (GROFF_PROG_CCC): Don't add -O automatically for gcc + and g++. + * Makefile.in (OPTIMIZE): New define. + (DEBUG): Empty by default. + (CCFLAGS, CFLAGS): Include $(OPTIMIZE). + + * acgroff.m4 (GROFF_SYS_SIGLIST): Don't quote program. + (GROFF_ARRAY_DELETE): Likewise. + (GROFF_CC_COMPILE_CHECK): Quote use of $2 and $3. + + * troff/env.cc (trie::~trie): Make virtual to shut up g++. + + * devps/psstrip.sed: Use different delimiter on last line (so that + it works with BSD 4.4 sed.) + +Mon Mar 29 17:07:14 1993 James Clark (jjc at jclark) + + * devps/psstrip.sed: Delete comments. + + * acgroff.m4 (AC_GETOPT): Don't test whether <unistd.h> declares + optind, opterr, optarg. + * lib.h: When UNISTD_H_DECLARES_GETOPT is defined, declare optind, + opterr, optarg. + +Sun Mar 28 17:44:25 1993 James Clark (jjc at jclark) + + * Makefile.in (check): Dummy target. + +Wed Mar 3 04:53:38 1993 James Clark (jjc at jclark) + + * Version 1.07 released. + + * Integrate mm 1.11. + + * tbl/table.cc (alphabetic_block_entry::print): start_row was used + where start_col was meant. + +Thu Feb 25 07:55:36 1993 James Clark (jjc at jclark) + + * grog/grog.sh, grog/grog.pl: Recognize PH and SA as -mm macros. + +Wed Feb 24 10:15:34 1993 James Clark (jjc at jclark) + + * troff/input.cc (token::next): Make \z\o'...' and similar things + work. + + * env.h (MARGIN_CHARACTER_ON, MARGIN_CHARACTER_NEXT): New + constants. + (environment): Add margin_character_flags member. + * env.cc (environment::environment(symbol), + environment::environment(const environment *): Initialize + margin_character_flags. + (margin_character): Rewrite. + (environment::output_line): Add a margin character if + margin_character_flags is non-zero. Turn off the + MARGIN_CHARACTER_NEXT bit. If that makes margin_character_flags + zero, use margin_character_node without copying and then set + margin_character_node to 0. + + * devps/DESC.in: Change minimum size to 1000. + +Tue Feb 23 14:57:49 1993 James Clark (jjc at jclark) + + * troff/symbol.h (symbol::hash): Change return type to unsigned + long. + * troff/dictionary.cc (dictionary::lookup, dictionary::remove): + Add casts to int. + + * test-groff: Use -r rather than -x. + + * grops/psfig.diff: Include in distribution again. + +Mon Feb 22 09:10:44 1993 James Clark (jjc at jclark) + + * Makefile.in (dist): Use gzip. + +Sun Feb 21 11:12:53 1993 James Clark (jjc at jclark) + + * acgroff.m4 (GROFF_GETOPT): Check for declaration of getopt() in + unistd.h as well as in stdlib.h. + * include/lib.h: Include <stdlib.h> is STDLIB_H_DECLARES_GETOPT is + defined; otherwise include <sys/types.h> and <unistd.h> if + UNISTD_H_DECLARES_GETOPT is defined. + + * configure.in: use builtin(include, ... rather than include(... + * configure: Regenerate with autoconf 1.3. + + * libdriver/print.cc (printer::adjust_arc_center): Use new + algorithm suggested by Andy Fyfe. + + * libdriver/printer.cc (printer::adjust_arc_center): New function. + * include/printer.h: Declare this. + * grops/ps.cc (ps_printer::draw): Use it. + * grodvi/dvi.cc (dvi_printer::draw): Use it. + +Fri Feb 19 23:13:51 1993 James Clark (jjc at jclark) + + * Makefile.comm (.man.n): Replace macrodir by tmacdir. + +Thu Feb 11 16:46:59 1993 James Clark (jjc at jclark) + + * eqn/main.cc (main): Handle "eqn -". + +Mon Jan 4 20:29:56 1993 James Clark (jjc at jclark) + + * tmac/tmac.e (++): Install fix from comp.bugs.4sd. + + * mm: Integrate version 1.08. + + * pic/troff.cc (troff_output::finish_picture): Set + EQN_NO_EXTRA_SPACE reg to 0 rather than removing it. + * eqn/box.cc (box::extra_space): Set EQN_NO_EXTRA_SPACE_REG to 0 + if it's not defined. Check whether the register is non-zero rather + than whether it's not defined. + * tmac.e ({, <): Make argument to \x zero if \n(0x is non-zero. + + * indxbib/indxbib.cc: Move all signal handling into... + * indxbib/signal.c: New file. + * configure.in: Call AC_RETSIGTYPE. + + * acgroff.m4 (GROFF_STRUCT_EXCEPTION): New macro. + * configure.in: Call GROFF_STRUCT_EXCEPTION. + * libgroff/matherr.c: Protect with ifdef HAVE_STRUCT_EXCEPTION. + + * troff/input.cc (token::token, token::operator=): Work round SGI + C++ bug. + * pic/object.cc (position::position): Likewise. + +Mon Dec 28 21:50:21 1992 James Clark (jjc at jclark) + + * pic/pic.h: Move declaration of hypot(). + +Wed Dec 16 12:28:29 1992 James Clark (jjc at jclark) + + * pic/pic.h: Declare hypot(). + + * pic/pic.h: Define M_PI if necessary. + +Thu Dec 10 12:03:29 1992 James Clark (jjc at jclark) + + * tmac/tmac.e (re): Add alternative version that doesn't use groff + `.ta T' feature. + + * devps/prologue.ps (RE): Handle the possibility that the old font + doesn't have a FontName entry. + +Wed Dec 2 10:25:29 1992 James Clark (jjc at jclark) + + * tmac/tmac.e (fam): Redefine to set family in environment 2. + (@C): Use @fam not fam. + +Thu Nov 26 16:01:25 1992 James Clark (jjc at jclark) + + * lookbib/lookbib.cc (main): Change type of start to const char *. + * lkbib/lkbib.cc (main): Likewise. + + * eqn/lex.cc (definition::definition): Don't use member + initializer syntax for members of anonymous unions. + + * troff/input.cc (input_stack::backtrace): Change type of to const + char *. + +Wed Nov 25 13:43:09 1992 James Clark (jjc at jclark) + + * include/stringclass.h (class string): Declare inline friend + functions as inline in class declaration. + * troff/hvunits.h (class hunits, class vunits): Likewise. + * include/refid.h (class reference_id): Likewise + * troff/troff.h (points_to_units(units), scale(units, double)): + Delete declarations. + * libdriver/input.cc (get_char): Delete declaration. + * include/lib.h: Change 2nd argument of getopt from const char ** + to char **. + * troff/symbol.cc (symbol::symbol): Cast `new char *[n]' to `const + char **' before assigning to a `const char **'. + * tbl/table.cc: Delete extra declarations of prints(). + +Tue Nov 24 14:33:13 1992 James Clark (jjc at jclark) + + * libgroff/font.cc (font::load_desc): Cast `new char *[n]' to `const + char **' before assigning to a `const char **'. + + * libgroff/errarg.cc (errarg::errarg): Don't use member + initializer syntax for members of anonymous unions. + +Sat Nov 21 05:02:23 1992 James Clark (jjc at jclark) + + * mm: Integrate version 1.07. + +Tue Nov 17 16:44:27 1992 James Clark (jjc at jclark) + + * troff/input.c (translate2): Rename to + (translate_no_transparent). + (init_input_requests): Rename tr2 to trnt. + +Mon Nov 16 09:49:32 1992 James Clark (jjc at jclark) + + * troff/charinfo.h (class charinfo): Add transparent_translate field. + (charinfo::set_translation, charinfo::set_special_translation): + Add second argument that specifies value for + transparent_translate. + (charinfo::get_translation, charinfo::get_special_translation): + Add optional second argument that specifies whether translation is + being used for transparent throughput. + * troff/input.cc (charinfo::set_translation, + charinfo::set_special_translation): Handle second argument. + (charinfo::charinfo): Initialize transparent_translate. + (translate): Split main part off into + (do_translate): New function. Pass argument saying whether + translation applies to transparent throughput. + (translate2): New request. + (init_input_requests): Bind translate2 to `tr2'. + +Wed Nov 11 11:43:20 1992 James Clark (jjc at jclark) + + * tbl/table.h (class table): Add `nokeep' flag. + * tbl/main.cc (process_options): Handle `nokeep' option. + * tbl/table.cc (table::init_output, table::do_row, table::do_top, + table::do_bottom): Don't output keep/release macro definitions or + calls when `nokeep' option has been specified. + +Sat Nov 7 01:28:33 1992 James Clark (jjc at jclark) + + * tmac/tmac.Xps (Xps-char): Use " as delimiter for \Z. + +Wed Nov 4 16:29:04 1992 James Clark (jjc at jclark) + + * tbl/table.cc (table_entry::divert, block_entry::do_divert, + block_entry::divert, alphabetic_block_entry::divert): Add extra + argument giving column separation. + (table::compute_widths): Pass column separation to + table_entry::divert(). + (block_entry::do_divert): If an entry spans multiple columns and a + minimumum width has been specified for each column, then set the + line length to the sum of the widths (plus possibly the column + separations). + + * troff/input.cc (set_escape_char): Don't set the escape_char + until after calling has_arg(). + +Tue Nov 3 11:23:27 1992 James Clark (jjc at jclark) + + * tbl/table.cc (table::do_top): Add missing \s0 for double box + case. + + * tbl/table.cc (table::print_double_hline): Avoid extra new line + in case where r > nrows - 1. + + * tbl/table.cc (BODY_HEIGHT): Deleted. + (LINE_SEP): New definition. + (table::print_single_hline, table::print_double_hline, + table::compute_vrule_top_adjust, table::compute_vrule_bot_adjust, + table::do_row, table::do_top): Use LINE_SEP space before a line + instead of \n[.v]-BODY_HEIGHT-BODY_DEPTH. + + * tbl/table.cc (text_entry::print_contents): New function. + (text_string_name, right_text_string_name): Deleted. + (TEXT_STRING, RIGHT_TEXT_STRING): Deleted. + (simple_text_entry::do_width, numeric_text_entry::do_width, + alphabetic_text_entry::do_width): Don't store the contents of the + entry in a string. + (left_text_entry::simple_print, right_text_entry::simple_print, + center_text_entry::simple_print, + alphabetic_text_entry::simple_print, + numeric_text_entry::simple_print): Print the entry directly + instead of using the stored string. + +Fri Oct 30 10:39:32 1992 James Clark (jjc at jclark) + + * devps/Makefile: Strip PostScript files. + * devps/prologue: Rename to... + * devps/prologue.ps. + * devps/psstrip.sed: New file. + * devps/download: Use .pfa rather than .ps for installed versions + of fonts. + +Thu Oct 29 09:14:43 1992 James Clark (jjc at jclark) + + * troff/env.cc (input_trap): Give a warning if the argument is out + of range. + + * troff/env.cc (adjust): Treat negative argument as missing. Round + argument > 5 down to 5. + + * troff/env.cc (center, right_justify): Make negative argument zero. + + * troff/div.cc (page_offset, vertical_position_traps): Treat + invalid argument as missing. + * troff/env.cc (line_spacing, line_length, title_length, indent, + underline, hyphen_line_max_request, control_char, + no_break_control_char, widow_control_request, adjust, input_trap, + point_size): Likewise. + * troff/node.cc (ligature, kern_request, bold_font, track_kern, + constant_space): Likewise. + * troff/input.cc (compatible, shift, warn_request, + set_escape_char): Likewise. + + * tbl/main.cc (format::format): Avoid doing `new int[0]'. + * tbl/table.cc (table::table): Likewise. + + * Makefile.dev (install_dev): depends on $(DEVFILES). + +Wed Oct 28 08:30:57 1992 James Clark (jjc at jclark) + + * devX75, devX75-12, devX100, devX100-12: New directories. + * Makefile.in: Add these to DEVDIRS. + + * troff/Makefile.sub, eqn/Makefile.sub, indxbib/Makefile.sub, + afmtodit/Makefile.sub, tmac/Makefile.sub, nroff/Makefile.sub, + grog/Makefile.sub, mm/Makefile.sub (uninstall_sub): New target. + * Makefile.in (uninstall, uninstall_sub, uninstall_dirs): New + targets. + * Makefile.ccpg, Makefile.cpg, Makefile.dev, Makefile.man + (uninstall): New target. + * Makefile.comm (uninstall, uninstall_sub, uninstall_man, + uninstall_prog, uninstall_dev): New targets. + + * troff/div.cc (return_request): Treat an invalid argument as + missing. + +Mon Oct 26 11:33:47 1992 James Clark (jjc at jclark) + + * tmac/tmac.e ((f): Set up the environment even when there's a + current diversion. Transperently throughput a call to @N. + (@N): New macro. + +Thu Oct 22 05:05:59 1992 James Clark (jjc at jclark) + + * tbl/table.cc (table::compute_vrule_top_adjust): Round adjustment + up to vertical resolution. + + * tbl/table.cc (table::do_row): Change row number after printing + stuff list. + + * pic/lex.cc (get_token_after_dot): Make .left and .right work. + +Wed Oct 21 14:46:45 1992 James Clark (jjc at jclark) + + * Rename CHANGES to NEWS. + +Tue Oct 20 23:25:21 1992 James Clark (jjc at jclark) + + * libgroff/new.cc (operator new): Avoid calling malloc(0). + +Mon Oct 19 09:10:13 1992 James Clark (jjc at jclark) + + * man.ultrix: Removed. + +Sun Oct 18 06:35:15 1992 James Clark (jjc at jclark) + + * Makefile.comm (extraclean): Delete files whose names begin with + `='. + + * pic/troff.cc (troff_output::text): Fix typo in implementation of + aligned text. + +Sat Oct 10 09:32:29 1992 James Clark (jjc at jclark) + + * troff/env.cc (hyphenate_request, vertical_spacing, no_number): + * troff/div.cc (page_length, need_space, space_request): Treat + invalid optional argument as missing. + * troff/env.cc (number_lines): If the first argument is present + but not a number, turn on line numbering, don't change the next + line number and parse the remaining arguments. + + * tmac/tmac.e (@q): Do the `ne' before changing to environment 2. + +Thu Oct 8 10:24:40 1992 James Clark (jjc at jclark) + + * eqn/box.h: Change declaration accordingly. + * eqn/box.cc (set_gsize): Change return type to int. Return 0 if + the specified size was bad but don't give an error. Check for + overflow. + * eqn/main.cc (main): Change caller. Leave validation to set_gsize. + * eqn/lex (do_size): Likewise. + +Wed Oct 7 09:48:59 1992 James Clark (jjc at jclark) + + * acgroff.m4 (GROFF_PROG_CCC): Use fopen when checking for C++ + compatible headers. + +Sun Oct 4 18:24:02 1992 James Clark (jjc at jclark) + + * tbl/table.cc (table::init_output): Improve error message when + table won't fit on one page. + +Fri Oct 2 10:41:40 1992 James Clark (jjc at jclark) + + * pic/troff.cc (troff_output::start_picture): Generate line + containing a horizontal motion equal to the width of the picture. + + * groff/groff.cc (main): Allow PROG_PREFIX to be set at runtime + using GROFF_COMMAND_PREFIX environment variable. + +Fri Sep 25 11:40:40 1992 James Clark (jjc at jclark) + + * mdate.sh: Use $NF rather than $(NF). + +Tue Sep 22 09:47:24 1992 James Clark (jjc at jclark) + + * pic/main.cc (main): Use %1 not %c in argument to warning. + + * eqn/main.cc (main): Output code to check that geqn was given the + correct -T option. + +Mon Sep 21 10:59:16 1992 James Clark (jjc at jclark) + + * Makefile.in (dist): Instead of doing `make -f ../Makefile', do + `ln -s ../Makefile .; make; rm -f Makefile'. + + * troff/hyphen: Rename to... + * troff/hyphen.us: + * troff/input.cc (main): Delete -H option. Don't call + read_hyphen_file(). + * troff/env.cc: Include searchpath.h and macropath.h. + (exception_dictionary): Deleted. + (ht): Deleted. + (read_hyphen_file): Deleted. + (hyphenation_language): New struct. + (class trie, class hyphen_trie): Move declarations up. + (trie_node::~trie_node): Deleted. + (trie::delete_trie_node): New function. + (trie::do_delete): New pure virtual function. + (hyphen_trie::do_delete): New function. + (trie::~trie): New function. + (hyphen_trie::~hyphen_trie): New function. + (trie::clear): No need to chcek that tp is not 0. + (current_language, language_dictionary): New variables. + (hyphen_word): Give an error if no current language. Use + exceptions dictionary in current language. + (hyphen_trie::read_patterns_file): Find file using macro_path. + Allow comments (starting with %) in patterns file. Don't make it + a fatal error if the file can't be found. + (hyphenate): Return if no current language. Get the exceptions + dictionary and the hyphenation patterns from the current language. + (set_hyphenation_language): New variable. + (hyphenation_patterns_file): New function. + (hyphenation_language_reg): New class. + (hyphenation_language_reg::get_string): New function. + (init_hyphen_requests): Bind "hla" to set_hyphenation_language and + "hpf" to hyphenation_patterns_file. Initialize `.hla' number + register. + * groff/groff.cc (main, help, synopsis): Delete -H option. + * include/Makefile.sub: Don't define HYPHENFILE. + * Makefile.in: Delete hyphenfile variable and remove from MDEFINES. + * Makefile.comm (.man.n): Don't substitute for HYPHENFILE. + * tmac/troffrc: Set hyphenation language to `us'. Load `hyphen.us' + hyphenation patterns. + +Sun Sep 20 09:33:02 1992 James Clark (jjc at jclark) + + * eqn/neqn.sh: New file. + * eqn/Makefile.sub: Handle neqn.sh. + + * eqn/eqn.h: Declare `nroff' variable. + * eqn/box.cc (param_table): Add `nroff' param. + (nroff): Define it. + * eqn/lex.cc (yylex): Handle TDEFINE and NDEFINE using `nroff' + variable. + * tmac/eqnrc: Set `nroff' to 1 for -Tascii or -Tlatin1. + + * troff/troff.h (WARN_FONT): New warning. + (WARN_TOTAL): Change accordingly. + * troff/input.cc (DEFAULT_WARNING_MASK): Include WARN_FONT. + (warning_table): Add WARN_FONT. + * troff/node.cc (mount_font_no_translate): Pass argument to + font::load_font. If this is non-zero, give a warning. + Don't give an error message when accessing a font that has already + been found to be invalid. + * include/font.h (font::load, font::load_font): Add additional + optional argument which suppresses error message if the font is + not found. + * libgroff/font.cc (font::load_font): Handle additional argument. + (font::load): Add additional argument. If this is non-null, set it + to 1 and don't give error message. + + * include/printer.h (printer::end_page): Add argument giving + length of page. + * libdriver/input.cc (do_file): Pass this. + * grops/ps.cc (ps_printer::end_page): Add argument. + * grodvi/dvi.cc (dvi_printer::end_page, + draw_dvi_printer::end_page): Add argument. + * grotty/tty.cc (class tty_printer): Remove lines_per_page and + columns_per_page members. New member nlines. + (DEFAULT_LINES_PER_PAGE): Deleted. + (tty_printer::tty_printer): Don't compute lines_per_page from + font::paperlength. Don't compute columns_per_page from + font::paperwidth. + (tty_printer::add_char): Don't check horizontal position against + columns_per_page. Grow glyphs vector if neccessary. + (tty_printer::end_page): Add argument giving page_length in units. + Discard lines past end of page. + +Wed Sep 16 06:29:52 1992 James Clark (jjc at jclark) + + * tmac/tmac.tty-char: Fix definition of \(/l. + + * tmac/tmac.X: Define \(en. + +Tue Sep 15 10:37:13 1992 James Clark (jjc at jclark) + + * acgroff.m4 (GROFF_PRINT): If a system has lpr and lp but not + lpq, then use lp rather than lpr. + + * tmac/tmac.s (par@reset): Don't call `ad'. + (par*env-init): Call `ad'. + +Sun Sep 13 18:48:20 1992 James Clark (jjc at jclark) + + * mdate.sh: Use $(NF) instead of $6 to extract year from output of + date. + + * troff/symbol.cc: #undef BLOCK_SIZE if it's defined. + * indxbib/indxbib.cc: Likewise. + +Sun Sep 6 09:44:46 1992 James Clark (jjc at jclark) + + * libgroff/putenv.c: New file. + * libgroff/Makefile.sub: Add putenv.c to CSRCS. + * Makefile.in: Say that putenv.o can be one of LIBOBJS. + * configure.in: Test for putenv with AC_REPLACE_FUNCS. Test for + stdlib.h with AC_HAVE_HEADERS. + +Sat Sep 5 18:11:52 1992 James Clark (jjc at jclark) + + * indxbib/dirnamemax.c: Include <sys/dir.h> only if <dirent.h> + does not exist. + +Fri Sep 4 09:43:26 1992 James Clark (jjc at jclark) + + * eqn/box.cc (gsize): Make it an int. + (set_gsize): Parse argument handling increment or decrement. + (box::top_level): Convert gsize to a string. + + * troff/input.cc (exit_troff): Make buf unsigned char []. + Call to make_temp_iterator casts buf to char*. + + * Makefile.in ($(TARGETS), dot): Pass $(MDEFINES) to recursive makes. + + * Makefile.ccpg (depend.temp): Depends on $(YTABC). + * Makefile.cpg (depend.temp): Likewise. + + * Makefile.dep: Remove Makefile.dep from $(REALCLEANFILES). + + * Makefile.comm: Add y.output to MOSTLYCLEANFILES. + +Thu Sep 3 08:01:55 1992 James Clark (jjc at jclark) + + * tmac/tmac.s (B, I, BI, CW): Rewrite avoiding aliases. + +Tue Sep 1 18:24:53 1992 James Clark (jjc at jclark) + + * Version 1.06 released. + + * Integrate mm 1.04. + +Fri Aug 28 11:28:19 1992 James Clark (jjc at jclark) + + * Makefile.comm, Makefile.ccpg, Makefile.cpg: Fix TAGS target. + +Thu Aug 27 11:03:33 1992 James Clark (jjc at jclark) + + * afmtodit/afmtodit.pl: Add -n option that disables generation of + ligatures command. + * devps/generate/Makefile (CR, CB, CI, CBI): Pass -n flag to + afmtodit. Regenerate. + + * tmac/tmac.e ()z): Adjust _b if necessary so as to avoid moving + @f back past the current position. + + * tmac/tmac.e: Change calls to @R so that comments are not part of + arguments. + +Tue Aug 25 10:42:07 1992 James Clark (jjc at jclark) + + * configure.in: Check for mkstemp with AC_HAVE_FUNCS. + + * acgroff.m4 (GROFF_PROG_CCC): Don't check for <osfcn.h>. Instead + check that we can link a call to a function declared in <stdio.h>. + (GROFF_UNISTD_H): New macro. + * configure.in: Call it. + * Makefile.in: Document it. + * include/posix.h: New file. + * troff/troff.h: Don't include <osfcn.h> + * troff/input.cc: Include posix.h. + * libgroff/new.cc, libgroff/tmpfile.cc: Include posix.h rather than + osfcn.h. + * indxbib/indxbib.cc, libbib/{search.cc,linear.cc,index.cc}: + Include posix.h rather <sys/types.h>, <sys/stat.h>, <osfcn.h>, + <fcntl.h>. + * indxbib/indxbib.cc (S_IRUSR, S_IRGRP, S_IROTH): Delete definitions. + * libbib/index.cc (S_ISREG, O_RDONLY): Delete definitions. + * libbib/search.cc (O_RDONLY): Delete definition. + * refer/refer.cc, include/driver.h, pic/pic.h, groff/groff.cc: + Don't include <osfcn.h>. + + * acgroff.m4 (GROFF_TIME_T): New macro. + * configure.in: Call it. + * Makefile.in: Document it. + + * acgroff.m4 (GROFF_TRADITIONAL_CPP): New macro. + * configure.in: Call it. + * Makefile.in: Document -DTRADITIONAL_CPP. + * include/ptable.h: Don't include generic.h. + (name2): Define it. + + * tmac/tmac.s (][): Make [T1 and [T2 aliases for [T. + Afterwards remove [T1 and [T2. + (ref*spec!0, ref*spec!2): Use T1 rather than T. + (ref*spec!1, ref*spec!4, ref*spec!4): Use T2 rather than T. + (ref*add-T2): Renamed from ref*add-T. + (ref*add-T1): New macro. + +Mon Aug 24 11:11:11 1992 James Clark (jjc at jclark) + + * acgroff.m4 (AC_PROG_CCC): Use GROFF_EXIT rather than exit 1. + + * libbib/index.cc: Include <fcntl.h>. + (O_RDONLY): Define if necessary. + (make_index_search_item, index_search_item_iterator::get_tag, + index_search_item::check_files): Use O_RDONLY. + * libbib/seach.cc: Include <fcntl.h>, <sys/types.h>, <sys/stat.h>. + (O_RDONLY): Define if necessary. + (search_list::add_file): Use O_RDONLY. + * indxbib/indxbib.cc: Include <fcntl.h>, <sys/types.h>, + <sys/stat.h>. + (S_IRUSR, S_IRGRP, S_IROTH): Define if necessary. + (main): Use these. + + * libbib/index.cc (S_ISREG): Define it if necessary. + (index_search_item::load): Use S_ISREG. + + * include/driver.h: Include <errno.h>. + +Sun Aug 23 11:32:18 1992 James Clark (jjc at jclark) + + * eqn/box.cc (body_height): Increase default value to 85. + (body_depth): Increase default value to 35. + +Fri Aug 21 05:34:42 1992 James Clark (jjc at jclark) + + * eqn/pbox.h (SAVE_FONT_STRING): Define it. + * eqn/box.cc (box::top_level): Hide use of \R in a string that is + protected from expansion with \E. + + * acgroff.m4 (GROFF_PAGE): Use `case' to test domain. + + * Makefile (Makefile): New target. + + * Makefile.sub (configure, distfiles): New targets. + + * acgroff.m4 (GROFF_BROKEN_SPOOLER_FLAGS): Avoid using ${var:-val} + construct. + +Thu Aug 20 12:27:26 1992 James Clark (jjc at jclark) + + * eqn/box.cc (param_table): Add body_height and body_depth. + + * eqn/lex.cc (def_table): Make circumflex in hat_def roman. + +Tue Aug 18 16:24:25 1992 James Clark (jjc at jclark) + + * psbb/Makefile.sub: Don't link with libgroff.a. + + * acgroff.m4 (GROFF_PUTENV): New macro. + * configure.in: Call GROFF_PUTENV. + * Makefile.in: Document STDLIB_H_DECLARES_PUTENV. + * groff/groff.cc: Don't declare putenv if STDLIB_H_DECLARES_PUTENV + is defined. + + * troff/env.cc (distribute_space): Rename force_forward argument + to force_reverse. Reverse the list if force_reverse is true. + +Mon Aug 17 17:49:05 1992 James Clark (jjc at jclark) + + * tmac/tmac.an: Don't define a string `T'. Just define Tm. + + * eqn/pile.cc (matrix_box::compute_metrics): Don't allow computed + height or depth to be negative. Guard against SUP_RAISE quantity + being negative. + +Sat Aug 15 08:18:54 1992 James Clark (jjc at jclark) + + * devps/generate/textmap: Add `an' (arrowhorizex). + * tmac/tmac.ps: \(an overlaps horizontally. + * tmac/tmac.dvi, tmac/tmac.tty: Add `an'. + + * devps/symbolchars: Add arrowverttp, arrowvertbt. + * devps/textmap: Add arrowvertex. + * eqn/delim.cc (delim_table): Add uparrow, downarrow and + updownarrow delimiters. + * tmac/tmac.ps, tmac/tmac.X: Add definition of \(va. + + * tbl/table.cc (simple_entry::position_vertically, + block_entry::position_vertically): For a centered entry, perform + the motion in two stages. + + * refer/refer.cc (split_punct): Don't call lookup_token if there + is no token. + +Fri Aug 14 11:14:58 1992 James Clark (jjc at jclark) + + * troff/input.cc (token::next): Delete token_node after copying + token. + + * grodvi/grodvi.cc (dvi_printer::dvi_printer): Initialize + cur_point_size. + + * libdriver/printer.cc (printer::load_font): Delete old_font_table. + + * grops/ps.cc (ps_printer::define_encoding): Delete elements of vec. + +Tue Aug 11 13:50:38 1992 James Clark (jjc at jclark) + + * grops/ps.cc (usage): -b option takes an argument. + + * devps/prologue (PLG): New procedure. + * grops/ps.cc (main, usage): New -g option. + (ps_printer::~ps_printer): If guess_flag is set, guess the paper + length using PLG. + +Mon Aug 10 11:17:53 1992 James Clark (jjc at jclark) + + * include/cset.h: Include <limits.h> if we have it. + + * libgroff/illegal.cc: New file. + * include/lib.h (illegal_input_char): Use table. + * troff/input.cc (ESCAPE_RIGHT_PARENTHESIS): Renumber to 0206. + * pic/lex.cc (ARG1): Renumber to 14. + * eqn/lex.cc (ARG1): Likewise. + + * troff/Makefile.sub (majorminor.cc): Handle 3 part versions + (eg 1.05.90) correctly. + +Sun Aug 9 13:35:43 1992 James Clark (jjc at jclark) + + * tmac/tmac.e (sr): Deleted. Set $r and $R directly. + Rename $r and $R registers to $v and $V. + ($r, $R): Initialize to 0. + (@v, @V): New macros. + (sz): Call @v. + (@M): Call @V. + + * troff/input.cc (main, usage): Add -R option that says not to + load troffrc. + * eqn/main.cc (main, usage): Rename -n to -R. + +Sat Aug 8 00:16:00 1992 James Clark (jjc at jclark) + + * devps/DESC.in: Leave font positions 5-9 blank. + * devdvi/DESC.in: Likewise. + + * grog/grog.pl: Handle `.PS <file' correctly. + + * troff/input.cc (input_stack::push): Improve error message when + input stack limit exceeded. + +Fri Aug 7 13:08:16 1992 James Clark (jjc at jclark) + + * refer/refer.cc (main): Fix typo in handling of `a' option. + + * refer/refer.cc (do_bib): In state START after a newline remain + in state START. + + * groff/groff.sh: Deleted. + * groff/Makefile.sub: Delete handling of groff.sh. + + * pic/troff.cc (troff_output::text): Test \n(0p rather than \*(.T + to determine whether to use \X'ps:...'. + * tmac/troffrc: Set 0p register to 0. + * tmac/tmac.ps: Set 0p register to 1. + + * groff/groff.cc: Support -X option. Give warning for -TXps and + transform to -X -Tps. Pass troff a -r.X=1 option if -X is used. + * tmac/troffrc: Support -r.X=1. + + * pic/troff.cc (troff_output::dot): Don't test + zero_length_line_flag. + +Thu Aug 6 13:32:08 1992 James Clark (jjc at jclark) + + * include/lib.h: Declare getopt() and friends unless + STDLIB_H_DECLARES_GETOPT is defined. + + * doc/chars.tr: Delete. + * man/groff_char.man: New file. + +Wed Aug 5 00:38:58 1992 James Clark (jjc at jclark) + + * tmac/tmac.e (np, bu): Test \n($p with string expression in case + user has changed register format. + +Mon Aug 3 11:22:18 1992 James Clark (jjc at jclark) + + * groff/groff.cc: Get rid of device_table. Get postprocessor from + `postpro' command in DESC file. Get spooler command from `print' + command in DESC file. Execute spooler command with /bin/sh. + + * groff/groff.cc: Split Unix-specific parts into... + * groff/pipeline.c: New file. + + * LICENSE: Delete. + * COPYING: New file. + * all files: Update copyright notices. + + * Rearrange files. Redo Makefiles. Use autoconf. + +Sat Aug 1 09:36:50 1992 James Clark (jjc at jclark) + + * troff/input.c (charinfo_to_node_list): Interpret character + definition with escape_char of `\'. + +Tue Jul 28 12:20:12 1992 James Clark (jjc at jclark) + + * lib/strerror.c, lib/iftoa.c, lib/itoa.c: Don't include lib.h. + Define INT_DIGITS as big enough for 64-bit integer. + * lib/strtol.c: Don't include lib.h. + * lib/lib.h: Delete ifdef __cplusplus stuff. + +Mon Jul 27 11:08:50 1992 James Clark (jjc at jclark) + + * ps/devps/Makefile: Add DESC to DEVICEFILES. Separate out rule + for making DESC. Make $(FONTS) depend on DESC. afmtodit should + get DESC from current directory. + +Sun Jul 26 15:38:26 1992 James Clark (jjc at jclark) + + * tbl/main.c (main): Always reset the line number when reading + from stdin. + + * tbl/table.c (table::print_single_hline, table::print_double_hline, + table::define_bottom_macro, table::do_row, table::do_top): Round + vertical spacing up to vertical resolution. + +Fri Jul 24 14:32:07 1992 James Clark (jjc at jclark) + + * ps/ps.h (enum resource_type): Avoid comma at end of + enumerator-list. + * dvi/dvi.c (class dvi_printer): Likewise. + * dvi/tfmtodit.c (gf::load): Likewise. + * refer/label.y (struct expression): Likewise. + * refer/refer.c (class label_processing_state): Likewise. + * refer/indxbib.c (do_file): Likewise. + * troff/troff.c (enum warning_type): Likewise. + * tbl/main.c (process_data): Likewise. + * troff/charinfo.h (class charinfo): + +Wed Jul 22 09:17:58 1992 James Clark (jjc at jclark) + + * dvi/devdvi/textt.map: Add entry for `-'. Regenerate fonts. + +Tue Jul 21 11:39:26 1992 James Clark (jjc at jclark) + + * groff.c: Move to new groff subdirectory. + * groff/Makefile: New file. + * Makefile: Remove handling of groff.c. Add groff to SUBDIRS. + + * man/mdate.sh: Use ls -L if supported. + + * Consolidate all header files produced by gendef into lib/defs.h. + * lib/macropath.c, lib/fontfile.c, lib/device.c: Include defs.h. + Don't include path.h. + * lib/Makefile (path.h): Don't generate. + * troff/input.c: Include defs.h. Don't include config.h. + * troff/Makefile (config.h): Don't generate. + * refer/index.h: Don't include suffix.h. + * refer/index.c: Include defs.h. + * refer/indxbib.c: Include defs.h. + * refer/refer.h, refer/lkbib.h: Don't include path.h. Include + defs.h. + * refer/Makefile (suffix.h, path.h): Don't generate. + * groff.c: Don't include config.h. Include defs.h. + * Makefile (config.h): Don't generate. + (lib/defs.h): Generate. + (topclean): Remove lib/defs.h. + +Mon Jul 20 10:12:57 1992 James Clark (jjc at jclark) + + * lib/malloc.c, lib/getpagesize.h: Deleted. + * Makefile: Add COOKIE_BUG configuration option. Delete malloc + related stuff. + * lib/Makefile: Delete malloc-related stuff. + * lib/new.c: Workaround COOKIE_BUG if necessary. + + * refer/lkbib.c, refer/indxbib.c: Don't include refer.h. Include + needed header files directly. + * refer/refer.h: Omit definition of DEFAULT_INDEX. + * Makefile: Include definition of DEFAULT_INDEX in path.h. + +Sun Jul 19 10:19:22 1992 James Clark (jjc at jclark) + + * lib/font.c (FONT_COMMAND_HANDLER): Pass command name and single + argument. + * lib/font (font::load_desc, font::load): Don't split argument of + unknown command. + (font::handle_unknown_font_command): Change type. + * ps/ps.c (ps_font::handle_unknown_font_command, + handle_unknown_desc_command): Change type. + * dvi/dvi.c (dvi_font::handle_unknown_font_command): Change type. + +Fri Jul 17 11:12:49 1992 James Clark (jjc at jclark) + + * lib/font.h (font::handle_unknown_font_command): Add file and + line arguments. + * lib/font.c (font::handle_unknown_font_command): + * ps/ps.c (ps_font::handle_unknown_font_command): + * dvi/dvi.c (dvi_font::handle_unknown_font_command): Add file and + lineno arguments. Use _with_file_and_line functions for error + reporting. + + * lib/fontfile.c (font::unknown_desc_command_handler): New static + data member. + * lib/font.c (font::set_unknown_desc_command_handler): New + function. + (font::load_desc): For unknown commands, call + unknown_desc_command_handler if not null. + * lib/font.h (class font): Declare them. + (FONT_COMMAND_HANDLER): New typedef. + * ps/ps.c (handle_unknown_desc_command): New function. + (main): Set bflag if we had a -b option. Call + font::set_unknown_desc_command_handler. + (broken.h): Don't include. + * ps/Makefile: No need for broken.h. Pass BROKEN_SPOOLER_FLAGS to + submake + * ps/devps/Makefile: Add `broken' command to DESC file using + BROKEN_SPOOLER_FLAGS. + + * macros/tmac.e ([, ]): Add as synonyms for { and }. + + * macros/tmac.e ($p): Only exdent if \$3 > 0. + + * macros/tmac.e (@R, @S): New macros. + Declare @, po, $0, $i, $p, df, so, fu, bt, *, ?a, ?b, ?C, ?e, ?H, + ?I, ?n, ?o, ?R, ?s, ?T, ?W, ?w registers with @R. + Declare $H, $[0-9], .. macros with @S. + Declare |0, |1, |2, |3 strings with @S. + + * macros/tmac.e (@S): Rename to @U. + + * macros/tmac.e (@z): Define @b and bp as empty instead of + deleting them, + + * macros/tmac.e (@m): Deleted. + (@h): Don't call @m. + (@z): Don't set @m trap. + + * macros/tmac.e ($h, $f): Define |z as empty string. + + * macros/tmac.e (@D): Rework to avoid unbalanced .el requests. + (@q): Likewise. + + * macros/tmac.e (@h): Set ?H, ?C , ?s registers to 0 rather than + removing them. + ()f): Likewise for * register. + + * macros/tmac.e (sr): Don't ever scale the arguments. If the third + argument is missing, don't change $R. Call sr with three + arguments when initializing. + +Thu Jul 16 12:17:12 1992 James Clark (jjc at jclark) + + * macros/tmac.e (sr): New macro. + Initialize $r and $R using sr. + + * macros/tmac.e (,): Delete \*(#[. + + * troff/env.c (set_tabs): Read the tab type even if the position + is bad. Allow the position of the first tab stop to be negative. + +Wed Jul 15 13:14:37 1992 James Clark (jjc at jclark) + + * refer/dirnamemax.c: Use pathconf() if <unistd.h> defines + _POSIX_VERSION. + * refer/Makefile: Compile dirnamemax.c using -DHAVE_UNISTD_H + rather than -DPATHCONF_MISSING. + * Makefile: Get rid of PATHCONF_MISSING. + + * refer/map.c: New file. + * refer/index.c: Interface to mmap through map.c. Rename map_size + to map_len. + * refer/Makefile: Handle map.c. + * Makefile: Include -DHAVE_MMAP in OLDCFLAGS rather than CFLAGS. + +Tue Jul 14 14:15:20 1992 James Clark (jjc at jclark) + + * Makefile: RANLIB should be `true' if there is no ranlib. + * lib/Makefile (libgroff.a): Simplify. + * driver/Makefile (libdriver.a): Simplify. + + * Makefile: Change -DWAIT_COREDUMP_0200 to -DWCOREFLAG=0200. + * groff.c (WCOREDUMP): Use WCOREFLAG. Define only if not already + defined. + +Sat Jul 11 09:19:17 1992 James Clark (jjc at jclark) + + * troff/env.c (compare_ranges): Declare as extern "C". + + * troff/input.c (init_registers): Use `struct tm' instead of `tm'. + + * macros/tmac.s, macros/tmac.e: Change .nx /dev/null to .nx. + +Wed Jul 8 11:52:27 1992 James Clark (jjc at jclark) + + * pic/troff.c (troff_output::text): Merge in grops_output::text, + but conditionalize use of \X based on \*(.T. + (grops_output::*): Deleted. + * pic/output.h: Delete declaration of make_grops_output. + * pic/main.c (main): Ignore -p and -x. driver_extension_flag is 1 + by default. -n sets it to 0. + (usage): Corresponding changes. + * groff.c (main): Don't pass -x or -p to pic. + * groff.sh: Likewise. + + * ps/ps.c (ps_printer::do_exec, ps_printer::do_file): Force ndefs + to be non-zero. + + * ps/devps/afmtodit: Change calculation of asc_boundary and + desc_boundary. Make these bounds inclusive. + * ps/devps: Regenerate font files. + +Tue Jul 7 13:14:15 1992 James Clark (jjc at jclark) + + * macros/tmac.latin1: New file. + * macros/tmac.tty-char: Use tmac.latin1. + (tmac.tty-tr): Deleted. + * macros/Makefile: Install tmac.latin1. + * macros/tmac.dvi: Use tmac.latin1. + * macros/troffrc: Translate \[char160] onto no-break space here. + * macros/{tmac.dvi,tmac.ps,tmac.tty,tmac.X75}: Don't do it here. + +Mon Jul 6 11:06:52 1992 James Clark (jjc at jclark) + + * macros/tmac.Xps: Use `do' request. + + * macros/tmac.ps: Use `do' request. + + * macros/tmac.e (@C): Use `do' request. + + * macros/tmac.X, macros/tmac.Xps: Moved from xditview. + * macros/Makefile: Install tmac.X*. + + * tty/tmac.tty, tty/tmac.tty-char: Move to macros. + * tty/Makefile: Don't install tmac.tty*. + * macros/Makefile: Install tmac.tty*. + + * dvi/tmac.dvi: Move to macros. + * dvi/Makefile: Don't install tmac.dvi. + * macros/Makefile: Install tmac.dvi. + + * ps/tmac.ps*: Move to macros. + * ps/Makefile: Don't install tmac.ps*. + * macros/Makefile: Install tmac.ps*. + + * eqn/box.c: Provide draw_lines parameter corresponding to -D + option. + * macros/eqnrc: Set draw_lines parameter based on device. + * groff.c: Don't pass -D flag to eqn. + * groff.sh: Likewise. + * eqn/main.c: Warn about use of -D. + + * troff/input.c (process_startup_file): New function. + (main): Call process_startup_file(). + * macros/troffrc: New file. + * macros/Makefile: Install troffrc. + * groff.c (main): Don't pass extra -m option to troff. For a + pseudo device pass the name of the pseudo device to troff using + -d. + * groff.sh: Likewise. + * groff.c (possible_command::prepend_arg): Deleted. + + * troff/input.c (do_request): New function. + (init_input_requests): Bind "do" to do_request. + + * eqn/main.c (main): Instead of loading eqnchar from device directory, + load eqnrc from macro directory. + * macros/eqnrc: New file. + * macros/Makefile: Install eqnrc. + * ps/devps/eqnchar: Deleted. + * ps/devps/Makefile: Don't install eqnchar. + * dvi/devdvi/eqnchar: Deleted. + * dvi/devdvi/Makefile: Don't install eqnchar. + * groff.c (main): Pass -M to eqn. Don't pass -F to eqn. New + variable optM. + + * lib/device.[ch]: New files. + * lib/font.h (font::set_device_name, font::get_device_name): + Deleted. + * lib/fontfile.c: Use device.h. + * lib/Makefile: Handle device.[ch]. Make paths.h define DEVICE. + * troff/input.c: Delete definition of `device'. + (main): Don't initialize device. + * troff/troff.h: Include device.h rather than declaring device. + * troff/Makefile: No need to handle DEVICE. + * driver/input.c: Include device.h. Don't use + font::{set,get}_device_name. + * groff.c, Makefile: Rename device.h to config.h. + * groff.c: Use library device variable. + * eqn/main.c: Use library device variable. + * eqn/Makefile: No need to handle DEVICE. + + * lib/searchpath.[ch]: New files. + * lib/Makefile: Handle searchpath.[ch]. + * troff/input.c (open_file, init_dirs): Deleted. + (macro_dirs): Deleted. + (open_mac_file, macro_source): Use class search_path. + (add_string, struct string_list): Move definition. + (main): Change -M option to use macro_path. Delete call to + init_dirs(). + * lib/fontfile.c (font::command_line_font_dir, font::open_file): + Rewrite to use class search_path. + * lib/font.h, lib/fontfile.c (font::cl_font_dirs): Deleted. + * lib/Makefile: fontfile.c depends on searchpath.h. + * lib/Makefile: Rename fontpath.h to paths.h. Make paths.h define + MACROPATH. + * lib/macropath.[ch]: New files. + * troff/Makefile: No need to handle MACROPATH. + + * troff/input.c: Delete DUMP code. + * lib/fontfile.c, lib/font.h: Delete + font::forget_command_line_font_dirs. + + * troff/input.c (push_token): New function. + (handle_first_page_transition): Use push_token(). + (process_input_stack): Change handling of a space at the beginning + of the line. + +Sun Jul 5 17:11:09 1992 James Clark (jjc at jclark) + + * troff/input.c (font_dirs): Delete unused variable. + + * eqn/lex.c (do_set): Correct error messages. + +Sat Jul 4 10:20:55 1992 James Clark (jjc at jclark) + + * troff/input.c (do_define_string): Allow the string name to be + followed immediately by a tab. + (define_character): Likewise. + +Thu Jul 2 10:59:15 1992 James Clark (jjc at jclark) + + * ps/ps.c (ps_printer::draw): When drawing an arc, don't allow k to + be negative. + + * troff/input.c (input_iterator::is_file): New virtual function. + (file_iterator::is_file): New function. + (input_stack::end_file): New function. + (input_stack::next_file): Handle the situation where there is no + file on the input stack correctly. Avoid making two passes over + the input stack. + (next_file): Make the filename optional; in this case call + input_stack::end_file(). + +Wed Jul 1 10:17:25 1992 James Clark (jjc at jclark) + + * dvi/tmac.dvi: Change the definitions of \(ul and _ so that they + produce a real _ charater when the current font is CW and _ + otherwise. + + * lib/errarg.c (errarg::errarg(const char *)): Invert conditional + expression to work around gcc 2.2 bug. + +Wed Jun 24 08:12:24 1992 James Clark (jjc at jclark) + + * eqn/main.c (main): Don't give an error if we can't find eqnchar. + + * troff/env.c (environment::add_padding): New function. + (environment::add_char): Use add_padding(). + (environment::space): Likewise. + (environment::wrap_up_field): Add some padding if there is none + and there's no current tab. + * troff/env.h: Declare environment::add_padding. + +Mon Jun 22 08:37:45 1992 James Clark (jjc@jclark) + + * pic/pic.y: undef fmod and rand before declaring them. + +Sun Jun 14 11:40:18 1992 James Clark (jjc@jclark) + + * troff/input.c (main): If the DESC file specifies a font name of + 0, then leave the corresponding font position empty. + + * nroff.sh: New file. + * Makefile (install.nobin): Install nroff.sh. + + * tty/devlatin1/R.proto: Add ao as synonym for de. + * tty/tmac.tty-char: Define ao as o. + + * tty/dev{ascii,latin1}/R.proto: Add aq. + * tty/tmac.tty-char: Delete definition of aq. + +Mon Jun 8 11:43:20 1992 James Clark (jjc@jclark) + + * troff/input.c (init_charset_table): Don't translate 0240. + * ps/tmac.ps: Translate char160 to space. + * dvi/tmac.dvi: Likewise. + * tty/tmac.tty: Likewise. + +Sun Jun 7 10:52:35 1992 James Clark (jjc@jclark) + + * dvi/tmac.dvi: Add support for all Latin-1 characters. + + * macros/tmac.s: Delete definitions of \(rg, \(ah, \(ad, \(a-, + \(ao, \(ac, \(ho, \(-D, \(Sd, \(TP, \(Tp, \(ss, \(AE, \(ae, \(OE, + \(oe, \(r?, \(r!. + + * tty/tmac.tty-char: Add \(ah. + + * dvi/tmac.dvi: Add definitions of Tp, TP, Sd, -D, ho. + No need to define \(FM and \(!/. Conditionalize all character + definitions. + + * ps/devps/lgreekmap: Add +h, +f, +p. + + * ps/tmac.psnew: New file. + * ps/Makefile: Install tmac.psnew. + + * troff/input.c (charinfo_to_node_list): Don't ever interpret + character definitions in compatible mode. + + * troff/input.c (remove_character): New function. + (init_input_requests): Bind remove_character to "rchar". + + * ps/tmac.psold: New file. + * ps/Makefile: Install tmac.psold. + * ps/tmac.ps: Load tmac.psold. Move definitions of ISO Latin-1 + characters into tmac.psold. Make these definitions unconditional. + + * tty/tmac.tty-char: Define \n(_C only if it is not already defined. + + * ps/tmac.ps: Don't define \('c and \('C. + + * ps/devps/textmap: Move Greek characters to... + * ps/devps/symbolchars: + +Sat Jun 6 16:41:17 1992 James Clark (jjc@jclark) + + * ps/devps/text.enc: Add quotesingle. + * ps/devps/textmap: Add +h, +f, +p, Fn, Bq, bq, aq, lz. + * tty/tmac.tty-char: Likewise. + * dvi/devdvi/texmi.map: Add +h, +f, +p. + * dvi/devdvi/texi.map: Add Fn. + * dvi/devdvi/msam.map: Add lz. + * dvi/tmac.dvi: Handle Bq, bq, aq. + + * pic/lex.c (get_token): Recognize 'th. + * pic/map.y: Allow `expr'th in contexts where ORDINAL was allowed. + +Fri Jun 5 11:20:46 1992 James Clark (jjc@jclark) + + * ps/devps/textmap: Move di, mu, +- to... + * ps/devps/symbolchars: + + * macros/tmac.s (@XS): Don't call par@reset or fi. + (XA): Call LP. Turn off adjustment. Reduce line length. + + * macros/tmac.s: Initially alias XS to LP. + (XS): Rename to @XS. + (cov*ab-init): Alias XS to @XS. + +Thu Jun 4 09:12:05 1992 James Clark (jjc@jclark) + + * troff/token.h: Delete TOKEN_CHAR_HEIGHT, TOKEN_CHAR_SLANT, + TOKEN_FONT_NAME, TOKEN_FONT_POSITION, TOKEN_SIZE tokens. + (token::is_size, token::changes_env): Deleted. + * troff/number.c (parse_term): No need to process \s explicitly. + Call tok.next() only after scale indicator has been processed. + * troff/input.c (do_overstrike, do_bracket): No need to process \s, + \f etc explicitly. + (token::next): Handle \s, \f, \S, \H immediately rather than + returning them as tokens. + (token::operator==, token::description, token::add_to_node_list, + token::process): Remove handling of deleted tokens. + + * troff/env.c (environment::add_char): When adding padding + indicator character, call start_line() if necessary. + +Wed Jun 3 09:55:50 1992 James Clark (jjc@jclark) + + * ps/devps/afmtodit: Don't output 0 kerns. + + * ps/devps/afmtodit: Remove directory from name of encoding in + font description file. + + * ps/devps/afmtodit: Improve error messages. + + * ps/devps/afmtodit: Allow DESC file to be specified with -d. + + * ps/devps/Makefile: Incorporate FontMakefile. Rework. + * ps/devps/FontMakefile: Deleted. + * ps/devps/afmname: New file. + + * ps/devps/symbol.sed: New file. + * ps/devps/symbol.diff: Deleted. + * ps/devps/FontMakefile: Generate symbol.afm using symbol.sed. + Generate zapfdr.afm from zapfd.afm. + + * tty/tmac.tty (tty-char): Prefix definition with ". + + * macros/tmac.an (TP): Don't start a diversion if one has already + been started. + + * tty/tmac.tty-char: Add Latin-1 characters. + + * tty/tmac.tty-char: Incorporate suggestions from Paul Eggert. + +Tue Jun 2 00:54:34 1992 James Clark (jjc@jclark) + + * tbl/table.c (table::allocate): Delete old_vline, old_entry. + Move declaration of struct horizontal_span. + + * tbl/table.c (table::table): Initialize span_list. + (table::~table): Delete span_list. + + * lib/ptable.h (PTABLE(T)::~PTABLE(T)): Delete v. + + * ps/devps/Makefile: Avoid dependency on GNU make. + + * ps/tmac.ps: Check that character does not already exist before + defining it. + + * tty/tmac.tty: Add definitions of \(ff, \(!=, \(==, \(~=, \(sq, + \(OE, \(oe, \(AE, \(ae, \(lh, \(rh. Delete definitions of \(en, + \(ru, \(ul, \(br, \(bv, \(sl which are in the font description + files. + + * tty/tmac.tty-char: New file. + * tty/Makefile: Install tmac.tty-char. + * tty/tmac.tty: Move definitions of \(ua, \(da, \(uA, \(dA into + tmac.tty-char. + + * tty/tmac.tty: Fix definition of \(34. + + * tty/dev{ascii,latin1}/R.proto: Add ha and ti. Map + bracket-drawing characters onto |. Add *o. + + * troff/env.c (environment::wrap_up_tab): Increment field_spaces + only if current_field. + + * troff/dictionary.c (dictionary::lookup): Free old_table after + rehashing. + +Mon Jun 1 10:15:22 1992 James Clark (jjc@jclark) + + * tty/dev{ascii,latin1}/R.proto: Add uppercase Greek characters + whose glyphs are identical to glyphs of some Roman character. + + * tty/devlatin1/R.proto (bu): Deleted. + * tty/devascii/R.proto (bu): Deleted. + * tty/tmac.tty: Add definition of \(bu. + + * eqn/main.c (do_file): Pass FILE as argument. + (main): Automatically load eqnchar. New options -F and -n. + Pass do_file an opened FILE. + * groff.c: Don't pass eqnchar to eqn. Pass -F options onto eqn. + No need to include font.h. + * groff.sh: Likewise. Don't need to use - for standard input. + Prefix files with -- if first file starts with -. + + * macros/tmac.e: Conditionalize use of \$* on \n(.g. + + * troff/env.c (environment::possibly_break_line): Don't set line + to 0 across call to output_line(). Don't call output_line() until + after discarding nodes after break. + +Sun May 31 10:45:29 1992 James Clark (jjc@jclark) + + * request.h (macro::empty): Declare it. + * input.c (macro::empty): New method. + (interpolate_macro): Don't give a WARN_SPACE if the two-character + macro is empty. + +Sat May 30 10:27:15 1992 James Clark (jjc@jclark) + + * troff/env.c (environment::start_field): Decrement space_total + when a space is frozen. + +Fri May 22 14:34:38 1992 James Clark (jjc@jclark) + + * macros/tmac.an (R): Delete macro. + + * troff/input.c (get_copy, token::next): Support \# (like \" but + newline is ignored). + + * troff/input.c (token::next): Fix error message in 'Y' case. + +Thu May 21 09:26:24 1992 James Clark (jjc@jclark) + + * eqn/delim.c (define_extensible_string): Recognize any prefix of + a delimiter name. + +Fri May 15 10:20:41 1992 James Clark (jjc at jclark) + + * c++test.c: Include <osfcn.h>. + + * lib/strtol.c, lib/getcwd.c, ps/psbb.c: Declare errno in case + <errno.h> doesn't. + +Fri May 8 09:37:19 1992 James Clark (jjc at jclark) + + * tbl/table.c (table::divide_span): Don't count column separation + if expand was specified. + + * tbl/main.c (process_format): Don't ignore width specs in + continued format. Give warning for changing equal widths or + column separation in continued format. + (process_data): Set column separation, minimum width, equal + columns at end of table. + +Thu May 7 08:50:40 1992 James Clark (jjc at jclark) + + * troff/node.c (kern_pair_node::add_discretionary_hyphen, + node::add_discretionary_hyphen): Use soft_hyphen_char. + (set_soft_hyphen_char): New function. + (init_node_requests): Bind to shc. Initialize soft_hyphen_char. + + * Makefile (c++tested): Give more helpful message if test fails. + +Tue May 5 10:58:39 1992 James Clark (jjc at jclark) + + * troff/input.c (init_charset_table): Translate 0240 to + an unbreakable space. + + * troff/token.h (token::hyphen_indicator): New function. + * troff/charinfo.h (TRANSLATE_HYPHEN_INDICATOR): New special + translation. + * troff/input.c (translate): Allow translation to \%. + * troff/node.c (node::add_char): Handle + TRANSLATE_HYPHEN_INDICATOR. + (make_node): Don't allow TRANSLATE_HYPHEN_INDICATOR here. + + * troff/input.c (init_charset_table): Don't set BREAK_AFTER flag + for \(hy. + + * tty/devlatin1/R.proto: \(hy and - should print as 055. + +Tue Apr 21 09:24:42 1992 James Clark (jjc at jclark) + + * groff.c (run_commands): If the last command gets a SIGPIPE send + a SIGPIPE to all children than haven't yet terminated. When + command terminates, set pid field to -1. + +Fri Apr 17 11:20:48 1992 James Clark (jjc at jclark) + + * groff.c (main): Pass an appropriate -filename option to gxditview. + +Thu Apr 16 15:11:40 1992 James Clark (jjc at jclark) + + * Makefile.bd (install): Remove existing program before copying. + + * Makefile, */Makefile, Makefile.bd, groff.sh, groff.c: Allow + programs which have Unix counterparts to be installed with + user-specified prefix. + + * troff/input.c (exit_troff): Don't check if exit_started. + (exit_request): Don't call exit_troff if exit_started. + + * Makefile.bd (install.mm): Rename to install.dwbmm. + +Tue Apr 14 10:05:10 1992 James Clark (jjc at jclark) + + * driver/input.c (do_file): Add missing break for '#' case. + +Mon Apr 13 10:11:02 1992 James Clark (jjc at jclark) + + * troff/input.c (input_stack::clear): Clear past any boundaries and + then add the boundaries back. + + * troff/input.c (exit_troff): Return immediately if already + exiting. + + * macros/tmac.s (pg@end-text): New macro. Use pg@end-text for the + end macro. + (pg*end-page): If the text has ended and there are no more + footnotes or keeps, exit. + + * macros/doc-ditroff (Lq, Rq): Define as \(lq and \(rq. + + * troff/input.c (init_charset_table): Make \(rq transparent by + default. + + * macros/tmac.an: Define lq and rq strings. + + * macros/tmac.s (Q, U): Define as \(lq and \(rq. + +Sun Apr 12 12:54:37 1992 James Clark (jjc at jclark) + + * troff/env.c (environment::final_break): New function. + (environment::newline): Set prev_line_interrupted to 2 if + exit_started. + * troff/env.h: Declare environment::final_break. + * troff/input.c (exit_troff): Call environment::final_break() + instead of environment::do_break(). + + * macros/Makefile: Install man.local if $(MACRODIR)/man.local + doesn't already exist. + * macros/man.local: New file. + * macros/tmac.an: Load man.local. + * macros/man.ultrix: New file. + +Sat Apr 11 17:32:04 1992 James Clark (jjc at jclark) + + * troff/input.c (exit_groff): Rename to... + (exit_troff): New function. + + * troff/div.c (exit_started, done_end_macro, + seen_last_page_ejector): New global variables. + (began_page_in_end_macro): New static variable. + (exit_flag): Deleted. + (top_level_diversion::top_level_diversion): Initialize + last_page_count. + (top_level_diversion): More elaborate test for whether + cleanup_and_exit() should be called. + Set began_page_in_end_macro if the end macro isn't yet finished. + * troff/div.h (top_level_diversion::last_page_count): New data + member. + (top_level_diversion::set_last_page): New function. + (exit_started, done_end_macro, seen_last_page_ejector): Declare. + * troff/env.c (do_break): Zero prev_line_interrupted. + * troff/input.c (exit_flag): Delete declaration. + (LAST_PAGE_EJECTOR): New magic cookie. + (token::next): Handle LAST_PAGE_EJECTOR. + (exit_groff): Set exit_started and done_end_macro instead of + exit_flag. Call top_level_diversion::set_last_page. Push a + LAST_PAGE_EJECTOR instead of calling push_page_ejector(). Do + another ejection after setting seen_last_page_ejector. + +Thu Apr 9 04:37:11 1992 James Clark (jjc at jclark) + + * etc/grog.sh, etc/grog.sh: Recognize -me sh macro. + + * macros/tmac.e (TH): Make sure there's room for the initial + header. + + * macros/tmac.s (par@init): Make PD and DD at least \n(.V. + Set FVS in points rather than units. + +Mon Apr 6 11:21:32 1992 James Clark (jjc at jclark) + + * troff/div.c (top_level_diversion::add_trap): Don't consider the + position of empty slots. + +Fri Apr 3 10:46:45 1992 James Clark (jjc at jclark) + + * ps/devps/S: Fix height and depth of parenrightex. + * ps/devps/symbol.diff: Regenerate. + +Sat Mar 28 21:17:52 1992 James Clark (jjc at jclark) + + * tmac.e (u): Do underlining as in -mgs. + +Fri Mar 27 09:23:44 1992 James Clark (jjc at jclark) + + * tty/tty.c (tty_printer::end_page): If overstriking is + suppressed, still turn overstruck horizontal and vertical lines + into +. + + * lib/new.c: Back out Feb 24 change; no longer needed with gcc + 2.1. + + * refer/label.y (format_expr::evaluate): Avoid use of %0*d. + +Wed Mar 18 09:29:10 1992 James Clark (jjc at jclark) + + * Version 1.05 released. + +Tue Mar 17 16:50:45 1992 James Clark (jjc at jclark) + + * tty/tty.c: Instead of keeping an array of glyphs and then + sorting it, keep a ordered linked list of glyphs for each line. + + * driver/driver.h: Include stddef.h. + + * tty/tty.c (compare_glyph): + * refer/refer.c (rcompare): + * troff/env.c (compare_ranges): Arguments of qsort comparison + function should be const void *. + + * troff/number.c (parse_term): + * dvi/dvi.c (draw_dvi_printer::draw): Avoid initialization in + switch statement. + + * refer/label.y (consider_authors): Don't access variables + constructed under a condition outside that condition: put braces + round for statement containing declaration; redeclare use of same + variable later. + + * pic/pic.y (text_expr): Delete production that allows + parenthesised text_expr. + (expr): Allow a conditional_expr to appear in parentheses. + (conditional_expr): Rename to any_expr. + + * mm: Install new version 1.01 from jh. + + * lib/font.c (font::get_width): Cache scaled widths. + (font::font): Initialize widths_cache. + (font::~font): Destroy widths_cache. + * lib/font.h: Add font::widths_cache. Declare font_widths_cache. + +Mon Mar 16 10:16:10 1992 James Clark (jjc at jclark) + + * c++test.c, c++test.ref: New files. + * Makefile: Check that the C++ compiler works. + + * ps/tmac.pspic (PSPIC): Do a break. + + * ps/tmac.ps: Move definition of PSPIC into... + * ps/tmac.pspic: New file. + (PSPIC): Draw box around picture, but make it invisible to grops. + * ps/tmac.ps: Load tmac.pspic. + * ps/Makefile: Install tmac.pspic. + +Sun Mar 15 14:18:08 1992 James Clark (jjc at jclark) + + * lib/font.c (scale_round): If n is negative, + subtract .5 before truncating floating point result. + + * lib/fontfile.c: Include <errno.h>. + +Tue Mar 10 14:17:03 1992 James Clark (jjc at jclark) + + * driver/input.c (get_char): Inline. Don't update current_lineno. + Change callers to up date current_lineno if necessary. + Use get_char() instead of getc(current_file). + +Sun Mar 8 18:05:28 1992 James Clark (jjc at jclark) + + * ps/tmac.ps: Fix up spacing of \(mo and \(nm. + +Fri Mar 6 19:38:58 1992 James Clark (jjc at jclark) + + * tty/tty.c (tmac.tty): Define \(rg as (R). + +Tue Mar 3 10:11:25 1992 James Clark (jjc at jclark) + + * lib/lib.h: New define a_delete. + * Use a_delete instead of delete when deleting an array of objects + without destructors. + + * lib/lib.h: Rename adelete to ad_delete. + * Change uses of adelete. + +Mon Mar 2 12:41:05 1992 James Clark (jjc at jclark) + + * eqn/eqn.y: Include lib.h. + + * troff/node.c (grow_font_table): Delete old_font_table. + + * mm: Install new version from jh. + +Fri Feb 28 10:42:23 1992 James Clark (jjc at jclark) + + * tbl/table.h (format_type): Make global instead of local to class + entry_format. Prefix enumerators with FORMAT_. + * tbl/table.c, tbl/main.c: Corresponding changes. + * refer/token.h (token_type): Make global. Prefix enumerators + with TOKEN_. + * refer/token.[ch]: Corresponding changes. + * Makefile: Get rid of -DNO_NESTED_TYPES configuration option. + + * troff/div.c (node::set_vertical_size): Don't name argument. + +Thu Feb 27 10:29:19 1992 James Clark (jjc at jclark) + + * Makefile: New configuration option ARRAY_DELETE_NEEDS_SIZE. + * lib/lib.h: Define adelete accordingly. + * pic/object.c (graphic_object::graphic_object): + * tbl/main.c (format::~format): + * tbl/table.c (table::~table): + * refer/ref.c (reference::~reference, reference::merge, + reference::insert_field, reference::delete_field): Use adelete. + + * Makefile: Change NESTED_TYPES to NO_NESTED_TYPES. + * refer/token.h: + * tbl/table.h: Corresponding changes. + + * common.c (common_output::dashed_arc, common_output::dotted_arc): + Ensure total_angle is positive. + +Wed Feb 26 08:49:26 1992 James Clark (jjc at jclark) + + * refer/ref.c (reference::merge, reference::insert_field, + reference::delete_field): Avoid delete[0]. + + * refer/token.c (init_special_chars): Move calls to cmupper + outside calls to init_two_char_letter to work around bug in gcc + 2.0. + +Mon Feb 24 14:20:00 1992 James Clark (jjc at jclark) + + * lib/new.c (operator new): Use __builtin_new for g++. + + * pic/object.c (graphic_object::~graphic_object): Don't use + delete [] on 0. + + * pic/object.c (output::compute_scale): Initialize max_width and + max_height. + +Sat Feb 15 09:55:20 1992 James Clark (jjc at jclark) + + * troff/input.c (write_request): Call fflush. + + * troff/node.h (class composite_node): Move declaration to node.c + * troff/input.c (charinfo_to_node): Rename to ... + (charinfo_to_node_list): Return node list rather than composite + node. + * troff/node.c (make_composite_node): New function. + (make_node, add_char): Call make_composite_node instead of + charinfo_to_node. + (class composite_node): Add a tfont * member. Delete font_size + member. + (composite_node::composite_node, composite_node::copy, + composite_node::size): Corresponding changes. + (composite_node::tprint): Provide constant spacing, emboldening + and track kerning as specified in tfont. + (composite_node::width): Change width calculation accordingly. + * troff/env.h (environment::composite): New member. + (environment::is_composite, environment::set_composite): New + functions. + * troff/env.c (environment::environment): Initialize composite. + * troff/input.c (charinfo_to_node): Call + environment::set_composite. + * troff/node.c (make_composite_node, make_glyph_node): Use the + plain version of the tfont if the environment is composite. + + * troff/node.c (font_info::get_space_width): Additional argument + giving space_size. Handle constant space correctly. Scale by + space_size unless constant spaced. + (env_sentence_space_width): New function. + * troff/node.h: Declare it. + * troff/env.h (environment::get_space_size, + environment::get_sentence_space_size, + environment::get_narrow_space_width, + environment::get_half_narrow_space_width): Make inline. + (environment::get_space_width): Make inline. Just call + env_space_width. + * troff/env.c: Delete definitions for funtions made inline. + (environment::space_newline, environment::space): Use + env_sentence_space_width(). Don't scale by space_size. + * troff/node.h: Move declarations of env*space_width() functions + into env.h. + +Sat Feb 8 09:30:22 1992 James Clark (jjc at jclark) + + * macros/tmac.s (PS): Don't try to set negative indent. + +Thu Feb 6 09:00:35 1992 James Clark (jjc at jclark) + + * pic/pic.y: Fix min function. + +Tue Jan 28 07:52:29 1992 James Clark (jjc at jclark) + + * man/mdate.sh: Clear LANGUAGE. + +Sun Jan 19 13:02:41 1992 James Clark (jjc at jclark) + + * pic/pic.y, pic/lex.c: Rename COMMAND token to COMMAND_LINE. + * pic/lex.c: New COMMAND keyword. + * pic/pic.y (print_args, print_arg): New rules. + (placeless_element): Use print_args for PRINT. + New COMMAND element. + +Tue Jan 7 13:14:31 1992 James Clark (jjc at jclark) + + * troff/input.c (terminal): Handle missing argument correctly. + + * pic/pic.y (text_expr): New rule. + + * pic/pic.y: Implement := operator. + +Sun Jan 5 10:23:02 1992 James Clark (jjc at jclark) + + * etc/grog.pl, etc/grog.sh: Distinguish old and new versions of + mdoc. + +Sat Jan 4 14:42:26 1992 James Clark (jjc at jclark) + + * ps/devps/dingbatsrmap: Include this in the distribution. + + * macros/tmac.doc: Replace with new version from 2nd Networking + Release. Fix loading of doc-* files. + * macros/{doc-common,doc-ditroff,doc-nroff,doc-syms}: New files. + * macros/tmac.doc.old: New file. Apply fixes that had been + applied to old tmac.doc. + * macros/tmac.andoc: Check that we're running under groff. + * macros/Makefile: Rework. + +Fri Jan 3 13:27:51 1992 James Clark (jjc at jclark) + + * tbl/table.h (format_type): + * refer/token.h (token_type): If NESTED_TYPES is defined, use + typedef to make these types visible at file scope. + * Makefile: Add NESTED_TYPES configuration option. + + * troff/div.c (mark): At the top level use the value of + nl_reg_contents rather than the current vertical position. + +Thu Jan 2 10:34:51 1992 James Clark (jjc at jclark) + + * tty/tty.c: Implement \D for horizontal or vertical lines. + (tty_printer::set_char): Use vec_used+2 as serial number. + Don't allow size of vector to exceed USHRT_MAX-2. + Split off part into... + (tty_printer::add_char): New function. + (tty_printer::draw): New function. + (compare_glyph): Handle equal serial numbers. + (tty_printer::end_page): Handle overstruck characters from \D. + (main, usage): Implement -d option. + +Mon Dec 23 10:37:51 1991 James Clark (jjc at jclark) + + * tbl/main.c (process_format): + * eqn/text.c (split_text): + * troff/input.c (token::next): Use inner block for declarations + with initializers in switch statement. + +Mon Dec 16 20:52:03 1991 James Clark (jjc at jclark) + + * pic/common.c (common_output::dash_line): Cope with zero-length + lines. + +Sun Nov 17 12:04:08 1991 James Clark (jjc at jclark) + + * Version 1.04 released. + +Wed Nov 13 05:27:21 1991 James Clark (jjc at jclark) + + * macros/tmac.an (TH): Define a macro an-init to define variables + based on command line arguments. + (an-header): Call it. + +Sun Nov 3 12:07:34 1991 James Clark (jjc at jclark) + + * Makefile (install.mm): Rename to install.dwbmm. + + * Makefile: Integrate mm. + * mm: New directory. + +Wed Oct 30 10:11:34 1991 James Clark (jjc at jclark) + + * refer/dirnamemax.c: If PATHCONF_MISSING is defined, include + <sys/types.h>. + + * pic/troff.c (troff_output::simple_spline, + troff_output::simple_polygon): Rename variable `v' to `d' to avoid + shadowing parameter. + + * lib/tmpfile.c (xtmpfile): Declare dir as const char *. + + * lib/ptable.h: Add explicit casts when converting from unsigned + long to unsigned. + + * dvi/devdvi/{SA,SB,msam.map,msbm.map}: New files. + * dvi/devdvi/Makefile: Install SA, SB. + + * refer/indxbib.c: Add declaration of mktemp. + + * refer/lookbib.c: Add declaration of isatty. + +Fri Oct 25 09:00:17 1991 James Clark (jjc at jclark) + + * pic/lex.c (interpolate_macro_with_args): While collecting + arguments, keep track of whether we're in a string. + +Wed Oct 23 08:42:48 1991 James Clark (jjc at jclark) + + * ps/tmac.ps (PSPIC): Do the .sp after the \X, and move the \X + down with \v, so as to avoid problems with top of page trap + setting no space mode. + +Tue Oct 22 17:38:49 1991 James Clark (jjc at jclark) + + * eqn/lex.c (get_delimited_text): Allow tab before macro body. + +Tue Oct 15 17:24:53 1991 James Clark (jjc at jclark) + + * ps/psrm.c (ps_get_line): Fix bug when lines longer than 255. + Improve error message. + +Fri Oct 11 11:09:38 1991 James Clark (jjc at jclark) + + * ps/psrm.c (print_ps_string): Don't pass negative numbers to + printf("%03o"); + +Wed Oct 9 17:50:14 1991 James Clark (jjc at jclark) + + * groff.c (possible_command::execp): Always use _exit() after a + failed exec. + + * Makefile: Add HAVE_UNION_WAIT, HAVE_PID_T, WAIT_COREDUMP_0200, + NO_SYS_WAIT_H configuration options. + * groff.c: Use these options. Use POSIX-style macros to extract + fields from the status returned by wait(). + +Fri Oct 4 12:12:27 1991 James Clark (jjc at jclark) + + * tbl/table.c (table::compute_separation_factor): Allow the + separation factor to drop to 0. + +Tue Oct 1 18:12:38 1991 James Clark (jjc at jclark) + + * refer/search.c: Include <errno.h>. + +Sun Sep 29 08:40:57 1991 James Clark (jjc at jclark) + + * pic/pic.y (YYDEBUG): Don't define for Borland C++. + + * lib/lib.h: #ifdef out declarations of itoa and iftoa for Borland + C++. + + * pic/lex.c (input_stack::bol): Move definition out of class body. + + * pic/main.c: On MSDOS munge argv[0]. + + * lib/ptable.h: Define name2 as _Paste2 for Borland C++. + + * lib/ptable.c (hash_string): Use unsigned long rather than + unsigned. + (next_ptable_size): Use unsigned rather than int. Give an error + message if we've hit the largest table size. + * lib/ptable.c: Corresponding changes. Also use unsigneds for the + table size. + + * pic/object.h (object_spec): Make flags unsigned long. Declare + flags as const unisgned long rather than as enums. + + * pic/output.c: Deleted. + + * pic/troff.c (troff_output::simple_ellipse): Remove spurious %. + + * tbl/table.c (simple_entry::note_double_vrule_on_{left,right}): + Add additional argument. + (line_entry::note_double_vrule_on_{left,right}): Set value of + douvle_vrule_on_{right,left} flag according to argument. + (simple_line_entry::simple_print, + simple_line_entry::double_line_print): If adjacent to double vrule + on a corner extend rather than shorten the rule by half the double + vrule sep. + + * troff/number.c (parse_term): In checking for overflow, handle the + case where the current horizontal position is negative. + +Thu Sep 12 08:26:09 1991 James Clark (jjc at jclark) + + * pic/object.c (draw_arrow): Check for object having zero length. + +Wed Sep 11 10:32:38 1991 James Clark (jjc at jclark) + + * eqn/main.c (do_file): Split off inline equation handling into... + (inline_equation): New function. Search for starting delimiter + using... + (delim_search): New function. Don't recognize a delimiter that + occurs in the name of an escape sequence, number register, string + etc. + +Tue Sep 10 04:01:11 1991 James Clark (jjc at jclark) + + * eqn/delim.c (delim_box::compute_metrics): Don't call + define_extensible_string if left is 0. + (delim_box::output): Don't print the left delimiter if left is 0. + (delim_box::debug_print): Check for left == 0 before calling printf. + +Fri Aug 23 13:02:30 1991 James Clark (jjc at jclark) + + * troff/Makefile (majorminor.c): Include only digits in + minor_version. + +Thu Aug 22 09:35:37 1991 James Clark (jjc at jclark) + + * refer/dirnamemax.c: new file. + * refer/genlimits.c: Deleted. + * refer/indxbib.c (main): Use dir_name_max() instead of NAME_MAX. + Don't check path length. + * refer/Makefile: Add dir_name_max.o; delete genlimits. + * Makefile: Add PATHCONF_MISSING option. + + * refer/indxbib.c (get_cwd): New function. + (main): Use get_cwd(). + * lib/getcwd.c: New file. + * Makefile: Delete -DHAVE_GETWD. Include GETCWD variable. Pass + GETCWD in SUBFLAGS. + * lib/Makefile: Compile getcwd.o. + + * ps/tmac.psatk (psatk-defs): Define showpage after pushing + userdict. + + * refer/indxbib.c (main): Check success of mktemp. + + * lib/tmpfile.c: New file. + * lib/Makefile: Add tmpfile.c. + * lib/lib.h: Declare xtmpfile(); include <stdio.h>. + * ps/ps.h: Delete declaration of mktemp(). + * ps/ps.c (ps_printer::ps_printer): Use xtmpfile(). + * refer/refer.c (divert_to_temporary_file): Use xtmpfile(). + * driver/driver.h: No need now to include errno.h. + + * everywhere: Set errno to 0 before calling fopen(). + + * eqn/eqn.h, etc/soelim.c, driver/driver.h, etc/addftinfo.c, + dvi/tfmtodit.c, groff.c, refer/index.c, refer/linear.c, + refer/lookbib.c, refer/refer.h, ps/psbb.c: Include <errno.h>. + +Mon Aug 19 10:52:18 1991 James Clark (jjc at jclark) + + * troff/env.h (translate_space_to_dummy): Declare it. + * troff/env.c (environment::space_newline, environment::space): + If translate_space_to_dummy is set then make the width of spaces 0. + * troff/input.c (translate): If the second character of a + translation is a space, translate to unbreakable space. If the + first character is a space, set or clear translate_space_to_dummy + according to whether the second character is \&. Weird! + +Tue Jul 30 10:03:56 1991 James Clark (jjc at jclark) + + * groff.c (run_commands): Don't use non-zero exit code because a + command gets SIGPIPE. + + * groff.c, groff.sh: Use -mXps with -TXps. + + * ps/ps.c (ps_printer::special): Move call to flush_sbuf() into... + (ps_printer::do_exec, ps_printer::do_file, ps_printer::do_def, + ps_printer::do_mdef, ps_printer::do_import): Call flush_sbuf(). + (ps_printer::special): New specials invis and endinvis. + (ps_printer::do_invis, ps_printer::do_endinvis): New functions. + (ps_printer::set_char, ps_printer::draw): Return if invis_count>0. + (ps_printer::end_page): Check that invis_count == 0. + (ps_printer::invis_count): New member. + (ps_printer::ps_printer): Initialize invis_count to 0. + + * troff/env.c (environment::hyphenate_line): Hyphenation + indicator at beginning of word inhibits splitting after -, \(em + etc. + + * pic/pic.y (element): Allow another element to follow } without + any intervening separator. + +Mon Jul 22 12:27:37 1991 James Clark (jjc at jclark) + + * pic/lex.c (get_delimited): Allow tabs before delimiter. + +Wed Jul 17 10:59:08 1991 James Clark (jjc at jclark) + + * groff.c: Get rid of HAVE_UNION_WAIT stuff. Instead suppress + declaration of wait() in header files. + * Makefile: Get rid of -DHAVE_UNION_WAIT. + + * tbl/table.c (alphabetic_text_entry::add_tab): New function. + + * lib/lib.h: Declare return type of strerror as char *. + + * man/Makefile: Add g flag to sed substitutions. + * Makefile (shgroff, bindist): Likewise. + +Sun Jul 14 11:57:02 1991 James Clark (jjc at jclark) + + * ps/ps.c (ps_printer::do_import): Move push of userdict into... + * ps/devps/prologue (PBEGIN): Define showpage after pushing + userdict. + +Sat Jul 13 20:53:04 1991 James Clark (jjc at jclark) + + * ps/devps/prologue (PBEGIN): Zap any definition of showpage in + userdict. + +Fri Jul 12 07:10:09 1991 James Clark (jjc at jclark) + + * man/mdate.sh: Handle the fact that BSD ls -l does not print the + group. + +Sun Jul 7 08:00:23 1991 James Clark (jjc at jclark) + + * troff/input.c (define_number_reg): If currently undefined, + don't define it if the argument is an invalid expression. + + * Makefile: Ignore return value of `if' commands without `else' + parts. + + * Makefile: Split up CPPDEFINES into a series of separate + configuration options. + + * troff/input.c (init_registers): Use time_t instead of long + unless LONG_FOR_TIME_T is defined. Use returned result rather + than passing pointer. + * Makefile: Document LONG_FOR_TIME_T as a CPPDEFINE. + + * lib/Makefile (fontpath.h): Use gendef. + +Thu Jul 4 09:48:05 1991 James Clark (jjc at jclark) + + * troff/input.c (input_iterator::shift): Delete argument name. + * troff/node.c (suppress_output_file::really_begin_page, + suppress_output_file::really_transparent_char, node::ascii_print, + node::tprint): Delete names of unused arguments. + +Wed Jul 3 17:34:57 1991 James Clark (jjc at jclark) + + * refer/label.y (string): Pass $4 to command_error. + +Tue Jul 2 15:06:01 1991 James Clark (jjc at jclark) + + * Version 1.03 released. + +Sat Jun 29 08:14:01 1991 James Clark (jjc at jclark) + + * Makefile: Pass definition of SHELL in SUBFLAGS. + + * gendef: New file. + * Makefile, eqn/Makefile, refer/Makefile, troff/Makefile, + ps/Makefile: Use gendef to construct header files that are + constructed from the Makefile. + + * macros/Makefile: make all should build stripped version of tmac.e. + + * refer/Makefile (clean): Remove y.output. + +Fri Jun 28 09:44:36 1991 James Clark (jjc at jclark) + + * ps/pfbtops.c (main): Add -v option which prints out a version + number. + * ps/Makefile (pfbtops): Link with libgroff.a. + +Fri Jun 21 07:43:23 1991 James Clark (jjc at jclark) + + * refer/search.h (linear_searcher::get_nkeys): Delete declaration. + * refer/linear.c (linear_searcher::get_nkeys): Delete definition. + + * refer/lkbib.c (main): Always terminate reference with blank + line. + * refer/lookbib.c (main): Likewise. + + * refer/linear.c (file_buffer::load): Check that the file is not a + binary file. + + * refer/Makefile (genlimits): Possibly add -DHAVE_SYS_DIR_H. + (genlimits.c): Include <sys/dir.h> if HAVE_SYS_DIR_H is defined. + Delete second inclusion of <sys/param.h>. + +Tue Jun 18 01:32:26 1991 James Clark (jjc at jclark) + + * troff/token.h (token::special): Deleted. + + * tbl/main.c (process_format): Rework so that opt->tab_char is + recognized only when appropriate. + + * ps/Makefile (clean): Remove pfbtops. + +Sun Jun 16 09:37:19 1991 James Clark (jjc at jclark) + + * lib/font.c (text_file::next): Don't return if we have got a + blank line. + +Fri Jun 14 09:52:26 1991 James Clark (jjc at jclark) + + * refer/refer.c (store_reference): Get hash code from old_table[i] + when rehashing the table. + +Thu Jun 13 01:26:43 1991 James Clark (jjc at jclark) + + * eqn/box.c (box::top_level): Save size and prev size using \R and + restore it afterwards. Set the size to the size at the beginning + of the line. + * eqn/pbox.h: Declare SAVED_INLINE_PREV_SIZE_REG, + SAVED_INLINE_SIZE_REG, and SAVED_SIZE_REG. + + * refer/Makefile (limits.h): Use ./genlimits. + +Wed Jun 12 16:05:34 1991 James Clark (jjc at jclark) + + * refer/index.c: Delete declarations of stat() and fstat(). + +Tue Jun 11 14:52:49 1991 James Clark (jjc at jclark) + + * tty/tmac.tty: Add character definitions for \(>= and \(<=. + +Mon Jun 10 22:49:48 1991 James Clark (jjc at jclark) + + * etc/grog.sh, etc/grog.pl: Change regex for .PS. + +Fri Jun 7 09:13:06 1991 James Clark (jjc at jclark) + + * troff/input.c (token::get_char): Handle \e. + + * refer/linear.c: Delete declarations of fstat() and stat(). + +Wed Jun 5 09:11:59 1991 James Clark (jjc at jclark) + + * troff/node.c, troff/env.c, troff/input.c, Makefile: Remove + OP_DELETE_BROKEN stuff, since we now have a fix for g++. + +Mon Jun 3 13:41:32 1991 James Clark (jjc at jclark) + + * troff/input.c (do_define_macro): Improve error handling for end + of file while defining macro. + +Sun Jun 2 10:20:24 1991 James Clark (jjc at jclark) + + * eqn/box.h: Fix declaration of set_gsize. + * eqn/box.c (set_gsize): Make argument const char *. + (gsize): Declare as char *. + * eqn/main.c (main): Don't convert gsize to int. + * eqn/lex.c (do_gsize): Pass char * to set_gsize. + + * Version 1.02 released. + +Sat Jun 1 12:19:46 1991 James Clark (jjc at jclark) + + * macros/tmac.andoc: New file. + * macros/Makefile: Install tmac.andoc. + + * troff/node.c, troff/env.c, troff/input.c: Conditionalize use of + operator new and delete on OP_DELETE_BROKEN not being defined. + * Makefile: Mention OP_DELETE_BROKEN. + +Mon May 27 13:49:07 1991 James Clark (jjc at jclark) + + * Makefile (bindist): Pass SUBFLAGS. + +Sun May 26 14:13:22 1991 James Clark (jjc at jclark) + + * Makefile, groff.c: Pass definitions to groff.c via device.h. + + * tty/tty.c (tty_font::load_tty_font): Avoid shadowing + parameter. + + * ps/Makefile, ps.c: Pass BROKEN_SPOOLER_FLAGS via broken.h. + + * ps/ps.h, ps/psrm.c: Make comment_table and + header_comment_table local to resource_manager::process_file. + + * groff.sh: With -TXps pass -printCommand option to gxditview. + + * groff.c (possible_command::print): Implement using + append_arg_to_string. + + * xditview: Merge in new implementation with own ChangeLog. + +Sat May 25 18:33:20 1991 James Clark (jjc at jclark) + + * groff.c (main): Implement PRINT_OPTION. + (append_arg_to_string): New command. + (device_table): Set PRINT_OPTION flag for Xps. + +Fri May 24 09:48:58 1991 James Clark (jjc at jclark) + + * troff/groff.h: Rename to troff.h. + + * pic/lex.c (lookup_keyword, docmp): New functions. + (get_token): Use new lookup_keyword. + Don't include key.h. + * pic/key.[ch], pic/pic.gperf: Deleted. + * pic/Makefile: Remove gperf stuff. + + * pic/Makefile, pic/output.h: Move definition of TEX_SUPPORT + into output.h. + * pic/tex.c: Move include of pic.h before test of TEX_SUPPORT. + + * troff/Makefile, troff/node.c: Move definition of + STORE_WIDTH into node.c. + + * etc/grog.pl, etc/grog.sh: Support -mdoc. + +Thu May 23 12:30:49 1991 James Clark (jjc at jclark) + + * dvi/devdvi/texr.map, dvi.devdvi/texi.map, + dvi/devdvi/texb.map: Add lq and rq. + dvi/devdvi: Regenerate fonts. + * ps/devps/textmap: Add lq and rq. + * ps/devps: Regenerate fonts. + * tty/devascii/R.proto, tty/devlatin1/R.proto: Add lq and rq. + * macros/tmac.e: Define \*(lq and \*(rq to be \(lq and \(rq. + + * pic/object.c (position_rectangle): When checking radius + cope with possiblity that width or height is negative. + (box_object::box_object): Have separate xrad and yrad with + signs matching signs of dim components. + (box_object::{north,south}_{east,west}): Use xrad and yrad. + (box_object::print): With rounded boxes use absolute values + for dim and rad arguments. + + * lib/Makefile, lib/fontfile.o: Pass definition of FONTPATH + in fontpath.h. + + * eqn/Makefile, eqn/main.c: Pass definition of DEVICE in device.h. + + * various files: Add explicit destructors to keep Saber CC +d + happy. + +Wed May 22 11:37:11 1991 James Clark (jjc at jclark) + + * eqn/box.c (box::top_level): Restore fonts correctly after + font changes in line containing inline equation. Also + restore previous font as well as current font. + * eqn/pbox.h: Define necessary string and register names. + + * troff/input.c (token::next): Case 'R' calls do_register. + (do_register): New function. + +Tue May 21 11:28:23 1991 James Clark (jjc at jclark) + + * groff.c, groff.sh: Support Xps device. Allow each device + to have a pseudo_name and a real_name. + + * groff.c (run_commands): Don't print `Broken pipe' messages. + + * ps/pfbtops.c: New file. + * ps/Makefile: Add pfbtops. + + * troff/number.c (parse_term): Improved error message. + +Mon May 20 11:22:14 1991 James Clark (jjc at jclark) + + * groff.c, groff.sh, etc/grog.sh, etc/grog.pl: Support grefer. + + * Makefile: Integrate refer. + * refer: New directory. + * man/grefer.man, man/glookbib.man, man/gindxbib.man, + man/lkbib.man: New files. + * man/Makefile: Support refer man pages. + + * lib/lib.h: Declare is_prime. + * lib/prime.c: New file. + + * troff/input.c (macro_source): New function. + (init_input_requests): Bind "mso" to macro_source. + + * troff/env.c (environment::possibly_break_line): Maintain + pointer to pointer to node to be split in ndp so as to avoid + using address of freed node. + + * troff/env.c (environment::hyphenate_line): Maintain pointer to + pointer to first node to be hyphenated in startp so as to + avoid using address of freed node. + + * troff/env.c (class trie, class hyphen_trie): Make the + elements of the trie be of type char not unsigned char. + Declare arguments to be const char* instead of unsigned char *. + + * troff/env.c (hyphenate): Initialize hbuf[0]. + + * troff/input.c (set_string): Declare p to be char * and cast + *p to unsigned char when necessary. + + * troff/input.c (do_define_macro): Declare s to be const + char*. Cast element to unisgned char when necessary, Declare + d to be an int. Handle EOF better. + + * troff/Makefile, troff/input.c: Different scheme for passing + definitions of MACROPATH, HYPHENFILE and DEVICE. + +Tue May 14 13:41:36 1991 James Clark (jjc at jclark) + + * tty/devascii/R.proto: Delete entry for em. + * tty/devlatin1/R.proto: Likewise. + +Sat May 11 11:13:28 1991 James Clark (jjc at jclark) + + * troff/input.c (translate): Stop when we get a space. Treat eof + like newline. + + * macros/tmac.an (IP): Only pass quoted argument to TP when \n(.$>1. + +Wed Apr 24 19:24:33 1991 James Clark (jjc at jclark) + + * tbl/main.c (process_format): A font name following a `f' + modifier that starts with a digit can be only one character long. + Also deal with EOF on the second character of the font name. + +Wed Apr 17 11:23:43 1991 James Clark (jjc at jclark) + + * troff/input.c (token::next): Turn \~ into an + unbreakable_space_node. + * troff/node.c (unbreakable_space_node): New class. + * troff/node.h: Declare it. + +Tue Apr 16 10:47:12 1991 James Clark (jjc at jclark) + + * dvi/dvi.c (dvi_printer::set_char): Make code an int. Check that + it's >= 0, before outputting it as a single byte. + +Mon Apr 15 11:20:23 1991 James Clark (jjc at jclark) + + * lib/font.c: Make font_char_metric::code an int. + (font::get_code): Change return type to int. + (font::load): Allow code to be arbitrary integer. + * lib/font.h (font::get_code): Change return type to int. + (font::number_to_index): Change argument type to int. + * troff/input.c (token::next): In case 'N', allow any value. + Store value in token::val. + (token::operator==): For TOKEN_NUMBERED_CHAR test equality of val. + (token::get_char, token::add_to_node_list, token::process): Get + number from val. + (charinfo::set_number): Change argument to int. + (charinfo::get_number): Require that NUMBERED flag be set. + (get_charinfo_by_number): Store numbered characters not between 0 + and 255 in a dictionary. + * troff/charinfo.h (get_charinfo_by_number): Change argument type + to int. + (charinfo::number): Change type to int. + (charinfo::set_number): Change type of set_number to int. + * troff/node.c (troff_output_file::put_char_width, + troff_output_file::put_char): Test whether character is numbered + using charinfo::numbered(). + * driver/printer.c (printer::set_numbered_char): Allow arbitrary + values of num. + * lib/nametoindex.c: New implementation to cope with arbitrary + number characters. + + * troff/input.c (token::operator==): Test val for + TOKEN_CHAR_HEIGHT, TOKEN_CHAR_SLANT, TOKEN_FONT_POSITION, and + TOKEN_SIZE. + + * man/Makefile: Add definiton of BROKEN_SPOOLER_FLAGS. + (.man.n): sed out @BROKEN_SPOOLER_FLAGS@. + +Sun Apr 14 12:57:00 1991 James Clark (jjc at jclark) + + * ps/devps/zapfdr.ps: Don't copy UniqueID. Avoid use of newdict + variable. + + * all Makefiles: rm targets of cp and >. + + * xditview/xtotroff.c (MapFont): Unlink troff_name before opening + it. + + * eqn/lex.c (def_table): Add dollar. + +Sat Apr 13 13:02:44 1991 James Clark (jjc at jclark) + + * troff/input.c (do_width): Push back newline before closing delim + like do_bracket. + +Fri Apr 12 15:16:03 1991 James Clark (jjc at jclark) + + * groff.c (possible_command::prepend_arg): New function. + (main): Prepend device -m option. + * groff.sh: Put device -m options before command-line options. + +Tue Apr 9 10:24:43 1991 James Clark (jjc at jclark) + + * macros/tmac.an (IP): Quote argument to TP. + + * ps/ps.c (main): New option -b, which sets... + (broken_flags): New variable. + (ps_printer::~ps_printer): Incorporate the setup section in the + prolog if (broken_flags & NO_SETUP_SECTION). + (ps_printer::begin_page): Generate {Begin,End}PageSetup comments. + (ps_printer::merge_download_fonts, ps_printer::merge_import_fonts, + ps_printer::merge_ps_fonts, ps_printer::print_font_comment, + ps_printer::print_needed_font_comment, + ps_printer::print_supplied_font_comment, + ps_printer::print_include_font_comments, + ps_printer::lookup_doc_font, ps_printer::download_fonts, + ps_printer::read_download_file, read_document_fonts, add_font, + skip_line, parse_fonts_arg, document_font::document_font, + document_font::~document_font, document_font::download, + ps_output::include_file): Deleted. + (ps_printer::~ps_printer): Generate %%EOF. Generate %!PS-Adobe-3.0 + rather than %!PS-Adobe-2.0. Make calls to + resource_manager::need_font for each font that we used. Replace + calls to merge_ps_fonts, merge_download_fonts, print_font_comment, + print_supplied_font_comment, print_needed_font_comment by call to + resource_manager::print_header_comments. Output %%Orientation + comment. Output %%Requirements: numcopies comment if ncopies > 1. + Don't output the prolog directly. Instead call + resource_manager::output_prolog. Only define #copies when ncopies + > 1. Delete calls to print_include_font_comments and + download_fonts. Add call to resource_manager::document_setup. + (ps_printer::do_file): Call resource_manager::import_file instead + of including it ourselves. + (ps_printer::do_import): Likewise. Also don't call + merge_import_fonts. Push userdict on the dictionary stack before + and pop it afterwards. + Move declaration of ps_output into ps.h. + * ps/psrm.c: New file implementing resource_manager class. + * ps/ps.h: New file declaring ps_output and resource_manager + classes. + * ps/devps/zapfdr.ps: + * ps/devps/symbolsl.ps: + * ps/devps/prologue: Use 3.0 conventions. + * ps/Makefile: Pass definition of BROKEN_SPOOLER_FLAGS in DEFINES. + Add default definition of BROKEN_SPOOLER_FLAGS. + * Makefile: New variable BROKEN_SPOOLER_FLAGS. Add + BROKEN_SPOOLER_FLAGS to SUBFLAGS. + +Mon Apr 8 09:26:54 1991 James Clark (jjc at jclark) + + * etc/grog.pl: New file. + * Makefile (GROG): New variable. + Add GROG to SUBFLAGS. + * etc/Makefile (GROG): New variable. + (install.nobin): Install $(GROG) rather than grog.sh. + +Thu Apr 4 11:36:45 1991 James Clark (jjc at jclark) + + * eqn/special.c (special_box::compute_metrics): Make the input and + output strings the same. Get the new height and depth from the + predefined height and depth registers. Also make subscript kern + and skew available. + (special_box::compute_subscript_kern, special_box::compute_skew): + New functions. + + * eqn/box.c (pointer_box::compute_skew, + simple_box::compute_metrics, box::top_level) + * eqn/text.c (prime_box::compute_metrics, + prime_box::comput_subscript_kern) + * eqn/limit.c (limit_box::compute_metrics): + * eqn/delim.c (build_extensible, delim_box::compute_metrics): + * eqn/sqrt.c (sqrt_box::compute_metrics): Protect possibly + negative numbers in `nr' requests with a leading 0. + +Wed Apr 3 15:58:23 1991 James Clark (jjc at jclark) + + * eqn/special.c: New file. + * eqn/eqn.y: Declare token SPECIAL. Make it right associative. + Add new rule for simple. + * eqn/lex.c (token_table): Add SPECIAL. + * eqn/box.h: Declare make_special_box. + * eqn/Makefile: Add special.[co]. + +Sat Mar 30 10:57:53 1991 James Clark (jjc at jclark) + + * ps/devps/prologue: Possibly set packing to true while defining. + Create grops dictionary here. Initialize local variables before + defining procedures. + (PICTURE): Rename to PBEGIN. Also do save, noop showpage, count + the dictionary stack. Set strokeadjust and overprint to false if + the relevant operators are defined. + (PEND): New procedure. + * ps/ps.c (ps_printer::~ps_printer): In the prolog just include + prologue. Do everything else in the setup section. + (ps_printer::do_import): Just call PBEGIN and PEND around the + picture. Also push userdict before, and pop it afterwards. + +Wed Mar 27 07:59:50 1991 James Clark (jjc at jclark) + + * troff/node.c (bracket_node::tprint): Brackets were being printed + 1m too low. + + * macros/tmac.an (SH, SS): Set fill mode. + +Tue Mar 26 07:46:31 1991 James Clark (jjc at jclark) + + * troff/div.c (top_level_diversion::begin_page): Set + high_water_mark to 0. + +Fri Mar 22 09:19:46 1991 James Clark (jjc at jclark) + + * man/mdate.sh: New file. + * man/mdate.c: Deleted. + * man/Makefile: Use mdate.sh instead of mdate. + (mdate): Deleted. + + * eqn/lex.c (do_gsize): Supply missing argument to error message. + +Tue Mar 19 11:06:50 1991 James Clark (jjc at jclark) + + * man/mdate.c: New file. + * man/*.man: Replace modification date by @MDATE@. + * man/Makefile (.man.n): Replace @MDATE@ by `mdate $<`. + (mdate): New target. + + * lib/font.c (text_file::next): Deal with arbitrarily long lines. + Remove illegal input characters. + +Mon Mar 18 08:32:25 1991 James Clark (jjc at jclark) + + * macros/tmac.s (pg*start-col): Do .ns *after* running the hooks. + +Sat Mar 16 03:52:25 1991 James Clark (jjc at jclark) + + * troff/div.c (begin_page): Change behaviour when + !first_page_begun and !break_flag. + + * troff/input.c (do_name_test): Return 0 if argument is empty. + + * troff/input.c (read_long_escape_name): Require closing ] to be + at same input level as opening [. + + * troff/input.c (read_increment_and_escape_name): New function. + (get_copy, process_input_stack): Use this for \n. + +Fri Mar 15 00:31:48 1991 James Clark (jjc at jclark) + + * troff/div.c (top_level_diversion::begin_page): Ignore the + current value of page_number if !first_page_begun. + + * groff.c (main): Fix declaration of buf. + + * troff/input.c (do_name_test): New function. + (token::next): Implement \A. + (token::next): Implement \e by turning it into a TOKEN_ESCAPE. + (token::description, token::add_to_node_list, token::process): + Handle TOKEN_ESCAPE. + * troff/token.h: New token TOKEN_ESCAPE. + +Thu Mar 14 10:22:26 1991 James Clark (jjc at jclark) + + * pic/main.c (do_picture): Allow space before and after filename + following `<'. Check that the filename is not empty. + +Wed Mar 13 12:49:40 1991 James Clark (jjc at jclark) + + * Version 1.01 released. + + * dvi/devdvi/CompileFonts: Add cm*ss10 fonts. + + * dvi/tmac.dvi: ftr HR to H. + + * macros/tmac.e: Round up computation of $r. + + * xditview/tmac.X: Don't give up completely in compatibility mode. + Use \n(.s instead of \n[.s]. + + * dvi/tmac.dvi: Don't give up completely in compatibility mode. + Use \(ci instead of \[ci]. Use \n(.s instead of \n[.s]. + Add u to factors inside \s[...]. Rename frac to dvi-frac. + Translate \(FM onto \[prime] and \(!/ onto \[slashnot]; use these + short names in the char definitions. + + * ps/tmac.ps: Don't give up completely in compatibility mode. + Fix the fraction definitions to use \n(.s and \(f/. Add an extra + quote in front of \n(.s. Add u to factors inside \s[...]. + +Mon Mar 11 12:01:20 1991 James Clark (jjc at jclark) + + * tty/tmac.tty: Call the nroff request. + + * macros/tmac.e ((x, )x): Better definitions that work properly + in a diversion. + (@0, @1): Helper macros for (x. + + * macros/tmac.e ($s, hl): Use \l rather than \D. + + * tty/tmac.tty: Make it work better in compatibility mode. + (pchar): Rename to tty-char. + + * macros/tmac.e (@E): New macro. + (r, i, b, rb, bi): Use @E. + + * macros/tmac.e (@F): Don't use (;...) syntax. + + * macros/tmac.e: Remove mention of \*(||/revisions. Mention that + it was modified for groff. + + * macros/tmac.e: Make sure \n(ps and \n(es are >= \n(.V. + + * macros/tmac.e (<., .>): Removed. + ([., .]): If \n(.V>=1v, use [] instead of superscripting. + + * macros/tmac.e: Remove check that groff is being used. + + * macros/tmac.e (@C): Change families only if using groff; turn + compatibility mode off while changing familes. Save compatibility + mode before changing families and restore it afterwards. + + * macros/tmac.e (@h): Remove test for offset + line length. + + * macros/tmac.e (sorry): Rename to @S. Use \$1 instead of \$0 + (lo, th, ac): Define to call @S instead of using als. + + * macros/tmac.e: Make $r and $R now contain \n(.v*100/\n(.sp, ie + the ratio of the vertical spacing to the point size in units + expressed as a percentage. Use these instead of $10r and $10R, + Delete $10r and $10R. + + * lib/font.c (font::load): In default computation of space_width, + divide by sizescale. Use scale_round. + + * macros/tmac.an (TP): Don't call `nf'. + (an-do-tag): Don't call `fi'. + +Sun Mar 10 09:52:35 1991 James Clark (jjc at jclark) + + * troff/input.c (process_input_stack): Handle the case where + spaces at the beginning of an input line are followed by a + newline. + +Thu Mar 7 20:18:07 1991 James Clark (jjc at jclark) + + * groff.c (device_table): Add PIC_X_OPTION for dvi device. + * groff.sh: Use pic -x with the dvi device. + + * dvi/devdvi/FontMakefile (H): Don't use -s. + + * dvi/devdvi/HI, dvi/devdvi/HB: New files. + * dvi/devdvi/Makefile: Add HI and HB to FONTS. + * dvi/devdvi/FontMakefile: Add rules for HI and HB. Include these + in FONTS. + +Mon Mar 4 13:20:14 1991 James Clark (jjc at jclark) + + * ps/psfig.diff: New file. + * ps/tmac.psfig: New file. + +Sat Mar 2 00:15:09 1991 James Clark (jjc at jclark) + + * macros/tmac.s (]=, ref*do-tl, ref*bib-print): Deleted. + (]-): Don't call ref*do-tl. + + * macros/tmac.s (ref*end-print): Use XP if [F not defined. + + * macros/tmac.s (ref*normal-print): Call FS rather than fn@do-FS. + (fn@do-FS): Rename to fn*do-FS. + + * troff/input.c (transparent_translate): New function. + (process_input_stack): Apply transparent_translate before calling + diversion::transparent_output(unsigned char). + +Wed Feb 27 00:13:25 1991 James Clark (jjc at jclark) + + * troff/input.c (do_define_macro): Define the macro before calling + skip_line. + + * xditview/Makefile: Add DEVICES variable. Change install target + to use this. + +Tue Feb 26 10:46:22 1991 James Clark (jjc at jclark) + + * groff.c (run_commands): Handle the possibility that there are + child processes other than those forked by us. + +Sun Feb 24 21:32:30 1991 James Clark (jjc at jclark) + + * lib/string.c (string::append): New function. + * lib/stringclass.h: Declare it. + +Thu Feb 21 11:49:26 1991 James Clark (jjc at jclark) + + * eqn/main.c (main): New option -N which sets + no_newline_in_delim_flag. + (do_file): If no_newline_in_delim_flag is set don't allow newlines + in delimiters. + * groff.c (main): Pass -N on to eqn. + (help, synopsis): Mention -N. + * groff.sh: Implement -N. + +Wed Feb 20 15:16:10 1991 James Clark (jjc at jclark) + + * macros/tmac.s (]=, ref*bib-print, ref*do-tl): New macros. + (]-): Call ref*do-tl if ref*need-tl is non-zero. + (XP): Allow as initializer. + +Tue Feb 19 14:09:06 1991 James Clark (jjc at jclark) + + * troff/env.c (environment::wrap_up_field): If field_spaces are + non-zero and we have a current_tab, subtract padding from + tab_distance. If this makes tab_distance <= 0, use the next tab + stop instead. If there isn't any next tab or it's a left tab, + wrap up the current tab. + (environment::start_field): Initialize tab_precedes_field. + (environment::wrap_up_tab): If there's a current field, update + pre_field_width, field_distance and tab_precedes_field. + * troff/env.h (environment::tab_precedes_field): New member. + +Fri Feb 15 01:24:00 1991 James Clark (jjc at jclark) + + * ps/ps.c (ps_printer::do_file): New function. + (ps_printer::special): Bind to `file' special. + (ps_printer::do_exec): Set ndefined_styles to 0. + +Sat Feb 9 03:03:04 1991 James Clark (jjc at jclark) + + * eqn/text.c (split_text): Grok \* and similar escapes sequences. + Avoid stripping first character from the start of unrecognized + escapes. Use lex_error instead of error to report errors. + * eqn/lex.c (get_token): Rework handling of escapes. + (lex_error): Move declaration into... + * eqn/eqn.h. + + * xditview/xditview.c (main): Make -page option work. + + * Makefile: Correct comment about -DBROKEN_SPOOLER and pageview. + +Wed Feb 6 12:28:43 1991 James Clark (jjc at jclark) + + * macros/tmac.s (B2): Correct size of box. + +Tue Feb 5 00:37:35 1991 James Clark (jjc at jclark) + + * macros/tmac.s (B2): Postpone drawing the box until in the + top-level diversion. + + * tty/tmac.tty: Add font translations for C, CR, CW. + + * groff.c (synopsis, help): Document -i. + * groff.sh: Implement -i. + + * macros/tmac.s (@NH): Put a `.' after multi-part numbers. + Simplify the construction of SN. + + * troff/number.c (parse_term): Give `|' a higher precedence. + * tbl/table.c (numeric_text_entry::simple_print): Parenthesise + accordingly. + + * macros/tmac.s (B2): Use par@finish instead of par@reset. + +Mon Feb 4 12:36:09 1991 James Clark (jjc at jclark) + + * lib/string.c (string::move): New function. + * lib/stringclass.h: Declare it. + +Sat Feb 2 16:02:16 1991 James Clark (jjc at jclark) + + * troff/env.c (distribute_space): Add optional argument + `force_forward'. + (environment::wrap_up_field): Call distribute_space with + `force_forward' argument of 1. + +Fri Feb 1 19:36:33 1991 James Clark (jjc at jclark) + + * lib/string.c, lib/stringclass.h (string::operator+=(char)): + Inline it. Move reallocation into... + (string::grow1): New function. + * pic/Makefile, tbl/Makefile, eqn/Makefile, ps/Makefile: Redo + dependencies to include library header files. + * lib/Makefile: Make string.c and lf.c depend on stringclass.h. + +Thu Jan 31 15:02:27 1991 James Clark (jjc at jclark) + + * macros/tmac.s (@NH): Use the same number registers than -ms does + for the heading level counters. Use the same string that -ms does + for the number for this heading. + +Wed Jan 30 14:25:40 1991 James Clark (jjc at jclark) + + * lib/new.c (operator new): Cast result of malloc to char *. + + * troff/input.c (spring_trap, lookup_request): Add assert that nm + is not null. + +Tue Jan 29 18:08:05 1991 James Clark (jjc at jclark) + + * groff.c (main): Support -i. + +Sun Jan 27 13:23:17 1991 James Clark (jjc at jclark) + + * pic/pic.h: Include <osfcn.h>. + + * ps/ps.c: Add declaration of mktemp. + + * Makefile: Add -DHAVE_UNION_WAIT option for CPPDEFINES. + * groff.c: If HAVE_UNION_WAIT is defined, declare wait()'s + argument as union wait *. + (run_commands): If HAVE_UNION_WAIT is defined cast wait()'s + argument to union wait *. + +Sat Jan 26 12:04:52 1991 James Clark (jjc at jclark) + + * tty/tmac.tty: Add definition of \(co. + + * pic/object.c (make_arc): Only increase radius when radius + strictly less than d. + (arc_object::update_bounding_box): May need to add 4.0 to end_quad + more than once. + + * troff/env.c (environment::environment(symbol), + environment::environment(const environment *)): Initialize + input_trap_count. + +Sat Jan 19 08:18:35 1991 James Clark (jjc at jclark) + + * tbl/main.c (main): Add exit(0). + + * ps/ps.c (ps_printer::~ps_printer): Use fseek instead of rewind. + + * pic/main.c (main): + * eqn/main.c (main): + * tbl/main.c (main): + * etc/soelim.c (main): + * driver/printer.c (printer::~printer): + * troff/node.c (real_output_file::~real_output_file, + real_output_file::flush): Check for errors on stdout. + + * most files: Add 1991 to copyright notice. + + * macros/tmac.s: Don't test \n(.x and \n(.y. + + * troff/input.c (token::next): Rename `escape_char' label to + `handle_escape_char' and `normal_char' label to + `handle_normal_char'. + +Thu Jan 17 15:46:35 1991 James Clark (jjc at jclark) + + * groff.c (main, synopsis, help): Support -a option. + * groff.sh: Likewise. Also eliminate Zflag variable by adding -z + to trflags while parsing options. + +Tue Jan 15 13:07:27 1991 James Clark (jjc at jclark) + + * troff/number.c (parse_term): With `m', `M' and `n' scale + indicators, convert scale factor to hunits before scaling. + +Mon Jan 14 12:39:12 1991 James Clark (jjc at jclark) + + * lib/font.c (scale_round): Better test for overflow when n is + negative. + +Thu Jan 10 11:10:56 1991 James Clark (jjc at jclark) + + * tbl/main.c (process_format): Add second argument of type + options*. Change callers. Allow opt->tab_char as well as '\t' + between format items. + +Mon Jan 7 12:30:18 1991 James Clark (jjc at jclark) + + * macros/tmac.an (PD): With no arguments, make sure register PD is + at least \n[.V]. + (TH): Call PD with no argument, instead of setting register PD + directly. + +Sun Jan 6 11:18:39 1991 James Clark (jjc at jclark) + + * Version 1.00 released. + +Sat Jan 5 08:44:30 1991 James Clark (jjc at jclark) + + * ps/tmac.ps, xditview/tmac.X: Add font translation of C to CR. + + * dvi/devdvi/DESC: Mount CW instead of CR. + + * dvi/tmac.dvi: Add definition of \(tm. + + * dvi/devdvi/texsy.map: Add lh, and rh. + * dvi/devdvi/texex.map: Add lt, rt, lb, rb, lk, rk. + * dvi/devdvi/texmi.map: Add *o. Regenerate fonts. + + * dvi/devdvi/FontMakefile: Generate H from cmss10. + * dvi/devdvi/Makefile: Install H. + * dvi/devdvi/H: New file. + +Fri Jan 4 15:04:57 1991 James Clark (jjc at jclark) + + * troff/env.c (vertical_spacing): Don't allow vertical spacing to + be 0. + +Thu Jan 3 13:41:19 1991 James Clark (jjc at jclark) + + * macros/tmac.s (@EN): Add \n(.V to the argument to ds@need. + + * macros/tmac.pic (PS): Avoid attempting to set negative indent. + + * macros/tmac.s (@EN): Handle the case where the equation is empty + but the label is not. + +Wed Jan 2 10:31:44 1991 James Clark (jjc at jclark) + + * troff/groff.h: New warning category WARN_SPACE. + * troff/input.c: Add WARN_SPACE to DEFAULT_WARNING_MASK. Add + WARN_SPACE to warning_table. + (interpolate_macro): Give a warning of type WARN_SPACE if the name + is longer than two characters and is not defined, but the first + two characters do make a defined name. + + * PROBLEMS: New file. + + * CHANGES: New file. + * README-0.6, README-1.00: Deleted. + + * groff.c, groff.sh: Add X75-12 and X100-12 devices. + * xditview/devX75/Makefile: Make devX75-12. + * xditview/devX100/Makefile: Make devX100-12. + + * xditview/devX100/eqnchar, xditview/devX75/eqnchar, + dvi/devdvi/eqnchar, ps/devps/eqnchar: Remove use of \R. + +Tue Jan 1 19:24:01 1991 James Clark (jjc at jclark) + + * README-0.7: Rename to README-1.00. + + * macros/tmac.pic: New file. + * macros/Makefile (install.nobin): Install tmac.pic. + +Mon Dec 31 10:40:53 1990 James Clark (jjc at jclark) + + * troff/env.c (hyphen_word): Correct the test for whether the + token is a hyphen. Reset npos to 0. + + * macros/tmac.s (par@sup-start, par@sup-end): New implementations. + +Sun Dec 30 15:53:13 1990 James Clark (jjc at jclark) + + * macros/tmac.s (ds*common-end): Call par*reset. + (PE): Likewise. + (par@reset-indent): Deleted. + + * macros/tmac.s (@IP): Divert the label. + +Sat Dec 29 14:33:32 1990 James Clark (jjc at jclark) + + * xditview/draw.c (setGC): Use a line width of .1m rather than + .04m by default; round rather than truncate value. + + * tbl/table.c (class empty_entry): New class. + (empty_entry::empty_entry, empty_entry::line_type): New functions. + (table::add_entry): Represent empty entries by objects of type + empty_entry. + (table_entry::line_type): Return -1. + (table::determine_row_type): Ignore entries with line_type 0. + Treat type -1 as non-lines. + +Fri Dec 28 15:04:41 1990 James Clark (jjc at jclark) + + * ps/devps/textmap, xditview/libXdvi/DviChar.c, tty/devlatin1/R.proto, + macros/tmac.s: Rename \(-d to \(Sd. + +Thu Dec 27 12:35:47 1990 James Clark (jjc at jclark) + + * ps/devps/textmap: Add `sd', `/_' and `3d' characters. + * xditview/libXdvi/DviChar.c: Likewise. + * dvi/devdvi/texsy.map: Add `<<', `>>'. + +Wed Dec 26 13:33:23 1990 James Clark (jjc at jclark) + + * troff/div.c (top_level_diversion::begin_page): Call + init_output() if the_output is 0. + +Sat Dec 22 12:35:29 1990 James Clark (jjc at jclark) + + * troff/input.c: Replace ESCAPE_E by ESCAPE_e and ESCAPE_C by + ESCAPE_c. + (get_copy): Turn \E into ESCAPE_E. + (token::process, asciify): Handle ESCAPE_E. + + * macros/tmac.s (ds*common-end, par@reset): Add `.rj 0'. + (RD): New macro. + (DS): Implement `.DS R'. + +Fri Dec 21 11:41:53 1990 James Clark (jjc at jclark) + + * macros/tmac.s (FS): New macro. + + * macros/tmac.s (fn@do-FS): Use @LP instead of LP. + + * macros/tmac.s (cov*tl-init): Remove after first execution + instead of aliasing to @nop. Call top of page macro explicitly + instead of setting trap; call @init first. Set pg@top as top of + page macro. + (cov*auto-init): Deleted. Set cov*tl-init instead of + cov*auto-init as top of page trap. + (TL, LP): Do a break instead of calling cov*tl-init. + (cov*print): With RP format but no TL, alias FS and FE to @FS and + @FE; in this case also give a warning and always start another + page. No need to set pg@top here. + (cov*tl-init): Rename to cov*first-page-init. + + * macros/tmac.s (RP): Do `.pn 0'. + (cov*tl-init): With RP format don't do `.pn 0'. + + * macros/tmac.s (pg@cs-top): Set no space mode. + + * macros/tmac.s (par@TL, par@AU, par@AI): New macros. + (cov*ab-init): Alias TL, AU and AI to these. + +Thu Dec 20 10:10:50 1990 James Clark (jjc at jclark) + + * macros/tmac.s (@EQ): Move the space before the equation into @EN + (@EN): Do nothing unless \n[dl] is > 0. + +Tue Dec 18 12:20:47 1990 James Clark (jjc at jclark) + + * pic/object.c (ellipse_object::radius): New function. + + * VERSION: Change version to 0.7. + + * tbl/table.c (block_entry::do_divert): Declare return type as + void. + (block_entry::divert, alphabetic_block_entry::divert): Return 1. + +Mon Dec 17 12:30:34 1990 James Clark (jjc at jclark) + + * troff/column.c: New file. + * troff/Makefile: Corresponding changes. + + * troff/hvunits.c (scale(vunits, vunits, vunits)): New function. + Friend of vunits. + + * troff/div.c (top_level_diversion::space): If the space causes + the first-page transition and springs a trap, truncate the space + to 0. + +Fri Dec 14 12:30:02 1990 James Clark (jjc at jclark) + + * ps/ps.c (ps_printer::do_import): Add a `clear' after including + the document. + + * pic/troff.c (troff_output::line_thickness, + troff_output::set_fill): Do a horizontal motion to compensate for + the width of the \D escape sequence. + +Thu Dec 13 10:17:14 1990 James Clark (jjc at jclark) + + * xditview/tmac.X: Reinstate definition of \(rn, but only for X100 + (not X75). + + * eqn/sqrt.c (sqrt_box::compute_metrics): Supply missing argument + to printf. + + * tbl/table.c (simple_entry::simply_print): Don't declare as pure. + Supply empty definition. + (text_entry::simple_print, simple_text_entry::simple_print): + Delete declarations. + (table::add_entry): Represent empty entries by objects of type + `simple_entry'. + +Wed Dec 12 08:50:48 1990 James Clark (jjc at jclark) + + * troff/Makefile: Remove -DHYPHEN_CONTROL from DEFINES. + + * tbl/table.c (left_text_entry::add_tab): New function. + + * macros/tmac.s: Make @RT an alias for par@reset. Make RT + initialize like LP. + +Mon Dec 10 11:19:55 1990 James Clark (jjc at jclark) + + * troff/env.c (environment::start_field): Give an error message if + there is no next tab. + +Sun Dec 9 11:46:40 1990 James Clark (jjc at jclark) + + * troff/env.c (hyphenate): Skip initial elements with zero + hyphenation code. + + * macros/tmac.s (par@init): Keep VS in points rather than units. + +Sat Dec 8 23:00:27 1990 James Clark (jjc at jclark) + + * pic/main.c (main): Implement `-c' option. + * pic/output.h: Declare make_tpic_output(). + * pic/tex.c (tex_output::set_pen_size): Make it virtual and + protected. + (tpic_output): New class. + (tpic_output::tpic_output, tpic_output::set_pen_size, + tpic_output::command, make_tpic_output): New functions. + +Fri Dec 7 11:57:41 1990 James Clark (jjc at jclark) + + * tbl/main.c (main): Call `.ab' if \n(.g is false. Define TS/TE + if they're not already defined. + * tbl/table.c (init_output): Don't test \n(.g. + + * troff/input.c (do_if_request): Delete `g' condition. Recognize + `d', `r' and `c' conditions even in compatibility mode. + +Tue Dec 4 09:13:47 1990 James Clark (jjc at jclark) + + * ps/tmac.ps (ps-bb): Protect against negative numbers in bounding + box. + +Mon Dec 3 07:18:26 1990 James Clark (jjc at jclark) + + * troff/env.h (environment::prev_line_interrupted): New member. + (environment::get_prev_line_interrupted): New function. + * troff/env.c (environment::newline): Set prev_line_interrupted. + (environment::environment(const environment *), + environment::environment(symbol)): Initialize + prev_line_interrupted. + * troff/input.c (process_input_stack): Don't give special + treatment to space and newline at the beginning of the line if the + previous line was interrupted. + +Sat Dec 1 15:48:37 1990 James Clark (jjc at jclark) + + * eqn/eqn.y: Disallow PRIME by itself. + * eqn/lex.c (token_table): Bind `opprime' instead of `prime' to + PRIME. + (def_table): Remove definition of '. Define prime to be `. + + * eqn/eqn.y: Split off part of rule `script' into a new rule + `nonsup'. + +Fri Nov 30 10:23:44 1990 James Clark (jjc at jclark) + + * macros/tmac.s ({, }): New string aliases. + +Thu Nov 29 11:34:40 1990 James Clark (jjc at jclark) + + * README-0.7: New file. + +Wed Nov 28 10:09:57 1990 James Clark (jjc at jclark) + + * macros/tmac.s: New file. + * man/groff_ms.man: New file. + * Makefile: Add definition of TMAC_S. Pass TMAC_S in SUBFLAGS. + * Makefile.bd: Similarily. + * man/Makefile: Add groff_ms.n to MAN7PAGES. Replace @TMAC_S@. Add + definition of TMAC_S. + * macros/Makefile: Add definition of TMAC_S. Install tmac.s. + * macros/TODO: New file. + +Sat Nov 24 20:04:54 1990 James Clark (jjc at jclark) + + * troff/env.c (right_justify): New function. + (init_env_requests): Bind this to request "rj". + (center_lines): Set right_justify_lines to 0. If we get a bad + integer, center 1 line. + (environment::environment(symbol), environment::environment(const + environment *)): Initialize right_justify_lines. + (environment::get_right_justify_lines): New function. + (init_env_requests): Bind this to number_register ".rj". + + * troff/env.c (environment::choose_breakpoint): Implement + hyphenation_margin and hyphenation_space. + (environment::get_hyphenation_space, + environment::get_hyphenation_margin): New functions. + (init_env_requests): Bind these to .hys and .hym. + (hyphenation_space_request, hyphenation_margin_request): New + functions + (init_env_requests): Bind these to hys and hym. + (environment::environment(symbol), environment::environment(const + environment *)): Initialize hyphenation_margin and + hyphenation_space. + * troff/env.h: Corresponding changes to class environment. + +Fri Nov 23 09:08:16 1990 James Clark (jjc at jclark) + + * troff/div.c (blank_line): Always do a break. + + * eqn/box.c (do_text): Turn off escapes while appending text to + string. + +Thu Nov 22 10:58:59 1990 James Clark (jjc at jclark) + + * troff/input.c (while_break_request, while_continue_request): New + functions. + (init_input_requests): Bind these to "break" and "continue". + (while_depth, while_break_flag): New variables. + (while_request): Update while_depth. Break out of loop if + while_break_flag is set. + +Wed Nov 21 10:54:40 1990 James Clark (jjc at jclark) + + * tbl/table.c (init_span_reg): Initialize span_width_reg to \n(.H + rather than 0. + +Mon Nov 19 00:45:03 1990 James Clark (jjc at jclark) + + * Makefile: Include -DBROKEN_SPOOLER by default. Expand comment. + + * stringify: New file. + * Makefile (groff.o): Use stringify. + + * xditview/tmac.X: Remove definition of \(rn. + * xditview/libXdvi/DviChar.c: Remove radicalex from + Adobe_symbol_map. + +Sat Nov 17 10:44:58 1990 James Clark (jjc at jclark) + + * tbl/table.c (table::add_entry): Allow alphabetic text blocks. + (alphabetic_block_entry::alphabetic_block_entry, + alphabetic_block_entry::divert, alphabetic_block_entry::print): + New functions. + (block_entry::divert): Split off body into ... + (block_entry::do_divert): If the block is alphabetic, subtract 2n + from the line length; also update the span width to dl+2n, and the + alphabetic span width to dl. + + * driver/input.c (do_file): While reading argument to D command, + when expanding buffer, multiply szp by sizeof(int) rather than 2 + in the argument to memcpy. + + * tbl/table.c (compute_span_width): Add 2n rather than 1n to the + width of alphabetic columns. + +Fri Nov 16 06:34:27 1990 James Clark (jjc at jclark) + + * troff/node.c (lookup_family): Supply second argument to lookup. + + * troff/dictionary.c (dictionary::lookup): After an unsuccesful + search, return immediately if v is 0. + + * pic/troff.c: Define EQN_NO_EXTRA_SPACE_REG. + (troff_output::start_picture): Set this reg. + (troff_output::end_picture): Remove this reg + * eqn/box.c (box::extra_space): Don't produce `\x's if + EQN_NO_EXTRA_SPACE_REG is defined. + + * eqn/eqn.y: Allow just a PRIME to be a `simple'. + * eqn/text.c (split_text): Map ' to \(fm when it's the first + character. + +Thu Nov 15 10:35:06 1990 James Clark (jjc at jclark) + + * macros/tmac.e: Use font 3 instead of B in $c. Remove `bd' + requests. + + * troff/div.c (top_level_diversion::top_level_diversion): + Initialize page_number to 0. + +Wed Nov 14 21:41:58 1990 James Clark (jjc at jclark) + + * groff/troff (environment::environment(const environment *)): + Initialize name to e->name, rather than "anonymous". + +Sat Nov 10 01:59:37 1990 James Clark (jjc at jclark) + + * xditview/libXdvi/Dvi.c (ShowDvi): If eof is encountered, reset + requested_page. Split middle part into ... + (FindPage): New function. + (SetValues): If we don't yet know the last page, and the requested + page is greater than the current page, call FindPage. + Update the font_map_string before doing this. + + * xditview/tmac.X: Add definitions of \(sq, \(ga, \(dg and \(dd. + Translate \(lh and \(rh into left and right double arrows. + + * troff/node.c (class hyphen_inhibitor_node): New class. + (hyphen_inhibitor_node::hyphen_inhibitor_node, + hyphen_inhibitor_node::copy, hyphen_inhibitor_node::same, + hyphen_inhibitor_node::type, + hyphen_inhibitor_node::get_hyphenation_type): New functions. + (node::add_discretionary_hyphen): Use hyphen_inhibitor_node rather + than dbreak_node(0, 0) to represent a `\%' at the beginning of a + word. + +Fri Nov 9 16:05:38 1990 James Clark (jjc at jclark) + + * troff/node.h (dummy_node::get_hyphenation_type, + transparent_dummy_node::get_hyphenation_type): Declare them. + * troff/node.c: (dummy_node::get_hyphenation_type, + transparent_dummy_node::get_hyphenation_type): New functions. + +Wed Nov 7 10:09:06 1990 James Clark (jjc at jclark) + + * xditview/libXdvi/draw.c: If M_PI not defined after including + math.h, then define it. + + * xditview/Makefile: Add definition of AR. Pass it to the submake + in libXdvi. + * xditview/libXdvi/Makefile: Add definitions of AR and RANLIB. + +Tue Nov 6 10:14:27 1990 James Clark (jjc at jclark) + + * troff/dictionary.h (object_dictionary::alias): Declare return + value as int. + * troff/dictionary.c (object_dictionary::alias): Return non-zero + if the old name was defined. + * troff/input.c (alias_macro): Give a warning if the old name was + not defined. + * troff/reg.c (alias_reg): Likewise. + +Mon Nov 5 00:31:39 1990 James Clark (jjc at jclark) + + * troff/input.c (token::next): Delete implementation of \R. + + * macros/Makefile: Strip comments from tmac.e while installing it. + + * troff/input.c: New variable `nroff_mode'. + (troff_request, nroff_request): New functions. + (init_input_requests): Bind `troff' and `nroff' to troff_request + and nroff_request. + (do_if_request): Compute results of t and n conditions from + nroff_mode. + + * text/text.c (split_text): Fix typo in >=. + + * eqn/lex.c: Add definition of `==' to def_table. + +Fri Nov 2 02:49:09 1990 James Clark (jjc at jclark) + + * pic/tex.c (tex_output::start_picture): Change the definitions of + \graph and \graphtemp so that they work properly with Plain TeX. + + * pic/tex.c (tex_output::solid_arc): Ensure that the second angle + argument to `ar' is not less than the first. + + * pic/pic.y: Allow a comma between elements of the variable list + in the argument to `reset'. + + * pic/object.c (arc_object::arc_object): Fix computation of + radius. + + * eqn/main.c (main): Add exit(0). + +Thu Nov 1 02:03:50 1990 James Clark (jjc at jclark) + + * troff/div.c (begin_page): Test no_space_mode after doing the + break, but still push the page ejector cookie before doing the + break. Also set the next page number after doing the break. + + * xditview/xditview.c (NewFile): Don't set the title and icon name + if this is the first file and its name is `-'. + * groff/groff.c: Define a new device flag XT_OPTION. Set it for + the X75 and X100 devices. + (main): If a device has the XT_OPTION flag set and there's exactly + one file argument, pass the driver -xrm and -title options to set + the icon name and window title to the name of the file. + + * troff/env.c (environment_switch): If there was an argument but + it wasn't a valid number or name, then pop an environment but + don't give an error message on underflow. + + * troff/number.c (start_number): Correct spelling in error message. + + * troff/input.c (token::delimiter): Don't print an error message + if err is false. + + * xditview/libXdvi/parse.c (ParseInput): In case 'D', only call + ParseDrawFunction if dw->display_enable is true. + +Wed Oct 31 05:49:50 1990 James Clark (jjc at jclark) + + * pic/pic.y: Parse text positioning like normal attributes, so as + to allow `"text" at 0,0 ljust'. Don't allow `center' as a + positioning attribute. + +Mon Oct 29 22:50:38 1990 James Clark (jjc at jclark) + + * tbl/main.c (process_data): When in state START while reading a + text block, don't change to state MIDDLE if c is a newline. + +Sun Oct 28 21:59:56 1990 James Clark (jjc at jclark) + + * dvi/dvi.c (dvi_printer::begin_page): Rename `i' variable to `j' + so as to avoid shadowing parameter. + +Wed Oct 24 18:35:39 1990 James Clark (jjc at jclark) + + * tbl/table.c (trim_space): Deleted. + (table::add_entry): Don't call trim_space. + +Mon Oct 22 03:48:39 1990 James Clark (jjc at jclark) + + * VERSION: Change version to 0.6. + + * troff/number.c (parse_expr): Make == work. + +Sat Oct 20 11:28:17 1990 James Clark (jjc at jclark) + + * man/grog.man: New file. + * man/Makefile: Add grog.n to MAN1PAGES. + * etc/grog.sh: New file. + * etc/Makefile: Install grog.sh as grog. + +Fri Oct 19 11:17:15 1990 James Clark (jjc at jclark) + + * troff/input.c (token::next): Implement \E. + +Thu Oct 18 11:56:24 1990 James Clark (jjc at jclark) + + * xditview/tmac.X: Change font translations to match tmac.ps. + + * troff/input.c (non_empty_name_warning): Don't give a warning if + `\{' terminates the name. + +Tue Oct 16 10:04:23 1990 James Clark (jjc at jclark) + + * ps/devps/symbol.diff: New file. + * ps/devps/FontMakefile: Mention symbol.diff. + +Sun Oct 14 11:46:46 1990 James Clark (jjc at jclark) + + * troff/node.c (font_position): Use get_long_name to read the + external_name. + + * troff/env.c (environment_switch): If we get a number that's < 0 + or >= NENVIRONMENTS, treat it like a name. + Change NENVIRONMENTS to 10. + + * troff/groff.h: Remove definition of FONTS_MAX. + * troff/node.h (class font_family): Make map a pointer instead of + an array. Add a map_size member. Make it a class. Make nm const + and public. Make invalidate_fontno a friend. + * troff/node.c: Define font_table_size. Make font_info a pointer + rather than an array. + (class troff_output_file): Allocate font_position dynamically. Add + nfont_positions member. + (troff_output_file::set_font): Grow font_position if necessary. + (troff_output_file::~troff_output_file): Delete font_position. + (troff_output_file::troff_output_file): Allocate font_position. + (grow_font_table): New function. + (troff_output_file::really_begin_page, + troff_output_file:really_copy_page): Use nfont_positions rather + than FONTS_MAX. + (mount_font_no_translate, mount_style): Call grow_font_table if + necessary. + (font_family::font_family): Allocate map. + (font_family::make_definite): Grow map if necessary. Use + font_table_size instead of FONTS_MAX. + (font_family::~font_family): New function. + (invalidate_fontno): Use font_family::map_size. + (get_fontno, env_space_width, env_half_narrow_space_width, + env_narrow_space_width, symbol_fotno, is_good_fontno, + get_bold_fontno, make_glyph_node): Use font_table_size rather than + FONTS_MAX. + (next_available_font_position): Never return 0. + +Fri Oct 12 10:17:52 1990 James Clark (jjc at jclark) + + * ps/tmac.ps: Add font translations for compatibility with dpost. + +Thu Oct 11 12:09:03 1990 James Clark (jjc at jclark) + + * eqn/pile.c: Rename default_baseline_sep to baseline_sep. + Move BASELINE_SEP_FORMAT and COLUMN_WIDTH_FORMAT into pbox.h. + Move definitions baseline_sep, shift_down, column_sep, + matrix_side_sep into... + * eqn/box.c: Add them to param_table. + * eqn/pbox.h: Add declarations to pbox.h. + + * troff/input.c (set_string): Cast value to unsigned char *. + + * troff/token.h (process_input_stack): Declare it static before + declaring it a friend. + +Wed Oct 10 09:59:13 1990 James Clark (jjc at jclark) + + * dvi/devdvi/texex.map: Fix positions of extensible brace middle + and bottom. + * dvi/devdvi/EX: Regenerate. + + * troff/input.c (init_charset_table): Make ", ', ), ], *, \(dg + transparent. + +Tue Oct 9 08:34:02 1990 James Clark (jjc at jclark) + + * eqn/lex.c: In defaults_table, make definition of `dot' call + `dot_def'. Don't explicitly make it roman. Similarily for other + accents. + + * pic/lex.c (for_input::for_input): Add by_is_multiplicative + argument. + (for_input::get, for_input::peek): Use this. + (do_for): Add by_is_multiplicative argument. + * pic/pic.y: Change optional_by clause to allow '*' after `by'. + Change semantic value of optional_by to be a double plus a flag + saying whethet the by clause is multiplicative. + + * eqn/lex.c (get_delimited_text): Remember location of start of + definition. Improve error handling when EOF is encountered. + + * lib/font.h: Rename handle_x_command to + handle_unknown_font_command. + * lib/font.c (font::load): Call handle_unknown_font_command for + any unknown command in the font description file. Don't call + handle_x_command. Include the name of the command in the argv. + Improve message for unknown command after kernpairs or charset + command. + * ps/ps.c (ps_font::handle_x_command): Rename to + handle_unknown_font_command. Remove message about `x download' + command. Give error message for wrong number of arguments. + * ps/devps/afmtodit: Generate `encoding' instead of `x encoding'. + * dvi/dvi.c (dvi_font::handle_x_command): Rename to + handle_unknown_font_command. Give an error message for wrong + number of arguments. Rename design_size to designsize. + * dvi/tfmtodit.c (main): Generate `checksum' instead of `x + checksum', `designsize' instead of `design_size'. + +Mon Oct 8 00:38:55 1990 James Clark (jjc at jclark) + + * eqn/*.[chy]: Change underaccent to uaccent. + + * eqn/eqn.y: Add rule for underaccent. Declare UNDERACCENT token; + give it the same precedence as ACCENT. + * eqn/other.c (make_underaccent_box): New function. + * eqn/box.h: Declare it. + * eqn/lex.c: Add UNDERACCENT to token_table. Add utilde to + def_table. + +Sun Oct 7 11:25:16 1990 James Clark (jjc at jclark) + + * pic/pic.y (reset_all): New function. Called in rule for RESET. + (parse_init): Call reset_all. + (define_variable): When defining scale reset only those + pre-defined variables that are scaled. + (defaults_table): Add `scale' as non-scaled value. + + * pic/pic.y: Redo parsing of text adjustments: parse adjustments + together with the text; allow any number of positioning words; + allow center as a positioning word. + + * pic/object.c (output::compute_scale): Get picture maximum height + and width from variables called maxpswid and maxpsht. + * pic/pic.y: Add maxpswid and maxpsht to defaults_table. + +Sat Oct 6 10:16:56 1990 James Clark (jjc at jclark) + + * pic/object.c (object_spec::make_text): Multiply textht by number + of text items. + + * pic/pic.y: Allow `sprintf("string", expr,...)' wherever text can + occur. + (do_sprintf): New function. + (pic.gperf): Add sprintf token. + (text, sprintf): New rules. + + * pic/pic.y: `rand()' with no arguments returns a random number + in the range [0,1). + + * pic/pic.y: Allow a bare expression to be an attribute: change + precedences to support this. Change optional_ordinal rule to + optional_ordinal_last to avoid reduce/reduce conflict. + * pic/object.c (object_spec::object_spec): Initialize direction. + + * pic/pic.y: Implement ^ operator meaning exponentiation. + + * troff/node.h: Add default argument to mount_font. + * troff/node.c (font_position): Read an optional third argument + giving the external_name. + (mount_font): Add optional argument giving the external_name. + (mount_font_not_translate): Have additional argument giving + external name. Use this name to load the font. Pass both names + to font_info::font_info. + (font_info::font_info): Have additional argument giving + external_name. + (class tfont): New member external_name. + (font_info::get_tfont): Use external name to construct tfont_spec. + +Fri Oct 5 04:03:13 1990 James Clark (jjc at jclark) + + * eqn/lex.c (init_table): Add argument giving device. Define + name of device to be "1". + (do_ifdef): Counts as true if the argument has been defined with + `define'. + * eqn/main.c (main): Call init_table with device argument. Make + device local to main. + * eqn/eqn.h: Change declaration of init_table. Remove declaration + of device. + + * pic/lex.c (get_delimited): Allow text to be delimited by + matching {}s. Don't recognize ending delimiter within a string. + + * troff/input.c (get_delim_name): New function. + (token::next): Implement \C. + + * lib/font.c (font::load): Grok ---. Add an alias for each + character based on its code. + (font::get_code_width): Deleted. + * lib/font.h (class font): Declare font::number_to_index(). + Remove declaration of font::get_code_width. + * lib/nametoindex.c (font::name_to_index): Add 512 rather than 256 + to indices of named characters. + (font::number_to_index): New function. + * troff/input.c (font::number_to_index): New function. + (get_charinfo_by_number, charinfo::get_number, + charinfo::set_number): New functions. + (token::next): Turn \N into a TOKEN_NUMBERED_CHAR. + (token::process, token::description, token::get_char, + token::add_to_node_list, token::operator==): Handle + TOKEN_NUMBERED_CHAR. + * troff/charinfo.h: Declare get_charinfo_by_number, + charinfo::get_number, charinfo::set_number. Add NUMBERED flag to + charinfo class. + (charinfo::numbered): New function. + * troff/token.h: Add TOKEN_NUMBERED_CHAR. + * troff/env.h (class environment): Remove declaration of ... + * troff/env.c (environment::make_numbered_char_node): Deleted. + * troff/node.c (make_numbered_node): Deleted. + (class numbered_glyph_node): Remove. + (troff_output_file::put_char_width, troff_output_file::put_char): + Handle numbered chars. + (troff_output_file::numbered_char): Removed. + (tfont::get_code_width): Removed. + (make_glyph_node): Don't search special fonts for numbered + characters. + * troff/node.h: Remove declaration of make_numbered_node. + * driver/input.c (do_file): Handle N command. + * driver/printer.h: Add declaration of ... + * driver/printer.c (printer::set_numbered_char): New function. + * dvi/tfmtodit.c (main): Generate unnamed entries. + * ps/devps/afmtodit: Likewise. + * xditview/xtotroff.c (MapFont): Likewise. + * xditview/libXdvi/parse.c (ParseInput): Grok N command. + + * tbl/main.c (process_format): If multiple widths are specified + for a column but all the widths are the same, don't give an error + message. + + * tbl/table.c (table::do_row): If the current row is all lines and + the stuff doesn't contains a line, mark the top of the row after + printing stuff before the row. If the current row is not all + lines and the stuff doesn't contain a line, don't unnecessarily + mark the top of the row before printing the stuff. + +Mon Oct 1 11:42:00 1990 James Clark (jjc at jclark) + + * troff/groff.h: Remove MAX_PATH. + * troff/input.c (open_file): Dynamically allocate space for the + path. + (open_mac_file, process_macro_file): Corresponding changes. + +Sun Sep 23 18:56:26 1990 James Clark (jjc at jclark) + + * troff/node.h (class output_file): Make copy_file pure. Add + vspace method ifdef COLUMN. Add is_printing method. + * troff/node.c: Add class printing_reg. Add class + real_output_file. Derive other output_file classes from + real_output_file; in these classes rename begin_page to + really_begin_page, print_line to really_print_line, copy_file to + really_copy_file, transparent_char to really_transparent_char. + Move output_file::flush to real_output_file. Add printing member + to class output_file. + * troff/div.h: Remove printing member from top_level_diversion. + Add vspace member function to class diversion ifdef COLUMN. Add + some declarations ifdef COLUMN. + * troff/div.c (top_level_diversion::copy_file, + top_level_diversion::transparent_output, + top_level_diversion::output): Don't test printing member before + output. + * troff/input.c: Handle initial variable_space_request ifdef + COLUMN. + * troff/Makefile: Add column.c but comment it out. Add -DCOLUMN + but comment it out. + +Sat Sep 22 11:32:22 1990 James Clark (jjc at jclark) + + * troff/div.c (diversion::need): Make any space forced. If we + sprung a trap, set truncated_space to minus the distance to the + trap and set needed_space to the amount that was needed. + (top_level_diversion::space): A forced space turns no_space_mode + off. + (class constant_vunits_reg): New class. + (init_div_requests): Implement number registers .trunc and .ne + using constant_vunits_reg. + (class truncated_space_reg): Deleted. + + * troff/div.h: Don't have a no_space_mode member in diversion. + Instead have it in top_level_diversion. + * troff/div.c (diversion::diversion): Don't initialize + no_space_mode. + (top_level_diversion::top_level_diversion): Initialize + no_space_mode. + (no_space, restore_spacing): Do nothing if curdiv != topdiv. + (macro_diversion::output): Don't clear no_space_mode. + + * troff/input.c (diverted_space_node::reread): Don't call + environment::do_break. In fill mode, act like a blank line. + (diverted_copy_file_node::reread): Don't call + environment::do_break. + + * troff/div.c (blank_line): New function. + * troff/div.h: Declare it. + * troff/input.c (process_input_stack): Call it. + + * troff/div.c (truncated_space_reg::get_string): New function. + (init_div_requests): Bind to .trunc. + (space_request, top_level_diversion::space, + top_level_diversion::output, macro_diversion::space, + macro_diversion::output): Update truncated_space. + (macro_diversion::output): Redo calculations when trap sprung. + (macro_diversion::output, macro_diversion::space): No need for + trap_flag. + + * troff/div.c (top_level_diversion::output): Set nl_reg_contents + after truncating post line spacing. + +Fri Sep 21 11:27:25 1990 James Clark (jjc at jclark) + + * ps/devps/prologue (MF, SF): Make them work even if setfont is + defined as a procedure rather than as an operator. + +Thu Sep 20 12:55:05 1990 James Clark (jjc at jclark) + + * troff/div.c (macro_diversion::space): Ignore no_space_mode. + +Wed Sep 19 10:54:37 1990 James Clark (jjc at jclark) + + * troff/div.c (top_level_diversion::output): Merge + output_file::print_line and output_file::end_of_line member + functions. + * troff/div.h (class output_file): + * troff/node.c (troff_output_file::print_line, + troff_output_file::end_of_line, output_file::end_of_line, + ascii_output_file::print_line, suppress_output_file::print_line): + Corresponding changes. + +Tue Sep 18 11:31:47 1990 James Clark (jjc at jclark) + + * troff/input.c (token::next): Don't give a warning for `\.'. + + * troff/env.c (environment::get_center_lines): New function. + (init_env_requests): Bind number register .ce to it. + * troff/env.h: Declare it. + * tbl/table.c (table::init_output): Define reset macro to restore + .ce. If center option not given, store .ce in SAVED_CENTER_REG. + Then do .ce 0. + (table::print): If center option not given, then imply center + option if SAVED_CENTER_REG > 0. + +Mon Sep 17 09:19:19 1990 James Clark (jjc at jclark) + + * ps/devps/Makefile: Remove T from FONTS. Remove TSymbol.ps and + Troff.ps from DOWNLOAD. + + * troff/Makefile: Change comment in DEFINES to avoid confusing + System V make. + + * ps/ps.c (ps_printer::do_exec): Allow newlines within PostScript + code. Don't try to catch errors with stopped. + (check_line_lengths): New function. + * ps/devps/prologue (EXEC): Deleted. + (EBEGIN, EEND): New procedures. + +Sun Sep 16 14:51:15 1990 James Clark (jjc at jclark) + + * troff/input.c: Include request.h before node.h. + * troff/node.c: Likewise. + * troff/env.c: Likewise. + * troff/div.c: Likewise. + * troff/node.h (class special_node): Store argument as a macro + rather than a char *. + * troff/node.c (special_node::special_node, special_node::copy): + Grok this. + (special_node::~special_node): Deleted. + (special_node::tprint): Deleted. + (special_node::tprint_start, special_node::tprint_end, + special_node::tprint_char): New functions. + (troff_output_file::special): Deleted. + (troff_output_file::start_special, troff_output_file::end_special, + troff_output_file::special_char): New functions. + * troff/input.c (special_node::tprint): New function. + (do_special): Use macro not char *. + (do_transparent_macro): Deleted. + (token::next): Don't call do_transparent_macro. + + * troff/input.c (token::next): Add 'Y' case. + (do_transparent_macro): New function. + * troff/node.c (troff_output_file::special): Handle newlines with + argument using new continuation convention. + * driver/input.c (get_string): Cope with continuation convention. + (do_file): Don't call skip_line after calling get_string(1). + * ps/ps.c (ps_printer::special, ps_printer::do_import, + ps_printer::do_def, ps_printer::do_exec): Cope with newlines in + arg. + * xditview/libXdvi/parse.c (ParseInput): Ignore lines starting + with +. + +Sat Sep 15 19:00:10 1990 James Clark (jjc at jclark) + + * troff/input.c (asciify): By default, illegal input characters + should return empty string. + + * troff/input.c (copy_file): Handle first page transition like title. + (token::next, process_input_stack): Grok COPY_FILE_REQUEST. + + * troff/input.c (token::next): Improve error message for EOF after + escape character. + (input_char_description): New function. + (get_char_for_escape_name): Use input_char_description. + (token::next): Warn about unrecognized escape sequences. + (warning_table): Add WARN_ESCAPE. + * troff/groff.h: Declare WARN_ESCAPE. Change WARN_TOTAL + accordingly. + + * troff/token.h: Remove declaration of process_input_stack. + + * troff/input.c: Remove declaration of init_hyphen_requests. + * troff/request.h: Correct spelling in declaration of same. + + * troff/input.c (token::next): Check whether escape_char is 0. + +Fri Sep 14 12:09:25 1990 James Clark (jjc at jclark) + + * groff.c (main, usage, help): Implement -P and -L options. + * groff.sh: Likewise. + + * troff/input.c (token::next): Use some gotos to avoid code + duplication. + + * troff/input.c (get_long_name, get_name, read_long_ecsape_name): + Avoid calling symbol::symbol if name empty. + +Thu Sep 13 06:21:45 1990 James Clark (jjc at jclark) + + * troff/input.c (init_input_requests): Make \n(.x return the major + version number and \n(.y return the minor version number. + * troff/Makefile: Construct file majorminor.c defining + major_version and minor_version automatically from ../VERSION. + + * troff/node.c (class glyph_node): Make operator new and operator + delete public. + (class ligature_node): Similarily. + + * troff/input.c (operator==(const macro &, const macro &)): New + function. + (non_interpreted_node::same): Use this. + (string_iterator::string_iterator): Make macro& argument const. + + * troff/input.c (input_iterator::get): New function. Don't make + asciify_macro or class non_interpreted_node friends of class + input_iterator. + (non_interpreted_node::interpret): Use input_iterator::get. + (asciify_macro): Likewise. + + * troff/input.c (~token_node, ~string_iterator, ~arg_list, + ~non_interpreted_node): Deleted. + * troff/node.c: (~suppress_output_file, ~ascii_output_file): + Deleted. + + * troff/symbol.h: Make all symbol member functions const. + + * lib/strtol.c: New file. + * lib/Makefile: Add strtol.c. + * Makefile: Define STRTOL as strtol.o to include strtol in + libgroff.a. + +Wed Sep 12 10:00:49 1990 James Clark (jjc at jclark) + + * pic/troff.c (troff_output::simple_circle): Divide by scale. + +Tue Sep 11 14:17:16 1990 James Clark (jjc at jclark) + + * troff/input.c (do_special): Use input_level. + + * troff/token.h (TOKEN_BACKSPACE): New token. + (token::backspace): New function. + * troff/input.c (token::description, token::next, token::process): + Grok TOKEN_BACKSPACE. + (do_special): Turn TOKEN_BACKSPACE back into \b. + + * troff/token.h (token::leader): New function. + * troff/input.c (do_special): Turn TOKEN_LEADER back into \001. + + * troff/input.c (do_special): Turn TOKEN_TAB back into \t. + + * troff/input.c (do_special): Use token::description in error + message. + +Mon Sep 10 11:06:27 1990 James Clark (jjc at jclark) + + * troff/input.c (decode_args): Combine quoted and + quote_input_level variables. Make it a for (;;) loop. + + * troff/input.c (get_char_for_escape_name): Check for \001 and \b. + + * troff/input.c (read_long_escape_name): The test for whether to + expand buffer was off by 1. + (read_string): Similarily. + +Fri Sep 7 11:45:50 1990 James Clark (jjc at jclark) + + * troff/input.c: Use `const int' rather than `static const int'. + + * troff/div.h (diversion::copy_file): Declare as pure virtual. + (macro_diversion::copy_file): New function. + * troff/node.h: New class diverted_copy_file_node. + * troff/node.c: Implement it. + * troff/input.c (copy_file): Use diversion::copy_file. Handle + first page transition by pushing a diverted_copy_file_node. + * troff/input.c (token::next, process_input_stack): Don't handle + COPY_FILE_REQUEST. + +Thu Sep 6 13:29:10 1990 James Clark (jjc at jclark) + + * ps/ps.c (flush_sbuf): Remember to add sbuf_kern when checking + whether space widths need adjusting. + + * troff/charinfo.h: Generalize translated_to_space to + special_translation so as to allow translation to \&. + * troff/input.c (translate): Allow translation to \&. + (charinfo::*): Corresponding changes. + * troff/node.c (make_node, node::add_char): Corresponding changes. + * troff/node.h (dummy_node::dummy_node): Allow optional first + argument. + + * lib/lib.h: Make codes 0200 to 0237 illegal input characters. + * troff/token.h: Remove TOKEN_TITLE. Remove token::title. Add + TOKEN_REQUEST. + * troff/input.c (token::next): Turn a TITLE_REQUEST into a + TOKEN_REQUEST with an argument of TITLE_REQUEST. + (token::process): Grok that. + * troff/input.c (copy_file): Handle first page transition like + title by pushing a COPY_FILE_REQUEST cookie. + (token::next, process_input_stack): Grok that. + * troff/node.h (output_file::copy_file): Add x and y arguments. + Make it non-pure. + * troff/div.c (top_level_diversion::copy_file): Supply them. + * troff/node.c (troff_output_file::copy_file): Add x and y + arguments; moveto specified position. Invalidate font_position + array after copying file. + (output_file::copy_file): New function. + (suppressed_output_file::copy_file, ascii_output::copy_file): + Removed. + * troff/input.c (transparent_file): New function. + (init_input_requests): Bind to "trf". + (token::next): Handle TRANSPARENT_FILE_REQUEST cookie. + (process_input_stack): Likewise. + + * troff/Makefile: Add ../lib/lib.h to GROFF_H. + + * troff/node.c (init_node_requests): New number registers .kern + pointing to global_kern_mode, and .lg pointing to + global_ligature_mode. + + * troff/node.c (ligature): Don't change it if we get a bad + integer. + + * troff/input.c (do_define_string): Don't strip tabs. + + * troff/input.c (asciify_macro): Make the string_iterator auto. + + * troff/node.c (init_font_requests): Rename to... + (init_node_requests): + * troff/node.h: Change declaration. + * troff/input.c (main): Change call. + + * troff/input.c (node::reread, diverted_space_node::reread): New + methods. + (process_input_stack): Call reread rather than + get_diverted_space_node. + * troff/node.c (node::get_diverted_space_node, + diverted_space_node::get_diverted_space_node): Removed. + * troff/node.h: Declare reread methods instead of + get_diverted_space_node methods. Make `n' member private. + * troff/input.c: (token::diverted_space): Removed. + * troff/token.h: Removed declaration. + + +Tue Sep 4 00:48:04 1990 James Clark (jjc at jclark) + + * eqn/script.c (script_box::compute_metrics): Don't let + SUP_RAISE_FORMAT become negative. + + * tbl/table.c (table::do_row): Entries that don't end in the + this row shouldn't make the row non-blank. + + * tbl/table.c (table::make_columns_equal): Only set the width of + columns which are marked as equal. + + * tbl/main.c (process_data): Before issuing excess data error, + if last character was a newline unget it; then get it again after + the error. Also include the contents of the entry in the message. + + * groff.c: New file. + * Makefile: Build groff from groff.c. Make it possible to use + either groff.sh or groff.c as groff. + * Makefile.bd: Similarily. + +Mon Sep 3 09:39:49 1990 James Clark (jjc at jclark) + + * groff.sh: Don't delay expansion of $@ in assignment to files. + Remove occurrences of \". + +Sun Sep 2 09:56:59 1990 James Clark (jjc at jclark) + + * all Makefiles: Simplify and rearrange. + + * Makefile: Handle fmod like malloc. + * lib/Makefile: Similarily. + * lib/fmod.c: Remove #ifdef NEED_FMOD. + + * Makefile: Rename OPTIMISE to OPTIMIZE. + + * groff.sh: Remove assignment to PATH. + * Makefile: Remove SHPATH variable. + * Makefile.bd: Similarily. + + * groff.sh: Add -V option to print the pipeline instead of + executing it. + +Fri Aug 31 00:56:46 1990 James Clark (jjc at jclark) + + * lib/font.c: Split off file searching into ... + * lib/fontfile.c: New file. + + * lib/strerror.c (strerror): Use `Error %d' for unknown errors. + +Thu Aug 30 13:13:55 1990 James Clark (jjc at jclark) + + * tbl/table.c (table::do_hspan): Delete assertion that e != 0. + Also change misleading comment. + (table::do_vspan): Change similarily misleading comment. + * tbl/main.c (process_data): A format row with an explicit `s' + uses up a data line, even if all the other columns are `_' or `='. + + * troff/input.c (token::description): Fix description of + TOKEN_DUMMY and TOKEN_EMPTY. + +Wed Aug 29 04:12:08 1990 James Clark (jjc at jclark) + + * groff.sh: Fix description of -Z in help message. + +Tue Aug 28 07:28:33 1990 James Clark (jjc at jclark) + + * pic/object.c (object_spec::make_object): Allow negative and zero + line thicknesses. + * pic/pic.y: Give linethick default value of -1.0. + * pic/troff.c (troff_output::troff_output): Initialize + last_line_thickness to BAD_THICKNESS. + (troff_output::finish_picture): Set thickness to BAD_THICKNESS. + (troff_output::line_thickness): Canonicalize negative thicknesses + to RELATIVE_THICKNESS. + * pic/tex.c (tex_output::set_pen_size): Silently map negative line + thicknesses to DEFAULT_PEN_SIZE. Canonicalize negative pen sizes + to -1.0. + (tex_output::start_picture): Set pen_size to -2.0. + + * ps/ps.c (ps_printer::set_line_thickness): If line_thickness is + 0, then use 0 linewidth. + (ps_printer::ps_printer): Initialize line_thickness to -1. + + * pic/troff.c (troff_output::simple_ellipse): Divide by scale. + + * ps/devps/symbolchars: Remove `or'. + * ps/tmac.ps: Implement \(or with .char. + + * ps/devps/symbolchars: Move most characters into textmap. + * ps/devps/textmap: Add names for troff bracket characters. Remove + ul, ru, br, bv. + + * ps/devps/TSymbol.ps: Removed. + * ps/devps/FontMakefile: Make S from Symbol not TSymbol. + * ps/tmac.ps: Do with .char what TSymbol did. + * ps/devps/download: Remove TSymbol. + + * ps/devps/T: Removed. + * ps/devps/Troff.ps: Removed. + * ps/devps/Troff.afm: Removed. + * ps/tmac.ps: Implement \(ru, \(ul, and \(br with .char. + * ps/devps/download: Remove Troff. + * ps/devps/FontMakefile: Remove T target. + * ps/devps/DESC-A4: Remove T from font list. + * ps/devps/DESC-letter: Likewise. + + * troff/input.c (macro_to_node): Rename to ... + (charinfo_to_node): Don't pass mac argument. Temporarily remove the + character's definition while processing it. + * troff/node.c (node::add_char, make_node): Change calls to + macro_to_node accordingly. + + * troff/input.c (token::next): Translate \_ to \(ul. + + * tty/devascii/R.proto: Add `|'. + * tty/devlatin1/R.proto: Likewise. + +Mon Aug 27 11:25:41 1990 James Clark (jjc at jclark) + + * man: Put the version number in all the man pages. + +Sun Aug 26 11:40:05 1990 James Clark (jjc at jclark) + + * Makefile.bd: New file. + * README.bd: New file. + + * VERSION: New file. + * lib/version.c: Removed. + * lib/Makefile: Create version.c from ../VERSION. Remove version.c + in clean target. + + * troff/input.c (main): Get hyphen_file from GROFF_HYPHEN + environment variable. + + * all Makefiles: Split install target into install.bin for + binaries, and install.nobin for everything else. + * Makefile: Add bindist target. + + * man/afmtodit.man: New file. + * man/Makefile: Add afmtodit.n to MAN1PAGES. + * ps/devps/Makefile: Add textmap to DEVICEFILES. Install afmtodit + in BINDIR. + * ps/Makefile: Pass BINDIR to make install in devps. + + * ps/ps.c (ps_printer::set_char): Do nothing if the character is + the space character. + + * ps/devps/FontMakefile: Rename symbol.afm to tsymbol.afm. + +Sat Aug 25 15:39:03 1990 James Clark (jjc at jclark) + + * ps/ps.c: Redo font downloading. + * ps/devps/download: New file. + * ps/devps/Makefile: Add download to DEVICEFILES. + * ps/devps/afmtodit: Remove -d option. + * ps/devps/FontMakefile: Don't use -d option with afmtodit. + * ps/devps/symbosl.ps: Add %%DocumentFonts comment. + * ps/devps/zapfdr.ps: Likewise. + * ps/devps/TSymbol.ps: Likewise. + +Fri Aug 24 20:10:30 1990 James Clark (jjc at jclark) + + * groff.sh: Initialize dev to ${GROFF_TYPESETTER:-@DEVICE@}. + +Thu Aug 23 10:03:47 1990 James Clark (jjc at yquem) + + * ps/ps.c (ps_output::include_file): If BROKEN_SPOOLER is defined, + then strip the first line if it starts with %. + * Makefile: Add a comment about this. + + * man/tfmtodit.man: New file. + * man/Makefile: Add tfmtodit.n to MAN1PAGES. + * dvi/Makefile: Install tfmtodit in BINDIR. + + * dvi/tfmtodit.c (usage): Mention -v option. + +Wed Aug 22 09:56:36 1990 James Clark (jjc at yquem) + + * troff/node.c (troff_output_file::end_of_line): Call do_motion. + * troff/node.c (troff_output_file::transparent_char): Don't call + flush_tbuf. + + * eqn: Add check_tabs method to most box classes. + * eqn/box.c (box::top_level): Call check_tabs. + + * eqn/script.c (script_box::output): Use \Z. + * eqn/limit.c (limit_box::output): Use \Z. + + * eqn/box.c (box::top_level): Use itoa. + +Tue Aug 21 09:29:28 1990 James Clark (jjc at yquem) + + * dvi/tmac.dvi: Add font translations for CR, C, TT. + * dvi/devdvi/Makefile: Don't make links to CW. + + * ps/tmac.ps: Add font translations for C, CW, CO, CX, CD, H, HO, + HX, HD. + * xditview/tmac.X: Likewise. + + * troff/node.c: Add font translation feature. + (get_font_translation): New function. + (symbol_fontno): Translate the font name. + (mount_font_no_translate): Rename to mount_font to this. + (mount_font): New function. + (font_family::make_definite): Call mount_font_no_translate instead + of mount_font. + (mount_style): Translate the font name. + (font_translate): New function. + (init_font_requests): Bind "ftr" to font_translate. + + * ps/devps/prologue (SN): New procedure that rounds a position to + the nearest (pixel + (.25,.25)). + (DL): Use SN to round endpoints. + + * lib/version.c: Changed version to 0.5. + +Sat Aug 18 04:43:21 1990 James Clark (jjc at yquem) + + * Makefile: Move definition of PAGE to the very beginning, so that + people are less likely to miss it. + +Fri Aug 17 02:15:11 1990 James Clark (jjc at yquem) + + * man/Makefile: Don't need to sed out @UPCASE_PROG_PREFIX@. + + * troff/env.c (environment::choose_breakpoint): Make `can't find + breakpoint' error a warning of type WARN_BREAK. Change message to + `can't break line'. + * troff/groff.h: Declare WARN_BREAK with code 4; change WARN_INPUT to + code 040000. + * troff/input.c: Add WARN_BREAK to warning_table. Include + WARN_BREAK in DEFAULT_WARNING_MASK. + + * tty/tmac.tty: Add definition of \(+-. + + * groff.sh: Remove `--' option to set command. + + * dvi/devdvi/texsy.map: Remove duplicate md entry. + + * ps/devps/eqnchar: Better definition of cdot using md. + * dvi/devdvi/eqnchar: Likewise. + * xditview/devX100/eqnchar: Likewise. + * xditview/devX75/eqnchar: Likewise. + * eqn/lex.c: Add definition of cdot. + +Thu Aug 16 09:33:57 1990 James Clark (jjc at yquem) + + * troff/input.c (get_optional_char): New function. + * troff/input.c (set_page_character): Use get_optional_char(), + rather than has_arg() and tok.get_char(1). + * troff/env.c (tab_character, leader_character, hyphen_char, + field_characters): Likewise. + (margin_character): Likewise. Also always delete the + margin_character_node. + + * troff/input.c (token::get_char): Use token::description. + + * troff/input.c (has_arg): Don't skip over tab and \}. + * troff/number.c (start_number): Give a warning if the number + starts with \} (WARN_RIGHT_BRACE) or tab (WARN_TAB). + +Wed Aug 15 10:04:37 1990 James Clark (jjc at yquem) + + * troff/input.c (empty_name_warning, non_empty_name_warning): New + functions. + (get_name, get_long_name): Use these. Rename `warn' argument to + `required'. + + * troff/node.c (get_fontno): Test that the symbol is not null. + + * troff/input.c (token::description): New function. + * troff/number.c (parse_term): Use token::description in `numeric + expression expected' message. + * troff/groff.h: Add WARN_MISSING. + * troff/number.c (start_number): New function. + * troff/number.c (get_vunits, get_hunits, get_number, get_integer, + get_incr_number): Use start_number(). + * troff/input.c (DEFAULT_WARNING_MASK): Enable WARN_NUMBER by + default. + * troff/input.c (get_name, get_long_name): Use WARN_MISSING. + * troff/reg.c (alter_format): Use WARN_MISSING. Also use + token::descripion. + * troff/input.c (token::get_char): Use WARN_MISSING. + * troff/input.c (token::delimiter): Use token::description. + * troff/env.c (environment_switch): Back out Aug 3 change. + * troff/input.c (has_arg): Skip over \}s and tabs but give a + warning. + * troff/token.h (token::tab): New function. + * troff/node.c (get_fontno): Use tok.skip() rather than has_arg(). + * troff/reg.c (alter_format): Likewise. + * troff/node.c (bold_font): Use has_arg() rather than tok.skip(). + +Tue Aug 14 10:11:21 1990 James Clark (jjc at yquem) + + * troff (most files): Redo warnings. Divide warnings into various + categories; warning() has an additional first argument indicating + the category it falls into. + * troff/input.c (main): -w now takes an argument. New option -W. + (enable_warning, disable_warning): New functions. + + * ps/devps/afmtodit: Add -a option to lie about the italic angle. + * ps/devps/FontMakefile: Pretend TI has an angle of 7. + +Mon Aug 13 10:11:16 1990 James Clark (jjc at yquem) + + * ps/devps/eqnchar: Better definitions of dotdot, vec, dyad, inf. + * xditview/devX100/eqnchar: Likewise. Remove definition of dot. + * xditview/devX75/eqnchar: Likewise. + * dvi/devdvi/eqnchar: Better definitions of vec, dyad, dotdot. + + * eqn/other.c: When bar or over applies to a single character + don't produce an overline_box or an underline_box. Instead produce + an accent_box or an underaccent_box, with the accent a line + whose width is accent_width. New classes underaccent_box, + overline_char_box and underline_char_box. + * eqn/box.h: Move overline_box, underline_box, accent_box class + declarations into eqn/other.c. Add declarations of + make_underline_box, make_overline_box, make_accent_box. + * eqn/eqn.y: Call make_overline_box, make_underline_box + make_accent_box instead of constructors. + * eqn/pbox.h, eqn/box.c: Add accent_width parameter. + + * eqn/other.c: Add accent_box::~accent_box. + * eqn/box.h: Declare it. + + * groff.sh: With -Tps, use eqn -D. + + * eqn/other.c (overline_box::output): Use \Z. If draw_flag use \D + rather than \l. + (underline_box::output): Similarily. + (accent_box::output): Use \Z. + + * xditview/tmac.X: Add definitions of ~ and ^ (so that they are a + bit smaller.) + +Sun Aug 12 09:41:15 1990 James Clark (jjc at yquem) + + * troff/div.c (top_level_diversion::transparent_output(unsigned + char)): Use asciify. + * troff/input.c (asciify): Don't make it static. + * troff/token.h (asciify): Declare it. + + * troff/input.c (get_name, get_long_name, token::get_char, + token::delimiter): Add an extra default argument which says + whether a warning should be printed. + * troff: Pass a non-zero argument to one of these rather than + printing a warning directly. + +Sat Aug 11 09:02:21 1990 James Clark (jjc at yquem) + + * troff: Consistently use symbol::is_null. + + * troff/dictionary.h: Move some inline functions into + dictionary.c. + + * troff/request.h: Move inline functions into input.c. + (request_or_macro::invoke): Make it pure. + + * troff/input.c, troff/reg.h: New class `constant_int_reg'. + * troff/input.c (init_input_requests): Use class constant_int_reg. + (class compatible_reg): Deleted. + * troff/div.c (init_div_requests): Use class constant_int_reg. + (class last_post_line_extra_space_reg): Deleted. + + * troff/env.c (tab_character): Don't change the tab character if + we get an invalid argument. + (hyphen_char): Similarily. + + * troff/reg.c (alter_format): Check that nm is not null. + + * Makefile, groff.sh: Make it possible to customize the commands + used for printing PostScript and dvi files. Also make it possible + to customize the path used by groff.sh. + + * eqn/eqn.y: Make `left' right associative. + +Fri Aug 10 18:20:39 1990 James Clark (jjc at yquem) + + * pic/pic.h: Added definition of M_SQRT2 for those systems that + don't have it. + + * pic/pic.h: Removed definition of INT_MAX. + + * troff/node.c (italic_corrected_node::vertical_extent): Omit + `return'. + + * troff/input.c (token::next): Handle \R like \n. + +Tue Aug 7 09:46:33 1990 James Clark (jjc at yquem) + + * ps/tmac.pc (PSPIC): Simplify. + + * troff/env.c (tab_stops::to_string): + * pic/pic.y (object_type_name): + * pic/troff.c (simple_output::line): + * pic/tex.c (tex_output::spline): + * pic/object.c (object_spec::make_object): + * tbl/main.c (process_data): Add cases to switch statements to + avoid cfront warnings. (Some of these are spurious, since the + switch already has a default case.) + + * ps/tmac.ps (PSPIC): Reformatted. Prefix all local names with + `ps-'. Don't test systat; instead check number of arguments to + ps-bb. + +Mon Aug 6 00:13:07 1990 James Clark (jjc at yquem) + + * macros/tmac.e: Do not decrease the page offset by 0.5i. + + * ps/ps.c (ps_printer::ps_printer): Use mktemp instead of tempnam. + Unlink the file as soon as we have opened it, so that we don't + have to bother with signal handlers. + (handler): Deleted. + (fatal_error_exit): Deleted. + (main): Don't call signal. + + * dvi/tfmtodit.c: Add -k option so that kerns with the skewchar + can be ignored. + * dvi/devdvi/Makefile: Use the -k option with S and MI. + + * pic/pic.y: If there is a label, or an nth construction before + the first `.' in the argument to `with', ignore it and generate a + warning. + * pic/lex.c (lex_warning): New function. + + * tbl/table.c (table::init_output): In section keep and release + macro, use 0 indent when diverting and the correct indent when + rereading. + + * troff/input.c (interpolate_number_format): Do not interpolate + anything if the number register is not defined. + + * tbl/main.c (process_data): Don't add entry when col >= ncolumns. + +Sat Aug 4 08:12:05 1990 James Clark (jjc at yquem) + + * ps/devps/prologue (PICTURE): Set components of graphics state to + their default values. + + * ps/devps/text.enc: Add trademark + * ps/devps/textmap: Add names for club, spade, heart, diamond, + carriagereturn, suchthat. Use Upsilon1 rather than Upsilon. + * ps/devps/symbolchars: Add names for summation and product. + + * dvi/devdvi/texsy.map: Add names for club, spade, heart, diamond, + suchthat. Add pp. Add upper-case letters. + + * xditview/libXdvi/DviChar.c: Add names for club, spade, heart, + diamond, carriagereturn, suchthat. Use Upsilon1 rather than + Upsilon. + + * dvi/devdvi/texsy.map: Rename lA (left angle bracket) to la, and + rA (right angle bracket) to ra. Introduce names for double-headed + arrows and double-barred arrows: <>, va, lA, rA, hA, uA, dA, vA. + * ps/devps/textmap: Likewise for ps device. + * xditview/libXdvi/DviChar.c: Likewise for X100 and X75 devices. + * tty/devascii/R.proto: Rename lA to la and rA to ra. + * tty/devascii/R.proto: Likewise. + * tty/tmac.tty: Provide definitions for \(<>, \(lA, \(rA, \(hA, + \(uA, \(dA. + * eqn/delim.c: In delim_table, rename \(lA to \(la and \(rA to \(ra. + + * xditview/tmac.X: Add definitions for \(fi \(fl \(ff \(Fi \(Fl. + + * eqn/lex.c: Added definitions of `approx', `grad' and `del' to + def_table. + +Fri Aug 3 09:59:27 1990 James Clark (jjc at yquem) + + * troff/div.c (when_request): Use symbol::is_null rather than + has_arg to determine whether we have an argument. + (change_trap): Remove the trap if we get an invalid number. Give + an error if we don't get at least the macro name. + (diversion_trap): Remove trap if we get an invalid name or number. + + * troff/env.c (environment_switch): Pop if we get an invalid + symbol or numeric expression. + + * troff/input.c (do_define_macro): If EOF is encoutered while + defining the macro, do tok.next() before returning. + + * troff/token.h (has_arg): Move definition from here, to ... + * troff/input.c (has_arg): ... here + + * troff/env.c (space_size): Do nothing if we get an invalid argument. + * troff/input.c (shift): Likewise. + + * pic/lex.c (get_token_after_dot): Accept `.center' as a synonym + for `.c'. + + * pic/troff.c (troff_output::start_picture): Comment out calls to + `..'. + + * eqn/main.c (do_file): Subtract 1 from current_lineno if + interpret_lf_args succeeds. + + * eqn/main.c (do_file): Don't recognize delimiter if preceded by + \\. This avoids problems with \$N. + + * groff.sh: Pass -C to preprocessors. + + * lib/lf.c (interpret_lf_args): Be more flexible. + + * tbl/main.c (main): Add -C option. + (table_input::get): Do not recognize TE if followed by character + other than a space or newline unless -C option given. + (process_input_file): Likewise for lf, TS. + (process_data): Likewise for lf in text blocks. + + * eqn/main.c (main): Add -C option. + (do_file): Don't recognize EQ, EN or lf if followed by character + other than space or newline unless -C option given. + * eqn/lex.c (file_input::read_line): Similarily. + * eqn/eqn.h: Declare compatible_flag. + + * etc/soelim.c (main): Add -C option. + (interpret_lf_args): Use version in libgroff. + (do_file): + + * pic/main.c (main): Add -C option, which sets compatible_flag. + (top_input::get), (top_input::peek): If -C option not given, + do not recognize .PS/.PE/.PF/.lf if followed by a character + other than space or newline. + * pic/lex.c (file_input::read_line): Similarily. + * pic/pic.h: Add declaration of compatible_flag. + +Thu Aug 2 11:11:27 1990 James Clark (jjc at yquem) + + * ps/tmac.ps (PSPIC): Avoid use of `echo -n'. + + * troff/node.c, troff/node.h: Add `asciify' methods to classes + derived from node. New class space_char_hmotion_node. + * troff/input.c (asciify_macro): New function. + * troff/input.c (init_input_requests): New request `asciify' bound + to asciify_macro. + * macros/mm.diff: New file. + * Makefile: In install.mm target use `patch' to apply + macros/mm.diff. + + * troff/input.c (macro::print_size): Just print the size in bytes. + + * troff/div.c (return_request): Correct the argument + interpretation. + +Wed Aug 1 12:38:36 1990 James Clark (jjc at yquem) + + * troff/node.h (class composite_node): Add sz member. + * troff/node.c (composite_node::size): Return sz. + * troff/input.c (macro_to_node): Use the initial size in the + environment as the size of the composite_node. + + * troff/node.c (node::zero_width_tprint): Provide a reasonable + default. + +Tue Jul 31 10:07:10 1990 James Clark (jjc at yquem) + + * troff/div.c (change_trap): If we get a bad number expression, + do nothing. + +Mon Jul 30 10:30:49 1990 James Clark (jjc at yquem) + + * lib/matherr.c (matherr): Define this only if math.h defines + TLOSS. + +Sun Jul 29 10:34:27 1990 James Clark (jjc at yquem) + + * troff/div.c (macro_diversion::distance_to_next_trap): If there + no diversion trap return vunits(INT_MAX - vresolution). + +Sat Jul 28 14:28:14 1990 James Clark (jjc at yquem) + + * troff/input.c (do_zero_width): New implementation that doesn't + use a temporary environment. Use instead: + (token::add_to_node_list): New function. + * troff/env.c (environment::get_prev_char_height), + (environment::get_prev_char_height), + (environment::get_prev_char_skew): New functions. + (environment::get_prev_char): New function. + (environment::get_prev_char_width): Change to use get_prev_char. + (init_env_request): Implement new registers .cht, .cdp, .csk. + * eqn/sqrt.c (sqrt_box::output): Don't rely upon the argument to + \Z being processed in a separate environment. + +Fri Jul 27 10:21:25 1990 James Clark (jjc at yquem) + + * tbl/table.c: Removed TABLE_BOTTOM_REG. + + * tbl/table.c (table::init_output): In the section release macro, + give a warning message if the section won't fit on one page. + + * tbl/table.c (table::do_top): Emit table keep only if table is + boxed. + (table::do_bottom): Likewise for table release. + (table::table), (table::add_vertical_rule): Remove reference to + keep member. + * tbl/table.h: Remove keep member. + + * tbl/table.c: New register SUPPRESS_BOTTOM_REG. In + SECTION_RELEASE_MACRO, if there's not enough space before the next + trap to output the diversion, call T# ourselves, set + SUPPRESS_BOTTOM_REG to 1, spring the trap, then set + SUPPRESS_BOTTOM_REG back to 0. In T#, do nothing if + SUPPRESS_BOTTOM_REG is non-zero. In T#, always mark the current + vertical position and return to it before turning traps on again. + +Thu Jul 26 02:54:32 1990 James Clark (jjc at yquem) + + * troff/node.c, troff/node.h: In classes derived from node, + replace prev_char_width method by last_char_node method. + * troff/env.c (environment::get_prev_char_width): Use + node::last_char_node rather than node::get_prev_char_width. + + * Makefile: Added comment about -fno-inline on 68030-based + Apollos. + + * troff/reg.c (number_format_to_ascii), eqn/delim.c (DELIM_TABLE_SIZE), + tty/tty.c (tty_font::load_tty_font), dvi/tfmtodit.c (main): Cast + expressions using sizeof to int. + * dvi/dvi.c (dvi_font::handle_x_command): Avoid long->int warnings. + + * macros/tmac.e (TS): Don't move @f back past the current + position. + +Wed Jul 25 09:11:08 1990 James Clark (jjc at yquem) + + * ps/ps.c (main): Buffer stderr. + * dvi/dvi.c (main): Likewise. + * tty/tty.c (main): Likewise. + + * ps/ps.c (ps_printer::do_import): Improve error handling. + + * troff/input.c (abort_request): Use asciify. + + * driver/printer.h (printer::draw), driver/printer.c (printer::draw), + ps/ps.c (ps_printer::draw), dvi/dvi.c (dvi_printer::draw): Make + type of first argument int rather than char. This works around a + bug on the 68030 based Apollo using g++ 1.37.1. + + * tbl/table.h (class table): Add `keep' member. + * tbl/table.c (table::table): Initialize `keep'. + (table::add_vertical_rule): Set `keep' to 1. + (table::do_top): Only emit table keep macro is `keep' is non-zero. + (table::do_bottom): Likewise for table release macro. + (table::do_row): Emit section keep macro even if the row is 0. + +Tue Jul 24 08:35:07 1990 James Clark (jjc at yquem) + + * macros/tmac.e (@C): Preserve the font family across the change + in environments. + +Mon Jul 23 10:15:23 1990 James Clark (jjc at yquem) + + * lib/font.c: Initialize font::hor and font::vert to 1. + (font::load_desc): Check the values of font::hor and font::vert. + + * lib/lib.h: Added definition of INT_DIGITS. Fix it so that it can + be included in a C compilation. + (iftoa): Use INT_DIGITS. Include lib.h. + (itoa): Likewise. + (as_string): Likewise. + * tbl/table.c: Removed definition of INT_DIGITS. + * eqn/box.c (box::top_level): Use INT_DIGITS + 1 instead of 12. + * troff/input.c (input_input_requests): Likewise. + * ps/ps.c (make_encoding_name): Likewise. + (ps_printer::set_style): Likewise. + (ps_output::put_number): Use 1 + INT_DIGITS + 1 instead of 12. + + * tty/devascii/R.proto: Map fm onto '. + * tty/devlatin1/R.proto: Likewise. + +Sat Jul 21 12:45:07 1990 James Clark (jjc at yquem) + + * tbl/table.c: Use ' instead of DELIMITER_CHAR in places where the + argument to \w is at a different input level. + + * tbl/table.c (table::init_output): Define a new macro + REPEATED_VPT_MACRO, like vpt but if in a diversion also + transparently outputs itself. + (table::define_bottom_macro): Use REPEATED_VPT_MACRO instead of + vpt. + (table::do_row): Likewise. + + * tbl/table.c (vertical_rule::print): Prefix the .sp -1 line with + TRANSPARENT_STRING_NAME. + + * tbl/table.c (table::init_output): In the table release macro + print an error message and don't produce any output if after + issuing the need request the table still will not fit. Also + remove the diversion after bringing it back. + + * tbl/table.c (table::init_output): Define a new macro + REPEATED_MARK_MACRO, like mk but if in a diversion also + transparently outputs itself. + (table::do_row): Mark row_top_reg using REPEATED_MARK_MACRO. This + is necessary because .TH might not call .T#. + (table::do_top): Likewise TOP_REG. + (table::define_bottom_macro): If TOP_REG is no longer valid, use + #T - DOUBLE_LINE_SEP rather than #T. This is necessary because the + table header might contain just the two top rules. + +Fri Jul 20 10:51:42 1990 James Clark (jjc at yquem) + + * troff/div.c: Implement new request `ptr' to print all traps. + + * troff/env.c (init_env_requests): Implement `.tabs' reg with + init_string_env_reg. + * troff/env.c (class tab_reg): Deleted. + +Thu Jul 19 12:07:16 1990 James Clark (jjc at yquem) + + * troff/div.c: New number register .pn returns the number of the + next page as set by the pn request. + + * macros/tmac.an: Redid headers and footers. Number each manual + entry starting from 1 unless \nC is > 0, like Sun. Added an + optional 5th argument to .TH which specifies the manual name and + appears in the center of the header. Understand the X, P and D + registers like Sun. + +Wed Jul 18 10:23:31 1990 James Clark (jjc at yquem) + + * troff/env.c (init_env_requests): New number register `.lt' to + return the title length. + + * troff/node.h (class transparent_dummy_node): New class. + * troff/node.c (class transparent_dummy_node): Provide member + functions. + * troff/env.c (interrupt): Add a transparent_dummy_node, rather + than a dummy_node. + + * troff/input.c (token::next): New escape sequence \). + * troff/input.c (get_copy): Recognize \) in copy mode. + + * troff/input.c (input_stack::clear): New function. + * troff/input.c (exit_request): Use input_stack::clear. + + * troff/token.h: Removed TOKEN_NO_PRINT_CHAR. + * troff/input.c (token::process): Removed case TOKEN_NO_PRINT_CHAR. + + * troff/env.c: Move set_page_character to input.c. Move + page_character to input.c also. + * troff/env.c (title): Split off the reading of the parts of the + title into read_title_parts. + * troff/input.c (read_title_parts): New function. Check the + input_level when testing whether a token matches the delimiter. + + * troff/input.c (exit_request): New function. + * troff/input.c (init_input_requests): Bind ex request to + exit_request rather than exit_groff. + + * troff/input.c (exit_groff): Call tok.next() before + process_input_stack(). + +Mon Jul 16 09:47:23 1990 James Clark (jjc at yquem) + + * troff/env.c: ifdef widow control support on WIDOW_CONTROL. + * troff/env.h: ditto. + * troff/input.c: ditto. + + * troff/env.c (environment::is_empty): Test pending_lines. + + * troff/env.c (environment::have_pending_lines): Removed. + + * troff/input.c: Add request to flush pending lines from the + environment. + + * troff/env.c, troff/env.h: Add automatic widow control feature. + + * troff/input.c (exit_groff): Do process_input_stack() after + do_break() but before setting exit_flag to 2. + + * troff/input.c: Remove FLUSH_PENDING_LINES and + TOKEN_FLUSH_PENDING_LINES. Instead, flush pending lines from + environment after END_TRAP token seen, but only if there aren't + any more traps still unfinished. + * troff/token.h: Remove TOKEN_FLUSH_PENDING_LINES. + +Sun Jul 15 10:50:08 1990 James Clark (jjc at yquem) + + * troff/env.c: Rename the `retain_size' member of class + pending_output_line to `no_fill'. + + * troff/env.c (title): When the line is output, make the + retain_size argument !fill. + + * troff/node.h: Add `hyphenated' member to struct breakpoint. + * troff/node.c (space_node::get_breakpoints), + (dbreak_node::get_breakpoints): Fill this in. + * troff/env.c: Allow specification of maximum number of + consecutive hyphenated lines. + + * troff/env.c (environment::is_empty): Add test for !current_tab. + +Sat Jul 14 11:23:01 1990 James Clark (jjc at yquem) + + * troff/env.c (environment::hyphenate_line): Don't completely give + up if the word is not to be hyphenated; continue so that breaks + can be made at break_char_node's. + + * lib/lib.h: Only define INT_MAX if it's not already defined; + undef INT_MIN if it's already defined. + + * Makefile: Make it easy to define CFRONT_ANSI_BUG. + + * lib/lib.h: If CFRONT_ANSI_BUG is defined, cast INT_MIN to long. + This works around a bug in AT&T C++ 2.0 used with an ANSI C + compiler. + + * macros/tmac.an (an-header): Set no-space mode. + + * macros/tmac.an (TH): Start a new page if necessary. + + * Started using ChangeLog at version 0.4. + +Local Variables: +version-control: never +coding: latin-1 +End: diff --git a/ChangeLog.116 b/ChangeLog.116 new file mode 100644 index 00000000..ddbf22c2 --- /dev/null +++ b/ChangeLog.116 @@ -0,0 +1,1388 @@ + +Version 1.16.1 released +======================= + +2000-07-31 Werner LEMBERG <wl@gnu.org> + + Preparing release 1.16.1. + + * REVISION: Revision number set to 1. + * MORE.STUFF: Added info about port to DOS. + * NEWS, win32-diffs: Updated. + + * src/include/nonposix.h: Remove first line -- this file is used + in C also. + + * Makefile.in (dist): Delete Imakefile earlier to avoid a soft + link to it. + +2000-07-30 Werner LEMBERG <wl@gnu.org> + + * doc/texinfo.tex: Update to latest version. + +2000-06-28 Paul Eggert <eggert@twinsun.com> + + * Makefile.in (ENVSETUP): Don't assume POSIX make semantics for + commands that fail. Don't assume that "export a=b" is valid shell + syntax. This is needed for Solaris 2.5.1. + + * src/libs/libgroff/tmpfile.cc, src/utils/indxbib/indxbib.cc: Fix + comment about missing Solaris headers. + + * PROBLEMS: Add section about problems with Sun Make and VPATH. + +2000-06-25 Werner LEMBERG <wl@gnu.org> + + * src/devics/grodvi/dvi.cc: Replace _setmode() (for MSC) with + SET_BINARY(). + + * src/include/posix.h: Use HAVE_UNISTD instead of _MSC_VER. + + * win32-diffs: Updated. + * README.WIN32: Added CRs to make all Windows editors happy. + + * src/roff/troff/node.cc: Added WIFSIGNALED() macro (copied from + src/roff/groff/pipeline.c). + +2000-06-23 Eli Zaretskii <eliz@is.elta.co.il> + + * src/roff/grog/Makefile.sub (grog): Prepend `-e' to + $(SH_SCRIPT_SED_CMD), for the case where its value is empty. + +2000-06-17 Eli Zaretskii <eliz@is.elta.co.il> + + * src/utils/tfmtodit/tfmtodit.cc: #include nonposix.h. + (tfm::load, gf::load): Open tfm and gf files in binary mode: these + are binary files. + (main): Support non-Posix systems with several different styles of + slash characters in file names. + + * src/utils/pfbtops/pfbtops.c: #include nonposix.h. + (main) [SET_BINARY]: Switch stdin into binary mode. + + * src/utils/indxbib/indxbib.cc: #include nonposix.h. + (main): Support file names with several possible slash-type + characters, as given by DIR_SEPS[] in nonposix.h. + (main) [__MSDOS__]: If renaming the temporary index file fails + because it has more than one dot in its trunk, replace the dot + with an underscore and try again. + (do_file): Use FOPEN_RB instead of "r". Skip every CR before a + Newline. + [__MSDOS__ || _MSC_VER]: Stop at the first ^Z character. + + * src/utils/hpftodit/hpftodit.cc: #include nonposix.h. + (File::File): Open the input file in binary mode. Strip CR + characters from each CR-LF pair. + (xbasename): Support file names with several possible slash-type + characters, as given by DIR_SEPS[] in nonposix.h. + + * src/include/Makefile.sub (HDRS): Add nonposix.h. + + * src/roff/troff/node.cc [HAVE_UNISTD_H]: Include <unistd.h>. + (WIFEXITED, WEXITSTATUS, WTERMSIG, WIFSTOPPED, WSTOPSIG) + [!_POSIX_VERSION]: Define for traditional Unix systems. + (real_output_file::real_output_file): Remove the MSVC-specific + call to popen, use instead POPEN_WT, appropriately defined on + nonposix.h. #include nonposix.h. + (real_output_file::~real_output_file): Remove the MSVC-specific + call to pclose, a suitable macro is now defined on nonposix.h. + Use the portable macros WIFEXITED, WIFSIGNALED, WTERMSIG, WSTOPSIG + and WEXITSTATUS instead of assuming traditional Unix + interpretation of the status returned by pclose. + + * src/roff/troff/input.cc (pipe_source): Remove the MSVC-specific + call to popen, use POPEN_RT instead (appropriately defined on + nonposix.h). #include nonposix.h. + (ps_bbox_request): Open the PostScript file in binary mode. + Close the file after processing it. + (getpid) [_MSC_VER]: Remove; a suitable macro is now defined on + nonposix.h. + + * src/roff/groff/pipeline.c (run_pipeline) [__MSDOS__ || _WIN32]: + A version of run_pipeline that doesn't use `fork'. + (signal_catcher) [__MSDOS__ || _WIN32]: New function. + (system_shell_name, system_shell_dash_c) + (is_system_shell) [__MSDOS__ || _WIN32]: New functions, to hide + the ugliness of testing DOS/Windows file names for equality, and + support both stock shells and ports of Unix shells. + + * src/roff/groff/groff.cc: #include nonposix.h. + (BSHELL): Definition moved to nonposix.h. + (main): Use PATH_SEP[0] instead of literal ':'. Use BSHELL_DASH_C + instead of a literal "-c". + (xbasename): Support file names with several possible slash-type + characters, as given by DIR_SEPS[] in nonposix.h. + (possible_command::print): Use BSHELL_DASH_C and IS_BSHELL instead + of literal strings. + + * src/preproc/soelim/soelim.cc: #include nonposix.h. + (do_file): Use IS_ABSOLUTE instead of testing for a literal '/'. + + * src/preproc/pic/Makefile.sub (YTABH): Change pic.tab.h to + pic_tab.h. + + * src/preproc/pic/lex.cc: Change pic.tab.h to pic_tab.h. + + * src/preproc/eqn/Makefile.sub (YTABH): Rename eqn.tab.h to + eqn_tab.h. + + * src/preproc/eqn/lex.cc: #include eqn_tab.h, not eqn.tab.h. + + * src/libs/libgroff/tmpfile.cc (DEFAULT_TMPDIR) [P_tmpdir]: If + P_tmpdir is defined, use it instead of the literal "/tmp". + (remove_tmp_files, add_tmp_file): New functions. + (xtmpfile): Record temporary files and register an atexit function + to delete them explicitly, instead of relying on the OS to do + that, which doesn't work on non-Unix systems. + + * src/libs/libgroff/searchpath.cc: #include nonposix.h. + (search_path::search_path): Use PATH_SEP instead of a literal + colon. + (search_path::command_line_dir): Ditto. + (search_path::open_file): Use IS_ABSOLUTE, PATH_SEP and DIR_SEPS, + to support non-Posix systems. + + * src/libs/libbib/search.cc: #include nonposix.h. + (search_list::add_file): Open the file in binary mode. + + * src/libs/libbib/linear.cc: #include nonposix.h. + (file_buffer::load): Remove \r characters preceding \n from the + loaded buffer. + + * src/libs/libbib/index.cc: #include nonposix.h. + (make_index_search_item): Open index_filename in O_BINARY mode. + (index_search_item_iterator::get_tag): Ditto. Remove \r + characters before \n characters. + (index_search_item::check_files): Open files in binary mode. + (index_search_item::munge_filename): Support DOS-style file names + with backslashes and drive letters, use IS_ABSOLUTE. + + * src/devices/grops/ps.cc: #include nonposix.h. + (main) [SET_BINARY]: Switch stdout to binary mode. + + * src/devices/grolj4/lj4.cc: #include nonposix.h. + (main) [SET_BINARY]: Switch stdout to binary mode. + + * src/devices/grolbp/lbp.cc: #include nonposix.h + (fill_pattern) [SET_BINARY]: Switch stdout to binary mode. + + * src/devices/grodvi/dvi.cc: #include nonposix.h. + [_MSC_VER]: Remove inclusion of Windows-specific headers (done by + nonposix.h). + (main) [SET_BINARY]: Switch stdout to binary mode. + [_MSC_VER]: Remove an explicit call to _setmode. + + * src/include/nonposix.h: New file. + + * Makefile.in (ENVSETUP): New variable, to set up case-sensitive + operation when building with DJGPP. + ($(TARGETS), dot, $(LIBDIRS), $(CPROGDIRS), $(CCPROGDIRS)) + ($(DEVDIRS), $(TTYDEVDIRS), $(INCDIRS), $(OTHERDIRS)): Use + ENVSETUP. + + * Makefile.comm: mv y.tab.[ch] to y_tab.[ch], to make it work on + MS-DOS. + (.man.n): Replace `;' with `|', since FONTPATH, MACROPATH, + etc. can include a semi-colon on DOS/Windows. + (depend.temp): Use depend1.temp instead of depend.temp1, to + prevent files from overerwiting each other on 8+3 filesystems. + + * gendef.sh (t): Change definition to work with DOS/Windows. + + doc/groff.texinfo: Apart of some typo corrections, I also changed + some index entris, to make them more non-ambiguous, and also put + @ignore around some parts that are not yet written, to allow the + Info output be readable. + +2000-06-10 Gael Queri <gqueri@mail.dotcom.fr> + + Replaced specific checks for function declarations with a generic + routine taken from GNU bfd. + + * aclocal.m4 (GROFF_NEED_DECLARATION): New function. + GROFF_PUTENV, GROFF_POPEN, GROFF_PCLOSE, GROFF_HYPOT: Removed. + * configure.in: Use it. + * src/devices/grolbp/lbp.cc, src/include/lib.h, + src/preproc/grn/hgraph.cc, src/preproc/pic/pic.h, + src/roff/groff/groff.cc: Use it. + * Makefile.in, configure: Updated. + +2000-06-07 Paco Andrés Verdú <pandres@dragonet.es> + + * src/devides/grolbp/lbp.h: Removed unused variables. + +2000-05-31 Keith Thompson <kst@sdsc.edu> + + * src/devices/grolbp/lbp.cc (set_papersizes): Add declaration of + strncasecmp(). + +2000-05-31 Werner LEMBERG <wl@gnu.org> + + * aclocal.m4 (GROFF_SRAND): New function to test the return value + of srand() -- at least SunOS 4.1.3 uses `int' instead of `void'. + * configure.in: Use it. + * src/preproc/pic/pic.y, src/preproc/pic/pic.cc: Use it. + * configure, Makefile.in: Updated. + + * configure.in: Add test for strncasecmp(). + * src/include/lib.h: Use it. + +2000-05-29 Andrej Borsenkow <Andrej.Borsenkow@mow.siemens.ru> + + * src/preproc/grn/Makefile.sub: Add MLIB. + +2000-05-29 Nix <nix@esperi.demon.co.uk> + + * Makefile.in: Use @datadir@ and @mandir@ appropriately. + +2000-05-29 Werner LEMBERG <wl@gnu.org> + + * src/roff/grog/Makefile.sub, src/roff/grog/grog.sh: Add `@g@'. + + * PROBLEMS: Small update. + + * src/devices/grolbp/lbp.cc: Various small fixes. + +2000-05-28 Keith Thompson <kst@sdsc.edu> + + * src/roff/nroff/nroff.sh: Fix main loop syntax. + + * src/utils/indxbib/indxbib.cc: Add declaration of mkstemp(). + +2000-05-25 Werner LEMBERG <wl@gnu.org> + + * man/roff.man: Removed unused macro. + +2000-05-24 Werner LEMBERG <wl@gnu.org> + + * Makefile.in (dist): Remove src/xditview/Imakefile explicitly. + This is needed e.g. if you do + `make distclean; ./configure; make dist'. + +Version 1.16 released +===================== + +2000-05-23 Werner LEMBERG <wl@gnu.org> + + Adding font CWI (constant width italic) to devdvi. + + * font/devdvi/CWI: New file. + * font/devdvi/generate/Makefile: Add generating rule. + * font/devdvi/DESC.in, font/devdvi/Makefile.sub, win32-diffs, + tmac/tmac.dvi: Use it. + * NEWS: Announce it. + + * font/devlj4/*: Regenerated (only adding kernings for `cq' glyph). + * font/devlj4/generate/Makefile: Cosmetic changes only. + + * man/groff.man: Removed most of the redundant description of + special characters (which is in groff_char.man). Added font + translation CB->CR for devdvi. Other minor fixes. + + * tmac/tmac.dvi: Improved appearance of \(co (copyright) and \(rg + (registered) symbols. + +2000-05-22 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile: Added rule for creating info files. + + * font/devdvi/*: Added kernings for `cq' glyph. Updated to latest + AMS font metrics. + * font/devdvi/generate/Makefile: Fixed dependencies. + + * font/devps/*: Regenerated. Heavy changes for Bookman and + NewCentury Schoolbook! + * font/devps/generate/afmname: Will now run with GNU awk. + * font/devps/generate/textmap: Added forgotten `cq' glyph name. + * font/devps/generate/Makefile: Cosmetic changes only. + +2000-05-21 Werner LEMBERG <wl@gnu.org> + + * tmac/tmac.an: Added a new command line option `-rSxx' (`xx' can be + 10, 11, or 12) to support output with 11pt and 12pt base font sizes. + `.SS' now produces a heading with a smaller size than `.SH'. + Completely formatted. + * doc/groff.texinfo, tmac/groff_man.man, NEWS: Document it. + + * man/groff.man: Improved table appearance. Use of `eo' request + to reduce number of doubled backslashes in macro definitions. + Replacing `\e' with `\(rs'. Other minor fixes. + + * src/preproc/tbl/main.cc: Insert HTML table end tag before `lf' + to have correct line number. + + * INSTALL: Small improvement. + +2000-05-20 Bernd Warken <bwarken@mayn.de> + + * man/roff.man, tmac/groff_tmac.man: Updates (with corrections by + WL). + +2000-05-19 Bernd Warken <bwarken@mayn.de> + + * man/groff.man: Complete update (with a lot of corrections by WL). + +2000-05-18 Werner LEMBERG <wl@gnu.org> + + Adding `cq' (PS name `quoteright') glyph name as an alias for "'". + + * font/*/*: Implement it. + * man/groff_char.man, NEWS: Document it. + + * src/include/unix.h: Removed. It isn't used. + + * doc/groff.texinfo: Slight improvements. + +2000-05-17 Werner LEMBERG <wl@gnu.org> + + * README, win32-diffs: Small fixes and improvements. + +2000-05-16 Werner LEMBERG <wl@gnu.org> + + * FDL: New file (the Free Documentation License version 1.1). + + * doc/groff.texinfo: Added many start-up values for gtroff. + Some structural improvements of the source code. + +2000-05-15 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc: Added small comment about troffrc-end. + * src/roff/troff/troff.man: Added info about troffrc-end. + +2000-05-14 Werner LEMBERG <wl@gnu.org> + + * Makefile.in (EXTRADIRS): Fix typos. + (dist): Handle deletion of old .tar.gz file correctly. + (DISTDIRS): Include all tty output devices. + + * doc/groff.texinfo: Adding more cross references; countless other + fixes. + +2000-05-13 Werner LEMBERG <wl@gnu.org> + + * MORE.STUFF: Added Robert Marks's utilities. + +2000-05-12 Werner LEMBERG <wl@gnu.org> + + Added win32 port contributed by Blake McBride + <blake@florida-software.com>. + + * README.WIN32, win32-diffs: New files. + * NEWS: Updated. + + * src/preproc/grn/hgraph.cc (HGSetBrush): Replace `%lf' with `%f'. + (tmove, tmove2): Added parentheses to avoid compiler warnings. + (change): Removed unused variables. + + * src/preproc/grn/main.cc (main, conv): Removed unused variables. + (savebounds): Changed return value from `int' to `void'. + * src/preproc/grn/hdb.cc: Ditto. + + * src/devices/grolbp/lbp.cc (lbp_printer::draw): Removed superfluous + final backslash in comment to avoid compiler warning. + + * src/utils/pfbtops/pfbtops.c: Added `getopt.h'. + + * doc/groff.texinfo: More fixes. + +2000-05-11 OKAZAKI Tetsurou <okazaki@be.to> + + * tmac/tmac.doc: Documentation fix. + +2000-05-11 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Reading the source code shows up a lot of + omissions and incorrect data... More conversion to @Deffn macros. + +2000-05-10 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/reg.cc (number_value_to_ascii): Remove ASCII + dependency. + + * src/roff/troff/request.h: Removing unused `no_break_flag'. + +2000-05-09 Werner LEMBERG <wl@gnu.org> + + * man/groff.man, man/roff.man, tmac/groff_tmac.man: Minor + improvements. + + * doc/groff.texinfo: Extended history section. More conversion to + @Deffn macros. More .tr documentation. + +2000-05-07 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Completed tab section. Added info about + fields. + +2000-05-06 Mike MacIsaac <mikemac@us.ibm.com> + + * PROBLEMS: Describe configure script fix for OS/390 Unix. + +2000-05-05 Werner LEMBERG <wl@gnu.org> + + * font/devdvi/DESC.in: Change size 11pt to 10.95pt (as used in + LaTeX 2e). + * NEWS: Document it. + + * man/troff.man: Minor optical improvements. + +2000-05-03 Werner LEMBERG <wl@gnu.org> + + Adding `dq' (PS name `quotedbl') glyph name as an alias for `"'. + + * font/*/*: Implement it. + * man/groff_char.man, NEWS: Document it. + +2000-05-02 Werner LEMBERG <wl@gnu.org> + + * tmac/groff_tmac.man, man/groff.man, man/roff.man: Fixing @MANxEXT@ + expansion. + * NEWS: Document the three new man pages. + + * aclocal.m4 (GROFF_CXX_CHECK): Removing obsolete AC_C_CROSS call. + * configure: Updated. + + * font/devcp1047/R.proto: Fixing fatal bug (a missing `"' character). + +2000-05-01 Werner LEMBERG <wl@gnu.org> + + Added grap support to grog. + + * src/roff/grog/grog.sh, src/roff/grog/grog.pl: Implement it. + * src/roff/grog/grog.man: Document it. + + * doc/groff.texinfo, NEWS: Add info about grap support. + + Add new man pages comptributed by Bernd Warken <bwarken@mayn.de> + (with slight fixes by me). + + * tmac/groff_tmac.man: New file documenting tmac mechanism. + * tmac/Makefile.sub: Add groff_tmac.man. + * man/roff.man: New file giving overview of roff system. + * man/troff.man: A short reference of troff. + * man/Makefile.sub: Add roff.man and troff.man. + +2000-04-30 Werner LEMBERG <wl@gnu.org> + + Added grap support to groff. + + * src/roff/groff/groff.cc: Implement it. + * src/roff/groff/groff.man: Document it. + + * src/devices/grotty/grotty.man: Add cp1047 device. + * src/preproc/eqn/eqn.man, src/preproc/eqn/neqn.sh, tmac/eqnrc: + Ditto. + * src/roff/groff/groff.man: Ditto. + * src/roff/nroff/nroff.sh, src/roff/nroff/nroff.man: Ditto. + * doc/groff.texinfo: Ditto. + + * tmac/troffrc: Fix mapping of latin-1 char 160 (non-breakable space) + for cp1047. + +2000-04-29 Werner LEMBERG <wl@gnu.org> + + * man/groff_char.man: Add `pc' glyph. + * tmac/tmac.latin1: Replacing `md' glyph with `pc'. + * tmac/tmac.tty: Add `pc' glyph. + * tmac/tmac.tty-char: Use/add `pc' glyph. Don't call tmac.latin1 if + we use cp1047 output device. + + * Makefile.in, aclocal.m4: Don't build utf8 on EBCDIC hosts since + there are still hardcoded latin1->unicode values in utf8's font + definition files. + * configure: Updated. + * NEWS: Minor clarification. Updated. + + * PROBLEMS: Formatted. Added info about C++ fix pack for OS/390 + Unix. + +2000-04-28 Werner LEMBERG <wl@gnu.org> + + Adding EBCDIC code page 1047. + + * font/devcp1047/R.proto, font/devcp1047/Makefile.sub, + font/devcp1047/DESC.proto: New files. + + * aclocal.m4 (GROFF_EBCDIC): Introduce TTYDEVDIRS which can be + either ascii/latin1 or cp1047. + * Makefile.in: Use it. + * configure: Updated. + + Replacing and/or adding `md' (mathdot) glyph with `pc' + (periodcentered) in all text fonts. + + * font/*/*: Change it. + +2000-04-27 Werner LEMBERG <wl@gnu.org> + + * aclocal.m4 (GROFF_OS390): Fixing compiler flags. + + * configure.in: Add check for strings.h. + * src/include/driver.h: Use HAVE_STRINGS_H. + * src/devices/grolbp/lpb.cc: Remove string.h. + + * src/include/groff-getopt.h: New file. It will be used instead of + getopt.h (to be included in lib.h) to avoid endless problems with + picky C++ compilers. + * src/include/lib.h: Use groff-getopt.h. + * src/include/Makefile.sub: Updated. + + * configure: Updated. + * Makefile.in: Updated. + + * NEWS: Mention EBCDIC support. + +2000-04-26 Werner LEMBERG <wl@gnu.org> + + * TODO: Some additions. + +2000-04-25 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/troff.man, doc/groff.texinfo: Fixing documentation + of mso request. + +2000-04-23 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/troff.man: Minor fixes. + +2000-04-22 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/troff.man, doc/groff.texinfo, NEWS: Document the + `.T' string register and the incompatible definition of the `.T' + number register (compared to Unix troff). + + * man/groff_char.man: Add some missing characters. + * font/devutf8/NOTES: Update. + +2000-04-21 Werner LEMBERG <wl@gnu.org> + + * src/include/htmlindicate.h, src/include/lib.h, + src/include/posix.h: Fix copyright. + + * src/include/Makefile.sub: Update. + +2000-04-20 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (input_char_description): Removing + superfluous space char. + + * tmac/tmac.X: Fix typo \(bq -> \(Bq. + + * doc/groff.texinfo: Document EBCDIC. + +2000-04-19 Werner LEMBERG <wl@gnu.org> + + Introducing `shc' as the glyph name for the soft hyphen character. + + * tmac/tmac.tty, tmac/tmac.latin1, tmac/tmac.html, + font/devlatin1/R.proto: Use it. + + * NEWS: Updated. + +2000-04-18 Werner LEMBERG <wl@gnu.org> + + * src/devices/grops/ps.cc (ps_printer::flush_sbuf): Removing + dependency on ASCII order. + +2000-04-16 Sandor BARANY <S.Barany@infosys.tuwien.ac.at> + + * src/libs/libgroff/illegal.c: Added EBCDIC table. + * src/roff/troff/input.cc: Added adaptation to EBCDIC. + + * src/preproc/refer/refer.cc, src/roff/troff/env.cc: Minor changes + to increase portability. + +2000-04-15 Werner LEMBERG <wl@gnu.org> + + * aclocal.m4: Added GROFF_EBCDIC and GROFF_OS390 tests. + Redefined AC_OUTPUT_MAKE_DEFS to replace ASCII character `012' with + the generic `\n' if under OS/390 Unix. + + * configure.in: Call GROFF_EBCDIC and GROFF_OS390. + + * configure: Regenerated. + +2000-04-14 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: More conversions to @Deffn. + +2000-04-12 Werner LEMBERG <wl@gnu.org> + + * tmac/tmac.psfig: Fix incorrect use of `&' operator by replacing it + with `:'. + + * src/roff/nroff/nroff.man: Add note about tmac.tty-char. + +2000-04-10 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: More conversions to @Deffn. + +2000-04-08 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/{getopt.c,getopt1.c}, src/include/getopt.h: + Updated to latest version (glibc 2.1.3). + +2000-04-07 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile (clean): Include more index files. + Add rule texinfo->dvi. + +2000-04-05 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Added new index `op' for operators. More + info on end of sentence characters. More use of @Deffn. + +2000-03-30 Werner LEMBERG <wl@gnu.org> + + * */*.man: Adding a note that a whitespace can be inserted between + a command line option and its parameter -- we are using GNU getopt. + + * src/roff/groff/groff.man: Add example of `-m mandoc'. + +2000-03-28 Werner LEMBERG <wl@gnu.org> + + Correct anachronism of calling the man macro file with `-man' + instead of `-m man' etc. + + * tmac/tmac.man, tmac/tmac.mandoc, tmac/tmac.markup, tmac/tmac.mdoc, + tmac/tmac.me, tmac/tmac.ms: New files tmac.m<package> which simply + load tmac.<package>. + + * tmac/Makefile.sub: Updated. Take care of $(tmac_an_prefix) etc. + + * NEWS: Updated. + + * doc/groff.texinfo: Updated. + + * tmac/groff_man.man: Copyright added. + +2000-03-27 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Introducing macros `Deffn' and `Defmac' to + typeset the request resp. escape name with a tt font -- due to a + bug in texinfo.tex it is necessary to use the `-e' switch with + texi2dvi. + + Improving info about usage of groff units. + + Other minor fixes. + +2000-03-20 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Added section about man macro package + (I've basically taken groff_man.man). Introducing new indices `ma' + for macros/strings and `gl' for glyph names. Other minor fixes. + + * tmac/groff_man.man: Fixed some typos. + +2000-03-19 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Removed all occurrences of `you', `we', etc. + Other minor fixes. + + * doc/texinfo.tex: New file. + +2000-03-18 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Improved section on number registers. Other + minor updates. + +2000-03-16 Werner LEMBERG <wl@gnu.org> + + * src/roff/groff/groff.man: Added info about grolbp. Make nicer + synopsis. + + * src/devices/grolbp/grolbp.man, src/roff/nroff/nroff.man, + src/devices/grolj4/grlj4.man, src/devices/grops/grops.man, + src/preproc/eqn/eqn.man, src/utils/afmtodit/afmtodit.man, + src/utils/tfmtodit/tfmtodit.man: Make nicer synopsis. + + * src/preproc/grn/grn.man: Better synopsis; added copyright. + + * src/roff/grog/grog.man: Updated copyright date. + +2000-03-14 Francisco Andrés Verdú <pandres@dragonet.es> + + * configure.in: Added test for strdup. + + * src/devices/grolbp/lbp.cc: Added a strdup() version in case none + is available. + + Replaced dynamic allocation of arrays `[...]' with `new' operator. + + Other minor fixes. + +2000-03-12 OKAZAKI Tetsurou <okazaki@be.to> + + * Makefile.comm: Add $(INCLUDES) to $(ALL_CFLAGS). + +2000-03-11 Werner LEMBERG <wl@gnu.org> + + * src/preproc/grn/hdb.cc (DBGetType): Added return value to make + compilers silent. + * src/preproc/grn/hgraph.cc: Add #ifdef for hypot(). + * src/include/lib.h: Remove some spaces. + +2000-03-10 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/tmpfile.cc (xtmptemplate, xtmpfile): Removing + initializers from arguments (some compilers don't like this). + +2000-03-09 Gaius Mulley <gaius@glam.ac.uk> + + * src/libs/libgroff/htmlindicate.cc: Added library file which is now + used by pic and eqn to tell grohtml where the graphic regions start + and end. + * src/libs/libgroff/Makefile.sub: Use it. + * src/preproc/eqn/main.cc, src/preproc/pic/troff.cc: Altered to use + graphic_start() and graphic_end() from htmlindicate.cc. + +2000-03-09 Werner LEMBERG <wl@gnu.org> + + * tmac/tmac.safer: Will now work correctly in compatibility mode. + * tmac/groff_man.man: More fixes. + +2000-03-08 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile: Added texput.log to the `clean' target. + * doc/groff.texinfo: Added info about delimiters for escapes. + +2000-03-08 Bernd Warken <bwarken@mayn.de> + + * src/preproc/pic/pic.man: Add info on conversion of pic images to + other graphic formats. + +2000-03-07 OKAZAKI Tetsurou <okazaki@be.to> + + * Makefile.in, Makefile.sub, src/preproc/eqn/Makefile.sub, + src/roff/groff/Makefile.sub, src/roff/nroff/Makefile.sub, + src/utils/afmtodit/Makefile.sub: Use $(INSTALL_SCRIPT) for script + files. + +2000-03-07 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Spelling fixes. + +2000-03-06 Werner LEMBERG <wl@gnu.org> + + * tmac/groff_man.man: Completely revised to cover everything in + tmac.an. + + * doc/groff.texinfo, src/roff/troff/troff.man: Document evc request. + Other minor fixings. + * src/roff/troff/env.cc (environment_copy): Improve error message and + fix itoa->i_to_a. + * src/roff/troff/TODO: Updated. + + * doc/Makefile: Bug fixes -- this is still provisional, though... + + * tmac/eqnrc: Small fixes. + +2000-03-05 Abramo Bagnara <abramo@alsa-project.org> + + Adding a request `evc' to copy environments. + + * src/roff/troff/env.cc (environment::copy, environment_copy): + Implement it. + * src/roff/troff/env.h: Add prototype. + +2000-03-05 Francisco Andrés Verdú <pandres@dragonet.es> + + Adding strsep() -- Solaris 8 doesn't have it. + + * configure.in: Test it. + * src/devices/grolbp/lbp.cc: Add code. + +2000-03-05 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/div.cc (macro_diversion::output, + top_level_diversion::output): Fixing an incompatibility with + original troff: \x'0' updates the .a register also. Thanks to + <Andries.Brouwer@cwi.nl> for pointing this out. + * doc/groff.texinfo: Document it. + + * Makefile.in: Create Makefile.dep if necessary before calling the + submake process to avoid warning about nonexistent file. + + * NEWS, PROJECTS: Updated. + +2000-03-04 Werner LEMBERG <wl@gnu.org> + + * tmac/troffrc: Add tmac.lbp. + +2000-03-03 Francisco Andrés Verdú <pandres@dragonet.es> + + * tmac/tmac.lbp: New file. + * src/devices/grolbp/grolbp.man: Add documentation of `lbpname' + command. + +2000-03-03 Werner LEMBERG <wl@gnu.org> + + * Makefile.in: Fixing $(subdir). + + * README, NEWS: Small fixes. + + * test-groff: Adding path to grolbp. + + * configure.in: The (new) file src/xditview/Imakefile.in will be + also configured -- it is now possible to build gxditview in a + directory different from $srcdir. + +2000-03-02 Blake McBride <blake@florida-software.com> + + * src/libs/libgroff/searchpath.cc (open_file): Adapting to WinNT. + + * MORE.STUFF: Added website of bell labs and info about plot2dev. + +2000-03-01 Colin Phipps <crp22@cam.ac.uk> + + * src/utils/indxbib/indxbib.cc (main): Use mkstemp() for temporary + files. + +2000-02-29 Werner LEMBERG <wl@gnu.org> + + Adding GNU getopt to the groff distribution. + + * src/include/getopt.h, src/libs/libgroff/{getopt.c,getopt1.c}: + New files. + * src/include/Makefile.sub, src/libs/libgroff/Makefile.sub: Update. + * aclocal.a4: Remove GROFF_GETOPT function. + * configure.in, Makefile.in, PROBLEMS: Update. + * src/include/lib.h: Replace getopt tests with getopt.h. + * src/devices/grolbp/lpb.cc: Remove inclusion of getopt.h. + + * doc/groff.texinfo: Further checking/updating. Adding more index + entries. + + * man/groff_out.man: Fix nroff mode activation (for emacs). + * man/groff_font.man: Add missing ligature. + +2000-02-28 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Further checking/updating. Adding more index + entries. + + * src/devices/grolbp/grolbp.man: Added a comment line at the + beginning of the file (similar to shell scripts) which indicates + that `tbl' should be used as a preprocessor. + +2000-02-27 Blake McBride <blake@florida-software.com> + + Adapting groff to MS Visual C++ 6.0 compiler (tested with + Windows NT 4.0). Uses _MSC_VER define where necessary. + + * src/devices/grodvi/dvi.cc: Making stdout a binary stream. + * src/devices/grolj4/lj4.cc: Making getopt variables `extern "C"'. + * src/devices/grohtml/html.cc, src/devices/grops/ps.cc, + src/include/lib.h, src/libs/libgroff/errarg.cc, + src/libs/libgroff/itoa.c, src/libs/libgroff/nametoindex.cc, + src/preproc/refer/label.y, src/preproc/refer/label.cc, + src/roff/groff/pipeline.c, src/roff/troff/column.cc, + src/roff/troff/div.cc, src/roff/troff/env.cc, + src/roff/troff/input.cc, src/roff/troff/node.cc, + src/roff/troff/reg.cc: Renaming itoa() to i_to_a() and iftoa() to + if_to_a() to avoid name clashes. + * src/include/posix.h: Don't use unistd.h. + * src/libs/libgroff/tmpfile.cc: Use `#ifndef...#else...#endif' + clause for integrating non-Unix xtmpfile() code. + * src/roff/troff/input.cc: Adding `public' keyword to macro_header + structure; use "rt" for popen() in pipe_source(); add getpid() + dummy function. + * src/roff/troff/node.cc: Use special versions of popen() in + real_output_file() and pclose() in ~real_output_file(). + +2000-02-27 Werner LEMBERG <wl@gnu.org> + + Adding a new driver, grolbp, for Canon CAPSL printers (LBP-4 and + LBP-8 series laser printers). This code has been contributed by + Francisco Andrés Verdú <pandres@dragonet.es>. + + * src/devices/grolbp/*: The grolbp output device. + * font/devlpb/*: The font description files. + * Makefile.in: Add grolpb and devlbp subdirectories. + + * src/devices/grodvi/grodvi.man, src/devices/grolj4/grolj4.man, + src/devices/grotty/grotty.man,src/roff/troff/troff.man: Minor + typographic fixes. + + * doc/groff.texinfo: Further checking/updating. Adding more index + entries. + + * NEWS: Updated. + + * src/devices/grolbp/Makefile.sub: Adding $(srcdir). + + * man/groff_font.man: Adding info about obsolete DESC keywords. + * src/devices/grolj4/grolj4.man: Documenting additional DESC + keywords. + +2000-02-26 Werner LEMBERG <wl@gnu.org> + + * src/preproc/grn/grn.man: Added info about the gremlin file format + (contributed by Daniel Senderowicz <daniel@synchrods.com>). + +2000-02-25 Werner LEMBERG <wl@gnu.org> + + * src/preproc/grn/main.cc: Allow values of `narrow' parameter and + friends to be non-integer. + + * src/preproc/grn/grn.man: Document it. + + * doc/groff.texinfo: Further checking/updating. Adding more index + entries. + +2000-02-24 Werner LEMBERG <wl@gnu.org> + + * src/preproc/grn/main.cc: Introduce BASE_THICKNESS, defining + line thicknesses to be integer multiples of this value. + + * src/preproc/grn/grn.man: Commenting out the -s option -- the + corresponding code doesn't work (yet). + + * doc/groff.texinfo: Further checking/updating. Adding more index + entries. + +2000-02-23 Werner LEMBERG <wl@gnu.org> + + * src/preproc/grn/{main.cc, hgraph.cc}: Using point units to + specify line thickness instead of base units. The new default + values are now 0.15,pt 0.45pt, and 0.75pt for thin, middle, and + thick lines respectively. + + Removed unused variable `prevval'. + + * src/preproc/grn/grn.man: Updated. + +2000-02-22 Werner LEMBERG <wl@gnu.org> + + * src/preproc/grn/main.cc: Slight formatting. + + * src/roff/groff/groff.man: Formatting fix. + * src/preproc/grn/grn.man: Ditto. + + * src/roff/grog/grog.pl: Fixing two embarassing bugs. + + * doc/groff.texinfo: Further checking/updating. + +2000-02-21 Werner LEMBERG <wl@gnu.org> + + * README, INSTALL, PROJECT, PROBLEMS, BUGREPORT: Updated. + + * test-groff: Added grn subdir to path. + + * doc/groff.texinfo: Some restructing and other small improvements. + + * src/roff/groff/groff.cc (help): Fixed info string. + +2000-02-20 Werner LEMBERG <wl@gnu.org> + + * doc/meref.me: Fix description of .GS request. + + * src/roff/troff/troff.man: Fixing typo. + + Adding the `grn' preprocessor for gremlin graphic files. + + * src/preproc/grn/*: This is the Berkeley distribution written by + David Slattengren and Barry Roitblat, adapted to groff by Daniel + Senderowicz and Werner Lemberg. + + * doc/grnexampl.{me,g}: A sample for grn. + + * Makefile.in: Added subdirectory entry for grn. + + * src/roff/groff/groff.cc: Added support for grn. It can be now + called with the switch `-g'. + + * src/roff/groff/groff.man: Updated. + + * src/roff/grog/grog.{man,pl,sh}: Updated. + + * NEWS: Updated. + +2000-02-11 Gaius Mulley <gaius@glam.ac.uk> + + * src/include/lib.h: Added xtmptemplate and made xtmpfile + parametrically polymorphic. + + * src/libs/libgroff/tmpfile.cc: Implemented xtmptemplate + and the alterations to xtmpfile. + xtmpfile can be requested to return the filename created + and asked not to unlink the temp file. The default behaviour + if parameters are absent is exactly the same as before. + +2000-02-11 Abramo Bagnara <abramo@alsa-project.org> + + A new request `length' is available which returns the length of a + string in a number register: + + * src/roff/troff/input.cc (length_macro): Implement it. + * src/roff/troff/input.cc (init_input_requests): Register it. + +2000-02-11 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo, src/roff/troff/troff.man: Add documentation + of the `substring' request. + + * src/roff/troff/troff.man, doc/groff.texinfo: Document `length' + request. + + * src/roff/troff/TODO, NEWS: Updated. + +2000-02-09 Werner LEMBERG <wl@gnu.org> + + * src/roff/groff/groff.man: Added an example. + +2000-02-06 Werner LEMBERG <wl@gnu.org> + + I've considerably modified the directory structure of the + distribution to get a more vertical layout. For example, the number + of top level directories has been reduced from 42 to 6. + + As a consequence, many changes, especially to the makefiles, were + necessary: + + * The makefile variables `top_builddir' and `top_srcdir' have been + introduced. Virtually all relative paths have been replaced with + absolute ones using these two variables. + + * Dependencies (in the files `Makefile.dep') are no longer part of + the distribution. Instead, they are created during a `make install' + in the build directory. + + * aclocal.m4 (GROFF_SRCDIR, GROFF_BUILDDIR): Two new functions to + make `top_srcdir' and `top_builddir' absolute. + + Some other changes: + + * Man pages now depend on the files `VERSION' and `REVISION'. + + * The added shell script `mkinstalldirs' will replace `mkdir' in + almost all cases. + + * VERSION: Version number increased to 1.16. + +2000-02-04 Werner LEMBERG <wl@gnu.org> + + * grops/psrm.cc (read_one_of): Fixed pointer incrementation. + + * Makefile.in: Removed $(tmac_m) since it is no longer needed + (after an update of the mm stuff). + + * troff/Makefile.sub (majorminor.cc): Fix dependencies. + +2000-02-03 Werner LEMBERG <wl@gnu.org> + + The .psbb request will now also accept Mac PS images (i.e. using LF + as the EOL character). + + * troff/input.cc (ps_get_line): New function, taken from psrm.cc + (with slight modifications). + * troff/input.cc (do_ps_file): Use it. + + * test-groff: Add grohtml and grolj4 output devices to PATH. + +2000-01-30 Werner LEMBERG <wl@gnu.org> + + * NEWS, MORE.STUFF: Updated. + +2000-01-30 Cary D. Renzema <caryr@dollar.mxim.com> + + Add the `srand' command to pic. + + * pic/lex.cc, pic/pic.y: Implement it. + * pic/pic.man: Document it. + * pic/pic.cc, pic/pic.tab.h: Regenerated (with yacc). + +2000-01-30 Werner LEMBERG <wl@gnu.org> + + Add a new request `.psbb'. This does exactly what the external + program psbb did. It scans a PostScript image file for a + %%BoundingBox comment and extracts the bounding box values (in + PostScript units) which are then stored in the four new (read-only) + number registers `llx', `lly', `urx', and `ury'. + + This will allow the usage of the .PSPIC macro without worrying + about unsafe behaviour of groff, i.e., it will work without the + `-U' switch of groff. + + * troff/input.cc: Implement it. + * tmac/tmac.pspic: Use it. + * troff/troff.man, grops/grops.man, NEWS: Document it. + * psbb/*, Makefile.in: Remove it since it is no longer needed. + + This is bloody C code simply adapted from psbb.c! Any improvements + welcome. + +2000-01-29 Werner LEMBERG <wl@gnu.org> + + * man/groff_font.man: Minor clarifications. + + * NEWS: Updated. + +2000-01-28 Werner LEMBERG <wl@gnu.org> + + * afmtodit/afmtodit.pl: Use new `--' comment delimiter. + +2000-01-28 Gaius Mulley <gaius@glam.ac.uk> + + * man/groff_font.man: Brought up to date regarding tcommand + extensions. + * libgroff/font.cc: Handle everything after `--' as a comment + in the font files. + * devps/*: Added comment delimiter inside devps font files. + +2000-01-28 Werner LEMBERG <wl@gnu.org> + + * tmac/tmac.arkup, tmac/groff_markup.man: Replace \fC...\fR with + \fC...\fP (which now works as expected). + + * troff/troff.man: Fix typo. + +2000-01-27 Gaius Mulley <gaius@glam.ac.uk> + + Completed the pass_filenames implementation in troff. + + * libdriver/input.cc: Will read the new `F' tcommand. + * troff/node.cc, troff/node.h: Will issue the new `F' tcommand. + * troff/input.cc: Use it. + +2000-01-26 Werner LEMBERG <wl@gnu.org> + + * troff/env.cc (set_font): Fix the behaviour of \fP. The previous + font will now be updated even if an invalid font is selected. + +2000-01-24 Werner LEMBERG <wl@gnu.org> + + * doc/homepage.ms: Updated for new tmac.arkup. + + * tmac/tmac.html: Disable line breaks after hyphen-like characters. + + * tmac/tmac.arkup: Cleanup. + + Added `\&' to .HTML macro to `leave vertical mode', so to say. + + Removed obsolete .LINK macro completely. + + The macros .URL, .FTP, and .MAILTO now accept a third argument which + will be immediately appended to the second argument (to be used with + punctuation, for example). + + Disabled .CDFTP macro temporarily for security reasons. + + * tmac/groff_markup.man: Complete revision for latest changes in + tmac.arkup -- note that it does not yet format correctly with + grohtml :-( + +2000-01-23 Bruno Haible <haible@clisp.cons.org> + + * nroff/nroff.sh: Accept -Tutf8 option and pass it through. + * devutf8/R.proto: Add mappings for wp, lh, rh. + * devutf8/NOTES: Updated. + +2000-01-23 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Updated version/copyright info. + +2000-01-21 Gaius Mulley <gaius@glam.ac.uk> + + Added support for two new directives in device descriptions: + `pass_filenames' (to pass the input file name to the output device) + and `use_charnames_in_special' (to support e.g. accented characters + in the `X' request). + + * include/font.h, troff/charinfo.h: Declare it. + + * libgroff/font.cc, libgroff/fontfile.cc: Set it. + + * devhtml/DESC: Use it. + + * troff/input.cc: New function encoded_char. + + * troff/token.h: Add test for `specialness'. + +2000-01-21 Werner LEMBERG <wl@gnu.org> + + * tmac/Makefile.sub: tmac.a4 and tmac.trace have been removed by + mistake from the list of files to be installed. + +2000-01-18 Werner LEMBERG <wl@gnu.org> + + * README: Added info how to apply patches. + +2000-01-15 Jan Echternach <echter@informatik.uni-rostock.de> + + * troff/node.cc (ligature_note::operator delete): Fix g++ warning. + +2000-01-15 Gaius Mulley <gaius@glam.ac.uk> + + * troff/input.cc: Add support for troffrc-end. + + * tbl/main.cc: Altered to issue table-start and table-end special + characters if using the html device. + + * devhtml/*: Modified font files to incorporate html encoding of + characters. + + * tmac/groff_markup.man: New file documenting tmac.arkup. + + * tmac/troffrc-end: New file. This is invoked after all user + specified macros. Currently used by the html device to include + tmac.html. Thus no need for users to specify -mhtml anymore. + + * tmac/Makefile.sub (NORMALFILES): Add troffrc-end. + (MAN7): Add groff_markup.man. + + * tmac/tmac.an, tmac/tmac.html: Small html updates. + + * tmac/troffrc: tmac.arkup will now be called for the html device. + + * libgroff/font.cc, libgroff/font.h: Altered to include reading of + extra device specific information about fonts. + + * doc/homepage.ms: New file. It is an example how an HTML home page + could look like with grohtml. + + * doc/Makefile: Add homepage.ms. Remove rule for pic.html. + +2000-01-12 Bruno Haible <haible@clisp.cons.org> + + * devutf8/R.proto: Add mappings for ti, Fn, st, an. Change mappings + of Im, Re. + + * devutf8/NOTES: Updated. + +2000-01-08 Bruno Haible <haible@clisp.cons.org> + + * eqn/box.cc, eqn/lex.cc, eqn/other.cc, eqn/over.cc, eqn/special.cc, + eqn/text.cc, grodvi/dvi.cc, grops/ps.cc, grops/psrm.cc, + libbib/index.cc, libbib/linear.cc, libbib/search.cc, + libdriver/printer.cc, libgroff/font.cc, libgroff/string.cc, + pic/lex.cc, pic/object.cc, refer/label.y, refer/ref.cc, tbl/main.cc, + tbl/table.cc, tfmtodit/tfmtodit.cc, troff/dictionary.cc, + troff/div.cc, troff/env.cc, troff/input.cc, troff/node.cc, + troff/node.h, troff/reg.cc: Avoid most "g++ -Wall -Wno-sign-compare" + warnings. + + * troff/node.cc (bracket_node::copy): Initialize last to NULL. + +2000-01-12 Fabrizio Polacco <fab@prosa.it> + + grolj4: Paper size will be searched case-insensitively. + + * include/lib.h: Add check for strcasecmp(). + * grolj4/li4.cc (lookup_paper_size): Use strcasecmp(). + * configure.in: Check for strcasecmp(). + +2000-01-11 Werner LEMBERG <wl@gnu.org> + + * troff/Makefile.sub (majorminor.cc): Fix incorrect path to + `REVISION'. + +2000-01-10 Werner LEMBERG <wl@gnu.org> + + * Makefile.comm, Makefile.in, doc/Makefile: More fixes for the + revision scheme. + + Add a new read-only register, `.Y', which contains the groff + revision. + + * troff/input.cc (init_input_requests): Define it. + * troff/Makefile.sub (majorminor.cc): Define `revision' string. + * doc/groff.texinfo, troff/troff.man: Document it. + + * libgroff/Makefile.sub (version.cc): Add definition of + `Version_string[]', consisting of `<major>.<minor>.<revision>' + * eqn/main.cc, grodvi/dvi.cc, grolj4/lj4.cc, grops/ps.cc, + grotty/tty.cc, hpftodit/hpftodit.cc, indxbib/indxbib.cc, pic/main.cc, + refer/refer.cc, soelim/soelim.cc, tbl/main.cc, tfmtodit/tfmtodit.cc, + troff/input.cc, pfbtops/pfbtops.c: Use it. + +2000-01-10 Fabrizio Polacco <fab@prosa.it> + + Add a revision scheme to the groff package. + + * REVISION: New file. + * libgroff/Makefile.sub (version.cc): Use it to define + `revision_string[]'. + * grops/psrm.cc: Use revision_string (converted to an unsigned + integer) in constructor of resource_manager. + +2000-01-10 Bruno Haible <haible@clisp.cons.org> + + * devutf8/Makefile.sub, devutf8/DESC.proto, devutf8/R.proto: New + files. + * Makefile.in (DEVDIRS): Add devutf8. + * grotty/tty.cc: Include device.h. + (glyph): Change type of `code' to `unsigned int'. + (tty_printer): New field is_utf8. Constructor takes device argument. + (tty_printer::tty_printer): If device if `utf8', set is_utf8. + (tty_printer::add_char): Change type of first arg to `unsigned int'. + (tty_printer::put_char): New function. + (tty_printer::end_page): Use put_char() instead of ::putchar(). + (make_printer): Pass device to tty_printer constructor. + * nroff.sh: Determine default device by calling 'locale'. As a + fallback, look at all of $LC_ALL, $LC_CTYPE, $LANG, $LESSCHARSET. + Recognize UTF-8 locales. + * tmac/eqnrc: Recognize utf8 like latin1. + * tmac/troffrc: Device utf8 needs tmac.tty. + +2000-01-07 Werner LEMBERG <wl@gnu.org> + + * tmac/Makefile.sub: tmac.a4 and tmac.trace will now be installed. + +2000-01-07 Paul Eggert <eggert@twinsun.com> + + Add a new predefined writeable number register, `year', + which contains the current year. + + * doc/groff.texinfo, PROBLEMS, troff/troff.man: Document it. + * tmac/tmac.s: Use it. + * troff/input.cc (init_registers): Initialize it. + +2000-01-06 Werner LEMBERG <wl@gnu.org> + + * PROBLEMS: Fixed typo. + +2000-01-04 Paul Eggert <eggert@twinsun.com> + + * PROBLEMS: Add Y2k advice for the yr number register. + +2000-01-03 Paul Eggert <eggert@twinsun.com> + + * doc/groff.texinfo: Fix Y2k bug in documentation of \n(yr. + +2000-01-02 Werner LEMBERG <wl@gnu.org> + + * tmac/tmac.arkup: Slight modification of macros to provide better + appearance for non-HTML formats. + +2000-01-01 Charles Levert <charles@comm.polymtl.ca> + + * soelim/soelim.cc (include_path_append): realloc(NULL, n) + does not automatically translate to malloc(n) on all OSes + (e.g., SunOS) so do it explicitly. Also, check the returned + value. + +2000-01-01 Werner LEMBERG <wl@gnu.org> + + * tmac/tmac.arkup: Added .LINE macro. Some formatting. + + * Makefile.in: Added $(tmac_m) again since the Makefile in `mm' + expects this variable + +2000-01-01 Gaius Mulley <gaius@glam.ac.uk> + + * doc/Makefile: Added instructions to create HTML and text + versions of some files. + +1999-12-31 Werner LEMBERG <wl@gnu.org> + + * Updated INSTALL.gen. + + * tmac/tmac.arkup: Added fixes so that .FTP and .MAILTO works + better resp. correctly with non-HTML devices. + +Local Variables: +version-control: never +coding: latin-1 +End: diff --git a/ChangeLog.117 b/ChangeLog.117 new file mode 100644 index 00000000..609eaa75 --- /dev/null +++ b/ChangeLog.117 @@ -0,0 +1,2190 @@ + +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/groohtml/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. + +Local Variables: +version-control: never +coding: latin-1 +End: diff --git a/ChangeLog.118 b/ChangeLog.118 new file mode 100644 index 00000000..172a57f0 --- /dev/null +++ b/ChangeLog.118 @@ -0,0 +1,3794 @@ + +Version 1.18.1 released +======================= + +2002-10-08 Werner LEMBERG <wl@gnu.org> + + * doc/webpage.ms, NEWS: Updated. + +2002-10-07 Werner LEMBERG <wl@gnu.org> + + * tmac/doc-common (Ss): Add final `.ns' (similar to `.Sh') to + suppress additional whitespace after the header. + + * tmac/doc-ditroff, tmac/doc-nroff (Am): New string to be in sync + with NetBSD. + + * src/preproc/grn/grn.man, tmac/groff_mdoc.man, NEWS: Updated. + +2002-10-07 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc-common(doc-volume-operating-system-ateol): New flag. + (Dt): Use it to improve language localization (especially Russian + and French). + +2002-10-07 Daniel Senderowicz <daniel@synchrods.com> + + * src/preproc/grn/gprint.h (BSPLINE, BEZIER): New macros. + * src/preproc/grn/hdb.cc (DBGetType): Parse spline and bezier + drawing commands. + * src/preproc/grn/hgraph.cc (drawwig): Add parameter to control + curve type. + Call `picurve' for BSPLINE. + (HGPrintElt): Handle BSPLINE. + * src/preproc/grn/README: Document it. + +2002-10-03 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/node.cc (break_char_node::col): New variable. + Updated constructor. + (space_node::tprint, word_space_node::tprint): Call `fill_color' + unconditionally. + (space_node::space_node): Remove assertion. + (break_char_node::add_self): Pass color argument to space node. + * src/roff/troff/input.cc (token::add_to_node_list, token::process): + Ditto. + * src/roff/troff/env.cc (environment::do_break, + environment::add_padding): Ditto. + +2002-10-02 Werner LEMBERG <wl@gnu.org> + + Redesigning color support in troff. Colors are no longer + represented as separate nodes but are now part of glyph nodes and + friends. This fixes the current formatting misbehaviour due to the + changes introduced on 2002-09-20. Some extra code is necessary for + proper grotty support: Without adding color variables to + space-related nodes, the background color would be changed too late. + + * src/roff/troff/node.h, src/roff/troff/node.cc: + s/current_pagecolor/current_fill_color/. + s/current_glyphcolor/current_glyph_color/. + (glyph_color_node, fill_color_node): Removed. + (node::get_glyph_color, node::get_fill_color): New virtual member + functions. + (space_node::col): New variable. + Updated constructors of space_node and derived classes accordingly. + (hmotion_node::col): New variable. + Updated constructors of hmotion_node and space_char_hmotion_node + accordingly. + (vmotion_node::col): New variable. + Updated constructor accordingly. + (draw_node::gcol, draw_node::fcol): New variables. + Updated constructor accordingly. + (special_node::gcol, special_node::fcol): New variables. + Updated constructors accordingly. + (troff_output_file::put_char, troff_output_file::put_charwidth, + troff_output_file::draw): Set glyph and fill color. + (troff_output_file::start_special): Set glyph and fill color. + Always set current font. + (troff_output_file::fill_color, troff_output_file::glyph_color): + Don't call `do_motion'. + (glyph_node::gcol, glyph_node::fcol): New variables. + Updated constructors of glyph_node and ligature_node accordingly. + (glyph_node::get_glyph_color, glyph_node::get_fill_color): New + member functions. + (glyph_node::merge_glyph_node, + kern_pair_node::add_discretionary_hyphen, + node::add_discretionary_hyphen): Updated. + (break_char_node::merge_self): Updated. + (word_space_node::tprint, space_node::tprint, hmotion_node::tprint, + vmotion_node::tprint): Handle color. + (make_glyph_node, make_node, node::add_char): Updated. + + * src/roff/troff/env.cc (environment::space_newline, + environment::space, environment::output_line, environment::do_break, + environment::make_tab_node, environment::add_padding, title): + Updated. + (environment_switch, environment_copy): Don't add color nodes. + + * src/roff/troff/input.cc (do_glyph_color, do_fill_color): Return + nothing. + (token::next): Updated. + \m and \M now are as transparent as \s. + (process_input_stack, token::add_to_node_list, token::process, + read_draw_node): Updated. + (charinfo_to_node_list): Don't add color nodes. + + * doc/groff.texinfo: Updated. + +2002-09-27 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc-common (ds-operating-system-FreeBSD-4.*): New version + strings. + +2002-09-27 Colin Watson <cjwatson@debian.org> + + * src/roff/troff/node.cc (bracket_node::copy): Check `list' != 0. + +2002-09-23 Werner LEMBERG <wl@gnu.org> + + * src/devices/grolbp/lbp.cc: Replace `300' with `font::res' where + appropriate. + (DEFAULT_LINEWIDTH_FACTOR): New macro. + (linewidth_factor): New global variable. + (lbp_printer::set_line_thickness): Fix case for size < 0, using + linewidth_factor. + (long_options): Add -w/--linewidth option. + (usage): Updated. + (main): Handle -w option to set linewidth_factor. + (lbp_printer::lbp_printer): Initialize req_linethickness, not + line_thickness. + + * src/devices/grolbp/grolbp.man, NEWS, doc/webpage.ms: Updated. + +2002-09-22 Paco Andrés Verdú <pandres@dragonet.es> + + Fixed a bug in the line thickness setting code. + + * src/devices/grolbp/lbp.cc (lbp_printer::req_linethickness): New + variable. + (lbp_printer::set_line_thickness): Pass environment as second + parameter. + Implement it actually. + (lpb_printer::set_char, lbp_printer::draw): Use `req_linethickness' + and `set_line_thickness, depending on the current font size. + +2002-09-21 Werner LEMBERG <wl@gnu.org> + + Some Debian patches. + + * src/roff/groff/pipeline.h (MAX_COMMANDS): Increase to 12. + * src/roff/troff/node.cc (bracket_node::copy): Initialize + `list->last'. + +2002-09-20 Werner LEMBERG <wl@gnu.org> + + * configure: Regenerated with autoconf 2.54. + +2002-09-20 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/env.h (environment): Rename cur_glyph_color to + glyph_color. + Rename cur_fill_color to fill_color. + * src/roff/troff/env.cc: Updated. + +2002-09-20 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/env.cc (title): Copy color status after processing + title. + * src/roff/troff/input.cc (charinfo_to_node_list): Emit glyph and + fill color nodes to reset colors properly. + + * tmac/www.tmac (DC): Fix color handling. + + * src/preproc/pic/pic.man, doc/pic.ms: Document some color issues. + * doc/groff.texinfo: Fixing documentation of `tl' request. + * doc/webpage.ms: Updated. + +2002-09-19 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/env.cc (environent_switch, environment_copy): + Emit glyph and fill color nodes to initialize colors properly. + +2002-09-17 Colin Watson <cjwatson@debian.org> + + * src/roff/troff/env.cc (environment::set_glyph_color, + environment::set_fill_color): Fix typo which prevented \m[] work + correctly. + +2002-09-17 Werner LEMBERG <wl@gnu.org> + + Add left and right italic correction to non-slanted PS fonts. This + is an experimental feature to improve image rendering of grohtml. + + * font/devps/generate/Makefile (RFLAG): New variable, set to `-i 0'. + ({T,H,C,P,N,BM,A,HN}{R,B}, ZD, S, ZDR): Use it. + * font/devps/*: All non-slanted fonts regenerated. + * NEWS: Updated. + +2002-09-16 Werner LEMBERG <wl@gnu.org> + + Add a site-specific font directory. + + * Makefile.in (localfontdir, legacyfontdir): New variables. + (fontpath): Use them. + (MDEFINES, uninstall_dirs): Updated. + * Makefile.comm (.man.n): Add `LOCALFONTDIR' and `LEGACYFONTDIR'. + Remove `FONTPATH' and `MACROPATH'. + + * src/roff/troff/troff.man, NEWS: Updated. + * doc/groff.texinfo (Font Directories): New section. + Other minor fixes. + + * src/devices/grodvi/grodvi.man, src/devices/grohtml/grohtml.man, + src/devices/grolbp/grolbp.man, src/devices/grolj4/grolj4.man, + src/preproc/grn/grn.man: Minor fixes. + + * src/devices/grohtml/post-html.cc (html_printer::do_tab_ts): + Remove unused variable. + +2002-09-11 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo, man/groff_font.man: Clarify argument of \N. + * man/groff_out.man: Fix documentation of 'N'. + +2002-09-09 Gaius Mulley <gaius@glam.ac.uk> + + * doc/Makefile.in (webpage.html): Depend on gnu.eps also. + * src/roff/troff/env.cc (indent): Emit html tag only if break_flag is + set. + * src/devices/grohtml/post-html.cc (text_glob::is_br_ni): Removed. + (text_glob::is_br, html_printer::lookahead_for_tables): Updated. + (html_printer::do_tab_ts): Call `emit_table_header' with `FALSE'. + * src/devices/grohtml/html-text.cc (html_text::start_tag) <P_TAG, + PRE_TAG>: Call `begin' with `FALSE'. + +2002-09-09 Ralph Corderoy <ralph@inputplus.demon.co.uk> + + * src/libs/libgroff/string.cc (string::extract): Fix position of + terminating null byte. + +2002-09-08 Werner LEMBERG <wl@gnu.org> + + Add global option `nospaces' to tbl so that leading and trailing + spaces in data items are ignored. + + * src/libs/libgroff/string.cc (string::remove_spaces): New member + function to remove leading and trailing spaces. + * src/include/stringclass.h: Updated. + + * src/preproc/tbl/table.h (table): Add flag `NOSPACES'. + + * src/preproc/tbl/main.cc (process_options): Handle `nospaces' + option. + Fix typo in error messages. + (process_data): Implement `nospaces' option. + * src/preproc/tbl/tbl.man, NEWS, doc/webpage.ms: Updated. + +2002-09-07 Werner LEMBERG <wl@gnu.org> + + * src/include/config.hin: Add `HAVE_ISATTY'. + * src/libs/libgroff/tmpfile.cc (xtmpfile_list): Drop `const' for + `fname' member. + * src/libs/libgroff/tmpname.cc: Include `time.h'. + * src/libs/libdriver/input.cc (Char): Add `operator==' and + `operator!=' for `char'. + * doc/groff.texinfo: Replace @ifnottex block for top node with + @ifhtml block. + +2002-09-06 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile.in (.texinfo.html): Add -I switch. + * doc/groff.texinfo: Add @ifnottex block for top node to make + translation to HTML work. + +2002-09-05 Gaius Mulley <gaius@glam.ac.uk> + + * src/preproc/html/pre-html.cc (LETTER_LENGTH): Removed. + (get_papersize, determine_vertical_offset): Removed. + (char_buffer::do_image): Always specify letter size. + (main): Updated. + (imageList::createPage): Use -dDEVICEHEIGHTPOINTS instead of + -sPAPERSIZE. + +2002-09-05 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo, tmac/groff_man.man: Improve documentation of + default indentation. + +2002-09-04 Gaius Mulley <gaius@glam.ac.uk> + + * src/preproc/html/pre-html.cc (imageList::createPage): Use + -sPAPERSIZE for gs. + (generateImages): Clean up push-back buffer. + +2002-09-04 Ralph Corderoy <ralph@inputplus.demon.co.uk> + + * doc/groff.texinfo: Minor fixes. + +2002-08-21 Gaius Mulley <gaius@glam.ac.uk> + + * src/preproc/html/pre-html.cc (DEFAULT_LINE_LENGTH): New macro. + (MAX_WIDTH, A4_LENGTH, A4_OFFSET, LETTER_OFFSET): Removed. + (gsPaper): Removed. + (determine_vertical_offset): Use LETTER_LENGTH. + (createPage): Moved to ... + (imageList::createPage): This. + Call gs with -dDEVICEWIDTHPOINTS to avoid cropping. + (imageList::getMaxX): New function. + (createImage): Moved to ... + (imageList::createImage): This. + (imageList::createImages): New function. + (generateImages): Read `maxx' directly. + Updated. + (scanArguments): Don't specify `gsPaper' for `-o'. + (makeTempFiles): Call `xtmpfile' with the last argument set to + `TRUE'. + +2002-08-24 Werner LEMBERG <wl@gnu.org> + + * src/include/nonposix.h (mkdir, WAIT, creat) [_MSC_VER]: Define. + (WAIT, _WAIT_CHILD) [!_MSC_VER]: Define. + * src/preproc/html/pre-html.cc (waitForChild): Use WAIT. + * src/preproc/html/pushback.cc: Include nonposix.h. + * src/roff/groff/pipeline.c: Define strcasecmp and strncasecmp + conditionally. + +2002-08-23 Werner LEMBERG <wl@gnu.org> + + Use $(OBJEXT) for the object file extension. + + * Makefile.comm (.SUFFIXES): Add .obj. + (.cc.obj, .c.obj): New implicit rules. + * Makefile.in (OBJEXT): New variable, initialized from autoconf. + (MDEFINES): Add EXEEXT and OBJEXT. + * */Makefile.sub: s/.o/.$(OBJEXT)/. + +2002-08-22 Werner LEMBERG <wl@gnu.org> + + * INSTALL: Mention texinfo 4.2 as a prerequisite. + +2002-08-21 Gaius Mulley <gaius@glam.ac.uk> + + * src/devices/grohtml/post-html.cc (colType): Make enum global to + the file. + (html_printer::update_min_max, html_printer::add_table_end): New + methods. + (html_printer::lookahead_for_tables): Use them. + Reset page offset correctly. + (html_printer::~html_printer): Add creation of creator comment up. + +2002-08-20 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac (T&): New dummy macro to avoid warning. + * man/groff_tmac.man: Fix typos. + * man/groff_font.man: Minor reordering. + * contrib/eqn2graph/eqn2graph.man (Tp): New macro. + +2002-08-18 Gaius Mulley <gaius@glam.ac.uk> + + Avoid endless loops while scanning for tables. + + * src/devices/grohtml/post-html.cc (list::insert): Set + ptr->right->left. + (html_printer::next_horiz_pos): Add `text_glob' argument; update + all callers. + Return immediately if that argument is NULL. + (html_printer::calc_nf): Don't test if `g' is NULL. + (html_printer::lookahead_for_tables): Use + `glyphs.move_right_get_data'. + Don't test if `g' is NULL. + +2002-08-18 Gaius Mulley <gaius@glam.ac.uk> + + A better fix, replacing fix 2002-08-15, for increasing SIZE. + + * src/devices/grohtml/post-html.cc (char_block): Make `buffer' + a pointer. + (char_block::char_block): Allocate `buffer'. + (char_buffer::add_string): Use it. + +2002-08-15 Werner LEMBERG <wl@gnu.org> + + * src/devices/grops/grops.man, src/devices/grolj4/grolj4.man, + src/devices/grodvi/grodvi.man: Document default line thickness. + +2002-08-15 Gaius Mulley <gaius@glam.ac.uk> + + * src/devices/grohtml/post-html.cc (char_block): Increase SIZE to + 8192. + +2002-08-14 Werner LEMBERG <wl@gnu.org> + + * doc/webpage.ms: Updated. + +2002-08-09 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/node.cc (node::add_char): Call `freeze_space' for + unbreakable space. + +2002-08-08 Aaron Campbell <aaron@monkey.org> + + * src/preproc/pic/object.cc (object_spec::make_move): Fix typo + (&& -> &). + +2002-08-08 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (read_rgb, read_cmy, read_cmyk): Call + tok.next(). + (read_gray): Ditto. + Don't push back a space but a newline onto the stack. + +2002-08-07 Gaius Mulley <gaius@glam.ac.uk> + + Add fonts `CI', `CB', and `CBI' to grohtml which have been omitted + inadvertently. + + * src/devices/grohtml/post-html.cc (html_printer::end_font, + html_printer::start_font): Handle them. + * src/devices/grohtml/html-text.cc (html_text::do_italic): Don't + reset bold and tt. + (html_text::do_bold): Don't reset italic and tt. + (html_text::do_tt, html_text::do_pre): Don't reset bold and italic. + * font/devhtml/DESC.proto: Add those fonts. + * font/devhtml/Makefile.sub (PROTOFONTS): Updated. + +2002-08-07 Werner LEMBERG <wl@gnu.org> + + * MORE.STUFF: Added gpresent. + + * tmac/trace.tmac: Show nesting level by a corresponding amount of + whitespace before printing the logging message. + +2002-07-31 Colin Watson <cjwatson@debian.org> + + * src/devices/grohtml/html-table.cc (html_table::finish_row): + Initialize `n' to zero. This fixes a segfault on ARM. + +2002-07-30 Werner LEMBERG <wl@gnu.org> + + * doc/grnexmpl.me: Remove calls to .st and .sc which are undefined. + +2002-07-29 Werner LEMBERG <wl@gnu.org> + + * src/preproc/pic/pic.y (print_arg, relative_path): Add missing + final semicolon. + +2002-07-28 Colin Watson <cjwatson@debian.org> + + * src/devices/grohtml/post-html (html_printer::troff_tag): Handle + `.ps'. + (html_printer::html_printer): Initialize `pointsize'. + +2002-07-26 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile.sub (PROCESSEDEXAMPLEFILES): Remove gnu.eps and + gnu.png. + (CLEANNOTSRCDIRADD): Add gnu.eps and gnu.png. + (gnu.eps): Add -rle switch to pnmtops. + (distfiles): Add gnu.eps and gnu.png. + +2002-07-25 Petter Reinholdtsen <pere@hungry.com> + + * src/libs/libdriver/input.cc (Char): Add const to `operator=='. + Add `operator!='. + +2002-07-24 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile.in, doc/Makefile.sub (groff_bin_path): Don't use + ' \+' but ' *' for sed. + (GROFF): Set GROFF_COMMAND_PREFIX to empty value. + +2002-07-23 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Document `papersize' keyword. + * NEWS, man/groff_font.man: Updated. + +2002-07-23 Colin Watson <cjwatson@debian.org> + + Extend papersize keyword to accept more than a single entry. The + first valid will be used. + + * src/libs/libgroff/font.cc (font::load_desc): Implement it. + (font::scan_papersize): Really skip final newline. + * src/preproc/html/pre-html.cc (get_papersize): Ditto. + +2002-07-23 Werner LEMBERG <wl@gnu.org> + + * configure.ac: Test for isatty. + * configure: Regenerated. + * src/include/posix.h: Check HAVE_ISATTY. + * src/roff/troff/input.cc [ISATTY_MISSING]: Removed. + * src/utils/lookbib/lookbib.cc: Include posix.h. + Don't declare isatty. + +2002-07-21 Werner LEMBERG <wl@gnu.org> + + * NEWS: Add `output' request. + + * REVISION: Increased to 1. + +Version 1.18.0 released +======================= + +2002-07-19 Gaius Mulley <gaius@glam.ac.uk> + + Allow internal glyph indices > 0xFF in grohtml for input characters. + + * src/devices/grohtml/post-html.cc (to_unicode): Use `unsigned int' + as parameter. + (html_printer::add_to_sbuf): Use `unsigned int' as first parameter. + Updated all callers. + (html_printer::sbuf_continuation, html_printer::overstrike): Ditto. + (html_printer): Updated. + +2002-07-19 Werner LEMBERG <wl@gnu.org> + + * font/devhtml/R.proto: Updated to HTML 4, adding many glyphs. + * font/devutf8/R.proto: Adding some missing glyphs. + * font/devutf8/NOTES: Updated. + + * tmac/dvi.tmac: Add more composite glyphs. + * tmac/html.tmac: Updated. + + * man/groff_char.man: Add `sum' and `product' entities. + + * NEWS: Updated. + +2002-07-18 Gaius Mulley <gaius@glam.ac.uk> + + Improved table, tab, and indenting support. + + * src/roff/troff/input.cc (file_iterator::suppress_newline_flag, + string_iterator::suppress_newline_flag): Removed. Updated all + function which have used it. + + * src/roff/troff/env.cc: Include `input.h'. + (environment::add_node): Accept 0 as parameter. + (environment::add_html_tag): Add `force' parameter. + Updated all callers. + (environment::add_html_tag_tabs): Ditto. + For the moment, support left-aligned tabs only. + (environment::make_html_tag): New function. + (fill, no_fill): Set .br html tag additionally. + (environment::newline): Emit `eol.ce' or `eol' tag for html. + (environment::add_html_tag_eol): Removed. + (tab_stops::distance_to_next_tab): Add variant for handling + nextpos'. + (environment::distance_to_next_tab): Ditto. + Updated all callers. + (environment::handle_tab): Handle tabs for html. + + * src/roff/troff/env.h: Updated. + + * src/roff/troff/div.cc: Updated all callers of + `environment::add_html_tag'. + + * src/devices/grohtml/html-table.cc, + src/devices/grohtml/html-table.h: New files. + + * src/devices/grohtml/html-text.cc (html_text): New members + `blank_para' and `start_space'. + (html_text::issue_tag): Don't emit TABLE_TAG. + Handle indentation for PRE_TAG and P_TAG. + (html_text::end_tag): Updated. + (html_text::table_is_void, html_text::issue_table_begin, + html_text::issue_table_end): Removed. + (html_text::do_push): Simplified. + [DEBUGGING]: Small fix. + (html_text::push_para): Add new parameter for indentation; updated + all callers. + Handle PRE_TAG. + (html_text::do_indent, html_text::do_table, html_text::done_table, + html_text::is_in_table): Removed. + (html_text::do_pre): Handle P_TAG also. + (html_text::shutdown): Handle p->indent. + (html_text::check_emit_text): Simplified. + (html_text::do_emittext): Reset `blank_para'. + (html_text::do_para): Add new parameter for indentation; updated + all callers. + (html_text::remove_indent): New function. + (html_text::do_space): Handle verbatim text properly. + (html_text::ever_emitted_text, html_text::starts_with_space, + html_text::remove_para_align): New functions. + (html_text::dump_stack_element, html_text::dump_stack): Updated. + + * src/devices/grohtml/html_text.h (HTML_TAG): Remove TABLE_TAG. + Updated. + + * src/devices/grohtml/post-html.cc: Include html-table.h. + (INDENTATION): Removed. + (text_glob): Added many `is_<foo>' functions. + Added table description `tab'. + Added `get_arg',`get_tab_args', `remember_table', and `get_table' + member functions. + (list): Add `insert' and `move_to' member functions. + (page): Add `insert_tag' member function. + (page::dump_page) [DEBUG_TABLES]: Improved. + (html_printer): Add `table' and `max_linelength' elements. + Add many `do_<foo>', `insert_<foo>', `next_horiz_pos', + `lookahead_for_tables', `shutdown_table', `calc_nf', `calc_po_in', + `remove_tabs', `remove_courier_tabs'. + (html_printer::emit_raw): Handle indentation. + (html_printer::do_center, html_printer::write_header): Updated. + (html_printer::is_courier_until_eol): Check for tag. + (html_printer::do_linelength): Handle max_linelength. + (html_printer::do_page_offset, html_printer::do_indentation): Handle + fill_on. + (html_printer::do_tempindent): Updated. + (html_printer::do_indentedparagraph): Removed. + (html_printer::do_indent): Simplified. + (html_printer::do_eol): Use `ever_emitted_text'. + (html_printer::do_flush, html_printer::do_links): Don't call + done_table. + (html_printer::do_break): Handle end_tempindent. + (html_printer::troff_tag): Get argument. + Don't handle `.ip'. + Handle `.tab-ts', `.tab-te', `.col', `tab', and `tab0' tags. + (html_printer::flush_page): Call `lookahead_for_tables'. + Don't call `done_table'. + (html_printer::add_to_sbuf): Always call do_indent. + + * src/devices/grohtml/Makefile.sub: Updated. + + * tmac/an-old.tmac (TP): Don't handle html device specially. + (an-do-tag-html): New function which will be used instead of + `an-do-tag' if html device is used. + + * tmac/html.tmac: Call .po to pass default page offset to grohtml. + + * tmac/s.tmac (@IP): Don't handle html device specially. + (@IP-html): New function which will be used instead of `@IP' if + html device is used. + + * tmac/www.tmac (HTML-NS, HTML-TAG-NS): New auxiliary macros -- this + is a hack which will eventually vanish again. + (PIMG): Handle `-C' option correctly if not html. + (HR): Use HTML-NS. + +2002-07-17 Werner LEMBERG <wl@gnu.org> + + * src/utils/afmtodit/afmtodit.pl: Don't use `-P-' for invoking perl. + +2002-07-14 Eric S. Raymond <esr@thyrsus.com> + + * contrib/pic2graph/pic2graph.*: Use convert(1). + * contrib/eqn2graph/eqn2graph.*: Minor fixes. + +2002-07-14 Bernd Warken <bwarken@mayn.de> + + * tmac/groff_trace.man: New file. + * tmac/Makefile.sub: Updated. + * NEWS: Updated. + +2002-07-13 Werner LEMBERG <wl@gnu.org> + + * src/roff/groff/groff.man: Add some cross references. + +2002-07-12 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (substring_request): Add warnings for + string indices out of range. + +2002-07-11 Werner LEMBERG <wl@gnu.org> + + * font/devdvi/generate/ec.map: Fix typo (`(l' -> `/l'). + * font/devdvi/*EC: Regenerated. + +2002-07-10 Bernd Warken <bwarken@mayn.de> + + * man/groff_char.man: Updated and extended. + +2002-07-10 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (length_macro): Renamed to... + (length_request): This. + Move call of `tok.next()' to the very end, otherwise the register + value hasn't been updated yet. + (init_input_requests): Updated. + +2002-07-09 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (substring_macro): Renamed to... + (substring_request): This. + (init_input_requests): Updated. + * src/roff/troff/request.h: Updated. + +2002-07-08 Robert D. Goulding <goulding@Princeton.EDU> + + * src/roff/grog/grog.sh: Fix typo. + +2002-07-08 Werner LEMBERG <wl@gnu.org> + + * win32-diffs: Updated. + + Handle `papersize' keyword properly in DESC. + + * src/libs/libgroff/font.cc (font::scan_papersize): Fix argument + type. + Updated all callers. + * src/libs/libgroff/paper.cc: Add four more paper formats used by + grolj4. + * src/include/paper.h: Updated. + + * src/devices/grolbp/lbp.cc: Remove unnecessary semicolons. + Other minor C syntax fixes. + (papersize, paperlength, paperwidth): Renamed to `user_*'. + (lbp_printer): Add `papersize', `paperlength', and `paperwidth' + members. + (lbp_printer::lbp_printer): Pass three arguments. + Set paper dimensions properly. + (make_printer, main): Updated. + (handle_unknown_desc_command): Fix error messages. + (main): Handle papersize keyword in DESC properly. + + * src/devices/grolj4/lj4.cc (paper_size): Renamed to + `user_paper_size'. + (lbp_printer::lbp_printer): Pass an argument. + Set paper_size properly. + (handle_unknown_desc_command): Removed. + (make_printer, main): Updated. + * src/devices/grolj4/grolj4.man: Minor documentation fix. + + * man/groff_font.man, NEWS: Updated. + +2002-07-07 Werner LEMBERG <wl@gnu.org> + + Integrated eqn2graph, contributed by Eric S. Raymond. + + * contrib/eqn2graph/{Makefile.sub, eqn2graph.sh, eqn2graph.man}: New + files. + * Makefile.in, NEWS: Updated. + +2002-06-04 Werner LEMBERG <wl@gnu.org> + + Changing the substring request to make it fit better with other + string manipulation functions in other programming languages: + Index 0 is now the first character in the string, and index -1 + indicates the last character. Since this request didn't work + properly anyway in the last release, it doesn't harm too much to + change the syntax. + + * src/roff/troff/input.cc (substring_macro): Use loops to get + the real string length (ignoring COMPATIBLE_SAVE and + COMPATIBLE_RESTORE) and offsets. + Implement change described above. + + * man/groff_char.man, tmac/doc-common (doc-header), tmac/doc.tmac + (doc-do-Bd-args, doc-do-Bl-args): Changed accordingly. + + * NEWS, doc/groff.texinfo, man/groff_diff.man: Updated. + +2002-06-03 Werner LEMBERG <wl@gnu.org> + + Make .chop work with .de1 and friends. COMPATIBLE_SAVE and + COMPATIBLE_RESTORE are completely ignored. + + * src/roff/troff/input.cc (char_list::set, char_list::get): New + functions. + (macro): `length' field renamed to `len'. + Added new field `empty_macro' (1 if macro is empty), to be used + instead of checking `len'. + Updated all callers. + (macro::empty): Updated. + (macro::length, macro::set, macro::get): New functions. + (macro::append): Ignore COMPATIBLE_SAVE and COMPATIBLE_RESTORE. + Set `empty_macro'. + (chop_macro): Check and remove trailing COMPATIBLE_SAVE/ + COMPATIBLE_RESTORE pairs. + (asciify): Ignore COMPATIBLE_SAVE and COMPATIBLE_RESTORE. + * src/roff/troff/request.h: Updated. + + * doc/groff.texinfo: Document .chop's behaviour better. + +2002-06-02 Werner LEMBERG <wl@gnu.org> + + * doc/pic.ms: Fix documentation for the addition of positions. + + * tmac/doc.tmac, tmac/an-old.tmac: Need groff version 1.18. + +2002-06-29 Werner LEMBERG <wl@gnu.org> + + Implementation of string arguments of the form \*[foo arg1 arg2 ...] + + * src/roff/troff/input.cc (have_string_arg): New global variable. + (read_mode): New enumeration. + (read_escape_name): Use it. Update all calls. + (read_long_escape_name): Use it. Update all calls. + Set have_string_arg if appropriate. + (get_char_for_escape_name): Add parameter for handling space + character. + (interpolate_string_with_args, decode_string_args): New functions. + (get_copy, token::next): Call it if necessary. + (interpolate_string): Fix error message. + + * NEWS, doc/groff.texinfo, man/groff.man, man/groff_diff.man: + Document it. + +2002-06-24 Bernd Warken <bwarken@mayn.de> + + * man/groff_tmac.man: Updated and extended. + +2002-06-24 Werner LEMBERG <wl@gnu.org> + + * doc/pic.ms, src/preproc/pic/pic.man: Fix description of `:='. + +2002-06-23 Werner LEMBERG <wl@gnu.org> + + * doc/pic.ms: Improve documentation of composite block objects. + +2002-06-22 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (init_registers): Add three registers + `seconds', `minutes', and `hours' to hold the current time. + + * NEWS, doc/groff.texinfo, man/groff.man, man/groff_diff.man: + Updated. + +2002-06-20 Werner LEMBERG <wl@gnu.org> + + Make \X accept both `\ ' and `\~', converting them to single space + characters. + + * src/roff/troff/token.h (token): Add TOKEN_UNSTRETCHABLE_SPACE. + (token::unstretchable_space): New inline function. + * src/roff/troff/input.cc (token::next, token::delimiter, + token::description, token::add_to_node_list, token::process): Handle + TOKEN_UNSTRETCHABLE_NODE. + (encode_char): Handle tok.stretchable_space and + tok.unstretchable_space. + + * NEWS, doc/groff.texinfo: Document it.. + +2002-06-19 Werner LEMBERG <wl@gnu.org> + + * src/devices/grops/ps.cc (ps_printer::special): Fix error message. + + * src/devices/grotty/tty.cc (tty_printer::special): Add `sgr' + keyword to enable/disable SGR output. + (tty_printer::change_fill_color): New function. + * NEWS, src/devices/grotty/grotty.man: Document `sgr' special. + + * src/roff/troff/input.cc (output_request): Add missing `tok.next()' + call. + +2002-06-18 Werner LEMBERG <wl@gnu.org> + + Add a `color' request and a `.color' register to control usage of + colours. + + * src/roff/troff/input.cc (disable_color_flag): Replaced with... + (color_flag): This (which is the inverse). + (activate_color): New function. + (main, init_input_requests): Updated. + * src/roff/troff/troff.h, src/roff/troff/node.cc + (troff_output_file::fill_color, troff_output_file::glyph_color): + Updated. + + * NEWS, doc/groff.texinfo, man/groff_diff.man, man/groff.man: + Document the changes. + +2002-06-17 Colin Watson <cjwatson@debian.org> + + Circumvent bug in autoconf 2.53 regarding top_builddir. + + * aclocal.m4 (GROFF_BUILDDIR): s/top_builddir/groff_top_builddir/. + * Makefile.in, doc/Makefile.in: + s/@top_builddir@/@groff_top_builddir@/. + * configure: Regenerated (with autoconf 2.53). + +2002-06-17 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/font.cc (font::load_desc): Fix computation of + `paperwidth' and `paperlength' for the `papersize' keyword. + +2002-06-16 P. Alejandro Lopez-Valencia <dradul@007mundo.com> + + * src/devices/grops/grops.man: Add info about Type 42 fonts. + +2002-06-15 Gaius Mulley <gaius@glam.ac.uk> + + * src/devices/grohtml/post-html.cc (html_printer::emit_raw, + html_printer::do_linelength, html_printer::do_pageoffset, + html_printer::do_indentation, html_printer::do_tempindent, + html_printer::do_break, html_printer::begin_page): Clear indented + text. + * tmac/html.tmac: Disable hyphenation. + +2002-06-15 Werner LEMBERG <wl@gnu.org> + + Don't produce HTML files if utility programs are missing. + + * Makefile.in (make_html, make_install_html): New variables. + (MDEFINES): Updated. + + * aclocal.m4 (GROFF_HTML_PROGRAMS): New function to test for HTML + utility programs. + * configure.ac: Use it. + * configure: Regenerated. + + * doc/Makefile.sub (PROCESSEDEXAMPLEFILES): Move webpage.html to... + (HTMLEXAMPLESFILES): This new variable. + (EXAMPLESIMAGEFILES): Renamed to... + (HTMLEXAMPLEIMAGEFILES): This. + (CLEANADD): Add HTMLEXAMPLEFILES. + (all): Use `make_html'. + (html): New target. + (install_data): Use `make_install_html'. + Move html stuff to... + (install_html): This new target. + (uninstall_sub): Updated. + +2002-06-14 Bernd Warken <bwarken@mayn.de> + + * src/roff/grog/Makefile.sub (grog): Renamed to... + (grog.old): This. + (grog): New rule to always install grog.sh as grog. + +2002-06-08 Bernd Warken <bwarken@mayn.de> + + * src/roff/grog/grog.pl: Fix typo. + +2002-06-07 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Add more info on .tr arguments. + +2002-06-05 Werner LEMBERG <wl@gnu.org> + + * NEWS, src/roff/grog/grog.man, doc/groff.texinfo: Updated. + + * aclocal.m4 (GROFF_MKSTEMP): Include unistd.h. + * configure: Regenerated. + +2002-06-05 Ralph Corderoy <ralph@inputplus.demon.co.uk> + + * src/roff/troff/symbol.cc (table_sizes): Add more values. + + * src/roff/grog/grog.pl, src/roff/grog/grog.sh: Recognize mom. + +2002-06-04 Werner LEMBERG <wl@gnu.org> + + * aclocal.m4 (GROFF_PAGE): Don't use `prefix' directly since it + is not initialized at the time we need it in case `--prefix' hasn't + been set. Check for `ac_default_prefix' also. + Test for `papersize' keyword also and generalize allowed whitespace. + * configure: Regenerated. + + * font/devps/Makefile.sub (DESC): Use `papersize' instead of + `paperlength'. + + * src/libs/libgroff/Makefile.sub (version, revision): Replaced + with... + (src_version, src_revision): New variables to avoid overwriting + from parent make process. + (version.cc): Updated. + + * src/preproc/html/pre-html.cc: Include paper.h and font.h. + (linebuf, linebufsize): New global variables. + (sys_fatal): Use `fatal' to abort properly. + (get_line): New function. + (get_resolution): Use it. + Improve error messages. + (get_papersize): Check `papersize' also. + Use `get_line'. + Improve error messages. + +2002-06-03 Werner LEMBERG <wl@gnu.org> + + * Makefile.comm (CLEANNOTSRCDIRADD): New target for files which + should be removed only if builddir is not srcdir. + (mostlyclean): Handle `CLEANNOTSRCDIRADD'. + (clean): Depend on `mostlyclean'. + (distclean): Depend on `clean'. + (realclean, extraclean): Depend on `distclean'. + (.y.cc, .y.o): Simplified. The output files are no longer written + to srcdir but to builddir. + * Makefile.in (MDEFINES): Add `version' and `revision'. + (uninstall_dirs): Fix order of directories. + * doc/Makefile.sub (version, revision): Removed. + (CLEANADD): Removed grnexmpl.g, groff, groff-*. + Added `HTMLDOCFILES'. + (CLEANNOTSRCDIRADD): New target for grnexmpl.h, groff, groff-*. + * src/preproc/eqn/Makefile.sub, src/preproc/pic/Makefile.sub, + src/preproc/refer/Makefile.sub (YTABC, YTABH): Don't use `srcdir' + as prefix. + + * doc/texinfo.tex (\authortt): New macro. + (\shortcontt): Define. + (\titlepage): Set \tt to \authortt while defining \authorfont. + (\appendixbox): New macro. + (\chapmacro, \appendixentry): Use \appendixbox to get even + indentation for letters. + (\summarycontents): Set \tt. + (\internalpagesize): Add two arguments for real paper width and + height as needed by pdfTeX. + (\letterpaper, \smallbook, \afourpaper, \afivepaper, \afourlatex): + Updated. + (\tempdima, \tempdimb): New temporary dimensions. + (\pagesizesyyy): Updated. + +2002-06-02 Werner LEMBERG <wl@gnu.org> + + Adding a new keyword `papersize' to the DESC file format (similar + but not completely identical to grolbp's extension). grops now has + a -p command line option to override `papersize'. Finally, grolbp + has been adapted to the new syntax. + + * src/libs/libgroff/paper.cc, src/include/paper.h: New files. It + defines and initializes the `papersizes[]' array with NUM_PAPERSIZES + elements. + * src/libs/libgroff/Makefile.sub (OBJS): Add `paper.o'. + (CCSRCS): Add `paper.cc'. + + * src/include/font.h (font): Add `papersize' element. + * src/libs/libgroff/font.cc (font::unit_scale): New helper function. + (font::scan_papersize): New function. + (font::load_desc): Use it for handling `papersize' keyword. + * src/libs/libgroff/fontfile.cc: Initialize `font::papersize'. + + * src/devices/grops/ps.cc: Include paper.h. + (user_paper_length): New global variable. + (ps_printer): Use paper length as initializer. + (make_printer): Updated. + (main): Handle new `-p' option. + * src/devices/grops/grops.man: Updated. + + * src/devices/grolbp/lbp.cc: Include paper.h. + s/papersizes/lbp_papersizes/. + (set_papersize): Use new `papersizes' array. + (handle_unknown_desc_command): Don't handle `papersize'. + (main): Use `font::scan_papersize' for handling `-p' option. + * src/devices/grolbp/grolbp.man: Updated. + + * man/groff_font.man: Document `papersize'. + * NEWS: Updated. + +2002-05-30 Werner LEMBERG <wl@gnu.org> + + * src/devices/grops/TODO: Updated. + * src/devices/grops/grops.man: More info on paper formats. + * man/groff_font.man: Document `paperheight' and `paperwidth'. + +2002-05-29 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile.sub (CLEANADD): Add grnexmpl.g, groff, and groff-* + to list only if srcdir != currdir. + (distfiles): New target. + + * Makefile.in (EXTRADIRS): Add font/devlj4/generate. + (NOMAKEDIRS): New variable. + (DISTDIRS): Use it. + +2002-05-26 Werner LEMBERG <wl@gnu.org> + + Add .output request, similar to \! at top-level. + + * src/roff/troff/input.cc (transparent): Remove unused declaration. + (output_request): New function. + (init_input_requests): Add it. + Sorted. + * NEWS, doc/groff.texinfo, man/groff_diff.man, man/groff.man: + Document it. + + * Makefile.in (MDEFINES): Add INSTALL_INFO. + (prepare_examples): Fix typo. + * doc/groff.texinfo (@direntry): Fix it. + +2002-05-25 Werner LEMBERG <wl@gnu.org> + + Including the doc subdir into groff's Makefile system. + + * aclocal.m4 (GROFF_INSTALL_INFO): New function. + * configure.ac: Use it. + Generate `doc/Makefile'. + * configure: Regenerated. + + * Makefile.in (infodir, INSTALL_INFO): New variables. + (MDEFINES, uninstall_dirs): Updated. + (OTHERDIRS): Add `doc'. + * Makefile.comm (CLEANDIRADD): New variable. + (mostlyclean): Use it. + + * doc/Makefile.sub, doc/Makefile.in: New files. + * doc/Makefile: Removed. + + * NEWS, INSTALL: Updated. + +2002-05-24 Werner LEMBERG <wl@gnu.org> + + * doc/homepage.ms: Renamed to ... + * doc/webpage.ms: This. + Use `.NHR'. + +2002-05-23 Werner LEMBERG <wl@gnu.org> + + Integrating the `mom' macro package, contributed by Peter Schaffter + <df191@ncf.ca>. + + * contrib/mom/*: New subdirectory tree. + * Makefile.in (docdir, exampledir, htmldocdir): New variables to + be used for documentation files. + (MDEFINES, uninstall_dirs): Use them. + (OTHERDIRS): Add contrib/mom. + * Makefile.comm (.man.n): Add @DOCDIR@, @EXAMPLEDIR@, and + @HTMLDOCDIR@. + * MANIFEST, NEWS: Updated. + +2002-05-22 Gaius Mulley <gaius@glam.ac.uk> + + Change syntax of \O: \O[0] suppresses output, \O[1] enables output + if at outer level; at start-up we are at outer level. + + * src/roff/troff/input.cc (do_suppress): Implement it. + Simplify \O[3]. + + Add option -p to show progress information. + pre-grohtml will now render only one page at a time, reducing the + size of needed disk resources enormously. + + * src/preproc/html/pre-html.cc (imagePageStem): Replaced with... + (imagePageName): New global variable. + (psPageName, show_progress, currentPageNo): New global variables. + (html_system): Close saved stderr and stdout handles. + (write_end_image): Accept a parameter to control \O escape. + (write_start_image): Adapted to new \O meaning. + (char_buffer::write_upto_newline): Updated. + (createAllPages): Replaced with... + (createPage): This new function to create a single page for images. + It uses `psselect' from the psutils package. + (removeAllPages): Removed. + (createImage): Updated. + Handle progress display. + (char_buffer::do_html, char_buffer::do_image) [DEBUGGING]: Removed. + (scanArguments): Add option -p. + (makeTempFiles): Updated to create temp files for psPageName and + imagePageName. + (removeTempFiles): Removed. + (main): Updated. + + * src/devices/grohtml/post-html.cc (header_desc::write_headings, + html_printer::write_header): Append `\0' to `buffer'. + (html_printer::do_eol): Depend on `current_paragraph->emitted_text'. + (main): Handle -p. + * src/devices/grohtml/html-text.cc (html_text::dump_stack_element): + Handle `text_emitted'. + (html_text::table_is_void): Slightly rewritten. + (stop): New external symbol. + (html_text::do_push) [DEBUGGING]: Use it and simplify. + (html_text::shutdown): Call `dump_stack'. + (html_text::do_space): Rewritten. + * src/devices/grohtml/grohtml.man: Document -p and the need of + `psselect'. + + * tmac/www.tmac (DC, HTML-DO-IMAGE, HTML-IMAGE-END): Updated to + new \O syntax. + Call \O[0] if `ps4html' is active. + * tmac/s.tmac (@EQ, @EN): Handle html better. + (@TS, TE): Ditto. + * tmac/html.tmac: Don't use black for background colour. + + * src/roff/troff/node.cc: Include `div.h'. + (troff_output_file::really_print_line): Don't use `is_on'. + (troff_output_file::word_marker, troff_output_file::flush_tbuf + troff_output_file::check_charinfo, + troff_output_file::put_char_width, troff_output_file::put_char, + troff_output_file::determine_line_limits, troff_output_file::draw, + real_output_file::begin_page, glyph_color_node::tprintf, + fill_color_node::tprint, hline_node::tprint, vline_node::tprint): + Use `is_on'. + (troff_output_file::really_on): Call `do_motion'. + (suppress_node::tprint): Use `get_page_number' instead of `%' + register. + Call `reset_output_registers' conditionally on `is_on'. + + * doc/groff.texinfo: Document new syntax of \O. + * NEWS, man/groff_diff.man: Updated. + +2002-05-22 Werner LEMBERG <wl@gnu.org> + + * MORE.STUFF: Add info about David Frey's deroff implementation. + Mention troff.org. + +2002-05-16 Werner LEMBERG <wl@gnu.org> + + Pic's `with' attribute now accepts positions. + + * src/preproc/pic/pic.y: Make `.', BOX, CIRCLE, ELLIPSE, ARC, LINE, + ARROW, SPLINE, and `[' left-associative tokens to fix shift/reduce + conflicts. + (object_spec): Add rule for `WITH' and `position'. + (relative_path): Give `corner' the precedence of `CHOP'. + * src/preproc/pic/object.h (path): New members `pos' and + `is_position'. + * src/preproc/pic/object.cc: Updated initializers of `path'. + (path::follow): Handle `is_position'. + + * doc/pic.ms: Completely updated grammar description. + Many typographical improvements. + +2002-05-15 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/env.cc(hyphen_trie::hpf_getc): Accept ^^x (char + code of x in range 0-127) also. + * doc/groff.texinfo, man/groff_diff.man: Updated. + + Added keywords `north', `south', `east', and `west' for corners + in pic. + + * src/preproc/pic/lex.cc (lookup_keyword): Add NORTH, SOUTH, EAST, + and WEST. + (yylex): Handle them. + * src/preproc/pic/pic.y: Add tokens NORTH, SOUTH, EAST, and WEST. + (corner): Handle them. + +2002-05-14 Werner LEMBERG <wl@gnu.org> + + * src/devices/grops/grops.man: Clarify handling of `download' file. + +2002-05-11 Werner LEMBERG <wl@gnu.org> + + Adding `warnscale' and `spreadwarn' requests, based on a patch from + Jeffrey Friedl <jfriedl@yahoo.com>. + + * src/roff/troff/input.cc (spread_limit, warn_scale, + warn_scaling_indicator): New global variables. + (warnscale_request, spreadwarn_requests): New functions. + (main): Initialize `warn_scale' and `warn_scaling_indicator'. + (init_input_requests): Updated. + (error_type): Add `OUTPUT_WARNING'. + (do_error): Handle it. + (output_warning): New warning function which shows output location. + * src/roff/troff/env.h (spread_limit): New external variable. + * src/roff/troff/env.cc (environment::choose_breakpoint): Use + `output_warning'. + (distribute_space): Emit warning if added space is larger than + `spread_limit'. + (environment::possibly_break_line): Emit warning if a line can't + be adjusted on both sides. + + * doc/groff.texinfo, man/groff_diff.man, man/groff.man: Document it. + +2002-05-08 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/node.cc (special_node::special_node): Use + env_definite_font(curenv) instead of curenv->get_font(). Otherwise + \X''\% crashes, for example. + + * doc/groff.texinfo: Document \! and \? used at top-level. + +2002-05-06 Werner LEMBERG <wl@gnu.org> + + * src/preproc/pic/pic.man: Fix some keyword syntax. + Other minor typographical fixes. + + * src/roff/groff/groff.man: Fix typos. + +2002-05-04 Werner LEMBERG <wl@gnu.org> + + * src/roff/groff/groff.man ([ShortOpt]): Renamed to... + (ShortOpt[]): This to avoid problems with refer. + + * doc/pic.ms: Fix typo. + Fix pic grammar description. + + * tmac/an-old.tmac (ne): Use de1, not de. + +2002-05-03 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Finished separation of glyphs and characters. + Don't use the string `Appendix' for appendix headers (both in + the text and the table of contents). + * man/groff_tmac.man, src/roff/troff/troff.man: Fix order of tmac + directories. + + Use registers LL and LT (similar to -ms) for controlling the + length of title and line, respectively, in the -man and -mdoc + macro packages. + + * tmac/doc-ditroff (doc-setup-page-layout), tmac/doc-nroff + (doc-setup-page-layout): Use \n[LL] and \n[LT]. + * tmac/an-old.tmac: Set \n[LL] and \n[LT] if not defined. + (TH): Use \n[LL]. + (an-header, an-p-footer): Use \n[LT]. + * NEWS, tmac/groff_man.man, tmac/groff_mdoc.man, + doc/groff.texinfo: Document it. + +2002-05-02 Werner LEMBERG <wl@gnu.org> + + * doc/fdl.texi: New file. + * doc/groff.texinfo: Include it. + Define and use @copying. + Starting with separating glyph, symbol, and character. + +2002-04-27 Werner LEMBERG <wl@gnu.org> + + * Makefile.in (EXEEXT): Set it. + * src/*/Makefile.sub (PROG): Add $(EXEEXT) for all non-script + programs. + + * src/include/nonposix.h: Define GS_NAME. + * src/preproc/html/pre-html.cc (createAllPages): Use GS_NAME. + + Some preliminary changes for EMX support under OS/2. + + * src/preproc/pic/main.cc (main), src/roff/groff/pipeline.c: Add + __EMX__ similar to __MSDOS__. + * src/utils/indxbib/indxbib.cc (main) [__EMX__]: Use `unlink'. + +2002-04-25 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Integrated groff_out.man. + Some macro fixes. + +2002-04-23 Werner LEMBERG <wl@gnu.org> + + * man/groff_out.man: Minor fixes. + +2002-04-23 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Moving @cindex entries after @Def* to get + correct page references. + Fixed many index entries. + +2002-04-23 Bernd Warken <bwarken@mayn.de> + + * man/roff.man: Enlarged. + +2002-04-22 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: More examples, other fixes. + +2002-04-20 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (pipe_output): Multiple calls to `pi' + will now form a chain, e.g. + + .pi foo + .pi bar + + is now the same as + + .pi foo | bar + + This is for compatibility with plan 9's troff. + + * tmac/tty.tmac: Set default tab values to 0.8i to be compatible + with UNIX troff. + * NEWS: Updated. + + * doc/groff.texinfo: Add documentation of remaining requests and + registers. + +2002-04-19 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Add documentation of remaining escapes. + + * font/devdvi/generate/tc.map: Remove entry for `sr'. + * font/devdvi/*TC: Regenerated. + +2002-04-18 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (token::next): Make \H behave consistently + if not in compatibility mode, i.e., increment relative to the + previous height. + * doc/groff.texinfo: Updated accordingly. + +2002-04-17 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Document \\, \e, \E, \., and \c. + +2002-04-16 Bernd Warken <bwarken@mayn.de> + + * src/roff/groff/groff.man: Improve documentation of -P option. + Other minor fixes. + +2002-04-15 Werner LEMBERG <wl@gnu.org> + + Add new escape \F to switch font family. + + * src/roff/troff/input.cc (token::next): Handle \F. + * src/roff/troff/env.cc (environment::set_family): Handle + `interrupted' flag. + * NEWS, doc/groff.texinfo, man/groff_diff.man, man/groff.man: + Document it. + +2002-04-14 Werner LEMBERG <wl@gnu.org> + + * tmac/doc.tmac (doc-tag-list): Use \Z to avoid stretching of + spaces in tags. + +2002-04-13 Werner LEMBERG <wl@gnu.org> + + Implement \f[] as an alternative to \fP. Change \mP and \MP to + \m[] and \M[], respectively. + + * src/roff/troff/symbol.cc (EMPTY_SYMBOL): New global variable. + (symbol::symbol): Handle NULL string and empty string differently. + * src/roff/troff/symbol.h (symbol::is_empty): New inline function. + * src/roff/troff/input.cc (read_escape_name, read_long_escape_name): + Add optional parameter. + Updated calling functions. + (get_copy, do_glyph_color, do_fill_color, token::next): Use + `symbol::is_empty'. + * src/roff/troff/env.cc (environment::set_font): Ditto. + + * src/preproc/pic/troff.cc (troff_output::set_fill, + troff_output::reset_color: Updated. + + * tmac/www.tmac: Updated. + + * NEWS, man/groff_diff.man, man/groff.man, doc/groff.texinfo, + doc/homepage.ms, src/devices/grotty/grotty.man, tmac/groff_www.man: + Updated. + + * tmac/Xps.tmac: Remove some redundant code. + + * tmac/doc-common, tmac/doc-ditroff, tmac/doc-nroff, tmac/doc.tmac, + tmac/dvi.tmac, man/roff.man, man/groff_out.man, man/groff.man, + man/groff_diff.man, src/roff/groff/groff.man: Replace \f[P] with + \f[]. + +2002-04-13 Bernd Warken <bwarken@mayn.de> + + * src/include/printer.h, src/libs/libdriver/printer.cc + (printer::change_fill_color): New member function. + * src/libs/libdriver/input.cc (parse_D_command): Use it. + +2002-04-12 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Completed pass on gtroff reference. + +2002-04-11 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: More fixes. + +2002-04-11 Bernd Warken <bwarken@mayn.de> + + * src/include/color.h: Decorate with `const'. + Use `size_t'. + Include `stddef.h'. + * src/libs/libgroff.color.cc: Decorate with `const'. + Use `size_t'. + (color::color): Initialize members. + * src/libs/libdriver/input.cc (parse_D_command): Handle `f' + command according to the documentation. + + * man/groff_out.man: Updated. + Minor fixes. + +2002-04-11 Gaius Mulley <gaius@glam.ac.uk> + + * src/preproc/html/pre-html.cc (write_start_image): Remove + redundant output. + * tmac/www.tmac (DC, HTML-DO-IMAGE): Ditto. + + * src/devices/grohtml/post-html.cc (page::add_and_encode): Using + \C'hy' caused an assertion failure. + + * src/roff/troff/env.cc (environment::environment): Initialize + `emitted_node'. + (environment::copy): Handle `ignore_next_eol' and `emitted_node'. + +2002-04-10 Werner LEMBERG <wl@gnu.org> + + * man/groff_diff.man, man/groff.man, NEWS, doc/groff.texinfo: + Document pvs request and .pvs register. + +2002-04-09 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Improve and fix documentation of diversions + and environments. + +2002-04-08 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Fix documentation of drawing functions. + Other minor fixes. + +2002-04-07 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Better documentation of double quotes as + arguments. + Other minor fixes. + +2002-04-06 Werner LEMBERG <wl@gnu.org> + + * man/groff_font.man: Document names of special characters better. + * doc/groff.texinfo: Minor improvements. + + * tmac/lbp.tmac: Load latin1.tmac. + * tmac/X.tmac, tmac/Xps.tmac: Load latin1.tmac or cp1047.tmac. + + * font/devX*/*: Regenerated (all chars > 0x80 removed). + +2002-04-05 Werner LEMBERG <wl@gnu.org> + + * tmac/tty.tmac: Don't use shc request. + * tmac/latin1.tmac, tmac/cp1047.tmac: Translate soft hyphen to `\%'. + * NEWS: Updated. + + * man/groff_diff.man: Minor fixes. + + * font/devlbp/*: Remove all `charXXX' entities. + + * src/libs/libgroff/font.cc (font::~font): Deallocate + `special_device_coding'. + (font::load): Use `new' for allocating `special_device_coding'. + * src/libs/libgroff/nametoindex.cc (character_indexer::lookup_char): + Removed unused member. + +2002-04-05 Werner LEMBERG <wl@gnu.org> + + * src/drivers/grops/psrm.cc (skip_possible_newline): New function. + (resource_manager::do_begin_binary, + resource_manager::do_begin_data): Use it. + + * doc/texinfo.tex: Updated to version 4.2. + + * src/roff/troff/token.h: Add TOKEN_ZERO_WIDTH_BREAK for `\:'. + (token::zero_width_break): New inline function. + * src/roff/troff/input.cc (token::next): Use it. + (token::description): Updated. + (encode_char): Ignore `\%', `\&', `\)', and `\:'. + (token::add_to_node_list, token::process): Use it. + * NEWS, doc/groff.texinfo: Updated. + + * src/preproc/eqn/over.cc (over_box::output): Fix typo. + * tmac/tty.tmac: Add missing backslash. + +2002-04-04 Tadziu Hoffmann <hoffmann@usm.uni-muenchen.de> + + * src/preproc/eqn/box.cc (set_script_size, box::top_level): Use + `.ps' register instead of `.s' to handle fractional point sizes. + * src/preproc/eqn/limit.cc (limit_box::compute_metrics, + limit_box::output): Ditto. + * src/preproc/eqn/other.cc (size_box::compute_metrics, + size_box::output): Ditto. + * src/preproc/eqn/over.cc (over_box::compute_metrics, + over_box::output): Ditto. + * src/preproc/eqn/script.cc (script_box::compute_metrics, + script_box::output): Ditto. + * src/preproc/eqn/sqrt.cc (sqrt_box::compute_metrics, + sqrt_box::output): Ditto. + +2002-04-03 Michael Selway <mas@ssl.co.uk> + + * src/drivers/grops/psrm.cc (resource_manager::do_begin_binary): + Fix typo. + +2002-04-03 Werner LEMBERG <wl@gnu.org> + + * doc/homepage.ms: Reduce title size. + * doc/groff.texinfo: Fix documentation of .t register. + Fix handling of colon. + Fix `\' vs. `\\'. + + * src/roff/troff/input.cc (exit_troff): Emit LAST_PAGE_EJECTOR + only if page length is positive to avoid a loop. + + * tmac/an-old.tmac (ne): Increase page length to avoid problems with + tbl. + +2002-04-02 P. Alejandro Lopez-Valencia <dradul@yahoo.com> + + * src/include/nonposix.h, src/roff/groff/pipeline.c: + s/__CYGWIN32__/__CYGWIN__/. + +2002-03-28 Gaius Mulley <gaius@glam.ac.uk> + + * doc/gnu.xpm: New image contributed by Emily Mulley. + * doc/Makefile (gnu.eps, gnu.png): Use pnmdepth. + (homepage.html): Be dependent on gnu.eps. + * doc/homepage.ms: Updated to new image. + + * src/devices/grohtml/post-html.cc (html_printer): New member + `sbuf_prev_hpos'. + (html_printer::flush_sbuf, html_printer::set_char): Set it. + (html_printer::sbuf_continuation): Use it. + +2002-03-28 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/getopt.c: Updated to latest version. + + * tmac/README: More on hyphen.tex license. + +2002-03-26 Larry Kollar <kollar@alltel.net> + + * doc/groff.texinfo: Add documentation of most missing requests. + +2002-03-25 Werner LEMBERG <wl@gnu.org> + + Add three glyphs `t+-', `tmu', and `tdi' which are textual variants + of `+-', `mu', and `di', respectively. + + * font/devascii/R.proto, font/devutf8/R.proto, + font/devlatin1/R.proto, font/devhtml/R.proto, + font/devcp1047/R.proto, font/devlpb/*: Add them. + * font/devps/generate/textmap: Ditto. + * font/devps/*: Regenerated. + * font/devlj4/generate/text.map: Add them. + * font/devlj4/*: Regenerated. + * font/devdvi/generate/tc.map: Use them. + * font/devdvi/generate/texsy.map: Add them. + * font/devdvi/*: Regenerated. + * font/devX*/*: Regenerated. + + * tmac/latin1.tmac, tmac/cp1047.tmac, tmac/tty.tmac, + tmac/tty-char.tmac: Updated. + + * NEWS, man/groff_char.man: Updated. + +2002-03-24 Werner LEMBERG <wl@gnu.org> + + * tmac/dvi.tmac, tmac/X.tmac, tmac/ps.tmac, tmac/html.tmac, + tmac/lj4.tmac, tmac/tty.tmac: Replace most `.char' with `.fchar'. + * tmac/ec.tmac: Remove `.rchar' calls (no longer necessary since + we use `.fchar' in dvi.tmac. + * tmac/dvi.tmac: Improve definition of \[Fo] and \[Fc]. + * tmac/Xps.tmac: Simplify some char definitions. + Add definition for \[f/]. + * man/groff_char.man: Updated for new X.tmac. + + * tmac/README: New file. + +2002-03-23 Phil Lobbes <phil@perkpartners.com> + + * Makefile.comm (.y.o): New rule for make on Solaris 2.5.1 -- the + internal .y.o rule took precendence over the .y.cc rule, compiling + the yacc files with gcc instead of g++. + +2002-03-23 Werner LEMBERG <wl@gnu.org> + + * tmac/dvi.tmac: Add replacement font for `CB'. + + * tmac/doc.tmac: s/request/macro/ in messages. + (doc-generic-macro): Improve error message. + * tmac/groff_mdoc.man: Minor improvements. + +2002-03-22 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Document possible conflict between `tr' and + `char' requests. + +2002-03-21 Werner LEMBERG <wl@gnu.org> + + Improve handling of hyphenation patterns. It is now possible to + use most of TeX's pattern files unmodified. To make the process + more flexible, a new request `hpfcode' has been added which + provides a character code mapping for the `hpf' request. See + comment before hpf_getc() for more details. + + * src/roff/troff/env.cc (insert_hyphenation, hpf_getc): New + functions. + (read_patterns_file): Additional parameter for exception dictionary. + Extended to recognize \pattern, \hyphenation, and \endinput. + (do_hyphenation_patterns_file): Updated. + * src/roff/troff/env.h (hpf_code_table): New extern. + + * src/roff/troff/input.cc (hpf_code_table): New array. + (init_hpf_code_table, hyphenation_patterns_file_code): New + functions. + (hyphenation_code): Handle translation from `trin' correctly. + (main, init_input_requests): Updated. + (charinfo::set_translation): Handle hyphenation code also. + + * src/roff/troff/charinfo.h (charinfo::get_translation_input): New + inline function. + + * src/roff/troff/env.cc (WORD_MAX): Reduced to 256 since `unsigned + char' is used for offsets in hyphenation exceptions. + + * tmac/hyphen.us: Replace with contents of unmodified `hyphen.tex'. + + * NEWS, man/groff_diff.man, man/groff.man: Document it. + +2002-03-20 Larry Kollar <kollar@alltel.net> + + * doc/groff.texinfo: Add documentation for `hpfa' and `trin' + requests. + +2002-03-18 Werner LEMBERG <wl@gnu.org> + + * tmac/html.tmac: Fix serious typo. + +2002-03-17 Larry Kollar <kollar@alltel.net> + + * doc/groff.texinfo: Add documentation for `writec' request. + +2002-03-17 Werner LEMBERG <wl@gnu.org> + + Added request `hpfa' to append hyphenation patterns. + + * src/roff/troff/env.cc (hyphen_trie::read_patterns_file): Add + parameter `append'. + (hyphenation_patterns_file): Renamed to... + (do_hyphenation_patterns_file): This. + (hyphenation_patterns_file, hyphenation_patterns_file_append): New + functions. + (init_hyphen_requests): Updated. + * NEWS, man/groff.man, man/groff_diff.man: Document it. + +2002-03-16 Werner LEMBERG <wl@gnu.org> + + Added request `writec' in analogy to `tmc'. + + * src/roff/troff/input.cc (write_request): Renamed to... + (do_write_request): This. + Added one parameter. + (write_request, write_request_continue): New functions. + (init_input_requests): Updated. + * NEWS, man/groff.man, man/groff_diff.man: Document it. + + * font/devdvi/DESC.in (sizes): Allow all sizes in the range + 5-10000pt. + * NEWS: Document it. + +2002-03-15 Werner LEMBERG <wl@gnu.org> + + * man/groff.man: Add writem request. + + Add request `trin' (translate input) to make `.asciify' work + correctly. This is necessary since `charXXX' entity names are no + longer hardcoded in font definition files. + + * src/roff/troff/charinfo.h (charinfo): Add `asciify_code' and + `translate_input' members. + (charinfo::set_asciify_code, charinfo::get_asciify_code, + charinfo::set_translation_input): New methods. + (charinfo::set_translation): Add third argument. + * src/roff/troff/input.cc (charinfo:set_translation): Set + `asciify_code'. + (do_translate): Add second argument. + (translate_input): New function. + (init_input_requests): Updated. + * src/roff/troff/node.cc (glyph_node::asciify, + composite_node::asciify): Use `get_asciify_code'. + + * tmac/cp1047.tmac, tmac/latin1.tmac: Use `trin'. + + * NEWS, man/groff.man, man/groff_diff.man: Updated. + +2002-03-14 Larry Kollar <kollar@alltel.net> + + * doc/groff.texinfo: Improve documentation of .RS and .RE. + +2002-03-14 Werner LEMBERG <wl@gnu.org> + + Add a new request `sizes' similar to the `sizes' command in DESC + files. + + * src/roff/troff/env.cc (override_sizes): New function. + (init_env_requests): Use it. + * src/roff/troff/token.h: Export `read_string'. + * NEWS, man/groff_diff.man, man/groff.man: Document it. + +2002-03-12 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: More fixes for texinfo 4.1 and higher. + +2002-03-10 Werner LEMBERG <wl@gnu.org> + + * tmac/pspic.tmac: Add support for -Tdvi. + * tmac/dvi.tmac: Include pspic.tmac. + * src/devices/grodvi/grodvi.man: Document it. + * NEWS: Updated. + + * font/devlj4/generate/Makefile: Fix URL of metric files. + +2002-03-09 Werner LEMBERG <wl@gnu.org> + + * PROBLEMS: The static constructor bug has been fixed in z/OS V1R3. + +2002-03-09 Larry Kollar <kollar@alltel.net> + + * tmac/groff_ms.man: Add documentation for RS and RE macros. + +2002-03-08 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Fixes for texinfo 4.1. + +2002-03-07 Werner LEMBERG <wl@gnu.org> + + * src/include/lib.h: Include getopt.h if groff-getopt.h can't be + included. + Handle CYGWIN properly. + +2002-03-07 Paco Andrés Verdú <pandres@dragonet.es> + + * font/devlbp/Makefile.sub (DEVFILES): Add some missing fonts. + * tmac/lbp.tmac: Add some font translations. + +2002-03-02 Werner LEMBERG <wl@gnu.org> + + * font/devcp1047/R.proto, font/devlatin1/R.proto, + font/devhtml/R.proto: Remove `charXXX' entries. + * tmac/tty.tmac, tmac/html.tmac: Load latin1.tmac or cp1047.tmac + where appropriate. + + * font/devlj4/generate/text.map: Remove `charXXX' entries. + * font/devlj4/*: Regenerated all font definition files. + * tmac/lj4.tmac: Load latin1.tmac. + + * src/utils/hpftodit/hpftodit.cc (do_file): Partially undo change + from 2000-06-17: LJ4 metric files are *not* text files. + + * tmac/troffrc, tmac/dvi.tmac, tmac/ps.tmac: Don't use .T string + register to test for EBCDIC. + +2002-03-01 Werner LEMBERG <wl@gnu.org> + + * src/utils/afmtodit/afmtodit.pl: Skip comment lines in encoding + files (as grops already does). + * src/utils/afmtodit/afmtodit.man: Document comment lines in map + files. + * src/devices/grops/grops.man: Document comment lines in encoding + files. + + * tmac/cp1047.tmac: New file. + * tmac/dvi.tmac, tmac/tty-char.tmac: Use it. + * tmac/ps.tmac: Load latin1.tmac or cp1047.tmac. + * tmac/Makefile.sub (NORMALFILES): Updated. + + * tmac/ec.tmac: Don't load latin1.tmac again. + + * font/devps/generate/lgreekmap, font/devps/generate/symbolchars, + font/devps/generate/dingbats.map, + font/devps/generate/dingbats.rmap, font/devps/text.enc, + font/devps/generate/Makefile (symbolmap): Add header comment. + * font/devps/generate/textmap: Ditto. + Remove `charXXX' entries. + * font/devps/symbolmap: Regenerated. + * font/devps/*: Regenerated all font definition files. + +2002-02-28 Werner LEMBERG <wl@gnu.org> + + Add color support to grodvi (for drawing colors are currently + translated to gray values). + + * src/devices/grodvi/dvi.cc (FILL_MAX): Removed. + (dvi_printer): Add `cur_color' member. + (dvi_printer::set_color): New function. + (draw_dvi_printer): Remove `fill'. + (draw_dvi_printer::fill_next): Pass environment as parameter. + Update code for new color support translated to gray. + (dvi_printer::set_char): Updated. + (dvi_printer::begin_page, dvi_printer::end_page): Handle color + changes crossing the page border. + (dvi_printer::draw): Updated. + Remove cases `f' and `F'. + * tmac/dvi.tmac: Add color definitions. + * NEWS, src/devices/grodvi/grodvi.man: Updated. + + * tmac/an-old.tmac (R): Make this a macro to emit a warning if + used incorrectly. + + * aclocal.m4 (GROFF_NEED_DECLARATION): Use test similar to recent + versions of autoconf. + * configure: Updated. + + * doc/homepage.ms: Use `.blm'. + * tmac/www.tmac (www-depth): New auxiliary variable. + (www-pop-level): Don't issue HTML tag. + (ULS, ULE, LI): Use absolute indentation. + + * src/devices/grops/ps.cc (ps_printer::begin_page, + ps_printer::end_page): Switch forth and back to default color while + starting a new page. + +2002-02-27 Werner LEMBERG <wl@gnu.org> + + Add EC and TC fonts to devdvi. + + * src/utils/tfmtodit/tfmtodit.man: Document patching of exbase.mf. + * font/devdvi/generate/cork.map: Renamed to... + * font/devdvi/generate/ec.map: This. + Remove entry for `aq'. + * font/devdvi/generate/tc.map: New file. + * font/devdvi/generate/Makefile (*EC, *TC): New creation rules for + EC and TC fonts. + (FONTS): Updated. + * font/devdvi/*EC, font/devdvi/*TC: New font definition files. + * font/devdvi/Makefile.sub (DEVFILES): Updated. + * tmac/ec.tmac: New file. + * tmac/Makefile.sub (NORMALFILES): Updated. + * NEWS, src/devices/grodvi/grodvi.man: Updated. + * man/groff_char.man: Check `ECFONTS' register. + + * font/devdvi/{TR,TI,TB,TBI,HR}: Fix `name' field. + +2002-02-26 Werner LEMBERG <wl@gnu.org> + + * font/devdvi/generate/*.map: Remove all `charXXX' entries. + * font/devdvi/generate/cork.map: Add 'y and 'Y. + * font/devdvi/*: Updated. + * tmac/dvi.tmac: Formatting. + + Add font `HBI' for the dvi output. + Add support for font families `T' and `H'. + + * font/devdvi/HBI: New file. + * font/devdvi/B: Renamed to ... + * font/devdvi/TB: This. + * font/devdvi/BI: Renamed to ... + * font/devdvi/TBI: This. + * font/devdvi/I: Renamed to ... + * font/devdvi/TI: This. + * font/devdvi/R: Renamed to ... + * font/devdvi/TR: This. + * font/devdvi/H: Renamed to ... + * font/devdvi/HR: This. + * font/devdvi/Makefile.sub (DEVFILES): Updated. + * font/devdvi/generate/Makefile (HBI): New rule. + (FONTS): Updated. + (R, I, B, BI, H): Renamed to ... + (TR, TI, TB, TBI, HR): This, respectively. + (srcdir): Fixed. + * NEWS, src/devices/grodvi/grodvi.man: Updated. + * font/devdvi/DESC.in: Don't mount R, I, B, BI, and CWI. + Add `styles' and `family' keywords. + * tmac/dvi.tmac: Alias `H' to `HR'. + Add some fspecial requests for italic fonts. + Add TR and TI as special. + Add support for `_' with font CWI. + + * src/roff/troff/number.cc (parse_expr): Add missing `break' for + operator `:'. Until now, the expression `0:1' would return 2 + instead of 1. + +2002-02-25 Werner LEMBERG <wl@gnu.org> + + * man/groff_char.man: Added some missing PS glyph names (from the + Adobe Glyph List). + * font/devps/generate/textmap, font/devps/symbolmap: Add + `arrowupdn'. + + * doc/groff.texinfo: Minor additions and fixes. + * man/groff_diff.man: Remove documentation of fp request. This + is already covered in the original troff manual. + Updated to be consistent with other doc files. + * NEWS: Updated. + +2002-02-24 Werner LEMBERG <wl@gnu.org> + + * aclocal.m4 (GROFF_EBCDIC): Don't include `font/devutf8' in + TTYDEVDIRS. + Define new variable OTHERDEVDIRS (containing `font/devlj4 + font/devlbp' if not EBCDIC). + * Makefile.in (TTYDEVDIRS): Always include `font/devutf8'. + (OTHERDEVDIRS): New variable. + (MDEFINES, DEVDIRS, ALLDIRS, DISTDIRS): Updated. + * configure: Regenerated. + + * NEWS, src/devices/grotty/grotty.man: Updated. + +2002-02-23 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (do_overstrike, do_bracket, + get_line_arg): Honour input level. + + Add new symbol `mc' corresponding to U+00B5 MICRO SIGN. + + * font/*/*: Implement it in all font files. + * font/devps/generate/textmap, font/devps/generate/symbolchars, + * font/devps/symbolmap: Updated. + * font/devlj4/generate/text.map: Updated. + * font/devdvi/generate/CompileFonts (sizes): Add LaTeX sizes. + * font/devdvi/generate/texmi.map: Updated. + + * font/devutf8/R.proto: Remove all `charXXX' entries. + * font/devutf8/NOTES: Updated. + + * font/devX*/*: Regenerated with xtotroff, using fonts from XFree86 + version 4.1.0. + + * tmac/latin1.tmac, tmac/psold.tmac, tmac/tty-char.tmac: Updated. + + * NEWS, man/groff_char.man: Updated. + +2002-02-21 Phil Lobbes <phil@perkpartners.com> + + * src/include/lib.h [HAVE_SNPRINTF]: Include stdarg.h. + +2002-02-20 Ralph Corderoy <ralph@inputplus.demon.co.uk> + + * src/roff/grog/grog.pl: Fix computation of $refer. + +2002-02-19 Werner LEMBERG <wl@gnu.org> + + * src/include/lib.h [!HAVE_SNPRINTF]: Add declarations for + `snprintf' and `vsnprintf'. + + * src/include/htmlindicate.h: Renamed to... + * src/include/htmlhint.h: This. + * src/include/Makefile.sub: Updated. + * src/preproc/eqn/main.cc: Updated. + +2002-02-18 Werner LEMBERG <wl@gnu.org> + + * man/roff.man, man/groff_out.man, man/groff.man, + man/groff_diff.man, man/ditroff.man, src/roff/groff/groff.man, + src/roff/troff/troff.man: Updated to latest changes in www.tmac. + + * win32-diffs: Updated. + +2002-02-17 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile (clean): Add *.eps. + (MEMACROS): Removed. + (TFLAG): New variable. + (TROFF): Use it. + Add -ww. + (GROFF): Use TFLAG, FFLAG, -U, -p, -e, -t, and -ww. + (.me.dit): Fixed. + (.ms.html, .ms.ascii, .ms.ps, homepage.html): Simplify. + + * tmac/www.tmac: Use dummy diversion while resetting and disabling + `.tl'. + * tmac/e.tmac: Inserted some more `\"' to remove warnings if used + unstripped. + * src/roff/troff/troff.man: Fix order of parameter description. + + * NEWS: Updated. + +2002-02-16 Gaius Mulley <gaius@glam.ac.uk> + + Simplify image handling for grohtml. + Fix <p> bug. + + * src/devices/grohtml/html-text.cc (DEBUGGING): Don't undefine but + comment out. + (html_text::dump_stack): Don't emit newline while debugging. + (html_text::do_push) [DEBUGGING]: Print more info. + (html_text::check_emit_text): Fix handling of <p>. + * src/devices/grohtml/html.h: Updated. + * src/devices/grohtml/output.cc (FPUTC, FPUTS, PUTC): New macros, + replacing `fputc', `fputs', `putc'. If DEBUGGING is defined, they + send its data to stderr also. + Update all callers. + (simple_output::space_or_newline) [DEBUGGING]: Removed. + * src/devices/grohtml/post-html.cc (html_printer::do_links, + html_printer::html_printer): Remove `DEBUGGING' conditionals. + + * src/include/html-strings.h (HTML_IMAGE_{CENTERED,LEFT,RIGHT,END}): + Removed. + * src/libs/libgroff/htmlhint.cc (is_in_graphic_start, + is_inline_image): Removed. + (html_begin_suppress, html_end_suppress): Don't take a parameter. + (graphic_start, graphic_end): Removed. + * src/include/htmlindicate.h: Updated. + * src/preproc/html/pre-html.cc (DEBUG_HTML): Removed. + (macroset_template): New global variable. + (makeFileName): Use `macroset_template'. + (write_end_image): Don't take a parameter. + Don't emit newline. + (write_start_image: Don't emit newline. + (char_buffer::write_upto_newline): Updated. + (char_buffer::skip_to_newline): Renamed to ... + (char_buffer::skip_until_newline): This. + Fix code. + (char_buffer::write_file_troff, char_buffer::write_file_html): + Simplified. + (createAllPages, createImage) [DEBUGGING]: Handle `debug' flag. + (removeAllPages): Remove `DEBUGGING' conditionals. + (addRegDef, dump_args): New functions. + (char_buffer::do_html, char_buffer::do_image): Handle + `www-image-template' command line variable. + Add more debugging code. + (addps4html): Removed. + (removeTempFiles) [DEBUGGING]: Handle `debug' flag. + + * src/preproc/eqn/main.cc: Include `ctype.h'. + (suppress_html): Removed. + (do_file): Updated. + (inline_equation): Use `html_begin_suppress' and + `html_end_suppress'. + * src/preproc/pic/troff.cc: Don't include `htmlindicate.h'. + (troff_output::start_picture, troff_output::finish_picture): + Updated. + * src/preproc/tbl/main.cc: Don't include `htmlindicate.h'. + (process_input_file): Updated. + + * src/roff/troff/div.cc (page_number): Set page number only if the + `ps4html' register isn't defined. + * src/roff/troff/input.cc (image_no): New external variable. + (do_suppress): Use it. + * src/roff/troff/node.h (suppress_node::image_id): New member. + * src/roff/troff/node.cc (image_no): Remove `static' keyword. + (suppress_node::suppress_node): Initialize `image_id' member. + (suppress_node::same): Handle `image_id' also. + (suppress_node::copy): Updated. + (last_image_id): New global variable. + (suppress_node::tprint): Use it. + + * tmac/an-old.tmac (TS, TE, EQ, EN): Use HTML-IMAGE and + HTML-IMAGE-END. + * tmac/pspic.mac (PSPIC): Fix html support. + * tmac/s.tmac (@EQ, @EN, @TS, TE, PS, PE): Ditto. + * tmac/www.tmac (www-image-template): Set up. + (HTMLINDEX): Renamed to... + (HX): This. + (BODYCOLOR): Renamed to... + (BCL): This. + (BACKGROUND): Renamed to... + (BGIMG): This. + (URL): Change order of parameters for consistency. + (MAILTO): Renamed to... + (MTO): This. + (IMAGE, PNG-IMAGE, MARGIN-PNG-IMAGE): Renamed to... + (IMG, PIMG, MPIMG): This. + (HTML-H-BEGIN, HTML-H-END): Renamed to... + (HnS, HnE): This. + (LINKS): Renamed to... + (LK): This. + (LINE): Renamed to... + (HR): This. + (NO-AUTO-RULE): Renamed to... + (NHR): This. + (HTML-TL): Renamed to... + (HTL): This. + (UL-BEGIN, UL-END): Renamed to... + (ULS, ULE): This. + (DROPCAP): Renamed to... + (DC): This. + (TS, TE, EQ, EN): Provide default definitions. + (www-make-unique-name): Updated. + (HTML-IMAGE-INLINE): Fix typo. + * tmac/groff_www.man: Updated. + + * doc/Makefile (homepage.html): Add option -r to grohtml. + Use shortened image name. + * doc/groff.texinfo: Updated info on grohtml strings and macros. + * doc/homepage.ms: Updated and extended. + +2002-02-14 Werner LEMBERG <wl@gnu.org> + + Don't use `CSI 39 m' and `CSI 49 m' but `CSI 0 m'. + + * src/devices/grotty/tty.cc (SGR_DEFAULT_COLOR, + SGR_BACK_DEFAULT_COLOR): Replaced with ... + (tty_printer::put_color): Use it. + (ttr_printer::end_page): Simplify. + +2002-02-13 Werner LEMBERG <wl@gnu.org> + + * tmac/groff_tmac.man: Moved to... + * man/groff_tmac.man: This place. + * tmac/Makefile.sub, man/Makefile.sub: Updated. + +2002-02-12 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/Makefile.sub (snprintf.o): Don't use + $(COMPILE.c) to not include groff's assert.h. + + * src/drivers/grotty/tty.cc (main): Add GROFF_NO_SGR environment + variable. + * NEWS, src/drivers/grotty/grotty.man: Document it. + +2002-02-11 Werner LEMBERG <wl@gnu.org> + + * src/libs/snprintf/snprintf.c: Updated to latest version + (2002-02-11). + + * src/roff/grog/grog.pl (process): Fix handling of `.['. We now + test whether there is `.]' also. + Don't check for spaces after `.['. + * src/roff/grog/grog.sh: Do the same. + +2002-02-10 Werner LEMBERG <wl@gnu.org> + + Illegal -> Invalid. + + * src/libs/libgroff/illegal.cc: Renamed to ... + * src/libs/libgroff/invalid.cc: This. + (illegal_char_table): Renamed to ... + (invalid_char_table): This. + * src/libs/libgroff/Makefile.sub: Updated. + * win32-diffs: Updated. + + * doc/groff.texinfo, src/devices/grops/psrm.cc (ps_get_line), + src/libs/libdriver/input.cc (fatal_command, parse_color_command, + parse_x_command), src/libs/libgroff/font.cc (text_file::next, + font::load), src/preproc/eqn/main.cc (read_line, main), + src/preproc/eqn/lex.cc (file_input::read_line), + src/preproc/pic/lex.cc (file_input::read_line, + simple_file_input::get, simple_file_input::peek), + src/preproc/pic/main.cc (top_input::get, top_input::peek), + src/preproc/pic/pic.man, src/preproc/refer/main.cc + (input_stack::push_file), src/preproc/refer/refer.cc (do_file, + do_bib), src/preproc/tbl/main.cc (table_input::get), + src/preproc/grn/grn.man, src/preproc/grn/main.cc (interpret), + src/roff/troff/input.cc (file_iterator::fill, file_iterator::peek, + do_zero_width, read_request, encode_char, ps_get_line, + transparent_file, get_char_for_escape_name, transparent_translate, + asciify, input_char_description, read_string, set_string), + src/roff/troff/env.cc (environment::add_html_tag), + src/roff/troff/troff.man, tmac/e.tmac (`@(', `(f'): Do it. + + * src/include/lib.h: Updated. + + * src/preproc/eqn/eqn.cc: Removed. + + * NEWS: Updated. + + * src/preproc/grn/hdb.cc (DBRead): Fix fscanf() fields. + +2002-02-09 Werner LEMBERG <wl@gnu.org> + + * doc/gnu.xpm: New image. + * doc/Makefile (DOCS): Add homepage.ps. + Add rules for converting xpm->png and xpm->eps. + Use `gnu.{xpm,eps}' as image names. + * doc/homepage.ms: Updated. + +2002-02-09 Gaius Mulley <gaius@glam.ac.uk> + + * tmac/www.tmac (www-error): New macro, replacing calls to `@error'. + (IMAGE): Change image position parameters to `-L', `-R', and `-C'. + Remove calls to `B1' and `B2' + (PNG-IMAGE): New macro for inclusion of images in PNG format. + (www-left-ll-trap, www-left-po-trap, www-right-ll-trap): New + auxiliary variables for MARGIN-PNG-IMAGE. + (www-finish-left-po, www-finish-right-ll, www-finish-left-ll): New + auxiliary macros for MARGIN-PNG-IMAGE. + (MARGIN-PNG-IMAGE): New macro to put an image in PNG format into + the margin. + (www-heading-no): New auxiliary variable for HTML-H-{BEGIN,END}. + (HTML-H-BEGIN, HTML-H-END): New macros to begin and end a heading. + (DROPCAP): New macro to produce dropcap characters. + (www-do-image): Renamed back to... + (HTML-DO-IMAGE): This. + Updated all callers. + + * doc/Makefile (gnubw.eps): Updated. + * doc/homepage.ms: Updated. + +2002-02-08 Werner LEMBERG <wl@gnu.org> + + * doc/pic.ms: Fixed typos (\(*tx -> \*(tx). + Added `linethick' to table in section `Style Variables'. + +2002-02-08 Gaius Mulley <gaius@glam.ac.uk> + + * src/libs/libdriver/input.cc (get_extended_arg): Fix conditional. + +2002-02-07 Werner LEMBERG <wl@gnu.org> + + Adding options -C (compatibility mode) and -c (grotty's old output + scheme) to nroff. + + * src/roff/nroff/nroff.sh: Implement it. + Remove `-Wall'. + * NEWS, src/roff/nroff/nroff.man: Updated. + + * PROBLEMS: Document bison 1.32 bug. + + Some fixes to make groff compile on z/OS 1.2 UNIX (was OS/390). + + * src/roff/troff/node.cc (make_tfont): Define it earlier. + * src/roff/troff/div.h: Add prototype for `end_diversions'. + * src/roff/troff/input.cc: Add prototype for `process_input_stack'. + * src/roff/troff/env.h: Add prototype for `title'. + + Adding EBCDIC support to grotty. + + * src/devices/grotty/tty.cc (CSI): New macro. + (SGR_*, tty_printer::put_color): Use it. + +2002-02-06 Werner LEMBERG <wl@gnu.org> + + Implementing color support in grotty. The new switch -c activates + the old drawing scheme, disabling color at the same time. The new + switch `-i' selects italic instead of underlining (SGR only). + + * src/devices/grotty/tty.cc (putstring): New define instead of + `fputs'. Updated all callers. + (old_drawing_scheme): New global variable. + (COLOR_CHANGE): New enum value. + (SGR_*): New defines containing color handling escape sequences. + (TTY_MAX_COLORS, DEFAULT_COLOR_IDX): New defines. + (glyph): New members `back_color_idx' and `fore_color_idx'. + (glyph::order): Add COLOR_CHANGE. + (tty_printer): New members `cur_fore_idx', `curr_back_idx', + `is_underline', `is_bold', `cu_flag', `tty_colors'. + New methods `make_underline', `make_bold', `color_to_idx', + `change_color', `put_color'. + (cu_flag): Moved into `tty_printer' class. + (tty_printer::tty_printer): Initialize colors. + (tty_printer::add_char, tty_printer::set_char, tty_printer::special, + tty_printer::draw, tty_printer::end_page): Handle colors also. + (main): Add options `-c' and `-i'. + (usage): Updated. + * NEWS, src/devices/grotty/grotty.man: Updated. + + * src/include/errarg.h (errarg): Add support for `unsigned int'. + * src/libs/libgroff/errarg.c: Implement it. + + * src/include/printer.h (printer): Add `change_color' method + (currently used by grotty only). + * src/libs/libdriver/printer.cc: Implement it. + * src/libs/libdriver/input.cc (parse_D_command, do_file): Add + call to `pr->change_color'. + + * src/roff/troff/node.cc (troff_output_file::fill_color, + troff_output_file::glyph_color): Call `do_motion'. + + * tmac/tty.tmac: Add color definitions. + + * src/roff/groff/groff.man: Minor fixes. + +2002-02-05 Bernd Warken <bwarken@mayn.de> + + * src/libs/libdriver/input.cc: Introduce `EnvInt' typedef and use + it. This is a preparation for future changes. + +2002-02-05 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (process_input_stack): Fix the case + where leading spaces are followed by \f or \s; previously, an + incorrect space width has been used. + + * doc/roff.man (quoted_char): Fix argument. + (comment): Define string. + +2002-02-04 Larry Kollar <kollar@alltel.net> + + * doc/groff.texinfo: More fixes. + +2002-02-04 Werner LEMBERG <wl@gnu.org> + + * src/preproc/eqn/box.cc (output_string): Don't use \\*[...]. + * src/preproc/eqn/main.cc (do_file, inline_equation): Call + `restore_compatibility' before `output_string' -- the LINE_STRING + register now already contains proper switches from and to + compatibility mode. + + * man/groff_char.man: Add Euro symbol. + * man/groff_diff.man: Improve documentation of `.am1' and `.as1'. + * tmac/tty.tmac: Add `EUR' as replacement for `eu' and `Eu'. + * doc/groff.texinfo (Defstr*): Print strings with full syntax. + Other minor fixes. + + * doc/Makefile (.SUFFIXES, .texinfo.pdf, clean): Add support for + texinfo->pdf. + (.texinfo.html): Add support for texinfo->html. + +2002-02-03 Werner LEMBERG <wl@gnu.org> + + Added three new requests `ds1', `as1', and `ami'. The former two + are equivalent to `ds' and `as' with the difference that + compatibility mode is saved on entry, switched off during string + expansion, and restored on exit. The latter is the pendant to `dei' + for `am'. + + (do_define_string): Use `define_mode' and `calling mode'. + Insert COMPATIBLE_SAVE and COMPATIBLE_RESTORE at the beginning and + end of string, respectively. + (define_string, append_string): Use `calling_mode'. + (define_nocomp_string, append_nocomp_string, + define_string_indirect): New functions. + (init_input_requests): Updated. + * NEWS, man/groff_diff.man, man/groff.man: Document it. + + * src/preproc/eqn/box.cc (box::top_level, box::extra_space): Use + `as1' for assigning LINE_STRING (this is `10' usually). Sun's + mm macro package accesses this string register directly. + * src/preproc/eqn/main.cc (inline_equation): Use `as1'. + + * tmac/trace.tmac: Trace calls to `am' also. Make it work in + compatibility mode. + +2002-02-02 Larry Kollar <kollar@alltel.net> + + * doc/groff.texinfo, tmac/groff_ms.man: More fixes. + +2002-01-31 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac (I): Use \, and \/ to improve spacing. + +2002-01-31 Bernd Warken <bwarken@mayn.de> + + * src/devices/grolbp/lbp.cc (main): Delete `pr'. + * man/groff_out.man: Revised and updated. + +2002-01-30 Bernd Warken <bwarken@mayn.de> + + * src/libs/libdriver/input.cc [USE_ENV_STACK]: New macro to comment + out the unused `{' and `}' commands. Undefined by default. + (IntArray): Make `data' private. + (IntArray::operator[], IntArray::get_data, IntArray::len): Use these + new methods instead. + (skip_line_D, skip_to_end_of_line): New functions. + (get_D_fixed_args): Use `skip_line_D'. + Changed to handle dummy odd arguments by ... + (get_D_fixed_args_odd_dummy): This new function. + (get_D_variable_args): Split some code into ... + (get_possibly_integer_args): This new function. + (send_draw): Use more `const'. + (delete_current_env): New function. + (position_to_end_of_args): Use `size_t'. + Updated. + (send_draw): Updated. + (parse_D_command): Handle `c', `C', and `t' better. + Updated. + (do_file): Updated. + +2002-01-29 Werner LEMBERG <wl@gnu.org> + + * NEWS: Revised. + * doc/groff.texinfo: Introduce @Def...List, @Def...Item, and + @Def...ListEnd which replaces @Def...x. This is necessary to get + proper HTML output -- see the comment in the file for more + information. + Updated all calls. + +2002-01-29 Gaius Mulley <gaius@glam.ac.uk> + + Fixes to make color changes of 2002-01-21 work with grohtml. + + * src/devices/grohtml/post-html.cc (style): Updated. + (html_printer): Remove unused methods. + (html_printer::do_font, html_printer::draw, html_printer::set_char, + html_printer::special): Updated. + * src/devices/grohtml/html-text.cc (debugStack, turnDebug, + html_text::dump_stack_element, html_text::dump_stack) [DEBUGGING]: + Added some debugging code. + (html_text::start_tag): Updated. + (html_text::do_push): New method. + (html_text::push_para): Call it. + Add method for handling color. + (html_text::do_color): Updated. + (html_text::shutdown): Handle color. + * src/devices/grohtml/html-text.h (tag_definition): New member + `col'. + Updated. + +2002-01-28 Werner LEMBERG <wl@gnu.org> + + * tmac/ps.tmac, tmac/html.tmac: Fix compatibility mode issues. + +2002-01-27 Gaius Mulley <gaius@glam.ac.uk> + + Add two switches -a and -g to control the antialiasing bits for + text and graphics, respectively. + + * src/devices/grohtml/post-html.cc (main): Dummy code for `-a' and + `-g'. + * src/devices/grohtml/grohtml.man: Document them. + * src/preproc/html/pre-html.cc (MIN_ALPHA_BITS, MAX_ALPHA_BITS): + New macros. + (textAlphaBits, graphicAlphaBits, antiAlias): New global variables. + (setupAntiAlias): New function. + (createAllPages): Updated. + (scanArguments): Handle `-a' and `-g'. + (main): Call `setupAntiAlias'. + * NEWS: Updated. + +2002-01-27 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo (Def*): Call index function after deffn. + + * tmac/html.tmac: Call `nroff' request. + +2002-01-26 Larry Kollar <kollar@alltel.net> + + * tmac/groff_ms.man: Add some omissions. + +2002-01-25 Larry Kollar <kollar@alltel.net> + + * tmac/groff_ms.man: Typographical improvements. + +2002-01-25 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Updated version and copyright. + * src/devices/grops/grops.man: Updated. + + * tmac/groff_tmac.man: Fix `ig' macro. + + * tmac/an-old.tmac (ne): Redefine `ne' request to be a no-op in + nroff mode. + Use `.ne' unconditionally everywhere. + (TS): Only insert some vertical space. Doing a page break is no + longer necessary due to the redefinition of the `ne' request. + + * src/libs/libdriver/input.cc (parse_D_command): Don't emit a + warning for unknown subcommands but parse and pass them to the + device driver. + +2002-01-24 Werner LEMBERG <wl@gnu.org> + + * tmac/groff_www.man, NEWS: Fix typos. + +2002-01-21 Werner LEMBERG <wl@gnu.org> + + Complete revision of color support: + + Adapt programs to the new libdriver/input.cc. + + Color spaces are no longer converted to RGB but transferred as-is + in the troff intermediate output format. + + Handle default color gracefully. troff now supports a `default' + color (which can't be changed). + + grops will now use the proper color space functions if available. + + Update pic. + + Note that currently grohtml doesn't handle colors properly. This + has to be fixed. + + * src/libs/libgroff/itoa.c (UINT_DIGITS): New macro. + (ui_to_a): New function. + * src/include/lib.h: Updated. + + * src/include/color.h (color_scheme): Replace `NONE' with `DEFAULT'. + (color): Simplified; removed all `double' members and methods. + A new array `components' now holds the color parameters. + (color::is_default, color::get_components): New methods. + (color::operator==, color:operator!=): New. + (Red, Green, Blue, Cyan, Magenta, Yellow, Black, Gray): New macros + to make access to the `components' array more comprehensible. + * src/libs/libgroff/color.cc: Implement new color support. + (atoh): Small fixes. + (color::read_encoding): Simplified for new troff intermediate color + output format. + (default_color): New global variable. + + * src/roff/troff/input.cc (default_symbol): New global variable. + (lookup_color): Use it. + (default_black): Removed. + (do_glyph_color, do_fill_color): Simplified. + (define_color): Handle default color. + Improve warnings. + (do_if_request): Handle default color. + * src/roff/troff/env.cc (environment::environment): Initialize + colors with `default_color'. + * src/roff/troff/node.cc (troff_output_file::put): Add method + for `unsigned int'. + (troff_output_file::hex): Removed. + (troff_output_file::fill_color, troff_output_file::glyph_color): + Updated to include/color.h and libdriver/input.cc. + + * src/preproc/pic/object.cc (draw_arrow): New parameter to set + fill color properly (identically to the outline color). \D'f...' + doesn't work any more. + All function calls to it updated. + + * src/devices/grohtml/post-html.cc (html_printer::do_body, main): + Updated. + * src/devices/grohtml/html-text.cc (html_text::issue_color_begin): + Updated. + + * src/devices/grops/ps.cc (ps_output::put_color): New method. + (ps_printer::sbuf_color): Make a real member instead of pointer. + (ps_printer::fill_color, ps_printer::output_color): Removed. + (ps_printer::ps_printer): Updated. + (ps_printer::set_char): Ditto. + (ps_printer::set_color): Use various color schemes. + Use `put_color' method. + (ps_printer::flush_sbuf): Don't set color. + (ps_printer::fill_path): Take `environment' as parameter. + Simplify color handling. + (ps_printer::set_line_thickness): Renamed to ... + (ps_printer::set_line_thickness_and_color): This (and updated). + (ps_printer::set_color): Change second parameter from `complete' + to `fill' which better describes what it does. + (ps_printer::draw): Call `flush_sbuf' to output graphic commands + and text in the right order. + Updated. + Remove branches for `f' and `F'; this is handled by + libdriver/input.cc. + * src/devices/grops/ps.h: Updated. + * font/devps/prologue (FL): Redefined. + ({F,C}r,k,g: New color functions (with and without filling). + + * doc/pic.ms, src/preproc/pic/pic.man: Small fixes. + * man/groff_diff.man, man/groff.man, man/groff_out.man, + doc/groff.texinfo, NEWS: Updated. + +2002-01-20 Bernd Warken <bwarken@mayn.de> + + * src/libs/libdriver/input.cc: Completely rewritten. See comments + in this file for what has been changed. + +2002-01-19 Werner LEMBERG <wl@gnu.org> + + * test-groff: Fix GROFF_FONT_PATH. + * tmac/andoc.tmac: Add dummy macros for equation support -- eqnrc + is read before .TH or .Dd is parsed. + +2002-01-18 Gaius Mulley <gaius@glam.ac.uk> + + * src/libs/libgroff/geometry.cc (check_output_arc_limits): Fix + quadrant boundaries. + +2002-01-18 Werner LEMBERG <wl@gnu.org> + + * devices/grops/ps.cc: Aargh! Fix the fix of the incorrectly + applied last patch. + +2002-01-17 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc.common: Initialize %I register for the %I macro to + avoid (harmless) warning. + * tmac/doc.tmac (Bd): There is no reason to enforce -compact + when in the SYNOPSIS section. + +2002-01-17 Bruno Haible <haible@clisp.cons.org> + + * src/preproc/pic/lex.cc (get_token): Fix typo. + +2002-01-17 Werner LEMBERG <wl@gnu.org> + + * devices/grops/ps.cc: Fix incorrectly applied last patch. + +2002-01-17 Larry Kollar <kollar@alltel.net> + + * tmac/groff_ms.man: Completely rewritten. + +2002-01-16 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac (TS): Force break, inserting some vertical space. + +2002-01-15 Gaius Mulley <gaius@glam.ac.uk> + + * devices/grops/ps.cc (ps_printer::fill_path): Fix handling of + fill colors. + (ps_printer::draw): Ditto. + +2002-01-14 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/groff_mdoc.man: Minor fixes. + +2002-01-13 Werner LEMBERG <wl@gnu.org> + + * man/groff_out.man: Some fixes. + +2002-01-13 Gaius Mulley <gaius@glam.ac.uk> + + * doc/pic.ms: Fix typos. + +2002-01-12 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo, doc/groff.man: More on a printable backslash. + +2002-01-10 Werner LEMBERG <wl@gnu.org> + + * font/devutf8/R.proto, font/devhtml/R.prot: Add `Eu' and `eu' + symbols. + * NEWS: Updated. + +2002-01-09 Bernd Warken <bwarken@mayn.de> + + * man/groff_out.man: Revised. + * man/roff.man: Minor fixes. + * src/roff/troff/troff.man: Some reordering. + +2002-01-09 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac: Add dummy macros for equation support. + +2002-01-07 Werner LEMBERG <wl@gnu.org> + + doc/groff.texinfo: Fix documentation of glyph searching algorithm. + + * tmac/an-old.tmac: Revert change 2001-12-23. This breaks too many + man pages. + * tmac/groff_man.man: Small improvements. + +2002-01-07 Bernd Warken <bwarken@mayn.de> + + * man/groff_diff.man: Revised. + +2002-01-06 Werner LEMBERG <wl@gnu.org> + + * tmac/www.tmac: Remove extraneous backslash. + +2002-01-06 Bernd Warken <bwarken@mayn.de> + + * man/ditroff.man, src/roff/groff/groff.man, man/groff.man: Revised. + +2002-01-05 Werner LEMBERG <wl@gnu.org> + + Integrated groffer, contributed by Bernd Warken. + + * contrib/groffer/*: New. + * Makefile.in, NEWS: Updated. + +2002-01-04 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Added macros `@Defmpreg' and `@Defmpregx' for + registers defined in macro packages. + Revising the ms part. + +2002-01-04 Larry Kollar <kollar@alltel.net> + + * doc/groff.texinfo: Add documentation for ms macros. + +2002-01-02 Werner LEMBERG <wl@gnu.org> + + First step in adding PS support for the Euro symbol. `eu' is the + official Euro logo, `Eu' is a font-specific glyph variant. + + * font/devps/text.enc: Add `Euro' at position 9. + * font/devps/generate/textmap: Add `Euro' as symbol `Eu'. + * font/devps/symbolmap: Regenerated. + + * NEWS: Updated. + +2002-01-02 Bernd Warken <bwarken@mayn.de> + + * man/roff.man: Revised. + +2002-01-01 Bernd Warken <bwarken@mayn.de> + + * src/roff/groff/groff.man: Completely rewritten. + +2001-12-31 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile: Updated. + +2001-12-30 Werner LEMBERG <wl@gnu.org> + + * tmac/www.tmac: Make all names of internal macros/registers/strings + lowercase, and prepend `www-'. + Other minor changes. + * src/roff/troff/troff.man: Add preprocessor string at BOF. + +2001-12-30 Gaius Mulley <gaius@glam.ac.uk> + + Implement option `-b' in grohtml to set the HTML background colour. + + * src/devices/grohtml/post-html.cc (default_background): New global + variable. + (html_printer::html_printer): Initialize `background' to + `default_background'. + (main): Implement option `-b'. + (usage): Updated. + * src/preproc/html/pre-html.cc (scanArguments): Add dummy handling + of `-b' option. + * src/devices/grohtml/grohtml.man: Updated. + * doc/Makefile (.ms.html): Use `-b'. + * tmac/html.tmac: Don't set background color. + + Add new grohtml tag `.html-tl'. + + * src/devices/grohtml/post-html.cc (title_desc): Add `with_h1' + member variable. + (title_desc::title_desc): Updated. + (html_printer::troff_tag): Handle `.html-tl'. + (html_printer::write_title): Use `with_h1'. + * tmac/www.tmac (www-end-nowhere): New auxiliary macro. + (HTML-TL): New macro. + + Add support for unordered lists in HTML. + + * tmac/www.tmac (www-level): New auxiliary register. + (www-level1, www-level2, www-level3): New auxiliary strings. + (www-push-level, www-pop-level): New auxiliary macros + (UL-BEGIN, UL-END, LI): User macros for unordered lists. + + Miscellaneous. + + * src/preproc/html/pre-html.cc (DEFAULT_IMAGE_RES): Increase to 100. + (DEFAULT_VERTICAL_OFFSET): Removed. + (IMAGE_BOARDER_PIXELS): Set to 0. + (A4_LENGTH, A4_OFFSET, LETTER_LENGTH, LETTER_OFFSET): New macros. + (vertical_offset): Initialize with 0. + (gsPaper): New global variable. + (get_resolution): Scan for and return unsigned int. + (get_papersize): New function to get paper length from devps/DESC. + (determine_vertical_offset): New function. + (createAllPages): Produce gray-level images and use proper page + length. + (createImage): Use `-quiet' option of pnmcrop. + (addZ): Fix passing of `-Z'. + (scanArguments): Fix handling of `-o'. + (main): Call `determine_vertical_offset'. + * src/devices/grohtml/post-html.cc (html_printer::draw): Comment out + code for `l'. + + * src/libs/libgroff/tmpfile.cc (add_tmp_file): Fix buffer length. + * src/roff/troff/node.cc (troff_output_file::check_charinfo): Handle + glyph descenders properly. + + * doc/homepage.ms: Include `gnubw.eps'. + * doc/Makefile (gnubw.eps): New rule. + (homepage.html): Depend on `gnubw.eps'. + +2001-12-25 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (default_black): Fix return value. + +2001-12-24 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc-common (Dt): Change output of architecture strings. + Do some syntax cleanup. + * tmac/groff_mdoc.man: Updated. + +2001-12-23 Werner LEMBERG <wl@gnu.org> + + Adding an `itc' request (input line trap accepting \c). + + * src/roff/troff/env.h (environment): New member + `continued_input_trap'. + Make `do_input_trap' a friend function instead of `input_trap'. + * src/roff/troff/env.cc (environment::environment, + environment::copy): Updated. + (environment::newline): Implement it. + (do_input_trap): New function. + (input_trap): Call `do_input_trap'. + (input_trap_continued): New function. + (init_env_requests): Updated. + * src/roff/troff/TODO: Updated. + + * tmac/an-old.tmac (SH, SS, B, I, SM, SB, TP): Use `.itc' instead of + `.it'. + + * src/preproc/grn/hdb.cc (DBRead): Really chop after 127 characters. + +2001-12-22 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc-common, tmac/doc-syms: Small updates. + +2001-12-22 Colin Watson <cjwatson@debian.org> + + * tmac/an-old.tmac (an-p-footer): Set title length in environment 1. + +2001-12-22 Bernd Warken <bwarken@mayn.de> + + * MANIFEST: New file. + +2001-12-22 Werner LEMBERG <wl@gnu.org> + + * src/preproc/grn/grn.man: Updated. + +2001-12-22 Solar Designer <solar@openwall.com> + + * src/preproc/grn/hdb.cc (MAXSTRING_S): New macro. + (DBRead): Use it. + +2001-12-19 Werner LEMBERG <wl@gnu.org> + + Implement a fallback character request `.fchar'. + + * src/roff/troff/charinfo.h (charinfo): New flag `fallback'. + (is_fallback): New inline function. + * src/roff/troff/input.cc (do_define_character): New function. + (define_character): Call `do_define_character'. + (define_fallback_character): New function. + (init_input_requests): Add `fchar'. + (charinfo::charinfo): Updated. + (charinfo::set_macro): New argument to set `fallback' flag. + * src/roff/troff/node.cc (make_glyph_node, make_node, + node::add_char): Check `fallback' flag. + * NEWS, man/groff_diff.man, man/groff_man: Updated. + +2001-12-16 Werner LEMBERG <wl@gnu.org> + + * groff.texinfo: Document exact search algorithm for glyphs. + +2001-12-15 Werner LEMBERG <wl@gnu.org> + + * Makefile.cpg, Makefile.ccpg, Makefile.man: Add dummy file to + the left side of $(MANPAGES) rule to make it always non-empty. + +2001-12-14 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (default_black): Define default color + `black' if not yet defined. + +2001-12-13 Werner LEMBERG <wl@gnu.org> + + Implement new string-valued register `.fn' to return the current + real (internal) font name. + + * env.cc (environment::get_font_name_string): New function. + (init_env_requests): Add `.fn' register. + * env.h (environment): Updated. + * node.cc (font_info): Make `get_font_name' a friend. + (get_font_name): New function. + * node.h: Updated. + + * man/groff_diff.man, man/groff.man, NEWS: Updated. + +2001-12-12 Ralph Corderoy <ralph@inputplus.demon.co.uk> + + * src/preproc/eqn/main.cc (inline_equation): Fix typos. + +2001-12-12 Werner LEMBERG <wl@gnu.org> + + * tmac/groff_man.man, doc/groff.texinfo: There is no .R macro. + +2001-12-10 Gaius Mulley <gaius@glam.ac.uk> + + * man/groff_diff.man: Adding documentation for \O. + +2001-12-10 Werner LEMBERG <wl@gnu.org> + + * src/preproc/html/pre-html.cc (TROFF_COMMAND): Removed. + (scanArguments): Use PROG_PREFIX for the name of the troff binary. + +2001-12-09 Werner LEMBERG <wl@gnu.org> + + * man/roff.man: Revised. + * src/roff/groff/groff.man: Replace man page references with a + pointer to roff.man. + +2001-12-09 Bernd Warken <bwarken@mayn.de> + + * man/roff.man: Completely rewritten. + +2001-12-06 Ralph Corderoy <ralph@inputplus.demon.co.uk> + + * src/preproc/eqn/main.cc (inline_equation): Improve error message. + +2001-12-05 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (get_delim_file_name): Removed since no + longer used. + * src/devices/grohtml/post-html.cc (html_printer::html_printer): Fix + order of initializers. + * NEWS: Updated. + +2001-12-05 Gaius Mulley <gaius@glam.ac.uk> + + * doc/groff.texinfo: Fix documentation of \O. + + * src/devices/grohtml/html-text.cc (html_text::do_indent, + html_text::do_table, html_text::do_emittext, html_text::do_para): + Use `const' for first argument. + (html_text::do_table): Use cast. + * src/devices/grohtml/html-text.h: Updated. + * src/devices/grohtml/output.cc (simple_output::put_string): Add + method for `const string &s'. + * src/devices/grohtml/html.h: Updated. + * src/devices/grohtml/post-html.cc (MAX_STRING_LENGTH): Removed. + (ANCHOR_TEMPLATE): Modified. + (manufacture_headings): New global variable to handle `-h' option. + (is_subsection): Removed. + (char_buffer::add_string): Add `const' to first argument. + Protect against invalid string argument. + Add method for `const string &s'. + (text_glob): Completely redesigned. + (page): Use `const' for strings and remove string length variable. + (page::add_html): Removed. + (page::add_end_encode): New member function. + (to_unicode): Moved upwards. + (title_desc, header_desc): Updated. + (header_desc::write_headings): Updated to new ANCHOR_TEMPLATE + definition. + (html_printer::is_bold, html_printer::make_bold): New member + functions. + (html_printer::end_of_line): Updated. + (generate_img_src, html_printer::do_auto_image, + html_printer::do_title, html_printer::write_header, + html_printer::determine_header_level, html_printer::do_heading, + html_printer::do_linelength, html_printer::do_pageoffset, + html_printer::do_indentation, html_printer::do_tempindent, + html_printer::do_indentedparagraph, html_printer::do_break, + html_printer::flush_sbuf, get_html_translation, + html_printer::begin_page, html_printer::special): Rewritten to get + rid of static string length limit. + (html_printer::troff_tag): Added `.no-auto-rule'. + (html_printer::flush_globs): Small fix. + (html_printer::determine_space): Don't compute `space_width'. + (html_printer::translate_to_html): Renamed to ... + (html_printer::emit_html): This (with updates). + (html_printer::write_header): Implement `-h' option. + (html_printer::draw): Remove commented-out code. Handle `F' + command. + (html_printer::add_char_to_sbuf): Removed. + (html_printer::add_to_sbuf): Rewritten. + (html_printer::sbuf_continuation): Fixed. + (html_printer::seen_backwards_escape, reverse, + html_printer::remove_last_char_from_sbuf): Removed. + (char_translate_to_html, str_translate_to_html): Removed. + (html_printer::overstrike): New function member. + (html_printer::set_char): Use it. + (html_printer::do_body): New function member. + (html_printer::~html_printer): Use it. + (main): Handle `-h' option. + (usage): Updated. + * src/devices/grohtml/grohtml.man: Document -h switch. + + * src/preproc/html/pre-html.cc: Include searchpath.h + Replace `POSTSCRIPTRES' macro with `postscriptRes' variable. + (get_resolution): New function. + (checkImageDir): Use `0777' permissions in mkdir() + (write_start_image): Rewritten to use `\O[5...]'. + (createImage, generateImages): Updated. + (main): Handle `F' and `h' options. + Use `get_resolution'. + + * src/roff/troff/input.cc (begin, end, image): Removed. + (do_suppress): Take parameter. + Handle modified syntax of `\O'. + (token::next): Updated. + (init_markup_requests): Removed. + (main): Updated. + + * src/roff/troff/div.h: Add declaration for begin_page(). + + * tmac/color-html.tmac: Removed. Contents moved to... + * tmac/html.tmac: Here. Set background color. + * tmac/color.tmac: Removed. Contents moved to... + * tmac/ps.tmac: Here. + * tmac/www.tmac: Remove the title command when generating images + for html. + (NO_AUTO_RULE): New macro. + (HTML_DO_IMAGE): Use revised `\O' escapes. + * tmac/Makefile.sub, tmac/groff_www.man, tmac/troffrc: Updated. + +2001-12-02 Werner LEMBERG <wl@gnu.org> + + * tmac/groff_mdoc.man: Fix typo. + +2001-12-01 Colin Watson <cjwatson@debian.org> + + * man/roff.man: Fix typo. + +2001-11-29 Werner LEMBERG <wl@gnu.org> + + * src/libs/libbib/map.c, src/utils/pfbtops/pfbtops.c: Include + stdlib.h. + + * src/roff/troff/input.cc (read_draw_node): Emit error message if + more than one argument to \D'f ...'. + + * tmac/Makefile.sub (NORMALFILES): Add lbp.tmac. + +2001-11-28 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac, tmac/doc.tmac: Assure that the macro package is + loaded only once. + + * tmac/groff_man.man: Minor cosmetic fix. + +2001-11-27 Werner LEMBERG <wl@gnu.org> + + * src/roff/groff/groff.man, tmac/groff_tmac.man, + tmac/groff_www.man: s/mwww/www/. + +2001-11-26 Werner LEMBERG <wl@gnu.org> + + * aclocal.m4 (GROFF_MKSTEMP): Implement test using C++ linkage. + * configure: Regenerated. + * win32-diffs: Updated. + + * tmac/groff_mwww.tmac: Renamed to ... + * tmac/groff_www.tmac: This. + * tmac/mwww.tmac: Removed. + * NEWS, tmac/Makefile.sub: Updated. + +2001-11-21 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Improve documentation of the `\v' escape. + Fix explanation of `\D' and `rt'. + +2001-11-20 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac (an-header): Set header length equal to page + width. + * doc/groff.texinfo: Improve documentation of `ne' request. Other + minor fixes. + * NEWS: Small fix. + +2001-11-19 Werner LEMBERG <wl@gnu.org> + + * NEWS, man/Makefile.sub: Updated. + +2001-11-19 Bernd Warken <bwarken@mayn.de> + + * man/ditroff.man: New file. + +2001-11-17 Werner LEMBERG <wl@gnu.org> + + * man/groff_differences.man: Renamed to ... + * man/groff_diff.man: This. Updated. + * man/Makefile.sub, src/roff/troff/troff.man, NEWS: Updated. + + * src/preproc/html/pushbackbuffer.cc: Renamed to ... + * src/preproc/html/pushback.cc: This. Updated. + * src/preproc/html/pushbackbuffer.h: Renamed to ... + * src/preproc/html/pushback.h: This. + * src/preproc/html/Makefile.sub, src/preproc/html/pre-html.cc: + Updated. + + * src/libs/libgroff/htmlindicate.cc: Renamed to ... + * src/libs/libgroff/htmlhint.cc: This. + * src/libs/libgroff/Makefile.sub: Updated. + + * tmac/an-old.tmac (an-end): Fix page length. + +2001-11-16 Werner LEMBERG <wl@gnu.org> + + * NEWS, man/groff_differences.man, doc/groff.texinfo: Updated. + * man/Makefile.sub: Include groff_differences.man. + * VERSION: Set to 1.18. + * REVISION: Set to 0. + +2001-11-16 Bernd Warken <bwarken@mayn.de> + + * src/roff/troff/input.cc (do_define_macro): Allow whitespace before + the second dot (or ending macro name) to end a macro. + * doc/groff.texinfo: Doc fix. + +2001-11-16 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc-common (doc-header): Handle very long document titles + better. + +2001-11-16 Werner LEMBERG <wl@gnu.org> + + * tmac/doc.tmac (doc-do-Bl-args): Fix .substring requests. + +2001-11-15 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/troff.man: Revised and split into troff.man and... + * man/groff_differences.man: New file. + * NEWS: Updated. + +2001-11-13 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac (TS, TE): New macros for table support. + +2001-11-12 Werner LEMBERG <wl@gnu.org> + + * src/include/lib.h: Provide a fix for emx to not include + groff-getopt.h. + +2001-10-27 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/input.cc (substring_macro): Fix computation of + boundary values. + +2001-10-20 Werner LEMBERG <wl@gnu.org> + + Undo change from 2001-08-28. + + * src/roff/troff/input.cc (have_input): New global variable. + (token::next): Set `have_input' for \f, \H, \R, \s, and \S if not + in compatibility mode. + (process_input_stack): Use it. + +2001-10-19 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc.tmac (doc-flag-recursion): Protect arguments against + being handled as end-of-sentence characters, + +2001-10-10 Gaius Mulley <gaius@glam.ac.uk> + + * src/roff/troff/input.cc (file_iterator): New members + `suppress_newline_flag' and `seen_escape'. + (file_iterator::next_file): Updated. + (file_iterator::fill): Use it. + (string_iterator): New member `suppress_newline_flag'. + (string_iterator::fill): Set it. + (get_color_element): Use MAX_COLOR_VAL. + * src/roff/troff/env.cc (environment): Remove `need_eol'. + (no_fill): Don't set `env->ignore_next_eol'. + (environment::newline): Handle `eol' tag properly. + Emit `eol.ce'. + (environment::add_html_tag): Set `env->ignore_next_eol'. + Don't handle `.ce'. + * src/roff/troff/env.h (environment): Updated. + + * src/devices/grohtml/post-html.cc (text_glob::is_eol_ce): New + member function. + (html_printer::outstanding_eol): New member function. + (html_printer::do_title): Use new functions. + (html_printer::troff_tag): Test `id_eol_ce'. + +2001-10-10 Werner LEMBERG <wl@gnu.org> + + * tmac/color.tmac, tmac/color-html.tmac: Use `.do' to make those + files work with -C also. + +2001-10-05 Werner LEMBERG <wl@gnu.org> + + * doc/pic.ms: Minor fix. + * src/preproc/html/pre-html.cc (scanArguments): Don't handle `-?' + as a valid command line switch. + * src/devices/grohtml/post-html.cc (main): Ditto. + (usage): Updated. + * src/devices/grohtml/grohtml.man: Updated. + * src/roff/groff/groff.cc (main): Pass `-v' to predriver also. + +2001-10-04 Werner LEMBERG <wl@gnu.org> + + Implementing color support in troff, pic, grops, and grohtml. These + changes are based on a major patch provided by Gaius Mulley + <gaius@glam.ac.uk>. + + New request: `defcolor', supporting rgb, cmy, cmyk, and gray + definitions with both hex values and fractions. + + New escapes: \m and \M for drawing and background color, + respectively. This corresponds to the troff output commands `m' + and `DF'. + + groff and troff accept command line switch `-c' to disable color + output (which is automatically disabled in compatibility mode). + + New scaling indicator `f' for fractions (1f = 65536u). + + New conditional operator `m' to test for defined colors with `if' + and `ie'. + + New keywords `color' (or `colour', `colored', `coloured'), `outline' + (or `outlined'), and `shaded' added to pic. + + * src/include/color.h: New file. + * src/include/driver.h: Include it. + * src/include/printer.h: Include color.h. + (environment): New members `col' and `fill'. + (printer): Remove `adjust_arc_center' member function. + * src/include/Makefile.sub: Updated. + + * src/libs/libdriver/input.cc (do_file): Initialize `env.col' and + `env.fill'. + Handle `m' and `DF' troff commands. + * src/libs/libgroff/color.cc: New file. + * src/libs/libgroff/Makefile.sub: Updated. + + * src/preproc/html/pre-html.cc (IMAGE_BORDER_PIXELS): Set to 2. + (stop): Removed. + (createImage): Fix computation of `y2'. + Use `pnmcrop' also. + (buffer::write_file_html): Remove calls to `stop'. + + * src/preproc/pic/common.h (common_output): New abstract function + members `set_color', `reset_color', `get_last_filled', and + `get_outline_color'. + * src/preproc/pic/object.h: Add `IS_SHADED' and `IS_OUTLINED'. + (object_spec): Add members `shaded' and `outlined'. + * src/preproc/pic/output.h (output): `command' is now abstract. + New function members `set_color', `reset_color', `get_last_filled', + and `get_outline_color'. + * src/preproc/pic/lex.cc (lookup_keyword): Recognize `colo[u]r[ed]', + `outline[d]', and `shaded'. + * src/preproc/pic/object.cc (output::command): Removed. + (output::set_location): Moved to output.h. + (graphic_object): Add protected members `outline_color' and + `color_fill'. + Add member functions `set_outline_color', `get_outline_color', and + `set_fill_color'. + (closed_object): Add member function `set_fill_color'. + Add member `color_fill'. + (graphic_object::print_text): Use `out->set_color' and + `out->reset_color'. + (box_object::print, ellipse_object::print, circle_object::print, + line_object::print, spline_object::print, arc_object::print): Ditto. + (object_spec::make_object): Implement `IS_OUTLINED' and `IS_SHADED'. + * src/preproc/pic/pic.y: Add tokens `COLORED', `OUTLINED', and + `SHADED', making them `%left'. + Add rules `object_spec [SHADED|COLORED|OUTLINED] text'. + * src/preproc/pic/tex.cc (tex_output): New dummy function members + `set_color', `reset_color', `get_last_filled', and + `get_outline_color'. + * src/preproc/pic/troff.cc (simple_output): New abstract function + members `set_color', `reset_color', and `get_last_filled'. + (simple_output::polygon, simple_output::circle, + simple_output::ellipse): Use `get_last_filled'. + (troff_output): New members `last_filled' and `last_outlined'. + New function members `set_color', `reset_color', `get_last_filled', + and `get_outline_color'. + (troff_output::finish_picture): Use `reset_color'. + (troff_output::set_fill): Test `last_filled'. + * src/preproc/pic/pic.man: Updated. + + * src/roff/groff/groff.cc (main): Implement `-c' option. + (synopsis, help): Updated. + src/roff/groff/groff.man: Updated. + + * src/roff/troff/troff.h: Include color.h. + (warning_type): Add WARN_COLOR. + * src/roff/troff/env.h (environment): New members + `{cur,prev}_{glyph,fill}_color'. + New member functions `get_{prev_,}{glyph,fill}_color'. + * src/roff/troff/env.cc: Initialize and implement them. + * src/roff/troff/input.cc: New global variable `disable_color_flag'. + Replace `NULL' with `0' everywhere for consistency. + (lookup_color, default_black, do_glyph_color, do_fill_color, + get_color_element, read_rgb, read_cmy, read_cmyk, read_gray, + define_color): New functions. + (token::next): Implement \M and \m escapes. + (do_if_request): Implement `m' operator. + (usage): Updated. + (main): Implement `-c' option. + (init_markup_requests): Add `defcolor' request. + (warning_table): Add `color' warning. + * src/roff/troff/node.h (glyph_color_node, fill_color_node): New + classes. + * src/roff/troff/node.cc (troff_output_file): New members + `current_{page,glyph}color'. New member functions `put_hex', + `glyph_color', and `fill_color'. + (glyph_color_node::*, fill_color_node::*): Implement it. + * src/roff/troff/number.cc (SCALE_INDICATOR_CHARS): Add `f'. + (parse_term): Add support for `f'. + * src/roff/troff/troff.man: Updated. + + * src/devices/grodvi/dvi.cc (draw_dvi_printer::draw): Add dummy + entry for `F'. + * src/devices/grolbp/lbp.cc (lbp_printer::draw): Ditto. + * src/devices/grolj4/lj4.cc (lj4_printer::draw): Ditto. + + * src/devices/grohtml/html-text.h (HTML_TAG): Add COLOR_TAG. + (tag_definition): Use `void *' for arg1. + (html_text): New member functions `do_color' and `done_color'. + Use `void *' for second parameter of `push_para' member function. + New `push_para' member function with a single parameter. + Use `char *' for parameter of `issue_table_begin' member funtion. + New `issue_color_begin' member function. + * src/devices/grohtml/html-text.cc (html_text::end_tag): Handle + COLOR_TAG. + (html_text::issue_color_begin): New function. + (html_text::issue_table_begin): Use `char *' for parameter. + (html_text::start_tag, html_text::shutdown, + html_text::check_emit_text): Updated. + (html_text::push_para): Use `void *' for second parameter. + Add same function with only one parameter. + (html_text::do_*): Updated. + (html_text::do_color, html_text::done_color): New functions. + * src/devices/grohtml/post-html.cc (style): New member `col'. + Mew member `style' with 6 parameters. + (style::style, style::operator==): Updated. + (html_printer::do_font): Use it. + (html_printer::draw): Add dummy entry for `F'. + (html_printer::set_char): Updated. + * src/devices/grohtml/grohtml.man: Updated. + + * src/devices/grops/ps.cc (ps_output::put_float): Use `%g' to have + trailing zeroes removed. + (ps_printer): New members `sbuf_color', `fill_color', and + `output_color'. + Removed member `fill'. + New member function `set_color'. + (ps_printer::ps_printer, ps_printer::set_char): Updated. + (ps_printer::flush_sbuf, ps_printer::set_line_thickness, + ps_printer::fill_path, ps_printer::draw): Use `set_color'. + + * tmac/color-html.tmac, tmac/color.tmac: New files. + * tmac/troffrc: Include them. + * tmac/www.tmac (URL, FTP, MAILTO): Use blue color. + * tmac/Makefile.sub: Updated. + + * NEWS, doc/groff.texinfo, doc/pic.ms, man/groff_out.man, + man/groff.man: Updated. + * font/devps/prologue.ps: Define FC and CO functions. + +2001-10-04 Gaius Mulley <gaius@glam.ac.uk> + + Fix incorrect cropping of images and incorrect handling of special + characters. Fix handling of file names in \O. + + * src/include/geometry.h: New file. + * src/libs/libgroff/geometry.cc: New file. + * src/libs/libdriver/printer.cc (printer::adjust_arc_center): Moved + to `geometry.cc'. + * src/roff/troff/input.cc (get_delim_file_name): Fixed problem with + initial spaces. + (do_suppress): Updated. + * src/roff/troff/node.cc: Include geometry.h. + (troff_output_file::flush_tbuf): Fixed parameters to + `check_output_limits'. + (troff_output_file::check_charinfo): Ditto. + (troff_output_file::determine_line_limits): Add support for `Da' + and `Dl' commands. + + * src/devices/grohtml/post-html.cc (str_translate_to_html): + Add new parameter `is_special' to decode special characters from + escape sequences. + (html_printer::do_title, html_printer::do_heading, + html_printer::do_indentedparagraph, + html_printer::translate_to_html, html_printer::special): Updated. + +2001-10-03 Werner LEMBERG <wl@gnu.org> + + * Makefile.sub (DISTCLEANFILES): Add stamp-h. + Fix entry for config.h. + * test-groff (GROFF_BIN_PATH): Add $builddir/roff/groff. + * tmac/troffrc: Translate nonbreakable space character to `\~'. + * src/preproc/eqn/eqn.man: Document -d command line option. + +2001-09-27 Werner LEMBERG <wl@gnu.org> + + * man/groff.man: Use + + .ev xxx + .na + .nh + <table> + .ev + + instead of the old code (`.ad .hy' after the table) to suppress + incorrect hyphenation for grohtml output. + +2001-09-22 Werner LEMBERG <wl@gnu.org> + + * man/groff_font.man, man/groff_out.man: Minor fixes. + +2001-09-20 Werner LEMBERG <wl@gnu.org> + + * PROBLEMS: Updated, reordered. Improved EPS section (thanks to + Arnold Robbins <arnold@skeeve.com>). + +2001-09-09 Werner LEMBERG <wl@gnu.org> + + * configure: Regenerated with autoconf 2.52. + + * doc/groff.texinfo: Complete revision of indices. + +2001-09-07 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile (clean): Updated to delete all indices. + +2001-09-05 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/troff.man: Remove superfluous line. + + * tmac/s.tmac: Enable all warnings only if no -W or -w option is + given on the command line (or rather, if only the default warnings + are set). + +2001-09-03 Werner LEMBERG <wl@gnu.org> + + * man/groff.man, src/preproc/eqn/eqn.man, tmac/groff_mdoc.man: Don't + use .ne for TTY devices. + +2001-08-31 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/token.h, src/roff/troff/input.cc: + s/TOKEN_TRANSPARENT_ESCAPE/TOKEN_OPAQUE_ESCAPE/. + +2001-08-28 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/token.h (token_type): Add TOKEN_TRANSPARENT_ESCAPE. + * src/roff/troff/input.cc (token::next): Return + TOKEN_TRANSPARENT_ESCAPE for \f, \H, \R, \s, and \S if not in + compatibility mode. + (token::description): Updated. + (process_input_stack): Reset `bol' for TOKEN_TRANSPARENT_ESCAPE. + (token::add_to_node_list, token::process): Ignore + TOKEN_TRANSPARENT_ESCAPE. + +2001-08-27 Werner LEMBERG <wl@gnu.org> + + * tmac/an-old.tmac: Fix `S' string. + +2001-08-26 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/troff.man: Don't use .ne for TTY devices. + +2001-08-25 Werner LEMBERG <wl@gnu.org> + + * doc/pic.ms: Replace `\\' with `\e' (and fixing some single + backslashes). + Many other minor fixes. + + * configure.ac: Add message at end to inform how to compile + xditview. + * configure: Regenerated. + +2001-08-24 Werner LEMBERG <wl@gnu.org> + + * src/include/getopt.h, src/libs/libgroff/{getopt.c, getopt1.c}: + Updated to latest version of libc. + +2001-08-23 Werner LEMBERG <wl@gnu.org> + + * configure.ac: Don't create subdirectories before AC_CONFIG_FILES. + Autoconf 2.50 and newer can handle this. + * configure: Regenerated. + +2001-08-21 Werner LEMBERG <wl@gnu.org> + + * doc/pic.ms: Fix typo. + * src/preproc/tbl/tbl.man: Document case of global options. + +2001-08-21 Gaius Mulley <gaius@glam.ac.uk> + + * src/devices/grohtml/post-html.cc (html_printer::end_font): Fix + handling of `CR' font. + +2001-08-20 Werner LEMBERG <wl@gnu.org> + + Use a config.h file. + + * src/include/lib.h: Include config.h. + * All C files: Ditto (if necessary). + * All C++ source and header files: Include lib.h first (if + necessary). + + * src/include/config.hin: New file (autogenerated by autoheader). + * stamp-h.in: New file. + * configure.ac: Updated. + * aclocal.m4: Add third parameters to AC_DEFINE macros. + (GROFF_ARRAY_DELETE): Simplified. + * Makefile.sub (DISTCLEANFILES): Updated. + Added targets for remaking config.status, config.hin, config.h, + stamp-h.in, and stamp-h. + * configure: Regenerated. + +2001-08-19 Werner LEMBERG <wl@gnu.org> + + * NEWS: Updated. + +2001-08-18 Sebastian Krahmer <krahmer@suse.de> + + * src/preproc/pic/pic.y (format_number): Use do_sprintf(). + (do_sprintf): Use snprintf(). + +2001-08-18 Werner LEMBERG <wl@gnu.org> + + * src/libs/snprintf/*: Added an snprintf module written by Mark + Martinec. + * src/libs/libgroff/Makefile.sub: Updated. + * configure.ac: Add test for snprintf(). + * Makefile.in: Updated. + * configure: Regenerated. + + * src/preproc/html/pre-html.cc (make_message): Reactivate code which + uses snprintf(). + +2001-08-14 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc.tmac (Ex): New implementation. + * tmac/doc-common, tmac/groff_tmac.man: Updated. + +2001-08-13 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/doc.tmac (Rv): Implement support for 0 or more than 1 + argument. + * tmac/groff_tmac.man: Updated. + +2001-08-13 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/tbl.man: Minor documentation update. + +2001-08-13 John David Anglin <dave@hiauly1.hia.nrc.ca> + + * src/libs/libgroff/tmpname.cc: Add prototype for gettimeofday(). + * configure.ac: Add declaration test for gettimeofday(). + * Makefile.in: Document NEED_DECLARATION_GETTIMEOFDAY defines. + * aclocal.m4: Include sys/time.h for gettimeofday declaration test. + * configure: Regenerated. + +2001-08-11 Werner LEMBERG <wl@gnu.org> + + * aclocal.m4 (GROFF_MKSTEMP): Define HAVE_MKSTEMP. + * configure.ac: Add declaration test for strcasecmp(). + * Makefile.in: Updated. + * configure: Regenerated. + * src/include/lib.h [!HAVE_MKSTEMP]: Add prototype for mkstemp() -- + this is necessary because groff's mkstemp.cc is C++. + Add declaration conditionally for strcasecmp(). + +2001-08-10 Werner LEMBERG <wl@gnu.org> + + Integrated pic2graph, contributed by Eric S. Raymond. + + * contrib/pic2graph/{Makefile.sub, pic2graph.sh, pic2graph.man}: New + files. + * Makefile.in, NEWS: Updated. + + * src/preproc/tbl/tbl.man: Revised. + +2001-08-09 Eric S. Raymond <esr@thyrsus.com> + + * src/preproc/tbl/tbl.man: Extended to cover all tbl features. + +2001-08-09 Werner LEMBERG <wl@gnu.org> + + * src/preproc/tbl/main.cc (process_data): Fix recognition of .lf + requests. + +2001-08-08 Paul Eggert <eggert@twinsun.com> + + * Makefile.sub (configure): Depend on configure.ac, not + configure.in. + * INSTALL.gen: Upgrade to autoconf 2.52's INSTALL. + +2001-08-07 Werner LEMBERG <wl@gnu.org> + + * src/utils/afmtodit/afmtodit.man, src/roff/groff/groff.man: Minor + fixes. + +2001-08-06 Werner LEMBERG <wl@gnu.org> + + * src/roff/troff/troff.man: Improve documentation of -E option. + +2001-07-28 Ralph Corderoy <ralph@inputplus.demon.co.uk> + + * src/preproc/html/pushbackbuffer.cc (pushBackBuffer::readNumber): + Simplified. + +2001-07-27 Werner LEMBERG <wl@gnu.org> + + * src/preproc/refer/refer.cc: Undo last change. + * src/devices/grohtml/post-html.cc: Ditto. + +2001-07-26 Werner LEMBERG <wl@gnu.org> + + * src/preproc/refer/refer.cc: Include `lib.h'. + * src/devices/grohtml/post-html.cc: Ditto. + +2001-07-25 Gaius Mulley <gaius@glam.ac.uk> + + * aclocal.m4 (GROFF_PAGE): Add `AC_DEFINE(PAGEA4)'. + * src/preproc/html/pre-html.cc: Use it for DEFAULT_VERTICAL_OFFSET. + * Makefile.in: Comment updated. + * configure: Regenerated. + +2001-07-25 Werner LEMBERG <wl@gnu.org> + + * src/preproc/pic/pic.cc: Removed. + * src/preproc/pic/pic_tab.h: Removed. + * src/preproc/refer/label.cc: Removed. + + * doc/Makefile (.ms.html): Don't use a file name extension in + argument to grohtml's -I option. + * Makefile.in (dist): Remove CVS directories. + Call `distfiles' target. + + * src/devices/grohtml/grohtml.man: Add information about valid + versions of pnmtopng. + * src/preproc/html/pre-html.cc (TRANSPARENT): Use `white' as colour + name instead of number. + +2001-07-24 Werner LEMBERG <wl@gnu.org> + + * doc/groff.texinfo: Minor fixes. + +2001-07-21 Gaius Mulley <gaius@glam.ac.uk> + + * doc/Makefile (.ms.html): Put image files into a subdirectory. + (clean): Updated. + +2001-07-20 Werner LEMBERG <wl@gnu.org> + + * src/libs/libgroff/tmpname.cc: New file, defining get_tempname(). + * src/libs/libgroff/mkstemp.cc: New file. + * src/libs/libgroff/mksdir.cc: New file. + * src/libs/libgroff/tmpfile.cc [HAVE_MKSTEMP_PROTO]: Removed. + (xtmpfile) [!HAVE_MKSTEMP]: Removed. + * src/libs/libgroff/Makefile.sub: Updated. + * src/include/lib.h: Add mksdir() prototype. + * src/include/posix.h: Define S_IXUSR if not yet defined. + + * src/preproc/html/pre-html.cc (MAX_RETRIES): Removed. + (createAllPages): Use mksdir() instead of current code. + * src/utils/indxbib/indxbib.cc [HAVE_MKSTEMP_PROTO]: Removed. + (main): [!HAVE_MKSTEMP]: Removed. + + * aclocal.m4 (GROFF_MKSTEMP): Updated to use new mkstemp.cc file. + (GROFF_INTTYPES_H, GROFF_UNSIGNED_LONG_LONG, GROFF_UINTMAX_T): New + macros. + * configure.ac: Add tests for stdint.h, sys/time.h, and + gettimeofday(). + Call new GROFF_xxx macros. + * configure: Regenerated. + * Makefile.in: Comments updated. + +2001-07-20 Gaius Mulley <gaius@glam.ac.uk> + + * src/preproc/html/pre-html.cc (scanArguments): Use getopt_long() + instead of current code. + * src/devices/grohtml/post-html.cc (main): Handle `-d' option. + * src/roff/groff/groff.cc (possible_command::insert_args): New + function. + (main): Use it for predriver handling instead of insert_arg(). + +2001-07-19 Werner LEMBERG <wl@gnu.org> + + * doc/Makefile: Added GROFF_BIN_PATH to make it work with uninstalled + groff also. + + * src/include/posix.h: Define S_IWUSR if not yet defined. + +2001-07-18 Werner LEMBERG <wl@gnu.org> + + * NEWS: Updated. + +2001-07-18 Ruslan Ermilov <ru@FreeBSD.org> + + * tmac/groff_mdoc.man: Document new -width and -column syntax. + Some other minor fixes. + * tmac/an-old.tmac: Add `AT' and `UC' macros. + +2001-07-17 Gaius Mulley <gaius@glam.ac.uk> + + Replace call to `troff' with `groff -Z' to make it aware of + GROFF_BIN_PATH. + + * src/preproc/html/pre-html.cc (TROFF_COMMAND): New macro. + (troff_command, command_prefix): Removed. + (alterDeviceTo): Use groff. + (addZ): New function. + (char_buffer::do_html): Use it. + (scanArguments): Use TROFF_COMMAND. + (findPrefix): Removed. + (main): Updated. + * src/roff/groff/groff.cc (main): Handle zflag for preprocessors. + +2001-07-17 Eric S. Raymond <esr@snark.thyrsus.com> + + * doc/pic.ms: Documentation fixes. + +2001-07-17 Werner LEMBERG <wl@gnu.org> + + Replace atexit() with global destructor. + + * src/libs/libgroff/tmpfile.cc (xtmpfile_list): Add constructor. + (xtmpfile_list_init): New global structure to deallocate + xtmpfile_list on exit. Its destructor inherits most code from + remove_tmp_files(). + (remove_tmp_files): Deleted. + (add_tmp_file): Simplified. + +2001-07-16 Werner LEMBERG <wl@gnu.org> + + Replace strdup() with strsave(). + + * src/devices/grolbp/lbp.cc [!HAVE_STRDUP]: Removed. + (set_papersize): Use strsave() and a_delete. + (main): Use strsave(). + * src/preproc/html/pre-html.cc (make_message, createAllPages, + removeAllPages): Use strsave() and a_delete. + + * configure.ac: Remove test for strdup. + * Makefile.in: Comment updated. + * configure: Regenerated. + +2001-07-15 Werner LEMBERG <wl@gnu.org> + + * win32-diffs: Updated. + +2001-07-14 Werner LEMBERG <wl@gnu.org> + + * src/preproc/html/pre-html.cc (makeTempFiles): Activate new code, + removing the old one. + * src/utils/indxbib/indxbib.cc (main): Remove compiler warning. + +2001-07-14 Ralph Corderoy <ralph@inputplus.demon.co.uk> + + * src/libs/libgroff/tmpfile.cc (xtmpfile): Fix guard for `namep'. + +2001-07-12 Ruslan Ermilov <ru@FreeBSD.org> + + Merge -xwidth into -width. Add -xwidth functionality to -column + also. + + * tmac/doc.tmac (Bl): Add dummy doc-typeXXX and doc-spaceXXX to + avoid warning. + (doc-do-Bl-args): Merge -xwidth code with -width. Test whether + string immediately following a leading dot starts with a valid mdoc + argument. + Add similar code to the -column branch. + (doc-Bl-usage): Updated. + * groff_mdoc.man: s/-xwidth/-width/. + +2001-07-12 Gaius Mulley <gaius@glam.ac.uk> + + * src/devices/grohtml/post-html.cc (text_glob::is_br): Stop titles + running into centered or non-formatted text. + +2001-07-11 Werner LEMBERG <wl@gnu.org> + + Introduce short and long prefixes to have the selection at run-time + whether there is a 8+3 limit for names of temporary files. + + * src/libs/libgroff/tmpfile.cc (TMPFILE_PREFIX): Replaced with... + (TMPFILE_PREFIX_SHORT, TMPFILE_PREFIX_LONG): This. + (tmpfile_prefix, tmpfile_prefix_len, use_short_prefix): New + variables. + (temp_init): New global structure to initialize above three + variables. + (xtmptemplate): Use two parameters for long and short prefix. + Simplify code use above three variables. + (xtmpfile): Use long and short prefixes as parameters. + * src/include/lib.h: Updated. + + * src/preproc/html/pre-html.cc ({PAGE,PS,REGION}_TEMPLATE): Replace + with ... + ({PAGE,PS,REGION}_TEMPLATE_{SHORT,LONG}): This. + (createAllPages, makeTempFiles): Updated. + +2001-07-09 Werner LEMBERG <wl@gnu.org> + + * REVISION: Increased to 3. + +Local Variables: +version-control: never +coding: latin-1 +End: |