Commit Graph

54 Commits

Author SHA1 Message Date
951df2dbee bump: :completion
LuigiPiucco/nerd-icons-corfu@13166345b2 -> LuigiPiucco/nerd-icons-corfu@55b17ee20a
abo-abo/swiper@db61f55bc2 -> abo-abo/swiper@e33b028ed4
emacs-helm/helm@c0b70dbc26 -> emacs-helm/helm@f948dc4464
minad/cape@2e86b6deed -> minad/cape@f72ebcaeff
minad/consult@d557305b73 -> minad/consult@f94d557807
minad/corfu@c302b0526a -> minad/corfu@061d926d0f
minad/marginalia@a527fb03b7 -> minad/marginalia@c51fd9e4d4
minad/vertico@026a81a9c8 -> minad/vertico@e0bb699ebf
oantolin/orderless@c7cb04499d -> oantolin/orderless@254f241248
2025-04-01 15:50:03 -04:00
d775ed822c fix(corfu): void-variable local-map error
Amend: #8262
2025-04-01 00:47:32 -04:00
0d1c8942db fix(corfu): fix default minibuffer completion
After setting +corfu-want-minibuffer-completion to t, I noticed that it
Corfu was still being enabled in Consult when finding files. This change
fixes that by ensuring that Corfu gets disabled in the minibuffer
whenever another completion framework is active.
2025-04-01 00:16:03 -04:00
52183d717d fix(corfu): void-variable cape-file-prefix error
Amend: 2eca701615
Ref: #6289
2025-03-31 09:31:07 -04:00
00d624d66a tweak(corfu): completions-first-difference: don't nullify :inherit
This should be left to themes to address, not our defaults.
2025-03-31 09:31:07 -04:00
74817a6f25 nit(corfu): revise comments, grammar, and formatting 2025-03-31 09:31:07 -04:00
f3165c1c5b fix(corfu): corfu-terminal for daemon users
Since this package disables no-op's itself when not in the terminal,
it's safe to keep on in GUI sessions.
2025-03-31 09:31:06 -04:00
dfe5b8d4e9 refactor(corfu): conform to conventions 2025-03-31 00:59:25 -04:00
2eca701615 fix(corfu): trigger cape-file on { in latex buffers
Fix: #6289
2025-03-31 00:59:25 -04:00
c95015d706 bump: :completion
LuigiPiucco/nerd-icons-corfu@0a932e89cf -> LuigiPiucco/nerd-icons-corfu@13166345b2
abo-abo/swiper@abb9e1e564 -> abo-abo/swiper@db61f55bc2
company-mode/company-mode@5bb6f6d3d4 -> company-mode/company-mode@8d599ebc8a
elken/yasnippet-capf@4c2e33d70c -> elken/yasnippet-capf@de6446732b
emacs-helm/helm-org@9b7d5d4fd1 -> emacs-helm/helm-org@22d60952f8
emacs-helm/helm@cf557ff745 -> emacs-helm/helm@c0b70dbc26
karthink/consult-dir@6cb46395df -> karthink/consult-dir@4532b8d215
minad/cape@50fdb70807 -> minad/cape@2e86b6deed
minad/consult@ce38dd0377 -> minad/consult@d557305b73
minad/vertico@ac82acf177 -> minad/vertico@026a81a9c8
seagle0128/nerd-icons-ivy-rich@86a896bb48 -> seagle0128/nerd-icons-ivy-rich@5006f91b49
2025-03-13 01:08:08 -04:00
ffc5c60721 bump: :completion
LuigiPiucco/nerd-icons-corfu@7077bb76fe -> LuigiPiucco/nerd-icons-corfu@0a932e89cf
abo-abo/swiper@8dc02d5b72 -> abo-abo/swiper@abb9e1e564
bbatsov/helm-projectile@e2e38825c9 -> bbatsov/helm-projectile@041076e35a
company-mode/company-mode@e1d331a64e -> company-mode/company-mode@5bb6f6d3d4
emacs-helm/helm-descbinds@ca03f02da4 -> emacs-helm/helm-descbinds@c12bc85ef3
emacs-helm/helm-org@c80e53315c -> emacs-helm/helm-org@9b7d5d4fd1
emacs-helm/helm@06e0cf0148 -> emacs-helm/helm@cf557ff745
karthink/consult-dir@15891383f3 -> karthink/consult-dir@6cb46395df
mhayashi1120/Emacs-wgrep@208b9d01cf -> mhayashi1120/Emacs-wgrep@49f09ab9b7
minad/cape@9110956a51 -> minad/cape@50fdb70807
minad/consult-flycheck@3b999ae983 -> minad/consult-flycheck@3bc2141daf
minad/consult@0c3f53916e -> minad/consult@ce38dd0377
minad/corfu@0a616caedf -> minad/corfu@c302b0526a
minad/marginalia@50a51c69f0 -> minad/marginalia@a527fb03b7
minad/vertico@c682ef50e6 -> minad/vertico@ac82acf177
oantolin/embark@19a13e344e -> oantolin/embark@d5df0eff18
oantolin/orderless@49d1fdfb80 -> oantolin/orderless@c7cb04499d
radian-software/prescient.el@2b8a8b4122 -> radian-software/prescient.el@7dd5b53886
rainstormstudio/nerd-icons-completion@426a1d7c29 -> rainstormstudio/nerd-icons-completion@8e5b995eb2
tumashu/ivy-posframe@533a8e368f -> tumashu/ivy-posframe@660c773f55
tumashu/vertico-posframe@2e0e09e5bb -> tumashu/vertico-posframe@c5a8b5f72a

Fix: #8282
2025-02-24 23:40:00 -05:00
037b018cdd feat: add .doommodule files
These optional dotfiles indicate the root of a module or module
group (:lang), and will later contain module metadata. They will also
serve as an alternative to packages.el and doctor.el, and will aide the
parts of the v3.0 module API concerned with resolving the current module
from a path (`doom-module-from-path`), which currently rely too heavily
on parsing path strings.

For now, however, they're simply placeholders.
2024-09-14 20:47:39 -04:00
bd71e16cf4 bump: :completion corfu
minad/corfu@921dd7c97e -> minad/corfu@0a616caedf

Ref: minad/corfu@157b373abc
Fix: #7977
2024-09-04 15:04:21 -04:00
84230a437d fix(corfu): global-corfu-minibuffer predicate not respected
As mentioned in #7977, `global-corfu-modes` overrides any predicate
function in `global-corfu-minibuffer`. This is a stopgap until the issue
is resolved upstream.

Fix: #7977
Close: #8039
Co-authored-by: LemonBreezes <LemonBreezes@users.noreply.github.com>
2024-09-02 16:59:29 -04:00
fb2f79033c fix(corfu): disable corfu-auto in evil replace mode
Ref: 63e9b11280
2024-09-01 14:49:04 -04:00
63e9b11280 feat(corfu): introduce +corfu-inhibit-auto-functions 2024-09-01 14:48:36 -04:00
1ec4bac75e bump: :completion
abo-abo/swiper@2a25a6fb5b -> abo-abo/swiper@8dc02d5b72
company-mode/company-mode@1a0fc12a9c -> company-mode/company-mode@e1d331a64e
elken/yasnippet-capf@744dedb783 -> elken/yasnippet-capf@4c2e33d70c
emacs-helm/helm@f8949afd9b -> emacs-helm/helm@06e0cf0148
minad/cape@f61da109a9 -> minad/cape@9110956a51
minad/consult-flycheck@754f5497d8 -> minad/consult-flycheck@3b999ae983
minad/consult@fe48522800 -> minad/consult@0c3f53916e
minad/corfu@cdc3e13ad3 -> minad/corfu@921dd7c97e
minad/marginalia@da72da4622 -> minad/marginalia@50a51c69f0
minad/vertico@ba650a7ab9 -> minad/vertico@c682ef50e6
oantolin/embark@9c166c4b96 -> oantolin/embark@19a13e344e
oantolin/orderless@53f5204ad3 -> oantolin/orderless@49d1fdfb80
radian-software/prescient.el@0765418e43 -> radian-software/prescient.el@2b8a8b4122
rainstormstudio/nerd-icons-completion@c2db8557a3 -> rainstormstudio/nerd-icons-completion@426a1d7c29

Close: #7977
Co-authored-by: LemonBreezes <LemonBreezes@users.noreply.github.com>
2024-09-01 14:47:09 -04:00
10484dea87 merge: #7750
Close: #7750
2024-08-31 21:31:11 -04:00
5311214f90 tweak(corfu): don't invert evil-complete-all-buffers
And avoid void-variable errors for non-evil users (not that they're
bound for them, but just in case).

Ref: #7748
2024-08-29 01:18:43 -04:00
08f8f57e2f feat(corfu): vim-like C-n/C-p keybinds
In vim/evil, C-n/C-p invokes dabbrev, so we're doing the same, but
powered by cape-dabbrev, falling back to corfu-next/corfu-prev is a
corfu popup is already open.

Close: #7748
Co-authored-by: 45mg <45mg@users.noreply.github.com>
Co-authored-by: LemonBreezes <LemonBreezes@users.noreply.github.com>
2024-08-28 22:43:05 -04:00
4a4a9a1ada feat(corfu): add +corfu/toggle-auto-complete command 2024-08-28 22:26:47 -04:00
d6f5fed4a4 refactor(vertico): dabbrev-ignored-buffer-regexps: simplify 2024-08-26 02:22:53 -04:00
c78e49e862 tweak(corfu): corfu-auto-delay = 0.24
Increase the delay slightly, to stave off slowness with slower backends.
2024-08-20 21:49:41 -04:00
5e2e886b35 nit: comment revision & reformatting 2024-08-15 23:18:47 -04:00
b3ef202451 refactor(corfu): conform to naming conventions 2024-07-13 19:38:20 -04:00
ce84690dc5 feat(evil): vim completion keybinds on C-x
Vim has a set of completion commands bound to the C-x prefix. We had
this for company, but with this commit, we now have them for the corfu
module.
2024-07-13 19:38:20 -04:00
3cb9f17132 merge: pull request #7739 from LemonBreezes/corfu-update-smart-tab
feat(corfu): update smart tab completion
2024-06-30 15:24:52 -04:00
cffb3838ec bump: :completion
abo-abo/swiper@1f88e54990 -> abo-abo/swiper@2a25a6fb5b
company-mode/company-mode@b0a522ac5b -> company-mode/company-mode@1a0fc12a9c
elken/yasnippet-capf@9043f82751 -> elken/yasnippet-capf@744dedb783
emacs-helm/helm@28f62344fe -> emacs-helm/helm@f8949afd9b
karthink/consult-dir@3f5f4b71eb -> karthink/consult-dir@15891383f3
minad/cape@e01e443023 -> minad/cape@f61da109a9
minad/consult@c87b0bf06d -> minad/consult@fe48522800
minad/corfu@35cd5a0f3c -> minad/corfu@cdc3e13ad3
minad/marginalia@3275d1f85c -> minad/marginalia@da72da4622
minad/vertico@68e51fda55 -> minad/vertico@ba650a7ab9
oantolin/embark@d3c9d1b4c8 -> oantolin/embark@9c166c4b96
oantolin/orderless@ac4aeb66f3 -> oantolin/orderless@53f5204ad3
radian-software/prescient.el@c39bf07c56 -> radian-software/prescient.el@0765418e43
seagle0128/nerd-icons-ivy-rich@7197614b27 -> seagle0128/nerd-icons-ivy-rich@86a896bb48

Close: #7862
Fix: #7863
2024-06-20 18:28:12 -04:00
390f5920a2 Merge branch 'master' into corfu-update-smart-tab 2024-04-12 13:45:44 -05:00
cfb860f71a doc(corfu): update troubleshooting section 2024-04-12 13:24:58 -05:00
96e3255c33 nit: reformat+revise comments
Includes minor refactors to appease the byte-compiler or use more
succinct (but equivalent) syntax.
2024-04-09 12:39:51 -04:00
a8d612385f tweak(corfu): update dabbrev-ignore-buffer-modes
The Corfu documentation has been updated to suggest more modes to ignore
with `dabbrev-ignore-buffer-modes`. This commit updates the list of
modes to ignore in `cape-dabbrev` to match the documentation.
2024-04-08 18:59:49 -04:00
f79bb46c9b fix(corfu): prevent void-variable error
Although this error will not be triggered by most people, since
auth-source is loaded by a lot of packages, it can still happen if you
are debugging your configuration (e.g. enabling/disabling modules
one-by-one).
2024-04-06 00:14:09 -04:00
fb96c8df5a refactor(corfu): use hook symbols in add-hook! calls
A common challenge for beginners is distinguishing packages, modes, and
hooks, and since Doom's source code is meant to second as another layer
of documentation, I prefer to be explicit with hook symbols in
`add-hook!` calls (at least, for internal/module use).
2024-04-05 12:06:02 -04:00
52599ab536 bump: :completion
abo-abo/swiper@8c30f4cab5 -> abo-abo/swiper@1f88e54990
company-mode/company-mode@02903bd708 -> company-mode/company-mode@b0a522ac5b
emacs-helm/helm-descbinds@b725159823 -> emacs-helm/helm-descbinds@ca03f02da4
emacs-helm/helm@f34ea6b702 -> emacs-helm/helm@28f62344fe
minad/cape@a397a0c92d -> minad/cape@e01e443023
minad/consult@b48ff6bf05 -> minad/consult@c87b0bf06d
minad/corfu@c1e7b6190b -> minad/corfu@35cd5a0f3c
minad/marginalia@f6fe86b989 -> minad/marginalia@3275d1f85c
minad/vertico@68cbd47589 -> minad/vertico@68e51fda55
oantolin/embark@c93abadc82 -> oantolin/embark@d3c9d1b4c8
oantolin/orderless@dc7a781acf -> oantolin/orderless@ac4aeb66f3
radian-software/prescient.el@4b875be52e -> radian-software/prescient.el@c39bf07c56
sebastiencs/company-box@b6f53e26ad -> sebastiencs/company-box@c4f2e243fb
2024-04-03 17:21:16 -04:00
1598444bd9 docs(corfu): disabling auto-completion
Close: #7749
Co-authored-by: 45mg <45mg@users.noreply.github.com>
2024-04-01 13:34:37 -04:00
97690184af docs(corfu): both option for RET behavior 2024-04-01 14:49:06 +00:00
cfdae2365c feat(corfu): update smart tab completion
This commit updates the smart tab functionality so that:
1. The only functionality checked is for the modules that are enabled.
2. The priority of the TAB behavior is tunable by the user.

This also updates the TAB behavior for the Corfu module to be
`indent-for-tab-command` instead of `completion-at-point` so that users
can use the TAB key to indent their code and navigating Org tables.

We also address #7372 by checking overriding-terminal-local-map, as that
is used by Embark.
2024-04-01 07:55:13 -05:00
b533f5496c tweak(corfu): corfu-auto-delay: 0.1 -> 0.18
At 0.1, Corfu pops up too aggressively and too often, even for fast
typists. This is especially disruptive with slow backends that might
block Emacs. I think 0.18-0.24 is the goldilocks zone, so I'll start
with 0.18, and maybe increase it later.
2024-03-28 16:58:28 -04:00
dd18fa16be feat(corfu): both option for RET behavior
Adds a new value of `+corfu-want-ret-to-confirm` to cover the case where
the user wants to select the candidate as well as perform the normal
behavior of RET.

Also, the logic for RET behavior has been refactored for clarity, and
the variable's documentation has been clarified a little.
2024-03-23 19:28:26 +05:30
a83091469b docs(corfu): debugging cape-dabbrev 2024-03-21 11:29:50 -04:00
2bdeabb0cf refactor(corfu): consolidate +orderless logic without vertico
This tidy ups the corfu module to use the logic when a user enables
corfu +orderless without enabling vertico. Since that's probably a niche
situation, we only specify commit to pin to orderless in the vertico
module so that contributors aren't tripped up with trying to remember to
update orderless in two different code locations. Of course, if this
turns out to be a more popular use-case we can re-evaluate this logic.
2024-03-21 11:29:32 -04:00
7547cdac6d refactor(corfu): remove redundant setting
Upstream, corfu-preview-current is already 'insert by default.
2024-03-19 21:49:23 -04:00
c9c221ca59 fix(corfu): wrong-type-argument characterp error
Corfu doesn't support a nil corfu-separator in general, but
+corfu-smart-sep-toggle-escape, specifically, will throw a characterp
type error if the user hasn't enabled +orderless.
2024-03-19 21:46:31 -04:00
b52d2b2dd0 fix(corfu): ispell: only complain once per session 2024-03-19 21:43:15 -04:00
875cd1aef9 fix(corfu): gate corfu-terminal config
If :completion corfu users don't have :os tty enabled, loading
corfu-terminal will throw an error in TTY Emacs.
2024-03-19 21:42:37 -04:00
f9c0243211 docs(corfu): add @LemonBreezes as co-maintainer
Co-authored-by: StrawberryTea <look@strawberrytea.xyz>
2024-03-19 20:41:50 -03:00
bfb9aabe27 feat(corfu): update minibuffer hints manually
We need this advice to ensure that visual hints are updated before
exiting.
2024-03-19 20:41:50 -03:00
4192c81113 feat(corfu): make minibuffer completion optional 2024-03-19 20:41:50 -03:00
763464afdb feat(corfu): general move-to-minibuffer impl
We previously implemented only consult/vertico as a target for export,
now we have all of them. It was necessary to use case-by-case
conditions, unfortunately, because other UIs have subtle quirks that
prevent a single generalized approach to work.

Ivy is almost compliant, but it needs beg and end to not be markers.

Helm doesn't replace `completion-in-region-function`, it expects to go
around the default `completion--in-region`. It's supposed to add the
advice by itself, but it's very unreliable, so we do the wrapping
manually.

Ido doesn't implement `completion-in-region` and its `completing-read`
is retricted to a list of strings as table, so we use default
`completion--in-region` with no bells or whistles.
2024-03-19 20:41:50 -03:00