Skip to content

This is the multi-page printable view of this section. .

Return to the regular view of this page.

Earlier versions

The Mac V2, Mac V1 and Windows editions of the Capslock layout, kept for history and no longer maintained.

Before V3, the Capslock layout went through three editions: an AutoHotkey script for Windows, an XML configuration for the original Karabiner on OS X, and a first set of rules for Karabiner-Elements. Their files are still in the GitHub repository. These pages record what each edition did and how it was installed.

Kept for history only

These versions are not maintained. They were written for operating systems that are many years old, and nobody has checked them against current macOS or Windows. To use the layout today, install Mac V3.

VersionYearsRan onConfiguration
Mac V22017 – 2021Karabiner-Elements on macOS 10.11 – 10.13Complex-modification rules in JSON
Mac V12015 – 2017Karabiner and Seil on OS X 10.10 – 10.11A Karabiner private.xml
Windows2013 – 2015AutoHotkey on Windows XP – 10An AutoHotkey script and a prebuilt .exe

The Mac editions wrote Hyper as ✱, and these pages keep that notation: ✱ H means hold Caps Lock and press H.

1 - Mac V2

Capslock Enhancement Mac V2, the 2017–2021 Karabiner-Elements rules that made Caps Lock Escape on a tap and Hyper on a hold.
Archived, not maintained

Mac V2 was written for Karabiner-Elements on macOS 10.11 El Capitan, 10.12 Sierra and 10.13 High Sierra, the systems its README listed. It was replaced by Mac V3 in 2021 and has not been checked against current macOS or Karabiner-Elements.

Mac V2 was the first Capslock edition for Karabiner-Elements, the rewrite of Karabiner that macOS Sierra required. It is a set of ten complex-modification rules. A tap on Caps Lock sends Escape. Holding it turns it into Hyper (✱): Karabiner-Elements holds the four right-hand modifiers, ⌃ ⌥ ⇧ ⌘, together, so Hyper still combines with the left-hand ones and most apps accept it.

The Mac V2 layout drawn on a full keyboard, with the action of each key under Hyper
The layout diagram from the V2 README. A few app keys in it differ from the tables on this page, which follow the rule file.

Caps Lock

KeyResult
Tap Caps LockEscape
Hold Caps LockHyper (✱), the right-hand ⌃ ⌥ ⇧ ⌘ held together
✱ EscapeCaps Lock. The README notes a bug: Caps Lock was hard to turn off again

Navigation

Hyper alone moves the cursor. Adding one left-hand modifier selects instead, moves the pointer, switches tabs and apps, or works with Spaces.

Key✱ move✱ ⌘ select✱ ⌥ pointer✱ ⇧ switch✱ ⌃ Spaces
H←⇧←Pointer leftPrevious tab (⌃⇧Tab)Space to the left (⌃←)
J↓⇧↓Pointer downNext app (⌘Tab)Windows of the current app (⌃↓)
K↑⇧↑Pointer upPrevious app (⇧⌘Tab)Mission Control (⌃↑)
L→⇧→Pointer rightNext tab (⌃Tab)Space to the right (⌃→)
UPage Up⇧Page Up———
IHome⇧Home———
OEnd⇧End———
PPage Down⇧Page Down———

Mouse

KeyResult
✱ ← ↓ ↑ →Move the pointer, like ✱ ⌥ H J K L
✱ ReturnLeft click
✱ ⌘ ReturnRight click

Deleting

KeySendsDeletes
✱ N⌥⌫The word before the cursor
✱ M⌫The character before the cursor
✱ ,⌦The character after the cursor
✱ .⌥⌦The word after the cursor
✱ ⌘ N, ✱ ⌘ M⌘⌫Back to the start of the line

Windows and tabs

KeySendsResult
✱ Tab⌘TabNext app
✱ ⌘ Tab⇧⌘TabPrevious app
✱ Q⌘QQuit the app
✱ W⌘WClose the tab
✱ S⌃TabNext tab
✱ ⌘ S⌃⇧TabPrevious tab
✱ A⌃⌥⇧⌘ALeft free for the window manager Moom
✱ ⌘ A⌃↑Mission Control

