Commit graph

1108 commits

Author SHA1 Message Date
Luigi Sartor Piucco
4196f2bc98
Merge branch 'master' into fix-some-bugs 2023-11-26 12:06:02 -03:00
Luigi Sartor Piucco
232c25589f
bump: :completion corfu 2023-11-26 11:59:37 -03:00
Luigi Sartor Piucco
aff7254ad5
feat(corfu, vertico): use equal orderless config
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`
2023-11-26 11:59:37 -03:00
Luigi Sartor Piucco
369bf397d7
tweak(corfu): expand autoload command triggers 2023-11-26 11:59:37 -03:00
Luigi Sartor Piucco
14ea4b0b89
tweak(corfu): place extra CAPFs behind flags 2023-11-26 11:59:37 -03:00
Luigi Sartor Piucco
747ecebd24
fix(corfu): improve keybinding config 2023-11-26 11:59:37 -03:00
StrawberryTea
d526780aef
feat(corfu): more CAPFs and ergonomy changes
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`.
2023-11-26 11:59:37 -03:00
Luigi Sartor Piucco
a5eb58fcf3
feat(corfu): switch to nerd-icons-corfu
This removes the need to vendor the icon code.
2023-11-26 11:59:37 -03:00
Luigi Sartor Piucco
a47da9af71
tweak(corfu): quit corfu on evil quit 2023-11-26 11:59:37 -03:00
Luigi Sartor Piucco
e52b613a69
tweak(corfu): use better binding instead of S- 2023-11-26 11:59:37 -03:00
Liam Hupfer
2ede71b2ae
tweak(corfu): allow corfu-history without savehist
savehist is for persisting history across sessions, but users who
disable savehist can still benefit from session-length Corfu history.
2023-11-26 11:59:36 -03:00
Liam Hupfer
8337dd19a6
perf(corfu): improve lazy loading
`:after y` eagerly loads package x after y loads. Cape and
`yasnippet-capf` define autoloads, so we can defer them until a capf is
actually called.
2023-11-26 11:59:36 -03:00
Luigi Sartor Piucco
720e22a252
docs(corfu): simplify and show how to add capfs 2023-11-26 11:59:36 -03:00
Luigi Sartor Piucco
a794f36e7c
feat(corfu): add snippets
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.
2023-11-26 11:59:36 -03:00
Luigi Sartor Piucco
8748084adf
fix(corfu): pin packages 2023-11-26 11:59:36 -03:00
Luigi Sartor Piucco
dd856e4523
module: add :completion corfu
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;
2023-11-26 11:59:31 -03:00
StrawberryTea
f2562bbb4a feat(corfu): always configure dabbrev & line 2023-11-06 14:50:07 -06:00
StrawberryTea
46ce67aa6d fix(corfu): move orderless config earlier 2023-11-06 14:48:33 -06:00
Luigi Sartor Piucco
a16e544c7a
bump: :completion corfu 2023-10-31 21:54:50 -03:00
Luigi Sartor Piucco
fc15f169da
feat(corfu, vertico): use equal orderless config
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`
2023-10-31 21:50:14 -03:00
Luigi Sartor Piucco
3d41c07370
tweak(corfu): expand autoload command triggers 2023-10-31 21:50:14 -03:00
Luigi Sartor Piucco
7a4d8572f7
tweak(corfu): place extra CAPFs behind flags 2023-10-31 21:50:10 -03:00
Luigi Sartor Piucco
241b8896da
fix(corfu): improve keybinding config 2023-10-30 21:38:49 -03:00
StrawberryTea
50bdf024ad
feat(corfu): more CAPFs and ergonomy changes
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`.
2023-10-30 16:07:43 -03:00
Luigi Sartor Piucco
61c73c9def
feat(corfu): switch to nerd-icons-corfu
This removes the need to vendor the icon code.
2023-10-15 15:41:37 -03:00
Luigi Sartor Piucco
5c1e1978d5
tweak(corfu): quit corfu on evil quit 2023-10-15 15:41:37 -03:00
Luigi Sartor Piucco
61c3b74231
tweak(corfu): use better binding instead of S- 2023-10-15 15:41:37 -03:00
Liam Hupfer
4d118ff01e
tweak(corfu): allow corfu-history without savehist
savehist is for persisting history across sessions, but users who
disable savehist can still benefit from session-length Corfu history.
2023-10-15 15:41:37 -03:00
Liam Hupfer
2d62db15c4
perf(corfu): improve lazy loading
`:after y` eagerly loads package x after y loads. Cape and
`yasnippet-capf` define autoloads, so we can defer them until a capf is
actually called.
2023-10-15 15:41:37 -03:00
Luigi Sartor Piucco
bc00a49475
docs(corfu): simplify and show how to add capfs 2023-10-15 15:41:37 -03:00
Luigi Sartor Piucco
787d040ba6
feat(corfu): add snippets
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.
2023-10-15 15:41:37 -03:00
Luigi Sartor Piucco
85f4c58a3c
fix(corfu): pin packages 2023-10-15 15:41:34 -03:00
Luigi Sartor Piucco
5e542af186
module: add :completion corfu
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;
2023-10-15 15:00:40 -03:00
Liam Hupfer
2497d58e9a fix(vertico): ensure recentf-mode for consult-buffer
`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
2023-10-05 17:42:55 +02:00
Henrik Lissner
88bb045388
docs(*): replace all-the-icons with nerd-icons
Also colorizes the leading icon in notices.
2023-09-16 20:19:11 +02:00
Henrik Lissner
c5d4f818d1
fix(ivy): void-function nerd-icons-ivy-rich-mode error
Amend: 9787022b83
2023-09-14 01:11:05 +02:00
Henrik Lissner
aa49edc216
docs(helm,ivy,vertico,ido): add incompatibility checks
These modules tend to conflict if more than one of them are enabled at
once. More systematic compatibility tests are in the works, but for now
this will do.
2023-09-14 01:04:08 +02:00
Ellis Kenyő
9787022b83
refactor!: replace all-the-icons with nerd-icons
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: #7368
Close: #6675
Close: #7364
2023-09-14 01:03:55 +02:00
Henrik Lissner
f427c8a30e
tweak: scroll-conservatively = 10
Forces the window to recenter if the cursor moves >=10 lines off-screen.
This makes some of our manual recentering elsewhere unnecessary.
2023-09-11 23:53:36 +02:00
Ellis Kenyő
5be4517bca
refactor(vertico): consult-dir: drop dependence on docker-tramp
Removes the dependence on docker-tramp, can later be cleaned up with
`tramp-container--completion-function` when we drop support for <29.
2023-09-07 20:18:12 +02:00
Liam Hupfer
3d82e3d46d fix(vertico): gate which-key integration
This prevents an error for users disabling which-key.
2023-09-02 11:46:42 -05:00
Jeetaditya Chatterjee
4696f0d4ce
tweak(syntax): feat gate flycheck in all modules 2023-07-25 00:11:09 +01:00
Henrik Lissner
a82163cb99
bump: :completion ivy
DarwinAwardWinner/amx@37f9c7ae55 -> DarwinAwardWinner/amx@5b3aa1aae8
Yevgnen/ivy-rich@600b8183ed -> Yevgnen/ivy-rich@aff9b6bd53
abo-abo/swiper@b8be4913a6 -> abo-abo/swiper@9d630d800e
mhayashi1120/Emacs-wgrep@edf768732a -> mhayashi1120/Emacs-wgrep@3132abd375
radian-software/prescient.el@35cf5d3613 -> radian-software/prescient.el@d7cc55dad4

Close: #7173
Co-authored-by: notevenaperson <notevenaperson@users.noreply.github.com>
2023-07-22 17:57:25 +02:00
Itai Y. Efrat
0f843535be bump: :completion vertico
iyefrat/all-the-icons-completion@b08f053cee -> iyefrat/all-the-icons-completion@8eb3e410d6
minad/consult-flycheck@fda630411a -> minad/consult-flycheck@3f2a7c17cc
minad/consult@511d8c0b07 -> minad/consult@fe49dedd71
minad/marginalia@b900ec5457 -> minad/marginalia@866e50aee4
minad/vertico@926234ab3f -> minad/vertico@a28370d07f
oantolin/embark@9b17d9a63b -> oantolin/embark@9a44418c34
2023-07-22 16:29:54 +02:00
Itai Y. Efrat
07fca78615 bump: :completion vertico compat
emacs-compat/compat@7775c31857 -> emacs-compat/compat@be1d94d5e0
mhayashi1120/Emacs-wgrep@edf768732a -> mhayashi1120/Emacs-wgrep@3132abd375
minad/consult-flycheck@c371996c57 -> minad/consult-flycheck@fda630411a
minad/consult@052399ed05 -> minad/consult@511d8c0b07
minad/marginalia@2633b2dee2 -> minad/marginalia@b900ec5457
minad/vertico@b6b8420d29 -> minad/vertico@926234ab3f
oantolin/embark@3ffb27a833 -> oantolin/embark@9b17d9a63b
2023-05-30 19:39:04 -04:00
Henrik Lissner
4e105a95af
refactor(vertico): take evil keybinds from :config default 2023-03-22 18:29:38 -04:00
Benedikt Broich
890f200b41
feat(vertico): bind C-h/C-l to enter-or-preview/move up
Close: #7001
Ref: #6853
2023-03-22 17:57:38 -04:00
Itai Y. Efrat
e5dbd4e8b1 bump: :completion vertico compat
iyefrat/all-the-icons-completion@4da28584a1 -> iyefrat/all-the-icons-completion@b08f053cee
minad/consult@ffaaf6da90 -> minad/consult@052399ed05
minad/marginalia@ccf573e214 -> minad/marginalia@2633b2dee2
minad/vertico@6f22ff1298 -> minad/vertico@b6b8420d29
oantolin/embark@5497a19eef -> oantolin/embark@3ffb27a833
oantolin/orderless@d09aab3795 -> oantolin/orderless@e678402671
tumashu/vertico-posframe@f57b170b43 -> tumashu/vertico-posframe@7da6d648ff
emacs-compat/compat@38280a7b54 -> emacs-compat/compat@7775c31857

---

consult--grep added support for searching in multiple directories, so we
can drop the advice in `doom--help-search`. The other changes just adapt
to upstream API changes.
2023-03-22 16:35:07 -04:00
Anh T Nguyen
22097b5a75 fix(company): hook company-abort when +childframe enabled 2023-03-20 18:55:17 -04:00
Henrik Lissner
b4034a590b
docs(helm): revise and expand
- Added links to external documentation.
- Added commands for key bindings (especially useful for non-Evil users).
- Documented configuration for helm-mode and treemacs icons.

Close: #6676
Co-authored-by: johanwiden <johanwiden@users.noreply.github.com>
2023-02-23 22:54:02 -05:00