Function: nerd-icons-completion-completion-metadata-get
nerd-icons-completion-completion-metadata-get is a natively compiled
function defined in nerd-icons-completion.el.
Signature
(nerd-icons-completion-completion-metadata-get ORIG METADATA PROP)
Documentation
Meant as :around advice for completion-metadata-get, Add icons as prefix.
ORIG should be completion-metadata-get
METADATA is the metadata.
PROP is the property which is looked up.
Source Code
;; Defined in /nix/store/wdh09xjk56z9i79asn7662ksbj6xycf3-emacs-packages-deps/share/emacs/site-lisp/elpa/nerd-icons-completion-20260921.2012/nerd-icons-completion.el
(defun nerd-icons-completion-completion-metadata-get (orig metadata prop)
"Meant as :around advice for `completion-metadata-get', Add icons as prefix.
ORIG should be `completion-metadata-get'
METADATA is the metadata.
PROP is the property which is looked up."
(if (eq prop 'affixation-function)
(let ((cat (funcall orig metadata 'category))
(aff (or (funcall orig metadata 'affixation-function)
(when-let* ((ann (funcall orig metadata 'annotation-function)))
(lambda (cands)
(mapcar (lambda (x) (list x "" (or (funcall ann x) ""))) cands))))))
(cond
((and (eq cat 'multi-category) aff)
(lambda (cands)
(mapcar (lambda (x)
(pcase-exhaustive x
(`(,cand ,prefix ,suffix)
(let ((orig (get-text-property 0 'multi-category cand)))
(list cand
(concat (nerd-icons-completion-get-icon (cdr orig) (car orig))
prefix)
suffix)))))
(funcall aff cands))))
(aff
(lambda (cands)
(mapcar (lambda (x)
(pcase-exhaustive x
(`(,cand ,prefix ,suffix)
(list cand
(concat (nerd-icons-completion-get-icon cand cat)
prefix)
suffix))))
(funcall aff cands))))
((eq cat 'multi-category)
(lambda (cands)
(mapcar (lambda (x)
(let ((orig (get-text-property 0 'multi-category x)))
(list x (nerd-icons-completion-get-icon (cdr orig) (car orig)) "")))
cands)))
(t
(lambda (cands)
(mapcar (lambda (x)
(list x (nerd-icons-completion-get-icon x cat) ""))
cands)))))
(funcall orig metadata prop)))