8 date 92.10.16.21.36.14; author jromine; state Exp;
13 date 90.04.05.15.13.40; author sources; state Exp;
18 date 90.03.23.15.29.58; author sources; state Exp;
23 date 90.03.23.14.17.37; author sources; state Exp;
28 date 90.03.22.19.46.39; author sources; state Exp;
33 date 90.03.22.11.31.30; author sources; state Exp;
38 date 90.03.20.19.42.09; author sources; state Exp;
43 date 90.03.20.17.36.27; author sources; state Exp;
48 date 90.03.20.17.21.10; author sources; state Exp;
63 .\" @@(#)$Id: msh.rf,v 1.8 1990/04/05 15:13:40 sources Exp jromine $
66 msh \- MH shell (and BBoard reader)
70 \%[\-scan] \%[\-noscan]
71 \%[\-topcur] \%[\-notopcur]
75 \fImsh\fR is an interactive program that
76 implements a subset of the normal \fIMH\fR commands
77 operating on a single file in \fIpackf\fR'd format.
78 That is, \fImsh\fR is used to read a file that contains a number of
80 as opposed to the standard
82 style of reading a number of files,
83 each file being a separate message in a folder.
84 \fImsh\fR's chief advantage is that the normal \fIMH\fR style does not allow
85 a file to have more than one message in it.
86 Hence, \fImsh\fR is ideal for reading \fIBBoards\fR,
87 as these files are delivered by the transport system in this format.
88 In addition, \fImsh\fR can be used on other files,
89 such as message archives which have been \fIpack\fRed (see \fIpackf\fR\0(1)).
90 Finally, \fImsh\fR is an excellent \fIMH\fR
92 As the only commands available to the user are \fIMH\fR commands,
93 this allows \fIMH\fR beginners to concentrate on how commands to
94 \fIMH\fR are formed and (more or less) what they mean.
96 When invoked, \fImsh\fR reads the named file, and enters a command loop.
97 The user may type most of the normal
100 The syntax and semantics of these commands typed to \fImsh\fR are
101 identical to their \fIMH\fR
102 counterparts. In cases where the nature of \fImsh\fR would be inconsistent
103 (e.g., specifying a `+folder' with some commands),
104 \fImsh\fR will duly inform the user.
105 The commands that \fImsh\fR currently supports
106 (in some slightly modified or restricted forms) are:
161 \fImsh\fR has a \*(lqhelp\*(rq command which gives a brief overview.
162 To terminate \fImsh\fR, type CTRL\-D, or use the \*(lqquit\*(rq command.
163 If \fImsh\fR is being invoked from \fIbbc\fR,
164 then typing CTRL\-D will also tell \fIbbc\fR to exit as well,
165 while using the \*(lqquit\*(rq command will return control to \fIbbc\fR,
166 and \fIbbc\fR will continue examining the list of BBoards
169 If the file is writable and has been modified,
170 then using \*(lqquit\*(rq will query the user if the file should be updated.
172 The `\-prompt string' switch sets the prompting string for \fImsh\fR.
174 You may wish to use an alternate \fIMH\fR profile for the commands that
176 see \fImh-profile\fR\0(5) for details about the \fB$MH\fR envariable.
178 When invoked from \fIbbc\fR,
179 two special features are enabled:
181 the `\-scan' switch directs \fImsh\fR to do a `scan\0unseen' on
182 start\-up if new items are present in the BBoard.
183 This feature is best used from \fIbbc\fR,
184 which correctly sets the stage.
186 the \fImark\fR command in \fImsh\fR acts specially when you are reading
188 since \fImsh\fR will consult the sequence \*(lqunseen\*(rq in determining
189 what messages you have actually read.
190 When \fImsh\fR exits, it reports this information to \fIbbc\fR.
191 In addition, if you give the \fImark\fR command with no arguments,
192 \fImsh\fR will interpret it
193 as `mark\0\-sequence\0unseen\0\-delete\0\-nozero\0all'
194 Hence, to discard all of the messages in the current BBoard you're
195 reading, just use the \fImark\fR command with no arguments.
197 Normally, the \*(lqexit\*(rq command is identical to the \*(lqquit\*(rq
198 command in \fImsh\fR.
199 When run under \fIbbc\fR however, \*(lqexit\*(rq directs \fImsh\fR to mark
200 all messages as seen and then \*(lqquit\*(rq.
202 this command is often abbreviated as just \*(lqe\*(rq.
204 When invoked from \fIvmh\fR,
205 another special feature is enabled:
206 The `topcur' switch directs \fImsh\fR to have the current message
207 \*(lqtrack\*(rq the top line of the \fIvmh\fR scan window.
208 Normally, \fImsh\fR has the current message \*(lqtrack\*(rq the center of the
209 window (under `\-notopcur', which is the default).
211 \fImsh\fR supports an output redirection facility.
212 Commands may be followed by one of
216 .ta \w'| \fIcommand\fR 'u
217 ^> \fIfile\fR~^write output to \fIfile\fR
218 ^>> \fIfile\fR~^append output to \fIfile\fR
219 ^| \fIcommand\fR~^pipe output to UNIX \fIcommand\fR
224 If \fIfile\fR starts with a `\~' (tilde),
225 then a \fIcsh\fR-like expansion takes place.
226 Note that \fIcommand\fR is interpreted by \fIsh\fR\0(1).
227 Also note that \fImsh\fR does NOT support
228 history substitutions, variable substitutions, or alias substitutions.
230 When parsing commands to the left of any redirection symbol,
231 \fImsh\fR will honor `\\' (back\-slash) as the quote next\-character symbol,
232 and `"' (double\-quote) as quote\-word delimiters.
233 All other input tokens are separated by whitespace
236 ^$HOME/\&.mh\(ruprofile~^The user profile
237 ^@@(MHETCPATH)/mtstailor~^tailor file
239 ^Path:~^To determine the user's MH directory
241 ^Msg\-Protect:~^To set mode when creating a new `file'
243 ^fileproc:~^Program to file messages
245 ^showproc:~^Program to show messages
249 `file' defaults to \*(lq./msgbox\*(rq
259 The argument to the `\-prompt' switch must be interpreted as a single token
260 by the shell that invokes \fImsh\fR.
262 one must usually place the argument to this switch inside double\-quotes.
264 There is a strict limit of messages per file in \fIpackf\fR'd format which
265 \fImsh\fR can handle.
266 Usually, this limit is 1000 messages.
268 Please remember that \fImsh\fR is not the \fICShell\fR,
269 and that a lot of the nice facilities provided by the latter are not
270 present in the former.
272 In particular, \fImsh\fR does not understand back\-quoting,
273 so the only effective way to use \fIpick\fR inside \fImsh\fR is to always use
274 the `\-seq\0select' switch.
275 Clever users of \fIMH\fR will put the line
278 pick:\0\-seq\0select\0\-list
280 in their \&.mh\(ruprofile file so that \fIpick\fR works equally well from
281 both the shell and \fImsh\fR.
283 \fIsortm\fR always uses \*(lq\-noverbose\*(rq and
284 if \*(lq\-textfield\ field\*(lq is used, \*(lq\-limit 0\*(rq.
286 The \fImsh\fR program inherits most (if not all) of the bugs from the
287 \fIMH\fR commands it implements.
326 @document sortm defieciencies
334 \fIsortm\fR switches \*(lq\-\[no\]verbose\*(rq and \*(lq\-\[no\]limit\*(rq
341 @put things back, do .NA stuff another way
355 .TH MSH 1 @@(MHCENTERFOOT) @@(MHLEFTFOOT)
365 @fixup for makewhatis