emacs-devel
[Top][All Lists]
Advanced

[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/





reply via email to

[Prev in Thread] Current Thread [Next in Thread]