[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: customize isearch-repeat-forward
From: |
Mathias Megyei |
Subject: |
Re: customize isearch-repeat-forward |
Date: |
Fri, 14 Sep 2007 08:36:30 +0200 |
On Thu, 2007-09-13 at 21:03 -0500, peter hodgson wrote:
> 'M-x version' yields:
> GNU Emacs 22.1.1 (i486-pc-linux-gnu, GTK+ Version 2.10.11) of 2007-08-14
> on palmer, modified by Ubuntu
> ---------------------
>
> fellow emaculates; the pleasure of your company these past weeks has
> prompted me to refine some of my customizations;
>
> here's what my .emacs used to say about isearch:
>
> (global-set-key "\ee" 'isearch-forward)
isearch-forward is already bound to C-s. Do you need a different
binding too? Did you look the output of C-h k C-s?
> (global-set-key "\C-f" 'isearch-repeat-forward)
Default binding for that is: C-s C-s
> (global-set-key "\e'" 'isearch-exit)
>
> (global-set-key "\e3" 'isearch-backward)
>
> (global-set-key "\e2" 'isearch-repeat-backward)
>
>
> everything worked fine; then i changed one line:
>
> (global-set-key "\er" 'isearch-repeat-forward)
>
> and now all hell's broken loose;
>
> it starts out fine:
>
> when i press <M-e>, i get "I-search:", so i type "key"; all occurences
> of 'key' are highlighted, and the cursor is at the end of the first
> occurence;
With <M-e> you have switched to isearch mode. (You should
see the string "Isearch" in the mode line.)
In isearch mode the key bindings from isearch-mode-map will
overwrite the global bindings.
> then i press <M-r>;
>
> instead of having the cursor move to the next occurence of 'key', it
> stays where it was, and i get this message:
>
> "Pending regexp I-search: key"
>
> when i press <M-r> again, i get:
>
> "Pending I-search: key"
In isearch-mode-map <M-r> is bound to (quoted from C-h k C-s):
...
Type M-r to toggle regular-expression mode.
...
> BUT IF i press <Enter> after i type in "key", or after i get either of
> the 'Pending...' messages, THEN
Pressing <Enter> you exited from isearch mode. Hence ...
> when i press <M-r> it moves the cursor
> through the occurences of 'key', in other words, isearch-repeat-forward;
... your key binding from global-map is working as expected.
> i've been eating lots of steak lately, to facilitate healing a wound;
> does this .emacs difficulty suggest my karma been compromised? or is
> there a lisp solution?
The latter I think. If you would like to change the key bindings
for isearch mode you have to change isearch-mode-map instead of
the global map.
Regards,
Mathias