Commit graph

1670 commits

Author SHA1 Message Date
Henrik Lissner
deaf794ccf
fix(tree-sitter): pre-30 compatibility
0d2f10d introduced a regression that broke the arity check in
`set-tree-sitter!` for pre-30 compatibility, because `func-arity`
returned the arity of the advice, not the advised function, so the
`commit` argument was always stored in `treesit-language-source-alist`,
even before it was supported, resulting in wrong-number-of-args errors
for users on Emacs <=29.

Amend: 0d2f10dcab
2025-12-04 04:42:04 -05:00
Henrik Lissner
0d2f10dcab
fix(tree-sitter): arity error installing grammars on <=29 2025-12-03 03:58:30 -05:00
Henrik Lissner
f727456a27
fix(lsp): set-eglot-client!: single client declarations
Also mentions that MODE can be a list of major modes.

Fix: #8528
2025-12-02 19:48:33 -05:00
Henrik Lissner
98ad309d18
bump: :tools
editorconfig/editorconfig-emacs@4af10445fc -> editorconfig/editorconfig-emacs@5be6d1b972
emacs-citar/citar@427432d490 -> emacs-citar/citar@dc7018eb36
emacs-lsp/dap-mode@6c74027e39 -> emacs-lsp/dap-mode@f63a301f58
emacs-lsp/helm-lsp@95f21f3f67 -> emacs-lsp/helm-lsp@027897a957
emacs-lsp/lsp-ivy@2927cbc776 -> emacs-lsp/lsp-ivy@8e0b8fdec0
emacs-lsp/lsp-mode@c3b5fea5d6 -> emacs-lsp/lsp-mode@4c5360b451
emacs-lsp/lsp-ui@8547cd6abf -> emacs-lsp/lsp-ui@e5e38f3058
emacs-straight/dape@b5a4daaf14 -> emacs-straight/dape@5f2792ea8c
emacs-straight/eglot@a35ebe774d -> emacs-straight/eglot@fa8907c1e5
emacsorphanage/quickrun@7132464986 -> emacsorphanage/quickrun@c657cd69de
hcl-emacs/terraform-mode@80383ff42b -> hcl-emacs/terraform-mode@01635df362
karthink/gptel-quick@495b5e0b53 -> karthink/gptel-quick@018ff2be8f
karthink/gptel@7c8d9c8496 -> karthink/gptel@73144b7345
magit/transient@053d56e4de (v0.10.1) -> magit/transient@0d3f8d4fb6 (v0.11.0)
purcell/envrc@de1ae6e538 -> purcell/envrc@06d72d141a
tumashu/posframe@12f540c9ad -> tumashu/posframe@d93828bf6c
2025-12-01 01:14:54 -05:00
Henrik Lissner
281e3069a7
fix(tree-sitter): always install grammars to profile data dir
Fix: #8578
Co-authored-by: falloutphil <falloutphil@users.noreply.github.com>
2025-12-01 01:14:54 -05:00
Henrik Lissner
073937d355
bump: :tools
Silex/docker.el@91233a7c55 -> Silex/docker.el@375e0ed45b
andras-simonyi/citeproc-el@9f16f2eee4 -> andras-simonyi/citeproc-el@a3d62ab8e4
emacs-citar/citar@75a85d8d86 -> emacs-citar/citar@427432d490
emacs-lsp/dap-mode@c81014ccc3 -> emacs-lsp/dap-mode@6c74027e39
emacs-lsp/lsp-mode@c74a723870 -> emacs-lsp/lsp-mode@c3b5fea5d6
emacs-lsp/lsp-ui@030d369603 -> emacs-lsp/lsp-ui@8547cd6abf
emacs-straight/dape@a2d7dc9a8d -> emacs-straight/dape@b5a4daaf14
emacs-straight/eglot@d2f34e5ce4 -> emacs-straight/eglot@a35ebe774d
gagbo/consult-lsp@aef321d039 -> gagbo/consult-lsp@d11102c9db
jacktasia/dumb-jump@21545d3b86 -> jacktasia/dumb-jump@0632bdb418
jdtsmith/eglot-booster@cab7803c4f -> jdtsmith/eglot-booster@cab7803c4f
joostkremers/parsebib@7bfde4e467 -> joostkremers/parsebib@4a9df6f1b4
karthink/gptel@f66e44368f -> karthink/gptel@7c8d9c8496
magit/forge@bbecd8947a -> magit/forge@71910a26e3
magit/ghub@d76cdac69f -> magit/ghub@447cb51fa7
magit/magit@dc0094bd88 -> magit/magit@b828afbb4b
magit/transient@1d109f34b7 -> magit/transient@053d56e4de
purcell/envrc@4fc7b657ea -> purcell/envrc@de1ae6e538
2025-11-04 22:15:05 -05:00
Henrik Lissner
1d1d17e9c9
fix(upload): +upload/register-remote: don't overwrite old values
...on consecutive uses.

