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