Commit graph

19508 commits

Author SHA1 Message Date
Henrik Lissner
4c7aec35ba
fix(cli): envvar injection into bin/doom post-script 2024-09-07 02:42:34 -04:00
Henrik Lissner
61dc1da645
fix(cli): doom.ps1: interpolated variable in error message 2024-09-07 01:20:37 -04:00
Henrik Lissner
f644c4fa6c
feat: add basic android support 2024-09-07 01:06:33 -04:00
Henrik Lissner
8d2cf32fef
feat(cli): add doom.ps1 for Windows users
c9acdb7 removes doom.cmd because it was broken in most cases. This adds
doom.ps1; an alternative script for Windows+Powershell users, which
properly initializes the state it needs. Naturally, it requires
Powershell 3+ be installed on your systems, but it can be invoked from
either cmd.exe or PowerShell.exe.

This is the first powershell script I've ever written, so I expect edge
cases (for one, shell commands passed to `exit!` will need to be guarded
against the environment).

This also requires emacs.exe be your $PATH, however, unless you set
$EMACS to its path first. E.g.

  $env:EMACS = "C:\Program Files\Emacs\emacs-29.4\bin\emacs.exe"

That said, if you use WSL2, you're still far better off using the bash
script (bin/doom).

Ref: c9acdb72a4
2024-09-07 01:05:57 -04:00
Henrik Lissner
9753bfb775
fix: {back,fore}ground-color in subsequent frames
New frames created after the first get initialized with #000000 as their
{back,fore}ground-color parameters, for some reason, making text
unreadable in dark themes.
2024-09-07 01:05:57 -04:00
Henrik Lissner
e0a926dc1e
tweak(indent-guides): default to character method
The bitmap method is slower and not that different, visually, from the
character method.

Fix: #8052
Co-authored-by: nightkr <nightkr@users.noreply.github.com>
2024-09-06 16:15:57 -04:00
Henrik Lissner
79684ade71
fix(latex): run after-compilation-finished hook after Tex-Tex-sentinel
Fix: #8051
2024-09-06 04:46:36 -04:00
Henrik Lissner
fe54aa436c
fix(latex): modes not remapped to auctex modes
Deduced from a comment in 21a252d (where
`TeX-after-compilation-finished-functions` wasn't being triggered
because the user was in latex-mode, instead of LaTeX-mode).

