Updated folder name; overdue updates to keymap and readme files (#2770)

* Updated info and fixed minor errors

* Updated folder name; overdue updates to keymap and readme files

Updated folder name; overdue updates to keymap and readme files
master
Salt-Peanuts 2018-04-20 11:53:35 -04:00 committed by Drashna Jaelre
parent 3cab04dfa3
commit ded9390944
6 changed files with 937 additions and 451 deletions

View File

@ -5,6 +5,8 @@
#include "../../config.h" #include "../../config.h"
// place overrides here // place overrides here
#define TAPPING_TERM 200 #define PREVENT_STUCK_MODIFIERS
#define TAPPING_TERM 175
#endif #endif

View File

@ -0,0 +1,681 @@
#include "kinesis.h"
#include "action_layer.h"
#include "eeconfig.h"
extern keymap_config_t keymap_config;
enum kinesis_layers {
_CMODDH, // Colemak Mod-DH Matrix (default layer)
_QWERTY, // Qwerty
_COLEMAK, // Colemak
_NUMBERS, // Numbers & Symbols
_NUMBERS2, // Numbers & Symbols 2 (identical as _NUMBERS; basically used for tri-layer access to _ADJUST)
_FUNCTION, // Function
_FUNCTION2, // Function 2 (identical as _FUNCTION; used to allow for easier use of space and backspace while using function layer arrows)
_NUMPAD, // Numpad
_CMODDHGM, // Colemak Mod-DH Matrix gaming/vanilla (no dual-role keys with layer access)
_QWERTYGM, // QWERTY gaming/vanilla (no dual-role keys with layer access)
_ADJUST // Adjust layer
};
enum kinesis_keycodes {
CMODDH = SAFE_RANGE,
QWERTY,
COLEMAK,
CMODDHGM,
QWERTYGM,
SPCFN = LT(_FUNCTION, KC_SPC),
BSPCFN = LT(_FUNCTION2, KC_BSPC),
ENTNS = LT(_NUMBERS, KC_ENT),
DELNS = LT(_NUMBERS2, KC_DEL),
CTLESC = CTL_T(KC_ESC),
NKROTG = MAGIC_TOGGLE_NKRO
};
#define _______ KC_TRNS
#define XXXXXXX KC_NO
//Tap Dance Declarations
enum {
ADJ = 0,
LBCB,
RBCB,
EQPL,
PLEQ,
MNUN,
SLAS,
GVTL,
PPLEQ,
PMNUN,
PSLPAS
};
void dance_LAYER_finished(qk_tap_dance_state_t *state, void *user_data) {
if (state->count == 2) {
layer_on(_ADJUST);
set_oneshot_layer(_ADJUST, ONESHOT_START);
}
}
void dance_LAYER_reset(qk_tap_dance_state_t *state, void *user_data) {
if (state->count == 2) {
layer_off(_ADJUST);
clear_oneshot_layer_state(ONESHOT_PRESSED);
}
}
qk_tap_dance_action_t tap_dance_actions[] = {
[ADJ] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, dance_LAYER_finished, dance_LAYER_reset), // Double-tap to activate Adjust layer via oneshot layer
[LBCB] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_LCBR), // Left bracket on a single-tap, left brace on a double-tap
[RBCB] = ACTION_TAP_DANCE_DOUBLE(KC_RBRC, KC_RCBR), // Right bracket on a single-tap, right brace on a double-tap
[EQPL] = ACTION_TAP_DANCE_DOUBLE(KC_EQL, KC_PLUS), // Plus sign on a single-tap, equal sign on a double-tap
[PLEQ] = ACTION_TAP_DANCE_DOUBLE(KC_PLUS, KC_EQL), // Equal sign on a single-tap, plus sign on a double-tap
[MNUN] = ACTION_TAP_DANCE_DOUBLE(KC_MINS, KC_UNDS), // Minus sign on a single-tap, underscore on a double-tap
[SLAS] = ACTION_TAP_DANCE_DOUBLE(KC_SLSH, KC_ASTR), // Slash in a single-tap, asterisk in a double-tap
[GVTL] = ACTION_TAP_DANCE_DOUBLE(KC_GRV, KC_TILD), // Grave on a single-tap, tilde on a double-tap
[PPLEQ] = ACTION_TAP_DANCE_DOUBLE(KC_PPLS, KC_EQL), // Numpad plus sign on a single-tap, equal sign on a double-tap
[PMNUN] = ACTION_TAP_DANCE_DOUBLE(KC_PMNS, KC_UNDS), // Numpad minus sign on a single-tap, underscore on a double-tap
[PSLPAS] = ACTION_TAP_DANCE_DOUBLE(KC_PSLS, KC_PAST) // Numpad slash on a single-tap, numpad asterisk on a double-tap
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Colemak Mod-DH Matrix
* (Defauit layer; keys separated by /: tap for first, hold for second; uses Space Cadet Shifts)
* ,-----------------------------------------------------------------------------------------------------------.
* | ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | PScr| SLck| Paus|Numpd|Adjst|
* `-----------------------------------------------------------------------------------------------------------'
* ,-------------------------------------------. ,-------------------------------------------.
* | = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Tab | Q | W | F | P | B | | J | L | U | Y | ; | \ |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* |Esc/Ctrl| A | R | S | T | G | | M | N | E | I | O | ' |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* |SC Shift| Z | X | C | D | V | | K | H | , | . | / |SC Shift|
* `--------+------+------+------+------+------' `------+------+------+------+------+--------'
* | Ins | ` | [ | ] | | Left | Down | Up | Right|
* `---------------------------' `---------------------------'
* ,---------------. ,---------------.
* |Esc/Ctl| Hyper | | RAlt | RCtl |
* ,-------|-------|-------| |-------+-------+-------.
* | Space | Enter |App/Alt| | RGUI | Delete| Bspc |
* | / | / |-------| |-------| / | / |
* | Fn | Number| Bspc | | Tab |Number2| Fn2 |
* `-----------------------' `-----------------------'
*/
[_CMODDH] = KEYMAP(
// Left Hand
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8,
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5,
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B,
CTLESC, KC_A, KC_R, KC_S, KC_T, KC_G,
KC_LSPO, KC_Z, KC_X, KC_C, KC_D, KC_V,
KC_INS, KC_GRV, KC_LBRC, KC_RBRC,
//Left Thumb
CTLESC, ALL_T(KC_NO),
ALT_T(KC_APP),
SPCFN, ENTNS, KC_BSPC,
//Right Hand
KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_NUMPAD), MO(_ADJUST),
KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS,
KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_RSPC,
KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
//Right Thumb
KC_RALT, KC_RCTL,
KC_RGUI,
KC_TAB, DELNS, BSPCFN
),
/* QWERTY
* (Keys separated by /: tap for first, hold for second; uses Space Cadet Shifts)
* ,-----------------------------------------------------------------------------------------------------------.
* | ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | PScr| SLck| Paus|Numpd|Adjst|
* `-----------------------------------------------------------------------------------------------------------'
* ,-------------------------------------------. ,-------------------------------------------.
* | = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* |Esc/Ctrl| A | S | D | F | G | | H | J | K | L | ; | ' |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* |SC Shift| Z | X | C | V | B | | N | M | , | . | / |SC Shift|
* `--------+------+------+------+------+------' `------+------+------+------+------+--------'
* | Ins | ` | [ | ] | | Left | Down | Up | Right|
* `---------------------------' `---------------------------'
* ,---------------. ,---------------.
* |Esc/Ctl| Hyper | | RAlt | RCtl |
* ,-------|-------|-------| |-------+-------+-------.
* | Space | Enter |App/Alt| | RGUI | Delete| Bspc |
* | / | / |-------| |-------| / | / |
* | Fn | Number| Bspc | | Tab |Number2| Fn2 |
* `-----------------------' `-----------------------'
*/
[_QWERTY] = KEYMAP(
// Left Hand
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8,
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T,
CTLESC, KC_A, KC_S, KC_D, KC_F, KC_G,
KC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B,
KC_INS, KC_GRV, KC_LBRC, KC_RBRC,
//Left Thumb
CTLESC, ALL_T(KC_NO),
ALT_T(KC_APP),
SPCFN, ENTNS, KC_BSPC,
//Right Hand
KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_NUMPAD), MO(_ADJUST),
KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSPC,
KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
//Right Thumb
KC_RALT, KC_RCTL,
KC_RGUI,
KC_TAB, DELNS, BSPCFN
),
/* Colemak
* (Keys separated by /: tap for first, hold for second; uses Space Cadet Shifts)
* ,-----------------------------------------------------------------------------------------------------------.
* | ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | PScr| SLck| Paus|Numpd|Adjst|
* `-----------------------------------------------------------------------------------------------------------'
* ,-------------------------------------------. ,-------------------------------------------.
* | = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Tab | Q | W | F | P | G | | J | L | U | Y | ; | \ |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* |Esc/Ctrl| A | R | S | T | D | | H | N | E | I | O | ' |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* |SC Shift| Z | X | C | V | B | | K | M | , | . | / |SC Shift|
* `--------+------+------+------+------+------' `------+------+------+------+------+--------'
* | Ins | ` | [ | ] | | Left | Down | Up | Right|
* `---------------------------' `---------------------------'
* ,---------------. ,---------------.
* |Esc/Ctl| Hyper | | RAlt | RCtl |
* ,-------|-------|-------| |-------+-------+-------.
* | Space | Enter |App/Alt| | RGUI | Delete| Bspc |
* | / | / |-------| |-------| / | / |
* | Fn | Number| Bspc | | Tab |Number2| Fn2 |
* `-----------------------' `-----------------------'
*/
[_COLEMAK] = KEYMAP(
// Left Hand
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8,
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5,
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G,
CTLESC, KC_A, KC_R, KC_S, KC_T, KC_D,
KC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B,
KC_INS, KC_GRV, KC_LBRC, KC_RBRC,
//Left Thumb
CTLESC, ALL_T(KC_NO),
ALT_T(KC_APP),
SPCFN, ENTNS, KC_BSPC,
//Right Hand
KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_NUMPAD), MO(_ADJUST),
KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS,
KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSPC,
KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
//Right Thumb
KC_RALT, KC_RCTL,
KC_RGUI,
KC_TAB, DELNS, BSPCFN
),
/* Number/symbol layer
* (Multiple characters: single-tap for first, double-tap for second)
* ,-----------------------------------------------------------------------------------------------------------.
* | | | | | | | | | | | | | | | | | | |
* `-----------------------------------------------------------------------------------------------------------'
* ,-------------------------------------------. ,-------------------------------------------.
* | F12 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | 6 | 7 | 8 | 9 | 0 | | ^ | & | * | ( | ) | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | 1 | 2 | 3 | 4 | 5 | | ! | @ | # | $ | % | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | | . | / * | - _ | + = | | ` ~ | [ { | ] } | | | |
* `--------+------+------+------+------+------' `------+------+------+------+------+--------'
* | ( | ) | [ { | ] } | | | | | |
* `---------------------------' `---------------------------'
* ,---------------. ,---------------.
* | | | | | |
* ,-------|-------|-------| |-------+-------+-------.
* | | | | | | | |
* | | |-------| |-------| | |
* | | | | | | | |
* `-----------------------' `-----------------------'
*/
[_NUMBERS] = KEYMAP(
// Left Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5,
_______, KC_6, KC_7, KC_8, KC_9, KC_0,
_______, KC_1, KC_2, KC_3, KC_4, KC_5,
_______, _______, KC_DOT, TD(SLAS), TD(MNUN), TD(PLEQ),
KC_LPRN, KC_RPRN, TD(LBCB), TD(RBCB),
// Left Thumb
_______, _______,
_______,
_______, _______, _______,
// Right Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______,
TD(GVTL), TD(LBCB), TD(RBCB), _______, _______, _______,
_______, _______, _______, _______,
// Right Thumb
_______, _______,
_______,
_______, _______, _______
),
[_NUMBERS2] = KEYMAP(
// Left Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5,
_______, KC_6, KC_7, KC_8, KC_9, KC_0,
_______, KC_1, KC_2, KC_3, KC_4, KC_5,
_______, _______, KC_DOT, TD(SLAS), TD(MNUN), TD(PLEQ),
KC_LPRN, KC_RPRN, TD(LBCB), TD(RBCB),
// Left Thumb
_______, _______,
_______,
_______, _______, _______,
// Right Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______,
TD(GVTL), TD(LBCB), TD(RBCB), _______, _______, _______,
_______, _______, _______, _______,
// Right Thumb
_______, _______,
_______,
_______, _______, _______
),
/* Function layer
* ,-----------------------------------------------------------------------------------------------------------.
* | | | | | | | | | | | | | | | | | | |
* `-----------------------------------------------------------------------------------------------------------'
* ,-------------------------------------------. ,-------------------------------------------.
* | F12 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | | | Up | | | | | | Up |Ctrl+Y| | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | |Ctrl+A| Left | Down | Right|C+A+Tb| | PgUp | Right| Down | Left | Home | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | |Ctrl+Z|Ctrl+X|Ctrl+C|Ctrl+V| Bspc | | PgDn | Mute | Vol- | Vol+ | End | |
* `--------+------+------+------+------+------' `------+------+------+------+------+--------'
* | | | | | | Prev | Play | Next | Stop |
* `---------------------------' `---------------------------'
* ,---------------. ,---------------.
* | | | | | |
* ,-------|-------|-------| |-------+-------+-------.
* | | | | | | | |
* | | |-------| |-------| | |
* | | | | |C+A+Tab| | |
* `-----------------------' `-----------------------'
*/
[_FUNCTION] = KEYMAP(
// Left Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5,
_______, _______, _______, KC_UP, _______, _______,
_______, LCTL(KC_A), KC_LEFT, KC_DOWN, KC_RGHT, LCA(KC_TAB),
_______, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), KC_BSPC,
_______, _______, _______, _______,
// Left Thumb
_______, _______,
_______,
_______, _______, _______,
// Right Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
_______, _______, KC_UP, LCTL(KC_Y), _______, _______,
KC_PGUP, KC_LEFT, KC_DOWN, KC_RGHT, KC_HOME, _______,
KC_PGDN, KC_MUTE, KC_VOLD, KC_VOLU, KC_END, _______,
KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP,
// Right Thumb
_______, _______,
_______,
LCA(KC_TAB), _______, _______
),
[_FUNCTION2] = KEYMAP(
// Left Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5,
_______, _______, _______, KC_UP, _______, _______,
_______, LCTL(KC_A), KC_LEFT, KC_DOWN, KC_RGHT, LCA(KC_TAB),
_______, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), KC_BSPC,
_______, _______, _______, _______,
// Left Thumb
_______, _______,
_______,
_______, _______, _______,
// Right Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
_______, _______, KC_UP, LCTL(KC_Y), _______, _______,
KC_PGUP, KC_LEFT, KC_DOWN, KC_RGHT, KC_HOME, _______,
KC_PGDN, KC_MUTE, KC_VOLD, KC_VOLU, KC_END, _______,
KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP,
// Right Thumb
_______, _______,
_______,
LCA(KC_TAB), _______, _______
),
/* Numpad layer
* (Left side duplicates layout from the Numbers layer, just with numpad output; right side layout close to PC numpad layout)
* ,-----------------------------------------------------------------------------------------------------------.
* | | | | | | | | | | | | | | | | | | |
* `-----------------------------------------------------------------------------------------------------------'
* ,-------------------------------------------. ,-------------------------------------------.
* | | NumLk| | | | | | Tab | NumLk| KP / | kP *| KP - | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | KP 6 | KP 7 | KP 8 | KP 9 | KP 0 | | | KP 7 | KP 8 | KP 9 | KP + | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | KP 1 | KP 2 | KP 3 | KP 4 | KP 5 | | | KP 4 | KP 5 | KP 6 | = | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | | KP . |KP/KP*| KP- _| KP+ =| | | KP 1 | KP 2 | KP 3 |KP Ent| |
* `--------+------+------+------+------+------' `------+------+------+------+------+--------'
* | ( | ) | [ { | ] } | | KP 0 | , | KP . |KP Ent|
* `---------------------------' `---------------------------'
* ,---------------. ,---------------.
* | | | | | |
* ,-------|-------|-------| |-------+-------+-------.
* | | | | | | | |
* | | |-------| |-------| | |
* | | | | | | | |
* `-----------------------' `-----------------------'
*/
[_NUMPAD] = KEYMAP(
// Left Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, KC_NLCK, _______, _______, _______, _______,
_______, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0,
_______, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5,
_______, _______, KC_PDOT, TD(PSLPAS), TD(PMNUN), TD(PPLEQ),
KC_LPRN, KC_RPRN, TD(LBCB), TD(RBCB),
// Left Thumb
_______, _______,
_______,
_______, _______, _______,
// Right Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_TAB, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, _______,
_______, KC_P7, KC_P8, KC_P9, KC_PPLS, _______,
_______, KC_P4, KC_P5, KC_P6, KC_EQL, _______,
_______, KC_P1, KC_P2, KC_P3, KC_PENT, _______,
KC_P0, KC_COMM, KC_PDOT, KC_PENT,
// Right Thumb
_______, _______,
_______,
_______, _______, _______
),
/* Colemak Mod-DH Matrix gaming/vanilla
* (No access to Function or Numbers layers; mainly used for gaming; double-tap the TD(ADJ) above LAlt to access Adjust layer)
* ,-----------------------------------------------------------------------------------------------------------.
* | ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | PScr| SLck| Paus|Numpd|Adjst|
* `-----------------------------------------------------------------------------------------------------------'
* ,-------------------------------------------. ,-------------------------------------------.
* | = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Tab | Q | W | F | P | B | | J | L | U | Y | ; | \ |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Ctrl | A | R | S | T | G | | M | N | E | I | O | ' |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Shift | Z | X | C | D | V | | K | H | , | . | / | Shift |
* `--------+------+------+------+------+------' `------+------+------+------+------+--------'
* | Ins | ` | [ | ] | | Left | Down | Up | Right|
* `---------------------------' `---------------------------'
* ,---------------. ,---------------.
* |Esc/Ctl|TD(ADJ)| | RAlt | RCtl |
* ,-------|-------|-------| |-------+-------+-------.
* | | | LAlt | | RGUI | | |
* | Space | Enter |-------| |-------| Delete| Bspc |
* | | | Bspc | | Tab | | |
* `-----------------------' `-----------------------'
*/
[_CMODDHGM] = KEYMAP(
// Left Hand
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8,
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5,
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B,
KC_LCTL, KC_A, KC_R, KC_S, KC_T, KC_G,
KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V,
KC_INS, KC_GRV, KC_LBRC, KC_RBRC,
//Left Thumb
CTLESC, TD(ADJ),
KC_LALT,
KC_SPC, KC_ENT, KC_BSPC,
//Right Hand
KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_NUMPAD), MO(_ADJUST),
KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS,
KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
//Right Thumb
KC_RALT, KC_RCTL,
KC_RGUI,
KC_TAB, KC_DEL, KC_BSPC
),
/* QWERTY gaming/vanilla
* (No access to Function or Numbers layers; mainly used for gaming; double-tap the TD(ADJ) above LAlt to access Adjust layer)
* ,-----------------------------------------------------------------------------------------------------------.
* | ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | PScr| SLck| Paus|Numpd|Adjst|
* `-----------------------------------------------------------------------------------------------------------'
* ,-------------------------------------------. ,-------------------------------------------.
* | = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Ctrl | A | S | D | F | G | | H | J | K | L | ; | ' |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Shift | Z | X | C | V | B | | N | M | , | . | / | Shift |
* `--------+------+------+------+------+------' `------+------+------+------+------+--------'
* | Ins | ` | [ | ] | | Left | Down | Up | Right|
* `---------------------------' `---------------------------'
* ,---------------. ,---------------.
* |Esc/Ctl|TD(ADJ)| | RAlt | RCtl |
* ,-------|-------|-------| |-------+-------+-------.
* | | | LAlt | | RGUI | | |
* | Space | Enter |-------| |-------| Delete| Bspc |
* | | | Bspc | | Tab | | |
* `-----------------------' `-----------------------'
*/
[_QWERTYGM] = KEYMAP(
// Left Hand
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8,
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T,
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B,
KC_INS, KC_GRV, KC_LBRC, KC_RBRC,
//Left Thumb
CTLESC, TD(ADJ),
KC_LALT,
KC_SPC, KC_ENT, KC_BSPC,
//Right Hand
KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_NUMPAD), MO(_ADJUST),
KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
//Right Thumb
KC_RALT, KC_RCTL,
KC_RGUI,
KC_TAB, KC_DEL, KC_BSPC
),
/* Adjust layer
* (Enter/Number + Delete/Number2 under non-gaming/vanilla layers)
* ,-----------------------------------------------------------------------------------------------------------.
* | | | | | | | | | | | | | | | | | | |
* `-----------------------------------------------------------------------------------------------------------'
* ,-------------------------------------------. ,-------------------------------------------.
* | |CModDH|Qwerty|Colmak|CMoDGM| QWGM | |Numpad| | | | | RESET |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | | | | | | | | | | | | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | | | | | | | |NKROTG| | | | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | | | | | | | | | | | | |
* `--------+------+------+------+------+------' `------+------+------+------+------+--------'
* | | | | | | | | | |
* `---------------------------' `---------------------------'
* ,---------------. ,---------------.
* | | | | | |
* ,-------|-------|-------| |-------+-------+-------.
* | | | | | | | |
* | | |-------| |-------| | |
* | | | | | | | |
* `-----------------------' `-----------------------'
*/
[_ADJUST] = KEYMAP(
// Left Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, CMODDH, QWERTY, COLEMAK, CMODDHGM, QWERTYGM,
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______,
// Left Thumb
_______, _______,
_______,
_______, _______, _______,
// Right Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
TG(_NUMPAD), _______, _______, _______, _______, RESET,
_______, _______, _______, _______, _______, _______,
_______, NKROTG, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______,
// Right Thumb
_______, _______,
_______,
_______, _______, _______
)
};
void persistent_default_layer_set(uint16_t default_layer) {
eeconfig_update_default_layer(default_layer);
default_layer_set(default_layer);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case CMODDH:
if (record->event.pressed) {
persistent_default_layer_set(1UL << _CMODDH);
layer_off ( _QWERTY);
layer_off ( _COLEMAK);
layer_off ( _NUMBERS);
layer_off ( _NUMBERS2);
layer_off ( _FUNCTION);
layer_off ( _FUNCTION2);
layer_off ( _NUMPAD);
layer_off ( _CMODDHGM);
layer_off ( _QWERTYGM);
layer_off ( _ADJUST);
}
return false;
break;
case QWERTY:
if (record->event.pressed) {
persistent_default_layer_set(1UL << _QWERTY);
layer_off ( _CMODDH);
layer_off ( _COLEMAK);
layer_off ( _NUMBERS);
layer_off ( _NUMBERS2);
layer_off ( _FUNCTION);
layer_off ( _FUNCTION2);
layer_off ( _NUMPAD);
layer_off ( _CMODDHGM);
layer_off ( _QWERTYGM);
layer_off ( _ADJUST);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
persistent_default_layer_set(1UL << _COLEMAK);
layer_off ( _CMODDH);
layer_off ( _QWERTY);
layer_off ( _NUMBERS);
layer_off ( _NUMBERS2);
layer_off ( _FUNCTION);
layer_off ( _FUNCTION2);
layer_off ( _NUMPAD);
layer_off ( _CMODDHGM);
layer_off ( _QWERTYGM);
layer_off ( _ADJUST);
}
return false;
break;
case CMODDHGM:
if (record->event.pressed) {
default_layer_set(1UL << _CMODDHGM);
layer_off ( _CMODDH);
layer_off ( _QWERTY);
layer_off ( _COLEMAK);
layer_off ( _NUMBERS);
layer_off ( _NUMBERS2);
layer_off ( _FUNCTION);
layer_off ( _FUNCTION2);
layer_off ( _NUMPAD);
layer_off ( _QWERTYGM);
layer_off ( _ADJUST);
}
return false;
break;
case QWERTYGM:
if (record->event.pressed) {
default_layer_set(1UL << _QWERTYGM);
layer_off ( _CMODDH);
layer_off ( _QWERTY);
layer_off ( _COLEMAK);
layer_off ( _NUMBERS);
layer_off ( _NUMBERS2);
layer_off ( _FUNCTION);
layer_off ( _FUNCTION2);
layer_off ( _NUMPAD);
layer_off ( _CMODDHGM);
layer_off ( _ADJUST);
}
return false;
break;
case ENTNS:
if (record->event.pressed) {
layer_on(_NUMBERS);
update_tri_layer(_NUMBERS, _NUMBERS2, _ADJUST);
} else {
layer_off(_NUMBERS);
update_tri_layer(_NUMBERS, _NUMBERS2, _ADJUST);
}
break;
case DELNS:
if (record->event.pressed) {
layer_on(_NUMBERS2);
update_tri_layer(_NUMBERS, _NUMBERS2, _ADJUST);
} else {
layer_off(_NUMBERS2);
update_tri_layer(_NUMBERS, _NUMBERS2, _ADJUST);
}
break;
}
return true;
}

