Commit Graph

19239 Commits

Author SHA1 Message Date
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
081231b73f fix(format): apheleia doesn't invoke lsp formatter
change `+format--lsp-fn` to run `+format--lsp-fn` in context of main
buffer rather than apheleia's scratch buffer so that the lsp mode can
be discovered
2024-07-08 21:41:39 -04:00
af2b1a62dc bump: :tools ansible
bump: :tools ansible

emacs-ansible/emacs-ansible@b4dca00f89 -> https://gitlab.com/emacs-ansible/emacs-ansible@eebb2fb49d3c

- (#7922) Updates emacs-ansible's pin so it is properly cloned from it's new
  home at gitlab.
2024-07-08 19:31:05 -04:00
21a252d994 bump!: :lang latex
emacs-straight/auctex@280cd4a0ca -> emacs-straight/auctex@764a53c8e9
emacs-straight/adaptive-wrap@a3b179ea21 -> emacs-straight/adaptive-wrap@dea4e32c18

BREAKING CHANGE: This commit also removes the +latexmk flag from the
`:lang latex` module, since the auctex-latexmk package is no longer
needed (support has been upstreamed into auctex). This means the module
won't set `TeX-command-default` to "LaTeXMk" for you anymore; you'll
have to do it yourself, e.g. (note the capitalization!)

  (setq TeX-command-default "laTeXMk")
  ;; or
  (setq-hook! LaTeX-mode TeX-command-default "LaTeXMk")

Ref: https://git.savannah.gnu.org/cgit/auctex.git/commit/?id=4a345e2234df74f1ad98046ef1372f7ca6fb357d
2024-07-08 13:59:16 -04:00
dfe9d572a7 docs(format): hacks: mention save-buffer advice 2024-07-08 13:59:16 -04:00
7d25ba3f6c fix(format): void function +format-with-lsp-maybe-h error
Regression introduced in fd1941b.

Amend: fd1941b95f
2024-07-08 13:59:06 -04:00
6e19452f74 fix(python): missing labels for keybind prefixes
Use the `(PREFIX . DESCRIPTION)` syntax for the python mode map.
2024-07-08 01:33:28 -04:00
6b526b1b47 refactor(format): +format/org-block: make arg optional 2024-07-07 21:48:17 -04:00
f104f10c5b docs(format): revise README.org
To reflect recent changes and for clarity.
2024-07-07 21:48:17 -04:00
fd1941b95f refactor!(format): simplify & gate lsp/eglot impl behind +lsp
BREAKING CHANGE: This commit introduces two changes, a breaking, one
not.

The breaking change: `+format-with-lsp` used to control lsp-mode/eglot
integration for this module, but it is now gated behind a new +lsp flag.
Users will need to add it to their `doom!` blocks (in $DOOMDIR/init.el)
to restore the integration.

The other change: I've merged the former `lsp` and `eglot` formatters
into a single `lsp` formatter that dispatches to the appropriate
backend, as well as wrapping this integration in a
`+format-with-lsp-mode` minor mode, so it can be toggled at will; mainly
to assist in debugging formatter behavior.

A unified formatter makes it easier for folks to configure
`+format-with` on a per-project/directory/file basis, without needing to
know what backend this module uses, and opens us up to integrating other
LSP backends in the future (like lsp-bridge).
2024-07-07 21:43:27 -04:00
cca40c0277 tweak(format): doom-debug-variables: add apheleia-log-debug-info 2024-07-07 21:43:27 -04:00
d648bfda40 docs(format): revise docstrings and comments 2024-07-07 20:41:03 -04:00
9224ac56f0 tweak(default): bind '<leader> g U' to magit-unstage-buffer-file
The former command, magit-unstable-file, would prompt the user to select
a file to unstage, but the intention of this keybind was always to
"unstage *this* file". magit-unstage-buffer-file didn't exist at the
time this keybind was created, so I settled on magit-unstage-file as a
compromise, which is no longer necessary.
2024-07-07 20:39:32 -04:00
c5c7f0bc99 feat(format): add +format-inhibit alias
I want both `apheleia-formatter` and `apheleia-inhibit` exposed for easy
setting from directory/file-local variables (like .dir-locals.el), but
I'd like to abstract away the implementation (Apheleia) a little, hence
these aliases. This way, whether or not we're still using Apheleia in a
year or three, `+format-with` and `+format-inhibit` should always work.
2024-07-07 16:31:24 -04:00
5e78ed0911 refactor(format): use eglot-server-capable
eglot--server-capable was deprecated.
2024-07-07 14:39:50 -04:00
deb59ca4ad fix(format): LSP formatters before Apheleia is loaded 2024-07-07 14:39:27 -04:00
c45c8cee35 tweak(beancount): +beancount/balance w/ prefix arg
Without the prefix arg, it will only display the balance of Assets and
Liabilities.  With it, the balance of all accounts will be shown.
2024-07-07 14:38:21 -04:00
a99863a76f bump: :tools magit
magit/forge@4adb94d23c -> magit/forge@0102834bb7
magit/magit@ea0f07e549 -> magit/magit@9d1f8db507

- Includes an update for forge to accommodate changes to closql's interface.

Ref: magit/forge@fb272bd93b
2024-07-07 14:35:40 -04:00
3cd605182f fix(mu4e): remove stray +workspace-delete invokation
In commit 5289861109 `+workspace-delete` was
replaced by `+workspace-kill`.

The changes were not complete, though, and mu4e does not start anymore.

This patch completes the changes and should restore mu4e.

Amend: 5289861109
2024-07-07 13:37:02 -04:00
21a427c33b fix(format): eglot-managed{,-mode}-hook hook 2024-07-06 21:18:34 -04:00
17d4aaace3 fix(format): add lsp functions
Forgot to include these functions in 8072762. Oops.

Amend: 8072762de8
2024-07-06 21:03:12 -04:00
4e795c3a55 tweak(org): use consult-outline instead of imenu
Ref: #7716
2024-07-06 20:40:08 -04:00
d330642c2e feat(literate): add +literate/find-heading command
A command for jumping to an Org heading in your literate org config
file.

Close: #7716
2024-07-06 20:40:08 -04:00
d7075b2420 tweak(lib): doom-project-find-file: use transient project
If DIR is not a project and does not have root markers, create a
transient project instead. This ensures that `project-find-file-in`, and
by extension vertico, is still used in non-project directories instead
of falling back to `find-file`

Ref: 1b0af3bfc7
2024-07-06 20:16:59 -04:00
1cc83dce35 fix(cli): wrong-number-of-args error on choosing 'abort'
Fix: #7917
2024-07-06 20:13:38 -04:00
cc358a60c4 refactor(org): remove unused hooks
These hooks had the potential to be too expensive (in larger Org files)
to be enabled by default.
2024-07-06 20:07:14 -04:00
f6e65c4010 feat(org): add +org/reformat-at-point command
A DWIM command to reformat a src block, table, or paragraph at point.

Ref: #7685
2024-07-06 19:58:27 -04:00
8072762de8 refactor(format): redesign module
Rather than wrap Apheleia in custom formatting logic, I now use
Apheleia's own machinary to integrate into LSP and Eglot, which is less
complexity to maintain. It also makes settings +format-with a more
reliable option for per-project or per-file configuration.

This also adds a +format/org-src-block command, which I'll incorporate
into the org module in a follow-up commit.

Ref: #7685
2024-07-06 19:54:55 -04:00
b0e16dc243 fix(org): reload org-mode in half-loaded capture buffers
Fix: #5411
2024-07-05 20:10:58 -04:00
7bb5df4cd4 fix(zig): update zls download URL
Fix: #7873
Ref: zigtools/zls#1879
2024-07-05 20:10:58 -04:00
2bfb7821b6 refactor(evil): +evil--window-swap: no-op if on edge
Also error checks DIRECTION, just in case.
2024-07-05 20:10:57 -04:00
b767beaca6 fix(lib): don't call doom-adjust-font-size twice
When doom-big-font-mode is deactivated.
2024-07-05 20:10:57 -04:00
6e69b29084 fix(lib): reset font size before setting big font mode
Calling (doom-adjust-font-size 1) repeatedly would keep increase the
font size because an increment is passed.

When loading themes, the doom-big-font-mode minor mode gets loaded again
therefore it causes the font to get increased.

Fix: #7845
2024-07-05 18:58:18 -04:00
f44309cb63 fix(default): replace void function +yas-active-p 2024-07-05 18:57:40 -04:00
5289861109 refactor(workspaces): +workspace/delete: rename to +workspace/kill
To be more consistent with other uses of the verb in the Emacs
ecosystem. Also done in preparation for a new +workspaces/delete command
for #7869.

Ref: #7869
2024-07-05 18:05:15 -04:00
934141a01e refactor!(python): remove lsp-python-ms
BREAKING CHANGE: This removes the lsp-python-ms package (along with it,
lsp-python-ms support), since the package no longer works in recent
versions of Python and is no longer maintained upstream.
2024-07-05 18:05:15 -04:00
b7954f927f refactor!(org): remove ob-ipython
BREAKING CHANGE: This commit removes the ob-ipython package; it's been
deprecated for some time because the upstream package is no longer
maintained and is broken on most, common versions of Python anyway.
Jupyter is a superior alternative, in any case.
2024-07-05 18:05:15 -04:00
d81f1862f7 refactor(php): remove php-cs-fixer
This removes the php-cs-fixer.el package. This is not a breaking change
because the package hasn't been this module's default formatter since
4ecd616. It has since been replaced by phpcbf (provided by
squizlabs/php_codesniffer).

Amend: 4ecd616cd8
2024-07-05 18:04:17 -04:00
b08c2c745f module: remove :ui hydra
This module has been deprecated for some time because it is too
trivially small, and it's always been unclear how hydra fits into Doom's
vision for its UI, but I intend to lean into either transient or Embark
in the future.
2024-07-05 18:03:56 -04:00
d7f5e7033e bump: :ui doom modeline
doomemacs/themes@816fb54d60 -> doomemacs/themes@188ab05eef
seagle0128/doom-modeline@11ae6c193c -> seagle0128/doom-modeline@1505c13564
2024-07-02 20:03:16 -04:00
7761eea6aa fix(spell): initialize ispell fully
Fix: #4483
2024-07-02 02:16:22 -04:00
c91c29c03e refactor(org): remove redundant org-catch-invisible-edits setting
This is already set to 'smart by default, upstream.
2024-07-01 19:01:43 -04:00
321f2d2249 refactor!(org): remove org-yt
BREAKING CHANGE: This removes the org-yt package, which will break
[[yt:...]] links in org, if you're using them. The package is a source
of errors, likely because it hasn't been updated for Org's new element
parsing system.

This package was originally included for eventual use in Doom's
documentation, but it likely won't be used and isn't universally useful
enough to keep in this module by default.

Fix: #7913
Fix: #7317
2024-07-01 18:21:35 -04:00
481753bd5e refactor!: remove pcre2el package
BREAKING CHANGE: This removes the pcre2el package, which Doom was using
solely for one function to escape PCREs. In the interest of thinning out
Doom's core, I've hoisted a simpler version of the function into Doom's
stdlib so I can remove the dependency.
2024-07-01 18:11:34 -04:00
f9dfb7e92a tweak(treemacs): use treemacs-add-and-display-current-project-exclusively
Folks seem to expect to *only* see the current project in the treemacs
pane when they open it. I sort of agree, so I've tweaked
+treemacs/toggle (on SPC o p) to use
`treemacs-add-and-display-current-project-exclusively` instead.

Fix: #7614
2024-07-01 18:10:06 -04:00
5da8304c46 fix(python): wrong-number-of-args error for eglot users
eglot-server-initialized-hook passes one argument to its hooks.

Amend: d14ddbf694
Ref: #7823
2024-07-01 03:35:35 -04:00
25d0b4065f dev: format CODEOWNERS with more whitespace
Affects the result of 'doom make codeowners'
2024-07-01 03:35:35 -04:00
39ee7129ef refactor(evil): remove unneeded advice
This was resolved upstream.

Fix: #2493
Ref: emacs-evil/evil#1268
2024-06-30 22:20:39 -04:00
91156dbaeb dev: update CODEOWNERS 2024-06-30 22:20:39 -04:00
27539e225e module: remove :tools taskrunner
This module has been deprecated for some time, because the module is
much too trivial to warrant being its own module. At most, it may find a
new home in doomemacs/modules-contrib, but for now, it doesn't belong in
the official module library.
2024-06-30 21:58:09 -04:00