Terminal keys

KeySendsUsed for
✱ Z⌃ZSuspend the job (SIGTSTP)
✱ X⌃RRun, in IDEs
✱ C⌃CInterrupt (SIGINT)
✱ V⌃VVim prefix
✱ B⌃BThe default tmux prefix
✱ D⌃DEnd of input (EOF)

Apps

The README suggested replacing these with your own favourite apps.

Key✱✱ ⌘
ESafariFinder
RiTerm2Preview
TVisual Studio CodeTypora
D⌃D (see above)Dictionary
F⌃⌥⇧⌘F, left free for AlfredDash
GIntelliJ IDEAGoogle Chrome

Function keys

V2 expected F1 to F12 to act as standard function keys and used Hyper to get the printed functions back. On a MacBook Pro with a Touch Bar, the README suggested turning on Karabiner-Elements › Function Keys › "Use all F1, F2, etc. keys as standard function keys".

Key✱Key✱
F1Brightness downF7Previous track
F2Brightness upF8Play or pause
F3Mission ControlF9Next track
F4LaunchpadF10Mute
F5Keyboard backlight downF11Volume down
F6Keyboard backlight upF12Volume up

Keys found on full-size keyboards:

Key✱
F13 (Print Screen)Previous track
F14 (Scroll Lock)Next track
F15 (Pause)Mute
Insert, DeleteBrightness up, down, in fine steps
Home, EndKeyboard backlight up, down, in fine steps
Page Up, Page DownVolume up, down, in fine steps

Shifted symbols

Key✱ types
1 2 3 4 5 6 7 8 9 0! @ # $ % ^ & * ( )
- =_ +
[ ]( )
;!
'=
✱ ⌘ ;:
✱ ⌘ '=

The last four rows make != and := quick to type.

Other keys

KeySendsResult
✱ `⌃⇧⌘4Screenshot of an area, to the clipboard
✱ ⌘ `⇧⌘4Screenshot of an area, to a file
✱ Delete⌘⌫Move to Trash in Finder
✱ / and ✱ \⌘/Comment or uncomment, in many editors
✱ Space⌃SpaceSwitch input source

How it was installed

These are the steps from the V2 README, kept for the record.

  1. Download and install Karabiner-Elements.
  2. Import the rules by opening this address in Safari:
    karabiner://karabiner/assets/complex_modifications/import?url=https://raw.githubusercontent.com/Vonng/Capslock/main/mac_v2/capslock.json
    Or copy capslock.json into ~/.config/karabiner/assets/complex_modifications/, which is what make install in the mac_v2 folder does.
  3. In Karabiner-Elements, open the Complex Modifications tab, click Add Item, and enable the rules you want.
  4. To change the apps or any other key, edit the imported file in ~/.config/karabiner/assets/complex_modifications/.
Note

The README's own import link pointed at the repository's mac/ folder, which now holds V3, and its second link pointed at the Karabiner-Elements gallery, which also lists V3 today. The address above points at the V2 file.

Files

All of V2 is in mac_v2/ in the repository.

FileWhat it is
capslock.jsonThe ten V2 rules, ready to import
karabiner.jsonA complete Karabiner-Elements configuration with the same rules. make all copies it over ~/.config/karabiner/karabiner.json and replaces your existing settings
makefileThe install and all targets described above
README.mdThe original V2 documentation

Differences from V3

  • Planes. V2 combined Hyper with one left-hand modifier at a time, which gave it only a few planes. V3 combines Hyper with any of the four left-hand modifiers, for up to 16 planes.
  • Changed keys. In V3.1, F13 and F14 control screenshots instead of the previous and next track, ✱ ⌘ D runs Define instead of opening Dictionary, and Spotlight replaces Launchpad.

2 - Mac V1

