如何自然切换输入法,明确中英切换的方法解决

不论是写代码还是latex写文章,总会因为输入法让人抓狂...

至少我是这样.

问题主要有:1. 中英切换,这个本来不算问题,快捷键shift搞定;

2. 输入特殊符号,往往需要shift键共按,比如&,但这个在中文输入也不会有影响.

3. 在中文中我突然需要输入某个英文字母dD,大写的或小写的,这也没有影响,直接enter键搞定;if I use English then I want say "你好".这个整体上看还是不算问题,无非就是中英切换,shift键.

4. 往往我需要用英文标点符号,比如我习惯在句子结尾使用.而不是句号.芭比Q,我甚至打不出来了hhh.提前避雷一下这个方法,就是自己使用的输入法软件中设置对于句号标点,中文输入的是“.”而不是通常的全角句号. 但是在写文章中,就出大问题,这个看自己的选择吧.不太建议说实话.而对于其他符号,同理就是需要先切换一下中英输入,但是我们如果多次进行切换,很容易忘了现在的输入法是什么.这就是我很容易烦躁的点.

5. 敲代码和latex中,反复需要切换中英文(我习惯注释)和半全角符号,经常会出现4的问题,特别烦....


以上给出两种解决方法:

0. 

以搜狗输入法为例,一般的输入法都会有很多快捷键设置等.这里就有中文时使用英文符点,我前面在第四点提到我只讲句号使用英文标点,用到的是这里的自定义标点,并不推荐啊.

总之自带的输入法可能会提供一些对输入更加快捷的设置.大家可以自行探索.


下面给出个人实测过的两种方法(当然也是搜索到的)

其中第一个操作如下:

安装 AutoHotkey

https://www.autohotkey.com/

点击页面上的 Download 按钮,下载最新版本的 AutoHotkey(选择 v2.0 版本)


在桌面或任意文件夹中,右键点击空白处,选择 新建 > 文本文档。将文件命名为 SwitchInput.ahk(注意:文件名可以随意,但扩展名必须是 .ahk)。将以下代码复制并粘贴到文件中

#Requires AutoHotkey v2.0

SwitchInputMethodTo(method) {
    DetectHiddenWindows true
    hWnd := WinGetID("A")
    hIME := DllCall("imm32\ImmGetDefaultIMEWnd", "UInt", hWnd, "UInt")

    id := 0
    if (method == "zh") {
        id := 1025  ; 中文输入法 ID(适用于微软拼音)
    }
    SendMessage(0x283, 0x002, id, , "ahk_id " hIME)
}

; CapsLock + v → 英文输入法
CapsLock & v:: {
    SwitchInputMethodTo("en")
}

; CapsLock + n → 中文输入法
CapsLock & n:: {
    SwitchInputMethodTo("zh")
}

找到你刚才创建的 SwitchInput.ahk 文件,双击运行(这里先右击属性,修改默认打开方式是ahk就行)。运行后(你可以在任务栏右下角看到一个绿色的 AutoHotkey 图标).然后按下 CapsLock + v:切换到英文输入法。按下 CapsLock + n:切换到中文输入法


如果你希望脚本每次开机自动运行,可以将脚本文件放到 Windows 的启动文件夹中:按 Win + R 打开运行窗口,输入 shell:startup,按回车。将 SwitchInput.ahk 文件复制到这个文件夹中。

这样每次开机时,脚本都会自动运行。

如果切换有问题的话,输入法 ID 可能需要调整(上面的1025 适用于微软拼音)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值