Emacs: Evaluate Elisp Code
Evaluate Elisp Code
Here's ways to eval elisp code, roughly in order of usefulness:
- Alt+x
eval-last-sexp【Ctrl+x Ctrl+e】 -
Eval lisp expression to the left of cursor.
Result is placed in Messages Buffer, and temporarily displayed at bottom.
eval emacs lisp code - Alt+x
eval-region - Eval text selection.
- Alt+x
eval-buffer - Eval whole buffer.
- Alt+x
load-file - Eval a file. It prompts for a filename.
- Alt+x
eval-defun - Eval function definition the cursor is in. (the elisp code must be well-indended, otherwise emacs may have problem finding function.) 〔see Emacs: narrow-to-defun, eval-defun, bug〕
- Alt+x
eval-expression - Prompts you to type a emacs lisp expression.
Emacs Lisp Command Line Interface (REPL)
Alt+x ielm to start emacs interactive emacs lisp shell.
ielm
I recommend working in a buffer instead of REPL.
Working in a buffer (sometimes called notebook inteface) allows you to use full editing power, and eval any expression, in any order, anytime, anywhere. 〔see Command Line Interface (REPL) vs Notebook Interface〕