diff options
author | David Morgan <djm_uk@protonmail.com> | 2022-09-16 12:35:05 +0100 |
---|---|---|
committer | David Morgan <djm_uk@protonmail.com> | 2022-09-16 12:35:05 +0100 |
commit | e18c8297b99cae5c9639eaf4dc6c4efb37cf8743 (patch) | |
tree | f8354c7e0832b045fc3f3ee136f5027df590d552 | |
parent | fbae1e4c5ae7bb049aa25139e602d25600487649 (diff) | |
download | dotfiles-e18c8297b99cae5c9639eaf4dc6c4efb37cf8743.tar.gz |
Add orderless-strict-initialism
-rw-r--r-- | .emacs.d/lisp/init-completion.el | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/.emacs.d/lisp/init-completion.el b/.emacs.d/lisp/init-completion.el index 3407905..b03c391 100644 --- a/.emacs.d/lisp/init-completion.el +++ b/.emacs.d/lisp/init-completion.el @@ -67,14 +67,22 @@ (setq-local orderless-matching-styles '(orderless-literal) orderless-style-dispatchers nil)) :config - (defun orderless-strict-leading-initialism (component) + (defun orderless-strict-initialism (component &optional leading) "Match a component as a strict leading initialism. This means the characters in COMPONENT must occur in the candidate, in that order, at the beginning of words, with -no words in between, beginning with the first word." +no words in between. If LEADING is non-nil, anchor to the +first word." (orderless--separated-by '(seq (zero-or-more word) (zero-or-more punct)) (cl-loop for char across component collect `(seq word-start ,char)) - '(seq string-start))) + (when leading '(seq buffer-start)))) + + (defun orderless-strict-leading-initialism (component) + "Match a component as a strict leading initialism. +This means the characters in COMPONENT must occur in the +candidate, in that order, at the beginning of words, with +no words in between, beginning with the first word." + (orderless-strict-initialism component t)) ;; Recognizes the following patterns: ;; * ~flex flex~ |