summaryrefslogtreecommitdiff
path: root/NEWS
Commit message (Collapse)AuthorAgeFilesLines
* Intergrated pic2graph, contributed by Eric S. Raymond.wlemb2001-08-101-5/+12
| | | | | | | | | | | | | | | | | | | | | | | | * contrib/pic2graph/{Makefile.sub, pic2graph.sh, pic2graph.man}: New files. * Makefile.in, NEWS: Updated. * src/preproc/tbl/tbl.man: Revised. * src/preproc/tbl/tbl.man: Extended to cover all tbl features. * src/preproc/tbl/main.cc (process_data): Fix recognition of .lf requests. * Makefile.sub (configure): Depend on configure.ac, not configure.in. * INSTALL.gen: Upgrade to autoconf 2.52's INSTALL. * src/utils/afmtodit/afmtodit.man, src/roff/groff/groff.man: Minor fixes.
* fix typowlemb2001-07-181-2/+2
|
* * NEWS: Updated.wlemb2001-07-181-0/+15
| | | | | | * tmac/groff_mdoc.man: Document new -width and -column syntax. Some other minor fixes. * tmac/an-old.tmac: Add `AT' and `UC' macros.
* * tmac/www.tmac: Disable hyphenation in normal text only if outputwlemb2001-07-031-0/+11
| | | | | | | | | | device is html. (URL, FTP, MAILTO): Disable hyphenation of actual URL with `%'. * tmac/groff_mwww.man, NEWS: Updated. * tmac/www.tmac (.IMAGE): Add fourth parameter to specify vertical image location.
* Added two new options (-D and -I) to specify image names and awlemb2001-06-181-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* The .ns and .rs requests are now honoured not only in the top-levelwlemb2001-05-071-25/+27
| | | | | | | | | | | | | | | | | | | 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.
* Added two new requests `de1' and `am1' which are similar to `de' andwlemb2001-05-061-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `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. * Makefile.in: Use $(mandir).
* Rename register .q to .nswlemb2001-05-051-1/+1
|
* Added `.q' number register: Returns 1 if in no-space mode (if inwlemb2001-05-051-0/+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.
* Added `brp' request: This is p as a request.wlemb2001-05-021-3/+14
| | | | | | | | | | | | | | | | | * 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. * VERSION: Increased to 1.17.1. * tmac/an-old.tmac: Fix minor compatibility mode issue. * tmac/troffrc-end: Make it really work in compatibility mode.
* * src/roff/nroff/nroff.sh: Adding -p (pic) and -t (tbl) options.wlemb2001-04-181-11/+15
| | | | | | | | | Fix usage of GROFF_BIN_PATH. * src/roff/nroff/nroff.man: Updated. * NEWS: Fixing typos. Updated.
* * NEWS: Updated.wlemb2001-04-101-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* Implement continuous underlining for nroff mode. To do that, a newwlemb2001-04-061-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. * font/devutf8/R.proto: Fix code of 'shc'.
* Fix typo.wlemb2001-04-061-1/+1
|
* Remove .Ld from mdoc package; replace it with special handling ofwlemb2001-03-301-3/+2
| | | | | | | | | | | | | | | | | `...'. * 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. * tmac/www.tmac: Save compatibility mode.
* * tmac/doc-nroff, tmac/doc-ditroff: Implement -rSxx switch forwlemb2001-03-241-2/+4
| | | | | | | | | | selecting the font size. * tmac/groff_mdoc.man, NEWS: Document it. * 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.
* * src/roff/troff/div.cc (save_vertical_space): Add default argumentwlemb2001-03-231-0/+3
| | | | | | | | | | 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).
* Replaced mdoc implementation. The new version is `state of thewlemb2001-03-231-0/+25
| | | | | | | | | | | | | | | | | | | 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.
* Added the `return' request to end a macro immediately. It simplywlemb2001-03-091-1/+3
| | | | | | | | | | | | | | | | | | | | | | | 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. * src/roff/troff/input.cc (input_iterator::is_boundary): Minor cleanup.
* Fixing a bug which prevented proper end-of-sentence recognitionwlemb2001-02-161-3/+3
| | | | | | | | | | | | | | | | | | | | | | 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. * src/roff/troff/troff.man, NEWS, man/groff.man: Improved documentation of `asciify' and `unformat' requests.
* A new escape sequence `:', inserting a zero-width break point.wlemb2001-02-041-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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. 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.
* Implemented new read-only number register `.linetabs' which returnswlemb2001-01-301-0/+3
| | | | | | | | | | | 1 if in line-tabs mode, 0 otherwise. * env.h (environment): Add get_line_tabs() member. * 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.
* Adding the `linetabs' request. If set, tab distances are notwlemb2001-01-251-2/+27
| | | | | | | | | | | | 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.
* Introducing a new read-only register `.int' which is set to awlemb2001-01-231-2/+5
| | | | | | | | | | | | | | 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. * 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.
* troff's `box' and `boxa' requests didn't preserve temporarywlemb2001-01-231-8/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* * tmac/ps.tmac: Remove call of psold.tmac.wlemb2001-01-181-0/+4
| | | | | | | | | * 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.
* * NEWS, src/roff/troff/troff.man, doc/groff.texinfo: Fixwlemb2001-01-131-0/+3
| | | | documentation of `asciify' request.
* * src/roff/troff/input.cc: Move definition of special characterswlemb2001-01-121-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-0/+8
| | | | | | | | | | | | | | | | | | | | `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.
* * PROBLEMS: Added info about adding -lPW on HP-UX to satisfy thewlemb2000-12-061-2/+2
| | | | | | | | | | | `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-0/+5
| | | | | | | | | | | 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-45/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* * NEWS: Fixes.wlemb2000-11-231-3/+6
| | | | | | | | * 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.
* Use safer path (except for config files) if -U isn't specified. Addwlemb2000-11-221-9/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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/lib/libgroff/macropath.cc: Add `config_macro_path', change `macro_path'. * src/include/macropath.h: Add `config_macrp_path'. * src/lib/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. src/roff/groff/groff.man, tmac/groff_tmac.man, arch/djgpp/README:
* * src/devices/grodvi/dvi.cc (main),wlemb2000-11-161-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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@.
* In all programs, make -v return immediately with exit status 0 towlemb2000-11-151-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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/roff/grog/grog.{pl,sh}: Implemented -C switch for compatibilitywlemb2000-11-141-1/+7
| | | | | 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-3/+5
| | | | | replacing it -- we don't find gxditview otherwise. * NEWS, src/roff/groff/groff.man, doc/groff.texinfo: Updated.
* For security reasons, don't use the current directory but the homewlemb2000-11-131-4/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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/rof/groff/groff.man, tmac/groff_tmac.man, arch/djgpp/README: Updated. * 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/libgroff/*, src/include/*, src/roff/troff/*: Fixing copyright dates.
* Add system tmac directory (/usr/local/lib/groff/site-tmac).wlemb2000-11-081-2/+4
| | | | | | | | | | | | | | | | | | | | * 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.
* Convert macros `tmac.XXX' to `XXX.tmac'. Special cases:wlemb2000-10-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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).
* Invert current behaviour: Search first FOOBAR.tmac, thenwlemb2000-10-251-3/+5
| | | | | | | | | | | | | | | | | 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.
* Add local tmac directory (groff/site-tmac).wlemb2000-10-241-1/+3
| | | | | | | | | * 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: Updated.
* Move hyphen.us to tmac directory.wlemb2000-10-231-0/+8
| | | | | | | | | | | | | | | | * 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, src/xditview/Imakefile.in: Implement it. * NEWS: Document it. * NEWS, src/roff/nroff/nroff.man, src/roff/groff/groff.man,
* Replace tmac.safer with a real secure solution.wlemb2000-10-141-0/+10
| | | | | | | | | | * 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.
* Adding a new escape sequence B'...': If the string betweenwlemb2000-10-071-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. 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.
* Adding a new option -P and new environment variable GROPS_PROLOGUEwlemb2000-09-221-0/+6
| | | | | | | | | | | 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. * INSTALL: Add info about selecting paper format.
* Implementing two new requests .tm1 and .tmc: The former is similarwlemb2000-09-111-1/+5
| | | | | | | | | | | | | | | | | | 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. * tmac/groff_mdoc.samples.man: Small fixes. * tmac/groff_mdoc.man: Fixing typo.
* Implementing a .nop request which does nothing.wlemb2000-09-021-0/+16
| | | | | | | | | * src/roff/troff/input.cc (nop_request): New function. (init_input_requests): Use it. * src/roff/troff/troff.man, NEWS, man/groff.man: Updated. * doc/groff.texinfo: Added some comments.
* * NEWS, doc/groff.texinfo, tmac/groff_tmac.man, man/roff.man,wlemb2000-08-251-0/+7
| | | | | | | | src/roff/troff/troff.man: Document Eli's latest changes. * src/roff/troff/input.cc (open_mac_file, macro_source): Support macro file names of the form NAME.tmac as well as tmac.NAME.