ports/lang/clojure-mode.el
Torsten Zuehlsdorff 1e6115d22b lang/clojure-mode.el: Update from 5.11.0 to 5.20.0
This update contains changes from 2020-08-13 to 2025-05-27. Here is a compiled
  overview about them:

    * Add `clojuredart-mode`, `joker-mode` and `jank-mode`, derived from `clojure-mode`.
    * Improve regexp for `clojure-find-def` to recognize more complex metadata on vars.
    * Restore `outline-regexp` pattern to permit outline handling of top-level forms.
    * Improve regexp for `clojure-find-def` to recognize `defn-` and other declarations on the form `def...-`.
    * Fix `clojure-align` when called from `clojure-ts-mode` major mode buffers.
    * Syntax highlighting for digits after the first in `%` args. (e.g. `%10`)
    * Change syntax class of ASCII control characters to punctuation, fixing situations where carriage returns were being interpreted as symbols.
    * Add `.lpy` to the list of known Clojure file extensions.
    * Don't highlight vars with colons as keywords.
    * Avoid `No comment syntax is defined` prompts.
    * Declare indentation for the `async` ClojureScript macro.
    * Improve support for multiple forms in the same line by replacing `beginning-of-defun` fn.
    * Fix `clojure-find-ns` when ns form is preceded by other forms.
    * Fix `clojure-find-ns` when ns form is preceded by whitespace or inside comment form.
    * `clojure-find-ns`: add an option to never raise errors, returning `nil` instead on unparseable ns forms.
    * Font-lock Lein's `defproject` as a keyword.
    * Fix infinite loop when sorting a ns with comments in the end.
    * Fix infinite loop when opening file containing `comment` with `clojure-toplevel-inside-comment-form` set to `t`.
    * Recognize nbb projects (identified by the presence of `nbb.edn`).
    * Set `add-log-current-defun-function` to new function `clojure-current-defun-name` (this is used by `which-function-mode` and `easy-kill`).
    * Fix font locking not working for keywords starting with a number.
    * 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.
    * Fix `imenu` with Clojure code in string or comment.
    * Fix metadata being displayed in `imenu` instead of var name.
    * Add font locking for missing `clojure.core` macros.
    * Support clojure-dart files.
    * Fix buffer freezing when typing metadata for a definition.
    * 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`).
    * Add new command `clojure-promote-fn-literal` for converting `#()` function literals to `fn` form.
    * Add `bb` (babashka) to `interpreter-mode-alist`.
    * Fix alignment issue involving margin comments at the end of nested forms.
    * Extend `clojure-rename-ns-alias` to work on selected regions.
    * Add new commands `clojure-toggle-ignore`, `clojure-toggle-ignore-surrounding-form`, and `clojure-toggle-defun` for inserting/deleting `#_` ignore forms.
    * Add `clojure-special-arg-indent-factor` to control special argument indentation.
    * Fix font-lock for character literals.
    * Stop `clojure-sort-ns` from calling `redisplay`.
    * Improve font-locking performance on strings with escaped characters.
    * Remove `project.el` integration.
    * Remove `clojure-view-grimoire` command.
    * Align to recent `pcase` changes on Emacs master.
    * `clojure-rename-ns-alias` picks up existing aliases for minibuffer completion.
    * Fix extra spaces being inserted after quote in paredit-mode.
    * Fix docstring detection when string contains backslash.
    * Fix font-lock regex for character literals for uppercase chars and other symbols.
    * Fix renaming of ns aliases containing regex characters.
    * Fix ns detection for ns forms with complex metadata.
    * Fix `outline-regexp` so `outline-insert-heading` behaves correctly.
    * Indent `clojure-align` region before aligning.
    * Fix allow `clojure-align-cond-forms` to recognize qualified forms.
    * Fix syntax highlighting for multiple consecutive comment reader macros (`#_#_`).
    * Inline definition of `clojure-mode-syntax-table` and support `'` quotes in symbols.
    * Enhance add arity refactoring to support a `defn` inside a reader conditional.
    * Enhance add arity refactoring to support new forms: `letfn`, `fn`, `defmacro`, `defmethod`, `defprotocol`, `reify` and `proxy`.

  You can see a diff of the Changelog here:

    * https://github.com/clojure-emacs/clojure-mode/compare/5.11.0...v5.20.0#diff-06572a96a58dc510037d5efa622f9bec8519bc1beab13c9f251e97e657a9d4ed

Sponsored by:	OTTRIA GmbH
2025-11-14 09:38:10 +01:00
..