Elisp: How to Write a Command

By Xah Lee. Date: . Last updated: .

What is a Command

Evaluate the following code. Then, you can call it by execute-extended-commandAlt+x

(defun yay ()
  "Insert YES at cursor position."
  (interactive)
  (insert "YES"))

Command Template

Here is a function definition template that majority of elisp commands follow:

(defun my-command ()
  "One sentence summary of what this command do. Less than 70 chars, try.

More details here.
Be sure to document the parameters.
Be sure to mention the return value, if any.

Lines here should not be indented."
  (interactive)
  (let (var1 var2 etc)
    ;; do something here
    ;; last expression is returned
    ))

Reference

Emacs Lisp, Function