Capslock Mac V1, the 2015–2017 private.xml that used Seil and the original Karabiner to turn Caps Lock into Hyper on OS X 10.10 and 10.11.
Archived, not maintained

Mac V1 ran on the original Karabiner together with Seil, on OS X 10.10 Yosemite and 10.11 El Capitan. The original Karabiner does not run on macOS 10.12 Sierra or later, so V1 cannot run on any current Mac. It was replaced by Mac V2, and the maintained edition today is Mac V3.

Mac V1 was the first Capslock edition for the Mac. It needed two tools. Seil changed the key code that Caps Lock sends to 80, the code of F19. Karabiner then read V1's private.xml, which turned that key into Hyper (✱) while held and defined each group of shortcuts as a separate item to switch on in Karabiner's preferences.

The Mac V1 layout drawn on a full keyboard; key labels in English, colour legend in Chinese
The layout diagram from the V1 README. Its colour legend is in Chinese, and some app keys in it differ from the lists on this page.

Caps Lock

KeyResult
Hold Caps LockHyper (✱)
Tap Caps LockEscape, or ⌃Space to switch input source. These are two separate items that conflict, so turn on only one
✱ EscapeCaps Lock
✱ SpaceEscape

Navigation

Hold Hyper to move the cursor; add the left ⌘ to select as you move.

Key✱ move✱ ⌘ select
H←⇧←
J↓⇧↓
K↑⇧↑
L→⇧→
UPage Up⇧Page Up
IHome⇧Home
OEnd⇧End
PPage Down⇧Page Down

Deleting

KeySendsDeletes
✱ N⌥⌫The word before the cursor
✱ M⌫The character before the cursor
✱ ,⌦The character after the cursor
✱ .⌥⌦The word after the cursor

Windows and tabs

KeySendsResult
✱ A⌃⌥⇧⌘ALeft free for the window manager Moom
✱ ⌘ AF11Show the desktop
✱ Q⌘QQuit the app
✱ Tab⌘TabNext app
✱ ⌘ Tab⇧⌘TabPrevious app
✱ S⌃TabNext tab
✱ ⌘ S⌃⇧TabPrevious tab
✱ W⌘WClose the tab

Terminal keys

KeySendsUsed for
✱ Z⌃ZSuspend the job (SIGTSTP)
✱ X⌃BThe default tmux prefix
✱ C⌃CInterrupt (SIGINT)
✱ D⌃DEnd of input (EOF)

Apps

The README suggested replacing these with your own favourite apps.

Key✱✱ ⌘
EGoogle Chrome, or Safari through a separate itemFinder
RiTerm⌃R, Run in IDEs
TTyporaMWeb
FDashDictionary
GIntelliJ IDEA—
VVisual Studio Code—

Function keys

Key✱Key✱
F1Brightness downF7Previous track
F2Brightness upF8Play or pause
F3Mission ControlF9Next track
F4LaunchpadF10Mute
F5Keyboard backlight downF11Volume down
F6Keyboard backlight upF12Volume up

Keys found on full-size keyboards:

Key✱
Insert, DeleteBrightness up, down, in fine steps
Home, EndKeyboard backlight in fine steps
Page Up, Page DownVolume up, down, in fine steps
Scroll LockMute
PausePlay

Shifted symbols

Key✱ types
1 2 3 4 5 6 7 8 9 0! @ # $ % ^ & * ( )
- =_ +
[ ]( )
;_
'=

Mouse

KeyResult
✱ ← ↓ ↑ →Move the pointer
✱ ReturnLeft click
✱ \Right click

Other keys

KeySendsResult
✱ /⌘/Comment or uncomment, in many editors
✱ `⌃⇧⌘4Screenshot of an area, to the clipboard
✱ ⌘ `⇧⌘4Screenshot of an area, to a file

How it was installed

