System Functions and Reference
This page collects the mappings and project details you look up rather than learn in sequence.
Function and system keys
F1–F12 behave as standard function keys by default; hold Hyper to send their media or system functions instead. The cyan block covers the whole top row plus the screenshot keys.
| Key | Hyper action | + ⌘ |
|---|---|---|
| ` | Area screenshot to clipboard | Area screenshot to file |
| F1 / F2 | Brightness down / up | Desktop 1 / 2 |
| F3 | Mission Control | Desktop 3 |
| F4 | Spotlight | — |
| F5 / F6 | Keyboard light down / up | — |
| F7 / F8 / F9 | Previous / play-pause / next | — |
| F10 / F11 / F12 | Mute / volume down / volume up | — |
| F13 | Full screenshot to clipboard | Full screenshot to file |
| F14 | Screenshot menu | Legacy Touch Bar screenshot |
| F15 | Play / pause | — |
The screenshot keys follow one convention: the plain Hyper chord puts the capture on the clipboard, and adding ⌘ writes it to afile on the desktop.
| Chord | Emits | Result |
|---|---|---|
| ✱ with ` | ⌃ with ⇧ with ⌘ with 4 | Select an area → clipboard |
| ✱ with ⌘ with ` | ⇧ with ⌘ with 4 | Select an area → file |
| ✱ with F13 | ⌃ with ⇧ with ⌘ with 3 | Whole screen → clipboard |
| ✱ with ⌘ with F13 | ⇧ with ⌘ with 3 | Whole screen → file |
| ✱ with F14 | ⇧ with ⌘ with 5 | Screenshot and recording menu |
Enable the Desktop 1/2/3 shortcuts under System Settings → Keyboard → Keyboard Shortcuts… → Mission Control before using ⌘ with F1–⌘ with F3; macOS ships them disabled. Touch Bar behaviour applies only to legacy Touch Bar Macs — see theofficial troubleshooting note.
The six-key navigation cluster on a full-size keyboard gives the same three system controls in smaller steps, by emitting ⇧ with ⌥ together with the media key — macOS’s own quarter-step modifier.
| Cluster keys | Action |
|---|---|
| Insert / ⌦ | Fine brightness up / down |
| ↖ / ↘ | Fine keyboard-light up / down |
| Page Up / Page Down | Fine volume up / down |
Symbols
| Glyph | Name | Glyph | Name |
|---|---|---|---|
| ⇪ | Caps Lock | ✱ | Hyper |
| ⎋ | Escape | ␣ | Space |
| ⌘ | Command | ⌥ | Option |
| ⌃ | Control | ⇧ | Shift |
| ↩ | Return | ⌤ | Keypad Enter |
| ⇥ ⇤ | Tab / Back-tab | ⇭ | Num Lock |
| ← ↓ ↑ → | Arrow keys | ↖ ↘ | Home / End |
| ⇞ ⇟ | Page Up / Page Down | ⌫ ⌦ | Delete / Forward Delete |
| ⏫ ⏬ | Faster / slower | 🖲️ | Mouse wheel |
| 🖱️L / 🖱️R / 🖱️M | Buttons 1 / 2 / 3 | 🖱️B / 🖱️F | Buttons 4 / 5, back and forward |
The ✱ symbol is a heavy asterisk. The ordinary asterisk has ASCII code 42 — the answer to life, the universe, and everything.
How a rule is written
Every mapping in the configuration has the same shape. Reading one makes the whole file legible, and makes the customization section below far less intimidating:
The four right_* modifiers in mandatory are Hyper itself — they appear in
every single rule. Whatever else sits beside them, left_control here, selects
the control plane. to is what the application actually receives.
Version history
| Version | Years | Platform | Status |
|---|---|---|---|
| Mac V3 | 2021–present | Karabiner-Elements | active |
| Mac V2 | 2017–2021 | Karabiner-Elements | archived |
| Mac V1 | 2015–2017 | Karabiner (legacy) | archived |
| Windows | 2013–2015 | AutoHotkey | archived |
V2 used only a handful of planes. V3 introduced the four-bit plane model, which is what let the layout grow to 282 mappings without becoming arbitrary.
V3.1 then intentionally changed several defaults that older users will notice:
- clipboards moved to 6–0, and 1–5 are no longer slots;
- C and ⌘ with C launch Codex and Claude;
- Spotlight and Alfred 5 replace Launchpad and Alfred 4;
- F13 and F14 provide screenshots instead of previous / next track;
- ⌘ with D performs Define rather than opening Dictionary.
The Windows AutoHotkey version remains in the repository as apre-compiled binary andsource, but it is not tested against current Windows releases.
Customize the configuration
Browse all sixteen planes, inspect the real Karabiner output of any key, rename the applications behind the yellow keys, and export a ready-to-import JSON file.
Fork the repository, edit the human-readable mac_v3/capslock.yml, and
regenerate the JSON. Any rule the Karabiner schema allows is available here.
The YAML is the source of truth and the JSON is generated from it. Regenerating takes one command and yq v4:
A good first customization is claiming one of the seven free planes. Copy any
rule, change the left modifier in mandatory, and you have a whole keyboard’s
worth of space that nothing else uses — plane 5
(✱ with ⌘ with ⌃) and plane 7
(✱ with ⌘ with ⌥ with ⌃) are both completely empty.
Keep the YAML and the generated JSON synchronized: the site and the Karabiner gallery both publish the JSON.
FAQ and troubleshooting
A chord does nothing at all.
Check Settings → Complex Modifications first: the ten rules are enabled individually, and a fresh import leaves nothing on. If the rule is enabled, open Karabiner-EventViewer and press the chord — it shows exactly what reaches the system, which distinguishes a missing rule from an application that swallows the shortcut.
Caps Lock sends Escape but nothing else works.
That is the signature of enabling only the first rule. CapsLock to Hyper
provides tap-Escape and hold-Hyper; the other nine rules provide everything
that Hyper then does.
Why can a chord trigger macOS diagnostics?
Issue #30 documents that ⌘ with ⌥ with ⌃ with ⇧ with . can trigger macOS diagnostics. Remap that system shortcut if it conflicts with your chosen plane.
Why is Linux not supported?
Desktop environments differ substantially. The author primarily uses Linux
through a macOS terminal. Native support could be implemented with tools such
as xmodmap; contributions are welcome.
Why does the repository contain older macOS versions?
Legacy Karabiner used XML. Karabiner-Elements replaced it for macOS Sierra and later, so the older configurations remain for historical systems.
Is the design original?
The first AutoHotkey version dates to 2013 and the first Mac version to 2015. The current configuration is listed in the Karabiner-Elementscomplex-modifications gallery.
Project
CapsLock Enhancement is maintained by Vonng and distributed under the Apache License 2.0. Source, releases, and issue tracking live onGitHub.