BREAKING CHANGE: This deprecates the IS-(MAC|WINDOWS|LINUX|BSD) family
of global constants in favor of a native `featurep` check:
IS-MAC -> (featurep :system 'macos)
IS-WINDOWS -> (featurep :system 'windows)
IS-LINUX -> (featurep :system 'linux)
IS-BSD -> (featurep :system 'bsd)
The constants will stick around until the v3 release so folks can still
use it -- and there are still some modules that use it, but I'll phase
those uses out gradually.
Fix: #7479
Currently, fd does not expose a way to match against only the path
components beneath the target path. When --full-path is specified, the
pattern matches against all components. For example, executing
consult-fd from /home/hlissner/.emacs.d with `home` as the query would
match every file (not excluded by other arguments) under .emacs.d.
Despite this --full-path behavior, fd still outputs relative paths, so
the user cannot even determine why some candidates are returned.
Until there is a method to match only against subdirectories, use
--absolute-path to at least to show the user why all matches are
occurring.
Ref: https://github.com/sharkdp/fd/issues/839
`consult-buffer` uses `recentf` to populate file candidates. It is not
uncommon to use `consult-buffer` as a single entry point to buffers,
bookmarks and recent files, effectively replacing `recentf` and
`consult-recent-file`.
To improve startup performance, Doom enables `recentf-mode` after the
first file is opened (0e851ace9b). When executing `consult-buffer` at
startup, `recentf-mode` won’t be enabled yet. Add it to the
`consult-recent-file` advice to ensure that can’t happen.
Unlike `consult-recent-file`, `consult-buffer` does have significant
functionality without `recentf-mode`, but for the tiny fraction of Doom
users that disable `recentf-mode`, this is easy enough to
`advice-remove`.
Fix: https://github.com/doomemacs/doomemacs/issues/7461
BREAKING CHANGE: This commit replaces all-the-icons with nerd-fonts. Any
all-the-icons-* function calls or variable references in your private
config will break and should be replaced with their nerd-icons-*
equivalent. That said, Doom will continue to install all-the-icons for
a while, so feel free to load it if you don't want to fully commit to
the change yet.
This change is happening because nerd-icon has wider support for GUI and
TUI Emacs; has a larger, more consistent selection of symbols; plus unicode
coverage.
Fix: #7368Close: #6675Close: #7364
Redundant with tramp-container, which is used in Emacs 29 and newer.
Ref: #6986
Amend: d41cf4e518
Co-authored-by: elken <elken@users.noreply.github.com>
BREAKING CHANGE: This command is obsolete since 0.20; consult-apropos
has been deprecated in favor of Embark actions: M-x describe-symbol
<regexp> M-x embark-export M-x describe-symbol <regexp> M-x embark-act a
BREAKING CHANGE: remove override of multi-occur with consult-multi-occur
`consult-mulit-occur` is deprecated, and although it does have the
replacement `consult-line-multi`, I don't think that this override makes
much sense, as doom doesn't really touch `multi-occur` anywhere and this
would mostly be suprising to users that do use it.
BREAKING CHANGE: That function is only meant to be used in
the *Completions* buffer, which is only relevant if you're using embark
and consult without vertico. While it doesn't hurt, it's mostly unclear
why it's there in the first place when reading the modules
featurep! will be renamed modulep! in the future, so it's been
deprecated. They have identical interfaces, and can be replaced without
issue.
featurep! was never quite the right name for this macro. It implied that
it had some connection to featurep, which it doesn't (only that it was
similar in purpose; still, Doom modules are not features). To undo such
implications and be consistent with its namespace (and since we're
heading into a storm of breaking changes with the v3 release anyway),
now was the best opportunity to begin the transition.
The precise semantics of use-package's :after keyword is janky (see
jwiegley/use-package#829) and, in the case of 992bd8f7e2, causes
subtle breakage. For one, the remappings in the following :init block
were deferred until embark loaded, so they weren't available at startup,
so they reverted to their old (often vastly inferior) predecessors, like
recentf-open-files instead of consult-recent-files.
Amend: 992bd8f7e2
Currently, embark-consult bindings don't get loaded if consult hasn't
been loaded yet, leading to missing embark actions until the first
manual consult load.
Corfu makes completion-in-region-function a local variable in buffers
where it is enabled, so when this form is evaluated in one of those said
buffers (such as opening a file with Emacs before accessing the
minibuffer), completion-in-region-function will just be set locally
there.
BREAKING CHANGE: `embark-collect-snapshot` has been renamed upstream to
`embark-collect`. Since the `C-s` mnemonic doesn't really make sense
anymore, I've moved the binding to `C-c C-l`, which has the nice bonus
of being next to the similar `C-c C-;`, and being nicer.
The C-c C-s binding mirrors the export and writable export bindings.
embark-export is used for type specific exports (such as buffers to an
ibuffer buffer), not for verbatim exports. This is most noticeable if
you want to export a variable list, which gets you to an apropos buffer.
if you just want a list of things to keep around,
embark-collect-snapshot is the tool for the job, but having it be only
on C-; S makes it harder to reach and less visible. C-c C-s is a nice
visible thing to have around.
BREAKING CHANGE: This commit changes the behaviour of the TAB and RET
keys in a consult-completing read multiple session, in order to make
them more intuitive. The behaviour is now:
- TAB: (unchanged) always select or deselect the current candidate, and
if the candidate is selected, move the index to the next one (this
allows for pressing TAB repeatedly to select multiple subsequent
candidates).
- RET: If no candidates have been selected, select the current candidate
and exit the completion session. If some have been selected, disregard
the current candidate and exit.
- S-TAB: (new) like TAB, but the keeps the input.