ibus-rime icon indicating copy to clipboard operation
ibus-rime copied to clipboard

How to save different input state for different window?

Open hsxfjames opened this issue 8 years ago • 2 comments

For example, there are some windows own by chrome process(or process tree), and other windows own by firefox process. When I stay in one of chrome window I may want a luna-pinyin schema, then if I switch to one of firefox window I want it to be the default or previous settled schema, like cangjie etc. Or just be a same schema but different ascii_mode.

I found how to apply different ascii_mode for some specific processes, but not found how to apply different input state for different window. That is, any change of schema selecting or ascii_mode switching is a global change.

Could any body explain how to achieve it, or if it is not implemented yet, I would appreciate it if you add it as a feature, thx.

hsxfjames avatar Jul 29 '17 07:07 hsxfjames

I don't think ibus-rime supports application-specific settings currently.

State including the selected schema is stored in a Rime session https://github.com/rime/ibus-rime/blob/master/rime_engine.c#L17 In current code, Rime session is 1:1 to IBus engine. That's why state is global. Please share your knowledge of how to identify different processes from an IBus engine, if you've got some progress.

lotem avatar Jul 30 '17 16:07 lotem

gnome有一个Switch input individually for each window可以在应用层面上分离,目前ibus-rime无法在切换回窗口返回第二模式也就是ascii模式。 建议可以参考 https://github.com/phuang/ibus-anthy 用sub prop做切换,gnome会记住选项的。

kevinhwang91 avatar Aug 04 '22 10:08 kevinhwang91