prompter - nmh's prompting editor front-end
prompter [-help] [-version] [-erase chr] [-kill chr] [-prepend | -noprepend] [-rapid | -norapid] [-doteof | -nodoteof] file
prompter is an editor front-end for nmh which allows rapid composition of messages. This program is not normally invoked directly by users but takes the place of an editor and acts as an editor front-end. It operates on an RFC 822-style message draft skeleton specified by file, normally provided by the nmh commands comp, dist, forw, or repl.
prompter is particularly useful when composing messages over slow network or modem lines. It is an nmh program in that it can have its own profile entry with switches, but it is not invoked directly by the user. The commands comp, dist, forw, and repl invoke prompter as an editor, either when invoked with -editor prompter, or by the profile entry “Editor: prompter”, or when given the command edit prompter at the “What now?” prompt.
For each empty component prompter finds in the draft, the user is prompted for a response; A <RETURN> will cause the whole component to be left out. Otherwise, a `\' preceding a <RETURN> will continue the response on the next line, allowing for multiline components. Continuation lines must begin with a space or tab.
Each non-empty component is copied to the draft and displayed on the terminal.
The start of the message body is denoted by a blank line or a line of dashes. If the body is non-empty, the prompt, which isn't written to the file, is
or (if -prepend was given)
Message-body typing is terminated with an end-of-file (usually CTRL-D). With the -doteof switch, a period on a line all by itself also signifies end-of-file. At this point control is returned to the calling program, where the user is asked “What now?”. See whatnow(1) for the valid options to this query.
By using the -prepend switch, the user can add type-in to the beginning of the message body and have the rest of the body follow. This is useful for the forw command.
By using the -rapid switch, if the draft already contains text in the message-body, it is not displayed on the user's terminal. This is useful for low-speed terminals.
The line editing characters for kill and erase may be specified by the user via the arguments -kill chr and -erase chr, where chr may be a character; or `\nnn', where “nnn” is the octal value for the character.
An interrupt (usually CTRL-C) during component typing will abort prompter and the nmh command that invoked it. An interrupt during message-body typing is equivalent to CTRL-D, for historical reasons. This means that prompter should finish up and exit.
The first non-flag argument to prompter is taken as the name of the draft file, and subsequent non-flag arguments are ignored.
^$HOME/.mh_profile~^The user profile ^/tmp/prompter*~^Temporary copy of message
prompter-next: To name the editor to be used on exit from .B prompter ^Msg-Protect:~^To set mode when creating a new draft
`-prepend' `-norapid' `-nodoteof'
The -rapid option is particularly useful with forw, and -noprepend is useful with comp -use.
The user may wish to link prompter under several names (e.g., “rapid”) and give appropriate switches in the profile entries under these names (e.g., “rapid: -rapid”). This facilitates invoking prompter differently for different nmh commands (e.g., “forw: -editor rapid”).
prompter uses stdio(3), so it will lose if you edit files with nulls in them.