Henrik Lissner
4fe1cbeddb
refactor: s/when-let/when-let*/
...
The former is deprecated on Emacs 31 for the latter.
2026-03-09 03:28:06 -04:00
Henrik Lissner
4cf886ba30
refactor: remove old unit tests
...
Making room for the new tests and framework coming in v3. Besides, these
old tests haven't been used in years.
2026-03-08 19:41:17 -04:00
Henrik Lissner
08ab5d53b4
docs: update doomemacs repo urls
...
Close : #8695
Co-authored-by: kovan <kovan@users.noreply.github.com>
2026-03-05 22:48:55 -05:00
Henrik Lissner
d23bbe8772
fix(evil): +evil--use-evil-registers-a: recursive advice
...
Prevent `get-register`s advice from affecting the `get-register` call in
`evil-get-register` in `+evil--use-evil-registers-a`.
Ref: #8698
Fix : #8699
Amend: 88e2a0d5de
2026-03-04 04:06:58 -05:00
Henrik Lissner
2105bf59c3
nit: minor reformatting & revise comments
...
Getting these small edits out of the way to simplify v3 merge conflicts.
2026-03-02 19:50:51 -05:00
Henrik Lissner
6c0881c684
nit: revise TODO/FIXME/HACK/REVIEW/etc in comments
...
Some were outdated, some were incorrectly labeled, others were already
completed, some were missing... Gotta fix them all.
Also, in :ui hl-todo, there are comments that describe how Doom uses
each of these annotations; those have been updated.
2026-03-02 19:45:09 -05:00
Henrik Lissner
470e653f08
bump: :app :config :editor :emacs :email :input
...
emacs-straight/use-package@039b721a4d -> emacs-straight/use-package@4090d3267f
emacsmirror/undo-fu-session@34ae31308d -> emacsmirror/undo-fu-session@92d733a5b1
https://git.notmuchmail.org/git/notmuch@5c921b6c0b2d -> https://git.notmuchmail.org/git/notmuch@73746c0eb3a0
https://git.savannah.gnu.org/git/emms.git@1d48a1133db2 -> https://git.savannah.gnu.org/git/emms.git@002a8db0913c
https://github.com/emacs-tree-sitter/treesit-fold@c5f0a95550d1 -> https://github.com/emacs-tree-sitter/treesit-fold@d70c5f7240a8
jeremy-compostella/org-msg@327768e2c3 -> jeremy-compostella/org-msg@aa608b3995
juliapath/evil-numbers@e7adac70a0 -> juliapath/evil-numbers@616aff9e5c
kidd/org-gcal.el@36cbdb453d -> kidd/org-gcal.el@0f46c08f60
radian-software/apheleia@143c1dffed -> radian-software/apheleia@2bc2bb4cc2
skeeto/elfeed@66cfe43dfc -> skeeto/elfeed@bbb3cac27b
tumashu/posframe@4fc893c3c9 -> tumashu/posframe@3a80911b2f
2026-03-02 01:44:27 -05:00
Henrik Lissner
10d0b60f5d
refactor(lib): deprecate pushnew!
...
In the spirit of 6f40ad5 , I'm deprecating this macro because it doesn't
provide enough value to exist and serves only to complicate a casual
reader's understanding of Doom's modules.
Ref: 6f40ad55f5
2026-03-01 18:10:43 -05:00
Henrik Lissner
2c42e47a30
nit(evil): reformat & revise comments
...
Tidy up in preparation for bigger changes post-v3.
2026-03-01 18:10:43 -05:00
Henrik Lissner
88e2a0d5de
feat(evil,vertico): merge evil's into emacs' registers
...
Makes Emacs more broadly aware of Evil's registers (when Evil is
active), and fixes an issue where our advice integrating
`consult-register` with Evil registers would properly list Evil
registers, but not fetch/insert them correctly (#8698 ).
Fix : #8698
Close : #8699
Co-authored-by: liaowang11 <liaowang11@users.noreply.github.com>
2026-03-01 18:10:43 -05:00
Henrik Lissner
2428689f3b
fix(evil): appease byte-compiler (unused var)
2026-03-01 18:10:42 -05:00
Henrik Lissner
a5a56cd171
revert: evil-numbers
...
juliapath/evil-numbers@616aff9e5c -> juliapath/evil-numbers@e7adac70a0
Original issue was not resolved.
Ref: b002bf3f8e
Amend: a0d6aac43f
2026-02-15 21:58:25 -05:00
kovan
e989ab4920
fix(evil): reference correct kill-buffer function in :kill ex command
...
The :k(ill) ex command referenced `doom/kill-current-buffer`, which
doesn't exist. Replace with `kill-current-buffer`, matching every other
kill-buffer binding in the codebase (zx, SPC b k, q, etc.).
Fix : #6341
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 21:54:19 -05:00
Henrik Lissner
60c0febf19
nit(evil): +evil--clean-isearch-overlays-a: add REVIEW note
...
Ref: #8625
Amend: 9019a16887
2026-02-14 20:04:31 -05:00
kovan
9019a16887
fix(evil): clean isearch overlays after ex-search navigation
...
`evil-ex-search' (used by `n'/`N') calls `isearch-range-invisible'
which temporarily opens fold overlays to check visibility, but never
calls `isearch-clean-overlays' to restore them. This corrupts org-fold
overlay state, making subtrees permanently unfoldable with TAB.
The initial `/` search properly cleans up via
`evil-ex-search-stop-session', but repeated `n'/`N' navigation skips
this step. Add `:after' advice to call `isearch-clean-overlays'.
Ref: emacs-evil/evil#1630
Fix : #8625
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 00:30:55 -05:00
Henrik Lissner
a0d6aac43f
bump: :editor
...
emacs-evil/evil-collection@163792a823 -> emacs-evil/evil-collection@d052ad2ec1
https://github.com/emacs-tree-sitter/treesit-fold@ec7e5b02e5d0 -> https://github.com/emacs-tree-sitter/treesit-fold@c5f0a95550d1
juliapath/evil-numbers@e7adac70a0 -> juliapath/evil-numbers@616aff9e5c
magnars/multiple-cursors.el@9017f3be6b -> magnars/multiple-cursors.el@ddd677091a
radian-software/apheleia@426616cf17 -> radian-software/apheleia@143c1dffed
2026-02-10 18:17:53 -05:00
Henrik Lissner
b002bf3f8e
revert: evil-numbers
...
juliapath/evil-numbers@616aff9e5c -> juliapath/evil-numbers@e7adac70a0
An `incf` call was introduced in juliapath/evil-numbers@616aff9e5c ,
but this function wasn't introduced until 31+ (and another definition
was deprecated in cl.el back in... 27? 28? I forget, but evil-numbers
isn't loading cl, so it's likely a reference to the newer def).
In any case, this causes void-function errors for users on earlier
versions of Emacs.
Ref: juliapath/evil-numbers@616aff9e5c
Amend: bc53a96052
2026-01-07 02:55:40 -05:00
Henrik Lissner
bc53a96052
bump: :editor
...
emacs-evil/evil-collection@1bfa8174ea -> emacs-evil/evil-collection@163792a823
https://github.com/emacs-tree-sitter/treesit-fold@8182ae243a57 -> https://github.com/emacs-tree-sitter/treesit-fold@ec7e5b02e5d0
juliapath/evil-numbers@e96d656158 -> juliapath/evil-numbers@616aff9e5c
justinbarclay/parinfer-rust-mode@d5578ec0b2 -> justinbarclay/parinfer-rust-mode@6ee9f905c4
radian-software/apheleia@436cd94b3e -> radian-software/apheleia@426616cf17
2026-01-06 02:00:18 -05:00
Henrik Lissner
4267ce0384
bump: :editor
...
emacs-evil/evil-collection@faed16f485 -> emacs-evil/evil-collection@1bfa8174ea
emacs-evil/evil@334a636621 -> emacs-evil/evil@729d9a58b3
emacsmirror/visual-fill-column@e391b52922 -> emacsmirror/visual-fill-column@e1be9a1545
https://github.com/emacs-tree-sitter/treesit-fold@67b3e63eacd9 -> https://github.com/emacs-tree-sitter/treesit-fold@8182ae243a57
jscheid/dtrt-indent@9108979357 -> jscheid/dtrt-indent@7c372bec8d
magnars/multiple-cursors.el@89f1a8df9b -> magnars/multiple-cursors.el@9017f3be6b
matsievskiysv/vimish-fold@a6501cbfe3 -> matsievskiysv/vimish-fold@f71f374d28
radian-software/apheleia@f1d36031fc -> radian-software/apheleia@436cd94b3e
2025-12-01 23:56:53 -05:00
Henrik Lissner
c63b207e4f
fix(evil): add error handling for :h[elp] ex command
...
apropos throws up an arith-error trying to rank the results of matchless
regexp (which can result in a segfault on some systems; see #8532 ), and
is *incredibly* slow lookuping up short queries, so the command will now
abort if the query is just a regexp operator or less than 3 characters
long.
Fix : #8532
2025-09-26 12:20:56 -04:00
Henrik Lissner
c27621a777
fix(evil): evil-respect-visual-line-mode: up/down/end/home keys
...
Fix : #7249
Ref: emacs-evil/evil#1971
2025-09-20 16:05:12 -04:00
Henrik Lissner
722885d3fe
bump: :term :input :editor :app :email
...
emacs-circe/circe@a0aada8cbb -> emacs-circe/circe@a8af5fa8e0
emacs-evil/evil-collection@3feaee8e29 -> emacs-evil/evil-collection@faed16f485
emacs-evil/evil@682e87fce9 -> emacs-evil/evil@334a636621
emacs-jp/migemo@fbc16b57ea -> emacs-jp/migemo@c0d84b4092
emacsorphanage/god-mode@b09ad56dc8 -> emacsorphanage/god-mode@e6eef24dbf
https://git.notmuchmail.org/git/notmuch@d8ebc9cf80b6 -> https://git.notmuchmail.org/git/notmuch@aa761727999b
https://git.savannah.gnu.org/git/emms.git@e3824b81b11a -> https://git.savannah.gnu.org/git/emms.git@0f2942ef67c1
https://github.com/emacs-tree-sitter/treesit-fold@6628b7cce585 -> https://github.com/emacs-tree-sitter/treesit-fold@67b3e63eacd9
jao/consult-notmuch@17d2a4ea8c -> jao/consult-notmuch@abc0318c99
juliapath/evil-numbers@f4bbb729ee -> juliapath/evil-numbers@e96d656158
karthink/elfeed-tube@307bcfb30b -> karthink/elfeed-tube@99e55ac428
kidd/org-gcal.el@23561f63b9 -> kidd/org-gcal.el@36cbdb453d
szermatt/emacs-bash-completion@d0637428fd -> szermatt/emacs-bash-completion@762f28fefb
tarsius/ol-notmuch@9a69506a3f -> tarsius/ol-notmuch@06288ed5ec
2025-09-02 16:16:03 +02:00
Henrik Lissner
a9b61258f5
bump: :editor
...
emacs-evil/evil-collection@4748cfb784 -> emacs-evil/evil-collection@3feaee8e29
emacs-tree-sitter/ts-fold@327757e436 -> emacs-tree-sitter/ts-fold@af50e738ea
emacsorphanage/god-mode@fbcf7381c4 -> emacsorphanage/god-mode@b09ad56dc8
radian-software/apheleia@f3308f53d3 -> radian-software/apheleia@f1d36031fc
2025-08-10 15:34:44 +02:00
Henrik Lissner
b6927d0698
bump: :editor
...
emacs-evil/evil-collection@fca81ddb2c -> emacs-evil/evil-collection@4748cfb784
emacs-tree-sitter/ts-fold@6eed69cf2b -> emacs-tree-sitter/ts-fold@327757e436
emacsmirror/visual-fill-column@30fc3e4ea9 -> emacsmirror/visual-fill-column@e391b52922
emacsorphanage/god-mode@9f3f6a1dc9 -> emacsorphanage/god-mode@fbcf7381c4
hlissner/evil-snipe@c2108d3932 -> hlissner/evil-snipe@16317d7e54
joaotavora/yasnippet@2384fe1655 -> joaotavora/yasnippet@c1e6ff23e9
radian-software/apheleia@0c41a5a52c -> radian-software/apheleia@f3308f53d3
2025-06-12 17:10:28 +02:00
Henrik Lissner
7088257f2e
bump: *
...
Alexander-Miller/treemacs@96a808f067 -> Alexander-Miller/treemacs@820b09db10
FStarLang/fstar-mode.el@36ffb46259 -> FStarLang/fstar-mode.el@3bbfe93abd
JuliaEditorSupport/julia-emacs@0f4d74f904 -> JuliaEditorSupport/julia-emacs@5c940c4ba3
ProofGeneral/PG@85cde55a86 -> ProofGeneral/PG@af2e7b9a4e
Silex/docker.el@3bea08f1d2 -> Silex/docker.el@464105ed8b
Wilfred/helpful@6a4d5e0760 -> Wilfred/helpful@03756fa6ad
abo-abo/swiper@e33b028ed4 -> abo-abo/swiper@2529a23f9f
agda/agda@49a12eab7f -> agda/agda@900bdaa335
alexluigit/dirvish@ecb7c42e20 -> alexluigit/dirvish@e8ec5765da
ardumont/markdown-toc@d2fb4cbd95 -> ardumont/markdown-toc@1b0c5ae7f3
bastibe/org-journal@cf72173233 -> bastibe/org-journal@e581bf5530
clojure-emacs/cider@fdfa7c2200 -> clojure-emacs/cider@12f10a6f4b
clojure-emacs/clojure-mode@eabe29b076 -> clojure-emacs/clojure-mode@b766094aea
company-mode/company-mode@8d599ebc8a -> company-mode/company-mode@41f07c7d40
creichert/ido-vertical-mode.el@b1659e967d -> creichert/ido-vertical-mode.el@35c521789b
dgutov/diff-hl@7da881a957 -> dgutov/diff-hl@aa667ac58a
dimitri/switch-window@61e425e703 -> dimitri/switch-window@8f771b571a
doomelpa/code-review@eeffdd9e20 -> doomelpa/code-review@fba8fe3343
editorconfig/editorconfig-emacs@1a9942746c -> editorconfig/editorconfig-emacs@d2beb3ec2e
ema2159/centaur-tabs@7704f2017c -> ema2159/centaur-tabs@a790dc8fb6
emacs-circe/circe@d0e531bd2a -> emacs-circe/circe@e5e64d549f
emacs-citar/citar-org-roam@ff38add0aa -> emacs-citar/citar-org-roam@9750cfbbf3
emacs-ess/ESS@56f355acbd -> emacs-ess/ESS@d19efaae12
emacs-helm/helm-org@22d60952f8 -> emacs-helm/helm-org@4744ca7f8b
emacs-helm/helm@f948dc4464 -> emacs-helm/helm@5a222a8a6b
emacs-lsp/dap-mode@56e92dd86b -> emacs-lsp/dap-mode@b977566657
emacs-lsp/emacs-ccls@28c7930c89 -> emacs-lsp/emacs-ccls@5636ee6c50
emacs-lsp/helm-lsp@cf4ea6fb42 -> emacs-lsp/helm-lsp@54926afd10
emacs-lsp/lsp-dart@2170823139 -> emacs-lsp/lsp-dart@34e2a1191f
emacs-lsp/lsp-haskell@cd0f5d251c -> emacs-lsp/lsp-haskell@081d5115ce
emacs-lsp/lsp-ivy@bdc730a209 -> emacs-lsp/lsp-ivy@3ee14a24bb
emacs-lsp/lsp-java@6cfff8761e -> emacs-lsp/lsp-java@21c89243ad
emacs-lsp/lsp-metals@345b4fa80e -> emacs-lsp/lsp-metals@e1d9d04f3b
emacs-lsp/lsp-mode@7c0df125c1 -> emacs-lsp/lsp-mode@54251da4ff
emacs-lsp/lsp-pyright@b4cee81af4 -> emacs-lsp/lsp-pyright@73377169be
emacs-lsp/lsp-sourcekit@3bd9750e7e -> emacs-lsp/lsp-sourcekit@1fb230109e
emacs-lsp/lsp-treemacs@312dee2b3a -> emacs-lsp/lsp-treemacs@3e5550f278
emacs-lsp/lsp-ui@09d4080642 -> emacs-lsp/lsp-ui@a0dde8b52b
emacs-php/composer.el@6c7e19256f -> emacs-php/composer.el@eba6b953a4
emacs-php/php-mode@5b6cc1c068 -> emacs-php/php-mode@462b62248f
emacs-php/psysh.el@ae15a36301 -> emacs-php/psysh.el@223bf55975
emacs-rustic/rustic@22a5ef8bfd -> emacs-rustic/rustic@29f912c750
emacs-straight/auctex@6fb366064c -> emacs-straight/auctex@f58a2b972b
emacs-straight/dape@c7a1f1abdb -> emacs-straight/dape@588a907c87
emacs-straight/eglot@6a9e0c76b9 -> emacs-straight/eglot@928c216af5
emacs-straight/org-mode@74dde3abae -> emacs-straight/org-mode@79781bac69
emacs-straight/project@369ac661c8 -> emacs-straight/project@27c6b04914
emacs-straight/sml-mode@021233f60a -> emacs-straight/sml-mode@c33659fd9b
emacs-straight/use-package@d79bac4574 -> emacs-straight/use-package@bbfe01bdf1
emacs-straight/vundo@c32481ab48 -> emacs-straight/vundo@5a666b34e4
emacs-tree-sitter/elisp-tree-sitter@8516c9977e -> emacs-tree-sitter/elisp-tree-sitter@12f92ef399
emacs-tree-sitter/tree-sitter-langs@2ff446b4b8 -> emacs-tree-sitter/tree-sitter-langs@4eb4989d1a
emacsmirror/org-contrib@8d14a600a2 -> emacsmirror/org-contrib@f1f6b6ec81
emacsorphanage/dart-mode@6229941ec5 -> emacsorphanage/dart-mode@f82ff05230
emacsorphanage/ox-pandoc@34e6ea97b5 -> emacsorphanage/ox-pandoc@5766c70b6d
emacsorphanage/quickrun@4b6df453f8 -> emacsorphanage/quickrun@a5c9a5e8c6
ericdallo/hover.el@4ca0638a14 -> ericdallo/hover.el@1b380fa395
erlang/otp@740af6bae5 -> erlang/otp@b9d3ec017d
flycheck/flycheck@b9db1379dc -> flycheck/flycheck@16b536b031
fsharp/emacs-fsharp-mode@bf7a11e1ba -> fsharp/emacs-fsharp-mode@8d08f05788
godotengine/emacs-gdscript-mode@3f3739dd88 -> godotengine/emacs-gdscript-mode@5136be407a
greghendershott/racket-mode@88d82e249e -> greghendershott/racket-mode@c4cc7c160b
hakimel/reveal.js@dfc5690c6d -> hakimel/reveal.js@eb95b14531
haskell/haskell-mode@be2639592f -> haskell/haskell-mode@e9c3567393
https://git.notmuchmail.org/git/notmuch@dfc800c26e7b -> https://git.notmuchmail.org/git/notmuch@d8ebc9cf80b6
https://git.savannah.gnu.org/git/emms.git@8713a0ee985c -> https://git.savannah.gnu.org/git/emms.git@abb4f614dae6
idris-hackers/idris-mode@09de86a8f0 -> idris-hackers/idris-mode@ccf32ed0b5
jcollard/elm-mode@699841865e -> jcollard/elm-mode@90b72cd2c9
jdtsmith/indent-bars@fa293f98ab -> jdtsmith/indent-bars@ea74161b46
jdtsmith/ultra-scroll@b72c507f67 -> jdtsmith/ultra-scroll@f2e4fba601
jimhourihan/glsl-mode@c5f2c2e7ed -> jimhourihan/glsl-mode@86e6bb6cf2
joaotavora/sly@c48defcf58 -> joaotavora/sly@ce17a568ef
jrblevin/markdown-mode@d2d960bec1 -> jrblevin/markdown-mode@90ad4af79a
jschaf/powershell.el@38727f1cda -> jschaf/powershell.el@9efa1b4d0a
magit/magit@bf58615a03 -> magit/magit@531e7ca619
minad/cape@f72ebcaeff -> minad/cape@5546a2db8e
minad/consult-flycheck@3bc2141daf -> minad/consult-flycheck@77d3e790a3
minad/consult@f94d557807 -> minad/consult@ee64a2a299
minad/corfu@061d926d0f -> minad/corfu@2e05fe8244
minad/goggles@d71e85ff8d -> minad/goggles@6141d31c51
minad/marginalia@c51fd9e4d4 -> minad/marginalia@2ff4d690f7
minad/org-modern@3cc432dc99 -> minad/org-modern@6158d3d007
minad/vertico@e0bb699ebf -> minad/vertico@304be874be
mohkale/consult-yasnippet@834d39acfe -> mohkale/consult-yasnippet@a3482dfbdc
msnoigrs/ox-rst@b4ba5c7e95 -> msnoigrs/ox-rst@b73eff187e
oantolin/embark@d5df0eff18 -> oantolin/embark@923d0ec52e
ocaml/dune@a46193e167 -> ocaml/dune@422986440e
ocaml/merlin@2eeb63d002 -> ocaml/merlin@e4c66857ad
oer/org-re-reveal@53e9be7d89 -> oer/org-re-reveal@89ed240450
polymode/poly-R@8024e852cf -> polymode/poly-R@fee0b6e999
purcell/package-lint@43012b41ac -> purcell/package-lint@2dc48e5fb9
purescript-emacs/purescript-mode@a3d6ca4ba5 -> purescript-emacs/purescript-mode@8c4736759a
pythonic-emacs/pyenv-mode@7faed57eb7 -> pythonic-emacs/pyenv-mode@ba1a8c7bd7
rust-lang/rust-mode@efd830806c -> rust-lang/rust-mode@25d91cff28
seagle0128/doom-modeline@1708db2d35 -> seagle0128/doom-modeline@a85cb28da8
seagle0128/grip-mode@e90e3b47d8 -> seagle0128/grip-mode@96a927dce6
seagle0128/nerd-icons-ivy-rich@5006f91b49 -> seagle0128/nerd-icons-ivy-rich@83c7b60595
sebasmonia/sharper@496e90e337 -> sebasmonia/sharper@5049795848
swift-emacs/swift-mode@2c0b2b72dc -> swift-emacs/swift-mode@e30b9d46e0
szermatt/emacs-bash-completion@a4c8fbc902 -> szermatt/emacs-bash-completion@d0637428fd
technomancy/fennel-mode@811f39de12 -> technomancy/fennel-mode@df8e83d6e2
wanderlust/wanderlust@6a0605415d -> wanderlust/wanderlust@d6dcbad228
weijiangan/flycheck-golangci-lint@424ba1b3a1 -> weijiangan/flycheck-golangci-lint@14bf143ea7
ziglang/zig-mode@4ad4edf759 -> ziglang/zig-mode@c46d024733
2025-05-02 14:58:40 -04:00
Eyoel Tesfu
310d0e3a5a
fix(evil): clear modeline search highlights on zero matches
...
Prevent anzu-mode's zero-match state from persisting in the modeline
on doom/escape invocations
2025-04-08 18:13:15 -04:00
Henrik Lissner
68ec9e9c86
tweak(evil): evil-escape-key-sequence: disable by default
...
The jk/fd escape sequence catches up folks not expecting it and isn't
unanimously useful to all users, so it shouldn't be active by default.
This also deals with an issue where Evil macros are capturing the escape
key sequence (#8279 ).
Ref: #8279
2025-04-01 01:22:40 -04:00
Henrik Lissner
8b37baada7
revert: refactor(evil): remove +evil--dont-move-cursor-a
...
Turns out that the behavior this advice fixes was not fully addressed,
so I'm restoring it.
Revert: 4def7f359c
2025-04-01 00:47:59 -04:00
Henrik Lissner
26c372cd01
fix(evil): don't auto-set evil-shift-width in org-mode
...
org-mode requires `tab-width` be 8, which is not a sensible default for
`evil-shift-width`, so let it fall back to its default value (which is
4) in org buffers.
2025-03-31 09:31:07 -04:00
Henrik Lissner
9e624b5dfe
fix(evil): +evil-collection-disabled-list implementation
...
Fixes clearing sub-list entries in evil-collection-mode-list (none at
the moment, but it could bite me in the future).
Amend: 5e43944ef3
2025-03-28 03:31:23 -04:00
Henrik Lissner
5e43944ef3
fix(evil): evil-collection: disable some submodules
...
Exposes a user-configurable variable for disabling evil-collection
modules, while also blacklisting modules that are incompatible with our
modules (the case for evil-collection-lispy) or don't offer any/enough
value to the user.
Close : #8327
Amend: 2f7f37d49b
2025-03-27 23:46:48 -04:00
Henrik Lissner
b29449434b
nit(evil): revise & reformat comments
...
For clarity and to conform to newer conventions.
2025-03-25 15:22:15 -04:00
Henrik Lissner
4def7f359c
refactor(evil): remove +evil--dont-move-cursor-a
...
evil-indent, upstream, now preserves the column, which is enough to
render this advice obsolete.
Revert: c77ec345a3
2025-03-25 15:20:59 -04:00
Henrik Lissner
dac6e05b87
refactor: deprecate appendq!, prependq!, & delq! macros
...
In the interest of slimming down Doom's core (as we near v3), I've
deprecated these macros. They doesn't really need to exist. Sure, the
alternatives aren't as ergonomic or elegant, but they're good enough
that we don't need these trivial wrappers. Their local uses have been
refactored out as well.
2025-03-25 14:16:56 -04:00
Henrik Lissner
2f7f37d49b
refactor(evil): evil-collection: simplify init
...
We've used a bunch of hackery to further lazy load evil-collection, but
it seems those aren't needed anymore (at least on 30.1+), so as an
experiment I fall back to relying on evil-collection-init (possibly
switching to `evil-collection-setup` later).
2025-03-25 14:16:56 -04:00
Henrik Lissner
f65fdd598a
bump: :editor evil
...
emacs-evil/evil-collection@58766492f7 -> emacs-evil/evil-collection@cb850ff0d1
emacs-evil/evil@6bed0e58db -> emacs-evil/evil@682e87fce9
Fix : #7600
2025-03-23 21:28:08 -04:00
Henrik Lissner
7032e5797f
bump: :editor
...
edkolev/evil-lion@1e838a53b8 -> edkolev/evil-lion@5a0bca1514
emacs-evil/evil-collection@01d791dd63 -> emacs-evil/evil-collection@58766492f7
emacs-evil/evil@b7ab3840db -> emacs-evil/evil@6bed0e58db
emacs-tree-sitter/ts-fold@01c9ecaaa8 -> emacs-tree-sitter/ts-fold@a8b69682bb
emacsmirror/visual-fill-column@e04d3521b6 -> emacsmirror/visual-fill-column@11575df4e0
juliapath/evil-numbers@c789989451 -> juliapath/evil-numbers@f4bbb729ee
justinbarclay/parinfer-rust-mode@c611628fbe -> justinbarclay/parinfer-rust-mode@044c3fe8f6
magnars/multiple-cursors.el@c870c18462 -> magnars/multiple-cursors.el@dd10cf2334
radian-software/apheleia@429daf5f28 -> radian-software/apheleia@543f6d651d
2025-01-09 23:37:26 -05:00
Henrik Lissner
0a715cc3f2
refactor: (if|when)-let -> (if|when)-let*
...
With the former macros' future in the air (and likely to be targeted in
future, potentially breaking changes), I'll deal with this now than have
it bite me later.
Ref: https://lists.gnu.org/archive/html/emacs-devel/2024-10/msg00637.html
2025-01-08 19:33:37 -05:00
Henrik Lissner
89b087a283
bump: :editor
...
emacs-evil/evil-collection@6365e7c8ae -> emacs-evil/evil-collection@01d791dd63
emacs-evil/evil@5db0bdc7dc -> emacs-evil/evil@b7ab3840db
emacs-tree-sitter/ts-fold@55f80a202a -> emacs-tree-sitter/ts-fold@01c9ecaaa8
emacsorphanage/god-mode@607aff10a7 -> emacsorphanage/god-mode@9f3f6a1dc9
gabesoft/evil-mc@cff3374bfe -> gabesoft/evil-mc@7e363dd6b0
joaotavora/yasnippet@eb5ba2664c -> joaotavora/yasnippet@fe1f4e0e96
justinbarclay/parinfer-rust-mode@0d16bd75ad -> justinbarclay/parinfer-rust-mode@c611628fbe
radian-software/apheleia@61766b50b2 -> radian-software/apheleia@429daf5f28
- zigfmt is now defined upstream and is no longer needed in lang/zig.
Revert: c7794ba06c
2024-10-31 21:54:20 -04:00
Henrik Lissner
15904349cf
refactor!: module API
...
BREAKING CHANGE: This backports some architectural choices from v3.0.
This changes Doom's module API, renaming some functions and removing
others, in order to facilitate some new features, prepare to move Doom's
modules into separate repos, and make way for two, much larger breaking
commits coming in the next few days.
This commit won't break anything for users unless they're tinkering with
Doom's internals/using its `doom-module-*` API directly. I am avoiding
broader backwards incompatibilities until the 3.0 release.
What's new:
- Negated flags. (modulep! :editor evil -everywhere) will return non-nil
if :editor evil is active without its +everywhere flag.
- `modulep!` now takes multiple flags to simplify AND checks. E.g.
(and (modulep! +foo)
(modulep! +bar)
(not (modulep! +baz)))
Can now be expressed with:
(modulep! +foo +bar -baz)
- Adds pcase matchers for `doom-module-context` and `doom-module`
structs, making the following destructuring binds possible:
(pcase-dolist ((doom-module group name flags features)
(hash-table-values doom-modules))
...)
This will be used more in v3.0.
- Adds file cookie support to module init.el and config.el files.
Here's a summary of breaking changes made in this commit:
- `doom-module-context` was changed from a vector to a struct (record).
- `doom-modules` is now a table of `doom-module` structs, rather than
free-form plists.
- The following macros have been renamed:
- `doom-context-with` -> `with-doom-context`
- `doom-module-context-with` -> `with-doom-module`
- The followings functions have been replaced/removed:
- `doom-module-context`+`doom-module-context-get` -> `doom-module`
- `doom-module-set` -> `doom-module--put`
- `doom-module-p` -> `doom-module-active-p`
- `doom-module-context-key` (is now a getter with the same name)
- `doom-module-put` (removed)
- `doom-module--context-field` (removed)
- The signatures for these functions have changed:
- `doom-module-get CATEGORY &optional MODULE PROP` ->
`doom-module-get (GROUP . MODULE) &optional PROP`
- `doom-module-locate-path CATEGORY &optional MODULE FILE` ->
`doom-module-locate-path (GROUP . MODULE) &optional FILE`
- `doom-module-expand-path CATEGORY MODULE &optional FILE` ->
`doom-module-expand-path (GROUP . MODULE) &optional FILE`
- Adds the following functions
- `doom-module-exists-p`
- `doom-module-key`
- `doom-module->context`
- `doom-module<-context`
- Removes the following variables
- `doom-module--empty-context`
This commit results in a little redundancy, which I will address in
parts 2/3 and/or v3.0.
2024-10-20 02:41:42 -04:00
Henrik Lissner
037b018cdd
feat: add .doommodule files
...
These optional dotfiles indicate the root of a module or module
group (:lang), and will later contain module metadata. They will also
serve as an alternative to packages.el and doctor.el, and will aide the
parts of the v3.0 module API concerned with resolving the current module
from a path (`doom-module-from-path`), which currently rely too heavily
on parsing path strings.
For now, however, they're simply placeholders.
2024-09-14 20:47:39 -04:00
Henrik Lissner
771fccc52b
nit: minor reformatting & revision
...
Also corrects the version string of obsolete variable `+mu4e-backend`.
2024-09-11 19:46:14 -04:00
Henrik Lissner
737f91242a
bump: :editor evil
...
emacs-evil/evil-collection@772571fc67 -> emacs-evil/evil-collection@6365e7c8ae
Revert: 9d7885abbf
Ref: emacs-evil/evil-collection#833
2024-09-07 19:04:37 -04:00
Henrik Lissner
8c4d871f7c
fix(evil): respect evil-disable-insert-state-bindings
2024-08-30 03:15:43 -04:00
Henrik Lissner
6671adc687
refactor!: move helpful from :core to :lang emacs-lisp
...
BREAKING CHANGE: This moves helpful.el out of core into :lang
emacs-lisp. Since most (all) people have this module enabled, this
shouldn't make a difference for most people, but if you're one of the
few that don't have :lang emacs-lisp enabled, Doom will revert to using
Emacs' built-in help.el and describe-* commands.
Others can also disable helpful with (package! helpful :disable t) if
they prefer Emacs' built-in help system, which wasn't possible before,
because it was a core package.
This was done as part of an ongoing effort to slim down Doom's core in
preparation for v3.
2024-08-30 02:26:41 -04:00
Henrik Lissner
4f5f9d6065
refactor(evil): remove unused +evil-repeat-keys variable
2024-08-26 17:03:04 -04:00
Henrik Lissner
c1c3b521d6
bump: :editor evil
...
emacs-evil/evil-collection@e49d8e96cc -> emacs-evil/evil-collection@772571fc67
emacs-evil/evil@30ebe6df27 -> emacs-evil/evil@5db0bdc7dc
2024-08-20 18:07:42 -04:00
Henrik Lissner
511c8af365
bump: :editor
...
doomemacs/snippets@3a0b029c5d -> doomemacs/snippets@b672e69bbf
emacs-evil/evil-collection@acb056b1d0 -> emacs-evil/evil-collection@e49d8e96cc
emacs-evil/evil@0ad84c5216 -> emacs-evil/evil@30ebe6df27
emacs-straight/adaptive-wrap@a3b179ea21 -> emacs-straight/adaptive-wrap@d75665b9c8
emacs-tree-sitter/ts-fold@5b8abb69cd -> emacs-tree-sitter/ts-fold@55f80a202a
gabesoft/evil-mc@bdf893ea6f -> gabesoft/evil-mc@cff3374bfe
justinbarclay/parinfer-rust-mode@a96c768e9d -> justinbarclay/parinfer-rust-mode@0d16bd75ad
2024-08-09 17:41:49 -04:00
Henrik Lissner
c93b70237c
fix(evil): defer evil-collection-kmacro
...
Emacs 30+ loads kmacro.el eagerly at startup, pulling in all of
evil-collection, so I defer it until it's needed.
2024-08-09 17:41:49 -04:00
Henrik Lissner
877008a00e
fix(evil): set evil-want-keybinding sooner
...
Early loading of evil-collection may trigger an annoying (and
unsuppressable) warning, otherwise.
2024-08-09 17:41:48 -04:00