Andrew Peck
15d5525915
tweak(tree-sitter): use maintained systemverilog grammar
...
tree-sitter-verilog has unfortunately not been maintained for years.
Gonzalo maintains tree-sitter-systemverilog which boasts
- Full implementation of the latest SystemVerilog standard (IEEE 1800-2023)
- Robust and reliable: sv-tests results
- Actively maintained
- Implements node fields
- Supports parsing of code snippets (e.g., always block outside of a module)
- Basic preprocessing capabilities
- Thoroughly tested (~3000 tests) including:
verilog is strictly a subset of systemverilog so the systemverilog
grammar is backwards compatible with verilog features.
tree-sitter-verilog has significant issues and fails parsing many basic
verilog files.
I use tree-sitter-systemverilog daily and have had no issues since switching.
2026-03-06 02:46:23 -05:00
Henrik Lissner
85f6952dd1
fix(eval): +eval/send-region-to-repl: premature truncation
...
Fix : #8703
2026-03-06 02:39:13 -05:00
Henrik Lissner
d23abed66d
perf(magit): use /usr/bin/git on macos
...
Inexplicably, the built-in git on MacOS is many orders of magnitude
faster than the external builds provided by Homebrew/Macports, so use
that there. Emacs on MacOS needs all the (performance) help it can get
and, fortunately, the bundled git is 2.23 or newer on (at least) MacOS
10.15 (Catalina) and newer, so this should be a relatively safe bet
without the need for version checks.
2026-03-04 21:36:10 -05:00
Henrik Lissner
c95dcfee43
perf(magit): minor optimizations
...
- Resolves `magit-git-executable` ahead of time. We used to do this, but
back then, magit used `magit-git-executable` in TRAMP sessions too.
Now, magit has a separate `magit-remote-git-executable` variable.
- Only invalidate projectile cache if the magit status buffer's contents
has changed. This will prevent excessive (and potentially expensive)
`projectile-invalidate-cache` calls for trivial changes, l
- Avoid changing the active buffer when fetching a specific variable
from a buffer is enough (more cpu/mem efficient).
- Don't adjust the fringe if the fringes are already the requested size.
2026-03-03 23:40:35 -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
04701547b1
bump: :completion :ui :tools
...
company-mode/company-mode@fad9f207e0 -> company-mode/company-mode@42d3897308
dgutov/diff-hl@3eefe68941 -> dgutov/diff-hl@bb9af85441
dimitri/switch-window@8f771b571a -> dimitri/switch-window@a72cf11d21
jacktasia/dumb-jump@215e2ed9ab -> jacktasia/dumb-jump@8c97b2afc2
karthink/gptel@d221329ee3 -> karthink/gptel@63795dee75
magit/ghub@278d9fb5f3 (5.0.3) -> magit/ghub@c22858596c (5.0.4)
magit/orgit@24c8fe48c4 (v2.1.1) -> magit/orgit@4fb91faff3 (v2.1.2)
minad/marginalia@0d08fbea0f -> minad/marginalia@142e4da1bd
oantolin/embark@7b3b2fa239 -> oantolin/embark@e0238889b1
seagle0128/doom-modeline@0c91e47a0c -> seagle0128/doom-modeline@8806358185
2026-03-02 19:45:08 -05:00
Henrik Lissner
a3b1be0121
refactor(org,magit): move orgit{,-forge} to :tools magit
2026-03-02 19:45:08 -05:00
Henrik Lissner
b01e8c9572
refactor(org,pdf): move org-pdftools to :tools pdf
2026-03-02 19:45:08 -05:00
Henrik Lissner
c21b80d7ff
fix(debugger): remove dap-mode packages
...
dap-mode and posframe were removed from this module in e0729fa , but not
their `package!` statements. Oops.
Amend: e0729fa7d7
2026-03-02 01:39:48 -05:00
Henrik Lissner
994b7be3df
refactor(direnv): remove +direnv--load-info-a
...
This hack is no longer needed because the issue was resolved upstream.
Amend: 9de72537be
Ref: purcell/envrc#117
2026-03-02 01:18:14 -05:00
Henrik Lissner
605437b8b8
fix(direnv): restart lsp/eglot clients on reload/allow/deny
...
Makes `envrc-reload`, `envrc-reload-all`, `envrc-allow`, or `envrc-deny`
restart any running lsp/eglot clients within the current direnv, so that
they reflect the new environment.
2026-03-02 01:18:11 -05:00
Henrik Lissner
da36f15296
fix(llm): don't clone gptel recursively
...
Otherwise, gptel will have a dirty worktree every time you update it.
2026-03-01 18:15:38 -05:00
Henrik Lissner
85ccc61ddc
tweak(llm): gptel-default-mode = org-mode
...
This is Emacs. Use org-mode instead of markdown-mode/text-mode, by
default.
2026-02-25 23:19:39 -05:00
Henrik Lissner
8584bc254e
feat(llm): add open-in-same-window command/keybind
2026-02-25 23:19:20 -05:00
Henrik Lissner
9de72537be
bump: :tools
...
NicolasPetton/pass@de4adfaeba -> NicolasPetton/pass@143456809f
emacs-lsp/lsp-mode@0e53347d76 -> emacs-lsp/lsp-mode@3e55ca8071
emacs-straight/eglot@76dae6a075 -> emacs-straight/eglot@e9371d4ac9
flycheck/flycheck-eglot@6cf99e53b4 -> flycheck/flycheck-eglot@cd1dd78cec
jacktasia/dumb-jump@0bb557a2bd -> jacktasia/dumb-jump@215e2ed9ab
karthink/gptel@11ddace991 -> karthink/gptel@d221329ee3
purcell/envrc@d3289e92e0 -> purcell/envrc@f44353c42c
tarsius/cond-let@0430bd1eb3 (0.2.1) -> tarsius/cond-let@8bf87d45e1 (0.2.2)
tumashu/posframe@4fc893c3c9 -> tumashu/posframe@41cc4def61
2026-02-25 22:48:04 -05:00
Henrik Lissner
8637bdc888
fix(lookup): restore etags--xref-back default xref backend
...
Some users may not be aware of (or not want to use)
`projectile-find-tag` or `evil-jump-to-tag`.
2026-02-24 02:42:43 -05:00
Henrik Lissner
1977181891
feat(llm): add ob-gptel
2026-02-21 15:19:10 -05:00
Henrik Lissner
8ee87d89bd
bump: jsonrpc
...
emacs-straight/jsonrpc@HEAD -> emacs-straight/jsonrpc@2bf7f24e39
Lock jsonrpc to a commit that's compatible with Eglot.
Ref: doomemacs/community#76
2026-02-18 03:46:58 -05:00
kovan
8d0f61ae6f
fix(magit): load transient before git-commit in incremental loader
...
Fix : #8541
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 01:01:50 -05:00
Henrik Lissner
76277e246f
feat(terraform): associate *.tofu with terraform-mode
...
Ref: https://github.com/orgs/doomemacs/discussions/17#discussioncomment-15808805
2026-02-15 00:53:21 -05:00
Henrik Lissner
8c5c6b570d
bump: :tools lsp
...
emacs-lsp/lsp-mode@c258b9dfaf -> emacs-lsp/lsp-mode@0e53347d76
flycheck/flycheck-eglot@39dd981cc5 -> flycheck/flycheck-eglot@6cf99e53b4
Fix : #8546
Close : #8662
Co-authored-by: kovan <kovan@users.noreply.github.com>
2026-02-14 20:04:31 -05:00
Henrik Lissner
2113b02e49
tweak(lsp): :size 0.3 for eglot/lsp popups
...
Mainly for consistency. Might be a little big for folks with larger
displays.
2026-02-13 23:57:34 -05:00
Henrik Lissner
8eb5ab3d11
bump: :tools
...
NicolasPetton/pass@7651389c52 -> NicolasPetton/pass@de4adfaeba
andras-simonyi/citeproc-el@a3d62ab8e4 -> andras-simonyi/citeproc-el@4bde999a41
editorconfig/editorconfig-emacs@646c31b4b7 -> editorconfig/editorconfig-emacs@b18fcf7fde
emacs-lsp/dap-mode@ded79ff063 -> emacs-lsp/dap-mode@b77d9bdb15
emacs-lsp/lsp-mode@7642778d59 -> emacs-lsp/lsp-mode@c258b9dfaf
emacs-straight/dape@5f2792ea8c -> emacs-straight/dape@76af39b5c2
emacs-straight/eglot@78bd85f1b5 -> emacs-straight/eglot@76dae6a075
jacktasia/dumb-jump@b1ec972ed3 -> jacktasia/dumb-jump@0bb557a2bd
karthink/gptel@f36ee0a750 -> karthink/gptel@11ddace991
purcell/envrc@06d72d141a -> purcell/envrc@d3289e92e0
tumashu/posframe@d93828bf6c -> tumashu/posframe@4fc893c3c9
vedang/pdf-tools@e4b7f1f37c -> vedang/pdf-tools@365f88238f
Fix : #7873
Revert: 7bb5df4cd4
2026-02-09 23:54:40 -05:00
Damian Barabonkov
8c1b45c08b
bump: :tools docker
...
Silex/docker.el@375e0ed45b -> Silex/docker.el@916686b86e
2026-02-09 22:50:47 -05:00
Henrik Lissner
6f40ad55f5
docs: discourage after! and use-package! use
...
There's little reason for users to use these macros in their private
configs over plain ol' `with-eval-after-load` and `use-package`, unless
they're writing their own modules.
It's my fault for signal boosting them in documentation and whenever I'm
asked for help, because beginners now believe they are somehow
required for Doom to work correctly (there are guides out there
telling beginners that migrating to Doom involves replacing all
instances of `with-eval-after-load` and `use-package` in their
pre-existing configs with `after!` and `use-package!` -- which was never
true).
What's more, I plan to replace `use-package`, internally, so the
`use-package!` macro won't exist for much longer.
2026-02-09 04:29:47 -05:00
Henrik Lissner
1a943aea69
refactor: cut down on pseudo-features
...
Way back, I added these three pseudo-features:
(featurep 'dynamic-modules)
(featurep 'harfbuzz)
(featurep 'jansson)
Why? Because some build features have pseudo features (like
`tty-child-frames`, `pgtk`, and `threads`), but others don't, and I
wanted more consistency around build feature detection. Years later, I
realized it wasn't used much internally and only ended up confusing
readers who didn't realize these were Doom's additions and not built
into Emacs. Emacs' idiosyncrasies may not be nice or elegant, but
they're less surprising to elisp beginners and veterans alike.
2026-01-23 20:26:28 -05:00
Henrik Lissner
c9a50417de
nit(lsp): revise eglot-events-buffer-config comment
2026-01-20 17:59:17 -05:00
Henrik Lissner
ff2e43bda3
bump: :tools lsp
...
emacs-lsp/lsp-mode@2315fdec79 -> emacs-lsp/lsp-mode@7642778d59
emacs-straight/eglot@f110d26e03 -> emacs-straight/eglot@78bd85f1b5
flycheck/flycheck-eglot@f617b68699 -> flycheck/flycheck-eglot@39dd981cc5
2026-01-20 17:03:59 -05:00
Henrik Lissner
0a175377b5
bump: :tools
...
editorconfig/editorconfig-emacs@5be6d1b972 -> editorconfig/editorconfig-emacs@646c31b4b7
emacs-lsp/dap-mode@f63a301f58 -> emacs-lsp/dap-mode@ded79ff063
emacs-lsp/lsp-mode@596e6dadef -> emacs-lsp/lsp-mode@2315fdec79
emacs-lsp/lsp-ui@e5e38f3058 -> emacs-lsp/lsp-ui@ff349658ed
emacs-straight/eglot@fa8907c1e5 -> emacs-straight/eglot@f110d26e03
emacsorphanage/quickrun@c657cd69de -> emacsorphanage/quickrun@9199e222f9
flycheck/flycheck-eglot@0d7f0afc9b -> flycheck/flycheck-eglot@f617b68699
jacktasia/dumb-jump@0632bdb418 -> jacktasia/dumb-jump@b1ec972ed3
joostkremers/parsebib@4a9df6f1b4 -> joostkremers/parsebib@5b837e0a5b
karthink/gptel@73144b7345 -> karthink/gptel@f36ee0a750
magit/closql@4a60723ae4 (v2.3.2) -> magit/closql@947426d0c9 (v2.4.0)
magit/forge@71910a26e3 (v0.6.2) -> magit/forge@315e8e9a2b (v0.6.3)
magit/ghub@447cb51fa7 (v5.0.2) -> magit/ghub@278d9fb5f3 (v5.0.3)
magit/magit@b828afbb4b (v4.4.2) -> magit/magit@c800f79c20 (v4.5.0)
magit/transient@0d3f8d4fb6 (v0.11.0) -> magit/transient@1f7039ef8d (v0.12.0)
millejoh/emacs-ipython-notebook@2711366546 -> millejoh/emacs-ipython-notebook@8fa836fcd1
spotify/dockerfile-mode@8135740bfc -> spotify/dockerfile-mode@97733ce074
tarsius/cond-let@288b7d3656 (v0.2.0) -> tarsius/cond-let@0430bd1eb3 (v0.2.1)
vedang/pdf-tools@30b50544e5 -> vedang/pdf-tools@e4b7f1f37c
xiongtx/eros@a9a92bdc6b -> xiongtx/eros@66ee90baa3
2026-01-06 02:00:17 -05:00
Henrik Lissner
be7ac25a84
fix: file-name-concat paths instead of concat
...
Treat paths as paths, rather than strings. Removes the requirements that
doom-*-dir variables end in slash (though I'll continue doing so as a
convention). Also moves a lot of cache/data into the current profile's
cache/data directories. Shouldn't actually affect anything for folks not
using Doom's profile system (yet).
Fix : #8616
2025-12-30 22:59:10 -05:00
Henrik Lissner
7234b5eb0a
docs(lsp): mention emacs-lsp/lsp-mode#4445
...
The original ZLS issue was resolved, but it hasn't been resolved on
lsp-mode's end, so reference it for future me.
2025-12-24 18:17:47 -05:00
Henrik Lissner
e9a6d2954f
docs(vterm,pdf): simplify guix install instructions
...
The extra config wasn't necessary.
Ref: #8608
Co-authored-by: hpfr <hpfr@users.noreply.github.com>
2025-12-23 02:51:37 -05:00
Henrik Lissner
4b90927164
docs(pdf): add guix install instructions
2025-12-18 17:27:01 -05:00
Henrik Lissner
0dfb874b57
bump: cond-let
...
tarsius/cond-let@HEAD -> tarsius/cond-let@288b7d3656 (v0.2.0)
Fix : #8606
2025-12-17 03:39:03 -05:00
Henrik Lissner
a81d92451f
module: deprecate :tools ein
...
The upstream isn't consistently maintained and is a source of many bug
reports. A code-cells.el-based module will replace it soon.
Ref: #7257
2025-12-17 02:17:33 -05:00
Henrik Lissner
81261c26eb
docs(pdf): update to use new pdf-tools repo link
...
Close : #8602
Co-authored-by: webframp <webframp@users.noreply.github.com>
2025-12-17 02:17:32 -05:00
Kevin Ji
64fe0771d8
bump: :tools lsp
...
emacs-lsp/lsp-mode@4c5360b451 -> emacs-lsp/lsp-mode@596e6dadef
2025-12-14 15:04:55 -05:00
Henrik Lissner
b6eef6941b
bump: closql
...
magit/closql@HEAD -> magit/closql@4a60723ae4 (v2.3.2)
Enforce version constraints between closql and forge.
Fix : #8580
2025-12-13 18:10:16 -05:00
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