Emacs Lisp: How to Write a Command

By Xah Lee. Date: . Last updated: .

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

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

(info "(elisp) Defining Commands")

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
    ))

Emacs Lisp Function


Practical Elisp ⭐

Writing Command

Text Processing

Get User Input

File/Buffer

Writing Script