feat: Various completion additions

- Add `vertico-mode` keybindings.
- Unmap `C-k` in insert state.
This commit is contained in:
Madeleine Sydney
2025-01-12 18:34:20 -07:00
parent 7683acd80a
commit d3fbc8442b
4 changed files with 64 additions and 1 deletions

View File

@@ -16,12 +16,29 @@
;; technically, it doesn't play well with `evil-terminal-cursor-changer'.
(blink-cursor-mode -1))
;; Consult adds various search and navigation tools using Emacs' completing-read
;; function; i.e., in our case, Vertico.
(use-package consult
:defer t)
;; Vertico is a simple completion engine that replaces Emacs' built-in
;; completion engine, achieving Just Works™ compatibility. This is in contrast
;; to e.g. Helm and Ivy, which spawn ecosystems orthogonal to Emacs, and
;; diametrically-opposed to each other.
(use-package vertico
:hook (on-first-input . vertico-mode))
:hook (on-first-input . vertico-mode)
:general (:keymaps 'vertico-map
"DEL" #'vertico-directory-delete-char
"C-SPC" #'+vertico/embark-preview
"C-j" #'vertico-next
"C-k" #'vertico-previous
"C-M-j" #'vertico-next-group
"C-M-k" #'vertico-previous-group)
:config
(setq-default completion-in-region-function #'consult-completion-in-region)
;; Cleans up path when moving directories with shadowed paths syntax, e.g.
;; cleans ~/foo/bar/// to /, and ~/foo/bar/~/ to ~/.
(add-hook 'rfn-eshadow-update-overlay-hook #'vertico-directory-tidy))
;; Orderless provides a completion style that divides the pattern into
;; space-separated components, and matches candidates that match all of the