Amend: b7d9c1801d
2025-09-26 00:21:56 -04:00
Henrik Lissner
1a116f51a9
fix(upload): ensure ssh-deploy is loaded
The ssh-deploy-root-remote check isn't enough (they may be set file/dir
locally before the package is loaded).
2025-09-25 16:00:18 -04:00
Henrik Lissner
b7d9c1801d
feat(upload): add commands for manual/temporary mappings
Close: #8529
Co-authored-by: stfl <stfl@users.noreply.github.com>
2025-09-25 15:55:29 -04:00
Henrik Lissner
db33b94cf1
feat(upload): activate ssh-deploy-line-mode
When the variables are set.
2025-09-25 15:54:58 -04:00
Henrik Lissner
7c425b8072
docs(upload): revise & clarify
Flesh out usage section and flesh out comments in config.el.
2025-09-25 15:53:45 -04:00
Henrik Lissner
d6e1f25e77
tweak(lsp): eglot-code-action-indications: remove margin
Ref: doomemacs/community#37
2025-09-24 21:11:12 -04:00
Henrik Lissner
1b6b8c5fde
fix(editorconfig): only set tab-width in old org-mode
Upstream now more aggressively ensures tab-width is 8, so this hook only
exists for users on older versions.

Ref: emacs-straight/org-mode@0dc647ff54
2025-09-24 14:26:14 -04:00
Henrik Lissner
395a058d7d
feat(terraform): eglot: use tofu-ls if present
This should be upstreamed.

Ref: doomemacs/community#17
2025-09-24 14:04:53 -04:00
Henrik Lissner
fbdde6b5f4
module!: add :editor whitespace
BREAKING CHANGE: Moves ws-butler, dtrt-indent, and whitespace defaults
out of Doom's core and into a new module. ws-butler is gated behind
+trim and dtrt-indent behind +guess. Users who depend on/like these
packages will need to enable the new module and their respective
flags (which is the default going forward).

This change is motivated by an ongoing effort to slim down Doom's
core (by (re)moving non-essentials from it).

This also addresses an issue where dtrt-indent would vastly increase
load times for some major-modes (e.g. elixir-mode & elm-mode, see #7537)
by restricting it to non-project files and non-read-only buffers AND
excludign those two major modes from indent guessing.

Fix: #8516
Fix: #7537
2025-09-24 02:23:30 -04:00
Henrik Lissner
e297796387
fix(lsp): rebuild lsp-mode if lsp-use-plists is changed
...since the last time 'doom sync' was executed.
2025-09-22 23:30:03 -04:00
Henrik Lissner
eacd1a030e
fix(biblio): helm + org-cite-insert interop
Fix: #8462
2025-09-20 13:56:40 -04:00
Henrik Lissner
d92883bff8
refactor!(org): remove org-roam v1
BREAKING CHANGE: This finally removes org-roam v1, which has been
deprecated for nearly 5 years (since 5ef733b). Most users should already
be on it. v2 has a migration wizard for anyone still on v1, which will
kick in if it detects a v1 roam db.
2025-09-20 02:51:30 -04:00
Henrik Lissner
f3b4314dda
docs(editorconfig): revise usage section 2025-09-18 00:24:21 -04:00
Henrik Lissner
64b085b381
fix(editorconfig): default to native binary, if available
The default editorconfig implementation was changed upstream to the
elisp one, but — for the principle of least surprise — I believe it
should be the other way around: if the user has the native binary
installed, they're likely expecting it to be used; it will fall back to
the elisp implementation otherwise.

Also updates documentation to reflect these changes and removes the
doctor warning about a missing binary.

Ref: editorconfig/editorconfig-emacs#209
2025-09-18 00:24:04 -04:00
Henrik Lissner
09a80927f3
docs(editorconfig): remove obsolete hack
The hack was removed in 41e81f6.

Amend: 41e81f67a7
2025-09-18 00:17:31 -04:00
Henrik Lissner
4c9dee2c78
fix(tree-sitter): treesit-extra-load-path: use file-name-concat
In case doom-profile-data-dir doesn't end with a slash (which is a
stipulation I won't be enforcing for Doom's dir variables in v3 and
beyond).

