Elide spurious empty lines in manpage source files.
[mmh] / man / show.man
1 .TH SHOW %manext1% "%nmhdate%" MH.6.8 [%nmhversion%]
2 .\"
3 .\" %nmhwarning%
4 .\"
5 .SH NAME
6 show \- show (display) messages
7 .SH SYNOPSIS
8 .HP 5
9 .na
10 .B show
11 .RI [ +folder ]
12 .RI [ msgs ]
13 .RB [ \-draft ]
14 .RB [\-showproc
15 .IR program ]
16 .RB [ \-showmimeproc
17 .IR program ]
18 .RB [ \-header " | " \-noheader ]
19 .RB [ \-checkmime " | " \-nocheckmime ]
20 [switches\ for
21 .I showproc
22 or
23 .IR showmimeproc ]
24 .RB [ \-version ]
25 .RB [ \-help ]
26 .ad
27 .SH DESCRIPTION
28 .B Show
29 lists each of the specified messages to the standard output
30 (typically, the terminal).
31 .PP
32 By default, text (non-MIME) messages are filtered and displayed by
33 the
34 .B nmh
35 command
36 .BR mhl .
37 This command will display text
38 messages in a nice, uniform format.  It also allows you to configure
39 the format of the displayed messages and which headers fields are
40 shown.  See the
41 .BR mhl (1)
42 manual page for the details about this
43 command.  This default can be changed by defining the
44 .I showproc
45 profile component.  Any switches not recognized by
46 .B show
47 are
48 passed along to that program.  To override the default and the
49 .I showproc
50 profile component, use the
51 .B \-showproc
52 .I program
53 switch.  For example,
54 .B \-showproc
55 .I more
56 will cause the
57 .B more
58 program to list the messages with no reformatting.  Normally, this
59 program is specified as the
60 .I showproc
61 in the user's
62 .IR \&.mh\(ruprofile ,
63 rather than using a command line switch.
64 .PP
65 By default, non-text messages (MIME messages with multi-media
66 contents) are processed and displayed by the
67 .B nmh
68 command
69 .BR mhshow .
70 See the
71 .BR mhshow (1)
72 manual page for details
73 about this command.  This default can changed by defining the
74 .I showmimeproc
75 profile component.  Any switches not recognized
76 by
77 .B show
78 are passed along to that program.  To override this
79 default and the
80 .B showmimeproc
81 profile component, use the
82 .B \-showmimeproc
83 .I program
84 switch.
85 .PP
86 Note that in some cases,
87 .B show
88 may invoke the
89 .I showmimeproc
90 even for textual contents.  This will happen for text messages that
91 specify a transfer encoding (such as MIME quoted-printable or
92 base64) or specify a character set that
93 .B show
94 doesn't believe
95 can be displayed natively.  The environment variable
96 .B $MM_CHARSET
97 should be set to the terminal's native character set to avoid
98 gratuitous invocations of the
99 .IR showmimeproc .
100 See the
101 .BR mh-profile (5)
102 man page for details about this environment variable.
103 .PP
104 The option
105 .B \-checkmime
106 (set by default) instructs
107 .B show
108 to
109 test if any of the messages to be displayed are non-text (MIME)
110 messages.  If any are non-text, they are displayed by the program
111 .IR showmimeproc ,
112 else they are displayed by the program
113 .IR showproc .
114 The option
115 .B \-nocheckmime
116 disables this test and instructs
117 .B show
118 to use
119 .IR showproc ,
120 regardless of whether
121 any of the messages are non-text (MIME) messages.
122 .P
123 The
124 .B \-noshowproc
125 switch will disable any formatting or paging of
126 messages.  It is equivalent to
127 .B \-nocheckmime
128 .B \-showproc
129 .IR cat .
130 It is still accepted, but should be considered (somewhat) obsolete.
131 .PP
132 The
133 .B \-header
134 switch tells
135 .B show
136 to display a one\-line
137 description of the message being shown.  This description includes
138 the folder and the message number.
139 .PP
140 If no `msgs' are specified, the current message is used.  Although
141 it depends on the specific
142 .I showproc
143 or
144 .IR showmimeproc ,
145 in the default setup when more than one message is specified, you
146 will be prompted for a <RETURN> prior to listing each message.
147 Each message will be listed a page at a time, and when the end of
148 page is reached, the program will wait for a <SPACE> or <RETURN>.
149 If a <RETURN> is entered, it will print the next line, whereas
150 <SPACE> will print the next screenful.
151 .PP
152 If the standard output is not a terminal, no queries are made, and
153 each file is listed with a one\-line header and two lines of
154 separation.
155 .PP
156 .RB \*(lq "show \-draft" \*(rq
157 will list the file <mh\-dir>/draft if it
158 exists.
159 .PP
160 If the profile entry \*(lqUnseen\-Sequence\*(rq is present and
161 non\-empty, then
162 .B show
163 will remove each of the messages shown
164 from each sequence named by the profile entry.
165 .SH FILES
166 .fc ^ ~
167 .nf
168 .ta \w'%etcdir%/ExtraBigFileName  'u
169 ^$HOME/\&.mh\(ruprofile~^The user profile
170 .fi
171 .SH "PROFILE COMPONENTS"
172 .fc ^ ~
173 .nf
174 .ta 2.4i
175 .ta \w'ExtraBigProfileName  'u
176 ^Path:~^To determine the user's nmh directory
177 ^Current\-Folder:~^To find the default current folder
178 ^Unseen\-Sequence:~^To name sequences denoting unseen messages
179 ^showproc:~^Program to show text (non-MIME) messages
180 ^showmimeproc:~^Program to show non-text (MIME) messages
181 .fi
182 .SH "SEE ALSO"
183 mhl(1), mhshow(1), more(1), next(1), prev(1), scan(1)
184 .SH DEFAULTS
185 .nf
186 .RB ` +folder "' defaults to the current folder"
187 .RB ` msgs "' defaults to cur"
188 .RB ` \-checkmime '
189 .RB ` \-header '
190 .fi
191 .SH CONTEXT
192 If a folder is given, it will become the current folder.  The last
193 message selected will become the current message.
194 .SH BUGS
195 The
196 .B \-header
197 switch doesn't work when `msgs' expands to more than
198 one message.  If the
199 .I showproc
200 is
201 .BR mhl ,
202 then this problem can
203 be circumvented by referencing the \*(lqmessagename\*(rq field in the
204 .B mhl
205 format file.
206 .PP
207 .B Show
208 updates the user's context before showing the message.
209 Hence
210 .B show
211 will mark messages as seen prior to the user actually
212 seeing them.  This is generally not a problem, unless the user relies
213 on the \*(lqunseen\*(rq messages mechanism, and interrupts
214 .B show
215 while it is showing \*(lqunseen\*(rq messages.
216 .PP
217 If your
218 .I showproc
219 is
220 .B mhl
221 (the default), then
222 .B show
223 uses
224 a built\-in
225 .BR mhl :
226 it does not actually run the
227 .B mhl
228 program.
229 Hence, if you define your own
230 .B showproc ,
231 don't call it
232 .B mhl
233 since
234 .B show
235 won't run it.
236 .PP
237 If your
238 .I showproc
239 is the pager
240 .BR more ,
241 then avoid running
242 .B show
243 in the background with only its standard output piped to
244 another process, as in
245 .PP
246 .RS 5
247 show | imprint &
248 .RE
249 .PP
250 Due to a bug in
251 .BR more ,
252 show will go into a \*(lqtty input\*(rq state.
253 To avoid this problem, re\-direct
254 .BR show 's
255 diagnostic output as well.
256 For users of
257 .BR csh :
258 .PP
259 .RS 5
260 show |& imprint &
261 .RE
262 .PP
263 For users of
264 .BR sh :
265 .PP
266 .RS 5
267 show 2>&1 | imprint &
268 .RE