Commit graph

19440 commits

Author SHA1 Message Date
Henrik Lissner
ba3f30ef67
nit(org): punctuate docstrings
Plus minor grammar fix.
2024-07-15 00:23:43 -04:00
Henrik Lissner
c616831a8f
fix(org): TAB in org-mode (for corfu users)
For evil users, TAB used to invoke `org-cycle` in insert mode, until
recent changes with the corfu module undid them, making them invoke only
completion.
2024-07-15 00:23:43 -04:00
Henrik Lissner
5485b912de
bump: :ui vc-gutter
dgutov/diff-hl@11f3113e79 -> dgutov/diff-hl@f66345ed1f

- Our diff-hl-update-async hack is no longer needed. The issue was
  addressed upstream.

Amend: 778fc9ad3f
Ref: dgutov/diff-hl#213
Ref: dgutov/diff-hl@e264d13a3d
2024-07-15 00:23:31 -04:00
Henrik Lissner
1eaa1aef2c
refactor(format): rename to +format/org-blocks-in-region
To better reflect that it operates on multiple blocks.

Ref: #7936
2024-07-14 02:00:24 -04:00
Henrik Lissner
7543b04e15
feat(format): add +format/org-block-in-region
Also updates `+org/reformat-at-point` to call
`+format/org-block-in-region` if selection is active.

Fix: #7936
2024-07-14 01:57:20 -04:00
Henrik Lissner
378d0b8db6
fix(cli): doom env: omit XDG_BACKEND & DOOMLOCALDIR 2024-07-14 00:45:42 -04:00
Henrik Lissner
15ea9b6452
refactor(gdscript): remove format keybinds
Rely on :editor format's interface, instead, which is less janky.
2024-07-13 19:38:20 -04:00
Henrik Lissner
49d833fa64
fix(gdscript): accommodate version-suffixed godot binaries
On some distros (like nixpkgs), the binary is suffixed with a version
number.
2024-07-13 19:38:20 -04:00
Henrik Lissner
3d99fbf525
tweak(gdscript): open godot log buffers in popup
Includes an advice to prevent the log buffer from being focused. This
way, the user can return to their work faster when in their play-debug
loop, as well as kill the game/Godot by killing the log buffer
remotely (with its process) with C-g/ESC.
2024-07-13 19:38:20 -04:00
Henrik Lissner
3cc2d83ee8
tweak(gdscript): gdscript-docs-use-eww = nil
eww is clumsy and slow; taking 4-6 seconds to load and render the page
on a good day, so just use the browser instead.
2024-07-13 19:38:20 -04:00
Henrik Lissner
3b68924723
fix(gdscript): async :documentation lookup handler
Otherwise `+lookup/documentation` will fall through to the next handler
whether or not `gdscript-docs-browse-symbol-at-point` is successful.
Especially important if `gdscript-docs-use-eww` is nil.
2024-07-13 19:38:20 -04:00
Henrik Lissner
b3ef202451
refactor(corfu): conform to naming conventions 2024-07-13 19:38:20 -04:00
Henrik Lissner
ce84690dc5
feat(evil): vim completion keybinds on C-x
Vim has a set of completion commands bound to the C-x prefix. We had
this for company, but with this commit, we now have them for the corfu
module.
2024-07-13 19:38:20 -04:00
Henrik Lissner
8ab42fa774
nit: revise site-lisp comments
The motivations for delaying the site-lisp files are different between
interactive and non-interactive sessions. I've revised these comments to
reflect that.
2024-07-13 19:38:16 -04:00
Prashant Vithani
b9f1d5d261 tweak(syntax): use close-circle-outline icon for errors
The same is used by doom-modeline to show flycheck errors.

