NonGNU ELPA - clojure-mode


Major mode for Clojure code
clojure-mode-5.16.0.tar, 2022-Dec-14, 180 KiB
Bozhidar Batsov <>
Browse ELPA's repository
CGit or Gitweb

To install this package, run in Emacs:

M-x package-install RET clojure-mode RET

Full description

Provides font-lock, indentation, navigation and basic refactoring for the
Clojure programming language (

Using clojure-mode with paredit or smartparens is highly recommended.

Here are some example configurations:

  ;; require or autoload paredit-mode
  (add-hook 'clojure-mode-hook #'paredit-mode)

  ;; require or autoload smartparens
  (add-hook 'clojure-mode-hook #'smartparens-strict-mode)

See inf-clojure ( for
basic interaction with Clojure subprocesses.

See CIDER ( for
better interaction with subprocesses via nREPL.

Old versions

clojure-mode-5.15.1.tar.lz2022-Jul-3039.5 KiB
clojure-mode-5.15.0.tar.lz2022-Jul-1939.4 KiB
clojure-mode-5.14.0.tar.lz2022-Mar-0839.2 KiB
clojure-mode-5.13.0.tar.lz2021-Aug-0937.4 KiB



master (unreleased)

5.16.0 (2022-12-14)

  • #641: Recognize nbb projects (identified by the presence of nbb.edn).
  • #629: Set add-log-current-defun-function to new function clojure-current-defun-name (this is used by which-function-mode and easy-kill).
Bugs fixed
  • #581: Fix font locking not working for keywords starting with a number.
  • #377: Fix everything starting with the prefix def being highlighted as a definition form. Now definition forms are enumerated explicitly in the font-locking code, like all other forms.
  • #638: Fix imenu with Clojure code in string or comment.

5.15.1 (2022-07-30)

Bugs fixed
  • #625: Fix metadata being displayed in imenu instead of var name.

5.15.0 (2022-07-19)

  • #622: Add font locking for missing clojure.core macros.
  • #615: Support clojure-dart files.
Bugs fixed
  • #595, #612: Fix buffer freezing when typing metadata for a definition.

5.14.0 (2022-03-07)

New features
  • Allow additional directories, beyond the default clj[sc], to be correctly formulated by clojure-expected-ns via new defcustom entitled clojure-directory-prefixes
  • Recognize babashka projects (identified by the presence of bb.edn).
  • #601: Add new command clojure-promote-fn-literal for converting #() function literals to fn form.
  • #604: Add bb (babashka) to interpreter-mode-alist.
Bugs fixed
  • #608 Fix alignment issue involving margin comments at the end of nested forms.

5.13.0 (2021-05-05)

New features
  • #590: Extend clojure-rename-ns-alias to work on selected regions.
  • #567: Add new commands clojure-toggle-ignore, clojure-toggle-ignore-surrounding-form, and clojure-toggle-defun for inserting/deleting #_ ignore forms.
  • #582: Add clojure-special-arg-indent-factor to control special argument indentation.
Bugs fixed
  • #588: Fix font-lock for character literals.
  • Stop clojure-sort-ns from calling redisplay.
  • #589: Improve font-locking performance on strings with escaped characters.
  • #571: Remove project.el integration.
  • #574: Remove clojure-view-grimoire command.
  • #584: Align to recent pcase changes on Emacs master.

5.12.0 (2020-08-13)

New features
  • #556: clojure-rename-ns-alias picks up existing aliases for minibuffer completion.
Bugs fixed
  • #565: Fix extra spaces being inserted after quote in paredit-mode.
  • #544: Fix docstring detection when string contains backslash.
  • #547: Fix font-lock regex for character literals for uppercase chars and other symbols. ... ...