global input session, state shared by all client apps
Thanks for the pull request. This works for the purpose, almost, except for two issues:
- other states (like trad/simp. Chinese option) maybe inconsistent between clients;
- app_options may reset ascii_mode for a specific app, and the reset mode is carried to all apps.
I would like to make the following modifications:
- as @nameoverflow suggested add an option to configure the behavior;
- Instead of keeping a global ascii mode variable, use a global Rime session for all input method clients.
Originally posted by @lotem in https://github.com/rime/squirrel/pull/201#issuecomment-381299599
@lotem thank you for your work. I would like to ask if there is any progress in this issue now. the certainty ascii mode is very important to me. (If something needs to be done, please let me know I'm willing to work to promote this task)
Current status of the feature:
- rime/weasel: supported in client code https://github.com/rime/weasel/pull/1096
- rime/squirrel:
can be achieved by the macOS settings "Use one input source in all documents" - unsupported in librime
@lotem 我尝试在 macos 设置中找到 "Use one input source in all documents",结果是我尝试了很多方法都没有看到,我使用的是 macos 15.3.2。 奇怪的是我能搜索到 "Use one input source in all documents",但是我点击进去之后并没有看到这样设置项。 我尝试找朋友的电脑看了一下,发现也没有这个设置项,可能是 macos 的一个问题或者故意被移除掉了。
此外,我已经将多余的输入法移除仅剩 squirrel 但是在不同输入框中还是会切换为默认 ascii mode 如果后续 macos 系统接口设计如此,我们是否能通过 squirrel 提供一个配置项用来处理是否记录 ascii mode ?或提供不同语言多输入法(输入法切换逻辑、快捷键估计会比较糟糕)?
不記錄的。 或者說在每個 App 裏各記各的。在內存裏記錄。
在 macOS 的輸入法框架裏每個 App 是一個輸入法連接,librime 爲每一個輸入法連接維護一組狀態。現狀是這樣。
@lotem 感谢,我后续会尝试在 rime/squirrel 实现相关逻辑试试,如果有什么需要注意的可以提醒我
相关 issue: https://github.com/rime/squirrel/issues/145