Function: evil-delete-marks
evil-delete-marks is an interactive and byte-compiled function defined
in evil-commands.el.
Signature
(evil-delete-marks MARKS &optional FORCE)
Documentation
MARKS is a string denoting all marks to be deleted. Mark names are
either single characters or a range of characters in the form x-y.
If FORCE is non-nil and MARKS is blank, all local marks except 0-9 are removed.
Key Bindings
Source Code
;; Defined in ~/.emacs.d/elpa/evil-20251108.138/evil-commands.el
(evil-define-command evil-delete-marks (marks &optional force)
"MARKS is a string denoting all marks to be deleted. Mark names are
either single characters or a range of characters in the form `x-y'.
If FORCE is non-nil and MARKS is blank, all local marks except 0-9 are removed."
(interactive "<a><!>")
(let ((mark-chars (remove ?\s (append marks nil))))
(cond
((and force mark-chars) (evil-echo "Invalid input"))
(mark-chars
(let* ((delmarks (evil--parse-delmarks mark-chars))
(delmarkp (lambda (m) (member (car m) delmarks))))
;; delete all parsed marks...
(setq evil-markers-alist
(cl-remove-if delmarkp evil-markers-alist))
;; ensure all parsed marks are deleted globally...
(set-default 'evil-markers-alist
(cl-remove-if delmarkp (default-value 'evil-markers-alist)))))
;; delete local marks except 0-9...
(force (setq evil-markers-alist
(cl-remove-if-not (lambda (m) (<= ?0 (car m) ?9))
evil-markers-alist))))))