emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] better isearch support for complex input methods


From: Karl Fogel
Subject: Re: [PATCH] better isearch support for complex input methods
Date: 03 Apr 2001 13:48:34 -0500
User-agent: Gnus/5.0807 (Gnus v5.8.7) Emacs/20.7

"Stefan Monnier" <monnier+gnu/address@hidden> writes:
> > Currently, if one uses C-w in isearch in Chinese text, it grabs to the
> > next punctuation mark or end of line.  This is usually not what the
> > user wanted -- it's much more likely that they want to grab one
> > Chinese character at a time.
> 
> This suggests that instead of introducing a new binding C-o we should
> just change C-w so that it yanks in either one word or one char
> depending on the alphabet.

I would prefer that too, but I'm not sure how to implement it.

Remember, the buffer may contain mixed-language text.  We still want
C-w to work right for multicharacter words.  For example, imagine this
text, where "X", "Y", and "Z" are Chinese characters:

   X Y is my name, and Z is my game

If point is on X, someone might want to search the next occurrence of
"X Y is my name".  *Ideally*, they would type

   C-s C-w C-w C-w C-w C-w C-s

However, this can only work if C-w knows to behave differently when
looking at a multibyte Chinese character than when looking at some
other kind of text.  And of course, it can't just be for Chinese:
Emacs would have to recognize a general classification of "characters
that are themselves words" in various lanuages.  Can it do this?

I agree it would be a wonderfully usable solution, better than the C-o
solution.  I'm not sure how to implement it, though.

Any ideas?

[In the meantime, C-o is a vast improvement over what we have now, and
it is of general use, even in non-multibyte-char buffers -- I've
wanted to pull one char at a time into my search string before,
without having to find the chars on my keyboard.]

-Karl



reply via email to

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