[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Index header in diff-mode
From: |
Juri Linkov |
Subject: |
Re: Index header in diff-mode |
Date: |
Fri, 09 Dec 2005 11:55:07 +0200 |
User-agent: |
Gnus/5.110004 (No Gnus v0.4) Emacs/22.0.50 (gnu/linux) |
>> After saving them to files and visiting in diff-mode, sometimes I type
>> `C-c C-c' or `RET' on such index headers with the intention to visit the
>> first hunk. But instead, it visits the last hunk of the previous file
>> in the same multi-file diff. Wouldn't it be better to handle the index
>> header as part of the file header?
>
> I think you're right. Feel free to make this change,
I tried to add an optional Index regexp to diff-file-header-re:
(defconst diff-file-header-re
(concat
"^\\(Index: .+\n=+\n.+\n.+\n.+\n\\)?"
"\\(--- .+\n\\+\\+\\+ \\|\\*\\*\\* .+\n--- \\|[^-+!<>address@hidden ]\\).+\n"
(substring diff-hunk-header-re 1)))
but it works only in forward direction. When using M-P to go to the
beginning of the previous diff file, it doesn't set point at the
beginning of regexp's part inside `\\(Index...\\)?'. It sets point
after it. I understand this is how re-search-backward currently
works, but is there a way to make backward search more "greedy"?
The same problem also causes wrong lazy-highlighting in isearch.
E.g. after starting isearch at the beginning of:
abcabc
and typing `C-M-s a?b C-s C-r', "ab" is highlighted in lazy-highlight face,
but only "b" in isearch face.
--
Juri Linkov
http://www.jurta.org/emacs/