summaryrefslogtreecommitdiff
path: root/doc
Commit message (Collapse)AuthorAgeFilesLines
* * doc/groff.texinfo: Added macros `@Defmpreg' and `@Defmpregx' forwlemb2002-01-051-5/+1268
| | | | | | | | | | | | | | | | | | registers defined in macro packages. Revising the ms part. * doc/groff.texinfo: Add documentation for ms macros. 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. * man/roff.man: Revised.
* * src/roff/groff/groff.man: Completely rewritten.wlemb2002-01-011-2/+2
|
* * tmac/www.tmac: Replace\\n[www-html] with \n[www-html] since thewlemb2001-12-302-10/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | device is already known at start-up. 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. 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'.
* * groff.texinfo: Document exact search algorithm for glyphs.wlemb2001-12-161-1/+25
| | | | | * Makefile.cpg, Makefile.ccpg, Makefile.man: Add dummy file to the left side of $(MANPAGES) rule to make it always non-empty.
* * src/preproc/eqn/main.cc (inline_equation): Fix typos.wlemb2001-12-121-8/+1
| | | | * tmac/groff_man.man, doc/groff.texinfo: There is no .R macro.
* * src/roff/troff/input.cc (get_delim_file_name): Removed since nowlemb2001-12-061-6/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | longer used. * src/devices/grohtml/post-html.cc (html_printer::html_printer): Fix order of initializers. * NEWS: Updated. * 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.
* * aclocal.m4 (GROFF_MKSTEMP): Implement test using C++ linkage.wlemb2001-11-261-11/+18
| | | | | | | | | | | * 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. * doc/groff.texinfo: Improve documentation of the `\v' escape. Fix explanation of `\D' and `rt'.
* * tmac/an-old.tmac (an-header): Set header length equal to pagewlemb2001-11-211-7/+15
| | | | | | | width. * doc/groff.texinfo: Improve documentation of `ne' request. Other minor fixes. * NEWS: Small fix.
* * NEWS, man/groff_differences.man, doc/groff.texinfo: Updated.wlemb2001-11-161-19/+26
| | | | | | | | | | | | * man/Makefile.sub: Include groff_differences.man. * VERSION: Set to 1.18. * REVISION: Set to 0. * 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. * tmac/doc-common (doc-header): Handle very long document titles better. * tmac/doc.tmac (doc-do-Bl-args): Fix .substring requests.
* * doc/pic.ms: Minor fix.wlemb2001-10-051-3/+1
| | | | | | | | | * 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.
* Implementing color support in troff, pic, grops, and grohtml. Thesewlemb2001-10-052-26/+134
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. 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. * 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.
* * configure: Regenerated with autoconf 2.52.wlemb2001-09-112-755/+816
| | | | | | * doc/groff.texinfo: Complete revision of indices. * doc/Makefile (clean): Updated to delete all indices.
* * doc/pic.ms: Replace `\\' with `\e' (and fixing some single backslashes).wlemb2001-08-261-165/+165
| | | | | | Many other minor fixes. * configure.ac: Add message at end to inform how to compile xditview.
* * doc/pic.ms: Fix typo.wlemb2001-08-211-6/+10
| | | | | * src/devices/grohtml/post-html.cc (html_printer::end_font): Fix handling of `CR' font.
* * src/preproc/pic/pic.cc: Removed.wlemb2001-07-252-6/+7
| | | | | | | | | | | | | * 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. * doc/groff.texinfo: Minor fixes.
* * doc/Makefile (.ms.html): Put image files into a subdirectory.wlemb2001-07-202-2/+3
| | | | (clean): Updated.
* * src/libs/libgroff/tmpname.cc: New file, defining get_tempname().wlemb2001-07-201-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | * 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.
* * src/preproc/html/pre-html.cc (scanArguments): Use getopt_long()wlemb2001-07-201-0/+6
| | | | | | | | | | 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(). * src/include/posix.h: Define S_IWUSR if not yet defined.
* * doc/Makefile: Added GROFF_BIN_PATH to make it work with uninstalledwlemb2001-07-191-1/+25
| | | | groff also.
* Replace call to `troff' with `groff -Z' to make it aware ofwlemb2001-07-171-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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. * doc/pic.ms: Documentation fixes. 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.
* * doc/homepage.ms: Don't include arkup.tmac (which no longer exists)wlemb2001-06-242-5/+5
| | | | | but www.tmac. * doc/pic.ms: Fix typos.
* The .ns and .rs requests are now honoured not only in the top-levelwlemb2001-05-071-10/+3
| | | | | | | | | | | | | | | | | | | 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.
* Rename register .q to .nswlemb2001-05-051-3/+3
|
* Added `.q' number register: Returns 1 if in no-space mode (if inwlemb2001-05-051-2/+3
| | | | | | | | | 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.
* * doc/groff.texinfo: More info on conditionals.groff-1_17wlemb2001-04-161-579/+699
|
* * doc/groff.texinfo: Added some info about groff internals.wlemb2001-04-151-65/+257
|
* * doc/pic.ms: Fixing many font switches.wlemb2001-04-132-72/+113
| | | | | * doc/groff.texinfo: Fixes, additions. * MORE.STUFF: Updated.
* * NEWS: Updated.wlemb2001-04-101-266/+524
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/groff.texinfo: Many fixes, additions, clarifications, etc. * 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.
* * doc/groff.texinfo: Fixed and improved documentation of fonts.wlemb2001-03-261-48/+79
|
* * src/roff/troff/div.cc (save_vertical_space): Add default argumentwlemb2001-03-231-168/+263
| | | | | | | | | | 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).
* * doc/groff.texinfo: Added many @noindent.wlemb2001-03-221-799/+860
| | | | | | Replaced @end_Example -> @endExample. Added info whether registers are r/o. Many other additions and fixes.
* * doc/groff.texinfo: Added macro @Var (and some hacks due to bugswlemb2001-03-211-269/+354
| | | | | | | | 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.
* * doc/groff.texinfo: Added new index: `st' (for strings).wlemb2001-03-201-516/+551
| | | | | | | | | | Added macros @Defstr(x). Added macro @Example (adding @group). Other minor improvements. * tmac/an-old.tmac (an-p-footer): If `cR' is set, replace page number with name of man page.
* * doc/groff.texinfo: Added two new indices: `es' (for escapes) andwlemb2001-03-191-1416/+1735
| | | | | | | | | | `rq' for requests. `fn' is no longer used. Added macros @Defreq(x), @Defreg(x), and @Defesc(x). Removed @Deffn(x). * doc/groff.texinfo: Complete revision. Added many @Deffn to gain consistency.
* * src/libs/libgroff/font.cc (font_widths_cache): Fixing syntax ofwlemb2001-02-281-2/+2
| | | | | | | constructor. * doc/meref.me: Fixing some typos.
* troff's `box' and `boxa' requests didn't preserve temporarywlemb2001-01-231-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. * doc/groff.texinfo: Minor improvement of `.in' documentation. * test-groff: Updated.
* First cut of the new html device driver. Changes to pre-html andwlemb2001-01-173-17/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* * NEWS, src/roff/troff/troff.man, doc/groff.texinfo: Fixwlemb2001-01-131-2/+2
| | | | documentation of `asciify' request.
* * src/roff/troff/input.cc: Move definition of special characterswlemb2001-01-121-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. * man/groff_char.man: Use table header traps only conditionally. * man/groff_char.man: Add `ý' and `Ý' to the `acute' group. Ignore `ss' request if in compatibility mode. `ss' request in nroff mode. * tmac/e.tmac: Add `T&' macro. long page is created instead of multiple pages: All `ne' and `wh' be called with `em'.
* Introducing the `box' and `boxa' requests which are similar towlemb2001-01-081-3/+3
| | | | | | | | | | | | | | | | | | | | `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. * src/roff/troff/troff.man, NEWS: Document `writem' request.
* Ignore `.ss' request if in compatibility mode.wlemb2000-12-211-3/+6
| | | | | | | | | | | | | | * 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. documentation of -rcR switch.
* * PROBLEMS: Added info about adding -lPW on HP-UX to satisfy thewlemb2000-12-061-4/+4
| | | | | | | | | | | `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 if -rcR=1 (which is now the default in nroff mode), a single, very
* * tmac/an-old.tmac: Implementing the -rcR switch (similar to mdoc);wlemb2000-12-031-3/+7
| | | | | | | | | | | if -rcR1 (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.
* Fixing a bug which prevented hyphenation in words followedwlemb2000-12-021-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* In all programs, make -v return immediately with exit status 0 towlemb2000-11-151-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* * src/preproc/pic/depend: Removed. Unnecessary.wlemb2000-11-141-3/+1
| | | | | | | | | | 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.
* * src/roff/grog/grog.{pl,sh}: Implemented -C switch for compatibilitywlemb2000-11-141-4/+8
| | | | | 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 ofwlemb2000-11-141-2/+3
| | | | | replacing it -- we don't find gxditview otherwise. * NEWS, src/roff/groff/groff.man, doc/groff.texinfo: Updated.
* Add system tmac directory (/usr/local/lib/groff/site-tmac).wlemb2000-11-081-2/+6
| | | | | | | | | | | | | | | | | | | | * 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. * doc/groff.texinfo: Fix typo.
* * Makefile.comm, Makefile.in: Remove tmac_{s,an}_prefix stuff.wlemb2000-10-261-3/+1
| | | | | | | * tmac/Makefile.sub: Adapted to new macro names; removed `wrap' stuff since it is no longer needed. * README, PROBLEMS: Updated.