diff options
| author | Stefan Monnier | 2019-03-25 13:20:17 -0400 |
|---|---|---|
| committer | Stefan Monnier | 2019-03-25 13:20:17 -0400 |
| commit | 491885030c29f46d688c9b0325f95feccd8d653e (patch) | |
| tree | d2cd1d3f6676b9f288625607e132c7dabf0596ed | |
| parent | b7a98993789d18bc675798d49038982d5cf41683 (diff) | |
| download | emacs-491885030c29f46d688c9b0325f95feccd8d653e.tar.gz emacs-491885030c29f46d688c9b0325f95feccd8d653e.zip | |
* lisp/vc/diff-mode.el: Better handle empty lines in context diffs
(diff-end-of-hunk): Obey diff-valid-unified-empty-line for context style.
(diff--refine-hunk): Don't look further than the end.
| -rw-r--r-- | lisp/vc/diff-mode.el | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lisp/vc/diff-mode.el b/lisp/vc/diff-mode.el index 40204404e77..b67caab7f50 100644 --- a/lisp/vc/diff-mode.el +++ b/lisp/vc/diff-mode.el | |||
| @@ -533,7 +533,8 @@ See https://lists.gnu.org/r/emacs-devel/2007-11/msg01990.html") | |||
| 533 | "^[^-+# \\\n]\\|" "^[^-+# \\]\\|") | 533 | "^[^-+# \\\n]\\|" "^[^-+# \\]\\|") |
| 534 | ;; A `unified' header is ambiguous. | 534 | ;; A `unified' header is ambiguous. |
| 535 | diff-file-header-re)) | 535 | diff-file-header-re)) |
| 536 | ('context "^[^-+#! \\]") | 536 | ('context (if diff-valid-unified-empty-line |
| 537 | "^[^-+#! \n\\]" "^[^-+#! \\]")) | ||
| 537 | ('normal "^[^<>#\\]") | 538 | ('normal "^[^<>#\\]") |
| 538 | (_ "^[^-+#!<> \\]")) | 539 | (_ "^[^-+#!<> \\]")) |
| 539 | nil t) | 540 | nil t) |
| @@ -2116,7 +2117,7 @@ Return new point, if it was moved." | |||
| 2116 | (smerge-refine-regions beg-del beg-add beg-add end-add | 2117 | (smerge-refine-regions beg-del beg-add beg-add end-add |
| 2117 | nil #'diff-refine-preproc props-r props-a))))) | 2118 | nil #'diff-refine-preproc props-r props-a))))) |
| 2118 | ('context | 2119 | ('context |
| 2119 | (let* ((middle (save-excursion (re-search-forward "^---"))) | 2120 | (let* ((middle (save-excursion (re-search-forward "^---" end))) |
| 2120 | (other middle)) | 2121 | (other middle)) |
| 2121 | (while (re-search-forward "^\\(?:!.*\n\\)+" middle t) | 2122 | (while (re-search-forward "^\\(?:!.*\n\\)+" middle t) |
| 2122 | (smerge-refine-regions (match-beginning 0) (match-end 0) | 2123 | (smerge-refine-regions (match-beginning 0) (match-end 0) |