Ref: 1505c13564/doom-modeline-segments.el (L818)
2024-07-12 15:44:50 -04:00
Prashant Vithani
af0dcdcd94 bump: :checkers syntax
flycheck/flycheck@02148c6ce7 -> flycheck/flycheck@e8d1472aea
2024-07-12 15:44:50 -04:00
Henrik Lissner
b0e1e68e78
fix(cc): disable modern-cpp-font-lock if +tree-sitter
Fix: #7941
2024-07-11 23:32:05 -04:00
Henrik Lissner
76845a2ea8
bump: :lang latex
emacs-straight/adaptive-wrap@dea4e32c18 -> emacs-straight/adaptive-wrap@f5bc153273
emacs-straight/auctex@764a53c8e9 -> emacs-straight/auctex@451b0f08b0

- Thankfully, emacs-straight/auctex@451b0f08b0 removed the make step
  for building tex-site.el, but it also meant that anyone who has
  unpinned auctex would get file-missing errors for tex-site.el.in.

Fix: #7925
Ref: emacs-straight/auctex@451b0f08b0
2024-07-11 23:14:14 -04:00
Henrik Lissner
20ee90614a
nit(cli): revise comment over site-run-file loader
To better explain to the wondering reader why we're loading site-start
here.
2024-07-11 21:53:38 -04:00
Henrik Lissner
12dc195774
fix: kill-current-buffer: respect kill-buffer-query-functions
This advice is intended to fake the death of buffers that are visible in
other windows, and prevent Emacs from switching to a non-real buffer
after it's killed/buried. It shouldn't even try to do any of this if
`kill-buffer-query-functions` fails, even if it is a fake death.
2024-07-11 15:22:12 -04:00
Henrik Lissner
3965df56e8
docs(org): +org--fix-inconsistent-uuidgen-case-a: link to bug report
For posterity.
2024-07-11 15:19:03 -04:00
Henrik Lissner
11cf61fef2
feat(org): display link at point in eldoc 2024-07-11 15:18:30 -04:00
Henrik Lissner
250f3a3899
feat(org): bind <localleader> l y to +org/yank-link
For copying the URL component of an org link at point.
2024-07-11 15:17:25 -04:00
Henrik Lissner
ba467fea57
bump: :tools lsp tree-sitter
emacs-lsp/lsp-mode@cec9e56390 -> emacs-lsp/lsp-mode@5298775517
emacs-straight/eglot@850cbd0430 -> emacs-straight/eglot@8008255edd
emacs-tree-sitter/tree-sitter-langs@a06804e13f -> emacs-tree-sitter/tree-sitter-langs@b2739d07fa
flycheck/flycheck-eglot@114e1315aa -> flycheck/flycheck-eglot@09e37f4c72
2024-07-11 15:16:09 -04:00
Henrik Lissner
86517122bd
bump: :core
Fuco1/smartparens@f7cf316715 -> Fuco1/smartparens@ab475c7891
emacs-compat/compat@80dbd9bc5e -> emacs-compat/compat@09dce8a193
emacs-straight/project@bf4c3cfcfb -> emacs-straight/project@093f42a1b6
jscheid/dtrt-indent@939c5e374a -> jscheid/dtrt-indent@339755e4fb
justbur/emacs-which-key@ed38931217 -> justbur/emacs-which-key@38d4308d11

Fix: #7939
2024-07-11 14:19:54 -04:00
ZenTauro
ef1aa5efe3
fix(ansible): void-function ansible error
`ansible` was renamed to `ansible-mode` upstream.

Amend: af2b1a62dc
Ref: eebb2fb49d
2024-07-11 14:18:35 -04:00
Henrik Lissner
c45318d493
nit(markdown): revise comments & reformat 2024-07-11 03:37:37 -04:00
Henrik Lissner
a6ba70aed7
fix(lib): avoid writing customized faces to custom.el (take 4)
This time, the faces weren't being applied if THEME == 'user (for
`custom-set-faces!`).