Fix: 21a252d994
2024-09-05 16:01:03 -04:00
Henrik Lissner
6d9a7e9a8f
fix: over-aggressive deactivation of hl-line-mode
`(de?)activate-mark-hook` is triggered a little too often in too many
edge cases where the user isn't interactively selecting a region. One
annoying edge case has non-evil motions used on evil operators
activating but not deactivating the mark (e.g. #8047).

This leaves non-evil users without the nicety of hl-line auto-disabling
itself when the region is active, but I'll revisit that in v3.0, when
most of these package defaults are moved out to modules.

Fix: #8047
2024-09-05 15:30:22 -04:00
Henrik Lissner
45310f1c3e
fix(mu4e): "no such file or directory: ~/.mbsyncrc"
In c647957 "~/.mbsyncrc" was passed to mbsync quoted, preventing ~ from
being expanded into $HOME. Now, I've chosen to omit the whole --config
option if $XDG_CONFIG_HOME/isyncrc isn't present, since mbsync will fall
back to ~/.mbsyncrc on its own.

Amend: c6479574e6
Fix: #8048
2024-09-05 15:30:22 -04:00
Henrik Lissner
03e5f1333c
fix(latex): reorder viewers wrt +latex-viewers
If a viewer already exists in `TeX-view-program-selection`, loading
`+viewer.el` does not change its order because `add-to-list` does
nothing when the item is already in the list.

Close: #8046
Fix: #5275
Co-authored-by: cartoonist <cartoonist@users.noreply.github.com>
2024-09-05 15:30:22 -04:00
Henrik Lissner
1fa1eba5ac
bump: :lang python
emacs-lsp/lsp-pyright@cc6df06aea -> emacs-lsp/lsp-pyright@0c0d72aedd
necaris/conda.el@60e14d1e97 -> necaris/conda.el@ce748a53f9
pythonic-emacs/anaconda-mode@79fa9b4d2b -> pythonic-emacs/anaconda-mode@f900bd7656
pythonic-emacs/company-anaconda@1fe526163c -> pythonic-emacs/company-anaconda@169252fca7
pythonic-emacs/pyenv-mode@de0d750b9c -> pythonic-emacs/pyenv-mode@76787ea44f
wbolster/emacs-python-pytest@9f850e22df -> wbolster/emacs-python-pytest@dcdaec6fe2

- Adds basedpyright support to lsp-pyright; and will prioritize it above
  pyright, if found on your system.

Ref: emacs-lsp/lsp-pyright#101
2024-09-05 15:30:22 -04:00
Henrik Lissner
424b7af45f
fix(mu4e): duplicate "view in browser" actions
These are already present in newer versions of mu4e. By making them
match, `add-to-list` won't add a duplicate.

Fix: #6328
2024-09-05 04:27:20 -04:00
Henrik Lissner
c6479574e6
feat(mu4e): respect XDG for mbsync config file
Support for this was only added in isync 1.5, but this way, users on
older can benefit from it through Emacs.

Ref: cf13630a00/
2024-09-05 04:21:58 -04:00
Henrik Lissner
139591172e
fix(mu4e): add mu4e-debug to doom-debug-variables 2024-09-05 04:21:58 -04:00
Henrik Lissner
5c0211d635
refactor(mu4e): mu4e config
In preparation for all the work I have in store for this module.
2024-09-05 04:21:58 -04:00
Henrik Lissner
60e94479a7
feat(mu4e): add mu4e-compat package
(And remove vestigial ref to mu4e-alert in docs)

Fix: #6906
Fix: #7860
2024-09-05 04:21:57 -04:00
Henrik Lissner
48a6b30f48
refactor(mu4e): replace +mu4e-backend w/ +offlineimap/+mbsync flags
`+mu4e-backend` is now deprecated and will be removed in v3.0.
2024-09-05 04:20:28 -04:00
Henrik Lissner
f3ad08c4cd
refactor(mu4e): org-msg config
- Simplify advice.
- Fix load-order of org-msg and :config (which use-packages' :after
  convolutes).
- Remove dummy functions (and guard where they were formerly relied on;
  this is a stopgap solution though).
2024-09-05 04:20:14 -04:00
Henrik Lissner
200c908315
bump: :email mu4e
jeremy-compostella/org-msg@0b65f0f77a -> jeremy-compostella/org-msg@59e2042e5f

Close: #7770
Ref: jeremy-compostella/org-msg#182
2024-09-05 00:36:52 -04:00
Johannes Maier
0c8dff66de docs(mu4e): update NixOS installation instructions
Recently, the Emacs package 'mu4e' has been moved into a separate
derivation output. Now you need both the 'mu' package (installing the
program) as well as its 'mu4e' output, which adds the Emacs package to
the system.

Ref: ac4f5079f7
2024-09-05 00:36:15 -04:00
Henrik Lissner
a940ac5614
fix(cli): doom install: load $DOOMDIR/cli.el too
In case the user's put some configuration in cli.el that could be
relevant to eventual profile generation.
2024-09-04 15:04:32 -04:00
Henrik Lissner
1a5ff08da4
fix(cli): doom install: bootstrap other profiles if present
Like 'doom sync', have 'doom install' set up the profiles bootloader.
2024-09-04 15:04:32 -04:00
Henrik Lissner
42df7cb9fd
docs(cli): doom install: reformat output
Also simplifies the first-timer "things you should know" snippet after
running 'doom install'.
2024-09-04 15:04:32 -04:00
Henrik Lissner
52c91cc51c
fix(tabs): workspace-scoped buffer lists 2024-09-04 15:04:31 -04:00
Henrik Lissner
2d3f003969
fix(default): removal vestigial drag-stuff config
drag-stuff was removed for evil users in 816db4a, but I forgot to stage
the removal of its use-package! block when I moved it, leaving defunct
keybinds in its wake.

Amend: 816db4a62a
2024-09-04 15:04:31 -04:00
Henrik Lissner
bd71e16cf4
bump: :completion corfu
minad/corfu@921dd7c97e -> minad/corfu@0a616caedf

Ref: minad/corfu@157b373abc
Fix: #7977
2024-09-04 15:04:21 -04:00
Henrik Lissner
559e5b6a96
docs(cli): doom gc: corrections
To reflect changes made to this command when it was renamed 'doom gc'
(from 'doom purge').
2024-09-03 04:04:29 -04:00
Henrik Lissner
5c7f6f5c41
fix(cli): don't native-comp site-files without --aot
Amend: e3fdfee1c5
Ref: #6811
2024-09-03 04:04:22 -04:00
Henrik Lissner
8083d398c5
refactor(tabs): remove unused variable
Hasn't been needed since 4f4718e.

Amend: 4f4718e6d1
2024-09-03 00:46:35 -04:00
Henrik Lissner
84230a437d
fix(corfu): global-corfu-minibuffer predicate not respected
As mentioned in #7977, `global-corfu-modes` overrides any predicate
function in `global-corfu-minibuffer`. This is a stopgap until the issue
is resolved upstream.

Fix: #7977
Close: #8039
Co-authored-by: LemonBreezes <LemonBreezes@users.noreply.github.com>
2024-09-02 16:59:29 -04:00
Henrik Lissner
f81798eb0a
module: undeprecate :editor god
The god-mode package is maintained now.

Amend: 9ada400805
2024-09-02 06:26:23 -04:00
Henrik Lissner
d6bc2b0f19
fix(python): respect $ANACONDA_HOME
Amend: 8f60a1bc46
2024-09-02 01:10:58 -04:00
Henrik Lissner
8f60a1bc46
fix(python): type error on loading conda.el
When conda.el evaluates `conda-anaconda-home's initial value, and none
of `conda-home-candidates` exist on the user's system, `nil` will be
passed to `expand-file-name`, which requires a string argument, thus
throwing a type error, so we've got to set `conda-anaconda-home` to nil
to prevent it, then reinvent the wheel later.

This should be resolved upstream, but conda.el hasn't been updated in
some time...

Fix: #7283
2024-09-02 01:05:53 -04:00
Henrik Lissner
816db4a62a
refactor!(default): drag-stuff: make non-evil only
BREAKING CHANGE: This makes the drag-stuff package and its keybinds only
available to non-evil users. This was done because the package doesn't
bring much value for evil users, where text-objects are more powerful.
Plus, drag-stuff doesn't interact well with visual block or line modes
in evil, rendering drag-stuff-{left,right} not useful enough to warrant
keeping.
2024-09-02 01:05:44 -04:00
Henrik Lissner
86ee153786
refactor(default): move +*-bindings.el loaders into config.el
No need for the extra indirection.
2024-09-01 23:25:51 -04:00
Henrik Lissner
70fd17ebfd
fix(vc): smerge localleader keybinds
The keybinding in 682f151 was being overwritten. I'll simply copy the
keymap into the module, until I can devise a more elegant solution.

Amend: 682f151176
Ref: #5954
2024-09-01 18:25:37 -04:00
Henrik Lissner
295ab7ed3a
feat(org): add "doom +org tangle" command
Introduces a formal bin/doom command for tangling files, to replace the
non-functional bin/org-capture binscript.

Close: #6599
Close: #6267
2024-09-01 17:53:44 -04:00
Henrik Lissner
0d405329fe
fix(literate): improve error handling while tangling
Now emits more informative errors in the case that the user's config.org
doesn't exist or contains no src blocks.

Fix: #6717
2024-09-01 17:29:14 -04:00
Henrik Lissner
682f151176
feat(vc): integrate smerge-mode
Activates smerge-mode if the file contains merge conflict markers. Also
turns binds the localleader to `smerge-mode-map` when it's active.

Also removes an unused leader binding (which will never be set because
:ui hydra was removed in b08c2c7).

Amend: b08c2c745f
Close: #5954
2024-09-01 17:29:14 -04:00
Henrik Lissner
308444d612
fix(literate): detect symlinked literate config files
`file-in-directory-p` already resolves symlinks, but on the off chance
that `+literate-config-file` points to a symlink living in a
non-symlinked directory, this heuristic will fail to realize the current
buffer belongs to your config.

Close: #6704
2024-09-01 17:29:14 -04:00
Henrik Lissner
76f7384621
fix(cli): "void-function: doom-modules-initialize" error
This reference to a function that doesn't exist (yet) snuck into
3bced4d.

Amend: 3bced4dbbe
2024-09-01 17:29:03 -04:00
Henrik Lissner
fb2f79033c
fix(corfu): disable corfu-auto in evil replace mode
Ref: 63e9b11280
2024-09-01 14:49:04 -04:00
Henrik Lissner
63e9b11280
feat(corfu): introduce +corfu-inhibit-auto-functions 2024-09-01 14:48:36 -04:00
Henrik Lissner
1ec4bac75e
bump: :completion
abo-abo/swiper@2a25a6fb5b -> abo-abo/swiper@8dc02d5b72
company-mode/company-mode@1a0fc12a9c -> company-mode/company-mode@e1d331a64e
elken/yasnippet-capf@744dedb783 -> elken/yasnippet-capf@4c2e33d70c
emacs-helm/helm@f8949afd9b -> emacs-helm/helm@06e0cf0148
minad/cape@f61da109a9 -> minad/cape@9110956a51
minad/consult-flycheck@754f5497d8 -> minad/consult-flycheck@3b999ae983
minad/consult@fe48522800 -> minad/consult@0c3f53916e
minad/corfu@cdc3e13ad3 -> minad/corfu@921dd7c97e
minad/marginalia@da72da4622 -> minad/marginalia@50a51c69f0
minad/vertico@ba650a7ab9 -> minad/vertico@c682ef50e6
oantolin/embark@9c166c4b96 -> oantolin/embark@19a13e344e
oantolin/orderless@53f5204ad3 -> oantolin/orderless@49d1fdfb80
radian-software/prescient.el@0765418e43 -> radian-software/prescient.el@2b8a8b4122
rainstormstudio/nerd-icons-completion@c2db8557a3 -> rainstormstudio/nerd-icons-completion@426a1d7c29

Close: #7977
Co-authored-by: LemonBreezes <LemonBreezes@users.noreply.github.com>
2024-09-01 14:47:09 -04:00
Henrik Lissner
3bced4dbbe
refactor(cli): separate cli bootstrap from lib
Eventually, I want to autoload some of this stuff, so that users in
interactive sessions can safely load it without side effects (useful
when writing their own CLIs or editing Doom's source).
2024-09-01 14:45:52 -04:00
Henrik Lissner
d6db88162e
refactor(lib): doom-load 2024-09-01 14:45:52 -04:00
Henrik Lissner
8475d29f3c
refactor: remove redundant set-default-toplevel-value call 2024-09-01 14:45:52 -04:00
Henrik Lissner
515f61295b
nit(cli): revise comments wrt site-run-file loading 2024-09-01 14:45:52 -04:00
Henrik Lissner
2bc6dd2a96
fix(cli): don't load subdirs.el again
Doom loaded subdirs.el's in `load-path`, but doesn't need to. This
normally wasn't an issue because subdirs.el files are typically
idempotent, but there is one case where it isn't: on nixpkgs, with
certain configurations on top of programs.emacs (see
NixOS/nixpkgs#267548), which will cause file-missing errors trying to
load the user's site-lisp afterwards (see #7681).

Ref: NixOS/nixpkgs#267548
Fix: #7681
Amend: 6c0b7e1530
2024-09-01 14:45:52 -04:00