View File

@ -0,0 +1,249 @@
# insertsnideremarks' Kinesis Keymap
These layouts are derived from what I was using on my Kinesis Contoured keyboards with Hasu's TMK converters. With the move to QMK via Stapelberg replacement controller, I've cleaned up the layouts a bit while adding more functions and layers.
There are minor changes in the base keywell layout of non-alpha keys (e.g., CapsLock is ESC/Ctl, arrow clusters on one side), while the thumb clusters deviate more from the default layout.
Changes to the thumb clusters include:
* The navigations keys moved to function layers.
* The function of 2u keys have been reversed - I've always used space with my left thumb, and I find it more helpful to have access to Space and Enter while using my mouse/trackball.
* Backspace have been duplicated on both clusters.
* The 2u keys serve dual function as momentary layer switchers.
I've largely left the function keys untouched, with the intension of not using them. They are neither easy to use nor reach due to their locations and size, and, prior to Advantage2, particularly terrible rubber domes were used for them. They have since updated the keys with Cherry ML switches on Advantage2, but did not resolve the issues of size or location. Additionally, leaving the function keys unused here makes it easier for me to adapt the keymaps to my other keyboards, most of which do not have physical function keys.
I use Colemak Mod-DH Matrix as my default layout. There QWERTY and Colemak layouts as well.
Additionally, I've added gaming/vanilla version of Colemak Mod-DH Matrix and QWERTY layouts. These layouts have no access to the Function or Numbers layers, thus no dual-role keys with layer access, and are mainly used for gaming.
Persistent default layer has been enabled for Colemak Mod-DH Matrix, QWERTY, and Colemak. The gaming/vanilla Colemak Mod-DH Matrix and QWERTY can be set as default layer, but will not be persistent.
## Future plans
* Add status LEDs to the Stapelberg PCB (usually used for Caps Lock, Num Lock, and Scroll Lock). May configure it as layer indicator.
* Add a speaker now that QMK supports additional pins for audio use.
* Utilize the leftover spots on the key matrix, as well as unused pins on Teensy to run macropad and/or foot pedals.
### Colemak Mod-DH Matrix
(Default layer, keys separated by /: tap for first, hold for second; uses Space Cadet Shifts)
,-----------------------------------------------------------------------------------------------------------.
| ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | PScr| SLck| Paus|Numpd|Adjst|
`-----------------------------------------------------------------------------------------------------------'
,-------------------------------------------. ,-------------------------------------------.
| = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| Tab | Q | W | F | P | B | | J | L | U | Y | ; | \ |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
|Esc/Ctrl| A | R | S | T | G | | M | N | E | I | O | ' |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
|SC Shift| Z | X | C | D | V | | K | H | , | . | / |SC Shift|
`--------+------+------+------+------+------' `------+------+------+------+------+--------'
| Ins | ` | [ | ] | | Left | Down | Up | Right|
`---------------------------' `---------------------------'
,---------------. ,---------------.
|Esc/Ctl| Hyper | | RAlt | RCtl |
,-------|-------|-------| |-------+-------+-------.
| Space | Enter |App/Alt| | RGUI | Delete| Bspc |
| / | / |-------| |-------| / | / |
| Fn | Number| Bspc | | Tab |Number2| Fn2 |
`-----------------------' `-----------------------'
### QWERTY
(Keys separated by /: tap for first, hold for second; uses Space Cadet Shifts)
,-----------------------------------------------------------------------------------------------------------.
| ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | PScr| SLck| Paus|Numpd|Adjst|
`-----------------------------------------------------------------------------------------------------------'
,-------------------------------------------. ,-------------------------------------------.
| = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
|Esc/Ctrl| A | S | D | F | G | | H | J | K | L | ; | ' |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
|SC Shift| Z | X | C | V | B | | N | M | , | . | / |SC Shift|
`--------+------+------+------+------+------' `------+------+------+------+------+--------'
| Ins | ` | [ | ] | | Left | Down | Up | Right|
`---------------------------' `---------------------------'
,---------------. ,---------------.
|Esc/Ctl| Hyper | | RAlt | RCtl |
,-------|-------|-------| |-------+-------+-------.
| Space | Enter |App/Alt| | RGUI | Delete| Bspc |
| / | / |-------| |-------| / | / |
| Fn | Number| Bspc | | Tab |Number2| Fn2 |
`-----------------------' `-----------------------'
### Colemak
(Keys separated by /: tap for first, hold for second; uses Space Cadet Shifts)
,-----------------------------------------------------------------------------------------------------------.
| ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | PScr| SLck| Paus|Numpd|Adjst|
`-----------------------------------------------------------------------------------------------------------'
,-------------------------------------------. ,-------------------------------------------.
| = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| Tab | Q | W | F | P | G | | J | L | U | Y | ; | \ |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
|Esc/Ctrl| A | R | S | T | D | | H | N | E | I | O | ' |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
|SC Shift| Z | X | C | V | B | | K | M | , | . | / |SC Shift|
`--------+------+------+------+------+------' `------+------+------+------+------+--------'
| Ins | ` | [ | ] | | Left | Down | Up | Right|
`---------------------------' `---------------------------'
,---------------. ,---------------.
|Esc/Ctl| Hyper | | RAlt | RCtl |
,-------|-------|-------| |-------+-------+-------.
| Space | Enter |App/Alt| | RGUI | Delete| Bspc |
| / | / |-------| |-------| / | / |
| Fn | Number| Bspc | | Tab |Number2| Fn2 |
`-----------------------' `-----------------------'
### Numbers & Symbols layer
(Multiple characters: single-tap for first, double-tap for second)
,-----------------------------------------------------------------------------------------------------------.
| | | | | | | | | | | | | | | | | | |
`-----------------------------------------------------------------------------------------------------------'
,-------------------------------------------. ,-------------------------------------------.
| F12 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| | 6 | 7 | 8 | 9 | 0 | | ^ | & | * | ( | ) | |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| | 1 | 2 | 3 | 4 | 5 | | ! | @ | # | $ | % | |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| | | . | / * | - _ | + = | | ` ~ | [ { | ] } | | | |
`--------+------+------+------+------+------' `------+------+------+------+------+--------'
| ( | ) | [ { | ] } | | | | | |
`---------------------------' `---------------------------'
,---------------. ,---------------.
| | | | | |
,-------|-------|-------| |-------+-------+-------.
| | | | | | | |
| | |-------| |-------| | |
| | | | | | | |
`-----------------------' `-----------------------'
### Function layer
,-----------------------------------------------------------------------------------------------------------.
| | | | | | | | | | | | | | | | | | |
`-----------------------------------------------------------------------------------------------------------'
,-------------------------------------------. ,-------------------------------------------.
| F12 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| | | | Up | | | | | | Up |Ctrl+Y| | |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| |Ctrl+A| Left | Down | Right| | | PgUp | Right| Down | Left | Home | |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| |Ctrl+Z|Ctrl+X|Ctrl+C|Ctrl+V| | | PgDn | Mute | Vol- | Vol+ | End | |
`--------+------+------+------+------+------' `------+------+------+------+------+--------'
| | | | | | Prev | Play | Next | Stop |
`---------------------------' `---------------------------'
,---------------. ,---------------.
| | | | | |
,-------|-------|-------| |-------+-------+-------.
| | | | | | | |
| | |-------| |-------| | |
| | | | |C+A+Tab| | |
`-----------------------' `-----------------------'
### Numpad layer
(Left side duplicates layout from the Numbers layer, just with numpad output; right side layout close to PC numpad layout)
,-----------------------------------------------------------------------------------------------------------.
| | | | | | | | | | | | | | | | | | |
`-----------------------------------------------------------------------------------------------------------'
,-------------------------------------------. ,-------------------------------------------.
| | NumLk| | | | | | Tab | NumLk| KP / | kP *| KP - | |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| | KP 6 | KP 7 | KP 8 | KP 9 | KP 0 | | | KP 7 | KP 8 | KP 9 | KP + | |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| | KP 1 | KP 2 | KP 3 | KP 4 | KP 5 | | | KP 4 | KP 5 | KP 6 | = | |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| | | KP . |KP/KP*| KP- _| KP+ =| | | KP 1 | KP 2 | KP 3 |KP Ent| |
`--------+------+------+------+------+------' `------+------+------+------+------+--------'
| ( | ) | [ { | ] } | | KP 0 | , | KP . |KP Ent|
`---------------------------' `---------------------------'
,---------------. ,---------------.
| | | | | |
,-------|-------|-------| |-------+-------+-------.
| | | | | | | |
| | |-------| |-------| | |
| | | | | | | |
`-----------------------' `-----------------------'
### Colemak Mod-DH Matrix gaming/vanilla
(No access to Function or Numbers layers; mainly used for gaming; double-tap TD(ADJ) for one shot access to Adjust layer)
,-----------------------------------------------------------------------------------------------------------.
| ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | PScr| SLck| Paus|Numpd|Adjst|
`-----------------------------------------------------------------------------------------------------------'
,-------------------------------------------. ,-------------------------------------------.
| = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| Tab | Q | W | F | P | B | | J | L | U | Y | ; | \ |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| Ctrl | A | R | S | T | G | | M | N | E | I | O | ' |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| Shift | Z | X | C | D | V | | K | H | , | . | / | Shift |
`--------+------+------+------+------+------' `------+------+------+------+------+--------'
| Ins | ` | [ | ] | | Left | Down | Up | Right|
`---------------------------' `---------------------------'
,---------------. ,---------------.
|Esc/Ctl|TD(ADJ)| | RAlt | RCtl |
,-------|-------|-------| |-------+-------+-------.
| | | LAlt | | RGUI | | |
| Space | Enter |-------| |-------| Delete| Bspc |
| | | Bspc | | Tab | | |
`-----------------------' `-----------------------'
### QWERTY gaming/vanilla
(No access to Function or Numbers layers; mainly used for gaming; double-tap TD(ADJ) for one shot access to Adjust layer)
,-----------------------------------------------------------------------------------------------------------.
| ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | PScr| SLck| Paus|Numpd|Adjst|
`-----------------------------------------------------------------------------------------------------------'
,-------------------------------------------. ,-------------------------------------------.
| = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| Ctrl | A | S | D | F | G | | H | J | K | L | ; | ' |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| Shift | Z | X | C | V | B | | N | M | , | . | / | Shift |
`--------+------+------+------+------+------' `------+------+------+------+------+--------'
| Ins | ` | [ | ] | | Left | Down | Up | Right|
`---------------------------' `---------------------------'
,---------------. ,---------------.
|Esc/Ctl|TD(ADJ)| | RAlt | RCtl |
,-------|-------|-------| |-------+-------+-------.
| | | LAlt | | RGUI | | |
| Space | Enter |-------| |-------| Delete| Bspc |
| | | Bspc | | Tab | | |
`-----------------------' `-----------------------'
### Adjust layer
(Press Enter/Number + Delete/Number2 together under non-gaming/vanilla layers; Numpad is a toggle)
,-----------------------------------------------------------------------------------------------------------.
| | | | | | | | | | | | | | | | | | |
`-----------------------------------------------------------------------------------------------------------'
,-------------------------------------------. ,------------------------------------------
| |CModDH|Qwerty|Colmak|CMoDGM| QWGM | |Numpad| | | | | RESET |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| | | | | | | | | | | | | |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| | | | | | | | | NKRO | | | | |
|--------+------+------+------+------+------| |------+------+------+------+------+--------|
| | | | | | | | | | | | | |
`--------+------+------+------+------+------' `------+------+------+------+------+--------'
| | | | | | | | | |
`---------------------------' `---------------------------'
,---------------. ,---------------.
| | | | | |
,-------|-------|-------| |-------+-------+-------.
| | | | | | | |
| | |-------| |-------| | |
| | | | | | | |
`-----------------------' `-----------------------'

