This is a collection of hacks I've made to make editing text simpler, more ergonomic and more consistent on Windows and Mac.
- Uses a spatial layout instead of mapping functions to the first letter in their name.
- Aims to be easier on your hands than usual keyboard chords.
- Avoids the modes of vi-like systems. If you release all keys, the keyboard goes back to working as normal.
- Hijacks the input of the entire system, and so should work in almost every program.
- Overrides a minimum of default features, so your computer will still be useable for other people. (It does override Caps Lock, but Caps Lock typically hurts more than it helps anyway.)
- Remaps some keys to make different platforms behave more alike.
While holding down Caps Lock, you are in ProtoTyping mode. You can then use the following:
ijklare arrow keys.uandosteps one word in either direction.handthe key right of Lgo to the beginning and end of the line.- Holding
fwill make the other keys select text (just like holding shift normally). - Holding
dwill make the other keys delete text (for example,Caps+d+uwill delete one word backward).- There is a special case for
d+iandd+k(up and down), which will delete the current line and move the cursor up or down. This is very useful when programming.
- There is a special case for
- Windows-specific:
- The left Windows key is mapped to Control, so that most commands are the same on Windows and Mac.
- The left
Altis mapped to a secondAlt Grso that you can choose the least contorting way to type special characters.
- Install AutoHotkey.
- Open
RunwithWin + R, typeshell:startupand press enter. Your startup folder opens. - Put
ProtoTyping.ahkin the startup folder. This makes it start at login. - Double-click
ProtoTyping.ahkto start it for this login session. - (optional) Edit
ProtoTyping.ahkin case you want to disable anything.
- Install Karabiner Elements.
- Replace the file
~/.config/karabiner/karabiner.jsonwith thekarabiner.jsonI provide (or merge them if you are already using Karabiner).
- Install Karabiner
- Go into
System Preferences -> Keyboard -> Keyboard -> Modifier keysand set Caps Lock to map to Control. - Add the contents of
private.xmlto~/Library/Application Support/Karabiner/private.xml(or just replace that file if you are new to Karabiner).