summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* More updates.groff-1_18_1wlemb2002-10-083-2/+23
|
* * doc/webpage.ms: Updated.wlemb2002-10-082-0/+43
|
* * tmac/doc-common (Ss): Add final `.ns' (similar to `.Sh') towlemb2002-10-0711-21/+110
| | | | | | | | | | | | | | | | | | | | | | 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. * tmac/doc-common(doc-volume-operating-system-ateol): New flag. (Dt): Use it to improve language localization (especially Russian and French). * 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.
* * groffer.sh: replace `sed' interface by direct `sed'wlemb2002-10-074-504/+396
| | | | | | | | | | | | | | | | | | | | | | | - This improves the performance of the shell programming parts and shortens the groffer script by about 5%. - Remove functions: string_del_append(), string_del_leading(), string_del_trailing(), string_flatten(), string_get_before(), string_get_leading(), string_replace_all(), string_sed_s(), and their auxiliary functions. - Replace all calls of these functions by direct `sed' commands. - Define variables for special characters to ease `sed' calls. - Remove `$APPEND'. - Restrict list_from_string() to single character separators. - Correct list_check() and base_name(). - Add comments to all calls of `sed'. * groffer.sh: add run-time support for several shells - New option `--shell': stop execution and rerun groffer under the shell specified in the argument of `--shell'. - If no shell was specified at run-time, `ash' is tried first; if `ash' is not available continue with the shell with which groffer was called from the command line, or with the shell name in the first line of the script, actually `/bin/sh'.
* * src/roff/troff/node.cc (break_char_node::col): New variable.wlemb2002-10-034-19/+29
| | | | | | | | | | | | 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.
* Redesigning color support in troff. Colors are no longerwlemb2002-10-027-297/+357
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* * tmac/doc-common (ds-operating-system-FreeBSD-4.*): New versionwlemb2002-09-283-1/+15
| | | | | | strings. * src/roff/troff/node.cc (bracket_node::copy): Check `list' != 0.
* * src/devices/grolbp/lbp.cc: Replace `300' with `font::res' wherewlemb2002-09-235-51/+141
| | | | | | | | | | | | | | | | | | | | | | | | | | 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. 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.
* Some Debian patches.wlemb2002-09-224-2/+13
| | | | | | * src/roff/groff/pipeline.h (MAX_COMMANDS): Increase to 12. * src/roff/troff/node.cc (bracket_node::copy): Initialize `list->last'.
* * configure: Regenerated with autoconf 2.54.wlemb2002-09-202-384/+353
|
* * src/roff/troff/env.h (environment): Rename cur_glyph_color towlemb2002-09-203-16/+25
| | | | | | glyph_color. Rename cur_fill_color to fill_color. * src/roff/troff/env.cc: Updated.
* * src/roff/troff/env.cc (title): Copy color status after processingwlemb2002-09-208-14/+63
| | | | | | | | | | title. * src/roff/troff/input.cc (charinfo_to_node_list): Emit glyph and fill color nodes to reset colors properly. * src/preproc/pic/pic.man, doc/pic.ms: Document some color issues. * doc/groff.texinfo: Fixing documentation of `tl' request. * doc/webpage.ms: Updated.
* * src/roff/troff/env.cc (environent_switch, environment_copy):wlemb2002-09-192-0/+9
| | | | Emit glyph and fill color nodes to initialize colors properly.
* Updated.wlemb2002-09-183-2/+7
|
* * src/roff/troff/env.cc (environment::set_glyph_color,wlemb2002-09-182-2/+8
| | | | | environment::set_fill_color): Fix typo which prevented \m[] work correctly.
* Add left and right italic correction to non-slanted PS fonts. Thiswlemb2002-09-1722-4134/+4162
| | | | | | | | | 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.
* Add a site-specific font directory.wlemb2002-09-1614-64/+183
| | | | | | | | | | | | | | | | | | | * 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.
* * Imakefile.in (GROFF_LOCALFONTDIR): New variable.wlemb2002-09-162-1/+11
| | | | | (GROFF_FONTPATH): Use it. Remove /usr/local/lib/font.
* * doc/groff.texinfo, man/groff_font.man: Clarify argument of \N.wlemb2002-09-124-3/+15
| | | | * man/groff_out.man: Fix documentation of 'N'.
* * added implicit -mm to mmroff, it's now possiblejhaegg2002-09-112-2/+9
| | | | to use mmroff with or without -mm as argument.
* * doc/Makefile.in (webpage.html): Depend on gnu.eps also.wlemb2002-09-107-29/+29
| | | | | | | | | | | | | * 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'. * src/libs/libgroff/string.cc (string::extract): Fix position of terminating null byte.
* Add global option `nospaces' to tbl so that leading and trailingwlemb2002-09-089-16/+117
| | | | | | | | | | | | | | | | 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.
* * src/include/config.hin: Add `HAVE_ISATTY'.wlemb2002-09-076-6/+23
| | | | | | | | | | * 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.
* * doc/Makefile.in (.texinfo.html): Add -I switch.wlemb2002-09-065-50/+47
| | | | | | | | | | | | | | | * doc/groff.texinfo: Add @ifnottex block for top node to make translation to HTML work. * 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. * doc/groff.texinfo, tmac/groff_man.man: Improve documentation of default indentation.
* * src/preproc/html/pre-html.cc (imageList::createPage): Usewlemb2002-09-043-10/+22
| | | | | | | -sPAPERSIZE for gs. (generateImages): Clean up push-back buffer. * doc/groff.texinfo: Minor fixes.
* o Changed .IX to .IQ. The older form still works, but emits a messagewlemb2002-09-0414-318/+489
| | | | | | | | | | | | | | | | | | | | | | | | | | advising the user to update to the newer. (The macro in om.tmac still remains IX; IQ is an alias.) Docs updated to reflect the change. *Tue Aug 20 2002 o Added new (better) way to handle inline kerning. \*[BU #] and \*[FU #] allow passing an argument to the inline string. The older forms \*[BU#] and \*[FU#] still work, though. o Changed handling of inline horizontal and vertical movements. Horizontal movements are now done with \*[BCK #<unit>] and \*[FWD #<unit>]; verticals with \*[UP #<unit>] and \*[DOWN #<unit>]. The older forms \*[FP#] and \*[BP#] still work (horizontals), as do \*[ALD#] and \*[RLD#] (verticals). *Mon Aug 19 2002 o Fixed ENDNOTES so footnotes output properly when ENDNOTES is called o Added ENDNOTES_HDRFTR_CENTER so that default no-print of header center string on endnotes page(s) when DOCTYPE is CHAPTER can be disabled (i.e. header center will be printed).
* * src/preproc/html/pre-html.cc (DEFAULT_LINE_LENGTH): New macro.wlemb2002-08-272-18/+73
| | | | | | | | | | | | | | | | | | (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'.
* Updated.wlemb2002-08-261-0/+3
|
* * src/include/nonposix.h (mkdir, WAIT, creat) [_MSC_VER]: Define.wlemb2002-08-245-6/+33
| | | | | | | | (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.
* *** empty log message ***wlemb2002-08-231-1/+1
|
* Use OBJEXT for the object file extension.wlemb2002-08-2328-113/+132
| | | | | | | | * 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)/.
* * INSTALL: Mention texinfo 4.2 as a prerequisite.wlemb2002-08-232-2/+7
|
* * src/devices/grohtml/post-html.cc (colType): Make enum global towlemb2002-08-222-50/+90
| | | | | | | | | the file. (html_printer::update_min_max, html_printer::add_table_end): New methods. (html_printer::lookahead_for_tables): Use them. Improve table detection. (html_printer::~html_printer): Add creation of creator comment up.
* o Fixed ENDNOTES so footnotes output properly when ENDNOTES is calledwlemb2002-08-226-15/+131
| | | | | | | | | | | o Added ENDNOTES_HDRFTR_CENTER so that default no-print of header center string on endnotes page(s) when DOCTYPE is CHAPTER can be disabled (i.e. header center will be printed). o Added .nf to top of PAD, with a test beforehand for current fill mode. If fill mode was on, it's restored after PAD completes processing. Updated reserved.html to include number register #FILL_MODE.
* * tmac/an-old.tmac (T&): New dummy macro to avoid warning.wlemb2002-08-216-21/+40
| | | | | | | * man/groff_tmac.man: Fix typos. * man/groff_font.man: Minor reordering. * contrib/eqn2graph/eqn2graph.man (Tp): New macro. * contrib/groffer/groffer.man: Fix typos.
* Avoid endless loops while scanning for tables.wlemb2002-08-182-25/+49
| | | | | | | | | | | | * 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.
* A better fix, replacing fix 2002-08-15, for increasing SIZE.wlemb2002-08-182-9/+23
| | | | | | | * src/devices/grohtml/post-html.cc (char_block): Make `buffer' a pointer. (char_block::char_block): Allocate `buffer'. (char_buffer::add_string): Use it.
* * src/devices/grops/grops.man, src/devices/grolj4/grolj4.man,wlemb2002-08-165-8/+21
| | | | | | | src/devices/grodvi/grodvi.man: Document default line thickness. * src/devices/grohtml/post-html.cc (char_block): Increase SIZE to 8192.
* * doc/webpage.ms: Updated.wlemb2002-08-143-58/+557
|
* * src/roff/troff/node.cc (node::add_char): Call `freeze_space' forwlemb2002-08-092-0/+6
| | | | unbreakable space.
* * src/preproc/pic/object.cc (object_spec::make_move): Fix typowlemb2002-08-092-1/+6
| | | | (&& -> &).
* * src/roff/troff/input.cc (read_rgb, read_cmy, read_cmyk): Callwlemb2002-08-082-1/+12
| | | | | | tok.next(). (read_gray): Ditto. Don't push back a space but a newline onto the stack.
* * m.tmac (VM): Add missing backslash.wlemb2002-08-072-3/+7
|
* Add fonts `CI', `CB', and `CBI' to grohtml which have been omittedwlemb2002-08-075-16/+48
| | | | | | | | | | | | | 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.
* * MORE.STUFF: Added gpresent.wlemb2002-08-074-21/+51
| | | | | * tmac/trace.tmac: Show nesting level by a corresponding amount of whitespace before printing the logging message.
* * src/devices/grohtml/html-table.cc (html_table::finish_row):wlemb2002-08-012-1/+6
| | | | Initialize `n' to zero. This fixes a segfault on ARM.
* * doc/grnexmpl.me: Remove calls to .st and .sc which are undefined.wlemb2002-07-314-3/+12
| | | | | * src/preproc/pic/pic.y (print_arg, relative_path): Add missing final semicolon.
* Makefile.sub (FFLAG, TFLAG): Add paths to source directories.wlemb2002-07-292-2/+6
|
* * src/devices/grohtml/post-html (html_printer::troff_tag): Handlewlemb2002-07-272-0/+10
| | | | | `.ps'. (html_printer::html_printer): Initialize `pointsize'.
* * doc/Makefile.sub (PROCESSEDEXAMPLEFILES): Remove gnu.eps andwlemb2002-07-262-5/+13
| | | | | | | gnu.png. (CLEANNOTSRCDIRADD): Add gnu.eps and gnu.png. (gnu.eps): Add -rle switch to pnmtops. (distfiles): Add gnu.eps and gnu.png.