Function: evil-plist-delete

evil-plist-delete is a byte-compiled function defined in evil-common.el.

Signature

(evil-plist-delete PROP PLIST)

Documentation

Delete by side effect the property PROP from PLIST.

If PROP is the first property in PLIST, there is no way to remove it by side-effect; therefore, write
(setq foo (evil-plist-delete :prop foo)) to be sure of
changing the value of foo.

Source Code

;; Defined in ~/.emacs.d/elpa/evil-20251108.138/evil-common.el
(defun evil-plist-delete (prop plist)
  "Delete by side effect the property PROP from PLIST.
If PROP is the first property in PLIST, there is no way
to remove it by side-effect; therefore, write
\(setq foo (evil-plist-delete :prop foo)) to be sure of
changing the value of `foo'."
  (let ((tail plist) elt head)
    (while tail
      (setq elt (car tail))
      (cond
       ((eq elt prop)
        (setq tail (cdr (cdr tail)))
        (if head
            (setcdr (cdr head) tail)
          (setq plist tail)))
       (t
        (setq head tail
              tail (cdr (cdr tail))))))
    plist))