text-properties-at returns a list of various text properties.
I want to remove: display (image :type xpm :file /Users/HOME/.0.data/.0.emacs/.0.images/ezimage/box-plus.xpm :scale 1.1070588235294117 :ascent center). The image may change, so I'd like a general approach that targets the display property and any value that may exist in relation thereto.
I thought I was dealing with a plist and I read about remprop, but it strips everything in the entire list -- i.e., it makes the whole list nil.
(let ((props (text-properties-at 0 OBJECT)))
(setq props (remprop 'props 'display)))
rempropdeals with a symbol's property list - a concept very rarely used in Emacs Lisp (plausible uses for it are debugging of ELisp code, saving extra information with special variables). – wvxvw Jan 19 '17 at 10:34(setf (car ...) ...)or similar. – wvxvw Jan 19 '17 at 10:40(remove-text-properties START END '(display nil) OBJECT)work for you? though I am not sure about what you want. – xuchunyang Jan 19 '17 at 10:56remove-text-propertiesto remove any given properties altogether. If you want to modify one or more properties, seeset-text-properties. – Drew Jan 19 '17 at 14:48org-plist-deleteto remove the pair of PROPERTY / VALUE from the PLIST. The inspiration for this project was to fix a bug inorg-agenda-highlight-todowhich takes text properties found at the beginning of a string and creates a new" "space between theorg-modetodo-keyword and the priority. I am using icons set withorg-agenda-category-icon-alistand my particularorg-agenda-prefix-formatleaves the icon right whereorg-agenda-highlight-todocan find it -- i.e., FIXME :) – lawlist Jan 19 '17 at 18:58