46b1104b4860e83eb08994294f41413ddb03ab62
[platform/upstream/groff.git] / contrib / groffer / groffer.man
1 .TH GROFFER @MAN1EXT@ "@MDATE@" "Groff Version @VERSION@"
2 .SH NAME
3 groffer \- display groff files and man\~pages on X and tty
4 .
5 .\" The .SH was moved to this place in order to appease `apropos'.
6 .
7 .\" --------------------------------------------------------------------
8 .\" Legalese
9 .\" --------------------------------------------------------------------
10 .
11 .de co
12 Copyright \[co] 2001-2014 Free Software Foundation, Inc.
13
14 This file is part of groffer, which is part of groff, a free software
15 project.
16
17 You can redistribute it and/or modify it under the terms of the GNU
18 General Public License version 2 as published by the Free Software
19 Foundation.
20
21 The license text is available in the internet at
22 .UR http://www.gnu.org/licenses/gpl-2.0.html
23 .UE .
24 ..
25 .
26 .de au
27 This file was written by
28 .MT groff-bernd.warken-72@web.de
29 Bernd Warken
30 .ME .
31 ..
32 .
33 .\" --------------------------------------------------------------------
34 .\" Characters
35 .\" --------------------------------------------------------------------
36 .
37 .\" Ellipsis ...
38 .ie t .ds EL \fS\N'188'\fP
39 .el .ds EL \&.\|.\|.\&\
40 .\" called with \*(EL
41 .
42 .\" Bullet
43 .ie t .ds BU \[bu]
44 .el .ds BU *
45 .\" used in `.IP \*(BU 2m' (former .Topic)
46 .
47 .
48 .\" --------------------------------------------------------------------
49 .SH "SYNOPSIS"
50 .\" --------------------------------------------------------------------
51 .
52 .SY groffer
53 .OP \-\-
54 .OP \%filespec \*(EL
55 .YS
56 .
57 .SY groffer
58 .OP mode-option \*(EL
59 .OP groff-options \*(EL
60 .OP man-options \*(EL
61 .OP X-options \*(EL
62 .OP \-\-
63 .OP \%filespec \*(EL
64 .YS
65 .
66 .SY groffer
67 .BR \-h " | " \-\-help
68 .YS
69 .
70 .SY groffer
71 .BR \-v " | " \-\-version
72 .YS
73 .
74 .
75 .\" --------------------------------------------------------------------
76 .SH DESCRIPTION
77 .\" --------------------------------------------------------------------
78 .
79 The
80 .B \%groffer
81 program is the easiest way to use
82 .BR \%groff (@MAN1EXT@).
83 It can display arbitrary documents written in the
84 .I \%groff
85 language, see
86 .BR \%groff (@MAN7EXT@),
87 or other
88 .I \%roff
89 languages, see
90 .BR \%roff (@MAN7EXT@),
91 that are compatible to the original
92 .I \%troff
93 language.
94 .
95 It finds and runs all necessary
96 .I groff
97 preprocessors, such as
98 .BR @g@chem .
99 .
100 .
101 .P
102 The
103 .B \%groffer
104 program also includes many of the features for finding and displaying
105 the \%\f[CR]Unix\f[] manual pages
106 .nh
107 .RI ( man\~pages ),
108 .hy
109 such that it can be used as a replacement for a
110 .BR \%man (1)
111 program.
112 .
113 Moreover, compressed files that can be handled by
114 .BR \%gzip (1)
115 or
116 .BR \%bzip2 (1)
117 are decompressed on-the-fly.
118 .
119 .
120 .P
121 The normal usage is quite simple by supplying a file name or name of a
122 .I \%man\~page
123 without further options.
124 .
125 But the option handling has many possibilities for creating special
126 behaviors.
127 .
128 This can be done either in configuration files, with the shell
129 environment variable
130 .SM
131 .BR \%$GROFFER_OPT ,
132 or on the command line.
133 .
134 .
135 .P
136 The output can be generated and viewed in several different ways
137 available for
138 .IR \%groff .
139 .
140 This includes the
141 .I \%groff
142 native \%\f[CR]X\~Window\f[] viewer
143 .BR \%gxditview (@MAN1EXT@),
144 each
145 .IR \%Postcript ,
146 .IR \%pdf ,
147 or
148 .I \%dvi
149 display program, a web browser by generating
150 .I \%html
151 in
152 .IR \%www\~mode ,
153 or several
154 .I \%text\~modes
155 in text terminals.
156 .
157 .
158 .P
159 Most of the options that must be named when running
160 .B \%groff
161 directly are determined automatically for
162 .BR \%groffer ,
163 due to the internal usage of the
164 .BR \%grog (@MAN1EXT@)
165 program.
166 .
167 But all parts can also be controlled manually by arguments.
168 .
169 .
170 .P
171 Several file names can be specified on the command line arguments.
172 .
173 They are transformed into a single document in the normal way of
174 .BR \%groff .
175 .
176 .
177 .P
178 Option handling is done in \f[CR]GNU\f[] style.
179 .
180 Options and file names can be mixed freely.
181 .
182 The option
183 .RB ` \-\- '
184 closes the option handling, all following arguments are treated as
185 file names.
186 .
187 Long options can be abbreviated in several ways.
188 .
189 .
190 .\" --------------------------------------------------------------------
191 .SH "OPTION OVERVIEW"
192 .\" --------------------------------------------------------------------
193 .
194 .TP
195 .I breaking options
196 .RS
197 .P
198 .SY
199 .OP \-h\~\fR|\fB\~\-\-help
200 .OP \-v\~\fR|\fB\~\-\-version
201 .YS
202 .RE
203 .
204 .
205 .TP
206 .I \%groffer mode options
207 .RS
208 .P
209 .SY
210 .OP \-\-auto
211 .OP \-\-default
212 .OP \-\-default\-modes mode1,mode2,\*(EL
213 .OP \-\-dvi
214 .OP \-\-groff
215 .OP \-\-html
216 .OP \-\-latin1
217 .OP \-\-mode display_mode
218 .OP \-\-pdf
219 .OP \-\-pdf2
220 .OP \-\-ps
221 .OP \-\-source
222 .OP \-\-text
223 .OP \-\-to\-stdout
224 .OP \-\-tty
225 .OP \-\-utf8
226 .OP \-\-viewer prog
227 .OP \-\-www
228 .OP \-\-x\~\fR|\fB\~\-\-X
229 .YS
230 .RE
231 .
232 .
233 .ig
234 Replace these options by --viewer
235 .OP \-\-dvi\-viewer prog
236 .OP \-\-html\-viewer prog
237 .OP \-\-pdf\-viewer prog
238 .OP \-\-ps\-viewer prog
239 .OP \-\-tty\-viewer prog
240 .OP \-\-www\-viewer prog
241 .OP \-\-x\-viewer\~\fR|\fB\~\-\-X\-viewer prog
242 ..
243 .
244 .
245 .TP
246 .I options related to \%groff
247 .RS
248 .P
249 .SY
250 .OP \-T\~\fR|\fB\~\-\-device device
251 .OP \-Z\~\fR|\fB\~\-\-intermediate\-output\~\fR|\fB\~\-\-ditroff
252 .YS
253 .P
254 All further
255 .B \%groff
256 short options are accepted.
257 .RE
258 .
259 .
260 .TP
261 .I options for man\~pages
262 .RS
263 .P
264 .SY
265 .OP \-\-apropos
266 .OP \-\-apropos\-data
267 .OP \-\-apropos\-devel
268 .OP \-\-apropos\-progs
269 .OP \-\-man
270 .OP \-\-no\-man
271 .OP \-\-no\-special
272 .OP \-\-whatis
273 .YS
274 .RE
275 .
276 .
277 .TP
278 .I long options taken over from GNU man
279 .RS
280 .P
281 .SY
282 .OP \-\-all
283 .OP \-\-ascii
284 .OP \-\-ditroff
285 .OP \-\-extension suffix
286 .OP \-\-locale language
287 .OP \-\-local\-file
288 .OP \-\-location\~\fR|\fB\~\-\-where
289 .OP \-\-manpath dir1:dir2:\*(EL
290 .OP \-\-no\-location
291 .OP \-\-pager program
292 .OP \-\-sections sec1:sec2:\*(EL
293 .OP \-\-systems sys1,sys2,\*(EL
294 .OP \-\-troff\-device device
295 .YS
296 .P
297 Further long options of \f[CR]GNU\f[]
298 .B man
299 are accepted as well.
300 .RE
301 .
302 .
303 .TP
304 .I X Window Toolkit options
305 .RS
306 .P
307 .SY
308 .OP \-\-bd\~\fR|\fB\~\-\-bordercolor pixels
309 .OP \-\-bg\~\fR|\fB\~\-\-background color
310 .OP \-\-bw\~\fR|\fB\~\-\-borderwidth pixels
311 .OP \-\-display X-display
312 .OP \-\-fg\~\fR|\fB\~\-\-foreground color
313 .OP \-\-fn\~\fR|\fB\~\-\-ft\~\fR|\fB\~\-\-font font_name
314 .OP \-\-geometry size_pos
315 .OP \-\-resolution value
316 .OP \-\-rv
317 .OP \-\-title string
318 .OP \-\-xrm X\-resource
319 .YS
320 .RE
321 .
322 .
323 .TP
324 .I options for development
325 .RS
326 .P
327 .SY
328 .OP \-\-debug
329 .OP \-\-debug\-filenames
330 .OP \-\-debug\-grog
331 .OP \-\-debug\-keep
332 .OP \-\-debug\-params
333 .OP \-\-debug\-tmpdir
334 .OP \-\-do\-nothing
335 .OP \-\-print text
336 .OP \-V
337 .YS
338 .RE
339 .
340 .
341 .TP
342 .I \%filespec arguments
343 .RS
344 .P
345 The
346 .I \%filespec
347 parameters are all arguments that are neither an option nor an option
348 argument.
349 .
350 They usually mean a file name or a
351 .I man page
352 searching scheme.
353 .
354 .
355 .P
356 In the following, the term
357 .I section_extension
358 is used.
359 .
360 It means a word that consists of a
361 .I man section
362 that is optionally followed by an
363 .IR extension .
364 .
365 The name of a
366 .I man section
367 is a single character from
368 .BR \%[1\[en]9on] ,
369 the
370 .I extension
371 is some word.
372 .
373 The
374 .I extension
375 is mostly lacking.
376 .
377 .
378 .P
379 No
380 .I \%filespec
381 parameters means standard input.
382 .
383 .
384 .TP 10m
385 .B \-
386 stands for standard input (can occur several times).
387 .
388 .
389 .TP
390 .I filename
391 the path name of an existing file.
392 .
393 .
394 .TP
395 .BI man: name ( section_extension )
396 .TQ
397 .BI man: name . section_extension
398 .TQ
399 .IB name ( section_extension )
400 .TQ
401 .IB name . section_extension
402 .TQ
403 .I "section_extension name"
404 search the \%man\~page
405 .I \%name
406 in the section with optional extension
407 .IR section_extension .
408 .
409 .
410 .TP
411 .BI man: name
412 \%man\~page in the lowest
413 .I \%man\~section
414 that has
415 .IR \%name .
416 .
417 .
418 .TP
419 .I name
420 if
421 .I \%name
422 is not an existing file search for the man\~page
423 .I \%name
424 in the lowest man\~section.
425 .
426 .RE
427 .
428 .
429 .\" --------------------------------------------------------------------
430 .SH "OPTION DETAILS"
431 .\" --------------------------------------------------------------------
432 .
433 The
434 .B \%groffer
435 program can usually be run with very few options.
436 .
437 But for special purposes, it supports many options.
438 .
439 These can be classified in 5 option classes.
440 .
441 .
442 .P
443 All short options of
444 .B \%groffer
445 are compatible with the short options of
446 .BR \%groff (@MAN1EXT@).
447 .
448 All long options of
449 .B \%groffer
450 are compatible with the long options of
451 .BR \%man (1).
452 .
453 .
454 .P
455 Arguments for long option names can be abbreviated in several ways.
456 .
457 First, the argument is checked whether it can be prolonged as is.
458 .
459 Furthermore, each minus sign
460 .B \-
461 is considered as a starting point for a new abbreviation.
462 .
463 This leads to a set of multiple abbreviations for a single argument.
464 .
465 For example,
466 .B \-\-de\-n\-f
467 can be used as an abbreviation for
468 .BR \-\-debug\-not\-func ,
469 but
470 .B \-\-de\-n
471 works as well.
472 .
473 If the abbreviation of the argument leads to several resulting options
474 an error is raised.
475 .
476 .
477 .P
478 These abbreviations are only allowed in the environment variable
479 .SM
480 .BR \%$GROFFER_OPT ,
481 but not in the configuration files.
482 .
483 In configuration, all long options must be exact.
484 .
485 .
486 .\" --------------------------------------------------------------------
487 .SS "groffer breaking Options"
488 .\" --------------------------------------------------------------------
489 .
490 As soon as one of these options is found on the command line it is
491 executed, printed to standard output, and the running
492 .B \%groffer
493 is terminated thereafter.
494 .
495 All other arguments are ignored.
496 .
497 .
498 .TP
499 .B \-h\~\fR|\fB\~\-\-help
500 Print help information with a short explanation of options to
501 standard output.
502 .
503 .
504 .TP
505 .B \-v\~\fR|\fB\~\-\-version
506 Print version information to standard output.
507 .
508 .
509 .\" --------------------------------------------------------------------
510 .SS "groffer Mode Options"
511 .\" --------------------------------------------------------------------
512 .
513 The display mode and the viewer programs are determined by these
514 options.
515 .
516 If none of these mode and viewer options is specified
517 .B \%groffer
518 tries to find a suitable display mode automatically.
519 .
520 The default modes are
521 .IR "mode pdf" ,
522 .IR "mode ps" ,
523 .IR "mode html" ,
524 .IR "mode x" ,
525 and
526 .I "mode dvi"
527 in \%\f[CR]X\~Window\f[] with different viewers and
528 .I mode tty
529 with device
530 .I utf8
531 under
532 .B less
533 on a terminal; other modes are tested if the programs for the main
534 default mode do not exist.
535 .
536 .
537 .P
538 In \%\f[CR]X\~Window\f[], many programs create their own window when
539 called.
540 .
541 .B \%groffer
542 can run these viewers as an independent program in the background.
543 .
544 As this does not work in text mode on a terminal (tty) there must be a
545 way to know which viewers are \%\f[CR]X\~Window\f[] graphical
546 programs.
547 .
548 The
549 .B \%groffer
550 script has a small set of information on some viewer names.
551 .
552 If a viewer argument of the command\-line chooses an element that is
553 kept as \%\f[CR]X\~Window\f[] program in this list it is treated as a
554 viewer that can run in the background.
555 .
556 All other, unknown viewer calls are not run in the background.
557 .
558 .
559 .P
560 For each mode, you are free to choose whatever viewer you want.
561 .
562 That need not be some graphical viewer suitable for this mode.
563 .
564 There is a chance to view the output source; for example, the
565 combination of the options
566 .B \-\-mode=ps
567 and
568 .B \-\-viewer=less
569 shows the content of the
570 .I Postscript
571 output, the source code, with the pager
572 .BR less .
573 .
574 .
575 .TP
576 .B \-\-auto
577 Equivalent to
578 .BR \-\-mode=auto .
579 .
580 .
581 .TP
582 .B \-\-default
583 Reset all configuration from previously processed command line options
584 to the default values.
585 .
586 This is useful to wipe out all former options of the configuration, in
587 .SM
588 .BR \%$GROFFER_OPT ,
589 and restart option processing using only the rest of the command line.
590 .
591 .
592 .TP
593 .BI \-\-default\-modes \ mode1,mode2,\*(EL
594 Set the sequence of modes for
595 .I \%auto\~mode
596 to the comma separated list given in the argument.
597 .
598 See
599 .B \-\-mode
600 for details on modes.  Display in the default manner; actually, this
601 means to try the modes
602 .IR x ,
603 .IR ps ,
604 and
605 .I \%tty
606 in this sequence.
607 .
608 .
609 .
610 .TP
611 .B \-\-dvi
612 Equivalent to
613 .BR \-\-mode=\%dvi .
614 .TQ
615 .BI \-\-viewer \ prog
616 Choose a viewer program for
617 .IR \%dvi\~mode .
618 .
619 This can be a file name or a program to be searched in
620 .SM
621 .BR $PATH .
622 .
623 Known \%\f[CR]X\~Window\f[]
624 .I \%dvi
625 viewers include
626 .BR \%xdvi (1)
627 and
628 .BR \%dvilx (1).
629 .
630 In each case, arguments can be provided additionally.
631 .
632 .
633 .TP
634 .B \-\-groff
635 Equivalent to
636 .BR \-\-mode=groff .
637 .
638 .
639 .TP
640 .B \-\-html
641 Equivalent to
642 .BR \-\-mode=html .
643 .TQ
644 .B \-\-viewer
645 Choose a web browser program for viewing in
646 .IR \%html\~mode .
647 .
648 It can be the path name of an executable file or a program in
649 .BR $PATH .
650 .
651 In each case, arguments can be provided additionally.
652 .
653 .
654 .TP
655 .BI \-\-mode \ value
656 .
657 Set the display mode.
658 .
659 The following mode values are recognized:
660 .
661 .RS
662 .
663 .TP
664 .B auto
665 Select the automatic determination of the display mode.
666 .
667 The sequence of modes that are tried can be set with the
668 .B \-\-default\-modes
669 option.
670 .
671 Useful for restoring the
672 .I \%default\~mode
673 when a different mode was specified before.
674 .
675 .
676 .TP
677 .B dvi
678 Display formatted input in a
679 .I \%dvi
680 viewer program.
681 .
682 By default, the formatted input is displayed with the
683 .BR \%xdvi (1)
684 program.
685 .
686 .
687 .TP
688 .B groff
689 After the file determination, switch
690 .B \%groffer
691 to process the input like
692 .BR \%groff (@MAN1EXT@)
693 would do.
694 .
695 This disables the
696 .I \%groffer
697 viewing features.
698 .
699 .
700 .TP
701 .B html
702 Translate the input into html format and display the result in a web
703 browser program.
704 .
705 By default, the existence of a sequence of standard web browsers is
706 tested, starting with
707 .BR \%konqueror (1)
708 and
709 .BR \%mozilla (1).
710 The text html viewer is
711 .BR \%lynx (1).
712 .
713 .
714 .TP
715 .B pdf
716 Transform
717 .I roff input files
718 into a
719 .I PDF file
720 by using the
721 .B groff (@MAN1EXT@)
722 device
723 .BR -Tpdf .
724 .
725 This is the default
726 .B PDF
727 generator.
728 .
729 The generated
730 .I PDF file
731 is displayed with suitable viewer programs, such as
732 .BR okular (1).
733 .
734 .
735 .TP
736 .B pdf2
737 This is the traditional
738 .IR "pdf mode" .
739 .
740 Sometimes this mode produces more correct output than the default
741 .BR "PDF mode" .
742 .
743 By default, the input is formatted by
744 .B \%groff
745 using the Postscript device, then it is transformed into the PDF file
746 format using
747 .BR \%gs (1),
748 or
749 .BR ps2pdf (1).
750 .
751 If that's not possible, the
752 .I Postscript mode (ps)
753 is used instead.
754 .
755 Finally it is displayed using different viewer programs.
756 .
757 .
758 .TP
759 .B ps
760 Display formatted input in a Postscript viewer program.
761 .
762 By default, the formatted input is displayed in one of many viewer
763 programs.
764 .
765 .
766 .TP
767 .B text
768 Format in a
769 .I \%groff\~text\~mode
770 and write the result to standard output without a pager or viewer
771 program.
772 .
773 The text device,
774 .I \%latin1
775 by default, can be chosen with option
776 .BR \-T .
777 .
778 .
779 .TP
780 .B tty
781 Format in a
782 .I \%groff\~text\~mode
783 and write the result to standard output using a text pager program,
784 even when in \%\f[CR]X\~Window\f[].
785 .
786 .
787 .TP
788 .B www
789 Equivalent to
790 .BR \-\-mode=html .
791 .
792 .
793 .TP
794 .B x
795 Display the formatted input in a native
796 .I roff
797 viewer.
798 .
799 By default, the formatted input is displayed with the
800 .BR \%gxditview (@MAN1EXT@)
801 program being distributed together with
802 .BR \%groff .
803 But the standard \%\f[CR]X\~Window\f[] tool
804 .BR \%xditview (1)
805 can also be chosen with the option
806 .BR \-\-viewer .
807 The default resolution is
808 .BR 75dpi ,
809 but
810 .B 100dpi
811 are also possible.
812 .
813 The default
814 .I groff
815 device
816 for the resolution of
817 .B 75dpi
818 is
819 .BR X75\-12 ,
820 for
821 .B 100dpi
822 it is
823 .BR X100 .
824 .
825 The corresponding
826 .I "groff intermediate output"
827 for the actual device is generated and the result is displayed.
828 .
829 For a resolution of
830 .BR 100dpi ,
831 the default width of the geometry of the display program is chosen to
832 .BR 850dpi .
833 .
834 .
835 .TP
836 .B X
837 Equivalent to
838 .BR \-\-mode=x .
839 .
840 .
841 .P
842 The following modes do not use the
843 .I \%groffer
844 viewing features.
845 .
846 They are only interesting for advanced applications.
847 .
848 .
849 .TP
850 .B groff
851 Generate device output with plain
852 .I \%groff
853 without using the special viewing features of
854 .IR \%groffer .
855 If no device was specified by option
856 .B \-T
857 the
858 .I \%groff
859 default
860 .B \%ps
861 is assumed.
862 .
863 .
864 .TP
865 .B source
866 Output the roff source code of the input files without further
867 processing.
868 .
869 .
870 .RE
871 .
872 .
873 .TP
874 .B \-\-pdf
875 Equivalent to
876 .BR \-\-mode=pdf .
877 .TQ
878 .B \-\-pdf2
879 Equivalent to
880 .BR \-\-mode=pdf2 .
881 .TQ
882 .BI \-\-viewer \ prog
883 Choose a viewer program for
884 .IR \%pdf\~mode .
885 .
886 This can be a file name or a program to be searched in
887 .SM
888 .BR $PATH ;
889 arguments can be provided additionally.
890 .
891 .
892 .TP
893 .B \-\-ps
894 Equivalent to
895 .BR \-\-mode=ps .
896 .TQ
897 .BI \-\-viewer \ prog
898 Choose a viewer program for
899 .IR \%ps\~mode .
900 .
901 This can be a file name or a program to be searched in
902 .SM
903 .BR $PATH .
904 .
905 Common Postscript viewers include
906 .BR \%okular (1),
907 .BR \%evince (1),
908 .BR \%gv (1),
909 .BR \%ghostview (1),
910 and
911 .BR \%gs (1),
912 .
913 In each case, arguments can be provided additionally.
914 .
915 .
916 .TP
917 .B \-\-source
918 Equivalent to
919 .BR \-\-mode=source .
920 .
921 .
922 .TP
923 .B \-\-text
924 Equivalent to
925 .BR \-\-mode=text .
926 .
927 .
928 .TP
929 .B \-\-to\-stdout
930 The file for the chosen mode is generated and its content is printed
931 to standard output.
932 .
933 It will not be displayed in graphical mode.
934 .
935 .
936 .TP
937 .B \-\-tty
938 Equivalent to
939 .BR \-\-mode=tty .
940 .TQ
941 .BI \-\-viewer \ prog
942 Choose a text pager for mode
943 .IR tty .
944 The standard pager is
945 .BR less (1).
946 This option is equivalent to
947 .I man
948 option
949 .BR \-\-pager=\,\fIprog\fP .
950 The option argument can be a file name or a program to be searched in
951 .SM
952 .BR $PATH ;
953 arguments can be provided additionally.
954 .
955 .
956 .TP
957 .B \-\-www
958 Equivalent to
959 .BR \-\-mode=html .
960 .TQ
961 .B \-\-viewer
962 .IR prog .
963 .
964 .
965 .TP
966 .B \-\-X\~\fR|\fB\~\-\-x
967 Equivalent to
968 .BR \-\-mode=x .
969 .TQ
970 .BI \-\-viewer " prog"
971 Choose a viewer program for
972 .IR \%x\~mode .
973 Suitable viewer programs are
974 .BR \%gxditview (@MAN1EXT@)
975 which is the default and
976 .BR \%xditview (1).
977 The argument can be any executable file or a program in
978 .SM
979 .BR $PATH ;
980 arguments can be provided additionally.
981 .
982 .
983 .TP
984 .B \-\-
985 Signals the end of option processing; all remaining arguments are
986 interpreted as
987 .I \%filespec
988 parameters.
989 .
990 .
991 .P
992 Besides these,
993 .B \%groffer
994 accepts all short options that are valid for the
995 .BR \%groff (@MAN1EXT@)
996 program.
997 .
998 All
999 .RB \%non- groffer
1000 options are sent unmodified via
1001 .B \%grog
1002 to
1003 .BR \%groff .
1004 .
1005 So postprocessors, macro packages, compatibility with
1006 .I classical
1007 .IR \%troff ,
1008 and much more can be manually specified.
1009 .
1010 .
1011 .\" --------------------------------------------------------------------
1012 .SS "Options related to groff"
1013 .\" --------------------------------------------------------------------
1014 .
1015 All short options of
1016 .B \%groffer
1017 are compatible with the short options of
1018 .BR \%groff (@MAN1EXT@).
1019 .
1020 The following of
1021 .B \%groff
1022 options have either an additional special meaning within
1023 .B \%groffer
1024 or make sense for normal usage.
1025 .
1026 .
1027 .P
1028 Because of the special outputting behavior of the
1029 .B \%groff
1030 option
1031 .B \-Z
1032 .B \%groffer
1033 was designed to be switched into
1034 .IR \%groff\~mode ;
1035 the
1036 .I \%groffer
1037 viewing features are disabled there.
1038 .
1039 The other
1040 .B \%groff
1041 options do not switch the mode, but allow to customize the formatting
1042 process.
1043 .
1044 .
1045 .TP
1046 .B \-\-a
1047 This generates an ascii approximation of output in the
1048 .IR \%text\~modes .
1049 .
1050 That could be important when the text pager has problems with control
1051 sequences in
1052 .IR "tty mode" .
1053 .
1054 .
1055 .TP
1056 .BI \-\-m \ file
1057 Add
1058 .I \%file
1059 as a
1060 .I \%groff
1061 macro file.
1062 .
1063 This is useful in case it cannot be recognized automatically.
1064 .
1065 .
1066 .TP
1067 .BI \-\-P \ opt_or_arg
1068 Send the argument
1069 .I \%opt_or_arg
1070 as an option or option argument to the actual
1071 .B \%groff
1072 postprocessor.
1073 .
1074 .
1075 .TP
1076 .B \-\-T \fIdevname\fR\~\fR|\fB\~\-\-device \fIdevname\fR
1077 .
1078 This option determines
1079 .BR \%groff 's
1080 output device.
1081 .
1082 The most important devices are the text output devices for referring
1083 to the different character sets, such as
1084 .BR \%ascii ,
1085 .BR \%utf8 ,
1086 .BR \%latin1 ,
1087 .BR \%utf8 ,
1088 and others.
1089 .
1090 Each of these arguments switches
1091 .B \%groffer
1092 into a
1093 .I \%text\~mode
1094 using this device, to
1095 .I \%mode\~tty
1096 if the actual mode is not a
1097 .IR \%text\~mode .
1098 .
1099 The following
1100 .I \%devname
1101 arguments are mapped to the corresponding
1102 .B \%groffer
1103 .B \-\-mode=\,\fIdevname\fR
1104 option:
1105 .BR \%dvi ,
1106 .BR \%html ,
1107 and
1108 .BR \%ps .
1109 All
1110 .B \%X*
1111 arguments are mapped to
1112 .IR \%mode\~x .
1113 Each other
1114 .I \%devname
1115 argument switches to
1116 .I \%mode\~groff
1117 using this device.
1118 .
1119 .
1120 .TP
1121 .B \-\-X
1122 is equivalent to
1123 .BR "groff \-X" .
1124 It displays the
1125 .I groff intermediate output
1126 with
1127 .BR gxditview .
1128 As the quality is relatively bad this option is deprecated; use
1129 .B \-\-X
1130 instead because the
1131 .I \%x\~mode
1132 uses an
1133 .IR X *
1134 device for a better display.
1135 .
1136 .
1137 .TP
1138 .B \-Z\~\fR|\fB\~\-\-intermediate-output\~\fR|\fB\~\-\-ditroff
1139 Switch into
1140 .I \%groff\~mode
1141 and format the input with the
1142 .I \%groff intermediate output
1143 without postprocessing; see
1144 .BR \%groff_out (@MAN5EXT@).
1145 This is equivalent to option
1146 .B \-\-ditroff
1147 of
1148 .IR \%man ,
1149 which can be used as well.
1150 .
1151 .
1152 .P
1153 All other
1154 .B \%groff
1155 options are supported by
1156 .BR \%groffer ,
1157 but they are just transparently transferred to
1158 .B \%groff
1159 without any intervention.
1160 .
1161 The options that are not explicitly handled by
1162 .B \%groffer
1163 are transparently passed to
1164 .BR \%groff .
1165 .
1166 Therefore these transparent options are not documented here, but in
1167 .BR \%groff (@MAN1EXT@).
1168 Due to the automatism in
1169 .BR \%groffer ,
1170 none of these
1171 .B \%groff
1172 options should be needed, except for advanced usage.
1173 .
1174 .
1175 .\" --------------------------------------------------------------------
1176 .SS "Options for man\~pages"
1177 .\" --------------------------------------------------------------------
1178 .
1179 .TP
1180 .B \-\-apropos
1181 Start the
1182 .BR \%apropos (1)
1183 command or facility of
1184 .BR \%man (1)
1185 for searching the
1186 .I \%filespec
1187 arguments within all
1188 .I \%man\~page
1189 descriptions.
1190 .
1191 Each
1192 .I \%filespec
1193 argument is taken for search as it is;
1194 .I section
1195 specific parts are not handled, such that
1196 .B 7 groff
1197 searches for the two arguments
1198 .B 7
1199 and
1200 .BR groff ,
1201 with a large result; for the
1202 .I \%filespec
1203 .B groff.7
1204 nothing will be found.
1205 .
1206 The
1207 .I language
1208 locale is handled only when the called programs do support this; the
1209 GNU
1210 .B apropos
1211 and
1212 .B man \-k
1213 do not.
1214 .
1215 The display differs from the
1216 .B \%apropos
1217 program by the following concepts:
1218 .RS
1219 .IP \*(BU 2m
1220 Construct a
1221 .I \%groff
1222 frame similar to a
1223 .I \%man\~page
1224 to the output of
1225 .BR \%apropos ,
1226 .IP \*(BU 2m
1227 each
1228 .I \%filespec
1229 argument is searched on its own.
1230 .IP \*(BU 2m
1231 The restriction by
1232 .B \-\-sections
1233 is handled as well,
1234 .IP \*(BU 2m
1235 wildcard characters are allowed and handled without a further option.
1236 .RE
1237 .
1238 .
1239 .TP
1240 .B \-\-apropos\-data
1241 Show only the
1242 .B \%apropos
1243 descriptions for data documents, these are the
1244 .BR \%man (7)
1245 .IR sections\~4 ", " 5 ", and " 7 .
1246 .
1247 Direct
1248 .I section
1249 declarations are ignored, wildcards are accepted.
1250 .
1251 .
1252 .TP
1253 .B \-\-apropos\-devel
1254 Show only the
1255 .B \%apropos
1256 descriptions for development documents, these are the
1257 .BR man (7)
1258 .IR sections\~2 ", " 3 ", and " 9 .
1259 .
1260 Direct
1261 .I section
1262 declarations are ignored, wildcards are accepted.
1263 .
1264 .
1265 .TP
1266 .B \-\-apropos\-progs
1267 Show only the
1268 .B \%apropos
1269 descriptions for documents on programs, these are the
1270 .BR \%man (7)
1271 .IR sections\~1 ", " 6 ", and " 8 .
1272 .
1273 Direct
1274 .I section
1275 declarations are ignored, wildcards are accepted.
1276 .
1277 .
1278 .TP
1279 .B \-\-whatis
1280 For each
1281 .I \%filespec
1282 argument search all
1283 .I \%man\~pages
1284 and display their description \[em] or say that it is not a
1285 .IR \%man\~page .
1286 This is written from anew, so it differs from
1287 .IR man 's
1288 .B whatis
1289 output by the following concepts
1290 .RS
1291 .IP \*(BU 2m
1292 each retrieved file name is added,
1293 .IP \*(BU 2m
1294 local files are handled as well,
1295 .IP \*(BU 2m
1296 the \fIlanguage\fP and \fIsystem\fP locale is supported,
1297 .IP \*(BU 2m
1298 the display is framed by a
1299 .I groff
1300 output format similar to a
1301 .IR \%man\~page ,
1302 .IP \*(BU 2m
1303 wildcard characters are allowed without a further option.
1304 .RE
1305 .
1306 .
1307 .P
1308 The following options were added to
1309 .B \%groffer
1310 for choosing whether the file name arguments are interpreted as names
1311 for local files or as a search pattern for
1312 .IR \%man\~pages .
1313 .
1314 The default is looking up for local files.
1315 .
1316 .
1317 .TP
1318 .B \-\-man
1319 Check the non-option command line arguments
1320 .nh
1321 .RI ( filespecs )
1322 .hy
1323 first on being
1324 .IR \%man\~pages ,
1325 then whether they represent an existing file.
1326 .
1327 By default, a
1328 .I \%filespec
1329 is first tested whether it is an existing file.
1330 .
1331 .
1332 .TP
1333 .B \-\-no-man\~\fR|\fB\~\-\-local-file
1334 Do not check for
1335 .IR \%man\~pages .
1336 .
1337 .B \-\-local-file
1338 is the corresponding
1339 .B man
1340 option.
1341 .
1342 .
1343 .TP
1344 .B \-\-no-special
1345 Disable former calls of
1346 .BR \-\-all ,
1347 .BR \-\-apropos* ,
1348 and
1349 .BR \-\-whatis .
1350 .
1351 .
1352 .\" --------------------------------------------------------------------
1353 .SS "Long options taken over from GNU man"
1354 .\" --------------------------------------------------------------------
1355 .
1356 The long options of
1357 .B \%groffer
1358 were synchronized with the long options of \f[CR]GNU\f[]
1359 .BR man .
1360 .
1361 All long options of \f[CR]GNU\f[]
1362 .B man
1363 are recognized, but not all of these options are important to
1364 .BR \%groffer ,
1365 so most of them are just ignored.
1366 .
1367 These ignored
1368 .B man
1369 options are
1370 .BR \-\-catman ,
1371 .BR \-\-troff ,
1372 and
1373 .BR \-\-update .
1374 .
1375 .
1376 .P
1377 In the following, the
1378 .B man
1379 options that have a special meaning for
1380 .B \%groffer
1381 are documented.
1382 .
1383 .
1384 .P
1385 If your system has \f[CR]GNU\f[]
1386 .B man
1387 installed the full set of long and short options of the \f[CR]GNU\f[]
1388 .B man
1389 program can be passed via the environment variable
1390 .SM
1391 .BR \%$MANOPT ;
1392 see
1393 .BR \%man (1).
1394 .
1395 .
1396 .TP
1397 .B \-\-all
1398 In searching
1399 .IR \%man\~pages ,
1400 retrieve all suitable documents instead of only one.
1401 .
1402 .
1403 .TP
1404 .B \-7\~\fR|\fB\~\-\-ascii
1405 In
1406 .IR \%text\~modes ,
1407 display ASCII translation of special characters for critical environment.
1408 .
1409 This is equivalent to
1410 .BR "groff \%\-mtty_char" ;
1411 see
1412 .BR groff_tmac (@MAN5EXT@).
1413 .
1414 .
1415 .TP
1416 .B \-\-ditroff
1417 Produce
1418 .IR "groff intermediate output" .
1419 This is equivalent to
1420 .B \%groffer
1421 .BR \-Z .
1422 .
1423 .
1424 .TP
1425 .BI \-\-extension \ suffix
1426 Restrict
1427 .I \%man\~page
1428 search to file names that have
1429 .I \%suffix
1430 appended to their section element.
1431 .
1432 For example, in the file name
1433 .I \%/usr/share/man/man3/terminfo.3ncurses.gz
1434 the
1435 .I \%man\~page
1436 extension is
1437 .IR \%ncurses .
1438 .
1439 .
1440 .TP
1441 .BI \-\-locale \ language
1442 .
1443 Set the language for
1444 .IR \%man\~pages .
1445 .
1446 This has the same effect, but overwrites
1447 .SM
1448 .BR $LANG .
1449 .
1450 .
1451 .TP
1452 .B \-\-location
1453 Print the location of the retrieved files to standard error.
1454 .
1455 .
1456 .TP
1457 .B \-\-no-location
1458 Do not display the location of retrieved files; this resets a former
1459 call to
1460 .BR \-\-location .
1461 .
1462 This was added by
1463 .BR \%groffer .
1464 .
1465 .
1466 .TP
1467 .BI \-\-manpath \ 'dir1:dir2:\*(EL'
1468 Use the specified search path for retrieving
1469 .I \%man\~pages
1470 instead of the program defaults.
1471 .
1472 If the argument is set to the empty string "" the search for
1473 .I \%man\~page
1474 is disabled.
1475 .
1476 .
1477 .TP
1478 .B \-\-pager
1479 Set the pager program in
1480 .IR \%tty\~mode ;
1481 default is
1482 .BR \%less .
1483 .
1484 This can be set with
1485 .BR \-\-viewer .
1486 .
1487 .
1488 .TP
1489 .BI \-\-sections \ sec1:sec2:\*(EL
1490 Restrict searching for
1491 .I \%man\~pages
1492 to the given
1493 .IR sections ,
1494 a colon-separated list.
1495 .
1496 .
1497 .TP
1498 .BI \-\-systems \ sys1,sys2,\*(EL
1499 Search for
1500 .I \%man\~pages
1501 for the given operating systems; the argument
1502 .I \%systems
1503 is a comma-separated list.
1504 .
1505 .
1506 .TP
1507 .B \-\-where
1508 Equivalent to
1509 .BR \-\-location .
1510 .
1511 .
1512 .\" --------------------------------------------------------------------
1513 .SS "X\~\%Window\~\%Toolkit Options"
1514 .\" --------------------------------------------------------------------
1515 .
1516 The following long options were adapted from the corresponding
1517 \%\f[CR]X\~Window\~Toolkit\f[] options.
1518 .
1519 .B \%groffer
1520 will pass them to the actual viewer program if it is an
1521 \%\f[CR]X\~Window\f[] program.
1522 .
1523 Otherwise these options are ignored.
1524 .
1525 .
1526 .P
1527 Unfortunately these options use the old style of a single minus for
1528 long options.
1529 .
1530 For
1531 .B \%groffer
1532 that was changed to the standard with using a double minus for long
1533 options, for example,
1534 .B \%groffer
1535 uses the option
1536 .B \-\-font
1537 for the \%\f[CR]X\~Window\f[] option
1538 .BR \-font .
1539 .
1540 .
1541 .P
1542 See
1543 .BR X (7)
1544 and the documentation on the \%\f[CR]X\~Window\~Toolkit\f[] options
1545 for more details on these options and their arguments.
1546 .
1547 .
1548 .TP
1549 .BI \-\-background \ color
1550 Set the background color of the viewer window.
1551 .
1552 .
1553 .TP
1554 .BI \-\-bd \ pixels
1555 This is equivalent to
1556 .BR \-\-bordercolor .
1557 .
1558 .
1559 .TP
1560 .BI \-\-bg \ color
1561 This is equivalent to
1562 .BR \-\-background .
1563 .
1564 .
1565 .TP
1566 .BI \-\-bw \ pixels
1567 This is equivalent to
1568 .BR \-\-borderwidth .
1569 .
1570 .
1571 .TP
1572 .BI \-\-bordercolor \ pixels
1573 Specifies the color of the border surrounding the viewer window.
1574 .
1575 .
1576 .TP
1577 .BI \-\-borderwidth \ pixels
1578 Specifies the width in pixels of the border surrounding the viewer
1579 window.
1580 .
1581 .
1582 .TP
1583 .BI \-\-display \ X-display
1584 Set the \%\f[CR]X\~Window\f[] display on which the viewer program
1585 shall be started, see the \%\f[CR]X\~Window\f[] documentation for the
1586 syntax of the argument.
1587 .
1588 .
1589 .TP
1590 .BI \-\-foreground \ color
1591 Set the foreground color of the viewer window.
1592 .
1593 .
1594 .TP
1595 .BI \-\-fg \ color
1596 This is equivalent to
1597 .BR \-\-foreground .
1598 .
1599 .
1600 .TP
1601 .BI \-\-fn \ font_name
1602 This is equivalent to
1603 .BR \-\-font .
1604 .
1605 .
1606 .TP
1607 .BI \-\-font \ font_name
1608 Set the font used by the viewer window.
1609 .
1610 The argument is an \%\f[CR]X\~Window\f[] font name.
1611 .
1612 .
1613 .TP
1614 .BI \-\-ft \ font_name
1615 This is equivalent to
1616 .BR \-\-font .
1617 .
1618 .
1619 .TP
1620 .BI \-\-geometry \ size_pos
1621 Set the geometry of the display window, that means its size and its
1622 starting position.
1623 .
1624 See
1625 .BR \%X (7)
1626 for the syntax of the argument.
1627 .
1628 .
1629 .TP
1630 .BI \-\-resolution \ value
1631 Set \%\f[CR]X\~Window\f[] resolution in dpi (dots per inch) in some
1632 viewer programs.
1633 .
1634 The only supported dpi values are
1635 .B 75
1636 and
1637 .BR 100 .
1638 .
1639 Actually, the default resolution for
1640 .B \%groffer
1641 is set to
1642 .BR 75dpi .
1643 The resolution also sets the default device in
1644 .IR "mode x" .
1645 .
1646 .
1647 .TP
1648 .B \-\-rv
1649 Reverse foreground and background color of the viewer window.
1650 .
1651 .
1652 .TP
1653 .BI \-\-title "\ 'some text'"
1654 Set the title for the viewer window.
1655 .
1656 .
1657 .TP
1658 .BI \-\-xrm \ 'resource'
1659 Set \f[CR]\%X\~Window\f[] resource.
1660 .
1661 .
1662 .\" --------------------------------------------------------------------
1663 .SS "Options for Development"
1664 .\" --------------------------------------------------------------------
1665 .
1666 .TP
1667 .B \-\-debug
1668 Enable all debugging options
1669 .BR \-\-debug\-\,\fItype\fP .
1670 .
1671 The temporary files are kept and not deleted, the
1672 .B grog
1673 output is printed, the name of the temporary directory is printed, the
1674 displayed file names are printed, and the parameters are printed.
1675 .
1676 .
1677 .TP
1678 .B \-\-debug\-filenames
1679 Print the names of the files and
1680 .I \%man\~pages
1681 that are displayed by
1682 .BR \&groffer .
1683 .
1684 .
1685 .TP
1686 .B \-\-debug\-grog
1687 Print the output of all
1688 .B grog
1689 commands.
1690 .
1691 .
1692 .TP
1693 .B \-\-debug\-keep
1694 Enable two debugging informations.
1695 .
1696 Print the name of the temporary directory and keep the temporary
1697 files, do not delete them during the run of
1698 .BR \%groffer .
1699 .
1700 .
1701 .TP
1702 .B \-\-debug\-params
1703 Print the parameters, as obtained from the configuration files, from
1704 .SM
1705 .BR \%GROFFER_OPT ,
1706 and the command line arguments.
1707 .
1708 .
1709 .TP
1710 .B \-\-debug\-tmpdir
1711 Print the name of the temporary directory.
1712 .
1713 .
1714 .TP
1715 .B \-\-do-nothing
1716 This is like
1717 .BR \-\-version ,
1718 but without the output; no viewer is started.
1719 .
1720 This makes only sense in development.
1721 .
1722 .
1723 .TP
1724 .B \-\-print=\,\fItext\fR
1725 Just print the argument to standard error.
1726 .
1727 This is good for parameter check.
1728 .
1729 .
1730 .TP
1731 .B \-V
1732 This is an advanced option for debugging only.
1733 .
1734 Instead of displaying the formatted input, a lot of
1735 .I \%groffer
1736 specific information is printed to standard output:
1737 .
1738 .RS
1739 .IP \*(BU 2m
1740 the output file name in the temporary directory,
1741 .
1742 .IP \*(BU 2m
1743 the display mode of the actual
1744 .B \%groffer
1745 run,
1746 .
1747 .IP \*(BU 2m
1748 the display program for viewing the output with its arguments,
1749 .
1750 .IP \*(BU 2m
1751 the active parameters from the config files, the arguments in
1752 .SM
1753 .BR \%$GROFFER_OPT ,
1754 and the arguments of the command line,
1755 .
1756 .IP \*(BU 2m
1757 the pipeline that would be run by the
1758 .B \%groff
1759 program, but without executing it.
1760 .RE
1761 .
1762 .
1763 .P
1764 Other useful debugging options are the
1765 .B \%groff
1766 option
1767 .B \-Z
1768 and
1769 .BR \-\-mode=groff .
1770 .
1771 .
1772 .\" --------------------------------------------------------------------
1773 .SS "Filespec Arguments"
1774 .\" --------------------------------------------------------------------
1775 .
1776 A
1777 .I \%filespec
1778 parameter is an argument that is not an option or option argument.
1779 .
1780 In
1781 .BR \%groffer ,
1782 .I \%filespec
1783 parameters are a file name or a template for searching
1784 .IR \%man\~pages .
1785 .
1786 These input sources are collected and composed into a single output
1787 file such as
1788 .B \%groff
1789 does.
1790 .
1791 .
1792 .P
1793 The strange \%\f[CR]POSIX\f[] behavior to regard all arguments behind
1794 the first non-option argument as
1795 .I \%filespec
1796 arguments is ignored.
1797 .
1798 The \f[CR]GNU\f[] behavior to recognize options even when mixed with
1799 .I \%filespec
1800 arguments is used throughout.
1801 .
1802 But, as usual, the double minus argument
1803 .B \-\-
1804 ends the option handling and interprets all following arguments as
1805 .I \%filespec
1806 arguments; so the \%\f[CR]POSIX\f[] behavior can be easily adopted.
1807 .
1808 .
1809 .P
1810 The options
1811 .B \-\-apropos*
1812 have a special handling of
1813 .I filespec
1814 arguments.
1815 .
1816 Each argument is taken as a search scheme of its own.
1817 .
1818 Also a regexp (regular expression) can be used in the filespec.
1819 .
1820 For example,
1821 .B groffer \-\-apropos '^gro.f$'
1822 searches
1823 .B groff
1824 in the
1825 .I man\~page
1826 name, while
1827 .B groffer \-\-apropos groff
1828 searches
1829 .B groff
1830 somewhere in the name or description of the
1831 .IR man\~pages .
1832 .
1833 .
1834 .P
1835 All other parts of
1836 .IR groffer ,
1837 such as the normal display or the output with
1838 .B \-\-whatis
1839 have a different scheme for
1840 .IR filespecs .
1841 No regular expressions are used for the arguments.
1842 .
1843 The
1844 .I filespec
1845 arguments are handled by the following scheme.
1846 .
1847 .
1848 .P
1849 It is necessary to know that on each system the
1850 .I \%man\~pages
1851 are sorted according to their content into several sections.
1852 .
1853 The
1854 .I classical man sections
1855 have a single-character name, either a digit from
1856 .B 1
1857 to
1858 .B 9
1859 or one of the characters
1860 .B n
1861 or
1862 .BR o .
1863 .
1864 .
1865 .P
1866 This can optionally be followed by a string, the so-called
1867 .IR extension .
1868 The
1869 .I extension
1870 allows to store several
1871 .I man\~pages
1872 with the same name in the same
1873 .IR section .
1874 But the
1875 .I extension
1876 is only rarely used, usually it is omitted.
1877 .
1878 Then the
1879 .I extensions
1880 are searched automatically by alphabet.
1881 .
1882 .
1883 .P
1884 In the following, we use the name
1885 .I section_extension
1886 for a word that consists of a single character
1887 .I section
1888 name or a
1889 .I section
1890 character that is followed by an
1891 .IR extension .
1892 .
1893 Each
1894 .I \%filespec
1895 parameter can have one of the following forms in decreasing sequence.
1896 .
1897 .
1898 .IP \*(BU 2m
1899 No
1900 .I \%filespec
1901 parameters means that
1902 .B \%groffer
1903 waits for standard input.
1904 .
1905 The minus option
1906 .B \-
1907 always stands for standard input; it can occur several times.
1908 .
1909 If you want to look up a
1910 .I \%man\~page
1911 called
1912 .B \-
1913 use the argument
1914 .BR man:\- .
1915 .
1916 .
1917 .IP \*(BU 2m
1918 Next a
1919 .I \%filespec
1920 is tested whether it is the path name of an existing file.
1921 .
1922 Otherwise it is assumed to be a searching pattern for a
1923 .IR \%man\~page .
1924 .
1925 .
1926 .IP \*(BU 2m
1927 .BI \%man: name ( section_extension ) ,
1928 .BI \%man: name . section_extension,
1929 .IB \%name ( section_extension ) ,
1930 or
1931 .IB \%name . section_extension
1932 search the \%man\~page
1933 .I \%name
1934 in \%man\~section and possibly extension of
1935 .IR \%section_extension .
1936 .
1937 .
1938 .IP \*(BU 2m
1939 Now
1940 .BI \%man: name
1941 searches for a
1942 .I \%man\~page
1943 in the lowest
1944 .I \%man\~section
1945 that has a document called
1946 .IR \%name .
1947 .
1948 .
1949 .IP \*(BU 2m
1950 .I \%section_extension\~name
1951 is a pattern of 2 arguments that originates from a strange argument
1952 parsing of the
1953 .B man
1954 program.
1955 .
1956 Again, this searches the man page
1957 .I name
1958 with
1959 .IR \%section_extension ,
1960 a combination of a
1961 .I section
1962 character optionally followed by an
1963 .IR extension .
1964 .
1965 .
1966 .IP \*(BU 2m
1967 We are left with the argument
1968 .I \%name
1969 which is not an existing file.
1970 .
1971 So this searches for the
1972 .I \%man\~page
1973 called
1974 .I \%name
1975 in the lowest
1976 .I \%man\~section
1977 that has a document for this name.
1978 .
1979 .
1980 .P
1981 Several file name arguments can be supplied.
1982 .
1983 They are mixed by
1984 .B \%groff
1985 into a single document.
1986 .
1987 Note that the set of option arguments must fit to all of these file
1988 arguments.
1989 .
1990 So they should have at least the same style of the
1991 .I \%groff
1992 language.
1993 .
1994 .
1995 .\" --------------------------------------------------------------------
1996 .SH "OUTPUT MODES"
1997 .\" --------------------------------------------------------------------
1998 .
1999 By default, the
2000 .B \%groffer
2001 program collects all input into a single file, formats it with the
2002 .B \%groff
2003 program for a certain device, and then chooses a suitable viewer
2004 program.
2005 .
2006 The device and viewer process in
2007 .B \%groffer
2008 is called a
2009 .IR \%mode .
2010 .
2011 The mode and viewer of a running
2012 .B \%groffer
2013 program is selected automatically, but the user can also choose it
2014 with options.
2015 .
2016 .
2017 The modes are selected by option the arguments of
2018 .BR \-\-mode=\,\fIanymode .
2019 Additionally, each of this argument can be specified as an option of
2020 its own, such as
2021 .BR anymode .
2022 Most of these modes have a viewer program, which can be chosen by the
2023 option
2024 .BR \-\-viewer .
2025 .
2026 .
2027 .P
2028 Several different modes are offered, graphical modes for
2029 \f[CR]\%X\~Window\f[],
2030 .IR \%text\~modes ,
2031 and some direct
2032 .I \%groff\~modes
2033 for debugging and development.
2034 .
2035 .
2036 .P
2037 By default,
2038 .B \%groffer
2039 first tries whether
2040 .I \%x\~mode
2041 is possible, then
2042 .IR \%ps\~mode ,
2043 and finally
2044 .IR \%tty\~mode .
2045 .
2046 This mode testing sequence for
2047 .I \%auto\~mode
2048 can be changed by specifying a comma separated list of modes with the
2049 option
2050 .B \-\-default\-modes.
2051 .
2052 .
2053 .P
2054 The searching for
2055 .I \%man\~pages
2056 and the decompression of the input are active in every mode.
2057 .
2058 .
2059 .\" --------------------------------------------------------------------
2060 .SS "Graphical Display Modes"
2061 .\" --------------------------------------------------------------------
2062 .
2063 The graphical display modes work mostly in the \%\f[CR]X\~Window\f[]
2064 environment (or similar implementations within other windowing
2065 environments).
2066 .
2067 The environment variable
2068 .SM
2069 .B \%$DISPLAY
2070 and the option
2071 .B \-\-display
2072 are used for specifying the \%\f[CR]X\~Window\f[] display to be used.
2073 .
2074 If this environment variable is empty
2075 .B \%groffer
2076 assumes that no \%\f[CR]X\~Window\f[] is running and changes to a
2077 .IR \%text\~mode .
2078 .
2079 You can change this automatic behavior by the option
2080 .BR \-\-default\-modes .
2081 .
2082 .
2083 .P
2084 Known viewers for the graphical display modes and their standard
2085 \%\f[CR]X\~Window\f[] viewer programs are
2086 .
2087 .IP \*(BU 2m
2088 in a PDF viewer
2089 .nh
2090 .RI ( \%pdf\~mode )
2091 .hy
2092 .
2093 .IP \*(BU 2m
2094 in a web browser
2095 .nh
2096 .RI ( html
2097 or
2098 .IR \%www\~mode )
2099 .hy
2100 .RE
2101 .
2102 .IP \*(BU 2m
2103 in a Postscript viewer
2104 .nh
2105 .RI ( \%ps\~mode )
2106 .hy
2107 .
2108 .IP \*(BU 2m
2109 \%\f[CR]X\~Window\f[]
2110 .I roff
2111 viewers such as
2112 .BR \%gxditview (@MAN1EXT@)
2113 or
2114 .BR \%xditview (1)
2115 (in
2116 .IR \%x\~mode )
2117 .
2118 .IP \*(BU 2m
2119 in a dvi viewer program
2120 .nh
2121 .RI ( \%dvi\~mode )
2122 .hy
2123 .
2124 .
2125 .P
2126 The
2127 .I \%pdf\~mode
2128 has a major advantage \[em] it is the only graphical display mode that
2129 allows to search for text within the viewer; this can be a really
2130 important feature.
2131 .
2132 Unfortunately, it takes some time to transform the input into the PDF
2133 format, so it was not chosen as the major mode.
2134 .
2135 .
2136 .P
2137 These graphical viewers can be customized by options of the
2138 \%\f[CR]X\~Window\~Toolkit\f[].
2139 .
2140 But the
2141 .B \%groffer
2142 options use a leading double minus instead of the single minus used by
2143 the \%\f[CR]X\~Window\~Toolkit\f[].
2144 .
2145 .
2146 .\" --------------------------------------------------------------------
2147 .SS "Text modes"
2148 .\" --------------------------------------------------------------------
2149 .
2150 There are two modes for text output,
2151 .I \%mode\~text
2152 for plain output without a pager and
2153 .I \%mode\~tty
2154 for a text output on a text terminal using some pager program.
2155 .
2156 .
2157 .P
2158 If the variable
2159 .SM
2160 .B \%$DISPLAY
2161 is not set or empty,
2162 .B \%groffer
2163 assumes that it should use
2164 .IR \%tty\~\%mode .
2165 .
2166 .
2167 .P
2168 In the actual implementation, the
2169 .I groff
2170 output device
2171 .I \%latin1
2172 is chosen for
2173 .IR \%text\~modes .
2174 .
2175 This can be changed by specifying option
2176 .B \-T
2177 or
2178 .BR \%\-\-device .
2179 .
2180 .
2181 .P
2182 The pager to be used can be specified by one of the options
2183 .B \-\-pager
2184 and
2185 .BR \-\-viewer ,
2186 or by the environment variable
2187 .BR \%$PAGER .
2188 If all of this is not used the
2189 .BR \%less (1)
2190 program with the option
2191 .B \-r
2192 for correctly displaying control sequences is used as the default
2193 pager.
2194 .
2195 .
2196 .\" --------------------------------------------------------------------
2197 .SS "Special Modes for Debugging and Development"
2198 .\" --------------------------------------------------------------------
2199 .
2200 These modes use the
2201 .I \%groffer
2202 file determination and decompression.
2203 .
2204 This is combined into a single input file that is fed directly into
2205 .B \%groff
2206 with different strategy without the
2207 .I \%groffer
2208 viewing facilities.
2209 .
2210 These modes are regarded as advanced, they are useful for debugging
2211 and development purposes.
2212 .
2213 .
2214 .P
2215 The
2216 .I \%source\~mode
2217 with option
2218 .B \-\-source
2219 just displays the decompressed input.
2220 .
2221 .
2222 .P
2223 Option
2224 .B \-\-to\-stdout
2225 does not display in a graphical mode.
2226 .
2227 It just generates the file for the chosen mode and then prints its
2228 content to standard output.
2229 .
2230 .
2231 .P
2232 The
2233 .I \%groff\~mode
2234 passes the input to
2235 .B \%groff
2236 using only some suitable options provided to
2237 .BR \%groffer .
2238 .
2239 This enables the user to save the generated output into a file or pipe
2240 it into another program.
2241 .
2242 .
2243 .P
2244 In
2245 .IR \%groff\~\%mode ,
2246 the option
2247 .B \-Z
2248 disables post-processing, thus producing the
2249 .nh
2250 .I groff intermediate
2251 .IR output .
2252 .hy
2253 .
2254 In this mode, the input is formatted, but not postprocessed; see
2255 .BR \%groff_out (@MAN5EXT@)
2256 for details.
2257 .
2258 .
2259 .P
2260 All
2261 .B \%groff
2262 short options are supported by
2263 .BR \%groffer .
2264 .
2265 .
2266 .\" --------------------------------------------------------------------
2267 .SH "MAN PAGE SEARCHING"
2268 .\" --------------------------------------------------------------------
2269 .
2270 The default behavior of
2271 .B \%groffer
2272 is to first test whether a file parameter represents a local file; if
2273 it is not an existing file name, it is assumed to represent the name
2274 of a
2275 .IR \%man\~page .
2276 The following options can be used to determine whether the arguments
2277 should be handled as file name or
2278 .I \%man\~page
2279 arguments.
2280 .
2281 .TP
2282 .B \-\-man
2283 forces to interpret all file parameters as
2284 .I \%filespecs
2285 for searching
2286 .IR \%man\~pages .
2287 .
2288 .TP
2289 .B \-\-no\-man
2290 .TQ
2291 .B \-\-local\-file
2292 disable the
2293 .I man
2294 searching; so only local files are displayed.
2295 .
2296 .
2297 .P
2298 If neither a local file nor a
2299 .I \%man\~page
2300 was retrieved for some file parameter a warning is issued on standard
2301 error, but processing is continued.
2302 .
2303 .
2304 .\" --------------------------------------------------------------------
2305 .SS "Search Algorithm"
2306 .\" --------------------------------------------------------------------
2307 .
2308 Let us now assume that a
2309 .I \%man\~page
2310 should be searched.
2311 .
2312 The
2313 .B \%groffer
2314 program provides a search facility for
2315 .IR \%man\~pages .
2316 .
2317 All long options, all environment variables, and most of the
2318 functionality of the \f[CR]GNU\fP
2319 .BR \%man (1)
2320 program were implemented.
2321 .
2322 The search algorithm shall determine which file is displayed for a given
2323 .IR \%man\~page .
2324 The process can be modified by options and environment variables.
2325 .
2326 .
2327 .P
2328 The only
2329 .I man
2330 action that is omitted in
2331 .B \%groffer
2332 are the preformatted
2333 .IR \%man\~pages ,
2334 also called
2335 .IR cat\~pages .
2336 .
2337 With the excellent performance of the actual computers, the
2338 preformatted
2339 .I \%man\~pages
2340 aren't necessary any longer.
2341 .
2342 Additionally,
2343 .B \%groffer
2344 is a
2345 .I roff
2346 program; it wants to read
2347 .I roff
2348 source files and format them itself.
2349 .
2350 .
2351 .P
2352 The algorithm for retrieving the file for a
2353 .I \%man\~page
2354 needs first a set of directories.
2355 .
2356 This set starts with the so-called
2357 .I man\~path
2358 that is modified later on by adding names of
2359 .I operating system
2360 and
2361 .IR language .
2362 .
2363 This arising set is used for adding the section directories which
2364 contain the
2365 .I \%man\~page
2366 files.
2367 .
2368 .
2369 .P
2370 The
2371 .I man\~path
2372 is a list of directories that are separated by colon.
2373 .
2374 It is generated by the following methods.
2375 .
2376 .IP \*(BU 2m
2377 The environment variable
2378 .SM
2379 .B \%$MANPATH
2380 can be set.
2381 .
2382 .IP \*(BU 2m
2383 It can be read from the arguments of the environment variable
2384 .SM
2385 .BR \%$MANOPT .
2386 .
2387 .IP \*(BU 2m
2388 The
2389 .I man\~path
2390 can be manually specified by using the option
2391 .BR \-\-manpath .
2392 An empty argument disables the
2393 .I \%man\~page
2394 searching.
2395 .
2396 .IP \*(BU 2m
2397 When no
2398 .I man\~path
2399 was set the
2400 .BR \%manpath (1)
2401 program is tried to determine one.
2402 .
2403 .IP \*(BU 2m
2404 If this does not work a reasonable default path from
2405 .SM
2406 .B $PATH
2407 is determined.
2408 .
2409 .
2410 .P
2411 We now have a starting set of directories.
2412 .
2413 The first way to change this set is by adding names of
2414 .I operating
2415 .IR systems .
2416 .
2417 This assumes that
2418 .I \%man\~pages
2419 for several
2420 .I operating systems
2421 are installed.
2422 .
2423 This is not always true.
2424 .
2425 The names of such
2426 .I operating systems
2427 can be provided by 3 methods.
2428 .
2429 .IP \*(BU 2m
2430 The environment variable
2431 .SM
2432 .B \%$SYSTEM
2433 has the lowest precedence.
2434 .
2435 .IP \*(BU 2m
2436 This can be overridden by an option in
2437 .SM
2438 .BR \%$MANOPT .
2439 .
2440 .IP \*(BU 2m
2441 This again is overridden by the command line option
2442 .BR \-\-systems .
2443 .
2444 .
2445 .P
2446 Several names of
2447 .I operating systems
2448 can be given by appending their names, separated by a comma.
2449 .
2450 .
2451 .P
2452 The
2453 .I man\~path
2454 is changed by appending each
2455 .I system
2456 name as subdirectory at the end of each directory of the set.
2457 .
2458 No directory of the
2459 .I man\~path
2460 set is kept.
2461 .
2462 But if no
2463 .I system
2464 name is specified the
2465 .I man\~path
2466 is left unchanged.
2467 .
2468 .
2469 .P
2470 After this, the actual set of directories can be changed by
2471 .I language
2472 information.
2473 .
2474 This assumes that there exist
2475 .I man\~pages
2476 in different languages.
2477 .
2478 The wanted
2479 .I language
2480 can be chosen by several methods.
2481 .
2482 .IP \*(BU 2m
2483 Environment variable
2484 .SM
2485 .BR $LANG .
2486 .
2487 .IP \*(BU 2m
2488 This is overridden by
2489 .SM
2490 .BR \%$LC_MESSAGES .
2491 .
2492 .IP \*(BU 2m
2493 This is overridden by
2494 .SM
2495 .BR $LC_ALL .
2496 .
2497 .IP \*(BU 2m
2498 This can be overridden by providing an option in
2499 .SM
2500 .BR \%$MANOPT .
2501 .
2502 .IP \*(BU 2m
2503 All these environment variables are overridden by the command line
2504 option
2505 .BR \-\-locale .
2506 .
2507 .
2508 .P
2509 The
2510 .I default language
2511 can be specified by specifying one of the pseudo-language parameters
2512 \f[CR]C\fP or \f[CR]\%POSIX\fP.
2513 .
2514 This is like deleting a formerly given
2515 .I language
2516 information.
2517 .
2518 The
2519 .I \%man\~pages
2520 in the
2521 .I default language
2522 are usually in English.
2523 .
2524 .
2525 .P
2526 Of course, the
2527 .I language
2528 name is determined by
2529 .BR man .
2530 In \f[CR]GNU\fP
2531 .BR man ,
2532 it is specified in the \%\f[CR]POSIX\~1003.1\fP based format:
2533 .P
2534 .nh
2535 \f[I]<language>\/\f[][\f[CB]_\f[]\,\f[I]<territory>\/\f[][\f[CB].\fP\
2536 \f[I]<character-set>\/\f[][\f[CB],\fP\,\f[I]<version>\/\fP]]],
2537 .hy
2538 .P
2539 but the two-letter code in
2540 .nh
2541 .I <language>
2542 .hy
2543 is sufficient for most purposes.
2544 .
2545 If for a complicated
2546 .I language
2547 formulation no
2548 .I \%man\~pages
2549 are found
2550 .B \%groffer
2551 searches the country part consisting of these first two characters as
2552 well.
2553 .
2554 .
2555 .P
2556 The actual directory set is copied thrice.
2557 .
2558 The
2559 .I language
2560 name is appended as subdirectory to each directory in the first copy
2561 of the actual directory set (this is only done when a language
2562 information is given).
2563 .
2564 Then the 2-letter abbreviation of the
2565 .I language
2566 name is appended as subdirectories to the second copy of the directory
2567 set (this is only done when the given language name has more than 2
2568 letters).
2569 .
2570 The third copy of the directory set is kept unchanged (if no
2571 .I language
2572 information is given this is the kept directory set).
2573 .
2574 These maximally 3 copies are appended to get the new directory set.
2575 .
2576 .
2577 .P
2578 We now have a complete set of directories to work with.
2579 .
2580 In each of these directories, the
2581 .I man
2582 files are separated in
2583 .IR sections .
2584 .
2585 The name of a
2586 .I section
2587 is represented by a single character, a digit between
2588 .I 1
2589 and
2590 .IR 9 ,
2591 or the character
2592 .I o
2593 or
2594 .IR n ,
2595 in this order.
2596 .
2597 .
2598 .P
2599 For each available
2600 .IR section ,
2601 a subdirectory
2602 .BI man <section>
2603 exists containing all
2604 .I man
2605 files for this
2606 .IR section ,
2607 where
2608 .I <section>
2609 is a single character as described before.
2610 .
2611 Each
2612 .I man
2613 file in a
2614 .I section
2615 directory has the form
2616 .IR \%\f[CB]man\fP<section>\f[CB]/\fP<name>\f[CB].\fP<section>\
2617 [<extension>][\f[CB].\fP<compression>] ,
2618 where
2619 .I \%<extension>
2620 and
2621 .I \%<compression>
2622 are optional.
2623 .
2624 .I \%<name>
2625 is the name of the
2626 .I \%man\~page
2627 that is also specified as filespec argument on the command line.
2628 .
2629 .
2630 .P
2631 The
2632 .I extension
2633 is an addition to the section.
2634 .
2635 This postfix acts like a subsection.
2636 .
2637 An
2638 .I extension
2639 occurs only in the file name, not in name of the
2640 .I section
2641 subdirectory.
2642 .
2643 It can be specified on the command line.
2644 .
2645 .
2646 .P
2647 On the other hand, the
2648 .I compression
2649 is just an information on how the file is compressed.
2650 .
2651 This is not important for the user, such that it cannot be specified
2652 on the command line.
2653 .
2654 .
2655 .P
2656 There are 4 methods to specify a
2657 .I section
2658 on the command line:
2659 .
2660 .IP \*(BU 2m
2661 Environment variable
2662 .SM
2663 .B \%$MANSECT
2664 .
2665 .IP \*(BU 2m
2666 Command line option
2667 .B \-\-sections
2668 .
2669 .IP \*(BU 2m
2670 Appendix to the
2671 .I name
2672 argument in the form
2673 .I <name>.<section>
2674 .
2675 .IP \*(BU 2m
2676 Preargument before the
2677 .I name
2678 argument in the form
2679 .I <section> <name>
2680 .
2681 .
2682 .P
2683 It is also possible to specify several
2684 .I sections
2685 by appending the single characters separated by colons.
2686 .
2687 One can imagine that this means to restrict the
2688 .I \%man\~page
2689 search to only some
2690 .IR sections .
2691 .
2692 The multiple
2693 .I sections
2694 are only possible for
2695 .SM
2696 .B \%$MANSECT
2697 and
2698 .BR \-\-sections .
2699 .
2700 .
2701 .P
2702 If no
2703 .I section
2704 is specified all
2705 .I sections
2706 are searched one after the other in the given order, starting with
2707 .IR section\~1 ,
2708 until a suitable file is found.
2709 .
2710 .
2711 .P
2712 There are 4 methods to specify an
2713 .I extension
2714 on the command line.
2715 .
2716 But it is not necessary to provide the whole extension name, some
2717 abbreviation is good enough in most cases.
2718 .
2719 .IP \*(BU 2m
2720 Environment variable
2721 .SM
2722 .B \%$EXTENSION
2723 .
2724 .IP \*(BU 2m
2725 Command line option
2726 .B \-\-extension
2727 .
2728 .IP \*(BU 2m
2729 Appendix to the
2730 .I <name>.<section>
2731 argument in the form
2732 .I <name>.<section><extension>
2733 .
2734 .IP \*(BU 2m
2735 Preargument before the
2736 .I name
2737 argument in the form
2738 .I <section><extension> <name>
2739 .
2740 .
2741 .P
2742 For further details on
2743 .I \%man\~page
2744 searching, see
2745 .BR \%man (1).
2746 .
2747 .
2748 .\" --------------------------------------------------------------------
2749 .SS "Examples of man files"
2750 .\" --------------------------------------------------------------------
2751 .
2752 .TP
2753 .B /usr/share/man/man1/groff.1
2754 This is an uncompressed file for the
2755 .I \%man\~page
2756 \f[CR]groff\fP in
2757 .IR section\~1 .
2758 .
2759 It can be called by
2760 .EX
2761 \fIsh#\fR groffer\~groff
2762 .EE
2763 No
2764 .I section
2765 is specified here, so all
2766 .I sections
2767 should be searched, but as
2768 .I section\~1
2769 is searched first this file will be found first.
2770 .
2771 The file name is composed of the following components.
2772 .B /usr/share/man/
2773 must be part of the
2774 .IR \%man\~path ;
2775 the subdirectory
2776 .B man1/
2777 and the part
2778 .B .1
2779 stand for the
2780 .IR section ;
2781 .B groff
2782 is the name of the
2783 .IR \%man\~page .
2784 .
2785 .
2786 .TP
2787 .B /usr/local/share/man/man7/groff.7.gz
2788 The file name is composed of the following components.
2789 .B /usr/local/share/man
2790 must be part of the
2791 .IR \%man\~path ;
2792 the subdirectory
2793 .B man7/
2794 and the part
2795 .B .7
2796 stand for the
2797 .IR section ;
2798 .B groff
2799 is the name of the
2800 .IR \%man\~page ;
2801 the final part
2802 .B .gz
2803 stands for a compression with
2804 .BR gzip (1).
2805 As the
2806 .I section
2807 is not the first one it must be specified as well.
2808 .
2809 This can be done by one of the following commands.
2810 .EX
2811 \fIsh#\fR\~groffer\~groff.7
2812 \fIsh#\fR\~groffer\~7\~groff
2813 \fIsh#\fR\~groffer\~\-\-sections=7\~groff
2814 .EE
2815 .
2816 .TP
2817 .B /usr/local/man/man1/ctags.1emacs21.bz2
2818 Here
2819 .B /usr/local/man
2820 must be in
2821 .IR \%man\~path ;
2822 the subdirectory
2823 .B man1/
2824 and the file name part
2825 .B .1
2826 stand for
2827 .IR section\~1 ;
2828 the name of the
2829 .I \%man\~page
2830 is
2831 .BR ctags ;
2832 the section has an extension
2833 .BR emacs21 ;
2834 and the file is compressed as
2835 .B .bz2
2836 with
2837 .BR bzip2 (1).
2838 The file can be viewed with one of the following commands
2839 .EX
2840 \fIsh#\fR\~groffer\~ctags.1e
2841 \fIsh#\fR\~groffer\~1e\~ctags
2842 \fIsh#\fR\~groffer\~\-\-extension=e\~\-\-sections=1\~ctags
2843 .EE
2844 where \f[CR]e\fP works as an abbreviation for the extension
2845 \f[CR]emacs21\fP.
2846 .
2847 .
2848 .TP
2849 .B /usr/man/linux/de/man7/man.7.Z
2850 The directory
2851 .B /usr/man
2852 is now part of the
2853 .IR \%man\~path ;
2854 then there is a subdirectory for an
2855 .I operating system
2856 name
2857 .BR linux/ ;
2858 next comes a subdirectory
2859 .B de/
2860 for the German
2861 .IR language ;
2862 the
2863 .I section
2864 names
2865 .B man7
2866 and
2867 .B .7
2868 are known so far;
2869 .B man
2870 is the name of the
2871 .IR \%man\~page ;
2872 and
2873 .B .Z
2874 signifies the compression that can be handled by
2875 .BR gzip (1).
2876 We want now show how to provide several values for some options.
2877 .
2878 That is possible for
2879 .I sections
2880 and
2881 .I operating system
2882 names.
2883 .
2884 So we use as
2885 .I sections\~5
2886 and
2887 .I 7
2888 and as
2889 .I system
2890 names
2891 .I linux
2892 and
2893 .IR aix .
2894 The command is then
2895 .sp
2896 .EX
2897 \fIsh#\fR groffer\~\-\-locale=de\~\-\-sections=5:7\~\-\-systems=linux,aix\~man
2898 \fIsh#\fR LANG=de\~MANSECT=5:7\~SYSTEM=linux,aix\~groffer\~man
2899 .EE
2900 .
2901 .
2902 .\" --------------------------------------------------------------------
2903 .SH DECOMPRESSION
2904 .\" --------------------------------------------------------------------
2905 .
2906 The program has a decompression facility.
2907 .
2908 If standard input or a file that was retrieved from the command line
2909 parameters is compressed with a format that is supported by either
2910 .BR \%gzip (1)
2911 or
2912 .BR \%bzip2 (1)
2913 it is decompressed on-the-fly.
2914 .
2915 This includes the \f[CR]GNU\fP
2916 .BR \%.gz ,
2917 .BR \%.bz2 ,
2918 and the traditional
2919 .B \%.Z
2920 compression.
2921 .
2922 The program displays the concatenation of all decompressed input in
2923 the sequence that was specified on the command line.
2924 .
2925 .
2926 .\" --------------------------------------------------------------------
2927 .SH "ENVIRONMENT"
2928 .\" --------------------------------------------------------------------
2929 .
2930 The
2931 .B \%groffer
2932 program supports many system variables, most of them by courtesy of
2933 other programs.
2934 .
2935 All environment variables of
2936 .BR \%groff (@MAN1EXT@)
2937 and \f[CR]GNU\fP
2938 .BR \%man (1)
2939 and some standard system variables are honored.
2940 .
2941 .
2942 .\" --------------------------------------------------------------------
2943 .SS "Native groffer Variables"
2944 .\" --------------------------------------------------------------------
2945 .
2946 .TP
2947 .SM
2948 .B \%$GROFFER_OPT
2949 Store options for a run of
2950 .BR \%groffer .
2951 .
2952 The options specified in this variable are overridden by the options
2953 given on the command line.
2954 .
2955 The content of this variable is run through the shell builtin `eval';
2956 so arguments containing white-space or special shell characters should
2957 be quoted.
2958 .
2959 Do not forget to export this variable, otherwise it does not exist
2960 during the run of
2961 .BR groffer .
2962 .
2963 .
2964 .\" --------------------------------------------------------------------
2965 .SS "System Variables"
2966 .\" --------------------------------------------------------------------
2967 .
2968 The following variables have a special meaning for
2969 .BR \%groffer .
2970 .
2971 .
2972 .TP
2973 .SM
2974 .B \%$DISPLAY
2975 If this variable is set this indicates that the \%\f[CR]X\~Window\fP
2976 system is running.
2977 .
2978 Testing this variable decides on whether graphical or text output is
2979 generated.
2980 .
2981 This variable should not be changed by the user carelessly, but it can
2982 be used to start the graphical
2983 .B \%groffer
2984 on a remote \%\f[CR]X\~Window\fP terminal.
2985 .
2986 For example, depending on your system,
2987 .B \%groffer
2988 can be started on the second monitor by the command
2989 .sp
2990 .EX
2991 \fIsh#\fR DISPLAY=:0.1\~groffer\~what.ever &
2992 .EE
2993 .
2994 .
2995 .TP
2996 .SM
2997 .B \%$LC_ALL
2998 .TQ
2999 .SM
3000 .B \%$LC_MESSAGES
3001 .TQ
3002 .SM
3003 .B $LANG
3004 If one of these variables is set (in the above sequence), its content
3005 is interpreted as the locale, the language to be used, especially when
3006 retrieving
3007 .IR \%man\~pages .
3008 .
3009 A locale name is typically of the form
3010 .nh
3011 .IR language [\c
3012 .B _\c
3013 .IR territory [\c
3014 .B .\c
3015 .IR codeset [\c
3016 .B @\c
3017 .IR modifier ]]],
3018 .hy
3019 where
3020 .I \%language
3021 is an ISO 639 language code,
3022 .I \%territory
3023 is an ISO 3166 country code, and
3024 .I \%codeset
3025 is a character set or encoding identifier like ISO-8859-1 or UTF-8;
3026 see
3027 .BR \%setlocale (3).
3028 .
3029 The locale values \f[CR]C\fP and \%\f[CR]POSIX\fP
3030 stand for the default, i.e.\& the
3031 .I \%man\~page
3032 directories without a language prefix.
3033 .
3034 This is the same behavior as when all 3\~variables are unset.
3035 .
3036 .
3037 .TP
3038 .SM
3039 .B \%$PAGER
3040 This variable can be used to set the pager for the tty output.
3041 .
3042 For example, to disable the use of a pager completely set this
3043 variable to the
3044 .BR \%cat (1)
3045 program
3046 .sp
3047 .EX
3048 \fIsh#\fR PAGER=cat\~groffer\~anything
3049 .EE
3050 .sp
3051 .
3052 .TP
3053 .SM
3054 .B $PATH
3055 All programs within the
3056 .B \%groffer
3057 script are called without a fixed path.
3058 .
3059 Thus this environment variable determines the set of programs used
3060 within the run of
3061 .BR \%groffer .
3062 .
3063 .
3064 .\" --------------------------------------------------------------------
3065 .SS "Groff Variables"
3066 .\" --------------------------------------------------------------------
3067 .
3068 The
3069 .B \%groffer
3070 program internally calls
3071 .BR \%groff ,
3072 so all environment variables documented in
3073 .BR \%groff (@MAN1EXT@)
3074 are internally used within
3075 .B \%groffer
3076 as well.
3077 .
3078 The following variable has a direct meaning for the
3079 .B \%groffer
3080 program.
3081 .
3082 .TP
3083 .SM
3084 .B \%$GROFF_TMPDIR
3085 If the value of this variable is an existing, writable directory,
3086 .B \%groffer
3087 uses it for storing its temporary files, just as
3088 .B groff
3089 does.
3090 .
3091 See the
3092 .BR \%groff (@MAN1EXT@)
3093 man page for more details on the location of temporary files.
3094 .
3095 .
3096 .\" --------------------------------------------------------------------
3097 .SS "Man Variables"
3098 .\" --------------------------------------------------------------------
3099 .
3100 Parts of the functionality of the
3101 .B man
3102 program were implemented in
3103 .BR \%groffer ;
3104 support for all environment variables documented in
3105 .BR \%man (1)
3106 was added to
3107 .BR \%groffer ,
3108 but the meaning was slightly modified due to the different approach in
3109 .BR \%groffer ;
3110 but the user interface is the same.
3111 .
3112 The
3113 .B man
3114 environment variables can be overwritten by options provided with
3115 .SM
3116 .BR \%$MANOPT ,
3117 which in turn is overwritten by the command line.
3118 .
3119 .
3120 .TP
3121 .SM
3122 .B \%$EXTENSION
3123 Restrict the search for
3124 .I \%man\~pages
3125 to files having this extension.
3126 .
3127 This is overridden by option
3128 .BR \-\-extension ;
3129 see there for details.
3130 .
3131 .
3132 .TP
3133 .SM
3134 .B \%$MANOPT
3135 This variable contains options as a preset for
3136 .BR \%man (1).
3137 As not all of these are relevant for
3138 .B \%groffer
3139 only the essential parts of its value are extracted.
3140 .
3141 The options specified in this variable overwrite the values of the
3142 other environment variables that are specific to
3143 .IR man .
3144 .
3145 All options specified in this variable are overridden by the options
3146 given on the command line.
3147 .
3148 .
3149 .TP
3150 .SM
3151 .B \%$MANPATH
3152 If set, this variable contains the directories in which the
3153 .I \%man\~page
3154 trees are stored.
3155 .
3156 This is overridden by option
3157 .BR \%\-\-manpath .
3158 .
3159 .
3160 .TP
3161 .SM
3162 .B \%$MANSECT
3163 If this is a colon separated list of section names, the search for
3164 .I \%man\~pages
3165 is restricted to those manual sections in that order.
3166 .
3167 This is overridden by option
3168 .BR \-\-sections .
3169 .
3170 .
3171 .TP
3172 .SM
3173 .B \%$SYSTEM
3174 If this is set to a comma separated list of names these are interpreted
3175 as
3176 .I \%man\~page
3177 trees for different operating systems.
3178 .
3179 This variable can be overwritten by option
3180 .BR \-\-systems ;
3181 see there for details.
3182 .
3183 .
3184 .P
3185 The environment variable
3186 .SM
3187 .B \%$MANROFFSEQ
3188 is ignored by
3189 .B \%groffer
3190 because the necessary preprocessors are determined automatically.
3191 .
3192 .
3193 .\" --------------------------------------------------------------------
3194 .SH "CONFIGURATION FILES"
3195 .\" --------------------------------------------------------------------
3196 .
3197 The
3198 .B \%groffer
3199 program can be preconfigured by two configuration files.
3200 .
3201 .
3202 .TP
3203 .B \%/etc/groff/groffer.conf
3204 System-wide configuration file for
3205 .BR \%groffer .
3206 .
3207 .
3208 .TP
3209 .B \%$HOME/.groff/groffer.conf
3210 User-specific configuration file for
3211 .BR \%groffer ,
3212 where
3213 .SM
3214 .B \%$HOME
3215 denotes the user's home directory.
3216 .
3217 This file is called after the system-wide configuration file to enable
3218 overriding by the user.
3219 .
3220 .
3221 .P
3222 Both files are handled for the configuration, but the configuration
3223 file in
3224 .B /etc
3225 comes first; it is overwritten by the configuration file in the home
3226 directory; both configuration files are overwritten by the environment
3227 variable
3228 .SM
3229 .BR \%$GROFFER_OPT ;
3230 everything is overwritten by the command line arguments.
3231 .
3232 .
3233 .P
3234 The configuration files contain options that should be called as
3235 default for every
3236 .B \%groffer
3237 run.
3238 .
3239 These options are written in lines such that each contains either a
3240 long option, a short option, or a short option cluster; each with or
3241 without an argument.
3242 .
3243 So each line with configuration information starts with a minus
3244 character
3245 .RB ` \- ';
3246 a line with a long option starts with two minus characters
3247 .RB ` \-\- ',
3248 a line with a short option or short option cluster starts with a
3249 single minus
3250 .RB ` \- '.
3251 .
3252 .
3253 .P
3254 The option names in the configuration files may not be abbreviated,
3255 they must be exact.
3256 .
3257 .
3258 .P
3259 The argument for a long option can be separated from the option name
3260 either by an equal sign
3261 .RB ` = '
3262 or by whitespace, i.e.\& one or several space or tab characters.
3263 .
3264 An argument for a short option or short option cluster can be directly
3265 appended to the option name or separated by whitespace.
3266 .
3267 The end of an argument is the end of the line.
3268 .
3269 It is not allowed to use a shell environment variable in an option
3270 name or argument.
3271 .
3272 .
3273 .P
3274 It is not necessary to use quotes in an option or argument, except for
3275 empty arguments.
3276 .
3277 An empty argument can be provided by appending a pair of quotes to the
3278 separating equal sign or whitespace; with a short option, the
3279 separator can be omitted as well.
3280 .
3281 For a long option with a separating equal sign
3282 .RB ` = ',
3283 the pair of quotes can be omitted, thus ending the line with the
3284 separating equal sign.
3285 .
3286 All other quote characters are cancelled internally.
3287 .
3288 .
3289 .P
3290 In the configuration files, arbitrary whitespace is allowed at the
3291 beginning of each line, it is just ignored.
3292 .
3293 Each whitespace within a line is replaced by a single space character
3294 ` ' internally.
3295 .
3296 .
3297 .P
3298 All lines of the configuration lines that do not start
3299 with a minus character are ignored, such that comments starting with
3300 .RB ` # '
3301 are possible.
3302 .
3303 So there are no shell commands in the configuration files.
3304 .
3305 .
3306 .P
3307 As an example, consider the following configuration file that can be
3308 used either in
3309 .B \%/etc/groff/groffer.conf
3310 or
3311 .B \%\s+2~\s0/.groff/groffer.conf .
3312 .
3313 .
3314 .P
3315 .ft CR
3316 .nh
3317 .nf
3318 # groffer configuration file
3319 #
3320 # groffer options that are used in each call of groffer
3321 \-\-foreground=DarkBlue
3322 \-\-resolution=100
3323 \-\-viewer=gxditview \-geometry 900x1200
3324 \-\-viewer xpdf \-Z 150
3325 .fi
3326 .hy
3327 .ft
3328 .
3329 .
3330 .P
3331 The lines starting with
3332 .B #
3333 are just ignored, so they act as command lines.
3334 .
3335 This configuration sets four
3336 .B \%groffer
3337 options (the lines starting with
3338 .RB ` \- ').
3339 This has the following effects:
3340 .
3341 .
3342 .IP \*(BU 2m
3343 Use a text color of
3344 .B \%DarkBlue
3345 in all viewers that support this, such as
3346 .BR \%gxditview .
3347 .
3348 .
3349 .IP \*(BU 2m
3350 Use a resolution of
3351 .B 100dpi
3352 in all viewers that support this, such as
3353 .BR \%gxditview .
3354 .
3355 By this, the default device in
3356 .I x mode
3357 is set to
3358 .BR X100 .
3359 .
3360 .
3361 .IP \*(BU 2m
3362 Force
3363 .BR \%gxditview (@MAN1EXT@)
3364 as the
3365 .I \%x-mode
3366 viewer using the geometry option for setting the width to
3367 .B 900px
3368 and the height to
3369 .BR 1200px .
3370 This geometry is suitable for a resolution of
3371 .BR 100dpi .
3372 .
3373 .
3374 .IP \*(BU 2m
3375 Use
3376 .BR \%xpdf (1)
3377 as the
3378 .I \%pdf-mode
3379 viewer with the argument
3380 .B \-Z
3381 .BR 150 .
3382 .
3383 .
3384 .\" --------------------------------------------------------------------
3385 .SH "EXAMPLES"
3386 .\" --------------------------------------------------------------------
3387 .
3388 The usage of
3389 .B \%groffer
3390 is very easy.
3391 .
3392 Usually, it is just called with a file name or
3393 .IR \%man\~page .
3394 .
3395 The following examples, however, show that
3396 .B \%groffer
3397 has much more fancy capabilities.
3398 .
3399 .sp
3400 .EX
3401 \fIsh#\fR\~groffer\~/usr/local/share/doc/groff/meintro.ms.gz
3402 .EE
3403 .sp
3404 Decompress, format and display the compressed file
3405 .B meintro.ms.gz
3406 in the directory
3407 .BR /usr/local/share/doc/groff ,
3408 using the standard viewer
3409 .B \%gxditview
3410 as graphical viewer when in \%\f[CR]X\~Window\fP, or the
3411 .BR \%less (1)
3412 pager program when not in \%\f[CR]X\~Window\fP.
3413 .
3414 .sp
3415 .EX
3416 \fIsh#\fR\~groffer\~groff
3417 .EE
3418 .sp
3419 If the file
3420 .B \%./groff
3421 exists use it as input.
3422 .
3423 Otherwise interpret the argument as a search for the
3424 .I \%man\~page
3425 named
3426 .B \%groff
3427 in the smallest possible
3428 .IR \%man\~section ,
3429 being section 1 in this case.
3430 .
3431 .sp
3432 .EX
3433 \fIsh#\fR\~groffer\~man:groff
3434 .EE
3435 .sp
3436 search for the
3437 .I \%man\~page
3438 of
3439 .B \%groff
3440 even when the file
3441 .B ./groff
3442 exists.
3443 .
3444 .sp
3445 .EX
3446 \fIsh#\fR\~groffer\~groff.7
3447 \fIsh#\fR\~groffer\~7\~groff
3448 .EE
3449 .sp
3450 search the
3451 .I \%man\~page
3452 of
3453 .B \%groff
3454 in
3455 .I \%man\~section
3456 .BR 7 .
3457 This section search works only for a digit or a single character from
3458 a small set.
3459 .
3460 .sp
3461 .EX
3462 \fIsh#\fR\~groffer\~fb.modes
3463 .EE
3464 .sp
3465 If the file
3466 .B ./fb.modes
3467 does not exist interpret this as a search for the
3468 .I \%man\~page
3469 of
3470 .BR fb.modes .
3471 As the extension
3472 .I \%modes
3473 is not a single character in classical section style the argument is
3474 not split to a search for
3475 .BR fb .
3476 .
3477 .sp
3478 .EX
3479 \fIsh#\fR\~groffer\~groff\~\[cq]troff(1)\[cq]\~man:roff
3480 .EE
3481 .sp
3482 The arguments that are not existing files are looked-up as the
3483 following
3484 .IR \%man\~pages :
3485 .B \%groff
3486 (automatic search, should be found in \fIman\fP\~section\~1),
3487 .B \%troff
3488 (in section\~1),
3489 and
3490 .B \%roff
3491 (in the section with the lowest number, being\~7 in this case).
3492 .
3493 The quotes around
3494 .nh
3495 .I \[cq]troff(1)\[cq]
3496 .hy
3497 are necessary because the parentheses are special shell characters;
3498 escaping them with a backslash character
3499 .I \[rs](
3500 and
3501 .I \[rs])
3502 would be possible, too.
3503 .
3504 The formatted files are concatenated and displayed in one piece.
3505 .
3506 .sp
3507 .EX
3508 \fIsh#\fR\~LANG=de\~groffer\~\-\-man\~\-\-viewer=galeon\~ls
3509 .EE
3510 .sp
3511 Retrieve the German
3512 .I \%man\~page
3513 (language
3514 .IR de )
3515 for the
3516 .B ls
3517 program, decompress it, format it to
3518 .I \%html
3519 format
3520 .nh
3521 .RI ( \%www\~mode )
3522 .hy
3523 and view the result in the web browser
3524 .BR \%galeon .
3525 The option
3526 .B \-\-man
3527 guarantees that the
3528 .I \%man\~page
3529 is retrieved, even when a local file
3530 .B \%ls
3531 exists in the actual directory.
3532 .
3533 .
3534 .sp
3535 .EX
3536 \fIsh#\fR\~groffer\~\-\-source\~'man:roff(7)'
3537 .EE
3538 .sp
3539 Get the
3540 .I \%man\~page
3541 called
3542 .I \%roff
3543 in \fIman\fP\~section 7, decompress it, and print its unformatted
3544 content, its source code.
3545 .
3546 .
3547 .sp
3548 .EX
3549 \fIsh#\fR\~groffer\~\-\-de-p\~\-\-in\~\-\-ap
3550 .EE
3551 .sp
3552 This is a set of abbreviated arguments, it is determined as
3553 .br
3554 .sp
3555 .EX
3556 \fIsh#\fR\~groffer\~\-\-debug-params\~\-\-intermediate-output\~\-\-apropos
3557 .EE
3558 .sp
3559 .
3560 .sp
3561 .EX
3562 \fIsh#\fR\~cat\~file.gz\~|\~groffer\~-Z\~-mfoo
3563 .EE
3564 .sp
3565 .
3566 The file
3567 .B file.gz
3568 is sent to standard input, this is decompressed, and then this is
3569 transported to the
3570 .I \%groff intermediate output mode
3571 without post-processing
3572 .RB ( groff
3573 option
3574 .BR \-Z ),
3575 using macro package
3576 .I \%foo
3577 .RB ( groff
3578 option
3579 .BR \-m ).
3580 .
3581 .
3582 .sp
3583 .EX
3584 \fIsh#\fR\~echo\~'\[rs]f[CB]WOW!'\~|
3585 > groffer \-\-x \-\-bg red \-\-fg yellow \-\-geometry 200x100 \-
3586 .EE
3587 .sp
3588 .
3589 Display the word \f[CB]WOW!\fP in a small window in constant-width
3590 bold font, using color yellow on red background.
3591 .
3592 .
3593 .\" --------------------------------------------------------------------
3594 .SH "COMPATIBILITY"
3595 .\" --------------------------------------------------------------------
3596 .
3597 The
3598 .B \%groffer
3599 program is written in Perl, the Perl version during writing was v5.8.8.
3600 .
3601 .
3602 .P
3603 .B \%groffer
3604 provides its own parser for command line arguments that is compatible
3605 to both \%\f[CR]POSIX\fP
3606 .BR \%getopts (1)
3607 and \%\f[CR]GNU\fP
3608 .BR \%getopt (1).
3609 It can handle option arguments and file names containing white space
3610 and a large set of special characters.
3611 .
3612 The following standard types of options are supported.
3613 .
3614 .
3615 .IP \*(BU 2m
3616 The option consisting of a single minus
3617 .B \-
3618 refers to standard input.
3619 .
3620 .
3621 .IP \*(BU 2m
3622 A single minus followed by characters refers to a single character
3623 option or a combination thereof; for example, the
3624 .B \%groffer
3625 short option combination
3626 .B \-Qmfoo
3627 is equivalent to
3628 .BR \-Q\~\-m\~foo .
3629 .
3630 .
3631 .IP \*(BU 2m
3632 Long options are options with names longer than one character; they
3633 are always preceded by a double minus.
3634 .
3635 An option argument can either go to the next command line argument or
3636 be appended with an equal sign to the argument; for example,
3637 .B \-\-long=arg
3638 is equivalent to
3639 .BR \-\-long\~arg .
3640 .
3641 .
3642 .IP \*(BU 2m
3643 An argument of
3644 .B \-\-
3645 ends option parsing; all further command line arguments are
3646 interpreted as
3647 .I \%filespec
3648 parameters, i.e.\& file names or constructs for searching
3649 .IR \%man\~pages ).
3650 .
3651 .
3652 .IP \*(BU 2m
3653 All command line arguments that are neither options nor option
3654 arguments are interpreted as
3655 .I \%filespec
3656 parameters and stored until option parsing has finished.
3657 .
3658 For example, the command line
3659 .sp
3660 .EX
3661 \fIsh#\fR\~groffer file1 \-a \-o arg file2
3662 .EE
3663 .sp
3664 is equivalent to
3665 .sp
3666 .EX
3667 \fIsh#\fR\~groffer \-a \-o arg \-\- file1 file2
3668 .EE
3669 .sp
3670 .
3671 .P
3672 The free mixing of options and
3673 .I \%filespec
3674 parameters follows the GNU principle.
3675 .
3676 That does not fulfill the strange option behavior of \%\f[CR]POSIX\fP
3677 that ends option processing as soon as the first non-option argument
3678 has been reached.
3679 .
3680 The end of option processing can be forced by the option
3681 .RB ` \-\- '
3682 anyway.
3683 .
3684 .
3685 .\" --------------------------------------------------------------------
3686 .SH "BUGS"
3687 .\" --------------------------------------------------------------------
3688 .
3689 Report bugs to the
3690 .MT bug-groff@gnu.org
3691 bug-groff mailing list
3692 .ME .
3693 .
3694 Include a complete, self-contained example that will allow the bug to
3695 be reproduced, and say which version of
3696 .B \%groffer
3697 you are using.
3698 .
3699 .
3700 .P
3701 You can also use the
3702 .MT groff@gnu.org
3703 groff mailing list
3704 .ME ,
3705 but you must first subscribe to this list.
3706 .
3707 You can do that by visiting the
3708 .UR http://\:lists.gnu.org/\:mailman/\:listinfo/\:groff
3709 groff mailing list web page
3710 .UE .
3711 .
3712 .
3713 .P
3714 See
3715 .BR \%groff (@MAN1EXT@)
3716 for information on availability.
3717 .
3718 .
3719 .\" --------------------------------------------------------------------
3720 .SH "SEE ALSO"
3721 .\" --------------------------------------------------------------------
3722 .
3723 .P
3724 .BR \%groff (@MAN1EXT@),
3725 .BR \%@g@troff (@MAN1EXT@)
3726 .RS
3727 Details on the options and environment variables available in
3728 .BR \%groff ;
3729 all of them can be used with
3730 .BR \%groffer .
3731 .RE
3732 .
3733 .
3734 .TP
3735 .BR \%grog (@MAN1EXT@)
3736 This program tries to guess the necessary
3737 .B \%groff
3738 command line options from the input and the
3739 .B groffer
3740 options.
3741 .
3742 .
3743 .TP
3744 .BR \%groff (@MAN7EXT@)
3745 Documentation of the
3746 .I \%groff
3747 language.
3748 .
3749 .
3750 .TP
3751 .BR groff_char (@MAN7EXT@)
3752 Documentation on the
3753 .I \%groff
3754 characters, special characters, and glyphs..
3755 .
3756 .
3757 .TP
3758 .BR groff_tmac (@MAN5EXT@)
3759 Documentation on the
3760 .I \%groff
3761 macro files.
3762 .
3763 .
3764 .TP
3765 .BR groff_out (@MAN5EXT@)
3766 Documentation on the
3767 .I \%groff intermediate output
3768 before the run of a
3769 .IR postprocessor .
3770 .nh
3771 .RI ( ditroff
3772 output).
3773 .hy
3774 .
3775 This can be run by the
3776 .B groff
3777 or
3778 .B groffer
3779 option
3780 .BR -Z .
3781 .
3782 .
3783 .TP
3784 .BR \%man (1)
3785 The standard program to display
3786 .IR \%man\~pages .
3787 .
3788 The information there is only useful if it is the
3789 .I \%man\~page
3790 for GNU
3791 .BR man .
3792 Then it documents the options and environment variables that are
3793 supported by
3794 .BR \%groffer .
3795 .
3796 .
3797 .TP
3798 .BR \%gxditview (@MAN1EXT@)
3799 .TQ
3800 .BR \%xditview (1x)
3801 .RS
3802 Viewers for
3803 .BR \%groffer 's
3804 .IR \%x\~mode .
3805 .RE
3806 .
3807 .
3808 .TP
3809 .BR \%kpdf (1)
3810 .TQ
3811 .BR \%kghostview (1)
3812 .TQ
3813 .BR \%evince (1)
3814 .TQ
3815 .BR \%ggv (1)
3816 .TQ
3817 .BR \%gv (1)
3818 .TQ
3819 .BR \%ghostview (1)
3820 .TQ
3821 .BR \%gs (1)
3822 Viewers for
3823 .BR \%groffer 's
3824 .IR \%ps\~mode .
3825 .
3826 .
3827 .TP
3828 .BR \%kpdf (1)
3829 .TQ
3830 .BR \%acroread (1)
3831 .TQ
3832 .BR \%evince (1)
3833 .TQ
3834 .BR \%xpdf (1)
3835 .TQ
3836 .BR \%gpdf (1)
3837 .TQ
3838 .BR \%kghostview (1)
3839 .TQ
3840 .BR \%ggv (1)
3841 Viewers for
3842 .BR \%groffer 's
3843 .IR \%pdf\~mode .
3844 .
3845 .
3846 .P
3847 .BR \%kdvi (1),
3848 .BR \%xdvi (1),
3849 .BR \%dvilx (1)
3850 .RS
3851 Viewers for
3852 .BR \%groffer 's
3853 .IR \%dvi\~mode .
3854 .RE
3855 .
3856 .
3857 .TP
3858 .BR \%konqueror (1)
3859 .TQ
3860 .BR \%epiphany (1)
3861 .TQ
3862 .BR \%firefox (1)
3863 .TQ
3864 .BR \%mozilla (1)
3865 .TQ
3866 .BR \%netscape (1)
3867 .TQ
3868 .BR \%lynx (1)
3869 Web-browsers for
3870 .BR \%groffer 's
3871 .I \%html
3872 or
3873 .IR \%www\~mode .
3874 .
3875 .
3876 .TP
3877 .BR \%less (1)
3878 .TQ
3879 .BR more (1)
3880 Standard pager program for the
3881 .IR \%tty\~mode .
3882 .
3883 .
3884 .TP
3885 .BR \%gzip (1)
3886 .TQ
3887 .BR \%bzip2 (1)
3888 .TQ
3889 .BR \%xz (1)
3890 The decompression programs supported by
3891 .BR \%groffer .
3892 .
3893 .
3894 .\" --------------------------------------------------------------------
3895 .SH "COPYING"
3896 .\" --------------------------------------------------------------------
3897 .co
3898 .\" --------------------------------------------------------------------
3899 .SH "AUTHORS"
3900 .\" --------------------------------------------------------------------
3901 .au
3902 .
3903 .
3904 .\" --------------------------------------------------------------------
3905 .\" Emacs settings
3906 .\" --------------------------------------------------------------------
3907 .
3908 .\" Local Variables:
3909 .\" mode: nroff
3910 .\" End: