Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
emacs
emacs
Commits
2d11b7b3
Commit
2d11b7b3
authored
May 15, 2011
by
Chong Yidong
Browse files
Backport fix for Bug#8672 from trunk
parent
ce1539b4
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
46 additions
and
39 deletions
+46
-39
lisp/ChangeLog
lisp/ChangeLog
+5
-0
lisp/diff-mode.el
lisp/diff-mode.el
+41
-39
No files found.
lisp/ChangeLog
View file @
2d11b7b3
2011-05-15 Chong Yidong <cyd@stupidchicken.com>
* vc/diff-mode.el (diff-fixup-modifs): Locate correct position for
hunk-end tags (Bug#8672).
2011-05-13 Juanma Barranquero <lekktu@gmail.com>
* progmodes/python.el (python-font-lock-keywords):
...
...
lisp/diff-mode.el
View file @
2d11b7b3
...
...
@@ -1116,45 +1116,47 @@ else cover the whole buffer."
(
save-excursion
(
goto-char
end
)
(
diff-end-of-hunk
nil
'donttrustheader
)
(
let
((
plus
0
)
(
minus
0
)
(
space
0
)
(
bang
0
))
(
while
(
and
(
=
(
forward-line
-1
)
0
)
(
<=
start
(
point
)))
(
if
(
not
(
looking-at
(
concat
diff-hunk-header-re-unified
"\\|[-*][-*][-*] [0-9,]+ [-*][-*][-*][-*]$"
"\\|--- .+\n\\+\\+\\+ "
)))
(
case
(
char-after
)
(
?\s
(
incf
space
))
(
?+
(
incf
plus
))
(
?-
(
incf
minus
))
(
?!
(
incf
bang
))
((
?\\
?#
)
nil
)
(
t
(
setq
space
0
plus
0
minus
0
bang
0
)))
(
cond
((
looking-at
diff-hunk-header-re-unified
)
(
let*
((
old1
(
match-string
2
))
(
old2
(
match-string
4
))
(
new1
(
number-to-string
(
+
space
minus
)))
(
new2
(
number-to-string
(
+
space
plus
))))
(
if
old2
(
unless
(
string=
new2
old2
)
(
replace-match
new2
t
t
nil
4
))
(
goto-char
(
match-end
4
))
(
insert
","
new2
))
(
if
old1
(
unless
(
string=
new1
old1
)
(
replace-match
new1
t
t
nil
2
))
(
goto-char
(
match-end
2
))
(
insert
","
new1
))))
((
looking-at
diff-context-mid-hunk-header-re
)
(
when
(
>
(
+
space
bang
plus
)
0
)
(
let*
((
old1
(
match-string
1
))
(
old2
(
match-string
2
))
(
new
(
number-to-string
(
+
space
bang
plus
-1
(
string-to-number
old1
)))))
(
unless
(
string=
new
old2
)
(
replace-match
new
t
t
nil
2
)))))
((
looking-at
"\\*\\*\\* \\([0-9]+\\),\\(-?[0-9]*\\) \\*\\*\\*\\*$"
)
(
when
(
>
(
+
space
bang
minus
)
0
)
(
let*
((
old
(
match-string
1
))
(
new
(
format
(
concat
"%0"
(
number-to-string
(
length
old
))
"d"
)
(
+
space
bang
minus
-1
(
string-to-number
old
)))))
(
unless
(
string=
new
old
)
(
replace-match
new
t
t
nil
2
))))))
(
setq
space
0
plus
0
minus
0
bang
0
)))))))
while
(
and
(
=
(
forward-line
-1
)
0
)
(
<=
start
(
point
)))
(
if
(
not
(
looking-at
(
concat
diff-hunk-header-re-unified
"\\|[-*][-*][-*] [0-9,]+ [-*][-*][-*][-*]$"
"\\|--- .+\n\\+\\+\\+ "
)))
(
case
(
char-after
)
(
?\s
(
incf
space
))
(
?+
(
incf
plus
))
(
?-
(
incf
minus
))
(
?!
(
incf
bang
))
((
?\\
?#
)
nil
)
(
t
(
setq
space
0
plus
0
minus
0
bang
0
)))
(
cond
((
looking-at
diff-hunk-header-re-unified
)
(
let*
((
old1
(
match-string
2
))
(
old2
(
match-string
4
))
(
new1
(
number-to-string
(
+
space
minus
)))
(
new2
(
number-to-string
(
+
space
plus
))))
(
if
old2
(
unless
(
string=
new2
old2
)
(
replace-match
new2
t
t
nil
4
))
(
goto-char
(
match-end
3
))
(
insert
","
new2
))
(
if
old1
(
unless
(
string=
new1
old1
)
(
replace-match
new1
t
t
nil
2
))
(
goto-char
(
match-end
1
))
(
insert
","
new1
))))
((
looking-at
diff-context-mid-hunk-header-re
)
(
when
(
>
(
+
space
bang
plus
)
0
)
(
let*
((
old1
(
match-string
1
))
(
old2
(
match-string
2
))
(
new
(
number-to-string
(
+
space
bang
plus
-1
(
string-to-number
old1
)))))
(
unless
(
string=
new
old2
)
(
replace-match
new
t
t
nil
2
)))))
((
looking-at
"\\*\\*\\* \\([0-9]+\\),\\(-?[0-9]*\\) \\*\\*\\*\\*$"
)
(
when
(
>
(
+
space
bang
minus
)
0
)
(
let*
((
old
(
match-string
1
))
(
new
(
format
(
concat
"%0"
(
number-to-string
(
length
old
))
"d"
)
(
+
space
bang
minus
-1
(
string-to-number
old
)))))
(
unless
(
string=
new
old
)
(
replace-match
new
t
t
nil
2
))))))
(
setq
space
0
plus
0
minus
0
bang
0
))))))
)
;;;;
;;;; Hooks
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment