Windows下 Vim for VSCode 使用大小写切换键 CapsLock 代替 Esc

使用AutoHotkey实现

为什么不用VSCode自带的快捷键映射呢?

我按照网上的方案试了一下,结果每次按Esc返回的时候,都会同时更改大小写状态,不是很习惯。

安装AutoHotkey

AutoHotkey

因为编写的脚本是2.0版本的,所以下载的时候请选择Download v2.0

编写脚本

在合适的地方创建vscode-vim.ahk脚本。如果想要开机运行,可以直接shell:startup下编写,或是在启动目录创建一个脚本的快捷方式。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#Requires AutoHotkey v2.0

#HotIf WinActive("ahk_exe Code.exe")

; 将 Caps Lock 键映射为 Esc
CapsLock:: {
Send("{Esc}")
}

; 将 Esc 键映射为 Caps Lock
Esc:: {
if (GetKeyState("CapsLock", "T")) {
SetCapsLockState("Off")
} else {
SetCapsLockState("On")
}
}

#HotIf

这个脚本只会在VSCode中生效,将Caps键与Esc键互相转换。想要开启脚本,双击运行即可。