NonGNU ELPA - clojure-mode

clojure-mode Atom Feed

Description
Major mode for Clojure code
Latest
clojure-mode-5.22.0.tar (.sig), 2026-Mar-04, 220 KiB
Maintainer
Bozhidar Batsov <bozhidar@batsov.dev>
Website
https://github.com/clojure-emacs/clojure-mode
Browse ELPA's repository
CGit or Gitweb
Badge

To install this package from Emacs, use package-install or list-packages.

Full description

Provides font-lock, indentation, navigation and basic refactoring for the
Clojure programming language (https://clojure.org).

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 (https://github.com/clojure-emacs/inf-clojure) for
basic interaction with Clojure subprocesses.

See CIDER (https://github.com/clojure-emacs/cider) for
better interaction with subprocesses via nREPL.

Old versions

clojure-mode-5.21.0.tar.lz2026-Feb-1843.4 KiB
clojure-mode-5.20.0.tar.lz2025-May-2742.1 KiB
clojure-mode-5.19.0.tar.lz2024-May-2642.0 KiB
clojure-mode-5.18.1.tar.lz2024-Mar-3141.4 KiB
clojure-mode-5.18.0.tar.lz2023-Oct-1841.0 KiB
clojure-mode-5.17.1.tar.lz2023-Oct-1241.0 KiB
clojure-mode-5.17.0.tar.lz2023-Sep-1140.9 KiB
clojure-mode-5.16.2.tar.lz2023-Aug-2340.6 KiB
clojure-mode-5.16.1.tar.lz2023-Jun-2640.4 KiB
clojure-mode-5.16.0.tar.lz2022-Dec-1440.2 KiB
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

News

Changelog

master (unreleased)

5.22.0 (2026-03-03)

New features
  • #687: Add clojure-preferred-build-tool to control project root detection when multiple build tool files exist. When unset, prefer directories containing .git as a tiebreaker.
  • #688: Add clojure-discard-face for #_ reader discard forms, allowing them to be styled differently from comments. Inherits from font-lock-comment-face by default.
  • Add project root detection for ClojureCLR (deps-clr.edn).
  • Give edn-mode its own keymap with data-appropriate bindings, excluding code-oriented refactoring commands.
Changes
  • Update font-locking of built-in dynamic vars for Clojure 1.12.
  • Update clojure-mode-extra-font-locking for Clojure 1.10-1.12 (new functions in clojure.core and other bundled namespaces).
  • Add clojure.repl section to clojure-mode-extra-font-locking.
  • Remove non-existent entries from clojure-mode-extra-font-locking (specify, specify!, special-form-anchor, syntax-symbol-anchor, stream?).
  • Extend clojure--check-wrong-major-mode to cover all derived modes (.cljd, .jank, .joke, .edn).
  • Remove dead .cljd entry from clojure-mode auto-mode-alist.
Bugs fixed
  • #402: Font-lock protocol method docstrings with font-lock-doc-face.
  • #649: Fix clojure-add-arity severing arglist metadata (^String, ^:keyword, ^{...}) when converting single-arity to multi-arity.
  • #600: Fix clojure--valid-put-clojure-indent-call-p rejecting valid indent specs with nested lists (e.g. letfn's (1 ((:defn)) nil)).
  • #365: Font-lock function names in letfn bindings with font-lock-function-name-face.
  • #527: Fix clojure-sort-ns mangling :gen-class and other non-sortable ns forms.
  • #619: Fix clojure-thread-last-all breaking forms containing line comments by absorbing closing parens into comments.
  • #610: Fix edn-mode indentation to treat all paren lists as data rather than function calls.
  • Fix clojure-update-ns broken by the removal of clojure-namespace-name-regex.
  • Fix typos in clojure-mode-extra-font-locking: halt-when? -> halt-when, simple-indent? -> simple-ident?.
  • Fix doc and find-doc misplaced under clojure.core instead of clojure.repl in extra font-locking.

5.21.0 (2026-02-18)

New features
  • #650: Add edn-mode, a lightweight mode derived from clojure-mode with data-appropriate indentation for .edn files.
  • #439: Add interpreter-mode-alist entries for clojure, clj, planck, joker, and jank, so that scripts with shebang lines are recognized automatically.
Bugs fixed
  • #658: Fix clojure-mode-version returning nil.
  • #686: Fix clojure-find-def failing when comments appear between the def form and the symbol name.
  • #637: Fix clojure-find-def failing on symbols containing special characters (e.g. defn+).
Changes
  • #482: Bind clojure-align to C-c C-a (following Emacs keybinding conventions). The old C-c SPC binding is deprecated and will be removed in a future release.
  • Bump the minimum required Emacs version to 27.1.

5.20.0 (2025-05-27)

... ...