Difference between revisions of "Emacs Lisp"

From WikEmacs
Jump to navigation Jump to search
Line 4: Line 4:
  
 
= Basic setup =
 
= Basic setup =
 +
 +
Emacs' support for all [[:Category:Lisp|lisp languages]], including Emacs Lisp, can be customized through the [[Custom]] mechanism by runnign the command {{Command|customize-group RET lisp}}
  
 
= Helpful keybindings =
 
= Helpful keybindings =

Revision as of 21:09, 27 March 2012


(a short overview should go here)

Basic setup

Emacs' support for all lisp languages, including Emacs Lisp, can be customized through the Custom mechanism by runnign the command M-x customize-group RET lisp

Helpful keybindings

<span title="Try `C-h k M-<tab>' for more information." style="border-bottom
1px dotted">[M-<tab>]
Complete at point
[C-M-q]
Indent the sexp following point
[C-M-x]
Evaluate the defun at point

Common customizations

Outlining

For Org-style outlining, add the following customizations.

;; Turn on outline minor mode
(add-hook 'emacs-lisp-mode-hook  'outline-minor-mode)

;; Add key bindings for Org-style outline cycling
(add-hook 'outline-minor-mode-hook
  (lambda ()
    (define-key outline-minor-mode-map [(control tab)] 'org-cycle)
    (define-key outline-minor-mode-map [(shift tab)] 'org-global-cycle)))

Now visit any elisp file (say M-x find-library RET outline) and keep pressing [S-TAB] and see what happens. Experiment similarly with [C-TAB].

Indentation

Add following customization, so that you don't have to indent deliberately. See reindent-then-newline-and-indent.

(add-hook 'emacs-lisp-mode-hook
	  (lambda nil
	    (local-set-key [(return)] 'reindent-then-newline-and-indent)))

External links