Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

选项 reset_ascii_mode 的逻辑有待改进 #555

Closed
lib314a opened this issue Oct 22, 2021 · 5 comments
Closed

选项 reset_ascii_mode 的逻辑有待改进 #555

lib314a opened this issue Oct 22, 2021 · 5 comments

Comments

@lib314a
Copy link

lib314a commented Oct 22, 2021

Describe the bug

trime.yaml里的"style/reset_ascii_mode"这个选项很奇怪。它的作用是”不同进程中显示键盘时重置为中文状态(true:重置为中文;false:记忆中英状态)“。

由于"style/reset_ascii_mode"的存在,用户无法达到在trime里使用总是默认英文键盘的目的。

To Reproduce

当进行如下配置时:
"preset_keyboards/qwerty/ascii_mode": 1(键盘默认ascii状态)
"style/reset_ascii_mode": true
在所有app里键盘都会被强行重置为中文;

而相反,当进行如下配置时:
"preset_keyboards/qwerty/ascii_mode": 1(键盘默认ascii状态)
"style/reset_ascii_mode": false
只要在一个app里用了中文,随后再用就还是中文,因为trime记住了上次的状态。

Expected behavior
A clear and concise description of what you expected to happen.

我建议这个功能改成既可以重置ascii,也可以重置中文,抑或不重置,三个选项,否则会使用户在更改键盘默认状态时非常困扰。

Smartphone (please complete the following information):

  • Device: OnePlus 8 Plus
  • OS: Android 10
  • Version: v3.2.0-20210611
@tumuyan
Copy link
Contributor

tumuyan commented Oct 24, 2021

reset_ascii_mode的重置时机,实际上是每次弹出软键盘,而不是切换App。目前输入法并没有感知前台活动App的能力。因此这个开关的意义原本就不大(甚至会很恼人)。
如果保存不同App的键盘状态,需要读取应用列表并时时监控,或者指定列表中的App自动重置就像小狼毫语言,技术上是可行的,但是是比较敏感的做法,我觉得当前不太适合。 @Bambooin 你的意见呢?

@Bambooin
Copy link
Collaborator

我平时都是设置成默认 中文

@frezoow
Copy link

frezoow commented Jan 5, 2023

希望切换其他布局后再回到默认时,不要改变之前的ascii_mode状态,切回来突然变成中文或者英文都是很奇怪的

小狼毫有同样的问题,一直都没有解决,可以看这个地址:rime/weasel#581

@tumuyan
Copy link
Contributor

tumuyan commented Jan 6, 2023

更新一下信息,实际上是每次弹出软键盘,输入法是可以感知前台活动App的,并且已经加入了log打印。所以仿小狼毫做指定App使用ASCII默认状态,以及记忆每个App的ASCII状态,都是可以做到的。

但是问题又回到了同文的逻辑上,同文每个键盘的ASCII状态都是独立的,就是说处理流程很复杂。可能还是需要引入主键盘的概念,初始化先初始化主键盘,恢复状态也是恢复主键盘

@frezoow
Copy link

frezoow commented Jan 6, 2023

更新一下信息,实际上是每次弹出软键盘,输入法是可以感知前台活动App的,并且已经加入了log打印。所以仿小狼毫做指定App使用ASCII默认状态,以及记忆每个App的ASCII状态,都是可以做到的。

但是问题又回到了同文的逻辑上,同文每个键盘的ASCII状态都是独立的,就是说处理流程很复杂。可能还是需要引入主键盘的概念,初始化先初始化主键盘,恢复状态也是恢复主键盘

我觉得至少可以先默认支持 从其他布局回到默认布局时 不要强制改变它的状态

谷歌和微软目前也都是这样设计的 这也合乎直觉

目前同文我想到的解决方案: 启用两套方案分别对应中英文 中文下切换其他布局返回默认还是回到中文 英文同理 不过我也没有时间和精力搞就是了~逃回gboard了🥲

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants