|
|
|
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
|
|
|
|
`update_tri_layer()` 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](http://martin-stone.github.io/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](http://martin-stone.github.io/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 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 | | | | |
|
|
|
|
|------+------+------+------+------+------+------+------+------+------+------+------|
|
|
|
|
| | | | | | | | | | | |
|
|
|
|
`-----------------------------------------------------------------------------------'
|
|
|
|
```
|