From 1378aaead0c1cc60e634972931d4a87b67fdca97 Mon Sep 17 00:00:00 2001 From: jao Date: Tue, 11 Jan 2022 23:48:28 +0000 Subject: completion nits (and why eshell's capf wasn't working) --- completion.org | 101 +++++++++++++++++++++++++++------------------------------ 1 file changed, 48 insertions(+), 53 deletions(-) (limited to 'completion.org') diff --git a/completion.org b/completion.org index d50ac8d..f7c2c1e 100644 --- a/completion.org +++ b/completion.org @@ -31,16 +31,13 @@ (use-package orderless :ensure t :init - (defun jao-orderless--first-initialism (pattern index _total) - (when (and (= index 0) (string-prefix-p "-" pattern)) - `(orderless-strict-full-initialism . ,(substring pattern 1)))) - - (defun jao-orderless--regexp (pattern _index _total) - (when (string-suffix-p "%" pattern) - `(orderless-regexp . ,(substring pattern 0 -1)))) - - (defun jao-orderless--without-if-bang (pattern _index _total) - (cond ((equal "!" pattern) '(orderless-literal . "")) + (defun jao-orderless--dispatch (pattern _index _total) + (cond ((string-suffix-p "-" pattern) + `(orderless-strict-full-initialism . ,(substring pattern 0 -1))) + ((string-suffix-p "%" pattern) + `(orderless-regexp . ,(substring pattern 0 -1))) + ((string-equal "!" pattern) + '(orderless-literal . "")) ((string-prefix-p "!" pattern) `(orderless-without-literal . ,(substring pattern 1))))) @@ -48,10 +45,47 @@ orderless-skip-highlighting nil orderless-component-separator " +" orderless-matching-styles '(orderless-literal orderless-prefixes) - orderless-style-dispatchers '(jao-orderless--first-initialism - jao-orderless--regexp - jao-orderless--without-if-bang))) + orderless-style-dispatchers '(jao-orderless--dispatch))) #+end_src +* mct + #+begin_src emacs-lisp + ;; (jao-load-path "mct") + (use-package mct + :ensure t + :init + (setq mct-remove-shadowed-file-names t + mct-hide-completion-mode-line t + mct-show-completion-line-numbers nil + mct-apply-completion-stripes nil + mct-minimum-input 3 + mct-live-update-delay 0.3 + mct-live-completion t ;; 'visible + mct-completion-blocklist nil + mct-completion-passlist '(imenu + Info-goto-node + Info-index + Info-menu + jao-buffer-same-mode + vc-retrieve-tag))) + (mct-minibuffer-mode 1) + ;; (mct-region-global-mode -1) + + #+end_src +* marginalia + #+begin_src emacs-lisp + (use-package marginalia + :ensure t + :bind (:map minibuffer-local-map ("C-M-a" . marginalia-cycle)) + + :custom ((marginalia-align-offset 1) + (marginalia-margin-threshold 200) + (marginalia-separator-threshold 120) + (marginalia-truncate-width 100) + (marginalia-annotators + '(marginalia-annotators-heavy marginalia-annotators-light nil)))) + + (marginalia-mode 1) + #+end_src * corfu #+begin_src emacs-lisp (use-package corfu @@ -100,45 +134,6 @@ (corfu-global-mode 1) #+end_src -* mct - #+begin_src emacs-lisp - ;; (jao-load-path "mct") - (use-package mct - :ensure t - :init - (setq mct-remove-shadowed-file-names t - mct-hide-completion-mode-line t - mct-show-completion-line-numbers nil - mct-apply-completion-stripes nil - mct-minimum-input 3 - mct-live-update-delay 0.3 - mct-live-completion t ;; 'visible - mct-completion-blocklist nil - mct-completion-passlist '(imenu - Info-goto-node - Info-index - Info-menu - jao-buffer-same-mode - vc-retrieve-tag))) - (mct-minibuffer-mode 1) - ;; (mct-region-global-mode -1) - - #+end_src -* marginalia - #+begin_src emacs-lisp - (use-package marginalia - :ensure t - :bind (:map minibuffer-local-map ("C-M-a" . marginalia-cycle)) - - :custom ((marginalia-align-offset 1) - (marginalia-margin-threshold 200) - (marginalia-separator-threshold 120) - (marginalia-truncate-width 100) - (marginalia-annotators - '(marginalia-annotators-heavy marginalia-annotators-light nil)))) - - (marginalia-mode 1) - #+end_src * consult *** package #+begin_src emacs-lisp @@ -295,7 +290,7 @@ #+end_src * consult dir - #+begin_src emacs-lisp + #+begin_src emacs-lisp :tangle no (use-package consult-dir :ensure t :bind (("C-x C-d" . consult-dir) -- cgit v1.2.3