Amend: afb9773d7c
Ref: #7929
Ref: #7933
2024-07-11 03:18:48 -04:00
Henrik Lissner
c8b5bf7bd1
feat(flycheck): add +icons flag
Close: #7814
Co-authored-by: Dev380 <Dev380@users.noreply.github.com>
2024-07-10 20:35:30 -04:00
Henrik Lissner
778fc9ad3f
fix(vc-gutter): disable diff-hl-update-async in with-editor-mode
`diff-hl-update-async` was enabled in f2696d7, causing a regression
where with-editor buffers wouldn't get cleaned up properly. This would
particularly affect Magit's COMMIT_EDITMSG buffers. To quote jds on
Discord:

  It seems like after committing (with cc in the magit buffer), it
  leaves COMMIT_EDITMSG around. The next time I try & commit, a single c
  keypress immediately jumps to the old COMMIT_EDITMSG buffer, but it's
  inactive - C-c C-c closes that buffer but makes no change to git.

I opt for advice instead of find-file or with-editor-mode hooks to
restore normal behavior should with-editor-mode be later disabled
without the death of its buffer (not relevant to magit, specifically,
but it might be to other consumers of with-editor, now or in the
future).

Ref: dgutov/diff-hl#213
Amend: f2696d7302
2024-07-10 18:27:54 -04:00
Henrik Lissner
c2c241666b
fix(lib): autoload doom--run-customize-theme-hook
In case the user byte-compiles any files where custom-theme-set-faces!
is used.

Amend: afb9773d7c
Ref: #7929
Ref: #7933
2024-07-10 16:00:16 -04:00
Henrik Lissner
afb9773d7c
fix(lib): avoid writing customized faces to custom.el (take 3)
Wrap doom-customize-theme-hook and use that wrapper also when the local
doom--customize-themes-h-* hook is called immediately, otherwise
settings will be written to custom-file, which is what I've been trying
to avoid with all these takes!

Amend: 0b13525252
Ref: #7929
Close: #7933
Co-authored-by: real-or-random <real-or-random@users.noreply.github.com>
2024-07-10 15:57:35 -04:00
Henrik Lissner
0b13525252
fix(lib): avoid writing customized faces to custom.el (take 2)
Setting custom--inhibit-theme-enable to t isn't enough, since
custom--should-apply-setting will return non-nil if THEME is 'user.

Ref: #7929
Amend: 68771150ba
2024-07-10 04:22:48 -04:00
Henrik Lissner
234cc27b77
fix(ivy): +counsel-rg-suppress-error-code-a
Corrects the signature of process-exit-status.

Amend: 6ef86098cb
2024-07-10 04:02:21 -04:00
Henrik Lissner
6ef86098cb
fix(ivy): counsel-rg dying on non-zero exit code
Monkey-patches counsel-rg to ignore non-zero exit codes. This may have
other side effects, but despite it still producing workable resutls, the
command will discard all its results if there are any errors while
scanning a directory.

Ref: abo-abo/swiper#2339
Fix: #3038
2024-07-10 03:55:03 -04:00
Henrik Lissner
f1f72c291a
refactor(vc-gutter): simplify & DRY
These advice were unnecessary when not only does diff-hl expose
variables to change them, but one of the overridden definitions is
identical to the function it's replacing.

Also includes some other minor refactors.
2024-07-10 03:54:45 -04:00
Henrik Lissner
78304f4d79
perf(vc-gutter): optimize bitmaps
The NS build of Emacs (on MacOS) seems to struggle rendering our old
fringe bitmaps for diff-hl, leading to noticably slow-downs when
scrolling in buffers with diff-hl enabled. By pre-computing the pixel
height and width of the bitmap, rather than relying on passing `repeat`
to define-fringe-bitmap's ALIGN argument, this seems to spare it a chunk
of wasted cycles.

Ref: https://www.reddit.com/r/emacs/comments/1do1wgj/fringes_incredibly_slow_on_emacs_ns_with_macos/
Fix: #7923
2024-07-10 03:18:46 -04:00
Henrik Lissner
df5f6696ec
tweak(markdown): fontify code blocks natively
Enable `markdown-fontify-code-blocks-natively`, which was disabled in
f5570db due to performance issues, which I try to fix by suppressing
mode hooks on `markdown-fontify-code-block-natively`.

