1 ________________________________________________________________
2 * release of groffer 0.9.22
4 2005-22-04 Bernd Warken
8 Produce a `groff' output and allow wild cards on filespec
9 parameters for `--whatis'.
12 - $_FILESPEC_ARG: New variable for storing the actual filespec
14 - main_do_fileargs(): Set $_FILESPEC_ARG and add
16 - main_parse_args(): Add --all to --whatis.
17 - to_tmp_line(): New function to write the arguments to the
19 - whatis_filename(): Rename of what_is(). Construct a better
20 printout using $_FILESPEC_ARG. Repair the sed sequneces.
21 - whatis_filespec(): New function to print the filespec once
22 during the `whatis' process.
23 - whatis_header(): New funtion for printing the header of the
26 * groffer.man: Revise the documentation of --whatis.
30 Produce `groff' for `--apropos*'. Allow `--sections' for
31 `--apropos', ignore it with `--apropos-*'.
34 - --apropos*: Make these options without argument.
35 - $_APROPOS_PROG: New variable for the program that is is used for
37 - $_APROPOS_SECTIONS: New variable to determine the sections that
38 are filtered out of `apropos' output depending on `--apropos-*'.
39 - apropos_filespec(): Handling of apropos at the filespec level.
40 - apropos_run(): Remove it.
41 - apropos_setup(): New function.
42 - main_set_mode(): Remove handling of $_OPT_APROPOS*.
45 - Revise the documentation of `--apropos*'.
46 - Split section 'options for GNU man' into two sections `options
47 for man pages' and `long options taken over from GNU man'.
48 - Move `--apropos*', `--whatis', `--man', and `--no-man' to
49 section `options for man pages'.
51 ### special display (apropos and whatis)
54 - special_setup(): New function that chooses the setup between
56 - special_filespec(): New function that does the output at the
57 filespec level for apropos or whatis.
59 ### handle `--sections' for man page searching
62 - man_do_filespec(): Use $_OPT_SECTIONS of --sections instead of
63 $_MAN_AUTO_SEC if non-empty. If a section was given on the
64 filespec parameter $_OPT_SECTIONS is ignored. This differs from
65 `man' which always uses the restricted sections of --sections.
66 This function works for both normal man page search and whatis.
67 - apropos_filespec(): Use --sections for --apropos, but not for
68 --apropos-* because these provide already their own sections.
70 ### wildcards in filespec arguments
72 * groffer2.sh: Wildcards are now accepted. In `--apropos*' and
73 `--whatis' they are interpreted as wildcard search elements; but
74 in normal display they are only handled as their own character.
76 ### development; new option
79 - --print: New option that prints just its argument for parameter
81 - usage(): Add new option.
82 - $_OPT_DO_NOTHING: New variable for do_nothing(). Handle it at
83 the end of main_parse_Args().
85 * groffer.man: Add information on --print.
90 - error(): Always exit with $_ERROR.
91 - exit_test(): New function to exit when first exit was hidden by
92 (). Call it after each $().
94 ### automatic shell determination
97 - If no option --shell is given perform a test of several shells
98 to automatically start some shell for groffer2.sh. `ksh' is used
99 first because it can be safely terminated by Ctrl-C.
100 - This can be cancelled by providing --shell=''.
101 - Add test on `sed' program.
103 * groffer.man: Revise information on --shell.
108 - trap_set(): Remove argument. Instead of $_ALL_EXIT use only
110 - trap_unset(): Rename trap_clean(). Instead of $_ALL_EXIT use
112 - $_ALL_EXIT: Remove this variable.
113 - Replace all direct `trap' calls by trap_set().
115 * README_SH: New section `Bugs' on `trap'..
117 ### user errors, error output without function stack
120 - error_user(): New function for user errors.
121 - error(): Remove call of clean_up() because the trap will do it
122 with the exit. Remove the `kill' commands. Create a temporary
123 file `.error' that can be tested by exit_test() for a better exit
124 test (especially for shell `ksh').
125 - $_DEBUG_USER_WITH_STACK: New variable to enable function stack
126 output in error_user().
127 - list_from_cmdline(), list_single_from_abbrev(), main_set_mode():
130 ### test modes on X and tty
133 - is_X(), is_not_X(): New functions for checking on X Window.
134 - $_VIEWER_HTML_TTY, $_VIEWER_HTML_X: New variables that split
135 $_VIEWER_HTML. Add `galeon'.
136 - main_parse_args(): Allow mode change for graphical modes only
138 - _do_display() of main_display(): Create a special run for
139 viewers that run on the terminal; `lynx' is the only one so far.
141 ### add $GROFFER_MODE to command line
144 - After the handling of the configuration files integrate
145 $GROFFER_OPT to the command line.
146 - This makes a `set' in the shell determination unnecessary.
149 - The debug test gets simpler because quotes are vanished without
151 - main_parse_MANOPT(): Prepend $mpm_list to the command line.
152 - main_parse_args(): `set' is unnecessary.
154 ### debug; new options
157 - --debug-all, --debug-lm, --debug-params, --debug-shell,
158 --debug-stacks, --debug-tmpdir, --debug-user: New options.
159 - --debug: Enable all debug variables except $_DEBUG_STACKS and
160 $_DEBUG_LM. By the new options the smallest abbreviation is now
162 - $_DEBUG_STACKS: Rename $_DEBUG.
163 - $_DEBUG_PRINT_TMPDIR: New debug variable for printing the name
164 of the temporary directory in main_init().
165 - $_OPT_DEBUG: Remove this variable because debug is handled at
166 the early part of the script.
167 - clean_up(): Enlarge $_DEBUG_KEEP_FILES to not deleting the
169 - usage(): Move all development options on a section of its own.
170 - Move the test of rudimentary shell functionality at the
171 beginning of the script. Add test on `sed'.
172 - Follow this by the debug section. The determination of all
173 --debug* options can be done without a function.
175 * groffer.man: Revise information on --debug and add new options.
180 - $_ERROR: Move the definition of this variable here.
181 - $_GROFF_VERSION: New variable, is set over @...@ construct.
182 - $_OUTPUT_FILE_NAME: Move this variable to groffer2.sh.
185 - $_MAN_AUTO_SEC_LIST: Rename $_MAN_AUTO_SEC because it represents
187 - $_MAN_AUTO_SEC_CHARS: New read-only variable for storing
188 $_MAN_AUTO_SEC_LIST in [] construct. Use it in man_do_filespec()
189 and whatis_filename().
190 - $_SPACE_CASE: New read-only variable with [] on space characters
191 with \ for `case' patterns. Use it in several functions.
192 - $_SPACE_SED: New read-only variable with [] on space characters
193 for `sed'. Use it in several functions.
195 ### options and display
198 - list_from_cmdline(): Add test whether the same abbreviation is
199 part of long options with and without arguments. Give handling of
200 `=' a `case' pattern of its own.
201 - main_display(): Remove unnecessary calls of `clean_up' in order
202 to use `mozilla' without problems. In _do_display(): Fix -X by
203 providing a different process when $_DISPLAY_PROG is empty.
204 - main_set_mode(): Accept options for viewers as is, without check
205 for program. Add test whether no program is given for a mode.
206 This avoids unnecessary empty $_DISPLAY_PROG in main_display().
208 ### viewer programs that run on the terminal (tty); new options
211 - $_VIEWER_TERMINAL: New variable that stores whether a viewer was
212 supposed to run on tty.
213 - --dvi-viewer-tty, --html-viewer-tty, --pdf-viewer-tty,
214 --ps-viewer-tty, --tty-viewer-tty, --X-viewer-tty, --x-viewer-tty,
215 --www-viewer-tty: New options for viewers that run on a terminal.
216 - main_parse_args(), _do_display() of main_display(): Use the new
217 options and the new variable.
218 - usage(): Add the new options.
220 * groffer.man: Add information on options --*-viewer-tty.
225 - _do_display() of main_display(): Bear errors of `groff' run.
226 - is_not_file: Fix to have exactly one argument.
227 - is_not_prog(): Handle no arguments.
228 - list_has_not(): Fix.
229 - main_do_fileargs(): Remove $mdfa_exitcode.
230 - register_title(): Limit title to 4 elements.
231 - version(): Print the version information to standard output just
233 - --no-special: New option to disable former calls of `--all',
234 `--apropos*', and `whatis.
235 - --title: Make it an option with argument.
237 2005-08-07 Keith Marshall <keith.d.marshall@ntlworld.com>
239 * contrib/groffer/Makefile.sub (install): Reference groffer2.sh
240 as $(srcdir)/groffer2.sh, so it will install when building in a
241 different directory from the source.
243 ________________________________________________________________
244 * release of groffer 0.9.21
246 2005-08-02 Bernd Warken
251 - $_AT: New variable for `@'.
252 - @...@: Replace the @...@ constructs by variables _AT_..._AT.
253 These constructs are transformed by `make' to useful information.
254 Keep all of these constructs in the first part of groffer.sh. For
255 a run before a `make' call, the script sets these variables to
256 special values for testing purpose.
257 - $_GROFFER_LIBDIR: Variable pointing to the groffer library
258 directory @libdir@/groff/groffer.
260 ### Configuration files
263 - Add test for `$()' construct.
264 - Read and transform the configuration files and execute the
265 emerging commands. The `sed' script was heavily enlarged to
266 handle line with spaces and quotes. The emerging script is now
267 called by `eval', so no temporary file is needed.
268 - $_CONF_FILE_ETC, $_CONF_FILE_HOME: New variables for the config
270 - $_SQ, $_SP: Move variables for characters before the handling of
271 the configuration files. Rename $_SQUOTE to $_SQ and $_SPACE to
273 - $GROFFER_OPT: Remove cleaning of this variable before the
274 reading of the configuration files.
277 - main_init(): Remove the getting of the configuration files.
279 ### Rewrite the shell determination
282 - Get rid of all functions in `groffer.sh'. Rewrite the shell
283 determination with `` and $().
284 - --shell: Shortest abbreviation is `--sh'. Allow arguments for
286 - Allow an empty argument for --shell as shell name to overwrite a
287 specified shell; an empty shell name gets back to the default
289 - The shell determination now inludes the full handling of the
290 config files. The `--shell' option needs no longer a line
296 - Remove test of `unset'.
297 - Remove all calls of `unset'.
298 - Use one character names for all variables that are meant to be
299 local in this script.
302 - Move the test of `unset' to the testing of rudimentary shell
303 functionality without change.
305 ### Allow abbreviations for long options
308 - list_has_abbrev(): New function for checking a list having an
309 element with a given abbreviation.
310 - list_get_single_from_abbrev(): New function to retrieve the
311 element having a given abbreviation.
312 - list_from_cmd_line(): For an option abbreviation determine the
313 corresponding long option.
314 - From the man option lists remove the elements that are also in
316 - Allow abbreviation for the early test of --debug.
318 * groffer.sh: Allow abbreviation for the early test on --shell.
319 - get_opt_shell(): Rewrite _get_opt_shell() and the shell test
321 - test_on_shell(): Rename function _test_on_shell().
322 - $_SHELL: global variable for the shell to run groffer2.sh.
324 ### Get rid of `sh -c'
327 - main_display(), _do_display(): Remove the `sh -c' calls. Make
328 the cleanup working without it.
329 - _do_display(): Extend _do_display() such that it can be used for
330 the pdf mode as well.
331 - _make_pdf(): New subfunction of main_display() for running the
332 additional parts of pdf mode in _do_display().
333 - rm_file(), rm_file_with_debug(), rm_tree(): New functions for
334 removing files and directories.
339 - $_START_DIR: New variable to store the directory at the starting
341 - main_display(): Go to the groffer temporary directory to be able
342 to process internal `groff' data like pictures.
343 - clean_up(): Get back to the starting directory.
345 ### Compatibility with strange shells
348 - clean_up(): `zsh' and `posh' had difficulties with `eval'.
349 - is_*(): Add test on empty argument. Some shells return true on
350 `test -d' etc. with empty argument, while most shells return
352 - echo1(); New function to print single line `cat <<EOF'. Replace
353 all `echo x' by `echo1'.
354 - list_has_abbrev(), list_from_cmdline(): Correction.
355 - main_parse_MANOPT(): Repair and revise.
356 - --do-nothing: New option without output (for development).
357 - Rewrite rudimentary shell functionality near the beginning of
360 * groffer.sh, groffer2.sh:
361 - Remove `;' after the commands `if', `while', and `until'.
363 ### Debugging information
366 - $_DEBUG_PRINT_PARAMS: New variable for printing all parameters
367 from the config files, $GROFFER_OPT, and command line after they
368 have been transformed.
369 - $_DEBUG_PRINT_SHELL: New variable for printing the name of the
370 shell found in groff.sh.
371 - main(): Move the landmarks of main-*() into main().
373 ### Further checks and additions
375 * groffer.sh, groffer2.sh:
376 - $_PROGRAM_NAME: Replace this variable by `groffer'. The program
378 - $_GROFFER_RUN: Remove this variable. As `groffer.sh' or
379 `groffer' is no longer rerun, this variable is not necessary any
383 - main_set_resources(): Make the default viewers capable to use
384 arguments in the list.
385 - leave(): Add an argument for given exit code. Use it where
386 suitable in main_*().
387 - do_filearg(): Add error messages for non-existing files and man
389 - _do_opt_V(): New subfunction of main_display() to handle the
390 output for option `-V'. `groff -V' is greatly enlarged by
391 `groffer' specific information.
392 - register_title(): Handle file names with spaces. Replace spaces
394 - is_existing(): Add `test -c' for special files.
395 - usage(): Add `=arg' to the options with an argument. Add option
397 - kghostview: In the default viewer list, add option
399 - $_OPTS_CMDLINE_SHORT_NA: Correct a lacking space.
401 * Makefile.sub: Repair the installation instructions for
405 - Add paragraph on option handling.
406 - Add option `--do-nothing'.
407 - Reorder option for development and `groff'.
408 - Rewrite documentation for option `-V'.
410 - Reformulate sections CONFIGURATION FILES, COMPATIBILITY and SEE
412 - Make `man' italic where possible.
413 - .copyleft: Adjust the fonts.
415 * README: Update sections `Output' and `Compatibility'.
418 - Add `mksh' as compatible shell.
419 - Add information on the scripts after the split.
421 * TODO: Remove some fulfilled parts.
423 * ChangeLog: Remove final spaces.
425 ________________________________________________________________
426 * release of groffer 0.9.20
428 2005-07-30 Bernd Warken
430 ### Split groffer.sh into two files groffer.sh and groffer2.sh.
433 - Remove the second part of this script. It is now in
435 - $_GROFFER2_SH: New variable to point to the installed position
436 of `groffer2.sh'. This position is presented using @libdir@.
438 * groffer2.sh: New script containing the second part of
439 groffer.sh. This script will be installed in the groffer library
440 directory @libdir@/groff/groffer, this might be
441 /usr/local/lib/groff/groffer/groffer2.sh for example.
444 - `groffer': Add replacement of @libdir@.
445 - `install_data': Add the installation of the groffer library
446 directory and groffer2.sh.
447 - `uninstall_sub': Delete the installed `groffer2.sh' and the
448 groffer library directory.
451 - Remove the function list.
452 - Add argument options to the list of used commands.
453 - Documentation of the splitting of the script.
454 - Document the possible abbreviation of options.
456 ________________________________________________________________
457 * release of groffer 0.9.19
459 2005-07-07 Bernd Warken
461 * groffer.sh: extensions
462 - `mode x': Mode for the equivalent options `--x', `--mode x',
463 `--X' `--mode X', and the default mode. The default assumes a
464 resolution of 75 dpi. The default device for a resolution of 75
465 dpi is `X75-12', the default device for a resolution of 100 dpi is
466 `X100'. The default geometry for the resolution of 100 dpi is set
467 to the width 800 dpi.
468 - `mode X': New mode for option -X only.
469 - `-V': Extent the `groff' output of -V by `groffer' specific
470 information (in main_display()).
471 - register_file(): Replace title `-' by `stdin'.
472 - $_DEBUG_KEEP_FILES: If set to `yes' the files in the temporary
473 directory are not deleted before the end trap.
475 * groffer.sh: get `zsh' to work as well
476 - tmp_create(): Use `: >file' for generating an empty file.
477 - rmdir: Replace `rmdir' by `rm -f -r'.
478 - eval: Add `eval' to many commands with variable arguments.
480 * groffer.sh: repair `debug'
481 - Print all debug output to stderr.
482 - $_FUNC_STACK: Built function call stack even when $_DEBUG is not
483 set. Now the arguments are not added.
484 - $_DEBUG: If set to `yes' print 3 call stack events: the function
485 that is added with its arguments is printed with `+++ '
486 (func_push()); the call stack after the addition is printed with
487 `>>> ' (func_push()); the call stack after the removing is printed
488 with `<<< ' (func_pop()).
489 - error(): Always print the function call stack on errors.
491 * groffer.sh: Corrections
492 - $_groffer_run: Rename to $_GROFFER_RUN.
493 - $unset: Rename to $_UNSET.
494 - Repair test of `unset'.
495 - Repair test for `--shell'. The script is now rerun under the
496 shell specified in the option argument. This can increase the
499 * README_SH: `zsh' now works.
502 - Reformulate the information for the `groffer' specific details
504 - Add information on the debug process.
505 - Add information on the default devices in `x mode'.
508 ________________________________________________________________
509 * release of groffer 0.9.18
511 2005-07-01 Bernd Warken
513 * groffer.sh: further shell compatibility
514 - `echo': Remove options and possible options of `echo' by
515 preceding the argument with a character `x' that is removed by
516 `sed' or replace `echo' by `cat <<EOF'. `echo -n' seems to be not
517 portable, so it is omitted.
518 - `for': Remove `;' from within `for' (because of ksh).
519 - `ls': Old UNIX systems echoed the error message to standard
520 output. So handle the output with `sed'. If the output contains
521 `not found' map it to an empty string.
522 - `true': Replace `true' by command `:'. Remove test of `true'
523 (because `ash' refuses the redefinition of builtins even in an
524 unreachable `if' branch).
525 - `false': Remove test of `false'; it isn't used any more.
526 - `test': As `test -e' does not exist in Solaris 2.5 replace it by
527 `test -f || test -d'.
528 - `unset': `unset' is said to be not portable. As `ash' protests
529 against the definition of the function `unset()' in the test of
530 `unset' replace the test by defining `$unset' to `unset' if it
531 exists and to `:' otherwise. Use `eval $unset' instead of the
532 direct command `unset'.
533 - _get_opt_shell(): Replace `for' loop with `shift' by `while'.
534 - man_search_section(): Replace `for f in filename*' by a test on
535 the existence of `filename*'.
536 - `zsh' interprets `$...' as `"$..."'. So `eval' must be called;
537 This cannot be used in `for i in $f', so it must be rewritten as
538 `for i in $(eval set x $f; shift; echo "$@")'
541 - `--X', `--x', `--mode=X', `--mode=x': Make these options
542 equivalent to choosing an X device by setting `-TX75-12'. `-X' is
543 still equivalent to `groff -X'.
544 - main_init(): Choose the name of the temporary file by adding a
545 number using `expr' if it exists and cannot be removed.
546 - main_parse_args():Repair some options by replacing `$mpa_mode'
548 - catz(): Rename it to cat_z() to avoid problem with existing
550 - where(): Rename to where_is().
551 - $_CONFFILES: Rename to $_CONF_FILES.
552 - $_HAS_BZIP: export and preset it.
555 - Document the `X mode' changes.
556 - Add `@g@' to `troff'.
558 * README, README_SH, TODO:
559 - Add date line `Latest update:'.
560 - Add `...' quoting to essential terms.
561 - Add Emacs mode at the end.
564 - Add documentation on the above compatibility changes.
565 - Add documentation on used commands.
566 - Mention the tested shells.
571 ________________________________________________________________
572 * release of groffer 0.9.17
574 2005-06-23 Bernd Warken
576 * groffer.sh: get rid of `local' in functions (it is not POSIX)
577 - Replace local variables by variable names with a special prefix
578 that is an abbreviation of the corresponding function name (quasi-
580 - Unset the quasi-local function variables before returning.
581 - _t_e_s_t_f_u_n_c_(): Remove tests for local and global
583 - Add quasi-local variables for saving the content of
584 single-character variables.
585 - Remove some unused local and global variables.
586 - Several variables were forgotten to make local. They are now
589 * groffer.sh: other corrections
590 - $return_var: New function (after `eval') for an arbitrary
592 - obj*(): Add return modes.
593 - Rewrite tests for `true' and `false'.
594 - Add function names to error calls where it was forgotten.
595 - `for': Replace `for x in "$@"' by `for x'.
596 - `set': Replace `set -- ...' by `set x ...; shift'.
597 - `sed': Replace `\|.*|s|...|...|' by `s|...|...|'.
600 - Add information on the removing of `local'.
601 - New section for non-POSIX shell restrictions.
603 2005-06-20 Keith Marshall
605 * README-SH: Information of `Portable shells' in info autoconf.
607 ________________________________________________________________
608 * release of groffer 0.9.16
610 2005-06-19 Bernd Warken
612 * groffer.sh: Place each `then', `else', and `do' on a line of its
613 own because some shells do not support the mixture mode.
615 * groffer.man: Add section `BUGS'.
618 - Add compatibility information.
619 - Correct documentation for function arguments.
621 2005-06-18 Keith Marshall
623 * groffer.sh: $_NULL_DEV: Replace /dev/null by $_NULL_DEV which is
624 either /dev/null or NUL if /dev/null does not exist.
626 2005-06-17 Zvezdan Petkovic
628 * Makefile.sub: $(RM): Define it to `rm -f' because not all `make'
629 programs have it predefined.
631 2005-06-16 Bernd Warken
632 ________________________________________________________________
633 * release of groffer 0.9.15
637 - Use `sed -f $(SH_DEPS_SED_SCRIPT)'.
639 2005-05-20 Bernd Warken
640 ________________________________________________________________
641 * release of groffer 0.9.14
643 * groffer.man: correction of non-hyphenation
645 2005-05-17 Bernd Warken
646 ________________________________________________________________
647 * release of groffer 0.9.13
650 - $_VIEWER_DVI: Add `kdvi'.
651 - $_VIEWER_PDF: Add `kghostview', `ggv', and `kpdf'.
652 - $_VIEWER_PS: Add `kghostview' and `ggv'.
653 - $_modefile: For the output file name, add extension .ps for ps
654 mode and .dvi for dvi mode. This exists already for the html and
656 - Update some parts of the documentation.
659 - Move some parts on usage from README_SH to README.
660 - Reformulate several parts of both files.
662 * groffer.man: update
664 2005-05-14 Keith Marshall
667 - first line: Add space to `#! /bin/sh'.
669 2004-11-15 Bernd Warken
670 ________________________________________________________________
671 * release of groffer 0.9.12
674 - main_init(): Rewriting of the creation of the temporary
675 directory to ensure that it cannot be made writable apart from the
676 user. If the directory already exists and cannot be removed then
677 append `X' to the directory name.
678 - is_non_empty_file(): fix it to use POSIX `test -s'.
679 - is_existing(): new function.
680 - POSIX `rm -f -r': use this in `clean_up()' and `main_init()'.
681 - `--macro-file': remove this unused long option.
682 - `-V', `--source', `--device': move these from groff options
684 - `$_TMP_DIR_SUB': remove this unused variable.
686 2004-06-15 Bernd Warken
687 ________________________________________________________________
688 * release of groffer 0.9.11
691 - To the search of the `--apropos-*' options, add man pages with a
692 subsection in their apropos output.
694 2004-06-02 Bernd Warken
695 ________________________________________________________________
696 * release of groffer 0.9.10
699 - Remove automatic call of `ash' due to inconsistencies of
700 different ash versions.
701 - In the first run, add recognition of `--shell' lines in the
702 groffer configuration files. To configure an external shell in
703 a configuration file, a line starting with `--shell' is
705 - list_from_cmdline(): Simplify the arguments.
706 - As $POSIXLY_CORRECT is internally set to `y' by some GNU
707 `/bin/sh' shells the following 2 fixes are necessary:
708 -- `sed': Empty patterns are not allowed with $POSIXLY_CORRECT
709 set; so move the address information before the `s' command to the
710 pattern after the command, and write `.*' to the address field.
711 -- list_from_cmdline(): Remove the strange $POSIXLY_CORRECT style
712 to finish the option processing after the first non-option
713 argument; use the flexible GNU mixing of options and file names
717 - Remove any hints on `ash'.
718 - Add minus line behavior of `--shell' for configuration and add a
719 corresponding example.
720 - Update the information on $POSIXLY_CORRECT.
722 2004-05-29 Bernd Warken
723 ________________________________________________________________
724 * release of groffer 0.9.9
727 Fix first run section to allow the starting shell to go on if
728 `ash' is not available.
731 Remove unnecessary information on groffer version.
733 2004-05-12 Bernd Warken
734 ________________________________________________________________
735 * release of groffer 0.9.8
738 Fix problems of `test' by adding subs to arguments.
741 Write the file license as macros that are called in sections
747 2004-04-30 Bernd Warken
748 ________________________________________________________________
749 * release of groffer 0.9.7
752 - obj(), obj_data(), obj_from_output(), obj_set(): New object
753 oriented functions to minimize complicated `eval' commands.
754 - list_*(): Corrections.
755 - usage(): Streamlining.
757 * groffer.man, README_SH:
760 2004-04-27 Bernd Warken
761 ________________________________________________________________
762 * release of groffer 0.9.6
764 This version replaces the license of all files except ChangeLog of
765 the groffer source to the GNU General Public License (GPL) of the
766 version described in files COPYING and LICENSE in the groff top
770 Changement from the GNU Free Documentation License (FDL) to
771 the GNU General Public License (GPL).
773 * README, README_SH, TODO:
774 Add license GNU General Public License (GPL).
776 * Makefile.sub, groffer.sh:
777 Keep the GNU General Public License (GPL), but refer to the
778 COPYING and LICENSE files.
780 * ChangeLog: Add a license in the style of Emacs ChangeLog file,
781 which is weaker than the GPL, but has its flavor.
783 2004-04-24 Bernd Warken
784 ________________________________________________________________
785 * release of groffer 0.9.5
787 This version is a rewrite of groffer in many parts, but it is kept
788 in the old single script style.
790 Overview of new options:
791 --text, --mode text, --tty-viewer,
792 --X, --mode X, --X-viewer, --html, --mode html, --html-view,
793 --apropos-data, --apropos-devel, --apropos-progs
796 <groffer-source>/README_SH
799 ******* Extension of the `apropos' handling
801 The output of man's `apropos' has grown immensely meanwhile, so it
802 has become inefficient. Now `groffer' provides new options to get
803 the a selected information from this output.
806 `--apropos-progs': new option for displaying only information
807 on programs (man page sections 1, 6, and 8)
808 `--apropos-data': new option for displaying only information
809 on documented data (man page sections 4, 5 and 7)
810 `--apropos-devel': new option for displaying only information
811 on development documentation (man page sections 2, 3 and 9)
812 `--apropos': still displays just the output of man's `apropos'
814 - Specify all of these options as a single argument option; that
815 makes groffer's `--apropos' option slightly different because
816 the corresponding `man' option does not have arguments, but takes
817 all file arguments as apropos targets. So just ignore the `man'
818 options `-k' and `--apropos' in the parsing of $MANOPT.
819 - Exit after processing one `apropos' call.
822 ******* Quasi object oriented function arguments
824 An object is the name of an environment variable. The value of
825 this variable contains the object's content. This allows to
826 specify function arguments and the calling syntax in a simpler way
827 by letting the first argument be a variable name, usable for input
830 Such an object type is `list', the string value of a shell
831 variable arranged in space-separated single-quoted elements, such
832 as $GROFFER_OPT internally.
835 - Remove list_from_args(), list_element_from_arg()
836 list_from_lists(), list_length(), and list_prepend().
837 They can be replaced by list_append().
838 - All list*() functions are rearranged such that the first
839 argument is a list object, the name of a variable.
842 ******* Simplification of configuration files
844 The new syntax of the groffer configuration files is
845 - all lines starting with a `-' character are interpreted as
846 command line options for all calls of groffer; they are collected
847 and prepended to the actual value of $GROFFER_OPT; optional
848 spaces at the beginning.of the line are omitted.
849 - all other lines are interpreted as a shell command and executed
850 in the current shell of the groffer call.
853 - The command line and the external environment variables such as
854 $GROFFER_OPT of the groffer call have the highest precedence.
855 - This is overwritten by the configuration file in the user's home
857 - The system configuration file in /etc has the lowest
861 The configuration files are now called after the determination of
862 the temporary files in main_init().
865 ******* Script file name
867 The file name of the script is needed for the several calls during
868 the search for the optimal shell.
871 - $_GROFFER_SH: replace $_this by $_GROFFER_SH and use $0 for
872 determining the file name of the script for the following calls,
873 instead of the cumbersome @BINDIR@ construction.
874 - Force the script to be called as an executable file, so $0 must
875 contain the program name.
878 ******* Improved temporary file names
880 Just like groff, groffer mixes all file parameters into a single
881 output file. Its name is now constructed as a comma-separated
882 list built from the file name arguments without a leading comma.
883 So a leading comma can be used for the internal temporary file
887 - $_OUTPUT_FILE_NAME: new global variable as basis for the output
888 file name; it is set in main_set_resources().
889 - tmp_create(): use `,name' for temporary files different from
890 output file because the output file name does not start with a
891 comma. `$$' is not needed anymore.
892 - main_display(): simplification of $_modefile in _do_display()
893 and single display modes.
894 - Add extension `.html' to output file name in html mode.
895 - base_name(): correction for strange positions of `/'.
901 - Set the main default mode to `x' with groff's X Window viewer
903 - Allow 'x' and 'X' in `--mode' for the X Window mode; the same
904 for `--x' and `X', `--x-viewer' and `--X-viewer'.
905 - Make groff's `-X' equivalent to `mode X'.
906 - Fix `--auto', `--mode auto', and `--default-modes'.
907 - `html' mode: new mode equivalent to `www', add `konqueror' and
909 - `pdf' mode: fix zoom options for pdf-viewer `xpdf' in
910 main_set_resources(); in main_display() fix the display structure.
911 - Set default X Window resolution to 75dpi. This is not optimal,
912 but with a higher value the options and resources for some viewers
914 `--text' and `--mode text': new option for text output without a
916 - `--tty-viewer': new option equivalent to `--pager'.
917 - Correct the pagers for `tty' mode.
918 - Fix `groff' mode in main_set_resources() and main_display().
919 - Harmonize `--mode arg' with the equivalent options `--arg'.
922 ******* Fixes for command line options
925 - list_from_cmdline(): fix the parsing of options with arguments.
926 - Rename $_OPT_TTY_DEVICE to $_OPT_TEXT_DEVICE.
927 - $_OPTS_X_*: new variables for the inhereted X Window variables.
928 - Improve the distribution of the command line options into
929 $_OPTS_GROFFER_*, $_OPTS_GROFF_*, $_OPTS_X_*, and $_OPTS_MAN_*.
930 - $_OPTS_MANOPT_*: new variables for the parsing of $MANOPT.
931 - Correct $_OPTS_CMDLINE_*.
932 - Remove some unused $_OPTS_*.
933 - `--iconic': new option from `-iconic' of the X Window toolkit.
934 - Correct `--rv' to an option without argument.
935 - Minor fixes of other X Window toolkit options.
941 - is_prog(): allow 0 arguments.
942 - is_not_writable(): new function.
943 - is_*(): fix trailing return codes.
944 - Replace most `test' calls by is_*() functions.
945 - man_setup(): due to bugs in `manpath', prefer
946 manpath_set_from_path() for the determination of the man page path.
947 - man_search_section(): correction of some `for' loops.
948 - Remove export of external non-groffer variables.
951 ******* Documentation
954 - Reorder the option details according to the option origin as
955 groffer, groff, X, and man options.
956 - Add the programming changes information mentioned above.
957 - Support man pages with a dot in their name
959 * README_SH: new file
960 Move large parts of the documentation in `groffer.sh' into this
963 * groffer.sh: usage():
964 - Change the output for `--help' to standard output.
965 - Restructure the information for this help output.
968 ******* Removement of the author's email address
970 Because of the extreme spam attacks, the author removed all
971 occurencies of his email address in every file of the groffer
974 2003-01-22 Bernd Warken
975 ________________________________________________________________
976 * release of groffer 0.9.4
978 * groffer.sh: corrections for some restrictive shells
979 - Possible exit codes in actual `ash' are between 0 and 63. To
980 handle even deeper restrictions, use 7 as maximal code instead
981 of 255 as replacement for error -1.
982 - Remove variables $_BAD2 and $_BAD3.
983 - Replace `trap' argument `EXIT' by 0 and write new fuctions
984 `trap_clean' and `trap_set' to handle the restrictions of `trap'
986 - Correct wrong $MANPATH to $_MAN_PATH in function
988 - Test existence of directory before deleting it in the
989 `clean_up' definitions.
990 - Correct help output in `usage' (called by `--help').
993 Remove mention of `shoop' and `apropos'.
995 2002-10-21 Bernd Warken
996 ________________________________________________________________
997 * release of groffer 0.9.3
999 * groffer.sh: new temporary subdirectory
1000 - Generate temporary subdirectory for storing temporary files
1001 with better names in future groffer versions (name:
1002 "groffer$$" in usual temporary directory).
1003 - Use `umask 000' for temporary files to allow cleaning up
1004 for everyone after a system break.
1005 - Change both clean_up() functions (for normal shell and
1006 for main_display() subshell) to handle the new subdirectory.
1007 - clean_up_secondary() and $_TMP_PREFIX are unnecessary now, so
1010 * Makefile.sub: `sed' commands for "groffer:"
1011 - Remove "@g@" entry (not used in "groffer.sh").
1012 - Add global replace for "@BINDIR@" and "@VERSION@" for future
1015 * TODO: think about...
1016 - writing part of groffer in C/C++.
1017 - handling several files with different macro packages.
1019 2002-10-17 Bernd Warken
1020 ________________________________________________________________
1021 * fixes of groffer 0.9.2
1024 Terminate main_parse_MANOPT() if $MANOPT is empty or consists
1025 of space characters only.
1027 * groffer.man: some fixes in "GROFFER OPTIONS"
1028 - New macro ".Header_CB" for CB font in .TP headers; used for
1029 definition of variables in option --mode.
1030 - Fix some option references to refer to long options.
1033 New file for general information on the groffer source; it is
1036 2002-10-14 Bernd Warken
1039 add replacement "@BINDIR@" to "$(bindir)" for "groffer:"
1042 Define $_this as "@BINDIR@/${_PROGRAM_NAME}" to save the right
1043 installation position of groffer for the special shell calling.
1046 Remove double definition of filespec parameters.
1048 2002-10-13 Bernd Warken
1049 ________________________________________________________________
1050 * release of groffer 0.9.2
1053 - Fix some 'sed' functions: two in func_stack_dump(), one in
1054 base_name(), add 'sed' command in list_from_cmdline().
1055 - Finish main_parse_MANOPT() if $MANOPT is empty.
1056 - Sort $_OPTS_GROFF_SHORT_NA like groff short options (but
1058 - Fix some comments.
1060 * groffer.man: make it more readable (but no additions)
1061 - A shortened section "SYNOPSIS" is followed by a simplified
1062 section "DESCRIPTION".
1063 - The options from "SYNOPSIS" go to new section "OPTION
1064 OVERVIEW" with all groffer options in a single subsection.
1065 - The details of all groffer options are described in section
1067 - New macro for file names ".File_name".
1068 - "Option Parsing" is moved to section "COMPATIBILITY".
1069 - Fix some "EXAMPLES".
1071 2002-09-30 Bernd Warken
1072 ________________________________________________________________
1073 * release of groffer 0.9.1
1075 * TODO: remove done entries
1076 - Remove request for different shells.
1077 - Remove the 'sed' complaints.
1079 2002-07-15 Bernd Warken
1081 * groffer.sh: replace `sed' interface by direct `sed'
1082 - This improves the performance of the shell programming parts
1083 and shortens the groffer script by about 5%.
1084 - Remove functions: string_del_append(), string_del_leading(),
1085 string_del_trailing(), string_flatten(), string_get_before(),
1086 string_get_leading(), string_replace_all(), string_sed_s(),
1087 and their auxiliary functions.
1088 - Replace all calls of these functions by direct `sed' commands.
1089 - Define variables for special characters to ease `sed' calls.
1091 - Restrict list_from_string() to single character separators.
1092 - Correct list_check() and base_name().
1093 - Add comments to all calls of `sed'.
1095 * groffer.sh: add run-time support for several shells
1096 - New option `--shell': stop execution and rerun groffer under
1097 the shell specified in the argument of `--shell'.
1098 - If no shell was specified at run-time, `ash' is tried first;
1099 if `ash' is not available continue with the shell with which
1100 groffer was called from the command line, or with the shell
1101 name in the first line of the script, actually `/bin/sh'.
1103 2002-07-12 Bernd Warken
1104 ________________________________________________________________
1105 * fixes for groffer 0.9.0
1107 * groffer.sh: enhance version information
1108 `groffer -v|--version' now print:
1109 - groffer's version number and date
1110 - the string `is part of '
1111 - groff's version information (version number and copyright),
1112 but not groff's `called subprograms' information.
1114 * groffer.sh: minor fixes
1115 - Fix the argument parser to process argument `-' correctly.
1116 - Some display programs have trouble with empty input; feed a
1117 line consisting of a single space character in this case for
1118 all display modes (not for source or groff modes).
1121 fix entry `shoop' (not 'shopt').
1123 2002-06-28 Bernd Warken
1124 ________________________________________________________________
1125 * release of groffer 0.9.0
1127 * groffer.sh: new mode `pdf'
1128 - PDF (Portable Document Format):
1129 -> Transform groff `ps' output into pdf using `gs'.
1130 -> Pro: PDF viewers provide text searching (!).
1131 -> Con: the transformation is quite slow.
1132 -> Not suitable as an auto mode.
1133 - New options `--pdf', `--pdf-viewer', `--mode pdf'.
1134 - Standard pdf viewers `xpdf' and `acroread'.
1135 - For `xpdf', choose zoom `z 3' for 100 dpi, `z 2' for 75 dpi.
1137 * groffer.sh: support bzip2 decompression
1138 - add test for `bzip2' with necessary options
1139 - extend functions `catz()' and `save_stdin()'.
1142 remove entry on `bzip' decompression (done).
1145 - Document new `pdf' features.
1146 - Document new `bzip2' decompression.
1147 - Fix documentation for `--auto-modes'.
1149 * groffer.sh: minor fixes
1150 - Improve device tests in `tty' and `dvi' modes.
1151 - Internally, map mode `auto' to '' to facilitate tests.
1152 - Fix auto mode sequence to: `ps,x,tty' as was intended.
1154 2002-06-25 Bernd Warken
1160 Fix some indentations.
1162 2002-06-23 Bernd Warken
1163 ________________________________________________________________
1164 * release of groffer 0.8
1166 * Makefile.sub: add copyright section
1169 - Document the new options.
1170 - Revise the documentation of the modes.
1171 - Document the configuration files in new section `FILES'.
1172 - Redesign section `EXAMPLES'.
1173 - Remove documentation for `-W'.
1175 * groffer.sh: new debugging features
1176 - Disabled by default; enabled by environment variables.
1177 - Add landmark() to catch typos with quotes.
1178 - Add a function call stack for suitable functions; implemented
1179 as within the argument checker func_check().
1180 - This implies the need to provide `return' with some clean-up
1181 facility; implemented as `eval "$_return_..."'.
1182 - Add option `--debug' to enable debugging at run-time.
1183 - Actually, the groffer script uses only shell builtins found
1184 in `ash' (a subset of POSIX) and POSIX `sed' as the only
1185 external shell utility.
1187 * groffer.sh: customization of viewers
1188 - In `groff' mode, the groffer viewing facilities are disabled.
1189 - The postprocessor option `-P' costumizes the viewer only in
1190 some situations in the `groff' mode, so a new infrastructure
1191 for viewer customization is necessary.
1192 - Allow to specify arguments to the viewer programs specified
1194 - Implement some of the essential X Toolkit resource options in
1195 groffer, but with use a leading double minus.
1196 -> `--bd': set border color.
1197 -> `--bg', `--background': set background color.
1198 -> `--bw': set border width.
1199 -> `--display': set X display.
1200 -> `--geometry': set size and position of viewer window.
1201 -> `--fg', `--foreground': set foreground color.
1202 -> `--ft', `--font': set font.
1203 -> `--resolution': set X resolution in dpi.
1204 -> `--title': set viewer window title.
1205 -> `--xrm': set X resource.
1206 - Remove misnamed option `--xrdb'.
1208 * groffer.sh: new mode structure
1209 - New Postcript mode `ps' (`--ps'):
1210 -> default viewers: gv,ghostview,gs_x11,gs;
1211 -> `--ps-viewer' sets the Postscript viewer.
1212 - New mode `www' (`--www') for displaying in a web browser:
1213 -> default browsers: mozilla,netscape,opera,amaya,arena;
1214 -> `--www-viewer' sets the web browser.
1215 - New dvi mode (`--dvi'); default viewer `xdvi':
1216 -> default viewers: xdvi,dvilx;
1217 -> `--dvi-viewer' sets the dvi viewer.
1219 -> active if no other mode is given or by new option `--auto';
1220 -> selects from a sequence of modes that are tested until one
1222 -> the default mode sequence is actually `ps', `x', `tty'.
1223 -> `--default-modes' sets this mode sequence as a comma
1224 separated string of program names, optionally each one
1227 -> process input like groff, ignore viewing options.
1228 -> activated by new option `--groff'.
1229 -> automatically active with one of `-V', `-X', `-Z'.
1230 - Revise `tty' mode:
1231 -> allow several text devices.
1233 - Reorganize the mode management:
1234 -> new mode setting option `--mode'.
1235 -> logically separate source, groff, and display modes.
1236 -> intermediate output mode is now part of mode groff; remove
1237 any special features around `-Z'.
1238 - Update usage() to reflect the new option structure.
1240 * groffer.sh: add configuration files
1241 - `/etc/groff/groffer.conf' system-wide configuration.
1242 - `${HOME}/.groff/groffer.conf' user configuration.
1243 - The configuration file are shell scripts for now; later
1244 implementations can identify this from the `#! /bin/sh' line.
1246 * groffer.sh: new data structure `list':
1247 - Implement a `list' data structure as a string consisting of
1248 single-quoted elements, separated by a space character;
1249 embedded single-quotes are escaped.
1251 * groffer.sh: new option parser based on `list':
1252 - Write new option parser based on `list', compatible to both
1253 POSIX getopts() and GNU getopt().
1254 - Long options are now available on GNU and non-GNU systems.
1255 - Get rid of POSIX getopts() and GNU getopt().
1256 - the `-W--longopt' construct is now obsolete; remove it.
1257 - add test/function for `unset'.
1258 - Option strings are now implemented as `list's in order to
1259 allow unusual characters in options.
1260 - Parse $MANOPT first; translate essential arguments into
1264 - determine prompt length for `.Shell_cmd'* dynamically.
1265 - naming scheme for static strings and registers changed to
1266 `namespace:macro.variable'.
1269 2002-06-16 Werner Lemberg <wl@gnu.org>
1272 Implement man option `--ascii' by `-mtty-char'.
1275 2002-05-31 Werner LEMBERG <wl@gnu.org>
1277 * groffer.man (@.Shell_cmd_width):
1278 Increase to 4m (we use `sh#' as the prompt).
1281 2002-05-31 Bernd Warken
1282 ________________________________________________________________
1283 * release of groffer 0.7
1285 * groffer.sh: remove incompatibilities with the `ash' shell:
1286 - do not use `!command':
1288 -> write `_not_' equivalents for some functions
1289 - do not use `[^]' in `case':
1290 -> restructure some functions.
1291 - only single-character names for loop variables:
1292 -> spoils the paradigm of leading `_' for local variables.
1293 - spurious trouble with `for i in ${var}':
1294 -> use `eval set -- ${var}' and `for i in "$@"'
1295 - do not change or use $IFS:
1296 -> define new functions string_split() and `path_split()'.
1297 -> result must be processed by `eval set --'.
1298 -> solve conflicts with existing positional parameters.
1299 - trouble with exporting external `$GROFF_*' variables:
1300 -> hope that they were exported in the calling shell.
1301 - not smart about additional blanks:
1302 -> remove unnecessary white space.
1304 * groffer.sh: improve run-time speed:
1305 - `ash' more than doubles the speed of `bash'.
1306 - speed-up `man_setup()'.
1309 2002-05-30 Werner Lemberg <wl@gnu.org>
1312 - remove some wrong `\:'.
1313 - rename macro names that start with a `[' (clashes with refer).
1317 2002-05-28 Bernd Warken
1318 ________________________________________________________________
1319 * release of groffer 0.6
1321 This is almost a complete rewrite since groffer 0.5 .
1322 ________________________________________________________________
1326 - Apply the changes done in www.tmac (.URL and .MTO)
1327 - Replace \fP by \f[].
1328 - Redesign and rewrite most macros.
1329 - Include the documentation for the new features.
1330 - Greatly enlarge section ENVIRONMENT
1334 - Start a TODO file with several sections.
1337 Due to the many changes, shorten and rearrange the entries
1339 ________________________________________________________________
1340 * Shell compatibility
1343 - Due to possible conflicts in old BSD versions, `[]' was
1344 replaced by `test'; the `test' options `-a' and `-o' were
1345 replaced by multiple calls of `test'.
1346 - Write interface to the `sed' command `s' to become
1347 independent of the delimiter character. Rewrite all text
1348 manipulating function to use this new scheme. The new
1349 functions are named `string_*'.
1350 - `tr' is not needed any longer, replaced by `sed'.
1351 - `grep' is not needed any longer, mostly replaced by `case'.
1352 - Revision of test for `getopt'.
1353 - Remove `set -a'; explicitly export variables.
1354 - The only external programs used are POSIX `sed' and the
1355 fallback to `apropos'. All other program calls were
1356 replaced by shell builtins and functions.
1358 ________________________________________________________________
1362 - Implement a prefix based naming scheme for local variables
1363 and functions (OOP-like).
1364 - Introduce variables for white space (better readability with
1366 - Store the names of the processed filespecs into a variable
1367 instead of a temporary file.
1368 - Error-prone shell constructions were replaced by functions
1369 with a simple interface.
1370 - To avoid too long pipes, replace supercat() by do_fileargs();
1371 every input file is handled independently.
1373 ________________________________________________________________
1375 - Add support for more X devices (e.g. X75-12 and X100-12).
1376 - Add long option `--intermediate_output' to `-Z'.
1377 - Make the options for mode selection clobber each other.
1378 - Add option `--mode' with an argument having the following
1380 `X': force displaying in X, same as options `-X';
1381 `tty': display with a pager on text terminal; same as `--tty';
1382 `source', `default', `auto', etc.
1383 - Make the handling of the X mode like in groff (e.g. -X -Tps).
1384 - Make resolution for gxditview behave like groff (default
1386 - Add environment variable $GROFFER_OPT to preset groffer
1389 ________________________________________________________________
1390 * implement most of the functionality of GNU `man'.
1392 - Add all `man' long options to groffer.
1393 - Add all `man' environment variables.
1394 - Parse and use content of `$MANOPT'.
1395 - The precedence of the options and environment variables
1396 is regulated like in GNU `man'.
1397 - Force the option `--manpath' to have a colon-separated
1398 argument like GNU `man'.
1399 - Support `man section name' calling convention.
1400 - Remove all dependencies on `man -w'.
1403 - Add the new features above.
1404 - Rewrite the search algorithm for man pages.
1405 - Remove searching with `man -w' (problems with space
1406 characters in file names).
1407 - Fix and complement usage().
1408 - The filespec parsers gets a function of its own do_manpage().
1411 2002-01-08 Bernd Warken
1413 * groffer 0.5 (beta) released
1416 - Fix hyphenation problems with macros describing options.
1417 - Fix the handling of some `-' characters.
1418 - Examples of shell commands now print in font CR instead of CB.
1419 - Remove documentation for option `-X'.
1420 - Add documentation for option `--dpi'.
1423 - New method for creating temporary files, based on process
1424 IDs. This is reliable enough and suitable for GNU and POSIX.
1425 - Run gxditview in a new shell instantiation for having a clean
1426 handling of the temporary files when running in the
1428 - Revision of the retrieving method for the window title.
1429 - Empty input is now tolerated.
1430 - Export the variables that are set before the call of `set -a'.
1431 - Function usage() corrected and updated.
1432 - Unnecessary stuff removed.
1433 - Comments adjusted.
1434 - Pass option `-X' to groff, i.e. force X output with 75 dpi.
1435 - Implement option `--dpi' for setting the resolution for the X
1436 viewer, which had already been documented in earlier versions.
1438 2002-01-07 Bernd Warken
1440 * groffer 0.4 (beta) released (as groff `contrib')
1443 - New features documented.
1444 - Macros stream-lined.
1445 - Section EXAMPLES added.
1448 - System tests added/optimized.
1449 - Speed/memory optimizations by defining some shell functions
1450 alternatively depending on the text results.
1451 - Use `gzip' for decompression instead of `zcat'.
1452 - Signal handling added for clean exiting by `trap'.
1453 - Temporary files exist only as long as necessary.
1454 - Setup of path for man-pages moved after the option parsing.
1455 - Fixed a bug in determining the path for man-pages.
1456 - Fixed a bug in the handling of non-groffer options.
1459 - New option --tty for forcing paging on text terminal.
1460 - New option --no-man for disabling the man-page feature.
1461 - Implement reserved POSIX -W feature to simulate long options.
1462 - gxditview is now run as a background process.
1464 2002-01-05 Werner LEMBERG <wl@gnu.org>
1466 * Integrate groffer into groff's `contrib' tree.
1468 * Makefile: Replaced by...
1469 Makefile.sub: New file.
1471 * groffer: Replaced by...
1472 groffer.sh: New file.
1474 * groffer.man (OptDef): Add missing backslashes.
1477 2001-12-15 Bernd Warken
1479 * groffer 0.3 (alpha) released (still stand-alone package).
1481 * GNU and POSIX are supported (POSIX without long options).
1483 * New options : --man, --mandb, --title, --xrdb
1485 * Support for command line arguments with embedded single space
1486 characters (GNU only) .
1488 * Several search methods for man-pages when no `man -w' is
1489 available ($MANPATH, mandb, a default path).
1491 * Language support for man-pages.
1493 * Recognize the following filespecs as man-page parameters:
1494 man:name(section), man:name, name.section, name.
1496 2001-12-03 Bernd Warken
1498 * Stand-alone package for groffer 0.2 (alpha) created
1499 Files: groffer, groffer.man, Makefile, TODO, ChangeLog
1501 2001-12-02 Bernd Warken
1503 * groffer 0.2 (alpha) program released.
1505 * Name changed from `groffview' to `groffer'.
1509 * Name changed from `groffview' to `groffer'.
1511 * Options harmonized with groff.
1512 New options : -Q --source, -T --device, -X .
1513 Other options known from groff are passed unchanged.
1515 * 100 dpi as default, 75 dpi only in emergency situations.
1517 * Bugs with temporary files fixed.
1519 * Code restructured and comments added.
1521 2001-11-28 Bernd Warken
1523 ***** groffview 0.1 (experimental) and groffview.man released
1524 (predecessor of groffer, shell script)
1526 * Options : -h --help, -v --version
1528 * Search for man-pages based on $MANPATH
1530 * development of `groffview' shell script started
1532 2001-11-28 Bernd Warken
1534 ________________________________________________________________
1537 Copyright (C) 2001,2002,2003,2004,2005
1538 Free Software Foundation, Inc.
1539 Written by Bernd Warken
1541 Copying and distribution of this file, with or without
1542 modification, are permitted provided the copyright notice and this
1543 notice are preserved.
1545 This file is part of `groffer', which is part of the `groff'