Commit Graph

19836 Commits

Author SHA1 Message Date
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
13b64229a0 fix(popup): fringe/margins adjusted in wrong window
Due to a race condition in some contexts, hooks that adjusted window
fringes or margins weren't targeting the windows (usually popups) they
were supposed to, often affecting the last selected window instead. This
could cause the fringes (or margins) to resize or outright vanish
unexpectedly in the wrong windows (e.g. after opening or killing a vterm
or eshell popup).

Fix: #8346
2025-04-07 13:59:30 -04:00
d660853fc3 tweak(org): org-modern: oversized checkbox symbol 2025-04-07 13:59:28 -04:00
13500dd175 fix(org): org-modern: s/keyword/keywordp
Amend: 8168a03599
2025-04-07 02:51:11 -04:00
b840f90252 revert: fix(latex): run after-compilation-finished hook after Tex-Tex-sentinel
This hack is no longer necessary; it was addressed upstream.

Revert: 79684ade71
Ref: emacsmirror/auctex@650d0f3297
Ref: #8051
2025-04-06 18:36:50 -04:00
3a8e9a165f fix(vc-gutter): diff-hl-update suppression
Amend: 98273b639b
2025-04-06 16:19:36 -04:00
c3d4970da5 fix(org): do not rely on org-indent being loaded
Amend: 9dfcb5401f
2025-04-06 15:33:09 -04:00
20ad20f8eb fix(syntax): +syntax--only-check-elisp-buffers-in-projects-a signature
The previous signature was accidentally compatible with
`elisp-flymake-byte-compile`, so there was no error, but still.
2025-04-06 15:32:22 -04:00
a70ce220c0 refactor(org): use variables instead of +org-pretty-mode
Toggling +org-pretty-mode on startup is much slower (because
`org-toggle-pretty-entites` and realigning tables can be expensive in
larger Org buffers), so rely on the variables instead.
2025-04-06 15:32:22 -04:00
32fc210bf6 fix(org): org-modern in org-agenda
Amend: b1e6dec47a
Ref: #6434
2025-04-06 15:32:22 -04:00
90b64a0313 refactor(latex): replace latex-preview-pane w/ auctex-cont-latexmk
Since latex-preview-pane is unmaintained, replace it with auctex-cont-latexmk.el
and a simple function to compile the document and open the default viewer.

Close: #3128
Close: #5249
2025-04-06 00:04:39 -04:00
35e348ea20 bump: :lang org
doomelpa/org-contacts@f0a430442b -> doomelpa/org-contacts@b06a597368
emacs-jupyter/jupyter@db8a9e233a -> emacs-jupyter/jupyter@3615c2de16
emacs-straight/org-mode@07e380f76d87[release_9.7.26] ->
emacs-straight/org-mode@74dde3abae74[release_9.7.27]
hakimel/reveal.js@5c77e86301 -> hakimel/reveal.js@dfc5690c6d
magit/orgit-forge@2718a6aaf0 -> magit/orgit-forge@764820769e
magit/orgit@6ad0dc35c8 -> magit/orgit@efd98e5caa
msnoigrs/ox-rst@99fa790da5 -> msnoigrs/ox-rst@b4ba5c7e95
2025-04-05 17:03:30 -04:00
98e37b9cea tweak(org): org-priority-faces: use shadow face for #C
Defaulting to green for the lowest priority indicators seemed
inappropriate, so use a more washed out face.
2025-04-05 16:56:36 -04:00
8168a03599 fix(org): org-modern: respect defaults for org-*-faces
Makes org-modern respect Doom's defaults out-of-the-box.

Amend: b1e6dec47a
2025-04-05 16:54:38 -04:00
26b97766e6 fix(default): replace deprecated magit staging commands
magit-{stage,unstage}-buffer-file were deprecated in Magit 4.3.2 for
magit-file-{stage,unstage}.

