Commit Graph

19899 Commits

Author SHA1 Message Date
1681bfbaf0 refactor: move doom-highlight-non-default-indentation-h out of core
This functionality falls under the umbrella of "better defaults" rather
than essential defaults, and so belongs in :config default.

Whats more, the naming convention (+emacs-...) was intentional, because
this function (and the :config default module) will be moved to :doom
emacs in the near future.

This also indirectly fixes #8373.

Fix: #8373
2025-04-23 20:22:25 -04:00
da32e8e6f2 fix(lsp): gate gcmh API call behind gcmh-mode check
In case the mode is activated before gcmh is loaded (as is the case with
session persistance libraries like desktop.el or
persp{ective,-mode}.el).

Close: #8372
2025-04-23 05:39:13 -04:00
9cbb8656cb feat(lookup): +lookup-provider-url-alist: add StackExchange 2025-04-23 04:02:51 -04:00
62f1df4218 fix: respect auto-revert-remote-files
Don't auto-revert remote buffers if auto-revert-remote-files is nil (the
default).
2025-04-23 04:02:51 -04:00
bff2ccd974 refactor: remove vestigial hydra configs
Hydra support was removed in b08c2c7.

Amend: bc948c38c2
Amend: b08c2c745f
2025-04-23 04:02:51 -04:00
b4bd368485 refactor!(debugger): replace realgud with dape
BREAKING CHANGE: Anyone used to realgud will find it missing as of this
commit. It's been replaced with Dape (see
https://github.com/svaante/dape).

This change was made because realgud's implementation was archaic and
over-complicated, dap-mode requires lsp-mode (and has a lot of moving
parts and points of failure), and dape is straight-forward by
comparison; to set up and use. Note that dap-mode and dap-ui is now
deprecated and will be removed in the future, but still remains behind
the +lsp flag for backwards compatibility, at least until v3.

