57 |
|
|
58 |
|
|
59 |
(defgroup diff-mode () |
(defgroup diff-mode () |
60 |
"Major mode for viewing/editing diffs" |
"Major mode for viewing/editing diffs." |
61 |
:version "21.1" |
:version "21.1" |
62 |
:group 'tools |
:group 'tools |
63 |
:group 'diff) |
:group 'diff) |
640 |
(while (progn (setq last-pt (point)) |
(while (progn (setq last-pt (point)) |
641 |
(= (forward-line -1) 0)) |
(= (forward-line -1) 0)) |
642 |
(case (char-after) |
(case (char-after) |
643 |
(? (insert " ") (setq modif nil) (backward-char 1)) |
(?s (insert " ") (setq modif nil) (backward-char 1)) |
644 |
(?+ (delete-region (point) last-pt) (setq modif t)) |
(?+ (delete-region (point) last-pt) (setq modif t)) |
645 |
(?- (if (not modif) |
(?- (if (not modif) |
646 |
(progn (forward-char 1) |
(progn (forward-char 1) |
723 |
(while (< (point) pt2) |
(while (< (point) pt2) |
724 |
(case (char-after) |
(case (char-after) |
725 |
((?! ?-) (delete-char 2) (insert "-") (forward-line 1)) |
((?! ?-) (delete-char 2) (insert "-") (forward-line 1)) |
726 |
(?\ ;merge with the other half of the chunk |
(?\s ;merge with the other half of the chunk |
727 |
(let* ((endline2 |
(let* ((endline2 |
728 |
(save-excursion |
(save-excursion |
729 |
(goto-char pt2) (forward-line 1) (point))) |
(goto-char pt2) (forward-line 1) (point))) |
733 |
(insert "+" |
(insert "+" |
734 |
(prog1 (buffer-substring (+ pt2 2) endline2) |
(prog1 (buffer-substring (+ pt2 2) endline2) |
735 |
(delete-region pt2 endline2)))) |
(delete-region pt2 endline2)))) |
736 |
(?\ ;FIXME: check consistency |
(?\s ;FIXME: check consistency |
737 |
(delete-region pt2 endline2) |
(delete-region pt2 endline2) |
738 |
(delete-char 1) |
(delete-char 1) |
739 |
(forward-line 1)) |
(forward-line 1)) |
814 |
(t (when (and first last (< first last)) |
(t (when (and first last (< first last)) |
815 |
(insert (delete-and-extract-region first last))) |
(insert (delete-and-extract-region first last))) |
816 |
(setq first nil last nil) |
(setq first nil last nil) |
817 |
(equal ?\ c))) |
(equal ?\s c))) |
818 |
(forward-line 1)))))))))) |
(forward-line 1)))))))))) |
819 |
|
|
820 |
(defun diff-fixup-modifs (start end) |
(defun diff-fixup-modifs (start end) |