branch: externals/marginalia commit daab796790b2cd01b7afce705f7502d2d2b86eed Author: Daniel Mendler <m...@daniel-mendler.de> Commit: Daniel Mendler <m...@daniel-mendler.de>
marginalia--field: Minor optimization --- marginalia.el | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/marginalia.el b/marginalia.el index 93de72f104..2d62c5548f 100644 --- a/marginalia.el +++ b/marginalia.el @@ -404,7 +404,13 @@ FACE is the name of the face, with which the field should be propertized." (setq field (if format `(format ,format ,field) `(or ,field ""))) (when width (setq field `(format ,(format "%%%ds" (- width)) ,field))) (when truncate (setq field `(marginalia--truncate ,field ,truncate))) - (when face (setq field `(propertize ,field 'face ,face))) + (when face + (setq field (if (or format width truncate) + (cl-with-gensyms (f) + `(let ((,f ,field)) + (put-text-property 0 (length ,f) 'face ,face ,f) + ,f)) + `(propertize ,field 'face ,face)))) field) (defmacro marginalia--fields (&rest fields)