Skip to content

CapsLock Enhancement

Transform CapsLock into a powerful modifier Hyper that miraculously increases your work productivity! Make CapsLock Great Again!

Download & Install

Download Karabiner-Elements. This guide was verified with version 16.1.0 in August 2026; use the official site for the current release and support matrix.

Enable Configuration

Import the current CapsLock Enhancement configuration by clicking here.

control-plane-0

Control Plane 0 Layout (There are 15 more available!)

Highlights

  • Powerful: Transform Capslock into a great modifier: Hyper(). (such as )
  • Useful: Navigation, mousekey, clipboard, win/term ctrl, shortcuts, etc… Redefine the keyboard!
  • Speed-Up: Optimized for developers, high-frequency move stay in hot zone.
  • Extensible: Work with existing modifiers, which introduce 16 extra control planes.
  • MouseKey: Manipulate mouse cursor and wheels with keyboard
  • Lightweight: The actively maintained V3 configuration targets macOS; the historical Windows version remains archived.

Features

  • Basic : Press Capslock emit an Escape. Hold it enabling the Hyper Modifier.
  • Navigation : Vim style navigation. Cursor move, text selection, switch desktop/window/tab, mouse move/wheel,etc…
  • Deletion : Maps BNM, to deletion operation to perform fast char/word/line deletion without hand move.
  • MouseKey : Maps keypad to fully functional mouse
  • Window : Close app/win/tab, Switch app/win/tab/desktop, integration with win-manager app such as Moom, Slate, Magnet
  • Application : Shortcuts for launching or switching frequently used applications
  • Terminal : Send terminal/IDE commands, launch Codex or Claude, and use Vim/Tmux prefix keys via .
  • Clipboard : Turn number keys 6–0 into five text clipboards. n copies and n pastes.
  • Shifter : Turn some keys into common code symbols.
  • Functional : Screenshots, standard function keys, and fine-grained brightness, keyboard-light, and volume control.

Install

This guide was verified with Karabiner-Elements 16.1.0 in August 2026. The current release supports macOS 13–27 on Intel and Apple silicon.

  1. Install Karabiner-Elements

    Download Karabiner-Elements, open the DMG, and run Karabiner-Elements.pkg.

    Open Karabiner-Elements Settings and follow its System Settings prompts. Allow the privileged and non-privileged background services, Accessibility, Input Monitoring, and the Driver Extension. In Virtual Keyboard, select the layout matching your physical keyboard. See the official installation guide.

  2. Import and enable the configuration

    Open this import link, or copy it into your browser:

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

    In Karabiner-Elements Settings, use Complex Modifications → Add predefined rule → Import more rules from the internet. Complete Import/Allow, enable the rules you need, and verify the result with Karabiner-EventViewer. See the official complex-modifications guide.

    For manual installation, download capslock.json into ~/.config/karabiner/assets/complex_modifications/, then choose Add predefined rule.

    You can now try moving the cursor with ⇪ + h,j,k,l and explore the other features below.

Usage

Capslock works on ANSI keyboards and similar layouts. It literally remaps every keys on the keyboard. Including 10 categories.

Control Planes are defined by combinations of four extra left modifiers: . This image shows control plane 0.

CategoryColorDescription
BasicBluePress Capslock emit an Escape. Hold it enabling the Hyper Modifier.
NavigationPinkVim style navigation. Cursor move, text selection, switch desktop/window/tab, mouse move/wheel,etc…
DeletionBrownMaps BNM, to deletion operation to perform fast char/word/line deletion without hand move.
MouseKeyKeypadMaps keypad to fully functional mouse
WindowAzureClose or switch apps, windows, tabs, and desktops; integrate with an external window manager.
ApplicationYellowShortcuts for launching or switching frequently used applications
TerminalGreenSend terminal/IDE commands, launch Codex or Claude, and use Vim/Tmux prefix keys via .
ClipboardPurpleTurn number keys 6–0 into five text clipboards. n copies and n pastes.
ShifterOrangeTurn some keys into common code symbols.
FunctionalCyanScreenshots, standard function keys, and fine-grained light/volume control.

Basic

KeyMapsToComment
Press EscapeClick Capslock to emit Escape
Hold HyperHold Capslock to enable Hyper modifier.
CapslockPress to switch Capslock status
Switch input source, + to emoji

Note that is implemented as the combination of ALL RIGHT MODIFIERS: .

Hold Hyper to enable hyper functionalities. We will assume and omit that in subsequent document.

Navigation

  • H, J, K, L, U, I, O, P are used as Navigators. Maps to by default. (pink area).
  • 9 control planes has already been allocated for navigators.
  • Hold additional Command for selection. (like holding shift in normal), additional Option for word/para selection.
  • Hold additional Shift for app/win/tab switching. Hold additional Control for desktop management.
  • Hold the additional Option for 🖱️ mouse move. Add shift to ⏫ accelerate. (U, I, O, P maps to mouse buttons).
  • turns navigator to 🖲️ mouse wheel, and is the ⏫ accelerated version . HJKL for wheel, while UIOP for reversed wheel move.
