diff options
author | Miles Bader <miles@gnu.org> | 2007-10-09 08:52:57 +0000 |
---|---|---|
committer | Miles Bader <miles@gnu.org> | 2007-10-09 08:52:57 +0000 |
commit | 1af74d06e5bdafad9d629d2ed729c5d743cfaf0f (patch) | |
tree | 0360965ec0ad2736ffee01cce4f040c6b0a99133 /lisp/diff-mode.el | |
parent | eceb3266a1f66a0034954aa82efbb20a5be959f8 (diff) | |
parent | 4b70e299ef66906fd285198003c72a1439d1f252 (diff) | |
download | emacs-1af74d06e5bdafad9d629d2ed729c5d743cfaf0f.tar.gz emacs-1af74d06e5bdafad9d629d2ed729c5d743cfaf0f.tar.bz2 emacs-1af74d06e5bdafad9d629d2ed729c5d743cfaf0f.zip |
Merge from emacs--rel--22
Revision: emacs@sv.gnu.org/emacs--devo--0--patch-875
Diffstat (limited to 'lisp/diff-mode.el')
-rw-r--r-- | lisp/diff-mode.el | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/lisp/diff-mode.el b/lisp/diff-mode.el index f39256c2281..609c5ef6490 100644 --- a/lisp/diff-mode.el +++ b/lisp/diff-mode.el @@ -110,6 +110,8 @@ when editing big diffs)." ("N" . diff-file-next) ("p" . diff-hunk-prev) ("P" . diff-file-prev) + ("\t" . diff-hunk-next) + ([backtab] . diff-hunk-prev) ("k" . diff-hunk-kill) ("K" . diff-file-kill) ;; From compilation-minor-mode. @@ -1269,7 +1271,16 @@ Only works for unified diffs." (while (case (char-after) (?\s (decf before) (decf after) t) - (?- (decf before) t) + (?- + (if (and (looking-at diff-file-header-re) + (zerop before) (zerop after)) + ;; No need to query: this is a case where two patches + ;; are concatenated and only counting the lines will + ;; give the right result. Let's just add an empty + ;; line so that our code which doesn't count lines + ;; will not get confused. + (progn (save-excursion (insert "\n")) nil) + (decf before) t)) (?+ (decf after) t) (t (cond |