GNU Emacs Lisp Reference Manual
7.4.3: Property Lists Outside Symbols
These two functions are useful for manipulating property lists
that are stored in places other than symbols:
- Function: plist-get
plist property
-
This returns the value of the property property
stored in the property list plist. For example,
-
(plist-get '(foo 4) 'foo)
=> 4
- Function: plist-put
plist property value
-
This stores value as the value of the property property in
the property list plist. It may modify plist destructively,
or it may construct a new list structure without altering the old. The
function returns the modified property list, so you can store that back
in the place where you got plist. For example,
-
(setq my-plist '(bar t foo 4))
=> (bar t foo 4)
(setq my-plist (plist-put my-plist 'foo 69))
=> (bar t foo 69)
(setq my-plist (plist-put my-plist 'quux '(a)))
=> (quux (a) bar t foo 5)