FeatureMoveSelectWordSelWindowDesktop🖱️🖱️⏫🖲️🖲️⏫
Key\Mod
HLeftword leftword leftprev tabprev desk⬅️⬅️⏫⬅️⬅️⏫
JDownline down3 line downnext appfocus⬇️⬇️⏫⬇️⬇️⏫
KUpline up3 line upprev appexpose all⬆️⬆️⏫⬆️⬆️⏫
LRightword rightword rightnext tabnext desk➡️➡️⏫➡️➡️⏫
UPgUpprev pageprev pagezoom-fullscreen🖱️L🖱️L➡️➡️⏫
IHomeline headend2headprev winhide🖱️R🖱️R⬆️⬆️⏫
OEndline endhead2endnext winhide all🖱️B🖱️B⬇️⬇️⏫
PPgDnnext pagenext pagezoom+Spotlight🖱️F🖱️F⬅️⬅️⏫

Arrow Navigation

  • Arrows → to 🖱️ mouse actions too. Hold Option to ⏬ slow down, hold Command to ⏫ speed up.
  • Hold Shift turns to 🖲️ wheel move. Extra Option to ⏬ slow down, extra Command to ⏫ speed up.
  • Return maps to left-click. And additional turns into right click, middle-click, backward, forward.
Feature🖱️🖱️⏬🖱️⏫🖲️🖲️⏬🖲️⏫
Key\Mod
speed = 1600speed ÷ 2speed × 2speed = 32speed ÷ 2speed × 2
🖱️L🖱️M🖱️R🖱️L🖱️B🖱️F

Deletion

N M , . are used as Deletor keys. Right below the navigators for fast access (brown area).

Key\Mod
Ndel a word aheaddel till line headdel the whole line
Mdel a char aheaddel a word aheadmove line below
,del a char afterdel a word aftermove line above
.del a word afterdel till line enddel the whole line
del filepurge file

MouseKey

  • Turn Keypad into a fully functional 🖱️ mouse.
  • Numbers maps to 8 direction 🖱️ mouse move. Hold Option to ⏬ slow down, hold Command to ⏫ speed up.
  • Hold additional Shift turns to 🖲️ wheel move. Extra Option to ⏬ slow down, and extra Command to ⏫ speed up.
  • First line maps to wheel move and 0, ., , +, - maps to five mouse buttons.
🖲️⬅️= 🖲️⬇️/ 🖲️⬆️* 🖲️➡️
7🖱️ ↖️8 🖱️⬆️9 🖱️↗️- 🖱️B
4🖱️ ⬅️5🖱️6 🖱️➡️+ 🖱️F
1🖱️↙️2 🖱️⬇️3 🖱️↘️
0 🖱️L. 🖱️M 🖱️R

Window Control

  • Tab, Q, W, A, s used as window control keys. Focusing on close/switch applications / windows / tabs / desktops. (azure area)
  • Window layout is delegated to an external application such as Moom or Magnet. Bind A manually. Slate is retained only as a legacy example.
Key\Mod
next appprev appswitch desktopswitch tab
Qclose appclose appLock ScreenLogout
Wclose tabclose all winDisplay SleepSleep
Awin appexpose allshow desktopSpotlight
Snext tabprev tabnext winprev win

App Shortcuts

  • E R T Y F G are used as application shortcuts. (yellow area)
  • Popular apps and dev tools are registered to 3 default planes: //. Assign these shortcuts according to your own needs.
Key\Mod
ESafariFinderMail
RiTerm2PreviewTerminal
TVisual Studio CodeTyporaNotes
YSiriKarabiner-ElementsAmphetamine
FAlfred 5DashDictionary
GIntelliJ IDEAChromeCalendar

Terminal Control

D, Z, X, C, V, B provide terminal and IDE commands, launch Codex or Claude, and expose Vim/Tmux prefix keys. (green area)

Key\Mod
DD Ctrl+D (Send EOF)Define (Force touch)
ZZ Ctrl+Z (SIGTSTP)F5 (VS Code Debug)
XR Ctrl+R (IDE Run)F5 (VS Code Run)
COpen CodexOpen Claude
VVCtrl+V (Vim Prefix)
BBCtrl+B (Tmux Prefix)

Clipboard

Number keys 6, 7, 8, 9, 0 provide five text clipboards. Hold to copy, and press a number to paste. (purple area)

Key\Mod
6Paste from clip 6Copy to clip 6
7Paste from clip 7Copy to clip 7
………………
0Paste from clip 0Copy to clip 0

Shifter

  • Trivial transformation for misc characters. (orange area)
  • Some special tricks for developers. Such as ;' maps to := or != ()
