[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/marginalia 655f03b 035/241: introduce marginalia-annota
From: |
Stefan Monnier |
Subject: |
[elpa] externals/marginalia 655f03b 035/241: introduce marginalia-annotators-(light|heavy), remove marginalia-set-command-annotator |
Date: |
Fri, 28 May 2021 20:48:51 -0400 (EDT) |
branch: externals/marginalia
commit 655f03b0223dcadc30d7a0d9b573239bac22036e
Author: Daniel Mendler <mail@daniel-mendler.de>
Commit: Daniel Mendler <mail@daniel-mendler.de>
introduce marginalia-annotators-(light|heavy), remove
marginalia-set-command-annotator
---
marginalia.el | 36 +++++++++++++++++++-----------------
1 file changed, 19 insertions(+), 17 deletions(-)
diff --git a/marginalia.el b/marginalia.el
index 98b38de..de4ec8d 100644
--- a/marginalia.el
+++ b/marginalia.el
@@ -95,6 +95,15 @@
:group 'marginalia)
(defcustom marginalia-annotators
+ 'marginalia-annotators-light
+ "Associate categories with annotators for minibuffer completion.
+Each annotation function must return a string,
+which is appended to the completion candidate.
+Annotations are only shown if `marginalia-mode' is enabled."
+ :type 'symbol
+ :group 'marginalia)
+
+(defvar marginalia-annotators-light
'((command . marginalia-annotate-command-binding)
(customize-group . marginalia-annotate-customize-group)
(variable . marginalia-annotate-variable)
@@ -102,12 +111,15 @@
(symbol . marginalia-annotate-symbol)
(variable . marginalia-annotate-variable)
(package . marginalia-annotate-package))
- "Associate categories with annotators for minibuffer completion.
-Each annotation function must return a string,
-which is appended to the completion candidate.
-Annotations are only shown if `marginalia-mode' is enabled."
- :type '(alist :key-type symbol :value-type function)
- :group 'marginalia)
+ "Lightweight annotator functions.")
+
+(defvar marginalia-annotators-heavy
+ (append
+ '((file . marginalia-annotate-file)
+ (buffer . marginalia-annotate-buffer)
+ (command . marginalia-annotate-command-full))
+ marginalia-annotators-light)
+ "Heavy annotator functions.")
(defcustom marginalia-classifiers
'(marginalia-classify-by-command-name
@@ -348,7 +360,7 @@ PROP is the property which is looked up."
('annotation-function
(when-let (cat (completion-metadata-get metadata 'category))
;; we do want the advice triggered for completion-metadata-get
- (alist-get cat marginalia-annotators)))
+ (alist-get cat (symbol-value marginalia-annotators))))
('category
(let ((marginalia--original-category (alist-get 'category metadata)))
;; using alist-get in the line above bypasses any advice on
@@ -377,15 +389,5 @@ Remember `this-command' for annotation."
;; Replace the metadata function.
(advice-add #'completion-metadata-get :before-until
#'marginalia--completion-metadata-get)))
-;;;###autoload
-(defun marginalia-set-command-annotator (cmd ann)
- "Configure marginalia so that annotator ANN is used for command CMD."
- (setq marginalia-command-categories
- (cons (cons cmd cmd)
- (assq-delete-all cmd marginalia-command-categories)))
- (setq marginalia-annotators
- (cons (cons cmd ann)
- (assq-delete-all cmd marginalia-annotators))))
-
(provide 'marginalia)
;;; marginalia.el ends here
- [elpa] externals/marginalia e863b6c 007/241: Show key bindings from minibuffer-selected-window, (continued)
- [elpa] externals/marginalia e863b6c 007/241: Show key bindings from minibuffer-selected-window, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia 4780a6a 009/241: marginalia works with icomplete-vertical now!, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia 237a620 001/241: initial prototype, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia c47576c 010/241: add configuration example, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia a6dfb38 003/241: add todos, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia bdbbee2 005/241: add very basic readme, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia 6077206 008/241: Ignore byte-compiled files, autoloads and *-pkg.el files, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia 0c090f3 011/241: improve readme, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia 80fa320 016/241: Introduce list of classifiers, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia ca21d30 029/241: fix typo in the readme, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia 655f03b 035/241: introduce marginalia-annotators-(light|heavy), remove marginalia-set-command-annotator,
Stefan Monnier <=
- [elpa] externals/marginalia 4cb6d2b 039/241: marginalia-annotate-file: add modes, user and group, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia ed74ca9 040/241: add marginalia-toggle-annotators, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia 57b1176 051/241: marginalia-annotate-command-binding: only store the binding in the hash table, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia 6537c37 015/241: Shorten first line of docstring using our "annotator" term, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia 69ec4d7 017/241: Remove unused function, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia 28defd6 014/241: Introduce new name "annotator" for annotation functions, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia e2af1d3 019/241: Make marginalia-prompt-categories an alist of regexps and categories, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia 1c8ef02 020/241: Remove unused marginalia--metadata function, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia c05face 042/241: Improve marginalia-toggle-annotators if invoked from minibuffer, Stefan Monnier, 2021/05/28
- [elpa] externals/marginalia 59d65af 018/241: Add basic classifiers: orginal category, symbols, by words in prompt, Stefan Monnier, 2021/05/28