这是青小蛙在讨论组看到的内容,着实惊了,想不到居然有人能有这样的需求,而且,竟然解决了,太赞。
关于使用脚踏板切换中英输入法的方案详述
原文链接:https://meta.appinn.net/t/topic/26904 原作者:@HaujetZhao,以下是原文:
切换中英文不止是写文章的问题,还有许多软件使用问题。
我在 PS 上就被中英文输入法的问题困扰严重:
- PS 上要添加中文文字图层、改图层中文名字,就要用中文输入法
- 输入完,回车后,再去用快捷键 B 切换到笔刷工具,却发现被中文输入法吞了
- 就要切换回英文输入法,再用快捷键
- 再编辑文本时,一输入,发现输入的是英文,就要用中文输入法
上述过程一直循环,只要有一个环节忘记切换输入法,就会气你一下,再退格,切换,重新输入。
实际上还有许多场景也会被中英切换搞烦躁,例如写英文代码时又要写中文注释
对于固定场景的工作、生产环境,这个问题很影响效率,因此,探索使用一些额外手段来减轻频繁切换输入法带来的负面效应,是很有必要的。
我所构想出最合理的办法是这样的:
宏观上理解,有一块脚踏板,踩着踏板的时候,这是一块中文键盘,不踩着的时候,这是一块英文键盘。思维负担是零。
这是具体实现细节:
- 淘宝买一个脚踏板按键,它可以自定义按键映射
- 将脚踏板映射到 F13 按键上(一般键盘上不存在,但它确实可以有),这样就不会其他快捷键冲突
- 设置输入法中英切换快捷键为 Ctrl + Space,取消 Shift 切换中英的快捷键
- 电脑后台运行一个脚本(Python 脚本、AHK 脚本):
- 当检测到 F13 被按下时,自动发送 Ctrl + Space
- 当检测到 F13 被松开时,自动发送 Ctrl + Space
这样的话,例如在 PS 中,将输入法输入调为英文状态,此时可以:
- 在踩下脚踏板时,电脑变为中文输入状态
- 在松开脚踏板时,电脑变回英文输入状态
在写代码时,将输入法输入调为英文状态,此时可以:
- 在踩下脚踏板时,电脑变为中文输入状态,输入中文变量、中文注释
- 在松开脚踏板时,电脑变回英文输入状态,输入英文代码
而写文章进,将将输入法输入调为中文状态,此时可以:
- 在踩下脚踏板时,电脑变为英文输入状态
- 在松开脚踏板时,电脑变回中文输入状态
太有意思了,感兴趣的同学前去讨论研究吧:https://meta.appinn.net/t/topic/26904
另外,如 @Niceb 同学表示:抖腿人士表示难受。
哈哈哈哈哈,喜提 #竟然还可以这样 标签。
本文原始链接: https://www.appinn.com/how-to-switch-input-method-with-foot
没有什么问题是软硬结合不能解决的。
比較難用,本來我想在玩gal的時候使用,實際是,這個有點類似開車,你的座位和脚踏的位置是需要調整的,而且脚踏需要一定角度才舒服,脚踏需要固定,不然踩著踩著不就動了嗎,不過即使這樣,脚踏依舊不適合長時間反復用,一般我們開車也不是老是踩踏板,反復運動腿部肌肉也很容易疲勞,而且這個比用手指和手腕的消耗大,實在是得不償失。
這個開關一般是考慮站立的狀態下使用,也許以後升降桌子成爲主流了,可以考慮這個東西,可以用體重壓上去,這樣比較省力。
早就想要一个了,奈何没有无线版本
可以用esp8266自己做一个,脚踏板接gpio上,和PC用MTQQ或ws通讯
我买了个游戏用那种油门刹车脚踏板,然后把一个不用的无线鼠标塞了进去,然后就变成了无线脚踏板,哈哈。
不过我的油门刹车分别踩下去联动左右键,用来配合我用头戴显示器看片,头显可以通过监控头部运动来控制鼠标运动,配合脚踩点击,就可以腾出两只手了呢!
你可以试试把个那种刷抖音的迷你无线遥控器塞进去?
看片…腾出两只手···Hmmmm
他的逻辑前提是他会忘了切换输入法,所以他就不会忘了踩踏板?
感觉这个思路,解决了这样一个问题:切换了输入法后,忘记切换回来。
毕竟脚一松就自动切回来了。
也有道理,解决了一半的烦恼,就不知道这样踩会不会累
其实如果是针对PS编辑图层名称的话,可以搞一个鼠标位置监控,当鼠标位置在右下角指定区域点击后,切换中文,然后鼠标移除后切换回英文。
其实有很多应用场景,当然,大多数人只需要使用shift切换就好了。
就像3楼说的,这种一般是忘了切输入法,导致刚才打的拼音或者英文需要删除,然后切换中英文,再次输入跟刚才一样的。
也就是说,其实,在键盘上进行了两次同样的操作,只不过因为输入法不同导致了无效输入。
那么,有没有可能说,有没有临时的保存机制,当我敲击完键盘后,发现其实应该切换为中文或者英文,这时不需要把原有的输入删除,而是通过按一下快捷键,就让原文的输入变为想要的输入,具体场景如下:
我想要中文输入“今天”,但是忘记切输入法,导致屏幕上显示的是“jintian”,这时我直接按一下快捷键,屏幕上的“jintian”直接转换为“今天”,这样总比要“删除-切换-重新输入”要效率高一些。
初步想法是,通过quicker等效率提升软件设置自定义快捷键,能读取输入法的内容,并执行复制键盘操作-切换输入法-输出键盘操作的步骤来达到上面的效果。
只是想法,有待去实践研究。
有些输入法可以支持中文输入按下shift后自动输入为英文的,但是反之的好像没有~~
前面回错人了😅,写了段代码,可以试试,可以实现你说的,完美应对大部分的情形。
原帖子下面我也会发一个带gif效果的版本。
AppsKey::
send , +{Home}
sleep, 20
send, ^c
send,{shift}
;通过shift切换中文,可自行修改
if (StrLen(Clipboard)) < 20
{
sendinput,%Clipboard%
}
else
{
Clipboard1 := SubStr(Clipboard, 1, -20)
Clipboard2 := SubStr(Clipboard, -19)
sendinput,{Text}%Clipboard1%
sendinput,%Clipboard2%
}
return
虽然我觉得我会忘了踩踏板,但是这个思路好有趣啊!!
写了段代码,可以试试,可以实现你说的,完美应对大部分的情形。
原帖子下面我也会发一个带gif效果的版本。
AppsKey::
send , +{Home}
sleep, 20
send, ^c
send,{shift}
;通过shift切换中文,可自行修改
if (StrLen(Clipboard)) < 20
{
sendinput,%Clipboard%
}
else
{
Clipboard1 := SubStr(Clipboard, 1, -20)
Clipboard2 := SubStr(Clipboard, -19)
sendinput,{Text}%Clipboard1%
sendinput,%Clipboard2%
}
return
我倒觉得不如搞个语音的,喊一声”中文”切换到中文,喊一声”英文”切到英文.
我的设置 shifts 中文 shifta英文 shiftd 日文,用起来还行
更关心rime能不能实现相关帖子里提到的按alt之类快捷键输入英文标点的方法
只要可以模拟键盘的快捷键,就可以切换输入法,理论是这样的
我以前也买了踏板, 为了解决输入法问题.
使用输入法最大的问题是, 输入法状态在你去观察它之前, 它是未知状态.
使用踏板的好处是, 你不塌输入法就是英文, 不需要主动去观察输入法的状态
但理想很丰满, 买了之后用了几次就弃了, 因为我对腿实在不能接受长期固定在一个位置.
如果不把脚放在踏板上, 需要输入中文的时候就需要慌乱的去寻找踏板.
而且我买的踏板很容易就踏下去, 脚放在上面也不行.
后来, 我折腾了一个双键盘方案.
一个键盘一用就输入中文, 一个只能英文, 这也可以很好的解决输入法状态需要观察的问题.
但还是放弃了, 因为伸手去够第二块键盘的感觉真的很不爽.
我还在试图搞一个终极方案: 无输入法.
这需要一个更严谨的中文拉丁化方案, 一个拉丁化之后的中文和英文可以完全区分, 拉丁化之后可以最大程度的体现出中文的复杂性—-可以自然和低错字自动转换到中文字形的拉丁化方案.
或者一个更激进的简化字方案: 合并更多的同音字, 创造更多的无相关指代性的同音字作为纯粹的语音汉字代替大量的同音字.
我现在暂时用的方案回到了十年前, 即, 通过一个更容易观察的交互界面, 来让输入法状态更明确, 达到只要看屏幕就绝对知道输入法的情况:
简单的说, 我的输入法状态如果是中文, 整个屏幕四边都会泛中国红.
你是怎么做到的?能不能让光标的形状根据输入法来变化?
之前有个需求,在做扫描时,双手翻书调整扫描仪,脚踏启动扫描,当时是用一个没用的鼠标实现了,不过不那么方便。
我觉得这个需求是针对使用PS这类软件几乎无法规避快捷键冲突的软件,毕竟很多内容创作类软件里shift,alt ,ctrl,space这些键的使用频率非常高,而一旦切换到中文输入法所有的快捷键又会失效,反复调整非常麻烦,那么就不如用一个完全独立在键盘外的方式做调节。