From baf400b736b6ce887876fad459c459a3c97b096a Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Thu, 2 Aug 2018 01:51:50 +0200 Subject: [PATCH] completion/ivy: add ivy-prescient #774 Better fuzzy support versus flx; hopefully faster. Also brings frecency sorting to ivy commands. --- modules/completion/ivy/config.el | 13 +++++++++++++ modules/completion/ivy/packages.el | 1 + 2 files changed, 14 insertions(+) diff --git a/modules/completion/ivy/config.el b/modules/completion/ivy/config.el index 9369efcfc..c85c7e8d2 100644 --- a/modules/completion/ivy/config.el +++ b/modules/completion/ivy/config.el @@ -220,6 +220,19 @@ immediately runs it on the current candidate (ending the ivy session)." (setf (alist-get fn ivy-display-functions-alist) #'ivy-display-function-fallback))) +(def-package! ivy-prescient + :after ivy + :init + (if (featurep! +fuzzy) + (setq prescient-filter-method 'fuzzy) + (setq prescient-filter-method 'regexp + ivy-prescient-retain-classic-highlighting t)) + :config + (setq prescient-save-file (concat doom-cache-dir "presclient-save.el")) + (prescient-persist-mode +1) + (ivy-prescient-mode +1)) + + ;; Used by `counsel-M-x' (setq amx-save-file (concat doom-cache-dir "amx-items")) diff --git a/modules/completion/ivy/packages.el b/modules/completion/ivy/packages.el index 888368ce1..53c383744 100644 --- a/modules/completion/ivy/packages.el +++ b/modules/completion/ivy/packages.el @@ -9,6 +9,7 @@ (package! ivy-hydra) (package! ivy-rich) (package! wgrep) +(package! ivy-prescient) (when (and EMACS26+ (featurep! +childframe)) (package! ivy-posframe))