---
name: "prompter"
section: "1"
platform: "linux"
package: "nmh"
version: "1.5-release-0.2"
release: "Debian 7 (Wheezy)"
platforms: ["linux"]
url: "https://new.carta.tech/prompter"
---

# prompter(1)

prompting editor front-end for nmh

## NAME

prompter - prompting editor front-end for nmh

## SYNOPSIS

**prompter** \[**-erase** *chr*\] \[**-kill** *chr*\] \[**-prepend** \| **-noprepend**\] \[**-rapid** \| **-norapid**\] \[**-doteof** \| **-nodoteof**\] *file* \[**-version**\] \[**-help**\]

## DESCRIPTION

**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

\--------Enter additional text

or (if **-prepend** was given)

\--------Enter initial text

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.

## FILES

```
^$HOME/.mh_profile~^The user profile
^/tmp/prompter*~^Temporary copy of message
```

## PROFILE COMPONENTS

```
prompter-next:	To name the editor to be used on exit from .B prompter
^Msg-Protect:~^To set mode when creating a new draft
```

## SEE ALSO

[comp(1)](/comp/1.md), [dist(1)](/dist/1.md), [forw(1)](/forw/1.md), [repl(1)](/repl/1.md), [whatnow(1)](/whatnow/1.md)

## DEFAULTS

```
`-prepend'
`-norapid'
`-nodoteof'
```

## CONTEXT

None

## HELPFUL HINTS

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”).

## BUGS

**Prompter** uses [**stdio**(3)](/stdio/3.md), so it will lose if you edit files with nulls in them.
