emacs-devel
[Top][All Lists]
Advanced

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

Re: Behavior of input method -- crdt.el


From: Eli Zaretskii
Subject: Re: Behavior of input method -- crdt.el
Date: Mon, 19 Oct 2020 17:29:46 +0300

> From: Qiantan Hong <qhong@mit.edu>
> CC: Stefan Monnier <monnier@iro.umontreal.ca>,
>         EMACS development team
>       <emacs-devel@gnu.org>
> Date: Mon, 19 Oct 2020 02:48:45 +0000
> 
> > FWIW, I don't see any problem with that, because users won't expect
> > that to happen anyway.
> Can you clarity “what to happen”?

Sorry for being unclear: I meant that users won't expect remote
commands to be executed in the middle of inputing a character.

This isn't limited to input methods, btw: did you try typing several
characters that are composed together on display into a single
grapheme cluster (under auto-composition-mode)? what happens if remote
command arrives in the middle of this sequence and moves point?

In general, I don't think we must take the "real-time" nature of this
too literally.  Nothing bad will happen if the remote commands are
executed only when it's "safe".

> I think it’s quite common to have a very long single input sequence,
> especially when I’m using some input method package that
> does word hint based on context. I basically enter a whole phrase
> or even sentence at once. 

We are talking about Leim input methods, not about the input methods
your OS supports.  Do such long sequences that produce entire phrases
happen in our input methods?  If so, can you show an example?

> I’ve done it with my hack (push forward the overlay input method
> uses) and it doesn’t block remote changes. It works with the
> builtin Chinese input method, and also a few external package I’ve
> tested. I don’t know if there's any problem with this approach.

Do we have to employ hacks?  Quail input methods tell you when they
don't expect to be interrupted, by setting quail-translating to a
non-nil value; why not use that indication to handle this issue in a
non-hackish way?



reply via email to

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