diff -ruN groff-1.18.1.2/ChangeLog groff-1.18.1.3/ChangeLog --- groff-1.18.1.2/ChangeLog 2006-10-04 06:01:22.000000000 +0200 +++ groff-1.18.1.3/ChangeLog 2006-10-05 23:18:32.000000000 +0200 @@ -1,3 +1,10 @@ +2006-10-05 Werner LEMBERG + +Version 1.18.1.3 released +========================= + + * NEWS: Updated. + 2006-10-04 Werner LEMBERG Version 1.18.1.2 released diff -ruN groff-1.18.1.2/contrib/groffer/ChangeLog groff-1.18.1.3/contrib/groffer/ChangeLog --- groff-1.18.1.2/contrib/groffer/ChangeLog 2006-09-26 23:24:06.000000000 +0200 +++ groff-1.18.1.3/contrib/groffer/ChangeLog 2006-10-05 20:44:08.000000000 +0200 @@ -1,3 +1,71 @@ +2006-10-05 Bernd Warken + ________________________________________________________________ + * release of groffer 0.9.31 + + * groffer2.sh: + - _make_pdf(): Fix argument of `obj'. + - to_tmp(): Add option -r to soelim to omit the .lf request. The + new global variable $_SOELIM_R stores the option if it is + available. Use numbers for the names of the `file' and `so' + temporary files, such that the information for each filespec + argument is kept for debug. New global variable $_FILE_NR. + - main_set_resources(): Remove `man' temporary files except for + debug. + - man_get(): Change name in $_TMP_MANSPEC. + - man_is_man(): Change name in $_TMP_MANSPEC. Remove file in + $_TMP_MANPEC if empty. + - _do_display() of main_display(): Add check on empty mode file. + + * groffer.man: Filespec: Add information on the argument + handling of apropos. + + Remove the space characters at the end of line in all files. + +2006-10-03 Bernd Warken + ________________________________________________________________ + * release of groffer 0.9.30 + + * groffer2.sh: + - Correct spacing. + - main_do_fileargs(): Distribute special_filespec() in order to + get a better heading for `whatis'. + +2006-10-03 Bernd Warken + ________________________________________________________________ + * release of groffer 0.9.29 + + * groffer2.sh: + - --to-stdtout: New option to display the generated mode file + without graphical display. + - _get_prog_args() of main_set_mode(): Make argument upper case. + - usage(): Add --to-stdout, remove -Q, reorder --source. + + * groffer.man: + - Reorder the default viewers. + - Move `--source' to `groffer' options. + - Remove `-Q'. + - Add `--to-stdout'. + - Reconfigure the sections on filespec arguments. + - Remove information on wildcards. + +2006-10-01 Bernd Warken + ________________________________________________________________ + * release of groffer 0.9.28 + + * groffer.sh: + - Change all directories to end with `/'. + - In the state before the run of `make', make the script runnable + from each directory using $0 and `pwd'. + + * groffer2.sh: + - main_init(): Change the umask to 0077 to allow only access for + the file owner for the temporary files. This is done for security + reasons. + - version(): Put the whole output under `< * Makefile.sub: Add DESTDIR to install and uninstall targets @@ -611,7 +679,7 @@ only signal 0. - $_ALL_EXIT: Remove this variable. - Replace all direct `trap' calls by trap_set(). - + * README_SH: New section `Bugs' on `trap'.. ### user errors, error output without function stack @@ -2038,3 +2106,10 @@ This file is part of `groffer', which is part of the `groff' project. + + + Emacs settings + + Local Variables: + mode: change-log + End: diff -ruN groff-1.18.1.2/contrib/groffer/groffer2.sh groff-1.18.1.3/contrib/groffer/groffer2.sh --- groff-1.18.1.2/contrib/groffer/groffer2.sh 2006-09-26 23:24:06.000000000 +0200 +++ groff-1.18.1.3/contrib/groffer/groffer2.sh 2006-10-05 20:44:08.000000000 +0200 @@ -12,7 +12,7 @@ # Free Software Foundation, Inc. # Written by Bernd Warken -# Last update: 26 Sep 2006 +# Last update: 5 Oct 2006 # This file is part of `groffer', which is part of `groff'. @@ -525,7 +525,7 @@ 'debug-params' 'debug-shell' 'debug-stacks' 'debug-tmpdir' 'debug-user' \ 'default' 'do-nothing' 'dvi' 'groff' 'help' 'intermediate-output' 'html' \ 'man' 'no-location' 'no-man' 'no-special' 'pdf' 'ps' 'rv' 'source' \ -'text' 'text-device' 'tty' 'tty-device' \ +'text' 'to-stdout' 'text-device' 'tty' 'tty-device' \ 'version' 'whatis' 'www' 'x' 'X'"; _OPTS_GROFFER_LONG_ARG="\ @@ -603,6 +603,7 @@ export _DISPLAY_MODE; # Display mode. export _DISPLAY_PROG; # Viewer program to be used for display. export _DISPLAY_ARGS; # X resources for the viewer program. +export _FILE_NR; # number for temporary `,file,*' export _FILEARGS; # Stores filespec parameters. export _FILESPEC_ARG; # Stores the actual filespec parameter. export _FILESPEC_IS_MAN; # filespec is for searching a man page @@ -610,9 +611,12 @@ export _MACRO_PACKAGES; # groff's macro packages. export _MACRO_PKG; # Macro package for each found file. export _NO_FILESPECS; # Yes, if there are no filespec arguments. +export _OUTPUT_FILE_NAME; # output generated, see main_set_res..() export _REG_TITLE_LIST; # Processed file names. +export _SOELIM_R; # option -r for soelim export _SPECIAL_FILESPEC; # Filespec ran for apropos or whatis. export _SPECIAL_SETUP; # Test on setup for apropos or whatis. +export _VIEWER_BACKGROUND; # viewer shall be run in the background or not # _MAN_* finally used configuration of man searching export _MAN_ALL; # search all man pages per filespec export _MAN_ENABLE; # enable search for man pages @@ -639,41 +643,40 @@ export _PDF_HAS_GS; export _PDF_HAS_PS2PDF; # _OPT_* as parsed from groffer command line -export _OPT_ALL; # display all suitable man pages. -export _OPT_APROPOS; # call `apropos' program. -export _OPT_BD; # set border color in some modes. -export _OPT_BG; # set background color in some modes. -export _OPT_BW; # set border width in some modes. -export _OPT_DEFAULT_MODES; # `,'-list of modes when no mode given. -export _OPT_DEVICE; # device option. -export _OPT_DO_NOTHING; # do nothing in main_display(). -export _OPT_DISPLAY; # set X display. -export _OPT_EXTENSION; # set extension for man page search. -export _OPT_FG; # set foreground color in some modes. -export _OPT_FN; # set font in some modes. -export _OPT_GEOMETRY; # set size and position of viewer in X. -export _OPT_ICONIC; # -iconic option for X viewers. +export _OPT_ALL; # display all suitable man pages +export _OPT_APROPOS; # call `apropos' program +export _OPT_BD; # set border color in some modes +export _OPT_BG; # set background color in some modes +export _OPT_BW; # set border width in some modes +export _OPT_DEFAULT_MODES; # `,'-list of modes when no mode given +export _OPT_DEVICE; # device option +export _OPT_DO_NOTHING; # do nothing in main_display() +export _OPT_DISPLAY; # set X display +export _OPT_EXTENSION; # set extension for man page search +export _OPT_FG; # set foreground color in some modes +export _OPT_FN; # set font in some modes +export _OPT_GEOMETRY; # set size and position of viewer in X +export _OPT_ICONIC; # -iconic option for X viewers export _OPT_LANG; # set language for man pages export _OPT_MODE; # values: X, tty, Q, Z, "" export _OPT_MANPATH; # manual setting of path for man-pages export _OPT_PAGER; # specify paging program for tty mode export _OPT_RESOLUTION; # set X resolution in dpi -export _OPT_RV; # reverse fore- and background colors. +export _OPT_RV; # reverse fore- and background colors export _OPT_SECTIONS; # sections for man page search +export _OPT_STDOUT; # print mode file to standard output export _OPT_SYSTEMS; # man pages of different OS's export _OPT_TITLE; # title for gxditview window -export _OPT_TEXT_DEVICE; # set device for tty mode. -export _OPT_V; # groff option -V. +export _OPT_TEXT_DEVICE; # set device for tty mode +export _OPT_V; # groff option -V export _OPT_VIEWER_DVI; # viewer program for dvi mode export _OPT_VIEWER_HTML; # viewer program for html mode export _OPT_VIEWER_PDF; # viewer program for pdf mode export _OPT_VIEWER_PS; # viewer program for ps mode export _OPT_VIEWER_X; # viewer program for x mode export _OPT_WHATIS; # print the man description -export _OPT_XRM; # specify X resource. -export _OPT_Z; # groff option -Z. -export _OUTPUT_FILE_NAME; # output generated, see main_set_res..() -export _VIEWER_BACKGROUND; # viewer shall be run in the background or not +export _OPT_XRM; # specify X resource +export _OPT_Z; # groff option -Z # _TMP_* temporary directory and files export _TMP_DIR; # groffer directory for temporary files export _TMP_CAT; # stores concatenation of everything @@ -690,6 +693,7 @@ # For variables that can be reset by option `--default', see reset(). +_FILE_NR=0; _FILEARGS=''; _MACRO_PACKAGES="'-man' '-mdoc' '-me' '-mm' '-mom' '-ms'"; _SPECIAL_FILESPEC='no'; @@ -707,6 +711,14 @@ _PDF_HAS_GS='no'; _PDF_HAS_PS2PDF='no'; +# option -r for soelim +if echo -n '' | soelim -r 2>${_NULL_DEV} >${_NULL_DEV} +then + _SOELIM_R='-r'; +else + _SOELIM_R=''; +fi; + ######################################################################## # reset () # @@ -775,6 +787,7 @@ _OPT_RV='no'; _OPT_SECTIONS=''; _OPT_SYSTEMS=''; + _OPT_STDOUT='no'; _OPT_TITLE=''; _OPT_TEXT_DEVICE=''; _OPT_V='no'; @@ -856,7 +869,7 @@ if test -e "${_TMP_DIR}" then rm -f -r "${_TMP_DIR}" >${_NULL_DEV} 2>&1; - fi; + fi; fi; fi; eval "${return_ok}"; @@ -962,7 +975,7 @@ # out: $_SPECIAL_FILESPEC # # Variable prefix: af -# +# apropos_filespec() { @@ -2623,7 +2636,7 @@ eval "${return_good}"; fi; lff_i=0; - while obj lff_i is_not_equal "${lff_n}" + while obj lff_i is_not_equal "${lff_n}" do lff_i="$(expr "${lff_i}" + 1)"; list_append "$1" "$(eval sed -n -e "'${lff_i}p @@ -3058,7 +3071,7 @@ then mg_ext="${_MAN_EXT}"; fi; - if obj _TMP_MANSPEC is_not_equal "${_TMP_DIR}/,man.${mg_sec}${mg_ext}:$1" + if obj _TMP_MANSPEC is_not_equal "${_TMP_DIR}/,man:$1:${mg_sec}${mg_ext}" then error 'man_get(): $_TMP_MANSPEC does not suit to the arguments '"$*".; fi; @@ -3302,7 +3315,7 @@ else mim_ext="$3"; fi; - _TMP_MANSPEC="${_TMP_DIR}/,man.${mim_sec}${mim_ext}:$1"; + _TMP_MANSPEC="${_TMP_DIR}/,man:$1:${mim_sec}${mim_ext}"; ### man_is_man() if obj _TMP_MANSPEC is_not_file then @@ -3320,6 +3333,7 @@ eval ${_UNSET} mim_sec; if obj _TMP_MANSPEC is_empty_file then + rm_file_with_debug "${_TMP_MANSPEC}"; eval "${return_no}"; else eval "${return_yes}"; @@ -3587,7 +3601,7 @@ # Globals in/out: $mals_mp # # Variable prefix: _mas -# +# _manpath_add_sys() { func_check _manpath_add_sys '=' 1 "$@"; @@ -4123,7 +4137,7 @@ if is_existing "$1" then rm -f -r "$1" >${_NULL_DEV} 2>&1; - fi; + fi; if is_existing "$1" then eval "${return_bad}"; @@ -4332,6 +4346,7 @@ error 'to_tmp(): $_TMP_CAT is not yet set'; fi; tt_1="$1"; + tt_so_nr=0; # number for temporary `,so,*,*' if is_file "${tt_1}" then tt_dir="$(dir_name "${tt_1}")"; @@ -4339,7 +4354,8 @@ then whatis_filename "${tt_1}" >>"${_TMP_CAT}"; else - tt_file="${_TMP_DIR}/,file"; + _FILE_NR="$(expr ${_FILE_NR} + 1)"; + tt_file="${_TMP_DIR}/,file${_FILE_NR}"; if obj _FILESPEC_IS_MAN is_yes then if obj _DEBUG_PRINT_FILENAMES is_yes @@ -4348,7 +4364,6 @@ fi; tt_tmp="${_TMP_DIR}/,tmp"; cat_z "${tt_1}" >"${tt_file}"; - tt_sofile="${_TMP_DIR}/,so:"; grep '^\.[ ]*so[ ]' "${tt_file}" | sed -e 's/^\.[ ]*so[ ]*//' >"${tt_tmp}"; list_from_file tt_list "${tt_tmp}"; @@ -4357,15 +4372,21 @@ for i in "$@" do tt_i="$i"; - tt_sofile="${tt_sofile}"'x'; + tt_so_nr="$(expr ${tt_so_nr} + 1)"; + tt_sofile="${_TMP_DIR}/,so${_FILE_NR}_${tt_so_nr}"; + tt_sofiles="${tt_sofiles} ${tt_sofile}"; _do_man_so "${tt_i}"; done; rm_file "${tt_tmp}"; mv "${tt_file}" "${tt_tmp}"; - cat "${tt_tmp}" | soelim -I "${tt_dir}" >"${tt_file}"; + cat "${tt_tmp}" | soelim -I "${tt_dir}" ${_SOELIM_R} >"${tt_file}"; + for f in ${tt_sofiles} + do + rm_file_with_debug $f; + done; rm_file "${tt_tmp}"; else # $_FILESPEC_IS_MAN ist not yes - cat_z "${tt_1}" | soelim -I "${tt_dir}" >"${tt_file}"; + cat_z "${tt_1}" | soelim -I "${tt_dir}" ${_SOELIM_R} >"${tt_file}"; fi; ### to_tmp() obj_from_output tt_grog grog "${tt_file}"; @@ -4401,6 +4422,9 @@ eval ${_UNSET} tt_file; eval ${_UNSET} tt_grog; eval ${_UNSET} tt_i; + eval ${_UNSET} tt_so_nr; + eval ${_UNSET} tt_sofile; + eval ${_UNSET} tt_sofiles; eval ${_UNSET} tt_sofound; eval ${_UNSET} tt_list; eval ${_UNSET} tt_tmp; @@ -4429,6 +4453,9 @@ eval ${_UNSET} tt_file; eval ${_UNSET} tt_grog; eval ${_UNSET} tt_i; + eval ${_UNSET} tt_so_nr; + eval ${_UNSET} tt_sofile; + eval ${_UNSET} tt_sofiles; eval ${_UNSET} tt_sofound; eval ${_UNSET} tt_list; eval ${_UNSET} tt_tmp; @@ -4600,14 +4627,17 @@ "filespec" is one of "filename" name of a readable file "-" for standard input + "man:name(n)" man page "name" in section "n" "man:name.n" man page "name" in section "n" "man:name" man page "name" in first section found + "name(n)" man page "name" in section "n" "name.n" man page "name" in section "n" + "n name" man page "name" in section "n" "name" man page "name" in first section found -and some more (see groffer(1) for details). +where `section' is a single character out of [1-9on], optionally followed +by some more letters that are called the `extension'. -h --help print this usage message. --Q --source output as roff source. -T --device=name pass to groff using output device "name". -v --version print version information. -V display the groff execution pipe instead of formatting. @@ -4648,7 +4678,9 @@ --ps display in a Postscript viewer. --ps-viewer=prog choose the viewer program for ps mode. --shell=program specify a shell under which to run groffer2.sh. +--source output as roff source. --text output in a text device without a pager. +--to-stdout output the content of the mode file without display. --tty display with a pager on text terminal even when in X. --tty-viewer=prog select a pager for tty mode; same as --pager. --whatis display the file name and description of man pages @@ -4689,11 +4721,11 @@ version() { func_check version = 0 "$@"; - echo1 "groffer ${_PROGRAM_VERSION} of ${_LAST_UPDATE}"; - echo1 "is part of groff version ${_GROFF_VERSION}"; y="$(echo "${_LAST_UPDATE}" | sed -e 's/^.* //')"; - echo1 "Copyright (C) $y Free Software Foundation, Inc." cat < "${md_modefile}"; + if obj md_modefile is_empty_file + then + echo2 '_do_display(): empty output.'; + clean_up; + exit; + fi; if is_not_empty "$1" then eval "$1"; fi; +### _do_display() of main_display() obj _TMP_CAT rm_file_with_debug; + if obj _OPT_STDOUT is_yes + then + cat "${md_modefile}"; + clean_up; + exit; + fi; if obj _VIEWER_BACKGROUND is_not_yes # for programs that run on tty then eval "'${_DISPLAY_PROG}'" ${_DISPLAY_ARGS} "\"${md_modefile}\""; @@ -7125,7 +7175,7 @@ # Transform to pdf format; for pdf mode in _do_display(). # # Globals: $md_modefile (from main_display()) -# +# # Variable prefix: _mp # _make_pdf() @@ -7137,7 +7187,7 @@ if obj _PDF_HAS_PS2PDF is_yes && ps2pdf "${_mp_psfile}" "${md_modefile}"; then :; - elif obj _PDF_HAS_GS && gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite \ + elif obj _PDF_HAS_GS is_yes && gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite \ -sOutputFile="${md_modefile}" -c save pop -f "${_mp_psfile}"; then :; diff -ruN groff-1.18.1.2/contrib/groffer/groffer.man groff-1.18.1.3/contrib/groffer/groffer.man --- groff-1.18.1.2/contrib/groffer/groffer.man 2006-09-26 23:24:06.000000000 +0200 +++ groff-1.18.1.3/contrib/groffer/groffer.man 2006-10-05 20:44:08.000000000 +0200 @@ -15,7 +15,7 @@ Source file position: /contrib/groffer/groffer.man Installed position: $prefix/share/man/man1/groffer.1 -Last update: 16 Sep 2006 +Last update: 5 Oct 2006 Source file position: /contrib/groffer/groffer.man .. @@ -816,7 +816,9 @@ .Opt_[alt] -- pdf\-viewer prog .Opt_[alt] -- ps .Opt_[alt] -- ps\-viewer prog +.Opt_[alt] -- source .Opt_[alt] -- text +.Opt_[alt] -- to\-stdout .Opt_[alt] -- tty .Opt_[alt] -- tty\-viewer prog .Opt_[alt] -- www @@ -911,7 +913,6 @@ .Opt_[alt] -- do\-nothing .Opt_[alt] -- print text .Opt_[alt] -- shell prog -.Opt_[alt] - Q -- source .Opt_[alt] - V .RE . @@ -920,6 +921,40 @@ .I \%filespec arguments .RS .P +The +.I \%filespec +parameters are all arguments that are neither an option nor an option +argument. +. +They usually mean a file name or a +.I man page +searching scheme. +. +. +.P +In the following, the term +.I section_extension +is used. +. +It means a word that consists of a +.I man section +that is optionally followed by an +.IR extension . +. +The name of a +.I man section +is a single character from +.BR \%[1-9on] , +the +.I extension +is some word. +. +The +.I extension +is mostly lacking. +. +. +.P No .I \%filespec parameters means standard input. @@ -936,48 +971,30 @@ . . .TP -.BI man: name ( section ) +.BI man: name ( section_extension ) .TP+ -.IB name ( section ) -search the \%man\~page -.I \%name -in \%man\~section -.IR section . -. -. -.TP -.BI man: name . s +.BI man: name . section_extension .TP+ -.IB name . s -if -.I s -is a character in -.BR \%[1-9on] , -search for a \%man\~page +.IB name ( section_extension ) +.TP+ +.IB name . section_extension +.TP+ +.I "section_extension name" +search the \%man\~page .I \%name -in \%man\~section -.IR s . +in the section with optional extension +.IR section_extension . . . .TP .BI man: name -\%man\~page in the lowest \%man\~section that has +\%man\~page in the lowest +.I \%man\~section +that has .IR \%name . . . .TP -.I "s name" -if -.I s -is a character in -.BR \%[1-9on] , -search for a \%man\~page -.I \%name -in \%man\~section -.IR s . -. -. -.TP .I name if .I \%name @@ -1388,8 +1405,8 @@ . .TP .Header_CB source -Display the source code of the input without formatting; equivalent to -.Opt_short Q . +Output the roff source code of the input files without further +processing. . . .RE @@ -1430,11 +1447,23 @@ In each case, arguments can be provided additionally. . . +.Opt_def -- source +Equivalent +.Opt_long_arg mode source . +. +. .Opt_def -- text Equivalent to .Opt_long_arg mode text . . . +.Opt_def -- to\-stdout +The file for the chosen mode is generated and its content is printed +to standard output. +. +It will not be displayed in graphical mode. +. +. .Opt_def -- tty Equivalent to .Opt_long_arg mode tty . @@ -2224,14 +2253,6 @@ Some shells run considerably faster than the standard shell. . . -.Opt_def - Q -- source -Output the roff source code of the input files without further -processing. -. -This is the equivalent -.Opt_long_arg mode source . -. -. .Opt_def - V This is an advanced option for debugging only. . @@ -2280,8 +2301,6 @@ .I \%filespec parameter is an argument that is not an option or option argument. . -It means an input source. -. In .BR \%groffer , .I \%filespec @@ -2312,7 +2331,46 @@ . . .P -For the following, it is necessary to know that on each system the +The options +.Long_opt apropos* +have a special handling of +.I filespec +arguments. +. +Each argument is taken as a search scheme of its own. +. +Also a regexp (regular expression) can be used in the filespec. +. +For example, +.B groffer --apropos '^gro.f$' +searches +.B groff +in the +.I man\~page +name, while +.B groffer --apropos groff +searches +.B groff +somewhere in the name or description of the +.IR man\~pages . +. +. +.P +All other parts of +.IR groffer , +such as the normal display or the output with +.Long_opt whatis +have a different scheme for +.IR filespecs . +No regular expressions are used for the arguments. +. +The +.I filespec +arguments are handled by the following scheme. +. +. +.P +It is necessary to know that on each system the .I \%man\~pages are sorted according to their content into several sections. . @@ -2327,27 +2385,35 @@ or .BR o . . -In the following, a stand-alone character -.I s -stands for a -.IR "classical man section" . -The internal precedence of -.B \%man -for searching -.I \%man\~pages -with the same name within several sections goes according to the -classical single-character sequence. . -On some systems, this single character can be extended by a following -string. +.P +This can optionally be followed by a string, the so-called +.IR extension . +The +.I extension +allows to store several +.I man\~pages +with the same name in the same +.IR section . +But the +.I extension +is only rarely used, usually it is omitted. . -But the special -.B \%groffer -.I \%man\~page -facility is based on the classical single character sections. +Then the +.I extensions +are searched automatically by alphabet. . . .P +In the following, we use the name +.I section_extension +for a word that consists of a single character +.I section +name or a +.I section +character that is followed by an +.IR extension . +. Each .I \%filespec parameter can have one of the following forms in decreasing sequence. @@ -2382,44 +2448,15 @@ . . .Topic -.BI \%man: name ( section ) -and -.IB \%name ( section ) +.BI \%man: name ( section_extension ) , +.BI \%man: name . section_extension, +.IB \%name ( section_extension ) , +or +.IB \%name . section_extension search the \%man\~page .I \%name -in \%man\~section\~\c -.IR \%section , -where -.I \%section -can be any string, but it must exist in the -.I \%man -system. -. -. -.Topic -Next some patterns based on the -.I classical man sections -are checked. -. -.BI \%man: name . s -and -.IB \%name . s -search for a \%man\~page -.I \%name -in \%man\~section -.I s -if -.I s -is a -.I classical man section -mentioned above. -. -Otherwise a -.I \%man\~page -named -.IR \%name.s -is searched in the lowest -.B man\~section . +in \%man\~section and possibly extension of +.IR \%section_extension . . . .Topic @@ -2434,29 +2471,20 @@ . . .Topic -The pattern -.I \%s\~name -originates from a strange argument parsing of the +.I \%section_extension\~name +is a pattern of 2 arguments that originates from a strange argument +parsing of the .B man program. . -If -.I s -is a -.I classical man section -interpret it as a search for a -.I \%man\~page -called -.I \%name -in man\~section -.IR s , -otherwise interpret both -.I s -and -.I \%name -as two independent -.I \%filespec -arguments. +Again, this searches the man page +.I name +with +.IR \%section_extension , +a combination of a +.I section +character optionally followed by an +.IR extension . . . .Topic @@ -2474,16 +2502,6 @@ . . .P -Wildcards in -.I \%filespec -arguments are only accepted for -.Opt_long apropos* -and -.Opt_long whatis ; -for normal display, they are interpreted as characters. -. -. -.P Several file name arguments can be supplied. . They are mixed by @@ -2590,41 +2608,41 @@ \%\f[CR]X\~Window\f[] viewer progams are . .Topic -\%\f[CR]X\~Window\f[] -.I roff -viewers such as -.BR \%gxditview (@MAN1EXT@) -or -.BR \%xditview (1) -(in -.IR \%x\~mode ), -. -.Topic -in a Postscript viewer +in a PDF viewer .nh -.RI ( \%ps\~mode ), +.RI ( \%pdf\~mode ), .hy . .Topic -in a dvi viewer program +in a web browser .nh -.RI ( \%dvi\~mode ), +.RI ( html +or +.IR \%www\~mode ). .hy +.RE . .Topic -in a PDF viewer +in a Postscript viewer .nh -.RI ( \%pdf\~mode ), +.RI ( \%ps\~mode ), .hy . .Topic -in a web browser -.nh -.RI ( html +\%\f[CR]X\~Window\f[] +.I roff +viewers such as +.BR \%gxditview (@MAN1EXT@) or -.IR \%www\~mode ). +.BR \%xditview (1) +(in +.IR \%x\~mode ), +. +.Topic +in a dvi viewer program +.nh +.RI ( \%dvi\~mode ), .hy -.RE . . .P @@ -2719,13 +2737,20 @@ The .I \%source\~mode with option -.Opt_short Q -and .Opt_long source just displays the decompressed input. . . .P +Otion +.Opt_long to\-stdout +does not display in a graphical mode. +. +It just generates the file for the chosen mode and then prints its +content to standard output. +. +. +.P The .I \%groff\~mode passes the input to diff -ruN groff-1.18.1.2/contrib/groffer/groffer.sh groff-1.18.1.3/contrib/groffer/groffer.sh --- groff-1.18.1.2/contrib/groffer/groffer.sh 2006-09-11 21:41:00.000000000 +0200 +++ groff-1.18.1.3/contrib/groffer/groffer.sh 2006-10-04 22:35:39.000000000 +0200 @@ -9,7 +9,7 @@ # Free Software Foundation, Inc. # Written by Bernd Warken -# Last update: 14 Aug 2006 +# Last update: 3 Oct 2006 # This file is part of `groffer', which is part of `groff'. @@ -72,22 +72,50 @@ export _GROFFER_LIBDIR; case "${_BEFORE_MAKE}" in yes) - _AT_BINDIR_AT='.'; + self="$0"; + case "${self}" in + /*) :; ;; + *) + curdir="$(pwd)"; + case "${curdir}" in + */) + self="${curdir}${self}"; + ;; + *) + self="${curdir}/${self}"; + ;; + esac; + ;; + esac; + groffer_shell_dir="$(dirname ${self})"; + case "${groffer_shell_dir}" in + */) :; ;; + *) groffer_shell_dir="${groffer_shell_dir}/"; + esac; _AT_G_AT=''; - _AT_LIBDIR_AT=''; - _GROFFER_LIBDIR='.'; + _AT_BINDIR_AT="${groffer_shell_dir}"; + _AT_LIBDIR_AT="${groffer_shell_dir}"; + _GROFFER_LIBDIR="${_AT_LIBDIR_AT}"; ;; no) - _AT_BINDIR_AT='@BINDIR@'; _AT_G_AT='@g@'; + _AT_BINDIR_AT='@BINDIR@'; + case "${_AT_BINDIR_AT}" in + */) :; ;; + *) _AT_BINDIR_AT="${_AT_BINDIR_AT}/"; + esac; _AT_LIBDIR_AT='@libdir@'; - _GROFFER_LIBDIR="${_AT_LIBDIR_AT}"'/groff/groffer'; + case "${_AT_LIBDIR_AT}" in + */) :; ;; + *) _AT_LIBDIR_AT="${_AT_LIBDIR_AT}/"; + esac; + _GROFFER_LIBDIR="${_AT_LIBDIR_AT}"'groff/groffer/'; ;; esac; -if test -f "${_GROFFER_LIBDIR}"/version.sh +if test -f "${_GROFFER_LIBDIR}"'version.sh' then - . "${_GROFFER_LIBDIR}"/version.sh; + . "${_GROFFER_LIBDIR}"'version.sh'; fi; export _GROFF_VERSION; @@ -101,13 +129,12 @@ esac; export _GROFFER2_SH; # file name of the script that follows up -_GROFFER2_SH="${_GROFFER_LIBDIR}"/groffer2.sh; +_GROFFER2_SH="${_GROFFER_LIBDIR}"'groffer2.sh'; export _GROFFER_SH; # file name of this shell script case "$0" in *groffer*) _GROFFER_SH="$0"; - # was: _GROFFER_SH="${_AT_BINDIR_AT}/groffer"; ;; *) echo 'The groffer script should be started directly.' >&2 @@ -203,7 +230,7 @@ # $s means shell. # The command line arguments are taken over. # Shifting herein does not have an effect outside. - export x; + export x; case " $*" in *\ --sh*) # abbreviation for --shell x=''; diff -ruN groff-1.18.1.2/contrib/groffer/Makefile.sub groff-1.18.1.3/contrib/groffer/Makefile.sub --- groff-1.18.1.2/contrib/groffer/Makefile.sub 2006-09-26 23:24:06.000000000 +0200 +++ groff-1.18.1.3/contrib/groffer/Makefile.sub 2006-10-05 20:44:08.000000000 +0200 @@ -5,7 +5,7 @@ # Copyright (C) 2001,2002,2005,2006 Free Software Foundation, Inc. # Written by Werner Lemberg and Bernd Warken. -# Last update: 17 Sep 2006 +# Last update: 5 Oct 2006 # This file is part of `groffer' which is part of `groff'. @@ -27,7 +27,7 @@ ######################################################################## MAN1=groffer.n -CLEANADD=groffer +CLEANADD=groffer groffer.n # not all make programs have $(RM) predefined. RM=rm -f diff -ruN groff-1.18.1.2/contrib/groffer/version.sh groff-1.18.1.3/contrib/groffer/version.sh --- groff-1.18.1.2/contrib/groffer/version.sh 2006-09-26 23:24:06.000000000 +0200 +++ groff-1.18.1.3/contrib/groffer/version.sh 2006-10-05 20:44:08.000000000 +0200 @@ -32,8 +32,8 @@ export _PROGRAM_VERSION; export _LAST_UPDATE; -_PROGRAM_VERSION='0.9.27'; -_LAST_UPDATE='26 Sep 2006'; +_PROGRAM_VERSION='0.9.31'; +_LAST_UPDATE='5 Oct 2006'; # this setting of the groff version is only used before make is run, # otherwise @VERSION@ will set it, see groffer.sh. diff -ruN groff-1.18.1.2/NEWS groff-1.18.1.3/NEWS --- groff-1.18.1.2/NEWS 2006-10-04 05:59:31.000000000 +0200 +++ groff-1.18.1.3/NEWS 2006-10-05 23:20:18.000000000 +0200 @@ -1,6 +1,12 @@ This file describes recent user-visible changes in groff. Bug fixes are not described. There are more details in the man and info pages. +VERSION 1.18.1.3 +================ + +Version 1.18.1.2 incorrectly used an old version of `groffer'. + + VERSION 1.18.1.2 ================ @@ -24,7 +30,6 @@ Enhancement of the configuration files and the `apropos' handling. - VERSION 1.18.1.1 ================