A recent change upstream (see emacsmirror/org-contrib@6e208c87bf)
removed the autoload for adding org-eldoc-load to org-mode-hook, so we
have to add the hook ourselves (the function is still autoloaded,
fortunately).
Also moves org-eldoc config into its own use-package! block.
Fix: #7633
Ref: emacsmirror/org-contrib@6e208c87bf
Change the binding for archiving to `org-archive-subtree-default`, which
is the recommend "catch-all" command in the org manual. The user can
specify the actual command in `org-archive-default-command`. The default
for this variable is `org-archive-subtree`, which we previously used for
the binding, so this commit changes behavior only for users who have set
`org-archive-default-command` explicitly.
The `evil-collection` upgrade is needed due to a recent breaking change
in Corfu's setup and teardown functions. `evil-collection`
`:after`-advised these with `#'evil-normalize-keymaps`, which accepts
only 1 optional argument. This was fine because the functions took no
arguments, but some have been introduced recently. Trying to initiate
completion would now throw a "too many arguments" error, and due to the
partial operation on the keymaps, make Emacs mostly unusable.
Related links:
- 9cebcfedca
- cf1a11912d
- 61a20a5036
- 2eb68ac588
We relied directly on consult for this, meaning it needed the vertico
module. Now, it should defer to the user's choice, including helm, ivy
and ido. Note the convention for this indirection is using the
`completing-read` API, which all such packages implement. This diverges
from Corfu's suggestion of `completion-in-region`, which only vertico
and ivy seem to implement.
An issue when using corfu in the minibuffer was the need for pressing
RET twice, since the first only inserts the completion. This commit
aliviates that by providing C-RET to ignore completion and conclude the
minibuffer immediatelly and S-RET to insert completion then conclude.
Bindings were moved to the `:config default` module and some keys were
adjusted to match Company/other modules. Small formatting issues and
some apparently unintended nestings were corrected as well. The changes
were documented in the README.
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`
Co-authored-by: Liam Hupfer <liam@hpfr.net>
Add various CAPFs from cape:
- `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 `DEL`/`backspace` for `+tng`;
- Smart `RET`;
Add depth to CAPFs, allowing ordering to be adjustable.
Enable in minibuffer.
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;
The `evil-collection` upgrade is needed due to a recent breaking change
in Corfu's setup and teardown functions. `evil-collection`
`:after`-advised these with `#'evil-normalize-keymaps`, which accepts
only 1 optional argument. This was fine because the functions took no
arguments, but some have been introduced recently. Trying to initiate
completion would now throw a "too many arguments" error, and due to the
partial operation on the keymaps, make Emacs mostly unusable.
Related links:
- 9cebcfedca
- cf1a11912d
- 61a20a5036
- 2eb68ac588
We relied directly on consult for this, meaning it needed the vertico
module. Now, it should defer to the user's choice, including helm, ivy
and ido. Note the convention for this indirection is using the
`completing-read` API, which all such packages implement. This diverges
from Corfu's suggestion of `completion-in-region`, which only vertico
and ivy seem to implement.
An issue when using corfu in the minibuffer was the need for pressing
RET twice, since the first only inserts the completion. This commit
aliviates that by providing C-RET to ignore completion and conclude the
minibuffer immediatelly and S-RET to insert completion then conclude.
Bindings were moved to the `:config default` module and some keys were
adjusted to match Company/other modules. Small formatting issues and
some apparently inintended nestings were corrected as well.
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`
Co-authored-by: Liam Hupfer <liam@hpfr.net>
Add various CAPFs from cape:
- `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 `DEL`/`backspace` for `+tng`;
- Smart `RET`;
Add depth to CAPFs, allowing ordering to be adjustable.
Enable in minibuffer.
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;
This was resolved upstream some time ago and is now a source of
errors (void-variable emacsql-sqlite-executable errors) if forge were
ever bumped (which it was, yesterday, in 1a05e2f).
Ref: magit/forge@398ca3a17a
Amend: 1a05e2fa64