(defvar-local completions-base-prefix nil)
(defvar-local completions-candidates nil)
+(defvar-local completions-annotations nil)
(defvar-local completions-group-function nil)
(defvar-local completions-category nil)
(defvar-local completions-sort-function nil)
(minibuffer-toggle-exceptional-candidates))))
map)))
+(defvar completions-header-annotations
+ `(:propertize (completions-annotations "@" "-")
+ mouse-face mode-line-highlight
+ help-echo "Toggle annotations"
+ keymap
+ ,(let ((map (make-sparse-keymap)))
+ (define-key map [header-line mouse-2]
+ (lambda (e)
+ (interactive "e")
+ (with-current-buffer
+ (buffer-local-value
+ 'completion-reference-buffer
+ (window-buffer (posn-window (event-end e))))
+ (minibuffer-toggle-completions-annotations))))
+ map)))
+
(defvar completions-header-extra nil)
(dolist (sym '(completions-header-count
completions-header-category
+ completions-header-annotations
completions-header-order
completions-header-restriction
completions-header-action
completions-header-action
completions-header-ignore-case
completions-header-exceptional-candidates
+ completions-header-annotations
(completions-header-extra (" | " completions-header-extra)))
"Header line format of the *Completions* buffer.")
:base-position base-position
:base-prefix base-prefix
:ignore-case completion-ignore-case
+ :annotations minibuffer-completion-annotations
:insert-choice-function
(let ((cprops completion-extra-properties))
(lambda (start end choice)
completion-reference-buffer mainbuf
completions-candidates completions
completions-group-function group-fun
+ completions-annotations (plist-get plist :annotations)
completions-style (plist-get plist :style)
completion-base-position (plist-get plist :base-position)
completions-base-prefix (plist-get plist :base-prefix)