feat(editor): switch to vertico+orderless from selectrum+prescient

Personally I find orderless is giving me better results than prescient
when fuzzy/flex matching is enabled. Hence the switch to orderless.

I also split the modules apart to ensure, that selectrum, vertico,
prescient and orderless can be mixed and matched however and work
correctly.

And the switch from to vertico from selectrum is mostly cause I like
it's wraparound/cycle feature, where end/beginning of the candidate list
will wrap around.
This commit is contained in:
2021-06-24 22:39:17 +01:00
parent cb1296ed9c
commit 0e6a7b6290
8 changed files with 54 additions and 22 deletions

View File

@@ -36,7 +36,6 @@
(require 'siren-minions)
(require 'siren-mwim)
(require 'siren-rainbow)
(require 'siren-selectrum)
(require 'siren-recentf)
(require 'siren-savehist)
(require 'siren-undo-tree)
@@ -44,6 +43,10 @@
(require 'siren-uniquify)
(require 'siren-which-key)
;; Completion Systems and Interfaces
(require 'siren-vertico)
(require 'siren-orderless)
;; Linting
(require 'siren-flycheck)

View File

@@ -0,0 +1,20 @@
;;; siren-company-prescient.el --- jimeh's Emacs Siren: company-prescient configuration.
;;; Commentary:
;; Basic configuration for company-prescient.
;;; Code:
(require 'siren-company)
(require 'siren-prescient)
(use-package company-prescient
:defer t
:after (prescient company)
:config
(company-prescient-mode +1))
(provide 'siren-company-prescient)
;;; siren-company-prescient.el ends here

View File

@@ -14,7 +14,12 @@
orderless-prefixes
orderless-regexp
orderless-initialism
orderless-flex)))
orderless-flex))
:init
(with-eval-after-load 'selectrum
(setq selectrum-refine-candidates-function #'orderless-filter)
(setq selectrum-highlight-candidates-function #'orderless-highlight-matches)))
(provide 'siren-orderless)
;;; siren-orderless.el ends here

View File

@@ -19,12 +19,5 @@
:config
(prescient-persist-mode +1))
(use-package company-prescient
:defer t
:after (prescient company)
:config
(company-prescient-mode +1))
(provide 'siren-prescient)
;;; siren-prescient.el ends here

View File

@@ -0,0 +1,19 @@
;;; siren-selectrum-prescient.el --- jimeh's Emacs Siren: selectrum-prescient configuration.
;;; Commentary:
;; Basic configuration for selectrum-prescient.
;;; Code:
(require 'siren-prescient)
(require 'siren-selectrum)
(use-package selectrum-prescient
:after (selectrum)
:config
(selectrum-prescient-mode +1))
(provide 'siren-selectrum-prescient)
;;; siren-selectrum-prescient.el ends here

View File

@@ -6,8 +6,6 @@
;;; Code:
(require 'siren-prescient)
(use-package selectrum
:custom
(selectrum-display-action nil)
@@ -18,11 +16,5 @@
:config
(selectrum-mode +1))
(use-package selectrum-prescient
:after (selectrum)
:config
(selectrum-prescient-mode +1))
(provide 'siren-selectrum)
;;; siren-selectrum.el ends here

View File

@@ -6,15 +6,15 @@
;;; Code:
(require 'siren-orderless)
(use-package vertico
:custom
(enable-recursive-minibuffers t)
(resize-mini-windows nil)
(vertico-count 12)
(vertico-cycle t)
(enable-recursive-minibuffers t)
(resize-mini-windows nil)
:init
(defun siren-crm-indicator (args)
(cons (concat "[CRM] " (car args)) (cdr args)))

View File

@@ -127,6 +127,7 @@
("ob-go" . "2067ed55f4c1d33a43cb3f6948609d240a8915f5")
("ob-http" . "b1428ea2a63bcb510e7382a1bf5fe82b19c104a7")
("ob-mermaid" . "cca09b64eff689d8bb15a77de9d4c7fe9845a1f9")
("orderless" . "2646dad28c0819fbe9ee521d39efb9ae40e03982")
("osx-trash" . "af74a2055a15bf4182d8196600f7decd66eec634")
("ox-gfm" . "99f93011b069e02b37c9660b8fcb45dab086a07f")
("ox-pandoc" . "aa37dc7e94213d4ebedb85c384c1ba35007da18e")
@@ -140,7 +141,6 @@
("popup-el" . "866a091b83369873b4d1c5d62a590fbb0a150bd0")
("posframe" . "3257a52e3599bc1d5c9a4b646d36d7a49b0dd025")
("powerline" . "cfba2aa9cfa190e7720900f01a946e1e78aac7e2")
("prescient.el" . "4a0f5405798cfcb98ea005078ef2e2d490e922c4")
("prettier-emacs" . "e9b73e81d3e1642aec682195f127a42dfb0b5774")
("projectile" . "155fdb44176347c9599357c7935993033260a930")
("queue" . "130c2d656cd5d7376552272fab9e50a7c37d0c4a")
@@ -163,7 +163,6 @@
("sass-mode" . "247a0d4b509f10b28e4687cd8763492bca03599b")
("scss-mode" . "cf58dbec5394280503eb5502938f3b5445d1b53d")
("seeing-is-believing" . "fbbe246c0fda87bb26227bb826eebadb418a220f")
("selectrum" . "a19bbe94de492bf504399c093cfc5695eb630fa8")
("shell-pop-el" . "4b4394037940a890a313d715d203d9ead2d156a6")
("shrink-path.el" . "c14882c8599aec79a6e8ef2d06454254bb3e1e41")
("smart-shift" . "a26ab2b240137e62ec4bce1698ed9c5f7b6d13ae")
@@ -187,6 +186,7 @@
("undohist" . "56c6f58873f8ebb743e4dc5aff143744720375bd")
("use-package" . "a7422fb8ab1baee19adb2717b5b47b9c3812a84c")
("uuidgen-el" . "b50e6fef2de4199a8f207b46588c2cb3890ddd85")
("vertico" . "13d1ca5ff3fae3009adb0c62bc7f166e58d595b5")
("vue-html-mode" . "1514939804bad558584feeb6298b38d22eadf64e")
("vue-mode" . "031edd1f97db6e7d8d6c295c0e6d58dd128b9e71")
("web-beautify" . "e1b45321d8c11b404b12c8e55afe55eaa7c84ee9")