diff options
author | jao <jao@gnu.org> | 2022-02-05 05:11:29 +0000 |
---|---|---|
committer | jao <jao@gnu.org> | 2022-02-05 05:11:29 +0000 |
commit | 8d93bf4867ec6c11ee6844b36cd18f8b1b86e249 (patch) | |
tree | 524c7754de20a23ca280988c7d740a4229816e0a /completion.org | |
parent | 653586439de228747fa60abc9e28dc9d901d9bcb (diff) | |
download | elibs-8d93bf4867ec6c11ee6844b36cd18f8b1b86e249.tar.gz elibs-8d93bf4867ec6c11ee6844b36cd18f8b1b86e249.tar.bz2 |
completion: history ordering for *Completions*
Diffstat (limited to 'completion.org')
-rw-r--r-- | completion.org | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/completion.org b/completion.org index f289e4b..10042f4 100644 --- a/completion.org +++ b/completion.org @@ -31,6 +31,22 @@ (command (styles initials substring partial-completion)) (symbol (styles initials substring partial-completion)) (variable (styles initials substring partial-completion)))) + + ;; (setq completions-sort #'jao-completion--sort-by-length-alpha) + (setq completions-sort #'jao-completion--sort-by-history) + + (defun jao-completion--sort-by-alpha-length (elems) + (sort elems (lambda (c1 c2) + (and (string-version-lessp c1 c2) + (< (length c1) (length c2)))))) + + (defun jao-completion--sort-by-history (elems) + (let ((hist (and (not (eq minibuffer-history-variable t)) + (symbol-value minibuffer-history-variable)))) + (if hist + (minibuffer--sort-by-position hist elems) + (jao-completion--sort-by-alpha-length elems)))) + #+end_src * orderless #+begin_src emacs-lisp @@ -77,7 +93,7 @@ ("M-<backspace>" . vertico-directory-delete-word) ("<backspace>" . vertico-directory-delete-char)))) - (vertico-mode) + ;; (vertico-mode) #+end_src * mct @@ -102,7 +118,7 @@ jao-buffer-same-mode vc-retrieve-tag))) - ;; (mct-minibuffer-mode 1) + (mct-minibuffer-mode 1) ;; (mct-region-mode 1) #+end_src |