Fix: #8511
2025-09-17 17:49:22 -04:00
Henrik Lissner
4a6f9f741d
feat(tree-sitter): add +tree-sitter/doctor command
For a quick diagnosis of the state of tree-sitter support in the current
buffer.
2025-09-17 01:23:45 -04:00
Henrik Lissner
5614faca7a
docs(tree-sitter): revise installation docs
To clarify how to enable tree-sitter, fully.
2025-09-17 01:23:45 -04:00
Henrik Lissner
e0729fa7d7
refactor!(debugger): remove dap-mode
BREAKING CHANGE: This removes dap-mode from the debugger module. Use
dape instead.

dap-mode was deprecated in b4bd368 when realgud was replaced with dape,
which has been excellent, so I want to focus this module's support on it
going forward.

Ref: b4bd368485
2025-09-17 01:23:28 -04:00
Henrik Lissner
6a270b64d5
fix(direnv): void-variable Info-directory-list error
Ref: purcell/envrc#117
Amend: b72fe2bd37
2025-09-16 11:03:42 -04:00
Henrik Lissner
e87a92be75
tweak(magit): only preserve point if region-active-p
Only preserve cursor/window position on stage/unstaging/discarding/etc
hunks when region is active. Otherwise, it's fine not to.
2025-09-15 21:43:54 -04:00
Henrik Lissner
35d2934727
refactor(tree-sitter): dynamic-modules doctor check 2025-09-15 18:53:31 -04:00
Henrik Lissner
71ec9a9733
fix: backport treesit-available-p sooner
This fixes Doom for Emacs 27-28 users (or builds without treesit).
2025-09-15 18:53:31 -04:00
Henrik Lissner
03e286feb4
docs(lsp): add demos.org
Picked up by the :lang emacs-lisp module's elisp-demos package when
displaying help.el/helpful documentation.
2025-09-14 23:17:31 -04:00
Henrik Lissner
2775cc75f9
fix(lsp): lsp-use-plists: ensure profile generator
Profile generators with the *.auto.el suffix are auto-deleted on every
'doom sync'. Also ensures it's deleted if lsp-mode is rebuilt with
lsp-use-plists disabled.

Amend: 5a9a2f4e18
2025-09-14 17:02:44 -04:00
Henrik Lissner
8df5d66ef7
bump: :tools
andras-simonyi/citeproc-el@f5217b9fdb -> andras-simonyi/citeproc-el@9f16f2eee4
editorconfig/editorconfig-emacs@f85ec9724b -> editorconfig/editorconfig-emacs@4af10445fc
emacs-straight/dape@81ee231de1 -> emacs-straight/dape@a2d7dc9a8d
karthink/gptel@40f6950e80 -> karthink/gptel@f66e44368f
purcell/envrc@48a2ee6a4d -> purcell/envrc@4fc7b657ea
2025-09-14 16:25:12 -04:00
Henrik Lissner
5a9a2f4e18
perf(lsp): lsp-use-plists = t
This will supposedly make lsp-mode more memory efficient. It will only
take effect the next time lsp-mode is rebuilt/reinstalled.

It can be undone with this added to $DOOMDIR/packages.el:

  (setq lsp-use-plists nil)
2025-09-14 16:16:40 -04:00
Henrik Lissner
da5d22ad35
feat(lsp): set-eglot-client!: support fallback alternatives 2025-09-14 11:51:07 -04:00
Henrik Lissner
69ecefa4d6
bump: :tools magit
magit/forge@a31859547a -> magit/forge@bbecd8947a
magit/ghub@97a07691ef -> magit/ghub@d76cdac69f
magit/magit@5b820a1d1e -> magit/magit@dc0094bd88
magit/transient@aa32e0d66c -> magit/transient@1d109f34b7

Fix: #8440
2025-09-14 11:20:55 -04:00
Henrik Lissner
d6cdbb4d22
docs(tree-sitter): document treesit-font-lock-level
Close: #8487
2025-09-11 23:37:14 -04:00
Henrik Lissner
30c95e6519
fix(lsp): +eglot: stay out of company
Fix: #8504
2025-09-11 13:38:51 -04:00
Henrik Lissner
1adec8b10c
fix(tree-sitter): add derived-mode parents to ts-modes
ts-modes do this already in 30/31+ (`derived-mode-add-parents` was added
in 30), but is still needed for 29.x users and any ts-modes that haven't
adapted (many of them).

