Imported Upstream version 1.22.4
[platform/upstream/groff.git] / contrib / groffer / README
1 README
2
3 The 'groffer' program is the easiest way to read documents written in
4 some 'roff' language, such as the 'man pages', the manual pages in
5 many operating systems.  All 'roff' preprocessors, such as 'chem' or
6 'glilypond', are detected and executed automatically.
7
8
9 Input
10
11 Input comes from either standard input or command-line parameters that
12 represent names of exisiting roff files or standardized specifications
13 for searching man pages.  All of these can be compressed in a format
14 that is decompressible by 'gzip' or 'bzip2', including '.gz', 'bz2',
15 and '.Z'.
16
17 'groffer' has many built-in 'man' functionalities to find and read the
18 manual pages on Unix and similar operating systems.  It accepts the
19 information from an installed 'man' program, but tries to find a man
20 path by itself.
21
22 'groffer' bundles all filespec parameters into a single output file in
23 the same way as 'groff'.  The disadvantage of this is that all file
24 name arguments must use the same groff language.  To change this, the
25 option parsing must be revised for large parts.  It seems that this
26 would create incompatibilities, so the actual option strategy is kept.
27
28
29 Output
30
31 All input is first sent to 'grog' to determine the necessary 'groff'
32 command and then to 'groff' together with all necessary preprocessors.
33 So no special 'groff' arguments must be given.  But all 'groff'
34 options can be specified when this seems to be appropriate.
35
36 The following displaying modes for the output are available:
37 - Display formatted input with
38 -- a PDF viewer,
39 -- a Postcript viewer,
40 -- a web browser,
41 -- the X 'roff' viewer 'gxditview',
42 -- a DVI viewer,
43 -- a pager in a text terminal (tty).
44 - Generate 'groff' output on stdout without a viewer.
45 - Generate the 'groff intermediate output' on standard output without
46   postprocessing.
47 - Output the source code without any 'groff' processing.
48 - There are some information outputs without 'groff' processing, such
49   as by option '-V' and the 'man' like 'whatis' and 'apropos'
50   outputs.
51
52 By default, the program creates a PDF file; on non-X text terminals,
53 the 'tty' text mode with a pager is tried by default.
54
55
56 File access
57
58 The Perl version of groffer now uses a umask of 077.  This is a very
59 strict security issue.  It allows only access of the temporary files
60 by the file owner.
61
62
63 Compatibility
64
65 'groffer' is compatible to the 'man' program.  It supports '.so'
66 requests based on the man path and compressed files.  That's more than
67 'groff' does.
68
69
70 Reporting bugs
71
72 For reporting bugs of 'groffer', groff's bug-tracking tool at
73 http://savannah.gnu.org/bugs/?group=groff can be used.
74
75
76 Mailing list
77
78 For a general discussion, the mailing list <groff@gnu.org> is
79 useful, but one has to subscribe to this list at
80 http://lists.gnu.org/mailman/listinfo/groff.
81
82 See the 'README' file in the top directory of the 'groff' source
83 package for more details on this mailing list.
84
85
86 ####### License
87
88 Copyright (C) 2003-2018 Free Software Foundation, Inc.
89 Written by Bernd Warken <groff-bernd.warken-72@web.de>.
90
91 This file is part of 'groffer', which is part of 'groff'.
92
93 'groff' is free software; you can redistribute it and/or modify it
94 under the terms of the GNU General Public License as published by
95 the Free Software Foundation, either version 2 of the License, or
96 (at your option) any later version.
97
98 'groff' is distributed in the hope that it will be useful, but WITHOUT
99 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
100 FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
101 for more details.
102
103 You should have received a copy of the GNU General Public License
104 along with this program.  If not, see
105 <http://www.gnu.org/licenses/gpl-2.0.html>.
106
107
108 ####### Emacs settings
109
110 Local Variables:
111 mode: text
112 End: