Next: External Lisp Prev: Lisp Debug Up: Running
Lisp Interaction Buffers
The buffer `*scratch*', which is selected when Emacs starts up, is
provided for evaluating Lisp expressions interactively inside Emacs.
Both the expressions you evaluate and their output goes in the buffer.
The `*scratch*' buffer's major mode is Lisp Interaction mode, which
is the same as Emacs-Lisp mode except for one command, LFD. In
Emacs-Lisp mode, LFD is an indentation command. In Lisp Interaction
mode, LFD is bound to `eval-print-last-sexp'. This function reads the
Lisp expression before point, evaluates it, and inserts the value in
printed representation before point.
The way to use the `*scratch*' buffer is to insert Lisp expressions
at the end, ending each one with LFD so that it will be evaluated. The
result is a complete typescript of the expressions you have evaluated
and their values.
The rationale for this feature is that Emacs must have a buffer when
it starts up, but that buffer is not useful for editing files since a
new buffer is made for every file that you visit. The Lisp interpreter
typescript is the most useful thing I can think of for the initial
buffer to do. `M-x lisp-interaction-mode' will put any buffer in Lisp
automatically generated by info2www