GoForum🌐 V2EX

给 Capslock 键加了 KPI, vibe 了一个全局支持 Vim 风格导航的 app

287854442 · 2026-02-05 15:12 · 0 次点赞 · 0 条回复

CapsLock 竟然有两个使用上的烦恼,不知道各位是不是也一样:

  1. Capslock 的位置是个左手小拇指的 C 位,但是功能却很单一,只能调节大小写
  2. Capslock 其实它是可以作为修饰键的,但是基本上所有键盘映射软件都不支持它作为修饰键来进行映射,比如说我想映射 Capslock + H => Left Arrow ,目前似乎实现不了。

我在 macOS 使用 Karabiner-Elements 把 Capslock 先映射为 Fn 键,然后基于 Fn 键也映射出了一堆我自己用的快捷键 (在这个帖子上 https://v2ex.com/t/768897)

在 Windows 上我没有找到很好用的。我不喜欢用 AutoHotkey ,我之前用过它,然后它会触发一些很奇怪的现象,在我打游戏的时候,会莫名其妙地触发一些现象(大概变现像 Windows 键一直被按着,当我按 WASD 的时候,就直接触发了 Windows 加 WASD 的组合键,巨烦)

然后我就想到 VibeCoding 一个,然后在的过程中,我发现 CapsLock 竟然可以作为”修饰键”来用,这样我不用麻烦去映射 CapsLock 键为其他键的。单按 CapsLock 本身(并抬起),还是起到它原来单按的作用。

另外还有一个好处:既然 Capslock 键没有映射为其他的修饰键,那它就可以和其他修饰键一起用。

比如 Capslock + H -> left, 那可以 Capslock + H + Shift -> 向左选择,同理可以加 alt/contrl

然后很方便就实现了 Vim 里的上下左右

  • CapsLock + HLeft Arrow
  • CapsLock + JDown Arrow
  • CapsLock + KUp Arrow
  • CapsLock + LRight Arrow

在此基础上,我又添加了一些我比较常用的一些键。当然,这些并不是 Vim 的标准。

Extended Navigation

  • CapsLock + WNext Word (Ctrl + Right)
  • CapsLock + BPrevious Word (Ctrl + Left)
  • CapsLock + AHome (Start of line)
  • CapsLock + EEnd (End of line)
  • CapsLock + UUp 10x (Fast Scroll Up)
  • CapsLock + DDown 10x (Fast Scroll Down)

Editing Shortcuts

  • CapsLock + IBackspace
  • CapsLock + ONew Line (End + Enter)
  • CapsLock + NDocstring Snippet (Inserts """""" and centers cursor)

下面这些部分的映大概率不符合你心意,但我估计你大概率会有自己喜欢的映射方式。 我非常推荐你自己尝试去改成自己想要的样子,来实现完全的自定义,现在有了 VibeCoding 真的是很简单,有长尾收益。

但是这里有一个小提示: 如果你是一个游戏玩家,已经把 Capslock 作为游戏里的功能键,比如我在 CS2 里会把下蹲调成 Capslock 。那一定要在开启游戏之前,把这个服务给暂停掉。否则在按下 CapsLock 键的时候并不能立即触发下蹲。

因为这个项目的原理是: 当你按一下 Capslock 键的时候,它会检测其他键的触发,这个时候如果你继续按 H ,就会触发 left 。 所以在按下 Capslock 键的时候,并不会触发 Capslock 键本身的功能,在抬起 Capslock 键的时候,它会触发 Capslock 本身的功能。

ps: 最近用 tauri 有点上瘾了…

Github: https://github.com/XueshiQiao/GlobalVimLikeNavi/

截图:

0 条回复
添加回复
你还需要 登录 后发表回复

登录后可发帖和回复

登录 注册
主题信息
作者: 287854442
发布: 2026-02-05
点赞: 0
回复: 0