Commit graph

12331 commits

Author SHA1 Message Date
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
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
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
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
Eloise Christian
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
Mohammed Abdel Raouf
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
Henrik Lissner
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
Henrik Lissner
dfe9d572a7
docs(format): hacks: mention save-buffer advice 2024-07-08 13:59:16 -04:00
Henrik Lissner
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
Keenan Sanchez
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
Henrik Lissner
6b526b1b47
refactor(format): +format/org-block: make arg optional 2024-07-07 21:48:17 -04:00
Henrik Lissner
f104f10c5b
docs(format): revise README.org
To reflect recent changes and for clarity.
2024-07-07 21:48:17 -04:00
Henrik Lissner
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
Henrik Lissner
cca40c0277
tweak(format): doom-debug-variables: add apheleia-log-debug-info 2024-07-07 21:43:27 -04:00
Henrik Lissner
d648bfda40
docs(format): revise docstrings and comments 2024-07-07 20:41:03 -04:00
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
5e78ed0911
refactor(format): use eglot-server-capable
eglot--server-capable was deprecated.
2024-07-07 14:39:50 -04:00
Henrik Lissner
deb59ca4ad
fix(format): LSP formatters before Apheleia is loaded 2024-07-07 14:39:27 -04:00
Henrik Lissner
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
Chris Rose
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
jman-schief
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
Henrik Lissner
21a427c33b
fix(format): eglot-managed{,-mode}-hook hook 2024-07-06 21:18:34 -04:00
Henrik Lissner
17d4aaace3
fix(format): add lsp functions
Forgot to include these functions in 8072762. Oops.

Amend: 8072762de8
2024-07-06 21:03:12 -04:00
Henrik Lissner
4e795c3a55
tweak(org): use consult-outline instead of imenu
Ref: #7716
2024-07-06 20:40:08 -04:00
Ellis Kenyő
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
b0e16dc243
fix(org): reload org-mode in half-loaded capture buffers
Fix: #5411
2024-07-05 20:10:58 -04:00
Henrik Lissner
7bb5df4cd4
fix(zig): update zls download URL
Fix: #7873
Ref: zigtools/zls#1879
2024-07-05 20:10:58 -04:00
Henrik Lissner
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
StrawberryTea
f44309cb63
fix(default): replace void function +yas-active-p 2024-07-05 18:57:40 -04:00
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
7761eea6aa
fix(spell): initialize ispell fully
Fix: #4483
2024-07-02 02:16:22 -04:00
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
52e5327221
module: remove :app twitter
This module has been deprecated for some time, because our overlord
Elon-sama axed the twitter API.
2024-06-30 21:58:09 -04:00