diff options
author | Martin Polden <mpolden@mpolden.no> | 2023-05-18 18:47:18 +0200 |
---|---|---|
committer | Martin Polden <mpolden@mpolden.no> | 2023-05-18 21:45:25 +0200 |
commit | f9fe4137eab1f2b98724c5237c4cce794bbc3510 (patch) | |
tree | 3159bc4397a87553d0b851f43b931efb91decf2b /lisp/init-vertico.el | |
parent | a68aec08f47e4200cd5d3c7d81cb220b74a4c3c6 (diff) |
vertico: replace amx, ivy and consult
Diffstat (limited to 'lisp/init-vertico.el')
-rw-r--r-- | lisp/init-vertico.el | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/lisp/init-vertico.el b/lisp/init-vertico.el new file mode 100644 index 0000000..9cea2fd --- /dev/null +++ b/lisp/init-vertico.el @@ -0,0 +1,45 @@ +;;; init-vertico.el --- a better completion ui -*- lexical-binding:t -*- +;;; Commentary: +;;; Code: + +;; save minibuffer history so that vertico can use it for sorting +(use-package savehist + :config + (savehist-mode 1)) + +;; enhanced search and navigation commands +(use-package consult + :ensure t + :bind (("C-c i" . consult-imenu) + ("C-c I" . consult-imenu-multi))) + +;; completion style providing fuzzy matching +(use-package orderless + :ensure t + :init + ;; https://github.com/minad/vertico/blob/c36ad0c9471010a0c160268cc6581edf4959e2d3/README.org#configuration + (setq orderless-matching-styles '(orderless-flex) + completion-styles '(orderless basic) + completion-category-defaults nil + completion-category-overrides '((file (styles partial-completion))))) + +;; a better completion ui +(use-package vertico + :ensure t + :config + (vertico-mode 1)) + +;; make directory navigation behave like ido +;; https://github.com/minad/vertico/blob/c36ad0c9471010a0c160268cc6581edf4959e2d3/README.org#extensions +(use-package vertico-directory + :ensure nil + :after vertico + :bind (:map vertico-map + ("RET" . vertico-directory-enter) + ("DEL" . vertico-directory-delete-char) + ("M-DEL" . vertico-directory-delete-word)) + :hook (rfn-eshadow-update-overlay . vertico-directory-tidy)) + +(provide 'init-vertico) + +;;; init-vertico.el ends here |