Amend: f5570db4c2
Close: #7930
Co-authored-by: real-or-random <real-or-random@users.noreply.github.com>
2024-07-10 01:47:18 -04:00
Henrik Lissner
68771150ba
fix(lib): avoid writing customized faces to custom.el
`custom-theme-set-faces!` calls `custom-theme-set-faces`, which will
mark the customizations for saving to custom.el. But
`custom-theme-set-faces!` is not intended for permanent customizations.
I fix this by setting `custom--inhibit-theme-enable` to prevent some of
the extra work `custom-theme-set-faces` does around changing faces, and
call face-spec-set manually.

Also renames doom--custome-theme-set-face to doom--normalize-face-space,
to better reflect what it does.

Close: #7929
Co-authored-by: real-or-random <real-or-random@users.noreply.github.com>
2024-07-10 01:46:57 -04:00
Tim Ruffing
b4b1b48e26 nit(org): update outdated comment
Amend: b0e16dc243
2024-07-10 01:45:59 -04:00
Tim Ruffing
16b243733b fix(org): restart org in all optimized buffers
Fix: #7737
2024-07-10 01:45:59 -04:00
Henrik Lissner
9d7885abbf
fix(evil): q/Q keybinds in view-mode
Caused by evil-collection-view binding q to quit-window, which breaks
view-exit-action. This should be reported upstream.
2024-07-10 01:16:29 -04:00
Henrik Lissner
fe0548e820
tweak: unbind SPC in y-or-n-p prompts
SPC is equivalent to y when y-or-n-p prompts you, which seems way too
easy to hit by accident, especially with our leader key being (or
involving) SPC by default.
2024-07-09 21:53:50 -04:00
Henrik Lissner
a4869f32e7
refactor(org): org-src-lang-modes: move md alias
This is a general convenience for org users, not specifically for users
of the markdown module, so it belongs in :lang org.
2024-07-09 20:59:53 -04:00
Henrik Lissner
8bd6b8ab68
perf: suppress local-vars hooks in temp buffers
Doom inserts some expensive hooks in MODE-local-vars-hook, like
triggering LSP servers, tree-sitter, or visual enhancements -- things
that are unnecessary in temporary (invisible) buffers, so I suppress
them altogether there.
2024-07-09 20:56:35 -04:00
Henrik Lissner
e43d575caf
refactor(lib): don't use smartparens' API
Toward our eventual goal of moving smartparens out of core, I've adapted
this from code provided by hpfr on Discord, which was adapted from
smartparen's syntax-ppss caching logic. `:config default` will need need
some attention before we can fully move smartparens to its own `:editor
smartparens` module.

Co-authored-by: hpfr <hpfr@users.noreply.github.com>
2024-07-09 20:55:29 -04:00
Henrik Lissner
1131d5b36d
refactor(org): remove +org--recenter-after-follow-link-a
Since I changed `scroll-conservatively` in f427c8a, this is no longer
necessary.

Amend: f427c8a30e
2024-07-09 19:16:29 -04:00
Henrik Lissner
944eef90ec
fix(lib): doom-plist-merge causing side-effects
This one was sneaky. `doom-plist-merge` was mutating the second plist
fed to it, causing issues upwind of its uses. In #7925, for example,
calling `doom-package-recipe` to read a package's recipe would end up
altering it, copying sub-properties of :recipe to other packages'
recipes.

If you've hit #7925, you'll also need to delete your build-cache to get
around the error. I.e.

  rm -f $EMACSDIR/.local/straight/build-*-cache.el
  doom sync  # or upgrade

Fix: #7925
2024-07-09 02:46:53 -04:00
Henrik Lissner
96de02c769
fix(latex): auctex: build tex-site.el
Auctex added a make build step to it's installation. Rather than just
assume the user has the GNU variants of make, sed, and other unix
utilities on their system, I simply generate tex-site.el in elisp,
similar to what we do with org and its org-version.el and
org-loaddefs.el files.

This is a stop-gap measure until I've deployed a mirror+CD on @doomelpa.
2024-07-09 00:40:16 -04:00
Henrik Lissner
f2696d7302
perf(vc-gutter): diff-hl-update-async = t
Don't block Emacs when updating the gutter.

Ref: #7923
2024-07-08 22:16:05 -04:00