These are the steps from the V1 README, kept for the record.

  1. Download and install Seil.
  2. Download and install Karabiner.
  3. In Seil, turn on Change the caps lock key and set its key code to 80.
  4. In Karabiner, open the Misc & Uninstall tab and click Open private.xml. Replace that file with V1's private.xml. The setup script in the mac_v1 folder copies it to ~/Library/Application Support/Karabiner/private.xml for you.
  5. Return to the Change Key tab, click Reload XML, and enable the items you want.
Seil's Setting tab with Change the caps lock key turned on and key code 80 entered
Step 3: Caps Lock set to key code 80 in Seil.
Karabiner's Misc & Uninstall tab, with an arrow pointing at the Open private.xml button and the file shown in Finder
Step 4: Open private.xml in Karabiner reveals the file to replace.

Files

All of V1 is in mac_v1/ in the repository.

FileWhat it is
private.xmlThe V1 configuration for the original Karabiner
setupA shell script that copies private.xml into Karabiner's folder
README.mdThe original V1 documentation

Differences from V3

  • Tools. V1 needed Seil and the original Karabiner, configured in XML. Karabiner-Elements replaced the original Karabiner for macOS Sierra and later; V2 and V3 are JSON rules for it and do not need Seil.
  • Tapping Caps Lock. V1 let you choose between Escape and switching input source. V3 sends Escape on a tap.

3 - Windows

The 2013–2015 AutoHotkey script where Capslock began, kept with its source and an old prebuilt executable.
Archived, not maintained

The Windows version is an AutoHotkey script from 2013–2015. The Mac V2 README listed Windows XP, Vista, 7, 8 and 10 as its systems. Neither the script nor the prebuilt executable is tested on current Windows.

Capslock began on Windows in 2013, two years before the first Mac version. The script turns Caps Lock, which it calls the "useless key", into a function key like Ctrl and Alt by combining it with almost every other key on the keyboard. Caps Lock itself is kept off, and its old job moves to Caps Lock + `.

Some of its bindings differ from the Mac versions. The Mac V2 README notes this, and that the Windows version is no longer maintained.

What it did

The README summarises the script in one table. This version of it fills in the details from the script itself.

KeysWhat they do
Caps LockEscape, handy in Vim
Caps Lock + `Turn Caps Lock on or off
Caps Lock + H J K LVim-style arrow keys
Caps Lock + W BOne word right, one word left
Caps Lock + U I O PPage Up, Home, End, Page Down
Caps Lock + N M , .Delete: Ctrl+Backspace, Backspace, Delete, Ctrl+Delete
Caps Lock + Z X C V A YCtrl+Z, X, C, V, A, Y: the usual Windows editing shortcuts
Caps Lock + arrow keysMove the mouse pointer
Caps Lock + EnterMouse click
Caps Lock + F1 – F6Mute, volume down, volume up, play or pause, next track, stop
Caps Lock + Q SWindow and tab control
Caps Lock + ; ' [ ]Convenience mappings
Caps Lock + D F E R TFrequently used programs, chosen by the user
Caps Lock + 1 – 5Visual Studio shortcuts, chosen by the user
Caps Lock + 6 7 8 9 0 - =The shifted symbols, as if Shift were held

Running it

The README gives no installation steps. The repository holds the script in two forms:

  • The source, CapsLock.ahk, runs with AutoHotkey. It uses AutoHotkey v1 syntax.
  • A prebuilt executable, CapsLock.exe, runs without AutoHotkey.
Old, unsigned binary

CapsLock.exe is an old, unsigned, 32-bit prebuilt binary. It has not been tested on current Windows. If you want to try the layout, read the source and run it with AutoHotkey v1 instead.

Files

All of the Windows version is in win/ in the repository.

FileWhat it is
CapsLock.ahkThe AutoHotkey source
CapsLock.exeThe prebuilt executable, 207,868 bytes
README.mdThe original summary

The SHA-256 of CapsLock.exe in the repository is e0d6a4d2de155860aed164281ed16f5871aaca95cccc6fe1d46db2b16004cb80.