# Clojure contribution layer for Spacemacs
![logo](img/clojure.png)
**Table of Contents**
- [Clojure contribution layer for Spacemacs](#clojure-contribution-layer-for-spacemacs)
- [Description](#description)
- [Packages Included](#packages-included)
- [Install](#install)
- [Cider](#cider)
- [Key Bindings](#key-bindings)
- [Documentation](#documentation)
- [Evaluation](#evaluation)
- [Goto](#goto)
- [REPL](#repl)
- [Tests](#tests)
## Description
This layer adds support for [Clojure][] language using [Cider][].
## Packages Included
- [Cider][]
- [clojure-mode][]
- [Clj Refactor][]
- [Cider Auto Complete][]
- [align-cljlet][]
### Goodies
- Pretty symbols for anonymous functions and set literals, like
`(λ [a] (+ a 5))`, `ƒ(+ % 5)`, and `∈{2 4 6}`.
## Install
To use this contribution add it to your `~/.spacemacs`
```elisp
(setq-default dotspacemacs-configuration-layers '(clojure)
"List of contribution to load."
)
```
### Cider
Cider requires nRepl middleware to function, please check the installation
instructions at the [cider repository][cider_install].
## Key Bindings
### Documentation
Key Binding | Description
----------------------|------------------------------------------------------------
SPC m d d | cider doc
SPC m d g | cider grimoire
SPC m d j | cider javadoc
### Evaluation
Key Binding | Description
----------------------|------------------------------------------------------------
SPC m e b | eval buffer
SPC m e r | eval region
SPC m e s | eval last sexp
### Goto
Key Binding | Description
----------------------|------------------------------------------------------------
SPC m g v | goto var
SPC m g e | goto error
SPC m g s | goto symbol
### REPL
Key Binding | Description
----------------------|------------------------------------------------------------
SPC m j | cider jack in
SPC m k | cider load-buffer
SPC m z | switch to repl
### Tests
Key Binding | Description
----------------------|------------------------------------------------------------
SPC m t t | run tests
[Clojure]: http://clojure.org
[Cider]: https://github.com/clojure-emacs/cider
[cider_install]: https://github.com/clojure-emacs/cider#installation
[clojure-mode]: https://github.com/clojure-emacs/clojure-mode
[Clj Refactor]: https://github.com/clojure-emacs/clj-refactor.el
[Cider Auto Complete]: https://github.com/clojure-emacs/ac-cider
[align-cljlet]: https://github.com/gstamp/align-cljlet