Juri Linkov wrote: > > With the `Russian-computer' input method, S-/ combination produces a > > comma (instead of a question mark with standard English.) That is OK and > > the way it should be. > > Perhaps you have a US keyboard layout with `?' on the same key as `/'. > Finnish keyboards have quite a different layout where `?' is on the > same key as `+', and it is produced by `S-+'. Other keyboards have > other layouts, but anyhow I understand how to reproduce the problem. > What is essential here is to press shift with the `?' key, because the > `russian-computer' input method maps `?' to `,'.
Yes, I use US and Russian keyboard layouts. > > However, when I start incremental search, the key works as in > > English, while the rest of the keyboard keeps producing Russian > > letters etc. > > The root of the problem is in `isearch-mode-map' which binds `?' to > `isearch-*-char'. When you type a key corresponding to `?' with > the input method, `isearch-*-char' intercepts it and interprets as > the regexp special character `?'. > > The following patch fixes this problem by sending the input character > to `isearch-process-search-char' which takes care of processing the > character according to the current input method. Also a new condition > was added before processing a regexp character. If an input method is > active, it processes a regexp character only if a typed character is > the same with and without an input method, so that all input methods > that don't redefine regexp characters won't be affected. Works for me, thanks. However, why ``only if a typed character is the same with and without an input method''? Maybe it should just process the character _after_ it has been processed/converted by the input method, as opposed to processing it _before_, as currently. So, S-7 in `russian- computer' would trigger special '?' character processing. (I don't know how input methods works in Emacs, though...) Paul _______________________________________________ Emacs-devel mailing list [email protected] http://lists.gnu.org/mailman/listinfo/emacs-devel
