Function: undo-adjust-elt
undo-adjust-elt is a byte-compiled function defined in simple.el.gz.
Signature
(undo-adjust-elt ELT DELTAS)
Documentation
Return adjustment of undo element ELT by the undo DELTAS list.
Source Code
;; Defined in /usr/src/emacs/lisp/simple.el.gz
(defun undo-adjust-elt (elt deltas)
"Return adjustment of undo element ELT by the undo DELTAS list."
(pcase elt
;; POSITION
((pred integerp)
(undo-adjust-pos elt deltas))
;; (BEG . END)
(`(,(and beg (pred integerp)) . ,(and end (pred integerp)))
(undo-adjust-beg-end beg end deltas))
;; (TEXT . POSITION)
(`(,(and text (pred stringp)) . ,(and pos (pred integerp)))
(cons text (* (if (< pos 0) -1 1)
(undo-adjust-pos (abs pos) deltas))))
;; (nil PROPERTY VALUE BEG . END)
(`(nil . ,(or `(,prop ,val ,beg . ,end) pcase--dontcare))
`(nil ,prop ,val . ,(undo-adjust-beg-end beg end deltas)))
;; (apply DELTA START END FUN . ARGS)
;; FIXME
;; All others return same elt
(_ elt)))