View File

@ -2,11 +2,13 @@
# change to "no" to disable the options, or define them in the Makefile in # change to "no" to disable the options, or define them in the Makefile in
# the appropriate keymap folder that will get included automatically # the appropriate keymap folder that will get included automatically
# #
DEFAULT_FOLDER = kinesis/stapelberg
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
MOUSEKEY_ENABLE = no # Mouse keys(+4700) MOUSEKEY_ENABLE = no # Mouse keys(+4700)
EXTRAKEY_ENABLE = yes # Audio control and System control(+450) EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
CONSOLE_ENABLE = no # Console for debug(+400) CONSOLE_ENABLE = yes # Console for debug(+400)
COMMAND_ENABLE = yes # Commands for debug and configuration COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
MIDI_ENABLE = no # MIDI controls MIDI_ENABLE = no # MIDI controls
@ -16,7 +18,6 @@ BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
TAP_DANCE_ENABLE = yes # Enable Tap Dancing function TAP_DANCE_ENABLE = yes # Enable Tap Dancing function
KEY_LOCK_ENABLE = yes # Enable key lock
ifndef QUANTUM_DIR ifndef QUANTUM_DIR
include ../../../../Makefile include ../../../../Makefile

View File

@ -1,433 +0,0 @@
#include "kinesis.h"
#include "action_layer.h"
#include "eeconfig.h"
#define _QW 0 // Base QWERTY
#define _CM 1 // Colemak
#define _QG 2 // QWERTY gaming
#define _NS 3 // Number/Symbol
#define _NP 4 // Numpad
#define _LY 5 // Layer switcher
#define _FN 6 // Function
#define _FN2 7 // Function 2 (identical as _FN; used to deal with minor key interaction issue)
#define _______ KC_TRNS
#define XXXXXXX KC_NO
//Tap Dance Declarations
enum {
LPN_LBC,
RPN_RBC
};
qk_tap_dance_action_t tap_dance_actions[] = {
[LPN_LBC] = ACTION_TAP_DANCE_DOUBLE(KC_LPRN, KC_LBRC),
[RPN_RBC] = ACTION_TAP_DANCE_DOUBLE(KC_RPRN, KC_RBRC)
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* QWERTY
* (Keys separated by /: tap for first, hold for second)
* ,-----------------------------------------------------------------------------------------------------------.
* | ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | PScr| SLck| Paus|Numpd|Layer|
* `-----------------------------------------------------------------------------------------------------------'
* ,-------------------------------------------. ,-------------------------------------------.
* | = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Esc | A | S | D | F | G | | H | J | K | L | ; | ' |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Shift | Z | X | C | V | B | | N | M | , | . | / | Shift |
* `--------+------+------+------+------+------' `------+------+------+------+------+--------'
* | ` | | [ | ] | | Left | Down | Up | Right|
* `---------------------------' `---------------------------'
* ,--------------. ,--------------.
* | LCtl | LAlt | | RAlt | RCtl |
* ,------|-------|------| |------+-------+------.
* | Space| Enter | App | | RGUI | Delete| Bspc |
* | / | / |------| |------| / | / |
* | Fn | Number| Bspc | | Enter| Number| Fn2 |
* `---------------------' `---------------------'
*/
[_QW] = KEYMAP(
// Left Hand
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8,
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T,
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B,
KC_GRV, XXXXXXX, KC_LBRC, KC_RBRC,
//Left Thumb
KC_LCTL, KC_LALT,
KC_APP,
LT(_FN, KC_SPC), LT(_NS, KC_ENT), KC_BSPC,
//Right Hand
KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_NP), MO(_LY),
KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
//Right Thumb
KC_RALT, KC_RCTL,
KC_RGUI,
KC_ENT, LT(_NS, KC_DEL), LT(_FN2, KC_BSPC)
),
/* Colemak
* (Keys separated by /: tap for first, hold for second)
* ,-----------------------------------------------------------------------------------------------------------.
* | ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | PScr| SLck| Paus|Numpd|Layer|
* `-----------------------------------------------------------------------------------------------------------'
* ,-------------------------------------------. ,-------------------------------------------.
* | = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Tab | Q | W | F | P | G | | J | L | U | Y | ; | \ |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Esc | A | R | S | T | D | | H | N | E | I | O | ' |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Shift | Z | X | C | V | B | | K | M | , | . | / | Shift |
* `--------+------+------+------+------+------' `------+------+------+------+------+--------'
* | ` | | [ | ] | | Left | Down | Up | Right|
* `---------------------------' `---------------------------'
* ,--------------. ,--------------.
* | LCtl | LAlt | | RAlt | RCtl |
* ,------|-------|------| |------+-------+------.
* | Space| Enter | App | | RGUI | Delete| Bspc |
* | / | / |------| |------| / | / |
* | Fn | Number| Bspc | | Enter| Number| Fn2 |
* `---------------------' `---------------------'
*/
[_CM] = KEYMAP(
// Left Hand
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8,
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5,
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G,
KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B,
KC_GRV, XXXXXXX, KC_LBRC, KC_RBRC,
//Left Thumb
KC_LCTL, KC_LALT,
KC_APP,
LT(_FN, KC_SPC), LT(_NS, KC_ENT), KC_BSPC,
//Right Hand
KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_NP), MO(_LY),
KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS,
KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
//Right Thumb
KC_RALT, KC_RCTL,
KC_RGUI,
KC_ENT, LT(_NS, KC_DEL), LT(_FN2, KC_BSPC)
),
/* QWERTY Gaming
* (Keys separated by /: tap for first, hold for second; no access to Fn layer)
* ,-----------------------------------------------------------------------------------------------------------.
* | ESC | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | PScr| SLck| Paus|Numpd|Layer|
* `-----------------------------------------------------------------------------------------------------------'
* ,-------------------------------------------. ,-------------------------------------------.
* | = | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Esc | A | S | D | F | G | | H | J | K | L | ; | ' |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | Shift | Z | X | C | V | B | | N | M | , | . | / | Shift |
* `--------+------+------+------+------+------' `------+------+------+------+------+--------'
* | ` | | [ | ] | | Left | Down | Up | Right|
* `---------------------------' `---------------------------'
* ,--------------. ,--------------.
* | LCtl | LAlt | | RAlt | RCtl |
* ,------|-------|------| |------+-------+------.
* | | Enter | | | RGUI | Delete| |
* | Space| / |------| |------| / | Bspc |
* | | Number| Bspc | | Enter| Number| |
* `---------------------' `---------------------'
*/
[_QG] = KEYMAP(
// Left Hand
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8,
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T,
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B,
KC_GRV, XXXXXXX, KC_LBRC, KC_RBRC,
//Left Thumb
KC_LCTL, KC_LALT,
XXXXXXX,
KC_SPC, LT(_NS, KC_ENT), KC_BSPC,
//Right Hand
KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_NP), MO(_LY),
KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
//Right Thumb
KC_RALT, KC_RCTL,
KC_RGUI,
KC_ENT, LT(_NS, KC_DEL), KC_BSPC
),
/* Number/symbol layer
* ,-----------------------------------------------------------------------------------------------------------.
* | | | | | | | | | | | | | | | | | | |
* `-----------------------------------------------------------------------------------------------------------'
* ,-------------------------------------------. ,-------------------------------------------.
* | F12 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | ! | @ | # | $ | % | | ^ | & | * | ` | ~ | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | = | { | [ | ( | + | | _ | ) | ] | } | - | |
* `--------+------+------+------+------+------' `------+------+------+------+------+--------'
* | | | | | | | | | |
* `---------------------------' `---------------------------'
* ,-------------. ,-------------.
* | | | | | |
* ,------|------|------| |------+------+------.
* | | | | | | | |
* | | |------| |------| | |
* | | | | | | | |
* `--------------------' `--------------------'
*/
[_NS] = KEYMAP(
// Left Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5,
_______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC,
_______, KC_1, KC_2, KC_3, KC_4, KC_5,
_______, KC_EQL, KC_LCBR, KC_LBRC, KC_LPRN, KC_PLUS,
_______, _______, _______, _______,
// Left Thumb
_______, _______,
_______,
_______, _______, _______,
// Right Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
KC_CIRC, KC_AMPR, KC_ASTR, KC_GRV, KC_TILD, _______,
KC_6, KC_7, KC_8, KC_9, KC_0, _______,
KC_UNDS, KC_RPRN, KC_RBRC, KC_RCBR, KC_MINS, _______,
_______, _______, _______, _______,
// Right Thumb
_______, _______,
_______,
_______, _______, _______
),
/* Numpad layer
* ,-----------------------------------------------------------------------------------------------------------.
* | | | | | | | | | | | | | | | | | | |
* `-----------------------------------------------------------------------------------------------------------'
* ,-------------------------------------------. ,-------------------------------------------.
* | | | | | | | | NumLk| Tab | KP / | kP *| KP - | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | | | Up | | | | | KP 7 | KP 8 | KP 9 | KP + | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | | Left | Down | Right| | | | KP 4 | KP 5 | KP 6 | KP = | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | | | | | | | | KP 1 | KP 2 | KP 3 |KP Ent| |
* `--------+------+------+------+------+------' `------+------+------+------+------+--------'
* | | INS | | | | | KP , | KP . |KP Ent|
* `---------------------------' `---------------------------'
* ,-------------. ,-------------.
* | | | | | |
* ,------|------|------| |------+------+------.
* | | | | | | | |
* | | |------| |------| | KP 0 |
* | | | | | | | |
* `--------------------' `--------------------'
*/
[_NP] = KEYMAP(
// Left Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,
_______, _______, _______, KC_UP, _______, _______,
_______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______,
_______, _______, _______, _______, _______, _______,
_______, KC_INS, _______, _______,
// Left Thumb
_______, _______,
_______,
_______, _______, _______,
// Right Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_NLCK, KC_TAB, KC_PSLS, KC_PAST, KC_PMNS, _______,
_______, KC_P7, KC_P8, KC_P9, KC_PPLS, _______,
_______, KC_P4, KC_P5, KC_P6, KC_PEQL, _______,
_______, KC_P1, KC_P2, KC_P3, KC_PENT, _______,
_______, KC_PCMM, KC_PDOT, KC_PENT,
// Right Thumb
_______, _______,
_______,
_______, _______, KC_P0
),
/* Layer switch layer
* ,-----------------------------------------------------------------------------------------------------------.
* | | | | | | | | | | | | | | | | | | |
* `-----------------------------------------------------------------------------------------------------------'
* ,-------------------------------------------. ,-------------------------------------------.
* | |QWERTY|Colemk|QW GM | | | | | | | | | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | | | | | | | | | | | | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | | | | | | | | | | | | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | | | | | | | | | | | | |
* `--------+------+------+------+------+------' `------+------+------+------+------+--------'
* | | | | | | | | | |
* `---------------------------' `---------------------------'
* ,-------------. ,-------------.
* | | | | | |
* ,------|------|------| |------+------+------.
* | | | | | | | |
* | | |------| |------| | |
* | | | | | | | |
* `--------------------' `--------------------'
*/
[_LY] = KEYMAP(
// Left Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, DF(_QW), DF(_CM), DF(_QG), _______, _______,
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______,
// Left Thumb
_______, _______,
_______,
_______, _______, _______,
// Right Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,
_______, _______, _______, _______,
// Right Thumb
_______, _______,
_______,
_______, _______, _______
),
/* Function layer
* ,-----------------------------------------------------------------------------------------------------------.
* | | | | | | | | | |RESET| | | | | | | | |
* `-----------------------------------------------------------------------------------------------------------'
* ,-------------------------------------------. ,-------------------------------------------.
* | F12 | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | | | Up | |Alt+Tb| | | Home | Up | End | | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | | Left | Down | Right| | | PgUp | Right| Down | Left | | |
* |--------+------+------+------+------+------| |------+------+------+------+------+--------|
* | | | Prev | Play | Next | Stop | | PgDn | Mute | Vol- | Vol+ | | |
* `--------+------+------+------+------+------' `------+------+------+------+------+--------'
* | | INS | | | | | | | |
* `---------------------------' `---------------------------'
* ,-------------. ,-------------.
* | | | | | |
* ,------|------|------| |------+------+------.
* | | | | | | | |
* | | |------| |------| | |
* | | | | | | | |
* `--------------------' `--------------------'
*/
[_FN] = KEYMAP(
// Left Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5,
_______, _______, _______, KC_UP, _______, LALT(KC_TAB),
_______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______,
_______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP,
_______, KC_INS, _______, _______,
// Left Thumb
_______, _______,
_______,
_______, _______, _______,
// Right Hand
RESET, _______, _______, _______, _______, _______, _______, _______, _______,
KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
_______, KC_HOME, KC_UP, KC_END, _______, _______,
KC_PGUP, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______,
KC_PGDN, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______,
_______, _______, _______, _______,
// Right Thumb
_______, _______,
_______,
_______, _______, _______
),
[_FN2] = KEYMAP(
// Left Hand
_______, _______, _______, _______, _______, _______, _______, _______, _______,
KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5,
_______, _______, _______, KC_UP, _______, LALT(KC_TAB),
_______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______,
_______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP,
_______, KC_INS, _______, _______,
// Left Thumb
_______, _______,
_______,
_______, _______, _______,
// Right Hand
RESET, _______, _______, _______, _______, _______, _______, _______, _______,
KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
_______, KC_HOME, KC_UP, KC_END, _______, _______,
KC_PGUP, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______,
KC_PGDN, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______,
_______, _______, _______, _______,
// Right Thumb
_______, _______,
_______,
_______, _______, _______
)
};
const uint16_t PROGMEM fn_actions[] = {
};
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
{
// MACRODOWN only works in this function
switch(id) {
case 0:
if (record->event.pressed) {
register_code(KC_RSFT);
} else {
unregister_code(KC_RSFT);
}
break;
}
return MACRO_NONE;
};
void matrix_init_user(void) {
}
void matrix_scan_user(void) {
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
return true;
}
void led_set_user(uint8_t usb_led) {
}

View File

@ -1,14 +0,0 @@
# Salty's Kinesis Keymap
These layouts are derived from what I was using on my Kinesis Contoured keyboards through TMK converters. With the move to QMK through Stapelberg replacement controller, I've cleaned up the layouts a bit while adding number/symbol layer.
There are only minor changes in the base keywell layout (e.g., CapsLock is ESC, arrow clusters on one side), while the thumb clusters deviate more from the default layout.
Changes to the thumb clusters include:
* The navigations keys moved to Fn layers.
* The function of 2u keys have been reversed - I've always used space with my left thumb, and I find it more helpful to have access to Space and Enter while using my mouse/trackball.
* Enter and Backspace have been duplicated on both clusters.
* The 2u keys serve dual function as momentary layer switchers.
I'm frequently fiddle around with the layouts as I find certain things I want to try out.