# Emacs Lisp contribution layer for Spacemacs ![logo](img/emacs-lisp.png) **Table of Contents** - [Emacs Lisp contribution layer for Spacemacs](#emacs-lisp-contribution-layer-for-spacemacs) - [Description](#description) - [Install](#install) - [Key bindings](#key-bindings) - [srefactor](#srefactor) ## Description This layer gathers all the configuration related to emacs-lisp. This should always be in your dotfile, it is not recommended to uninstall it. ## Install To use this contribution add it to your `~/.spacemacs` ```elisp (setq-default dotspacemacs-configuration-layers '(emacs-lisp)) ``` ## Key bindings Key Binding | Description ---------------------------------------------|------------------------------------------- SPC m g g | go to definition of symbol under point SPC m h h | describe symbol at point SPC m e $ or SPC m e l | go to end of current line and evaluate SPC m e b | evaluate current buffer SPC m e c | evaluate current form (start with `defun`, `setq`, etc...) SPC m e e | evaluate sexp before point SPC m e r | evaluate current region SPC m e f | evaluation current function SPC m , | toggle `lisp state` SPC m t b | run tests of current buffer SPC m t q | run `ert` SPC m d m | open [macrostep][] micro-state ### srefactor The [semantic layer][semantic-layer] should be installed for these key bindings to become active. Key Binding | Description ---------------------|------------------------------------------------------------ SPC m = b | format current buffer SPC m = f | format current function SPC m = o | format all on one line SPC m = s | format current sexp [macrostep]: https://github.com/joddie/macrostep [semantic-layer]: ../../semantic/README.md