This also adds a '<leader> d' prefix for debugger commands (except for
vanilla users, who already have dape's prefix on 'C-x C-a')
2025-04-23 04:02:06 -04:00
ed85328f57 fix(org): allow refiling to top level
Allow +org/refile-to-current-file to file to top level.

Fix: #5272
2025-04-20 03:32:11 -04:00
20381dea16 feat(emacs-lisp): add back/forward commands for helpful
Adapted from Janfel's snippet in Wilfred/helpful#250.

And bound to C-{o,i} and {<,>} for evil users, and C-c C-{b,f} and {l,r}
for vanilla users (mirroring the back/forward keybinds for help.el).

Ref: Wilfred/helpful#250
2025-04-20 03:31:25 -04:00
8f97949975 docs(ess): replace ess-R-data-view w/ ess-view-data
Ref: #6455
2025-04-18 00:17:42 -04:00
baf680f9c8 bump: :lang ess
emacs-ess/ESS@0eb240bcb6 -> emacs-ess/ESS@56f355acbd

Fix: #6455
2025-04-16 23:07:44 -04:00
2c22a26042 refactor(ess): remove unused autoloads
No commands/functions named stata or SAS is present in ESS.

Ref: #6455
2025-04-16 23:03:35 -04:00
8057af96e2 fix(ess): auto-mode-alist entry for ess-julia-mode
Fix: #6455
2025-04-16 23:03:30 -04:00
0e7997a099 fix(ess): invisible output to terminal
Only necessary for Emacs <= 28, it seems.

Fix: #6455
Ref: emacs-ess/ESS#1193
2025-04-16 23:02:12 -04:00
671e03b0a1 refactor(ess): replace ess-R-data-view w/ ess-view-data
Use `ess-view-data` given the extensive support for multiple backends
like base, dplyr, DT, kable, etc. Also, it seems that `ess-R-data-view`
is in an unmaintained/stale state.

Fix: #6455
2025-04-16 23:02:12 -04:00
ebc2cecf3d refactor(ess): reformat keybinds
This way rebinding our keybinds for ess sub-packages will require a
simpler after! line. I.e.

  (map! :after ess-help ...)

Instead of

  (map! :after (ess ess-help) ...)

Ref: #6455
2025-04-16 23:02:12 -04:00
bd28169ac5 feat(ess): roxygen: indentation on RET
Fix: #6455
2025-04-16 23:02:12 -04:00
3064132881 feat(ess): add quarto-mode
Fix: #6455
2025-04-16 23:02:11 -04:00
8eb4e37ffb perf(ess): make REPL *R* buffer more responsive
Fix: #6455
2025-04-16 23:02:11 -04:00
06e270b1e6 fix(ess): add company-backends in inferior mode
Fix: #7205
Fix: #6455
2025-04-16 23:02:11 -04:00
0f956da7f6 fix(ess): open repl commands
Fix: #6235
Fix: #6455
Fix: #5332
Co-authored-by: maikol-solis <maikol-solis@users.noreply.github.com>
2025-04-16 23:02:02 -04:00
b51d41e1cf fix(org): save-buffer more selectively after org-refile
Fixing interop between this hook and org-reminders (or other org
packages affected by the side-effects of `save-buffer`).
2025-04-16 19:07:27 -04:00
b4276f41f4 fix(eshell): "attempt to open-code ‘anonymous lambda’ with too few arguments"
Fix: #8364
Ref: #6867
Amend: c7ca3ea8cc
2025-04-16 03:48:29 -04:00
009a285c0a fix: doom-quit-p when use-dialog-box
I don't know what I was thinking, but I need more sleep.

Amend: 1a0fb88897
2025-04-15 19:08:45 -04:00
d8b36d8b17 fix: use-dialog-box only on android
Accidentally negated the check in 6a44a2e.

Amend: 6a44a2ea80
2025-04-15 19:03:31 -04:00
20c80c461e fix: void-function use-dialog-box-p
This function doesn't exist before Emacs 29, and also isn't meant to be
used in a global context.

Amend: 6a44a2ea80
2025-04-15 17:21:14 -04:00
31afe2c8b0 fix(org): don't expand latex snippets in latex segments
Yasnippet expanding snippets (on TAB) from another mode can cause
org-element warnings. Until this interop is resolved, best to not make
TAB too smart.

It still works in src blocks, however.

Fix: #8363
2025-04-15 16:37:59 -04:00
60bf93eb9a fix(cli): doomscript: end-of-file error
A regression introduced in bac90c0. The extra --eval isn't necessary in
bin/doomscript because it loads early-init.el (and thus, lisp/doom.el)
sooner than bin/doom does.

Fix: #8362
Amend: def4579a9f
2025-04-15 14:58:40 -04:00
88b6d35082 refactor!(java): remove +eclim and +meghanada
BREAKING CHANGE: This removes eclim.el and meghanada.el support from the
Java module. Both of these projects are unmaintained and recommend the
user switch to lsp-java, which is already offered by the module's +lsp
flag.

Fix: #8360
2025-04-15 04:54:22 -04:00
46647dada6 fix(lib): load doom-compat unconditionally
For users on builds of 31 that predate things Doom backports.

Fix: #8359
2025-04-15 04:18:25 -04:00
5f6df26d5c fix(lib): load doom-compat in 30.x
So users on 30.x can enjoy the backports from 31.x.

Fix: #8359
2025-04-15 01:26:23 -04:00
b2ce21068f fix(lib): void-function static-unless error
Users may be on a build of Emacs 31 where `static-when` exists without
`static-unless`.

Fix: #8359
Amend: a13719af45
2025-04-15 01:25:17 -04:00
ad0eb9d5a2 bump: :emacs dired
alexluigit/dirvish@2d63995d32 -> alexluigit/dirvish@ecb7c42e20
2025-04-15 00:39:55 -04:00
def4579a9f fix: silence 'missing lexical-binding cookie' warnings
As of recent commits of Emacs 31, elisp files missing a
"lexical-binding: t" cookie will emit this warning:

  Warning (files): Missing ‘lexical-binding’ cookie in "path/to/elisp/file".
  You can add one with ‘M-x elisp-enable-lexical-binding RET’.
  See ‘(elisp)Selecting Lisp Dialect’ and ‘(elisp)Converting to Lexical Binding’
  for more information.

You can look forward to many of these if you use any old and
unmaintained elisp packages, or if you have elisp shell scripts with
shebang lines (which make this warning unavoidable).

This commit silences these warnings because it's poorly implemented.
It's obnoxious to users and they aren't the ones that should be told
this. It ought to be emitted during byte-compilation or by linters (e.g.
`M-x checkdoc`) at the folks actually in a position to do something
about the warning (i.e. the developers).

Ref: https://lists.gnu.org/r/emacs-devel/2024-05/msg00283.html
2025-04-15 00:39:10 -04:00
976576853e nit(lib): doom-compat: make version comments consistent 2025-04-15 00:39:10 -04:00
a13719af45 refactor(lib): backport static-{if,when,unless}
And deprecate our eval-{if,when}! macros.
2025-04-15 00:39:10 -04:00
faea320162 tweak(default): swap 'C-c q q' & 'C-c q Q' keybinds
`C-c q q` should serve as a "soft" quit, with `C-c q Q` being a "hard"
quit.

This only affects non-evil users.

Fix: #8357
2025-04-15 00:37:51 -04:00
1a0fb88897 feat: doom-quit-p: use popup dialog if available
Mainly for Android UX, but also for consistency for folks who *like* GUI
dialog boxes (seek professional help).

Amend: 6a44a2ea80
2025-04-14 22:48:53 -04:00
6a44a2ea80 tweak: use GUI dialogs on android
It's better UX on touch screens, at least.
2025-04-14 15:01:03 -04:00
a45ce1e14d fix(magit): do less on magit-refresh-buffer
Inhibit recentf-cleanup and projectile caching, and silence it's logging
on refresh-buffer. The former can potentially be slow and isn't
necessary on top of invalidating the cache, and the latter is noise.
2025-04-13 06:52:24 -04:00
dddc01982b feat(emacs-lisp): add +emacs-lisp/change-working-buffer command
This changes what buffer `+emacs-lisp-eval` evaluates elisp in (useful
for the :tool eval module's commands, like `+eval/buffer` and
`+eval/region`, or the Evil operators on gr/gR).

Creates a scratch buffer/org src block alternative to ielm.
2025-04-13 06:30:07 -04:00
e096e7d79e feat(emacs-lisp): default ielm working buffer to selected
When invoking `+emacs-lisp/open-repl`, if no working buffer is set in
the resulting ielm buffer, it will default to the selected buffer prior
to opening the repl.
2025-04-13 04:32:46 -04:00
d209e519af fix(eshell): highlight syntax after completing from history
Fix: #6867
Co-authored-by: aikrahguzar <aikrahguzar@users.noreply.github.com>
2025-04-13 02:50:09 -04:00
5fdffe19db feat(eshell): add help command & lookup handler
Fix: #6867
Co-authored-by: aikrahguzar <aikrahguzar@users.noreply.github.com>
2025-04-13 02:50:09 -04:00
c7ca3ea8cc fix(eshell): don't error if command manpages has no SYNOPSIS
Fix: #6867
Ref: tom-tan/esh-help#7
2025-04-13 02:50:09 -04:00
6e92ca594f perf(magit): noop +magit-mark-stale-buffers-h if disabled
A little less work to do.
2025-04-13 02:50:09 -04:00
b2f8529683 fix(magit): projectile-invalidate-cache in wrong buffer
Also prevents projectile prompting in non-projects.
2025-04-13 02:50:09 -04:00
1c09989e48 fix(eshell): +eshell/search-history sometimes noops
Fix: #6867
Co-authored-by: aikrahguzar <aikrahguzar@users.noreply.github.com>
2025-04-13 02:50:07 -04:00
c6f749e67c fix(default): don't override TAB when Corfu isn't visible
Fixes TAB in many modes, like Org.
2025-04-11 15:49:41 -04:00
9a63789cf0 refactor(org): remove reference to org-superstar
org-superstar was removed in b1e6dec.

Amend: b1e6dec47a
2025-04-11 15:49:41 -04:00
dd493e48ed fix(format): wrong-type-argument listp error 2025-04-11 15:49:41 -04:00