GNU Emacs Lisp Reference Manual
21.2.2 Code Characters for
The code character descriptions below contain a number of key words,
defined here as follows:
Provide completion. TAB, SPC, and RET perform name
completion because the argument is read using
(see section 20.5 Completion). ? displays a list of possible completions.
- Require the name of an existing object. An invalid name is not
accepted; the commands to exit the minibuffer do not exit if the current
input is not valid.
A default value of some sort is used if the user enters no text in the
minibuffer. The default depends on the code character.
- No I/O
- This code letter computes an argument without reading any input.
Therefore, it does not use a prompt string, and any prompt string you
supply is ignored.
Even though the code letter doesn't use a prompt string, you must follow
it with a newline if it is not the last code character in the string.
- A prompt immediately follows the code character. The prompt ends either
with the end of the string or with a newline.
- This code character is meaningful only at the beginning of the
interactive string, and it does not look for a prompt or a newline.
It is a single, isolated character.
Here are the code character descriptions for use with
- Signal an error if the current buffer is read-only. Special.
- Select the window mentioned in the first mouse event in the key
sequence that invoked this command. Special.
- A function name (i.e., a symbol satisfying
- The name of an existing buffer. By default, uses the name of the
current buffer (see section 27. Buffers). Existing, Completion, Default,
- A buffer name. The buffer need not exist. By default, uses the name of
a recently used buffer other than the current buffer. Completion,
- A character. The cursor does not move into the echo area. Prompt.
- A command name (i.e., a symbol satisfying
The position of point, as an integer (see section 30.1 Point). No I/O.
- A directory name. The default is the current default directory of the
default-directory (see section 40.3 Operating System Environment).
Existing, Completion, Default, Prompt.
- The first or next mouse event in the key sequence that invoked the command.
More precisely, `e' gets events that are lists, so you can look at
the data in the lists. See section 21.6 Input Events. No I/O.
You can use `e' more than once in a single command's interactive
specification. If the key sequence that invoked the command has
n events that are lists, the nth `e' provides the
nth such event. Events that are not lists, such as function keys
and ASCII characters, do not count where `e' is concerned.
- A file name of an existing file (see section 25.8 File Names). The default
default-directory. Existing, Completion, Default,
- A file name. The file need not exist. Completion, Default, Prompt.
- An irrelevant argument. This code always supplies
the argument's value. No I/O.
- A key sequence (see section 22.1 Keymap Terminology). This keeps reading events
until a command (or undefined command) is found in the current key
maps. The key sequence argument is represented as a string or vector.
The cursor does not move into the echo area. Prompt.
This kind of input is used by commands such as
- A key sequence, whose definition you intend to change. This works like
`k', except that it suppresses, for the last input event in the key
sequence, the conversions that are normally used (when necessary) to
convert an undefined key into a defined one.
The position of the mark, as an integer. No I/O.
- Arbitrary text, read in the minibuffer using the current buffer's input
method, and returned as a string (see section `Input Methods' in The GNU Emacs Manual). Prompt.
- A number read with the minibuffer. If the input is not a number, the
user is asked to try again. The prefix argument, if any, is not used.
The numeric prefix argument; but if there is no prefix argument, read a
number as with n. Requires a number. See section 21.11 Prefix Command Arguments. Prompt.
The numeric prefix argument. (Note that this `p' is lower case.)
- The raw prefix argument. (Note that this `P' is upper case.) No
Point and the mark, as two numeric arguments, smallest first. This is
the only code letter that specifies two successive arguments rather than
one. No I/O.
- Arbitrary text, read in the minibuffer and returned as a string
(see section 20.2 Reading Text Strings with the Minibuffer). Terminate the input with either
C-j or RET. (C-q may be used to include either of
these characters in the input.) Prompt.
- An interned symbol whose name is read in the minibuffer. Any whitespace
character terminates the input. (Use C-q to include whitespace in
the string.) Other characters that normally terminate a symbol (e.g.,
parentheses and brackets) do not do so here. Prompt.
- A variable declared to be a user option (i.e., satisfying the predicate
user-variable-p). See section 20.5.4 High-Level Completion Functions. Existing,
- A Lisp object, specified with its read syntax, terminated with a
C-j or RET. The object is not evaluated. See section 20.3 Reading Lisp Objects with the Minibuffer. Prompt.
A Lisp form is read as with x, but then evaluated so that its
value becomes the argument for the command. Prompt.
- A coding system name (a symbol). If the user enters null input, the
argument value is
nil. See section 33.10 Coding Systems. Completion,
- A coding system name (a symbol)---but only if this command has a prefix
argument. With no prefix argument, `Z' provides
nil as the
argument value. Completion, Existing, Prompt.