The flycheck-plantuml is by default configured to always run plantuml
via "java". This only works with a downloaded plantuml. However, I would
prefer to have plantuml installed via my package manager (fedora/dnf).
A locally installed PlantUML executable is already detected by default
for normal use (export/preview), we can also use it for flycheck.
If plantuml is downloaded using plantuml-download-jar, this jar is still
used by default (see setq plantuml-exec-mode), so this should not affect
previous setups.
Suffix ssh-deploy-root-local's path with a trailing slash (to be
consistent with upstream documentation and the example value for
ssh-deploy-root-remote right below it).
Co-authored-by: visika <visika@users.noreply.github.com>
Ref: #7513
According to upstream package emacs-ssh-deploy, the value 0 should
disable the auto-save behavior. As the ssh-deploy-on-explicit-save is
considered true if its value is 0, it triggers the after-save-hook
anyway. This commit fixes the hook so it conforms to upstream
definition:
ssh-deploy-on-explicit-save Enabled automatic uploads on save (integer)
Co-authored-by: visika <visika@users.noreply.github.com>
Close: #7513Fix: #7512
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>
317cea5 assumed Emacs 28, but Doom still tries to support 27.
Attempting to use the undefined emoji script on 27 results in an error.
Prior to 28, emoji are part of the symbol script, which the following
`set-fontset-font` call already handles.
Amend: 317cea5eef
Ref: #7448Fix: #7505
helpful-set-variable-function defaults to setopt if it's available, setq
otherwise. `setopt` is superior for this use case because it uses
custom.el's mechanism for setting variables (thus respecting custom.el's
setters and type checks), however, it is unavailable in Emacs 28 and
earlier (`setopt` was introduced in 29).
Doom defines `setq!`, which is a drop-in replacement for setopt, and is
functional in Emacs 28, so it is the better option here.
Ref: #7527
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;
These are undocumented internal variables for basic platform-specific
fallbacks. Now that doom-symbol-font and doom-emoji-font exist, make
them constant.
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.
Nerd Fonts assign icons to code points in these Unicode Private Use
Areas. `doom-unicode-font` is now available again as a user-defined
fallback of last resort for non-PUA Unicode code points.
Ref: f12c615e4d (overview)