CapsLock Enhancement

将 ⇪CapsLock(大写锁定键)改造为一个强力的功能修饰键(✱ Hyper ),奇迹般地提高操作效率与生产力。让 Capslock 再次伟大!

下载安装

下载并安装 Karabiner-Elements (最新版本 15.5.0)

启用配置

启用 CapsLock Enhancement 配置:点我启用

0号控制平面键位功能图

默认控制平面键位功能图(第0号,还有15个额外可用的控制平面)

亮点

  • 功能强大:将Capslock改造为一个全新的功能修饰键 ✱ Hyper ,类似于 ⇧⌃⌥⌘ 。
  • 用途丰富:预制大量实用功能,导航、删除、窗口管理,终端信号,应用捷径,功能键等等。重新定义键盘!
  • 提速赋能:根据开发者的典型操作习惯进行优化与与设计,高频操作手指无需离开键盘热区,提高操作效率!
  • 扩展定制:✱ 可与⇧⌃⌥⌘组合使用,提供多达十六个额外的控制平面,自由定制所需功能!
  • 鼠标集成:忘掉鼠标吧!用键盘来完成所有鼠标相关操作!
  • 轻量便携:只是简单轻量的键盘定义,随带随走,随下随用,兼容MacOS与Windows。

功能

  • 基础功能按下Capslock发送Esc按住启用✱功能,配合Esc切换大小写锁定
  • 导航功能:VI式导航,结合⌃⌥⌘⇧启用多种功能:光标移动,词句选择,窗口管理,鼠标移动等等…
  • 删除功能:快速执行字/词/句/行/页的删除操作,手无需离开核心区
  • 鼠标功能:将小键盘映射为一个功能完整的鼠标。
  • 窗口管理:切换或关闭桌面/应用/窗口/选项卡,睡眠/锁屏/熄屏/登出。集成外部窗口管理应用。
  • 应用捷径:启动或切换至常用应用,预置MacOS高频应用与流行的开发者工具。
  • 终端控制:发送常用终端控制信号,IDE运行命令,Vim/Tmux的元按键。
  • 文本剪贴:将数字键用做10个额外的文本剪贴板:⌘n复制,n粘贴。
  • 上档变换:将一些键映射至常用高频字符。
  • 功能控制:将F1-F2转义回原本的功能,截屏录屏,音量灯光的精密控制。

安装

以MacOS v3为例,在您的Mac上启用Capslock Enhancement只需要简单的两步:依次点击首页的两个大按钮即可。

  1. 下载软件

    在MacOS上,Capslock通过 Karabiner-Elements 提供服务。

    下载Karabiner Elements,按安装向导提示完成安装,并赋予所需系统权限(设置-安全性与隐私-隐私)。

  2. 加载配置

    使用Safari打开下面的 链接,系统将自动启动Karabiner并加载Capslock配置文件。

    karabiner://karabiner/assets/complex_modifications/import?url=https://raw.githubusercontent.com/Vonng/Capslock/master/mac_v3/capslock.json

    如果您无法访问 Github,或 Karabiner官方陈列馆,可以考虑使用备用访问连接:

    在Karabiner-Element弹出的对话窗口中针对Capslock Enhancement项目选择:Enable All,即可启用生效

    生效后,您可以打开任意编辑器或网页,按住Capslock,同时使用 h,j,k,l 移动光标, 如果可以正常使用,说明Capslock改键已经正常生效。接下来您可以参考下面的说明,尝试更多的功能。


说明

Capslock以ANSI布局键盘为蓝本,对Capslock之外的 所有按键 进行了功能定制与修饰,主要分为10大类功能。

控制平面 由左侧修饰键的排列组合所定义:根据 ⌘⌥⌃⇧的状态,最多有16个额外的控制平面。上图为0号控制平面布局。

类目颜色说明
基础功能单击Capslock发送Esc,按住Capslock启用✱功能。✱Esc切换大小写锁,✱空格切换输入法。
导航功能VI式导航,结合⌃⌥⌘⇧启用多种功能:光标移动,词句选择,窗口管理,鼠标移动等等…
删除功能快速执行字/词/句/行/页的删除操作,手无需离开核心区。
鼠标功能小键盘将小键盘映射为一个功能完整的鼠标。
窗口管理淡蓝切换或关闭桌面/应用/窗口/选项卡,睡眠/锁屏/熄屏/登出。集成外部窗口管理应用。
应用捷径启动或切换至常用应用,预置MacOS高频应用与流行的开发者工具。
终端控制绿发送常用终端控制信号,IDE运行命令,Vim/Tmux的元按键。
文本剪贴将数字键用做10个额外的文本剪贴板:⌘n复制,n粘贴。
上档变换将一些键映射至常用高频字符。
功能控制将F1-F2转义回原本的功能,截屏录屏,音量灯光的精密控制。

