The `eglot-events-buffer-size` setting disables the `eglot-events-buffer`
when 0, enabling more consistent performance on long running emacs
instance.
Default is 2000000 lines. After each new event the events buffer
is pretty printed as a whole, which causes steady performance decrease
over time.
Quite a bit of CPU is spent on pretty priting and Emacs GC is put under
high pressure.
This new default makes eshell-prompt-regexp's consumers a little less
susceptible to false positives in garbage/process output and a little
more resistant to user changes to eshell-prompt-function. It's also
closer to its default value (KISS).
Sometimes, `org-reveal` is called in the wrong buffer which throws an
error. For example, `org-link-open-from-string` creates an temporary
org-mode buffer that gets killed very quickly which means that
`org-reveal` gets called in a different buffer. I have also had issues
with org-reveal getting called in the org-roam buffer, which is why this
commit also saves the buffer it was called in.
Co-authored-by: Leo Okawa Ericson <git@relevant-information.com>
This removes the old `&` separator for Vertico (does anyone use that
instead of just space?) in favor of escapable space and unifies
orderless config with Corfu. Also implements smart separator
insert/escape/reset on `C-SPC`
Add various CAPFs from cape:
- `cape-line`;
- `cape-dabbrev`;
- `cape-emoji`;
- `cape-dict`;
Fixed some CAPFs via cape:
- Make non-exclusive, purified and silent `pcomplete-completions-at-point`;
- Make non-exclusive and non-interruptable `lsp-completion-at-point`;
- Make non-exclusive `eglot-completion-at-point`;
- Make non-exclusive `comint-completion-at-point`;
Fix and improve keybindings:
- Smart `backspace` for `+tng`;
- Smart `DEL` for `+tng`;
- Smart `SPC` which quits if after separator;
- Smart `RET`;
Add depth to CAPFs, allowing ordering to be adjustable.
Remove the `+corfu-completion-styles` mechanism.
Add `,` as additional separator.
Enable in minibuffer.
Bump `cape`.
Yasnippet is now properly integrated! A previosly-unset default has now
been given to `corfu-on-exact-match`. With snippets, it causes immediate
expansion upon single match by default, so we set it to nil and
recommend against changing it in the README.
This commit's primary goal is allowing use of
[minad/corfu](https://github.com/minad/corfu) as an alternative to
[company](https://github.com/company-mode/company-mode). It introduces a
module under :completion for this purpose, plus some conditionals on
other relevant modules to toggle functionality like lsp back-ends and
[minad/cape](https://github.com/minad/cape) capfs for certain modes.
Other optional or miscellaneous features include:
- Support for displaying the completion's documentation on a secondary
popup;
- Support for terminal display if :os tty;
- Support for icons if +icons;
- Support for tab-and-go completion if +tng;
No font supports all of Unicode or anywhere near it. It’s not even
really possible with current font formats. Therefore, rename
`doom-unicode-font` to `doom-symbol-font`. Only set it as a fallback for
characters in the `symbol` and `mathematical` scripts.
Previously, this was a bit confusing and didn't look quite right.
Instead, just pad the space in the temp buffer instead of fontifying it
into a button.
When invoking `rustic-cargo-run` a buffer called `*cargo-run*` is
opened. This adds a rule such that this buffer opens in a popup window
that is the same as the popup windows for other rustic cargo commands.
Ref: #2623
`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
Eager expansion of the flycheck-define-checker macro causes flycheck to
be unavoidably eager-loaded at startup, regardless of other deferral
techniques, slowing down startup considerably, as it pulls in a number
of associated packages/config with it.