Key\Mod
-_Zoom Out
=+Zoom In
[({«/kbd>
])}>
;!:
==
//
\/

Functional

  • Use F1,…F12 as standard function keys, while holding Hyper sends their media/system functions. (cyan area)

  • Command + F1 / F2 / F3 switches desktops. Enable the shortcuts first:

    System SettingsKeyboardKeyboard Shortcuts…Mission Control → Switch to Desktop 1/2/3

  • Karabiner-Elements 15.1 and later use the macOS function-key setting. Configure it in:

    System SettingsKeyboardKeyboard Shortcuts…Function KeysUse F1, F2, etc. keys as standard function keys

    Touch Bar instructions apply only to legacy Touch Bar Macs; see the official troubleshooting note.

Key\ModComment
`44Area selection screenshot( to file)
F1display_brightness_decrement | 11Brightness Down / Desktop 1
F2display_brightness_increment | 22Brightness Up / Desktop 2
F3 | 33Expose All / Desktop 3
F4SpotlightSpotlight
F5illumination_decrementKeyboard Light Down
F6illumination_incrementKeyboard Light Up
F7rewindMusic Prev
F8play_or_pausePlay / Pause
F9fastforwardMusic Next
F10muteMute
F11volume_decrementVolume Down
F12volume_incrementVolume Up
F1333Full screenshot ( to file)
F1456Screenshot menu (: legacy Touch Bar screenshot)
F15play_or_pausePlay / Pause
Insert display_brightness_incrementFine-Grained Brightness Up
Delete display_brightness_decrementFine-Grained Brightness Down
Home illumination_incrementFine-GrainedKeyboard Light Up
End illumination_decrementFine-Grained Keyboard Light Down
PgUp volume_incrementFine-Grained Volume Up
PgDn volume_decrementFine-Grained Volume Down

References

Symbols

GlyphNameGlyphName
CapslockHyper
EscapeSpace
Command (Mac)Alter (Win)
Option (Mac)Win (Win)
ControlShift
ReturnEnter
Arrow CursorHome/End
TabDelete / ForwardDelete
Numlock⏫⏬Fast / Slow
🖱️LMouse Left Click (Button1)🖱️BMouse Backward (Button4)
🖱️RMouse Right Click (Button2)🖱️FMouse Forward (Button5)
🖱️MMouse Middle Click (Button3)🖲️Mouse Wheel

Control Planes

control planes
PlaneModifiersPlaneModifiersPlaneModifiers
037
1511
2613
4914
81015
12

Plane 0

Plane 1

Plane 2

Version

The current Mac V3 documentation is verified against Karabiner-Elements 16.1.0. Its official support matrix covers macOS 13 Ventura through macOS 27 Golden Gate on Intel and Apple silicon. Older macOS releases require an archived Karabiner-Elements release and are not covered by the current V3 installation guide.

The Windows version is archived. Its pre-compiled binary and AutoHotkey source remain available for historical use, but are not actively tested or maintained.

FAQ

Q: Why using as the symbol for Hyper?

A: Because the ASCII code for * is exactly 42, which is the ultimate answer to life, universe, and everything. (Heavy-Asterisk) is a pretty version of *.

Q: What’s new in v3?

A: V2 used only a few control planes. V3 can combine Hyper with the four left modifiers to expose up to 16 planes and organize many more functions consistently.

V3.1 updates the application shortcuts for current macOS: C launches Codex, C launches Claude, number keys 6–0 provide five clipboards, Spotlight replaces Launchpad, and Alfred 5 replaces Alfred 4.

Q: Which compatibility changes should I know about?

A: The current V3.1 layout intentionally changes several shortcuts from older releases:

  • F13/F14 provide screenshot controls instead of previous/next track.
  • Number keys 6–0 provide five text clipboards; 1–5 are no longer clipboard slots.
  • C and C launch Codex and Claude.
  • Spotlight and Alfred 5 replace Launchpad and Alfred 4.
  • D performs Define instead of opening Dictionary.

Q: Why is there no Linux OS support?

A: I’m using Linux through macOS terminal. It actually feels much better than raw Linux 😆. This feature can be achieved via xmodmap, contribution is welcome!

Q: Why is there an older version in macOS?

A: Legacy Karabiner used XML configuration and was replaced by Karabiner-Elements for macOS Sierra and later. The repository retains those older configurations for historical systems.

Q: How can I customize it to my needs?

A: Fork this repository and edit the human-readable mac_v3/capslock.yml according to the Karabiner-Elements documentation, then regenerate capslock.json with make -C mac_v3 compile (requires yq v4).

Q: Is this original?

A: This project started with an AutoHotkey version in 2013 and added its first Mac version in 2015. The current configuration is listed in the Karabiner-Elements complex-modifications gallery.


User Feedback


About

Author: Vonng (rh@vonng.com)

License: Apache 2.0 License

featured.jpg

Last updated on