基础功能

按键映射为说明
⇪ 点击⎋ Escape单击Capslock发送ESC
⇪ 按住✱ Hyper按住Capslock启用Hyper
✱⎋⇪ Capslock单击ESC切换大写锁定
✱␣⌃␣单击空格切换输入法,+⌘时打开表情符号页

?> ✱ 在实现上被定义为同时按下所有的右侧⌘⌥⌃⇧修饰符 这样允许将快捷键状态透传到外部应用,如Alfred,Moom等

!> 后续介绍如果没有特殊说明,均假定 ✱ Hyper 处于按下状态。

导航功能

  • H, J, K, L, U, I, O, P 被用作基本导航键,分别映射为←↓↑→⇞↖↘⇟(左下上右/PgUp/Home/End/PgDn),位于图中粉色区域。
  • 基本导航键配合左侧修饰键可启用多种导航功能,默认配置了9个控制平面
  • 按住 ⌘ Command,效果为文本选择,额外按住⌥ Option 时,选择单位会变为前后词语上下3行
  • 按住⇧ Shift 的效果为应用/窗口/标签切换,按住⌃ Control 的效果为桌面管理
  • 按住 ⌥ Option 效果为🖱️鼠标移动, 额外按下⇧Shift将移速翻倍 ⏫。 (U, I, O, P 映射为鼠标左击,右击,后退,前进)。
  • 按住⇧⌥将导航键变为 🖲️ 鼠标滚轮,⇧⌘移速翻倍 。其中HJKL为正常滚动,UIOP自然滚动(反向)。
功能移动选择快速选择窗口管理桌面管理🖱️🖱️⏫🖲️🖲️⏫
键\修饰⌘⌥⇧⌃⇧⌥⇧⌘
H⬅️左选一字左选一词先前Tab上个桌面⬅️⬅️⏫⬅️⬅️⏫
J⬇️下选一行下选三行切换应用聚焦窗口⬇️⬇️⏫⬇️⬇️⏫
K⬆️上选一行上选三行先前应用暴露所有⬆️⬆️⏫⬆️⬆️⏫
L➡️右选一字右选一词切换Tab下个桌面➡️➡️⏫➡️➡️⏫
UPgUp选至上页选至上页缩小全屏🖱️L🖱️L➡️➡️
IHome选至行首尾至行首上个窗口隐藏窗口🖱️R🖱️R⬆️⬆️⏫
OEnd选至行尾首至行尾切换窗口隐藏所有🖱️B🖱️B⬇️⬇️⏫
PPgDn选至下页选至下页放大启动菜单🖱️F🖱️F⬅️⬅️⏫

方向键导航

  • 方向键 ←↓↑→ 用于模拟 🖱️鼠标移动。额外按住 ⌥ Option ⏬ 减速,额外按住 ⌘ Command ⏫ 加速
  • 按住 ⇧Shift 切换至 🖲️滚轮移动。额外按住 ⌥ Option ⏬ 减速,额外按住⌘ Command ⏫ 加速
  • 按下↩回车键为鼠标左键单击,配合⌘⌥⌃⇧使用时会相应转化为鼠标的右键,中键,后退键,前进键。
功能🖱️🖱️⏬🖱️⏫🖲️🖲️⏬🖲️⏫
键\修饰⇧⌥⇧⌘
←↓↑→移速=1600移速÷2移速×2滚速=32滚速÷2滚速×2
🖱️L🖱️M🖱️R🖱️L🖱️B🖱️F

删除功能

N M , . 用做删除键。删除操作位于导航键HJKL下方,用于快速执行文本删除。

键\修饰
N前删一词删至行首整行删除
M前删一字前删一词将行下移
,后删一字后删一词将行上移
.后删一词删至行尾整行删除
删除文件永久删除文件

鼠标功能

  • 1-9号数字控制🖱️ 鼠标移动方向,额外按住 ⌥ Option 时 ⏬减速,按住⌘ Command 时 ⏫加速
  • 按住⇧ Shift 切换为🖲️ 滚轮滚轮,在此模式下,额外按住 ⌥ Option 时 ⏬ 减速,额外按住⌘ Command ⏫ 加速
  • 第一行(numlock, =, /, *)转换为鼠标滚动操作,右下侧其余按键(0, ., , +, -)转换为鼠标的5个按键.
🖲️⬅️= 🖲️⬇️/ 🖲️⬆️* 🖲️➡️
7🖱️ ↖️8 🖱️⬆️9 🖱️↗️- 🖱️B
4🖱️ ⬅️5🖱️6 🖱️➡️+ 🖱️F
1🖱️↙️2 🖱️⬇️3 🖱️↘️
0 🖱️L. 🖱️M 🖱️R