Fix: doomemacs/community#29
2025-09-07 10:58:45 -04:00
Henrik Lissner
ddc447d9d5
tweak(tree-sitter): treesit-font-lock-level = 4
Fix: #8494
Close: #8487
2025-09-05 15:10:57 -04:00
Henrik Lissner
5ca9b7a37a
fix(tree-sitter): autodef treesit-available-p
This way, whether the module is enabled or not, `treesit-available-p`
will exist, even in Emacs build without treesit.

Amend: a51690f033
2025-09-03 16:29:16 +02:00
Henrik Lissner
78068a8f31
fix(tree-sitter): more verbosity in debug mode
And slightly better logged message if the grammar is missing.
2025-09-03 16:28:45 +02:00
Henrik Lissner
87d572ac58
fix(debugger): 'wrong-type-argument json-value-p dape-cwd'
In cases where projectile-project-root returns `nil`, the `dap-cwd` in
dape configs isn't resolved.
2025-09-03 16:27:41 +02:00
Henrik Lissner
d1289bf8cf
fix(tree-sitter): remove *-ts-mode-maybe from {auto,interpreter}-mode-alist
Again, removing more over-eager entries.

Also fixes `set-tree-sitter!` not accepting multiple MODEs before.
2025-09-03 14:44:51 +02:00
Henrik Lissner
8dab364e46
fix(tree-sitter): suppress changes to {auto,interpreter}-mode-alist
...when auto-loading a ts-mode package.
2025-09-03 14:42:28 +02:00
Henrik Lissner
4c40755d2d
bump: :tools
andras-simonyi/citeproc-el@f36650536b -> andras-simonyi/citeproc-el@f5217b9fdb
emacs-citar/citar@5ef097beba -> emacs-citar/citar@75a85d8d86
emacs-lsp/dap-mode@b977566657 -> emacs-lsp/dap-mode@c81014ccc3
emacs-lsp/helm-lsp@54926afd10 -> emacs-lsp/helm-lsp@95f21f3f67
emacs-lsp/lsp-ivy@3ee14a24bb -> emacs-lsp/lsp-ivy@2927cbc776
emacs-lsp/lsp-mode@65a414ddeb -> emacs-lsp/lsp-mode@c74a723870
emacs-lsp/lsp-ui@bbb1aa0192 -> emacs-lsp/lsp-ui@030d369603
emacs-straight/dape@411e4b6126 -> emacs-straight/dape@81ee231de1
emacs-straight/eglot@a8cb16b833 -> emacs-straight/eglot@d2f34e5ce4
emacsorphanage/quickrun@bae8efb8c5 -> emacsorphanage/quickrun@7132464986
jacktasia/dumb-jump@42f97dea50 -> jacktasia/dumb-jump@21545d3b86
karthink/gptel@af821efe63 -> karthink/gptel@40f6950e80
mohkale/consult-eglot@2816f8aad7 -> mohkale/consult-eglot@d8b444aac3
purcell/envrc@510807ae96 -> purcell/envrc@48a2ee6a4d
2025-09-02 16:16:03 +02:00
Henrik Lissner
bbed615f17
feat(tree-sitter): batch grammar installs
Instead of being prompted 2-4 times to install each missing grammar,
batches them together into one prompt.
2025-09-02 16:16:02 +02:00
Henrik Lissner
75c3df7e87
bump: gptel-magit
ragnard/gptel-magit@f27c01821b -> ArthurHeymans/gptel-magit@4a40c3fc20

Move to ArthurHeymans/gptel-magit fork until ragnard/gptel-magit#7 is
merged.

Fix: #8484
Ref: ragnard/gptel-magit#7
2025-09-02 11:41:58 +02:00
Henrik Lissner
79a9418cba
fix(tree-sitter): backport treesit-*-abi-version
So we don't have to litter these checks with feature/fboundp
checks (there will potentially be many of them).
2025-09-02 03:28:40 +02:00
Henrik Lissner
a9338d2a4a
docs(lsp): doctor: warn about +booster w/o +eglot 2025-09-02 00:31:09 +02:00
Henrik Lissner
a51690f033
fix(:lang): add treesit-available-p checks to *-ts-mode packages
Otherwise package installation will throw Emacs version errors for users
on 28 and under.
2025-09-01 20:11:02 +02:00