Amend: 8afc08a7a8
Close: #8342
Co-authored-by: panchoh <panchoh@users.noreply.github.com>
2025-04-05 15:22:40 -04:00
5020d592da fix: tooltip-resize-echo-area = t
Since we disable tooltip-mode, the echo-area should expand to display
multi-line output, to be consistent with our default for
resize-mini-windows. This also fixes the truncation of annotations in
PDF buffers (#1615).

Fix: #1615
2025-04-05 02:14:54 -04:00
a13fda7ec0 fix(magit): don't auto-revert non-file-visiting buffers
Fix: #8339
Amend: 17a870fef8
2025-04-05 02:02:00 -04:00
457b7cab1e docs(undo): doctor: check for other undo package
If the user has installed one package while :emacs undo installs the
other, they're gonna have a bad time.
2025-04-05 02:00:12 -04:00
9dfcb5401f tweak(org): disable org-modern-hide-stars w/ org-indent-mode 2025-04-04 16:12:23 -04:00
b0cd2bec9e docs(smooth-scroll): reformat troubleshooting section 2025-04-04 16:12:07 -04:00
fce552f4bf docs(smooth-scroll): mention high CPU w/ +interpolate
Ref: io12/good-scroll.el#31
2025-04-04 15:57:18 -04:00
6919d5e1c4 fix(lsp): eglot: don't manage flymake
Amend: 8afc08a7a8
2025-04-04 05:30:27 -04:00
5aca456258 nit: recentf: reformat & revise comments 2025-04-04 05:11:08 -04:00
eb19afa8c3 refactor: remove doom--recentf-file-truename-fn
For the sake of reducing complexity, I stop Doom from stripping symlinks
or the "/sudo:" prefix from tramp paths in recentf's file list. It's
extra work that's not strictly necessary or unanimously desired.

Also removes the tidbit about `recentf-show-abbreviated`; the variable
was removed just prior to 29's release so it is no longer an option.
2025-04-04 05:09:54 -04:00
f98eb3824f revert: refactor(magit): reduce pollution of global namespace
This refactor was premature. It still worked, but only by accident.

This is not a *full* revert; +magit--pos has been renamed for clarity.

Revert: d4c02bcd08
2025-04-04 00:50:45 -04:00
e91a5edd31 fix(smooth-scroll): good-scroll & ultra-scroll interop
Makes these two packages coexist better and more efficiently.

Ref: 5f04b56229
2025-04-03 21:49:59 -04:00
668a4a36d5 docs(org): update & reorganize package list 2025-04-03 18:02:09 -04:00
b1e6dec47a refactor!(org): +pretty: use org-modern instead
BREAKING CHANGE: This changes the packages that +pretty depends on;
removing org-superstar and org-fancy-priorities, and replacing them with
org-modern. The user doesn't need to do anything but remove any
now-defunct configuration for org-superstar and org-fancy-priorities
from their config.

This was done to simplify our config, lighten our maintenance burden,
and rely on a more reliable (and still-maintained) package.

Fix: #6434
2025-04-03 17:40:32 -04:00
318e630037 feat(smooth-scroll): add +interpolate flag
Adds optional scroll interpolation/animation in #8335 via the
good-scroll package. Command support is light right now, but I plan to
expand on it later, and I welcome PRs to do so in the meantime.

Ref: #8335
2025-04-03 17:40:11 -04:00
46742977b1 refactor(emacs-lisp): remove unused +emacs-lisp-indent-function
Amend: e71daf5cc3
2025-04-03 00:43:45 -04:00
061189953d perf(smooth-scroll): suppress hl-todo, diff-hl-flydiff, & jit-lock
While scrolling.
2025-04-02 19:04:11 -04:00
4d44b78ccf docs(smooth-scroll): mention Emacs 29 requirement 2025-04-02 19:04:11 -04:00
63c29561df fix(smooth-scroll): add Emacs 29 check
This package requires 29+ and will fail otherwise (it depends on
pixel-scroll-precision-mode).
2025-04-02 19:04:11 -04:00
5fae69b7bf docs: docstring & comment revisions
For `undefadvice!`, `doom-load-theme-hook`, and the `ws-butler` package.
2025-04-02 19:04:11 -04:00
625b793218 fix: over-aggressive doom--run-switch-frame-hooks-fn
Due to a typo in the hook's self-removal, causing this function to
trigger many times per second. It isn't doing much thanks to the
debouncing, but was still legitimately triggering doom-switch-frame-hook
every ~2 seconds despite no change in frame focus.

Also removes the ineffectual inhibit-redisplay let-bind.

Amend: 653b465c74
2025-04-02 19:03:51 -04:00
d4c02bcd08 refactor(magit): reduce pollution of global namespace 2025-04-02 06:37:12 -04:00
98273b639b fix: recursive redisplay error from doom-switch-frame-hook
If a function on doom-switch-frame-hook triggered a redisplay, it could
cause infinite recursion.

Amend: 653b465c74
2025-04-02 06:36:27 -04:00
919e658436 fix(magit): magit-uniquify-buffer-names = nil
This prevents naming collisions between projects that resolve to the
same name (e.g. foo/bar/src and baz/foo/src both resolve to the same
project name: "src"), causing Magit to destructively reuse magit
bufffers across projects (which is especially disruptive if you use
workspaces and are using magit in both, in unrelated projects that
happen to have the same name).
2025-04-02 06:19:11 -04:00
635f0a3eec refactor(magit): magit-credential-cache-daemon-socket: remove hack
This is handled upstream now and is no longer needed.
2025-04-02 06:12:44 -04:00
0bf0ea9910 dev: update license year
I spoke too soon...

Ref: 8d4d831565
2025-04-02 04:44:35 -04:00
16dd6f8674 fix(dired): don't treat dirvish-side buffers as popups
If the user has :ui (popup +all) enabled, it will capture dirvish side
buffers and treat them like arbitrary popups, so we correct the default
popup rule to force it to ignore them like we already do with dirvish's
main buffers.

Fix: #8338
2025-04-02 04:23:23 -04:00
760a92e952 fix(ivy): counsel-projectile-switch-project: empty list on first run
This is due to `counsel-projectile-switch-project` not initializing the
known projects list before consulting the `projectile-known-projects`
variable (or at the very least, calling the function of the same name,
rather than referencing the variable directly). By changing
counsel-projectile-remove-current-project, it now does.
2025-04-02 04:13:50 -04:00
cf41865693 perf(magit): optimize +magit-mark-stale-buffers-h
For cases where the user has *many* buffers open in long-lived sessions.
2025-04-02 03:18:08 -04:00
653b465c74 refactor: doom-switch-frame-hook
Redesign this hook around `after-focus-change-function`, along with
debouncing, to prevent it from triggering too aggressively (due to
misbehaving desktop environments, elisp packages that tinker with frame
focus, or accidental (and rapid) focus changes by the user).

`doom-switch-{window,buffer}-hook` have also been simplified, and
`doom-switch-window-hook` now will not trigger when focusing another
frame (only when you switch windows *within* any one frame).

This also fixes diff-hl not updating when refocusing an Emacs frame.
2025-04-02 03:17:29 -04:00
27e5ae62e4 fix(vc-gutter): respect diff-hl-bmp-max-width 2025-04-02 01:15:16 -04:00
3abd194c0a docs(vterm): mention permission error issue on Tumbleweed
Credit for this tidbit goes to Qyu on Discord.
2025-04-02 01:14:51 -04:00
52c385c033 refactor!(python): remove anaconda-mode
BREAKING CHANGE: This removes company and non-LSP integration from the
Python module, in order to reduce the complexity of the module, reduce
dependencies on Company, and lean more on LSP, which provides these
features with more reliability and consistency. Switch to :tools lsp and
install a Python LSP client to get these features back.
2025-04-01 17:58:13 -04:00
417f3bc892 refactor!(go): remove go-eldoc & company-go
BREAKING CHANGE: This removes company and non-LSP integration from the
Go module, in order to reduce the complexity of the module, reduce
dependencies on Company, and lean more on LSP, which provides these
features with more reliability and consistency. Switch to :tools lsp and
install a Go LSP client to get these features back.
2025-04-01 17:58:13 -04:00
f9e9c27a8b module: remove :tools prodigy
This module has been deprecated for a while as it's much too trivial to
warrant being its own module, has been incomplete since its inception,
and there's no interest in maintaining, finishing, or expanding it.
2025-04-01 17:58:13 -04:00
5f04b56229 module: add :ui smooth-scroll
Normally, this would be too small to warrant its own module, but smooth
scrolling is one of those things that can tip large swaths of
fence-sitting beginners into Emacs' camp. I can't help but imagine how
many people get their impression that Emacs is "laggy" or "slow" solely
from the way it scrolls.

Don't get me wrong, there *are* good reasons to call Emacs slow, but
startup and scrolling speed are not it, yet they are easily overblown
because it's the first thing you see. I might even consider enabling
this by default, but I'll make that decision later.

Fix: #8335
2025-04-01 17:58:13 -04:00