窗口管理

  • Tab, Q, W, A, s用于窗口管理,关注应用/窗口/标签页/桌面的切换,关闭等功能。位于图中天蓝色区域。

  • 窗口管理功能(调整大小布局)是通过外部应用完成的,例如MoomMagnetSlate等,您需要为其绑定⌃⌥⇧⌘A作为触发快捷键。

键\修饰
Tab上个应用下个应用下个桌面切换Tab
Q关闭应用关闭应用锁屏注销
W关闭窗口关闭窗口熄屏睡眠
A窗口管理暴露窗口显示桌面LaunchPad
S下个标签页上个标签页上个同应用窗口下个同应用窗口

应用捷径

  • E R T Y F G 被用作默认的应用捷径热键,位于图中黄色区域。
  • 高频系统应用与流行的开发者工具已经被默认分配至3个控制平面中 ✱/⌘/⌥。
  • 您可以通过修改配置文件自行定制喜欢的应用。
键\修饰……
ESafariFinderMail
RiTerm2PreviewTerminal
TVisual Studio CodeTyporaNote
YSiriKarabinerAmphetamine
FAlfred (bind ⌃⌥⇧⌘F)DashDictionary
GIntellij IDEAChromeCalender

终端控制

D, Z, X, C, V, B 用于终端控制,发送信号与IDE命令,位于图中绿色区域。

键\修饰
D⌃D (EOF)定义 (压感点击)
Z⌃Z (SIGTSTP)F5 (VS Code Debug)
X⌃R (IDE Run)⌃F5 (VS Code Run)
C⌃C (SIGINT)⇧F5(VS Code Stop)
V⌃V (Vim Prefix)
B⌃B (Tmux Prefix)

文本剪贴

  • 数字键 1, 2, …, 9, 0 用作剪贴板,按下 ⌘ Command +数字键拷贝,按下数字键粘贴。位于图中紫色区域。
键\修饰
1从剪贴板1粘贴拷贝至剪贴板1
2从剪贴板2粘贴拷贝至剪贴板2
………………
0从剪贴板0粘贴拷贝至剪贴板0

上档变换

  • 朴素的字符映射,将一些字符转换为另一些常用字符,便于输入,位于图中橙色区域。
  • 部分字符会针对开发者有特殊优化映射,例如;'会被映射为:=,或!=(⌘),便于输入比较与赋值表达式。
键\修饰
-_页面缩小
=+页面放大
[({<
])}>
;!:
'==
/⌘/
\⌘/

功能控制

  • 将 F1,F2,…, F12等用作标准功能键,按下✱将其转义回原来的功能,位于图中青色区域。

  • ⌘Command + F1/F2/F3 为切换桌面快捷键,但您必须先在启用系统相关快捷键:

    系统设置键盘快捷键调度中心 → 启用桌面切换快捷键。

  • 如果您使用带TouchBar的Macbook键盘,可以将TouchBar修改回标准功能键组。

    Karabiner-ElementsFunction KeysUse all F1, F2, etc. keys as standard function keys

