Function: center-line-mode--track-changes-function

center-line-mode--track-changes-function is a byte-compiled function defined in text-mode.el.gz.

Signature

(center-line-mode--track-changes-function BEG END BEFORE)

Source Code

;; Defined in /usr/src/emacs/lisp/textmodes/text-mode.el.gz
(defun center-line-mode--track-changes-function (beg end _before)
  (unless track-changes-undo-only
    (save-excursion
      (let ((beg-line (line-number-at-pos beg))
            (end-line (line-number-at-pos end))
            (should-center-last-line-p
             (progn
               (goto-char end)
               (null
                (or (bolp)
                    (and (eolp)
                         (looking-back "[\r\n\t ]" (1- (point)))))))))
        (goto-char beg)
        (dotimes (_ (- end-line beg-line)) ; all but last line
          (unless (and (bolp) (eolp))
            (center-line))
          (forward-line 1))
        (when should-center-last-line-p
          (center-line)))))
  ;; Disregard our own changes.
  (track-changes-fetch center-line-mode--track-changes #'ignore))