Function: smerge--refine-highlight-change
smerge--refine-highlight-change is a byte-compiled function defined in
smerge-mode.el.gz.
Signature
(smerge--refine-highlight-change BEG MATCH-NUM1 MATCH-NUM2 PROPS)
Source Code
;; Defined in /usr/src/emacs/lisp/vc/smerge-mode.el.gz
(defun smerge--refine-highlight-change (beg match-num1 match-num2 props)
;; TODO: Add a property pointing to the corresponding text in the
;; other region.
(with-current-buffer (marker-buffer beg)
(goto-char beg)
(let* ((startline (- (string-to-number match-num1) 1))
(beg (progn (funcall (if smerge-refine-weight-hack
#'forward-char
smerge-refine-forward-function)
startline)
(point)))
(end (progn (funcall (if smerge-refine-weight-hack
#'forward-char
smerge-refine-forward-function)
(if match-num2
(- (string-to-number match-num2)
startline)
1))
(point))))
(when smerge-refine-ignore-whitespace
(skip-chars-backward " \t\n" beg) (setq end (point))
(goto-char beg)
(skip-chars-forward " \t\n" end) (setq beg (point)))
(when (> end beg)
(let ((ol (make-overlay
beg end nil
;; Make them tend to shrink rather than spread when editing.
'front-advance nil)))
(overlay-put ol 'evaporate t)
(dolist (x props) (overlay-put ol (car x) (cdr x)))
ol)))))