键\修饰说明
`⌃⇧⌘4⇧⌘4区域选择截图(+⌘保存至桌面)
F1display_brightness_decrement | ⌃1⌃1调低屏幕亮度/桌面1
F2display_brightness_increment | ⌃2⌃2调高屏幕亮度/桌面2
F3⌃↑ | ⌃3⌃3暴露窗口/桌面3
F4Launchpad启动面板
F5illumination_decrement调暗键盘灯
F6illumination_increment调亮键盘灯
F7rewind上一首音乐
F8play_or_pause播放 / 暂停
F9fastforward下一首音乐
F10mute静音
F11volume_decrement调低音量
F12volume_increment调高音量
F13⌃⇧⌘3⇧⌘3全屏截图|(+⌘保存至桌面)
F14⇧⌘5⇧⌘6截图菜单|(+⌘触控栏截图)
F15play_or_pause播放 / 暂停
Insert⇧⌥ display_brightness_increment平滑调高亮度
Delete ⌦⇧⌥ display_brightness_decrement平滑调低亮度
Home ↖⇧⌥ illumination_increment平滑调亮键盘灯
End ↘⇧⌥ illumination_decrement平滑调暗键盘灯
PgUp ⇞⇧⌥ volume_increment平滑调高音量
PgDn ⇟⇧⌥ volume_decrement平滑调低音量

参考

符号释义

GlyphNameGlyphName
CapslockHyper
EscapeSpace
Command (Mac)Alter (Win)
Option (Mac)Win (Win)
ControlShift
ReturnEnter
Arrow CursorHome/End
TabDelete / ForwardDelete
Numlock⏫⏬Fast / Slow
🖱️L左键单击🖱️B鼠标后退
🖱️R右键单击🖱️F鼠标前进
🖱️M中键单击🖲️鼠标滚轮

控制平面

修饰键修饰键修饰键
037
1511
2613
4914
81015
12

版本历史

支持的 Mac 操作系统支持的 Windows 操作系统
MacOS Big Sur (11)Windows 10
MacOS Catalina (10.15)Windows 8
MacOS High Sierra (10.13)Windows 7
MacOS Sierra (10.12)Windows Vista
MacOS EI Capitan (10.11)Windows XP
MacOS Yosemite (10.10) 或更低版本
(via Capslock Mac v1)
(via Capslock Win)

目前提供支持与更新的活跃版本为 Capslock Mac v3, Windows版本已经不再更新。

Mac版本可以在MacOS 10.11+ 中使用,Windows版本可以在 Windows XP - Windows 10中使用。

使用Mac版本时,请参考安装部分的说明。 使用Win版本时,您可以直接下载预编译好的二进制程序 CapsLock.exe。 或下载安装 AutoHotKey后手动加载配置文件 capslock.ahk

常见问题

问:为什么使用 ✱ 作为Hyper功能修饰键的符号?

答:因为 * 的 ASCII代码正好是42,也就是生命、宇宙以及任何事情的终极答案。✱ (Heavy-Asterisk) 是 * 的加强版,看上去更好看一些。

问:Capslock Mac v3有什么新花样?

答:原本的v2只定义了1到3个控制平面,v3最多使用了9个控制平面。添加了大量的功能,使得Capslock可有的修饰键⌘⌥⌃⇧产生化学反应。以一种符合逻辑的方式排列组合出更多的功能。

问:Capslock Mac v3相对于v2有什么不兼容之处?

V3在整体上采用前向兼容策略,但确实有三个地方进行了不兼容的调整。

  • 第二行的数字键1-0原本只是简单地上档转移为对应字符,现在变成了10个特殊的剪贴板。
  • F13 / F14 原本用做 前后切歌 ,现在修改为截图功能,更符合这两个键的原本语义。
  • ⌘D 原来是打开词典App,现在则变为 定义词语(⌘⌃D,或重按触控板的功能),词典App被新挂在了⌥F下。

问:为什么没有Linux操作系统支持?

答:Linux的桌面环境较为复杂,碎片化,不好搞,而且我本人主要通过MacOS终端来使用Linux。Linux的原生支持理论上可以通过xmodmap来实现,欢迎贡献。

问:MacOS中为什么有一个旧版本?

答:曾经有一个旧版本的Karabiner,使用XML格式的配置文件。Apple在MacOS Sierra(10.12)中修改了内核架构,很多程序都要大改。所以后来就有了Karabiner的新版本,也就是现在还在使用的Karabiner-Elements了。

问:怎样按自己的需求定制?

您可以fork一份本项目,按照规则照葫芦画瓢即可。 直接按需修改 mac_v3/capslock.json 文件,导入Karabiner启用即可。 如果您觉得Json格式让人眼花,可以编辑可读性更好的mac_v3/capslock.yml文件,而后执行make compile将其转换为JSON。 当您进行贡献时,也应当通过修改YAML,生成JSON的方式进行,保持两者间的同步。

问:这么好用的东西,是原创吗?

答:据我所知,本人应该是第一个弄这种 Capslock 改造的,因为当时没找到什么相关资料。

最早的AHK版本具体可以追溯到2013年,15年还有一篇文章介绍背后的设计理念:CapsLock魔改大法——变废为宝实现高效编辑

大部分能搜索到的Capslock方案,特别是基于Karabiner与AutoHotKey的改造基本都能看到这里的影子。

这个配置也是Karabiner官方陈列馆收录的第一个Capslock全面改造方案,

问:后面还会有变动与修改吗?

答:习惯这种东西一旦养成是很难改,所以这种配置文件不适合频繁修改。实际上从13年第一次设计完后,基本除了一些边边角角的地方,没有特别大的变动。 不过最近(2021)有一次非常大的升级(Capslock mac v3),会将原有的约3个控制平面扩充到16个,并填充大量累积改进。当然在功能上肯定是老版本的功能超集,不会影响现有用户的使用习惯。

问:为什么有时候会触发MacOS系统诊断?

ISSUE #30 指出,在MacOS中同时按下⌘⌥⌃⇧.会触发系统自动诊断。

您可以参考这篇文章,将这一快捷键二次映射为对应功能。

用户之声

关于

作者: Vonng (rh@vonng.com)

协议:Apache 2.0 License

最后更新于