Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Emacs support for the Clojure language
Emacs Lisp Clojure

This branch is 572 commits behind clojure-emacs:master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
.gitignore
README.md
clojure-mode.el
clojure-test-mode.el
test.clj

README.md

Clojure Mode

Provides Emacs font-lock, indentation, and navigation for the Clojure language.

Installation

It's easiest to install and keep Clojure Mode updated using package.el.

;; add to ~/.emacs.d/init.el if you aren't already using Marmalade.
(require 'package)
(add-to-list 'package-archives
             '("marmalade" . "http://marmalade-repo.org/packages/"))
(package-initialize)

M-x eval-buffer

M-x package-install clojure-mode

If you use a version of Emacs prior to 24 that doesn't include package.el, you can get it from http://bit.ly/pkg-el23. If you have an older package.el installed from tromey.com, you should upgrade in order to support installation from multiple sources.

Of course, it's possible to just place it on your load-path and require it as well if you don't mind missing out on byte-compilation and autoloads.

Paredit

Using clojure-mode with paredit is highly recommended. It is also available using package.el from the above archive.

Use paredit as you normally would with any other mode; for instance:

;; (require 'paredit) if you didn't install via package.el
(defun turn-on-paredit () (paredit-mode 1))
(add-hook 'clojure-mode-hook 'turn-on-paredit)

SLIME

You can use Leiningen for better interaction with subprocesses via SLIME.

$ wget https://github.com/technomancy/leiningen/raw/stable/bin/lein
[place the "lein" script on your $PATH and make it executable]
$ lein plugin install swank-clojure 1.3.1

M-x clojure-jack-in # from inside a project

License

Copyright © 2007-2011 Jeffrey Chu, Lennart Staflin, Phil Hagelberg

Distributed under the GNU General Public License; see C-h t to view.

Something went wrong with that request. Please try again.