The next argument in the interactive expression starts with a lower
case ‘b’. (This is different from the code for
append-to-buffer
, which uses an upper-case ‘B’.
See The Definition of append-to-buffer
.)
The lower-case ‘b’ tells the Lisp interpreter that the argument
for insert-buffer
should be an existing buffer or else its
name. (The upper-case ‘B’ option provides for the possibility
that the buffer does not exist.) Emacs will prompt you for the name
of the buffer, offering you a default buffer, with name completion
enabled. If the buffer does not exist, you receive a message that
says “No match”; your terminal may beep at you as well.
The new and simplified code generates a list for interactive
.
It uses the barf-if-buffer-read-only
and read-buffer
functions with which we are already familiar and the progn
special form with which we are not. (It will be described later.)