The -D short flag was not being omitted during restart, causing an
infinite loop when using `doom sync -D`. Only --debug was added to the
omit list, but -D also triggers debug? and needs to be removed.
+dired/dirvish-side-and-follow was referring to several private dirvish
functions that no longer exist. Because dirvish-side--auto-jump no
longer sets a timer before running, we can now just call
dirvish-side--auto-jump directly instead of copying from its body.
Add `doom/toggle-scratch-buffer` and `doom/toggle-project-scratch-buffer`
commands that toggle scratch buffer visibility, consistent with how
`SPC o t` toggles the terminal popup.
Also extract mode determination logic into `doom--scratch-buffer-initial-mode`
helper to ensure toggle commands respect `doom-scratch-initial-major-mode`
configuration (including mode inheritance when set to `t`).
Keybindings updated to use toggle variants:
- `SPC x` (evil) / `C-c f x` (emacs) for scratch buffer
- `SPC p x` (evil) / `C-c p x` (emacs) for project scratch buffer
Fix: #8604
The choice of ligatures seems quite arbitrary, sometimes wrong
(there's no return in Elixir), and perhaps too much opinionated for a
default config. They also change the text in comments and docstrings,
making them much less readable.
Make the resulting auto-save files easier to recognize when perused by
hand (in case of a fatal data loss and recovery situation), by prefixing
the hashed autosave file with the target file name.
Also updates the explanatory comment above it to better explain the
purpose of these defaults.
Also uses file-name-concat in case auto-save-list-file-prefix doesn't
end in a slash.
This doesn't actually change anything yet, unless you're using Doom's
profiles, but this data should be associated with and stored in the
current profile, rather than in the global store.
Tramp users get bombarded with these prompts because diff-hl exploits
`make-auto-save-file-name` to generate paths to its temp files *and*
writes them to `temporary-file-directory`, which
`tramp-handle-make-auto-save-file-name` doesn't like.
This functionality was upstreamed to Emacs in 28, given the appropriate
`auto-save-file-name-transforms` rule whose UNIQUIFY argument names a
`secure-hash` algorithm (e.g. sha1), so we no longer need our cludge.
This also fixes an issue where TRAMP was saving its auto-save files to
the current working directory, rather than `tramp-auto-save-directory`.
Fix: doomemacs/community#53
Doom core will always support 27.x (for CLI/noninteractive use), but
string-empty-p was in subr-x up until 28, which isn't worth loading this
early in the startup process.
Allows:
(set-formatter! 'ruff :modes '(python-mode python-ts-mode))
Prior to this, you'd have to supply the whole definition to assign an
existing formatter to new modes.
MacOS especially seems to struggle with either async process management
or low timer delays, and diff-hl tends to spin up many async `git`
processes frequently, potentially causing freezes or intense typing
delays for Mac users.
Ref: #8554
There are some cases where the upgrade process will abort (due to
failure or user input), and it then runs `doom sync` anyway. Don't do
that.
Fix: #8595