jeebak’s layout
This WIP keymap attempts to minimize fingers straying away from the
home row. To aid in this endeavor, when additional modifyer keys to
switch layers are needed, they will be mapped to home row keys. The
keymap.c file will contain the exact changes. The diagrams
in this README shows the highlights of the changes from the default
mappings.
I also decided to change all calls to
persistant_default_layer_set() to
default_layer_set() since this is my personal
perference.
Base Layers (Qwerty/Colemak/Dvorak)
These base layers are mostly the same as the default mappings. The
interesting changes are shown below. The Ctrl/Esc, mapped
using CTL_T(KC_ESC) will emit an Escape when
tapped, and act as a Control key when held. A
TODO item is to see if it can also act as a
CapsLock when double-tapped. The right shift key acts as
Enter when tapped, and as a Shift key when
held. The arrow keys, which have been moved to the TouchCursor layer,
have been replaced with the Media keys as shown. The ML/A
key activates the Mouse layer when held, and emits an A
when tapped.
,-----------------------------------------------------------------------------------------.
| | | | | | | | | | | | |
|----------+------+------+------+------+-------------+------+------+------+------+--------|
| Ctrl/Esc | ML/A | | | | | | | | | | |
|----------+------+------+------+------+------|------+------+------+------+------+--------|
| | | | | | | | | | | |Sft/Ent |
|----------+------+------+------+------+------+------+------+------+------+------+--------|
| PrntScrn | RGUI | Alt | GUI |Lower | TC/Space |Raise | Next | Vol- | Vol+ | Play |
`-----------------------------------------------------------------------------------------'
Lower Layer (Symbols and Function Keys)
The symbols and functions keys are essentially the same as the
default mapping. The most notable changes are that the symbol keys from
the RAISE layer have been moved here. The remaining Media
keys replace those that are now on the base layers. The
BACKLIT key has also been moved here.
,-----------------------------------------------------------------------------------.
| ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
|------+------+------+------+------+-------------+------+------+------+------+------|
| [ | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
|------+------+------+------+------+------|------+------+------+------+------+------|
| ] | F7 | F8 | F9 | F10 | F11 | F12 | - | = | [ | ] | \ |
|------+------+------+------+------+------+------+------+------+------+------+------|
|Brite | | | | | | | Prev | Stop | Slct | Mute |
`-----------------------------------------------------------------------------------'
Raise Layer (Numbers and Arithmetic Operators)
All of the numbers and arithmetic operators are available on this
layer. Some keys are duplicated for the convenience of their positions.
The 0 and $ keys at the far left are for quick
access to beginning and end of line in vim.
,-----------------------------------------------------------------------------------.
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
|------+------+------+------+------+-------------+------+------+------+------+------|
| $ | 4 | 5 | 6 | . | + | * | 4 | 5 | 6 | - | | |
|------+------+------+------+------+------|------+------+------+------+------+------|
| = | 7 | 8 | 9 | 0 | - | / | 1 | 2 | 3 | . | \ |
|------+------+------+------+------+------+------+------+------+------+------+------|
|Brite | | | | | | | Prev | Stop | Slct | Mute |
`-----------------------------------------------------------------------------------'
TouchCursor layer plus personal customizations
TouchCursor
uses the Space key as the modifier, with the
IJKL home row keys representing the inverted-T of the arrow
keys. All of the default TouchCursor keymappings for the right hand are
represented below. My personalizations include all of the keys shown for
the left hand. Having the Alt and Shift keys
(as well as the Control key from the base layers) readily
accessible from the home row allows quick word jumps and highlighting
when used in conjunction with the arrow keys. The
KC_UNDO, KC_CUT, KC_COPY, KC_PASTE, KC_FIND, and
KC_AGAIN keycodes have been mapped but they don’t seem to
work on Mac. Presumably they’ll work under Windows.
,-----------------------------------------------------------------------------------.
| | | |Shift | GUI | ~ |Insert| Home | Up | End | Bksp | |
|------+------+------+------+------+-------------+------+------+------+------+------|
| | Alt |Space | | Find |Again | PgUp | Left | Down |Right | | |
|------+------+------+------+------+------|------+------+------+------+------+------|
| | Undo | Cut | Copy |Paste | ` | PgDn | Del | | | | |
|------+------+------+------+------+------+------+------+------+------+------+------|
| | | | | | | | | | | |
`-----------------------------------------------------------------------------------'
Mouse Layer
The Mouse layer, closely mimics the layout/behaviour of the
TouchCursor layer. The A key is used to activate this
layer. All 16 keycodes for the mouse from the
doc/keycode.txt file are represented, and logically
located, IMHO. The left and right click buttons are duplicated; on the
right hand side, for a quick click here and there, and again on the left
hand side for when the buttons need to be held for dragging things or
highlighting text, thus allowing the right hand to be free to use the
up/down/left/right actions.
,-----------------------------------------------------------------------------------.
| | |ACCL0 |ACCL1 |ACCL2 |ACCL2 | |WHL_L | Up |WHL_R | BTN2 | |
|------+------+------+------+------+-------------+------+------+------+------+------|
| | | | BTN3 | BTN1 | BTN4 |WHL_Up| Left | Down |Right | | |
|------+------+------+------+------+------|------+------+------+------+------+------|
| | | | | BTN2 | BTN5 |WHL_Dn| BTN1 | | | | |
|------+------+------+------+------+------+------+------+------+------+------+------|
| | | | | | | | | | | |
`-----------------------------------------------------------------------------------'