[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/vertico c2bfea2 17/48: use candidate returned from affi
From: |
Stefan Monnier |
Subject: |
[elpa] externals/vertico c2bfea2 17/48: use candidate returned from affixation function |
Date: |
Mon, 5 Apr 2021 10:54:42 -0400 (EDT) |
branch: externals/vertico
commit c2bfea267b6748091a77b2f67e06ce22c8ce2423
Author: Daniel Mendler <mail@daniel-mendler.de>
Commit: Daniel Mendler <mail@daniel-mendler.de>
use candidate returned from affixation function
---
minicomp.el | 75 +++++++++++++++++++++++++++++++------------------------------
1 file changed, 38 insertions(+), 37 deletions(-)
diff --git a/minicomp.el b/minicomp.el
index 5e6597e..fdcd4d3 100644
--- a/minicomp.el
+++ b/minicomp.el
@@ -262,48 +262,49 @@
(candidates (seq-subseq minicomp--candidates index
(min (+ index minicomp-count)
minicomp--total)))
- (hl-candidates
- (if (and (memq 'orderless completion-styles)
- (fboundp 'orderless-highlight-matches))
- (orderless-highlight-matches
- (substring input
- (car (completion-boundaries input
minibuffer-completion-table
-
minibuffer-completion-predicate "")))
- candidates)
- candidates))
- (ann-candidates (minicomp--annotate metadata candidates))
+ (ann-candidates
+ (minicomp--annotate
+ metadata
+ (if (and (memq 'orderless completion-styles)
+ (fboundp 'orderless-highlight-matches))
+ (orderless-highlight-matches
+ (substring input
+ (car (completion-boundaries input
minibuffer-completion-table
+
minibuffer-completion-predicate "")))
+ candidates)
+ candidates)))
(title nil)
- (displayed (concat " " (and hl-candidates "\n")))
+ (displayed " ")
(group (completion-metadata-get metadata 'x-group-function)))
- (dolist (cand hl-candidates)
- (when-let (new-title (and minicomp-group-format group (caar (funcall
group (list cand)))))
- (unless (equal title new-title)
- (setq displayed (concat displayed (format minicomp-group-format
new-title) "\n")
- title new-title)))
- (setq cand (thread-last cand
- (replace-regexp-in-string "[\t ]+" " ")
- (replace-regexp-in-string "\n+" "⤶")
- (string-trim)
- (minicomp--replace-prop 'display (lambda (x) (if (stringp
x) x "")))
- (minicomp--replace-prop 'invisible (lambda (_) ""))))
- (pcase-let ((`(,prefix . ,suffix) (pcase (car ann-candidates)
- (`(,_ ,y) (cons nil y))
- (`(,x ,_ ,y) (cons x y))
- (_ (cons nil "")))))
+ (dolist (ann-cand ann-candidates)
+ (setq displayed (concat displayed
+ (if (= index (1+ minicomp--index))
+ (propertize "\n" 'face 'minicomp-current)
+ "\n")))
+ (let ((prefix "") (suffix "") (cand))
+ (pcase ann-cand
+ (`(,c ,s) (setq cand c suffix s))
+ (`(,c ,p ,s) (setq cand c prefix p suffix s))
+ (_ (setq cand ann-cand)))
+ (when-let (new-title (and minicomp-group-format group (caar (funcall
group (list cand)))))
+ (unless (equal title new-title)
+ (setq displayed (concat displayed (format minicomp-group-format
new-title) "\n")
+ title new-title)))
+ (setq cand (thread-last cand
+ (replace-regexp-in-string "[\t ]+" " ")
+ (replace-regexp-in-string "\n+" "⤶")
+ (string-trim)
+ (minicomp--replace-prop 'display (lambda (x) (if (stringp
x) x "")))
+ (minicomp--replace-prop 'invisible (lambda (_) ""))))
(setq cand (concat prefix cand
(if (text-property-not-all 0 (length suffix) 'face
nil suffix)
suffix
- (propertize suffix 'face
'completions-annotations)))))
- (when (= index minicomp--index)
- (setq cand (concat cand))
- (add-face-text-property 0 (length cand) 'minicomp-current 'append
cand))
- (setq displayed (concat displayed cand
- (when (cdr ann-candidates)
- (if (= index minicomp--index)
- (propertize "\n" 'face 'minicomp-current)
- "\n")))
- ann-candidates (cdr ann-candidates)
- index (1+ index)))
+ (propertize suffix 'face
'completions-annotations))))
+ (when (= index minicomp--index)
+ (setq cand (concat cand))
+ (add-face-text-property 0 (length cand) 'minicomp-current 'append
cand))
+ (setq displayed (concat displayed cand)
+ index (1+ index))))
(put-text-property 0 1 'cursor t displayed)
(if (and (< minicomp--index 0) (not (minicomp--require-match)))
(add-text-properties (minibuffer-prompt-end) (point-max) '(face
minicomp-current))
- [elpa] externals/vertico 9355d05 01/48: minicomp - initial commit, (continued)
- [elpa] externals/vertico 9355d05 01/48: minicomp - initial commit, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 933e938 06/48: Compute history hash table only once, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico f132f1b 10/48: improve prompt selection, add minicomp--goto, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 9b81d8d 08/48: remove ./ and ../ from file completion candidates, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 5bbddb0 03/48: add while-no-input-ignore-events, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 4ce7c8d 11/48: use seq-subseq, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico f558f53 04/48: extract minicomp--pred, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 9db7c78 20/48: add minicomp-count-format, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 245944a 21/48: remap previous/next-line, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 7fbaeaf 15/48: Add sorting by history for files, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico c2bfea2 17/48: use candidate returned from affixation function,
Stefan Monnier <=
- [elpa] externals/vertico bafee15 19/48: add minicomp-exit-input, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico e8a3e96 16/48: Minor optimization, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 333a0a2 29/48: use chunks for candidate formatting, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 8b760bc 30/48: Fix minicomp--index initialization, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico ed87a60 33/48: Require 27.1, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico c4b3e8b 42/48: Simplify minicomp--flatten-prop, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 99a355c 12/48: abort minibuffer session if while-no-input returns nil, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico f835fb6 14/48: add readme, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 1b75916 18/48: better orderless integration, Stefan Monnier, 2021/04/05
- [elpa] externals/vertico 42823ce 25/48: Use read-char-exclusive to avoid error message, Stefan Monnier, 2021/04/05