From f9fe4137eab1f2b98724c5237c4cce794bbc3510 Mon Sep 17 00:00:00 2001 From: Martin Polden Date: Thu, 18 May 2023 18:47:18 +0200 Subject: vertico: replace amx, ivy and consult --- lisp/init-amx.el | 12 ------------ lisp/init-counsel.el | 12 ------------ lisp/init-ivy.el | 24 ------------------------ lisp/init-vertico.el | 45 +++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 45 insertions(+), 48 deletions(-) delete mode 100644 lisp/init-amx.el delete mode 100644 lisp/init-counsel.el delete mode 100644 lisp/init-ivy.el create mode 100644 lisp/init-vertico.el (limited to 'lisp') diff --git a/lisp/init-amx.el b/lisp/init-amx.el deleted file mode 100644 index 18b5728..0000000 --- a/lisp/init-amx.el +++ /dev/null @@ -1,12 +0,0 @@ -;;; init-amx.el --- configure a better M-x -*- lexical-binding:t -*- -;;; Commentary: -;;; Code: - -(use-package amx - :ensure t - :config - (amx-mode 1)) - -(provide 'init-amx) - -;;; init-amx.el ends here diff --git a/lisp/init-counsel.el b/lisp/init-counsel.el deleted file mode 100644 index dc081c8..0000000 --- a/lisp/init-counsel.el +++ /dev/null @@ -1,12 +0,0 @@ -;;; init-counsel.el --- improve ivy integration -*- lexical-binding:t -*- -;;; Commentary: -;;; Code: - -(use-package counsel - :ensure t - :bind (("M-x" . counsel-M-x) ;; uses amx when present - ("C-c i" . counsel-imenu))) - -(provide 'init-counsel) - -;;; init-counsel.el ends here diff --git a/lisp/init-ivy.el b/lisp/init-ivy.el deleted file mode 100644 index 55b60b2..0000000 --- a/lisp/init-ivy.el +++ /dev/null @@ -1,24 +0,0 @@ -;;; init-ivy.el --- configure ivy -*- lexical-binding:t -*- -;;; Commentary: -;;; Code: - -;; ivy uses flx sorting if it's installed -(use-package flx - :ensure t) - -(use-package ivy - :ensure t - :diminish ivy-mode - :init - ;; use fuzzy matching by default - (setq ivy-re-builders-alist '((t . ivy--regex-fuzzy))) - - ;; allow selecting literal input - (setq ivy-use-selectable-prompt t) - - :config - (ivy-mode 1)) - -(provide 'init-ivy) - -;;; init-ivy.el ends here 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 -- cgit v1.2.3